summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--AUTHORS4
-rw-r--r--COPYING280
-rw-r--r--ChangeLog196
-rw-r--r--INSTALL176
-rw-r--r--Makefile.am29
-rw-r--r--Makefile.dist14
-rw-r--r--README101
-rw-r--r--ReleaseNotes16
-rw-r--r--TODO0
-rw-r--r--acinclude.m411863
-rw-r--r--aclocal.m4863
-rw-r--r--build-kshowmail/RPMROOT/SPECS/kshowmail.spec48
-rw-r--r--build-kshowmail/RPMROOT/tmp/rpm-tmp.2244728
-rw-r--r--build-kshowmail/rpmmacros2
-rw-r--r--build-kshowmail/rpmrc1
-rw-r--r--config.h238
-rw-r--r--config.h.in237
-rw-r--r--configure.files2
-rw-r--r--configure.in142
-rw-r--r--configure.in.in14
-rw-r--r--doc/Makefile.am10
-rw-r--r--doc/cs/Makefile.am10
-rw-r--r--doc/cs/index.docbook516
-rw-r--r--doc/de/Makefile.am10
-rw-r--r--doc/de/index.docbook522
-rw-r--r--doc/en/Makefile.am10
-rw-r--r--doc/en/index.docbook516
-rw-r--r--doc/es/Makefile.am10
-rw-r--r--doc/es/index.docbook428
-rw-r--r--doc/fr/Makefile.am10
-rw-r--r--doc/fr/index.docbook372
-rw-r--r--doc/html/AlertDlg_8cpp-source.html296
-rw-r--r--doc/html/AlertDlg_8h-source.html79
-rw-r--r--doc/html/AlertDlg_8moc-source.html126
-rw-r--r--doc/html/CommandDlg_8cpp-source.html186
-rw-r--r--doc/html/CommandDlg_8h-source.html82
-rw-r--r--doc/html/CommandDlg_8moc-source.html144
-rw-r--r--doc/html/CommandEntryDlg_8cpp-source.html167
-rw-r--r--doc/html/CommandEntryDlg_8h-source.html82
-rw-r--r--doc/html/CommandEntryDlg_8moc-source.html132
-rw-r--r--doc/html/EditDlg_8cpp-source.html119
-rw-r--r--doc/html/EditDlg_8h-source.html72
-rw-r--r--doc/html/EditDlg_8moc-source.html126
-rw-r--r--doc/html/FilterDlg_8cpp-source.html223
-rw-r--r--doc/html/FilterDlg_8h-source.html90
-rw-r--r--doc/html/FilterDlg_8moc-source.html147
-rw-r--r--doc/html/FilterEntryDlg_8cpp-source.html332
-rw-r--r--doc/html/FilterEntryDlg_8h-source.html110
-rw-r--r--doc/html/FilterEntryDlg_8moc-source.html195
-rw-r--r--doc/html/OptionDlg_8cpp-source.html579
-rw-r--r--doc/html/OptionDlg_8h-source.html157
-rw-r--r--doc/html/OptionDlg_8moc-source.html162
-rw-r--r--doc/html/ServerDlg_8cpp-source.html204
-rw-r--r--doc/html/ServerDlg_8h-source.html91
-rw-r--r--doc/html/ServerDlg_8moc-source.html126
-rw-r--r--doc/html/alertdialog_8cpp-source.html61
-rw-r--r--doc/html/alertdialog_8h-source.html63
-rw-r--r--doc/html/alertdialog_8moc_8cpp-source.html138
-rw-r--r--doc/html/annotated.html70
-rw-r--r--doc/html/classAlertDialog-members.html41
-rw-r--r--doc/html/classAlertDialog.html144
-rw-r--r--doc/html/classAlertDialog.pngbin0 -> 354 bytes
-rw-r--r--doc/html/classAlertDlg-members.html39
-rw-r--r--doc/html/classAlertDlg.html275
-rw-r--r--doc/html/classAlertDlg.pngbin0 -> 360 bytes
-rw-r--r--doc/html/classCommandDialog-members.html55
-rw-r--r--doc/html/classCommandDialog.html81
-rw-r--r--doc/html/classCommandDialog.pngbin0 -> 404 bytes
-rw-r--r--doc/html/classCommandDlg-members.html49
-rw-r--r--doc/html/classCommandDlg.html110
-rw-r--r--doc/html/classCommandDlg.pngbin0 -> 413 bytes
-rw-r--r--doc/html/classCommandEntry-members.html38
-rw-r--r--doc/html/classCommandEntry.html69
-rw-r--r--doc/html/classCommandEntryDialog-members.html52
-rw-r--r--doc/html/classCommandEntryDialog.html69
-rw-r--r--doc/html/classCommandEntryDialog.pngbin0 -> 497 bytes
-rw-r--r--doc/html/classCommandEntryDlg-members.html48
-rw-r--r--doc/html/classCommandEntryDlg.html107
-rw-r--r--doc/html/classCommandEntryDlg.pngbin0 -> 504 bytes
-rw-r--r--doc/html/classCommandList-members.html38
-rw-r--r--doc/html/classCommandList.html69
-rw-r--r--doc/html/classConfigElem-members.html149
-rw-r--r--doc/html/classConfigElem.html2855
-rw-r--r--doc/html/classConfigList-members.html122
-rw-r--r--doc/html/classConfigList.html2087
-rw-r--r--doc/html/classEditDialog-members.html44
-rw-r--r--doc/html/classEditDialog.html63
-rw-r--r--doc/html/classEditDialog.pngbin0 -> 340 bytes
-rw-r--r--doc/html/classEditDlg-members.html40
-rw-r--r--doc/html/classEditDlg.html83
-rw-r--r--doc/html/classEditDlg.pngbin0 -> 345 bytes
-rw-r--r--doc/html/classFilter-members.html39
-rw-r--r--doc/html/classFilter.html67
-rw-r--r--doc/html/classFilterDialog-members.html58
-rw-r--r--doc/html/classFilterDialog.html78
-rw-r--r--doc/html/classFilterDialog.pngbin0 -> 352 bytes
-rw-r--r--doc/html/classFilterDlg-members.html55
-rw-r--r--doc/html/classFilterDlg.html128
-rw-r--r--doc/html/classFilterDlg.pngbin0 -> 356 bytes
-rw-r--r--doc/html/classFilterElem-members.html46
-rw-r--r--doc/html/classFilterElem.html185
-rw-r--r--doc/html/classFilterEntryDialog-members.html77
-rw-r--r--doc/html/classFilterEntryDialog.html99
-rw-r--r--doc/html/classFilterEntryDialog.pngbin0 -> 441 bytes
-rw-r--r--doc/html/classFilterEntryDlg-members.html74
-rw-r--r--doc/html/classFilterEntryDlg.html185
-rw-r--r--doc/html/classFilterEntryDlg.pngbin0 -> 448 bytes
-rw-r--r--doc/html/classFilterList-members.html36
-rw-r--r--doc/html/classFilterList.html92
-rw-r--r--doc/html/classFilterRecord-members.html50
-rw-r--r--doc/html/classFilterRecord.html88
-rw-r--r--doc/html/classKFeedbackAnswer-members.html40
-rw-r--r--doc/html/classKFeedbackAnswer.html311
-rw-r--r--doc/html/classKFeedbackDialog-members.html34
-rw-r--r--doc/html/classKFeedbackDialog.html185
-rw-r--r--doc/html/classKFeedbackForm-members.html40
-rw-r--r--doc/html/classKFeedbackForm.html300
-rw-r--r--doc/html/classKFeedbackQuestion-members.html44
-rw-r--r--doc/html/classKFeedbackQuestion.html424
-rw-r--r--doc/html/classKFeedbackQuestionList-members.html38
-rw-r--r--doc/html/classKFeedbackQuestionList.html343
-rw-r--r--doc/html/classKShowMailApp-members.html85
-rw-r--r--doc/html/classKShowMailApp.html1211
-rw-r--r--doc/html/classKShowMailDock-members.html36
-rw-r--r--doc/html/classKShowMailDock.html240
-rw-r--r--doc/html/classKshowmailDoc-members.html38
-rw-r--r--doc/html/classKshowmailDoc.html264
-rw-r--r--doc/html/classKshowmailView-members.html45
-rw-r--r--doc/html/classKshowmailView.html525
-rw-r--r--doc/html/classLogger-members.html33
-rw-r--r--doc/html/classLogger.html58
-rw-r--r--doc/html/classOptionDialog-members.html123
-rw-r--r--doc/html/classOptionDialog.html99
-rw-r--r--doc/html/classOptionDialog.pngbin0 -> 371 bytes
-rw-r--r--doc/html/classOptionDlg-members.html118
-rw-r--r--doc/html/classOptionDlg.html317
-rw-r--r--doc/html/classOptionDlg.pngbin0 -> 377 bytes
-rw-r--r--doc/html/classServerDialog-members.html44
-rw-r--r--doc/html/classServerDialog.html375
-rw-r--r--doc/html/classServerDialog.pngbin0 -> 406 bytes
-rw-r--r--doc/html/classServerDlg-members.html54
-rw-r--r--doc/html/classServerDlg.html125
-rw-r--r--doc/html/classServerDlg.pngbin0 -> 413 bytes
-rw-r--r--doc/html/classShowListViewItem-members.html53
-rw-r--r--doc/html/classShowListViewItem.html487
-rw-r--r--doc/html/classShowRecord-members.html62
-rw-r--r--doc/html/classShowRecord.html1060
-rw-r--r--doc/html/classShowRecordElem-members.html86
-rw-r--r--doc/html/classShowRecordElem.html1459
-rw-r--r--doc/html/classUniqueApp-members.html32
-rw-r--r--doc/html/classUniqueApp.html128
-rw-r--r--doc/html/classes.html39
-rw-r--r--doc/html/commanddialog_8cpp-source.html150
-rw-r--r--doc/html/commanddialog_8h-source.html73
-rw-r--r--doc/html/commanddialog_8moc_8cpp-source.html141
-rw-r--r--doc/html/commandentry_8cpp-source.html143
-rw-r--r--doc/html/commandentry_8h-source.html69
-rw-r--r--doc/html/commandentrydialog_8cpp-source.html91
-rw-r--r--doc/html/commandentrydialog_8h-source.html63
-rw-r--r--doc/html/commandentrydialog_8moc_8cpp-source.html129
-rw-r--r--doc/html/commandlist_8cpp-source.html153
-rw-r--r--doc/html/commandlist_8h-source.html66
-rw-r--r--doc/html/config_8h-source.html265
-rw-r--r--doc/html/configelem_8cpp-source.html1223
-rw-r--r--doc/html/configelem_8h-source.html363
-rw-r--r--doc/html/configlist_8cpp-source.html1055
-rw-r--r--doc/html/configlist_8h-source.html283
-rw-r--r--doc/html/constants_8h-source.html367
-rw-r--r--doc/html/decodeRFC2047_8cpp-source.html204
-rw-r--r--doc/html/decodeRFC2047_8h-source.html69
-rw-r--r--doc/html/dir_656923b733374505e0e2f68ecb68d952.html145
-rw-r--r--doc/html/dirs.html41
-rw-r--r--doc/html/doxygen.css358
-rw-r--r--doc/html/doxygen.pngbin0 -> 1281 bytes
-rw-r--r--doc/html/editdialog_8cpp-source.html74
-rw-r--r--doc/html/editdialog_8h-source.html58
-rw-r--r--doc/html/editdialog_8moc_8cpp-source.html123
-rw-r--r--doc/html/files.html120
-rw-r--r--doc/html/filter_8cpp-source.html76
-rw-r--r--doc/html/filter_8h-source.html66
-rw-r--r--doc/html/filterdialog_8cpp-source.html165
-rw-r--r--doc/html/filterdialog_8h-source.html66
-rw-r--r--doc/html/filterdialog_8moc_8cpp-source.html144
-rw-r--r--doc/html/filterelem_8cpp-source.html324
-rw-r--r--doc/html/filterelem_8h-source.html97
-rw-r--r--doc/html/filterentrydialog_8cpp-source.html272
-rw-r--r--doc/html/filterentrydialog_8h-source.html72
-rw-r--r--doc/html/filterentrydialog_8moc_8cpp-source.html192
-rw-r--r--doc/html/filterlist_8cpp-source.html187
-rw-r--r--doc/html/filterlist_8h-source.html74
-rw-r--r--doc/html/functions.html107
-rw-r--r--doc/html/functions_0x61.html136
-rw-r--r--doc/html/functions_0x62.html130
-rw-r--r--doc/html/functions_0x63.html285
-rw-r--r--doc/html/functions_0x64.html115
-rw-r--r--doc/html/functions_0x65.html79
-rw-r--r--doc/html/functions_0x66.html116
-rw-r--r--doc/html/functions_0x67.html225
-rw-r--r--doc/html/functions_0x68.html91
-rw-r--r--doc/html/functions_0x69.html110
-rw-r--r--doc/html/functions_0x6b.html92
-rw-r--r--doc/html/functions_0x6c.html126
-rw-r--r--doc/html/functions_0x6d.html215
-rw-r--r--doc/html/functions_0x6e.html108
-rw-r--r--doc/html/functions_0x6f.html85
-rw-r--r--doc/html/functions_0x70.html97
-rw-r--r--doc/html/functions_0x71.html81
-rw-r--r--doc/html/functions_0x72.html103
-rw-r--r--doc/html/functions_0x73.html525
-rw-r--r--doc/html/functions_0x74.html126
-rw-r--r--doc/html/functions_0x75.html82
-rw-r--r--doc/html/functions_0x76.html73
-rw-r--r--doc/html/functions_0x7e.html147
-rw-r--r--doc/html/functions_enum.html55
-rw-r--r--doc/html/functions_func.html109
-rw-r--r--doc/html/functions_rela.html47
-rw-r--r--doc/html/functions_vars.html86
-rw-r--r--doc/html/functions_vars_0x61.html94
-rw-r--r--doc/html/functions_vars_0x62.html123
-rw-r--r--doc/html/functions_vars_0x63.html192
-rw-r--r--doc/html/functions_vars_0x64.html83
-rw-r--r--doc/html/functions_vars_0x65.html70
-rw-r--r--doc/html/functions_vars_0x66.html82
-rw-r--r--doc/html/functions_vars_0x67.html90
-rw-r--r--doc/html/functions_vars_0x68.html70
-rw-r--r--doc/html/functions_vars_0x69.html70
-rw-r--r--doc/html/functions_vars_0x6b.html70
-rw-r--r--doc/html/functions_vars_0x6c.html98
-rw-r--r--doc/html/functions_vars_0x6d.html204
-rw-r--r--doc/html/functions_vars_0x6f.html67
-rw-r--r--doc/html/functions_vars_0x70.html80
-rw-r--r--doc/html/functions_vars_0x71.html72
-rw-r--r--doc/html/functions_vars_0x73.html108
-rw-r--r--doc/html/functions_vars_0x74.html105
-rw-r--r--doc/html/hierarchy.html72
-rw-r--r--doc/html/index.html22
-rw-r--r--doc/html/kfeedback_8cpp-source.html515
-rw-r--r--doc/html/kfeedback_8h-source.html257
-rw-r--r--doc/html/kfeedback_8moc_8cpp-source.html335
-rw-r--r--doc/html/kshowmail_8cpp-source.html822
-rw-r--r--doc/html/kshowmail_8h-source.html221
-rw-r--r--doc/html/kshowmail_8moc_8cpp-source.html204
-rw-r--r--doc/html/kshowmaildoc_8cpp-source.html101
-rw-r--r--doc/html/kshowmaildoc_8h-source.html86
-rw-r--r--doc/html/kshowmaildoc_8moc_8cpp-source.html126
-rw-r--r--doc/html/kshowmaildock_8cpp-source.html105
-rw-r--r--doc/html/kshowmaildock_8h-source.html69
-rw-r--r--doc/html/kshowmaildock_8moc_8cpp-source.html144
-rw-r--r--doc/html/kshowmailfeedback_8cpp-source.html176
-rw-r--r--doc/html/kshowmailview_8cpp-source.html450
-rw-r--r--doc/html/kshowmailview_8h-source.html114
-rw-r--r--doc/html/kshowmailview_8moc_8cpp-source.html171
-rw-r--r--doc/html/logger_8cpp-source.html68
-rw-r--r--doc/html/logger_8h-source.html59
-rw-r--r--doc/html/main_8cpp-source.html136
-rw-r--r--doc/html/namespaceConstants.html33
-rw-r--r--doc/html/namespaceTypes.html230
-rw-r--r--doc/html/namespacemembers.html135
-rw-r--r--doc/html/namespacemembers_enum.html44
-rw-r--r--doc/html/namespacemembers_eval.html72
-rw-r--r--doc/html/namespaces.html34
-rw-r--r--doc/html/optiondialog_8cpp-source.html290
-rw-r--r--doc/html/optiondialog_8h-source.html77
-rw-r--r--doc/html/optiondialog_8moc_8cpp-source.html159
-rw-r--r--doc/html/serverdialog_8cpp-source.html279
-rw-r--r--doc/html/serverdialog_8h-source.html131
-rw-r--r--doc/html/serverdialog_8moc_8cpp-source.html114
-rw-r--r--doc/html/showlistviewitem_8cpp-source.html123
-rw-r--r--doc/html/showlistviewitem_8h-source.html79
-rw-r--r--doc/html/showrecord_8cpp-source.html580
-rw-r--r--doc/html/showrecord_8h-source.html150
-rw-r--r--doc/html/showrecordelem_8cpp-source.html622
-rw-r--r--doc/html/showrecordelem_8h-source.html202
-rw-r--r--doc/html/tab_b.gifbin0 -> 35 bytes
-rw-r--r--doc/html/tab_l.gifbin0 -> 706 bytes
-rw-r--r--doc/html/tab_r.gifbin0 -> 2585 bytes
-rw-r--r--doc/html/tabs.css102
-rw-r--r--doc/html/types_8h-source.html105
-rw-r--r--doc/html/uniqueapp_8cpp-source.html99
-rw-r--r--doc/html/uniqueapp_8h-source.html75
-rw-r--r--doc/hu/Makefile.am10
-rw-r--r--doc/hu/index.docbook481
-rw-r--r--doc/it/Makefile.am10
-rw-r--r--doc/it/index.docbook523
-rw-r--r--doc/ru/Makefile.am10
-rw-r--r--doc/ru/index.docbook517
-rw-r--r--doc/sv/Makefile.am9
-rw-r--r--doc/sv/index.docbook370
-rw-r--r--kshowmail.lsm14
-rw-r--r--kshowmail.spec120
-rw-r--r--kshowmail/AlertDlg.ui114
-rw-r--r--kshowmail/Makefile.am60
-rw-r--r--kshowmail/alertdialog.cpp39
-rw-r--r--kshowmail/alertdialog.h40
-rw-r--r--kshowmail/configelem.cpp1759
-rw-r--r--kshowmail/configelem.h1097
-rw-r--r--kshowmail/configlist.cpp1203
-rw-r--r--kshowmail/configlist.h734
-rw-r--r--kshowmail/constants.h367
-rw-r--r--kshowmail/decodeRFC2047.cpp182
-rw-r--r--kshowmail/decodeRFC2047.h51
-rw-r--r--kshowmail/encryption.cpp85
-rw-r--r--kshowmail/encryption.h46
-rw-r--r--kshowmail/filteritem.cpp166
-rw-r--r--kshowmail/filteritem.h117
-rw-r--r--kshowmail/filteritemcriteria.cpp241
-rw-r--r--kshowmail/filteritemcriteria.h146
-rw-r--r--kshowmail/filterlog.cpp235
-rw-r--r--kshowmail/filterlog.h183
-rw-r--r--kshowmail/filterlogentry.cpp145
-rw-r--r--kshowmail/filterlogentry.h196
-rw-r--r--kshowmail/filterlogview.cpp121
-rw-r--r--kshowmail/filterlogview.h87
-rw-r--r--kshowmail/filterlogviewdeleteditem.cpp58
-rw-r--r--kshowmail/filterlogviewdeleteditem.h95
-rw-r--r--kshowmail/filterlogviewmoveditem.cpp58
-rw-r--r--kshowmail/filterlogviewmoveditem.h101
-rw-r--r--kshowmail/headerfilter.cpp151
-rw-r--r--kshowmail/headerfilter.h117
-rw-r--r--kshowmail/kcmconfigs/Makefile.am36
-rw-r--r--kshowmail/kcmconfigs/accountsetupdialog.cpp362
-rw-r--r--kshowmail/kcmconfigs/accountsetupdialog.h165
-rw-r--r--kshowmail/kcmconfigs/accountsetupitem.cpp207
-rw-r--r--kshowmail/kcmconfigs/accountsetupitem.h242
-rw-r--r--kshowmail/kcmconfigs/configaccounts.cpp203
-rw-r--r--kshowmail/kcmconfigs/configaccounts.h131
-rw-r--r--kshowmail/kcmconfigs/configactions.cpp267
-rw-r--r--kshowmail/kcmconfigs/configactions.h202
-rw-r--r--kshowmail/kcmconfigs/configdisplay.cpp221
-rw-r--r--kshowmail/kcmconfigs/configdisplay.h169
-rw-r--r--kshowmail/kcmconfigs/configfilter.cpp613
-rw-r--r--kshowmail/kcmconfigs/configfilter.h288
-rw-r--r--kshowmail/kcmconfigs/configgeneral.cpp181
-rw-r--r--kshowmail/kcmconfigs/configgeneral.h141
-rw-r--r--kshowmail/kcmconfigs/configlog.cpp255
-rw-r--r--kshowmail/kcmconfigs/configlog.h152
-rw-r--r--kshowmail/kcmconfigs/configspamcheck.cpp236
-rw-r--r--kshowmail/kcmconfigs/configspamcheck.h161
-rw-r--r--kshowmail/kcmconfigs/encryption.cpp85
-rw-r--r--kshowmail/kcmconfigs/encryption.h46
-rw-r--r--kshowmail/kcmconfigs/filtercriteriawidget.cpp338
-rw-r--r--kshowmail/kcmconfigs/filtercriteriawidget.h163
-rw-r--r--kshowmail/kcmconfigs/filtersetupdialog.cpp451
-rw-r--r--kshowmail/kcmconfigs/filtersetupdialog.h191
-rw-r--r--kshowmail/kcmconfigs/filtersetupitem.cpp347
-rw-r--r--kshowmail/kcmconfigs/filtersetupitem.h240
-rw-r--r--kshowmail/kcmconfigs/kshowmailconfigaccounts.desktop20
-rw-r--r--kshowmail/kcmconfigs/kshowmailconfigactions.desktop20
-rw-r--r--kshowmail/kcmconfigs/kshowmailconfigdisplay.desktop19
-rw-r--r--kshowmail/kcmconfigs/kshowmailconfigfilter.desktop19
-rw-r--r--kshowmail/kcmconfigs/kshowmailconfiggeneral.desktop19
-rw-r--r--kshowmail/kcmconfigs/kshowmailconfiglog.desktop16
-rw-r--r--kshowmail/kcmconfigs/kshowmailconfigspamcheck.desktop20
-rw-r--r--kshowmail/kcmconfigs/kwalletaccess.cpp137
-rw-r--r--kshowmail/kcmconfigs/kwalletaccess.h45
-rw-r--r--kshowmail/kcmconfigs/mailboxwizard.cpp164
-rw-r--r--kshowmail/kcmconfigs/mailboxwizard.h131
-rw-r--r--kshowmail/kcmconfigs/mailboxwizardlistitem.cpp28
-rw-r--r--kshowmail/kcmconfigs/mailboxwizardlistitem.h61
-rw-r--r--kshowmail/kcmconfigs/senderlistdialog.cpp151
-rw-r--r--kshowmail/kcmconfigs/senderlistdialog.h112
-rw-r--r--kshowmail/kfeedback.cpp504
-rw-r--r--kshowmail/kfeedback.h463
-rw-r--r--kshowmail/kshowmail.cpp861
-rw-r--r--kshowmail/kshowmail.desktop13
-rw-r--r--kshowmail/kshowmail.h424
-rw-r--r--kshowmail/kshowmaildoc.cpp81
-rw-r--r--kshowmail/kshowmaildoc.h81
-rw-r--r--kshowmail/kshowmaildock.cpp83
-rw-r--r--kshowmail/kshowmaildock.h46
-rw-r--r--kshowmail/kshowmailfeedback.cpp159
-rw-r--r--kshowmail/kshowmailui.rc45
-rw-r--r--kshowmail/kshowmailview.cpp449
-rw-r--r--kshowmail/kshowmailview.h157
-rw-r--r--kshowmail/kwalletaccess.cpp137
-rw-r--r--kshowmail/kwalletaccess.h45
-rw-r--r--kshowmail/main.cpp114
-rw-r--r--kshowmail/senderlistfilter.cpp102
-rw-r--r--kshowmail/senderlistfilter.h113
-rw-r--r--kshowmail/serverdialog.cpp336
-rw-r--r--kshowmail/serverdialog.h168
-rw-r--r--kshowmail/showheaderdialog.cpp52
-rw-r--r--kshowmail/showheaderdialog.h53
-rw-r--r--kshowmail/showlistviewitem.cpp114
-rw-r--r--kshowmail/showlistviewitem.h69
-rw-r--r--kshowmail/showmaildialog.cpp101
-rw-r--r--kshowmail/showmaildialog.h90
-rw-r--r--kshowmail/showrecord.cpp669
-rw-r--r--kshowmail/showrecord.h314
-rw-r--r--kshowmail/showrecordelem.cpp632
-rw-r--r--kshowmail/showrecordelem.h447
-rw-r--r--kshowmail/templates/cpp_template16
-rw-r--r--kshowmail/templates/header_template16
-rw-r--r--kshowmail/types.h122
-rw-r--r--kshowmail/uniqueapp.cpp78
-rw-r--r--kshowmail/uniqueapp.h65
-rw-r--r--pics/.xvpics/exclamation.png5
-rw-r--r--pics/.xvpics/exec.pngbin0 -> 321 bytes
-rw-r--r--pics/.xvpics/kshowmail.pngbin0 -> 2370 bytes
-rw-r--r--pics/.xvpics/kshowmail16.png5
-rw-r--r--pics/.xvpics/kshowmail24.pngbin0 -> 641 bytes
-rw-r--r--pics/.xvpics/letter-closed.pngbin0 -> 289 bytes
-rw-r--r--pics/.xvpics/letter-open.pngbin0 -> 321 bytes
-rw-r--r--pics/.xvpics/mini-cross.pngbin0 -> 289 bytes
-rw-r--r--pics/.xvpics/ok.pngbin0 -> 289 bytes
-rw-r--r--pics/.xvpics/reload.pngbin0 -> 549 bytes
-rw-r--r--pics/.xvpics/tool1.pngbin0 -> 549 bytes
-rw-r--r--pics/.xvpics/tool2.pngbin0 -> 549 bytes
-rw-r--r--pics/Makefile.am3
-rw-r--r--pics/eraser.pngbin0 -> 235 bytes
-rw-r--r--pics/kshowmail.pngbin0 -> 1722 bytes
-rw-r--r--pics/kshowmail16.pngbin0 -> 606 bytes
-rw-r--r--pics/kshowmail24.pngbin0 -> 870 bytes
-rw-r--r--pics/letter-closed.pngbin0 -> 195 bytes
-rw-r--r--pics/letter-open.pngbin0 -> 297 bytes
-rw-r--r--pics/ok.pngbin0 -> 229 bytes
-rw-r--r--pics/tool.pngbin0 -> 342 bytes
-rw-r--r--pics/tool1.pngbin0 -> 328 bytes
-rw-r--r--pics/tool3.pngbin0 -> 299 bytes
-rw-r--r--po/Makefile.am8
-rw-r--r--po/cs.po1908
-rw-r--r--po/de.po1584
-rw-r--r--po/es.po1563
-rw-r--r--po/fr.po1873
-rw-r--r--po/hu.po1934
-rw-r--r--po/it.po1895
-rw-r--r--po/kshowmail.pot1488
-rw-r--r--po/ru.po1915
-rw-r--r--po/sv.po1994
-rw-r--r--sounds/Makefile.am2
-rw-r--r--sounds/neuepost.wavbin0 -> 137506 bytes
-rw-r--r--sounds/newmail.wavbin0 -> 94340 bytes
-rw-r--r--stamp-h.in1
-rw-r--r--subdirs5
434 files changed, 99359 insertions, 0 deletions
diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 0000000..5932234
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,4 @@
+Eggert Ehmke <eggert.ehmke@berlin.de>
+Allistar Melville <allistar@silvermoon.co.nz>
+Oleg Ivanov <saruman@unigsm.com>
+Ulrich Weigelt <ulrich.weigelt@gmx.de>
diff --git a/COPYING b/COPYING
new file mode 100644
index 0000000..c7aea18
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,280 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 675 Mass Ave, Cambridge, MA 02139, USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
diff --git a/ChangeLog b/ChangeLog
new file mode 100644
index 0000000..98118c0
--- /dev/null
+++ b/ChangeLog
@@ -0,0 +1,196 @@
+Versions Changes
+-------- -------
+
+May 6 2000: V0.1: initial release
+
+May 7 2000: V0.2: minor improvements and bug fixes
+ implemented context menus
+ delete confirmation option
+
+May 10 2000: V0.3: several bug fixes
+ redesign of the configuration menu
+ implemented multiple accounts
+ implemented timer automatic
+ improved error diagnostic
+
+May 20 2000: V0.4 minor bug fixes
+ implemented connect via port 110
+ implemented show of complete messages
+
+Jun 24 2000: V0.5 bug fixes
+ changed event handling to allow update of status line during transfer
+ store UIDL's / Message ID's in rc file to allow persistent detection of new mail
+ play sound if new mail
+ file dialog to select sound file
+ implemented scrambled password in rc file
+ command line parameter to select account
+ tool bar combobox to select account
+
+Jun 29 2000 V0.5.1 Spanish translation provided by Edgardo Garc�
+ Help file updated in english, german and spanish
+ modified password scrambling algorithm
+
+Jul 10 2000 V0.5.2 bug fixes
+ Implemented hide on startup
+ Implemented minimize/terminate if no new mail
+ Improved cache handling
+ Implemented configurable user commands
+ The application is started as unique instance
+
+Aug 2 2000 V0.5.3 A new option to allow keeping of new mails as "new"
+ The size of mails is now recognized correctly
+ Implementation of the anti-spam complain command
+ Swedish language files
+
+Oct 15 2000 V0.9 Delete key works now. A popup window can be shown
+ if new messages arrive. Config dialog updated.
+
+Oct 19 2000 V0.9.1 Bugfix release due to segfault in 0.9
+
+Oct 20 2000 V0.9.2 Automatic backup of config file
+ Swedish language files updated
+ French language files added
+ Mail size options added
+ Launch external programs on new mail
+
+Dec 30 2001 V2.2.0 Final version for KDE 2.2.x.
+ Improved support of multiple accounts.
+ Implementation of pop3 kioslave
+ User interface adapted to KActions
+ Keyboard shortcuts finally work
+ Continuation at next account after errors
+ Persistent storage of headers in xml config file
+
+Jan 02 2002 V2.2.1 Bugfix release
+ The option dialog is divided by tab bars to make it smaller
+ New stop button to interrupt transfer
+ Changed icon format to png
+
+Jan 31 2002 V2.2.2 Bugfix release
+ The crash on kde shutdown has been fixed
+ Mail subjects are now RFC2047 decoded
+ The truncating of large messages works again
+
+Feb 24 2002 V2.2.3 Bugfix release
+ Crash when complain command is assigned to new mail fixed
+ Added time information to status line
+ Added account size information
+ Request password when empty
+ Show only messages of active accounts
+ Store iconsize and icontext of toolbar
+ Show user and host in statusbar.
+ show countdown counter in statusbar
+
+Apr 06 2002 V3.0.0 Migration to KDE3
+ Bug 535377 order by header fields fixed
+
+Apr 25 2002 V3.0.1 Sort by message numbers fixed (multiple accounts)
+ New icons provided by Maic Szotek
+ Display and sort date in locale format
+ Hide taskbar button if minimized
+ Implement configurable pop3 timer
+ Animated traybar icon while fetching messages
+ Crash if no account assigned is fixed
+ Optimized sorting of new messages
+ Store sort column in config file
+ Crash and missing columns (542602) fixed
+ Improved tab order in dialogs
+ Beep if illegal user actions
+ Crash when disabling accounts (559122) fixed
+
+May 30 2002 V3.0.2 Implemented user feedback
+ Bug 562903 (Wrong account activated if sorted backw) fixed
+
+Jul 06 2002 V3.0.3 corrected compile errors in 3.0.2
+
+Feb 22 2003 V3.0.4 corrected segfault when password, server url and account name are too long;
+ Finally set up the cvs account. (Hi, Allistar !);
+ Added the option for users to hide account or message columns in the main window;
+ Added french translation finally;
+ Added option to allow rich text formatting (simple html);
+ set tab focus to editdialog to allow keyboard navigation;
+ header information filtered in view complete mail;
+ fix of the locking problem when running commands;
+ security update: xml file has mode 0600 now.
+
+Sep 05 2004 V3.0.5 Bugfix: crash when storing empty password
+
+Dec 06 2003 V3.1.0 added confirm close box
+ Added the long awaited filters to fight the Swen worm
+ Implemented regular expressions as filter conditions
+ Added logfile to monitor deleted messages
+ Font now derived from KDE settings
+ Added reply option
+ Added save option
+ Added ungarian translation for GUI and Help
+ Fixed bug #853651
+
+Jan 30 2004 V3.1.1
+ Added italian translation for gui and help
+ Disabled save actions if nothing changed
+ Added tooltip for traybar
+ Improved html, we use KTextBrowser now
+ Czech gui translation added
+
+Jul 12 2005 V3.1.1
+ Works fine with KDE3.4
+ Fixed bug #860024
+ Added "Close to tray" and "Minimize to tray" settings
+ Fixed bug with crashes on (de)activation of accounts
+
+Mar 31 2007 V3.1.2
+ BUGFIX: Crashed, when you click on an item of the account list
+
+May 19 2007 V3.1.9.1 (3.2-pre1)
+ Revised all code for POP3 operations and moved it into the account
+ class. Now the refresh and delete operations of every account run
+ simultaneously and it doesn't crash at Quit anymore.
+
+ Dropped the menu item Clear and Forced Refresh because they are
+ dispensable now. The mail list is cleared at every refresh.
+
+ Removed the complain action.
+
+ The view of complete messages was improved. It decodes the quoted
+ printable encoding (like "=25" ). But it is not perfect yet.
+
+ The configure script is looking for the mimelib headers "mimepp.h"
+ and "datetime.h" now. If they are not installed, the user will be shown a
+ invitation to install the kdepim devel package.
+
+ Revised the makefile.am files to avoid some warnings
+
+ Replaced the admin folder
+
+Jul 06 2007 V3.2.0
+ New setup dialog
+
+ A configurable tool bar
+
+ An easier code to build the GUI
+
+ The warnings that kshowmail couldn't connect to the server during refresh,
+ if there is no network connection available, can be disabled now.
+
+ You can use KWallet to store the passwords.
+
+Jul 14 2007 V3.2.1
+ Fixed bug where if you configure 2 accounts, retrieve mail, and then deactivate
+ one of the accounts, it's number of messages still reflects in the tray icon.
+
+ Fixed sort of message number and size columns in message list to be numerical
+ rather than alpha.
+
+Aug 04 2007 V3.2.9 (3.3-pre1)
+ Add support for SSL/TLS
+
+Apr 20 2008 V3.3.0
+ Revised filter (dialog and worker)
+ * White- and Blacklist
+ * indefinite number of filters
+ * moving of mails into mailboxes
+ * ignoring of mails (e.g. for mailing lists)
+ Spam check with SpamAssassin (just basically)
+ Revised filter log
+
+
diff --git a/INSTALL b/INSTALL
new file mode 100644
index 0000000..da7136a
--- /dev/null
+++ b/INSTALL
@@ -0,0 +1,176 @@
+Basic Installation
+==================
+
+ These are generic installation instructions.
+
+ The `configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation. It uses
+those values to create a `Makefile' in each directory of the package.
+It may also create one or more `.h' files containing system-dependent
+definitions. Finally, it creates a shell script `config.status' that
+you can run in the future to recreate the current configuration, a file
+`config.cache' that saves the results of its tests to speed up
+reconfiguring, and a file `config.log' containing compiler output
+(useful mainly for debugging `configure').
+
+ If you need to do unusual things to compile the package, please try
+to figure out how `configure' could check whether to do them, and mail
+diffs or instructions to the address given in the `README' so they can
+be considered for the next release. If at some point `config.cache'
+contains results you don't want to keep, you may remove or edit it.
+
+ The file `configure.in' is used to create `configure' by a program
+called `autoconf'. You only need `configure.in' if you want to change
+it or regenerate `configure' using a newer version of `autoconf'.
+
+It is useful to set the KDEDIR environment variable to the proper location.
+For SuSE this is /opt/kde3. Before starting, enter
+export KDEDIR=/opt/kde3
+
+The simplest way to compile this package is:
+
+ 1. `cd' to the directory containing the package's source code and type
+ `./configure' to configure the package for your system. If you're
+ using `csh' on an old version of System V, you might need to type
+ `sh ./configure' instead to prevent `csh' from trying to execute
+ `configure' itself.
+
+ If KDEDIR is not set, it can be helpful to run configure with the --prefix option:
+ ./configure --prefix=/opt/kde3
+
+ Running `configure' takes a while. While running, it prints some
+ messages telling which features it is checking for.
+
+ 2. Type `make' to compile the package.
+
+ 3. Type `make install' to install the programs and any data files and
+ documentation. Read the output of the install process carefully and
+ verify the files have been installed in the correct locations. If the
+ directory is wrong (not a subdirectory of KDEDIR) the icons will not be found.
+
+ 4. You can remove the program binaries and object files from the
+ source code directory by typing `make clean'.
+
+Compilers and Options
+=====================
+
+ Some systems require unusual options for compilation or linking that
+the `configure' script does not know about. You can give `configure'
+initial values for variables by setting them in the environment. Using
+a Bourne-compatible shell, you can do that on the command line like
+this:
+ CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
+
+Or on systems that have the `env' program, you can do it like this:
+ env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
+
+Compiling For Multiple Architectures
+====================================
+
+ You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory. To do this, you must use a version of `make' that
+supports the `VPATH' variable, such as GNU `make'. `cd' to the
+directory where you want the object files and executables to go and run
+the `configure' script. `configure' automatically checks for the
+source code in the directory that `configure' is in and in `..'.
+
+ If you have to use a `make' that does not supports the `VPATH'
+variable, you have to compile the package for one architecture at a time
+in the source code directory. After you have installed the package for
+one architecture, use `make distclean' before reconfiguring for another
+architecture.
+
+Installation Names
+==================
+
+ By default, `make install' will install the package's files in
+`/usr/local/bin', `/usr/local/man', etc. You can specify an
+installation prefix other than `/usr/local' by giving `configure' the
+option `--prefix=PATH'.
+
+ You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files. If you
+give `configure' the option `--exec-prefix=PATH', the package will use
+PATH as the prefix for installing programs and libraries.
+Documentation and other data files will still use the regular prefix.
+
+ If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving `configure' the
+option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+Optional Features
+=================
+
+ Some packages pay attention to `--enable-FEATURE' options to
+`configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+is something like `gnu-as' or `x' (for the X Window System). The
+`README' should mention any `--enable-' and `--with-' options that the
+package recognizes.
+
+ For packages that use the X Window System, `configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the `configure' options `--x-includes=DIR' and
+`--x-libraries=DIR' to specify their locations.
+
+Specifying the System Type
+==========================
+
+ There may be some features `configure' can not figure out
+automatically, but needs to determine by the type of host the package
+will run on. Usually `configure' can figure that out, but if it prints
+a message saying it can not guess the host type, give it the
+`--host=TYPE' option. TYPE can either be a short name for the system
+type, such as `sun4', or a canonical name with three fields:
+ CPU-COMPANY-SYSTEM
+
+See the file `config.sub' for the possible values of each field. If
+`config.sub' isn't included in this package, then this package doesn't
+need to know the host type.
+
+ If you are building compiler tools for cross-compiling, you can also
+use the `--target=TYPE' option to select the type of system they will
+produce code for and the `--build=TYPE' option to select the type of
+system on which you are compiling the package.
+
+Sharing Defaults
+================
+
+ If you want to set default values for `configure' scripts to share,
+you can create a site shell script called `config.site' that gives
+default values for variables like `CC', `cache_file', and `prefix'.
+`configure' looks for `PREFIX/share/config.site' if it exists, then
+`PREFIX/etc/config.site' if it exists. Or, you can set the
+`CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all `configure' scripts look for a site script.
+
+Operation Controls
+==================
+
+ `configure' recognizes the following options to control how it
+operates.
+
+`--cache-file=FILE'
+ Use and save the results of the tests in FILE instead of
+ `./config.cache'. Set FILE to `/dev/null' to disable caching, for
+ debugging `configure'.
+
+`--help'
+ Print a summary of the options to `configure', and exit.
+
+`--quiet'
+`--silent'
+`-q'
+ Do not print messages saying which checks are being made.
+
+`--srcdir=DIR'
+ Look for the package's source code in directory DIR. Usually
+ `configure' can determine that directory automatically.
+
+`--version'
+ Print the version of Autoconf used to generate the `configure'
+ script, and exit.
+
+`configure' also accepts some other, not widely useful, options.
+
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 0000000..8f4bc71
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,29 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+
+SUBDIRS = kshowmail po doc pics sounds
+
+EXTRA_DIST = kshowmail.kdevprj admin AUTHORS COPYING ChangeLog INSTALL README TODO kshowmail.spec
+
+####### kdevelop will overwrite this part!!! (end)############
+# not a GNU package. You can remove this line, if
+# have all needed files, that a GNU package needs
+AUTOMAKE_OPTIONS = foreign
+
+$(top_srcdir)/configure.in: configure.in.in $(top_srcdir)/subdirs
+ cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.in ;
+
+$(top_srcdir)/subdirs:
+ cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common subdirs
+
+$(top_srcdir)/acinclude.m4: $(top_srcdir)/admin/acinclude.m4.in $(top_srcdir)/admin/libtool.m4.in
+ @cd $(top_srcdir) && cat admin/acinclude.m4.in admin/libtool.m4.in > acinclude.m4
+
+MAINTAINERCLEANFILES = subdirs configure.in acinclude.m4 configure.files
+
+package-messages:
+ $(MAKE) -f admin/Makefile.common package-messages
+ $(MAKE) -C po merge
+
+dist-hook:
+ cd $(top_distdir) && perl admin/am_edit -padmin
+ cd $(top_distdir) && $(MAKE) -f admin/Makefile.common subdirs
diff --git a/Makefile.dist b/Makefile.dist
new file mode 100644
index 0000000..be59a86
--- /dev/null
+++ b/Makefile.dist
@@ -0,0 +1,14 @@
+all:
+ @echo "This Makefile is only for the CVS repository"
+ @echo "This will be deleted before making the distribution"
+ @echo ""
+ @if test ! -d admin; then \
+ echo "Please recheckout this module!" ;\
+ echo "for cvs: use checkout once and after that update again" ;\
+ echo "for cvsup: checkout kde-common from cvsup and" ;\
+ echo " link kde-common/admin to ./admin" ;\
+ exit 1 ;\
+ fi
+ $(MAKE) -f admin/Makefile.common cvs
+
+.SILENT:
diff --git a/README b/README
new file mode 100644
index 0000000..cb6edd3
--- /dev/null
+++ b/README
@@ -0,0 +1,101 @@
+This program is written by Eggert Ehmke, eggert.ehmke@berlin.de.
+It is distributed under the GNU public license. See COPYING for details.
+It is based on the command line tool showmail written by Manfred Haertel,
+Manfred.Haertel@rz-online.de.
+
+Kshowmail is a KDE tool to watch mails on a POP3 server.
+Headers and complete mails can be viewed without loading them to the
+local mail client. Unpleasant mail can be deleted from the server.
+The list of displayed mails can be refreshed via configurable timers.
+Filters can be assigned to mark known spam for deletion.
+Multiple accounts are supported.
+A sound can be played if new mail arrives.
+A command menu allows user configurable commands like fetchmail or sendmail.
+A special command can be defined to send complain mail against spam.
+
+The modifications I provided are mainly Qt/KDE stuff to generate a nice
+GUI interface. I am using the great development tool kDevelop V2.1.
+
+If you find the tool useful, tell me about it. If you find any bugs or
+want some additional features, just give me a hint. As time allows,
+I will try to fix them. If you like to translate the language files,
+I would be very happy.
+
+With version 0.5 the passwords are stored as scrambled text in the kshowmailrc file.
+This is no absolute protection, but at least the password cannot be read as
+clear text anymore. If you have old rc files with stored passwords, you must reeenter
+them.
+
+With version 2.2.0 large parts of the configuration are stored in the kshowmail.xml file,
+together with already loaded headers. The improves the speed of refresh a lot, as only
+new headers are loaded again. However, this concept is again imcompatible with the old
+rc file. You have to create your accounts again.
+
+Installation: see the INSTALL file and check the following:
+make sure the environment variables KDEDIR, QTDIR and PATH contain the correct values.
+For SuSE these are:
+KDEDIR=/opt/kde3
+QTDIR=/usr/lib/qt3
+PATH=$KDEDIR/bin:$QTDIR/bin:...
+If not already installed, you need the kde network include files. Get the
+kdenetwork-devel and kdepim-devel rpm packages or the source files.
+
+Known bugs:
+The connection to the pop3 server fails, if there is a null password.
+Sound gets interrupted sometimes.
+
+Fixed bugs:
+the messages are sorted in a wrong sequence; fixed in 0.2
+the optiondelete.xpm file is not installed via tgz; fixed in 0.2
+some messages are not translated into other languages; fixed in 0.3
+segfaults when working on empty config list; fixed in 0.3
+on some servers the service is called pop-3. fixed in 0.4 by connect via port 110
+the status line is only updated after transfer. fixed in 0.5 by changed event handling
+during dialogs or message boxes conflicting timers fixed in 0.5
+password scrambling algorithm problem fixed in 0.5.1
+Endless loop if long messages are displayed fixed in 0.5.2
+kshowmail locks if several messages are shown in sequence fixed in 0.5.2
+Sometimes the toolbar/statusbar get lost fixed in 2.2.0
+If the number of UIDL's in the cache exceedes 200, fixed in 2.2.0; no uidl cache anymore
+old mail may be shown as new, if still on the server. we use xml file now
+the uidl0 is not found in the cache, even if it exists
+If the first account has no new messages, and the
+second account can't get connection,
+the list is not refreshed. fixed in 2.2.1
+Crash when KDE shutdown fixed in 2.2.2
+The sorting of messages by other columns (size)
+does not work. (535377) fixed in 3.0.0
+The sorting by message numbers does not work correctly fixed in 3.0.1
+in case of multiple accounts
+The AlertDialog::signalOk does not work. (514243) fixed in 3.0.1, was KDE2 bug
+Crash if all messages of last account are deleted fixed in 3.0.1, never seen again
+Missing header fields if transfer interrupted (542602) fixed in 3.0.1
+Crash when disabling account (559122) fixed in 3.0.1
+Wrong account activated if sorted backward (562903) fixed in 3.0.2
+
+Acknowledgements:
+Since I started the kshowmail development, I received lots of feedback and constructive
+critics from all over the world. I appreciate this very much and want to say "thank you"
+to all of you. In particular:
+
+Manfred Haertel <Manfred.Haertel@rz-online.de> who wrote the original command line version.
+Espen Sand <espen.sand@neo.no> who provided the timers and some keyboard shortcuts.
+Nicolas Vignal <nicolas.vignal@fnac.net> who provided RPM's for RedHat,
+ and the french translation.
+Serge Parmentier <gerapa@skynet.be>� who updated the french translation
+Edgardo Garc�a <edyx@mindless.com> who provided the spanish translation
+Stephan Giesler <giesler@gmx.net> who updated the spanish translation and
+ did some testing.
+Mattias Newzella <newzella@swipnet.se> who provided the swedish translation
+Aharon Schkolnik <aharon@health.gov.il>, who did a lot of testing and created a lot of
+Matthias Doell <mail@MatthiasDoell.de>, ideas that are now part of kshowmail.
+Thomas Watz <twatz@gmx.de>
+Maic Szotek <webmaster@dragontower.de> who provided the nice new icons for the
+ 3.x.x version.
+Gustavo Zamorano S. <gzsuniq@cableonda.net> who suggested the "Reply" feature and tested
+ some scripts.
+Sandor Laza <slaza@xs4all.nl> who provided the hungarian translation.
+Gabriele Postorino <g.posto@tin.it> who provided the italian translation.
+Robert Kratky <kratky@rob.cz> who provided the czech translation.
+
+Have a lot of fun! ;-)
diff --git a/ReleaseNotes b/ReleaseNotes
new file mode 100644
index 0000000..247b1e6
--- /dev/null
+++ b/ReleaseNotes
@@ -0,0 +1,16 @@
+Release Notes for Kshowmail
+
+20 April 2008
+Version 3.3.0
+ Revised filter (dialog and worker)
+ * White- and Blacklist
+ * indefinite number of filters
+ * moving of mails into mailboxes
+ * ignoring of mails (e.g. for mailing lists)
+ Spam check with SpamAssassin (just basically)
+ Revised filter log
+
+04 August 2007
+Version 3.2.9 (3.3-pre1)
+
+ Added support for SSL/TLS
diff --git a/TODO b/TODO
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/TODO
diff --git a/acinclude.m4 b/acinclude.m4
new file mode 100644
index 0000000..8b90176
--- /dev/null
+++ b/acinclude.m4
@@ -0,0 +1,11863 @@
+## -*- autoconf -*-
+
+dnl This file is part of the KDE libraries/packages
+dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu)
+dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org)
+
+dnl This file is free software; you can redistribute it and/or
+dnl modify it under the terms of the GNU Library General Public
+dnl License as published by the Free Software Foundation; either
+dnl version 2 of the License, or (at your option) any later version.
+
+dnl This library is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+dnl Library General Public License for more details.
+
+dnl You should have received a copy of the GNU Library General Public License
+dnl along with this library; see the file COPYING.LIB. If not, write to
+dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+dnl Boston, MA 02110-1301, USA.
+
+dnl IMPORTANT NOTE:
+dnl Please do not modify this file unless you expect your modifications to be
+dnl carried into every other module in the repository.
+dnl
+dnl Single-module modifications are best placed in configure.in for kdelibs
+dnl and kdebase or configure.in.in if present.
+
+# KDE_PATH_X_DIRECT
+dnl Internal subroutine of AC_PATH_X.
+dnl Set ac_x_includes and/or ac_x_libraries.
+AC_DEFUN([KDE_PATH_X_DIRECT],
+[
+AC_REQUIRE([KDE_CHECK_LIB64])
+
+if test "$ac_x_includes" = NO; then
+ # Guess where to find include files, by looking for this one X11 .h file.
+ test -z "$x_direct_test_include" && x_direct_test_include=X11/Intrinsic.h
+
+ # First, try using that file with no special directory specified.
+AC_TRY_CPP([#include <$x_direct_test_include>],
+[# We can compile using X headers with no special include directory.
+ac_x_includes=],
+[# Look for the header file in a standard set of common directories.
+# Check X11 before X11Rn because it is often a symlink to the current release.
+ for ac_dir in \
+ /usr/X11/include \
+ /usr/X11R6/include \
+ /usr/X11R5/include \
+ /usr/X11R4/include \
+ \
+ /usr/include/X11 \
+ /usr/include/X11R6 \
+ /usr/include/X11R5 \
+ /usr/include/X11R4 \
+ \
+ /usr/local/X11/include \
+ /usr/local/X11R6/include \
+ /usr/local/X11R5/include \
+ /usr/local/X11R4/include \
+ \
+ /usr/local/include/X11 \
+ /usr/local/include/X11R6 \
+ /usr/local/include/X11R5 \
+ /usr/local/include/X11R4 \
+ \
+ /usr/X386/include \
+ /usr/x386/include \
+ /usr/XFree86/include/X11 \
+ \
+ /usr/include \
+ /usr/local/include \
+ /usr/unsupported/include \
+ /usr/athena/include \
+ /usr/local/x11r5/include \
+ /usr/lpp/Xamples/include \
+ \
+ /usr/openwin/include \
+ /usr/openwin/share/include \
+ ; \
+ do
+ if test -r "$ac_dir/$x_direct_test_include"; then
+ ac_x_includes=$ac_dir
+ break
+ fi
+ done])
+fi # $ac_x_includes = NO
+
+if test "$ac_x_libraries" = NO; then
+ # Check for the libraries.
+
+ test -z "$x_direct_test_library" && x_direct_test_library=Xt
+ test -z "$x_direct_test_function" && x_direct_test_function=XtMalloc
+
+ # See if we find them without any special options.
+ # Don't add to $LIBS permanently.
+ ac_save_LIBS="$LIBS"
+ LIBS="-l$x_direct_test_library $LIBS"
+AC_TRY_LINK([#include <X11/Intrinsic.h>], [${x_direct_test_function}(1)],
+[LIBS="$ac_save_LIBS"
+# We can link X programs with no special library path.
+ac_x_libraries=],
+[LIBS="$ac_save_LIBS"
+# First see if replacing the include by lib works.
+# Check X11 before X11Rn because it is often a symlink to the current release.
+for ac_dir in `echo "$ac_x_includes" | sed s/include/lib${kdelibsuff}/` \
+ /usr/X11/lib${kdelibsuff} \
+ /usr/X11R6/lib${kdelibsuff} \
+ /usr/X11R5/lib${kdelibsuff} \
+ /usr/X11R4/lib${kdelibsuff} \
+ \
+ /usr/lib${kdelibsuff}/X11 \
+ /usr/lib${kdelibsuff}/X11R6 \
+ /usr/lib${kdelibsuff}/X11R5 \
+ /usr/lib${kdelibsuff}/X11R4 \
+ \
+ /usr/local/X11/lib${kdelibsuff} \
+ /usr/local/X11R6/lib${kdelibsuff} \
+ /usr/local/X11R5/lib${kdelibsuff} \
+ /usr/local/X11R4/lib${kdelibsuff} \
+ \
+ /usr/local/lib${kdelibsuff}/X11 \
+ /usr/local/lib${kdelibsuff}/X11R6 \
+ /usr/local/lib${kdelibsuff}/X11R5 \
+ /usr/local/lib${kdelibsuff}/X11R4 \
+ \
+ /usr/X386/lib${kdelibsuff} \
+ /usr/x386/lib${kdelibsuff} \
+ /usr/XFree86/lib${kdelibsuff}/X11 \
+ \
+ /usr/lib${kdelibsuff} \
+ /usr/local/lib${kdelibsuff} \
+ /usr/unsupported/lib${kdelibsuff} \
+ /usr/athena/lib${kdelibsuff} \
+ /usr/local/x11r5/lib${kdelibsuff} \
+ /usr/lpp/Xamples/lib${kdelibsuff} \
+ /lib/usr/lib${kdelibsuff}/X11 \
+ \
+ /usr/openwin/lib${kdelibsuff} \
+ /usr/openwin/share/lib${kdelibsuff} \
+ ; \
+do
+dnl Don't even attempt the hair of trying to link an X program!
+ for ac_extension in a so sl; do
+ if test -r $ac_dir/lib${x_direct_test_library}.$ac_extension; then
+ ac_x_libraries=$ac_dir
+ break 2
+ fi
+ done
+done])
+fi # $ac_x_libraries = NO
+])
+
+
+dnl ------------------------------------------------------------------------
+dnl Find a file (or one of more files in a list of dirs)
+dnl ------------------------------------------------------------------------
+dnl
+AC_DEFUN([AC_FIND_FILE],
+[
+$3=NO
+for i in $2;
+do
+ for j in $1;
+ do
+ echo "configure: __oline__: $i/$j" >&AC_FD_CC
+ if test -r "$i/$j"; then
+ echo "taking that" >&AC_FD_CC
+ $3=$i
+ break 2
+ fi
+ done
+done
+])
+
+dnl KDE_FIND_PATH(program-name, variable-name, list-of-dirs,
+dnl if-not-found, test-parameter, prepend-path)
+dnl
+dnl Look for program-name in list-of-dirs+$PATH.
+dnl If prepend-path is set, look in $PATH+list-of-dirs instead.
+dnl If found, $variable-name is set. If not, if-not-found is evaluated.
+dnl test-parameter: if set, the program is executed with this arg,
+dnl and only a successful exit code is required.
+AC_DEFUN([KDE_FIND_PATH],
+[
+ AC_MSG_CHECKING([for $1])
+ if test -n "$$2"; then
+ kde_cv_path="$$2";
+ else
+ kde_cache=`echo $1 | sed 'y%./+-%__p_%'`
+
+ AC_CACHE_VAL(kde_cv_path_$kde_cache,
+ [
+ kde_cv_path="NONE"
+ kde_save_IFS=$IFS
+ IFS=':'
+ dirs=""
+ for dir in $PATH; do
+ dirs="$dirs $dir"
+ done
+ if test -z "$6"; then dnl Append dirs in PATH (default)
+ dirs="$3 $dirs"
+ else dnl Prepend dirs in PATH (if 6th arg is set)
+ dirs="$dirs $3"
+ fi
+ IFS=$kde_save_IFS
+
+ for dir in $dirs; do
+ if test -x "$dir/$1"; then
+ if test -n "$5"
+ then
+ evalstr="$dir/$1 $5 2>&1 "
+ if eval $evalstr; then
+ kde_cv_path="$dir/$1"
+ break
+ fi
+ else
+ kde_cv_path="$dir/$1"
+ break
+ fi
+ fi
+ done
+
+ eval "kde_cv_path_$kde_cache=$kde_cv_path"
+
+ ])
+
+ eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\""
+
+ fi
+
+ if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then
+ AC_MSG_RESULT(not found)
+ $4
+ else
+ AC_MSG_RESULT($kde_cv_path)
+ $2=$kde_cv_path
+
+ fi
+])
+
+AC_DEFUN([KDE_MOC_ERROR_MESSAGE],
+[
+ AC_MSG_ERROR([No Qt meta object compiler (moc) found!
+Please check whether you installed Qt correctly.
+You need to have a running moc binary.
+configure tried to run $ac_cv_path_moc and the test didn't
+succeed. If configure shouldn't have tried this one, set
+the environment variable MOC to the right one before running
+configure.
+])
+])
+
+AC_DEFUN([KDE_UIC_ERROR_MESSAGE],
+[
+ AC_MSG_WARN([No Qt ui compiler (uic) found!
+Please check whether you installed Qt correctly.
+You need to have a running uic binary.
+configure tried to run $ac_cv_path_uic and the test didn't
+succeed. If configure shouldn't have tried this one, set
+the environment variable UIC to the right one before running
+configure.
+])
+])
+
+
+AC_DEFUN([KDE_CHECK_UIC_FLAG],
+[
+ AC_MSG_CHECKING([whether uic supports -$1 ])
+ kde_cache=`echo $1 | sed 'y% .=/+-%____p_%'`
+ AC_CACHE_VAL(kde_cv_prog_uic_$kde_cache,
+ [
+ cat >conftest.ui <<EOT
+ <!DOCTYPE UI><UI version="3" stdsetdef="1"></UI>
+EOT
+ ac_uic_testrun="$UIC_PATH -$1 $2 conftest.ui >/dev/null"
+ if AC_TRY_EVAL(ac_uic_testrun); then
+ eval "kde_cv_prog_uic_$kde_cache=yes"
+ else
+ eval "kde_cv_prog_uic_$kde_cache=no"
+ fi
+ rm -f conftest*
+ ])
+
+ if eval "test \"`echo '$kde_cv_prog_uic_'$kde_cache`\" = yes"; then
+ AC_MSG_RESULT([yes])
+ :
+ $3
+ else
+ AC_MSG_RESULT([no])
+ :
+ $4
+ fi
+])
+
+
+dnl ------------------------------------------------------------------------
+dnl Find the meta object compiler and the ui compiler in the PATH,
+dnl in $QTDIR/bin, and some more usual places
+dnl ------------------------------------------------------------------------
+dnl
+AC_DEFUN([AC_PATH_QT_MOC_UIC],
+[
+ AC_REQUIRE([KDE_CHECK_PERL])
+ qt_bindirs=""
+ for dir in $kde_qt_dirs; do
+ qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc"
+ done
+ qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin"
+ if test ! "$ac_qt_bindir" = "NO"; then
+ qt_bindirs="$ac_qt_bindir $qt_bindirs"
+ fi
+
+ KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE])
+ if test -z "$UIC_NOT_NEEDED"; then
+ KDE_FIND_PATH(uic, UIC_PATH, [$qt_bindirs], [UIC_PATH=""])
+ if test -z "$UIC_PATH" ; then
+ KDE_UIC_ERROR_MESSAGE
+ exit 1
+ else
+ UIC=$UIC_PATH
+
+ if test $kde_qtver = 3; then
+ KDE_CHECK_UIC_FLAG(L,[/nonexistent],ac_uic_supports_libpath=yes,ac_uic_supports_libpath=no)
+ KDE_CHECK_UIC_FLAG(nounload,,ac_uic_supports_nounload=yes,ac_uic_supports_nounload=no)
+
+ if test x$ac_uic_supports_libpath = xyes; then
+ UIC="$UIC -L \$(kde_widgetdir)"
+ fi
+ if test x$ac_uic_supports_nounload = xyes; then
+ UIC="$UIC -nounload"
+ fi
+ fi
+ fi
+ else
+ UIC="echo uic not available: "
+ fi
+
+ AC_SUBST(MOC)
+ AC_SUBST(UIC)
+
+ UIC_TR="i18n"
+ if test $kde_qtver = 3; then
+ UIC_TR="tr2i18n"
+ fi
+
+ AC_SUBST(UIC_TR)
+])
+
+AC_DEFUN([KDE_1_CHECK_PATHS],
+[
+ KDE_1_CHECK_PATH_HEADERS
+
+ KDE_TEST_RPATH=
+
+ if test -n "$USE_RPATH"; then
+
+ if test -n "$kde_libraries"; then
+ KDE_TEST_RPATH="-R $kde_libraries"
+ fi
+
+ if test -n "$qt_libraries"; then
+ KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries"
+ fi
+
+ if test -n "$x_libraries"; then
+ KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries"
+ fi
+
+ KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH"
+ fi
+
+AC_MSG_CHECKING([for KDE libraries installed])
+ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5'
+
+if AC_TRY_EVAL(ac_link) && test -s conftest; then
+ AC_MSG_RESULT(yes)
+else
+ AC_MSG_ERROR([your system fails at linking a small KDE application!
+Check, if your compiler is installed correctly and if you have used the
+same compiler to compile Qt and kdelibs as you did use now.
+For more details about this problem, look at the end of config.log.])
+fi
+
+if eval `KDEDIR= ./conftest 2>&5`; then
+ kde_result=done
+else
+ kde_result=problems
+fi
+
+KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log
+kde_have_all_paths=yes
+
+KDE_SET_PATHS($kde_result)
+
+])
+
+AC_DEFUN([KDE_SET_PATHS],
+[
+ kde_cv_all_paths="kde_have_all_paths=\"yes\" \
+ kde_htmldir=\"$kde_htmldir\" \
+ kde_appsdir=\"$kde_appsdir\" \
+ kde_icondir=\"$kde_icondir\" \
+ kde_sounddir=\"$kde_sounddir\" \
+ kde_datadir=\"$kde_datadir\" \
+ kde_locale=\"$kde_locale\" \
+ kde_cgidir=\"$kde_cgidir\" \
+ kde_confdir=\"$kde_confdir\" \
+ kde_kcfgdir=\"$kde_kcfgdir\" \
+ kde_mimedir=\"$kde_mimedir\" \
+ kde_toolbardir=\"$kde_toolbardir\" \
+ kde_wallpaperdir=\"$kde_wallpaperdir\" \
+ kde_templatesdir=\"$kde_templatesdir\" \
+ kde_bindir=\"$kde_bindir\" \
+ kde_servicesdir=\"$kde_servicesdir\" \
+ kde_servicetypesdir=\"$kde_servicetypesdir\" \
+ kde_moduledir=\"$kde_moduledir\" \
+ kde_styledir=\"$kde_styledir\" \
+ kde_widgetdir=\"$kde_widgetdir\" \
+ xdg_appsdir=\"$xdg_appsdir\" \
+ xdg_menudir=\"$xdg_menudir\" \
+ xdg_directorydir=\"$xdg_directorydir\" \
+ kde_result=$1"
+])
+
+AC_DEFUN([KDE_SET_DEFAULT_PATHS],
+[
+if test "$1" = "default"; then
+
+ if test -z "$kde_htmldir"; then
+ kde_htmldir='\${datadir}/doc/HTML'
+ fi
+ if test -z "$kde_appsdir"; then
+ kde_appsdir='\${datadir}/applnk'
+ fi
+ if test -z "$kde_icondir"; then
+ kde_icondir='\${datadir}/icons'
+ fi
+ if test -z "$kde_sounddir"; then
+ kde_sounddir='\${datadir}/sounds'
+ fi
+ if test -z "$kde_datadir"; then
+ kde_datadir='\${datadir}/apps'
+ fi
+ if test -z "$kde_locale"; then
+ kde_locale='\${datadir}/locale'
+ fi
+ if test -z "$kde_cgidir"; then
+ kde_cgidir='\${exec_prefix}/cgi-bin'
+ fi
+ if test -z "$kde_confdir"; then
+ kde_confdir='\${datadir}/config'
+ fi
+ if test -z "$kde_kcfgdir"; then
+ kde_kcfgdir='\${datadir}/config.kcfg'
+ fi
+ if test -z "$kde_mimedir"; then
+ kde_mimedir='\${datadir}/mimelnk'
+ fi
+ if test -z "$kde_toolbardir"; then
+ kde_toolbardir='\${datadir}/toolbar'
+ fi
+ if test -z "$kde_wallpaperdir"; then
+ kde_wallpaperdir='\${datadir}/wallpapers'
+ fi
+ if test -z "$kde_templatesdir"; then
+ kde_templatesdir='\${datadir}/templates'
+ fi
+ if test -z "$kde_bindir"; then
+ kde_bindir='\${exec_prefix}/bin'
+ fi
+ if test -z "$kde_servicesdir"; then
+ kde_servicesdir='\${datadir}/services'
+ fi
+ if test -z "$kde_servicetypesdir"; then
+ kde_servicetypesdir='\${datadir}/servicetypes'
+ fi
+ if test -z "$kde_moduledir"; then
+ if test "$kde_qtver" = "2"; then
+ kde_moduledir='\${libdir}/kde2'
+ else
+ kde_moduledir='\${libdir}/kde3'
+ fi
+ fi
+ if test -z "$kde_styledir"; then
+ kde_styledir='\${libdir}/kde3/plugins/styles'
+ fi
+ if test -z "$kde_widgetdir"; then
+ kde_widgetdir='\${libdir}/kde3/plugins/designer'
+ fi
+ if test -z "$xdg_appsdir"; then
+ xdg_appsdir='\${datadir}/applications/kde'
+ fi
+ if test -z "$xdg_menudir"; then
+ xdg_menudir='\${sysconfdir}/xdg/menus'
+ fi
+ if test -z "$xdg_directorydir"; then
+ xdg_directorydir='\${datadir}/desktop-directories'
+ fi
+
+ KDE_SET_PATHS(defaults)
+
+else
+
+ if test $kde_qtver = 1; then
+ AC_MSG_RESULT([compiling])
+ KDE_1_CHECK_PATHS
+ else
+ AC_MSG_ERROR([path checking not yet supported for KDE 2])
+ fi
+
+fi
+])
+
+AC_DEFUN([KDE_CHECK_PATHS_FOR_COMPLETENESS],
+[ if test -z "$kde_htmldir" || test -z "$kde_appsdir" ||
+ test -z "$kde_icondir" || test -z "$kde_sounddir" ||
+ test -z "$kde_datadir" || test -z "$kde_locale" ||
+ test -z "$kde_cgidir" || test -z "$kde_confdir" ||
+ test -z "$kde_kcfgdir" ||
+ test -z "$kde_mimedir" || test -z "$kde_toolbardir" ||
+ test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" ||
+ test -z "$kde_bindir" || test -z "$kde_servicesdir" ||
+ test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" ||
+ test -z "$kde_styledir" || test -z "kde_widgetdir" ||
+ test -z "$xdg_appsdir" || test -z "$xdg_menudir" || test -z "$xdg_directorydir" ||
+ test "x$kde_have_all_paths" != "xyes"; then
+ kde_have_all_paths=no
+ fi
+])
+
+AC_DEFUN([KDE_MISSING_PROG_ERROR],
+[
+ AC_MSG_ERROR([The important program $1 was not found!
+Please check whether you installed KDE correctly.
+])
+])
+
+AC_DEFUN([KDE_MISSING_ARTS_ERROR],
+[
+ AC_MSG_ERROR([The important program $1 was not found!
+Please check whether you installed aRts correctly or use
+--without-arts to compile without aRts support (this will remove functionality).
+])
+])
+
+AC_DEFUN([KDE_SET_DEFAULT_BINDIRS],
+[
+ kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde3/bin /usr/kde/bin /usr/local/kde/bin"
+ test -n "$KDEDIR" && kde_default_bindirs="$KDEDIR/bin $kde_default_bindirs"
+ if test -n "$KDEDIRS"; then
+ kde_save_IFS=$IFS
+ IFS=:
+ for dir in $KDEDIRS; do
+ kde_default_bindirs="$dir/bin $kde_default_bindirs "
+ done
+ IFS=$kde_save_IFS
+ fi
+])
+
+AC_DEFUN([KDE_SUBST_PROGRAMS],
+[
+ AC_ARG_WITH(arts,
+ AC_HELP_STRING([--without-arts],[build without aRts [default=no]]),
+ [build_arts=$withval],
+ [build_arts=yes]
+ )
+ AM_CONDITIONAL(include_ARTS, test "$build_arts" '!=' "no")
+ if test "$build_arts" = "no"; then
+ AC_DEFINE(WITHOUT_ARTS, 1, [Defined if compiling without arts])
+ fi
+
+ KDE_SET_DEFAULT_BINDIRS
+ kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_libs_prefix/bin $kde_default_bindirs"
+ KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)])
+ KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)])
+ if test "$build_arts" '!=' "no"; then
+ KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_ARTS_ERROR(mcopidl)])
+ KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_ARTS_ERROR(artsc-config)])
+ fi
+ KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs])
+
+ kde32ornewer=1
+ kde33ornewer=1
+ if test -n "$kde_qtver" && test "$kde_qtver" -lt 3; then
+ kde32ornewer=
+ kde33ornewer=
+ else
+ if test "$kde_qtver" = "3"; then
+ if test "$kde_qtsubver" -le 1; then
+ kde32ornewer=
+ fi
+ if test "$kde_qtsubver" -le 2; then
+ kde33ornewer=
+ fi
+ if test "$KDECONFIG" != "compiled"; then
+ if test `$KDECONFIG --version | grep KDE | sed 's/KDE: \(...\).*/\1/'` = 3.2; then
+ kde33ornewer=
+ fi
+ fi
+ fi
+ fi
+
+ if test -n "$kde32ornewer"; then
+ KDE_FIND_PATH(kconfig_compiler, KCONFIG_COMPILER, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kconfig_compiler)])
+ KDE_FIND_PATH(dcopidlng, DCOPIDLNG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidlng)])
+ fi
+ if test -n "$kde33ornewer"; then
+ KDE_FIND_PATH(makekdewidgets, MAKEKDEWIDGETS, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(makekdewidgets)])
+ AC_SUBST(MAKEKDEWIDGETS)
+ fi
+ KDE_FIND_PATH(xmllint, XMLLINT, [${prefix}/bin ${exec_prefix}/bin], [XMLLINT=""])
+
+ if test -n "$MEINPROC" -a "$MEINPROC" != "compiled"; then
+ kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde3/share /opt/kde/share $prefix/share"
+ test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs"
+ AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET)
+ if test "$KDE_XSL_STYLESHEET" = "NO"; then
+ KDE_XSL_STYLESHEET=""
+ else
+ KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl"
+ fi
+ fi
+
+ DCOP_DEPENDENCIES='$(DCOPIDL)'
+ if test -n "$kde32ornewer"; then
+ KCFG_DEPENDENCIES='$(KCONFIG_COMPILER)'
+ DCOP_DEPENDENCIES='$(DCOPIDL) $(DCOPIDLNG)'
+ AC_SUBST(KCONFIG_COMPILER)
+ AC_SUBST(KCFG_DEPENDENCIES)
+ AC_SUBST(DCOPIDLNG)
+ fi
+ AC_SUBST(DCOPIDL)
+ AC_SUBST(DCOPIDL2CPP)
+ AC_SUBST(DCOP_DEPENDENCIES)
+ AC_SUBST(MCOPIDL)
+ AC_SUBST(ARTSCCONFIG)
+ AC_SUBST(MEINPROC)
+ AC_SUBST(KDE_XSL_STYLESHEET)
+ AC_SUBST(XMLLINT)
+])dnl
+
+AC_DEFUN([AC_CREATE_KFSSTND],
+[
+AC_REQUIRE([AC_CHECK_RPATH])
+
+AC_MSG_CHECKING([for KDE paths])
+kde_result=""
+kde_cached_paths=yes
+AC_CACHE_VAL(kde_cv_all_paths,
+[
+ KDE_SET_DEFAULT_PATHS($1)
+ kde_cached_paths=no
+])
+eval "$kde_cv_all_paths"
+KDE_CHECK_PATHS_FOR_COMPLETENESS
+if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then
+ # wrong values were cached, may be, we can set better ones
+ kde_result=
+ kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir=
+ kde_datadir= kde_locale= kde_cgidir= kde_confdir= kde_kcfgdir=
+ kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir=
+ kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir=
+ kde_have_all_paths=
+ kde_styledir=
+ kde_widgetdir=
+ xdg_appsdir = xdg_menudir= xdg_directorydir=
+ KDE_SET_DEFAULT_PATHS($1)
+ eval "$kde_cv_all_paths"
+ KDE_CHECK_PATHS_FOR_COMPLETENESS
+ kde_result="$kde_result (cache overridden)"
+fi
+if test "$kde_have_all_paths" = "no"; then
+ AC_MSG_ERROR([configure could not run a little KDE program to test the environment.
+Since it had compiled and linked before, it must be a strange problem on your system.
+Look at config.log for details. If you are not able to fix this, look at
+http://www.kde.org/faq/installation.html or any www.kde.org mirror.
+(If you're using an egcs version on Linux, you may update binutils!)
+])
+else
+ rm -f conftest*
+ AC_MSG_RESULT($kde_result)
+fi
+
+bindir=$kde_bindir
+
+KDE_SUBST_PROGRAMS
+
+])
+
+AC_DEFUN([AC_SUBST_KFSSTND],
+[
+AC_SUBST(kde_htmldir)
+AC_SUBST(kde_appsdir)
+AC_SUBST(kde_icondir)
+AC_SUBST(kde_sounddir)
+AC_SUBST(kde_datadir)
+AC_SUBST(kde_locale)
+AC_SUBST(kde_confdir)
+AC_SUBST(kde_kcfgdir)
+AC_SUBST(kde_mimedir)
+AC_SUBST(kde_wallpaperdir)
+AC_SUBST(kde_bindir)
+dnl X Desktop Group standards
+AC_SUBST(xdg_appsdir)
+AC_SUBST(xdg_menudir)
+AC_SUBST(xdg_directorydir)
+dnl for KDE 2
+AC_SUBST(kde_templatesdir)
+AC_SUBST(kde_servicesdir)
+AC_SUBST(kde_servicetypesdir)
+AC_SUBST(kde_moduledir)
+AC_SUBST(kdeinitdir, '$(kde_moduledir)')
+AC_SUBST(kde_styledir)
+AC_SUBST(kde_widgetdir)
+if test "$kde_qtver" = 1; then
+ kde_minidir="$kde_icondir/mini"
+else
+# for KDE 1 - this breaks KDE2 apps using minidir, but
+# that's the plan ;-/
+ kde_minidir="/dev/null"
+fi
+dnl AC_SUBST(kde_minidir)
+dnl AC_SUBST(kde_cgidir)
+dnl AC_SUBST(kde_toolbardir)
+])
+
+AC_DEFUN([KDE_MISC_TESTS],
+[
+ dnl Checks for libraries.
+ AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for *BSD
+ AC_SUBST(LIBUTIL)
+ AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for *BSD
+ AC_SUBST(LIBCOMPAT)
+ kde_have_crypt=
+ AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes],
+ AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [
+ AC_MSG_WARN([you have no crypt in either libcrypt or libc.
+You should install libcrypt from another source or configure with PAM
+support])
+ kde_have_crypt=no
+ ]))
+ AC_SUBST(LIBCRYPT)
+ if test $kde_have_crypt = yes; then
+ AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function])
+ fi
+ AC_CHECK_SOCKLEN_T
+ AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"])
+ if test $ac_cv_lib_dnet_dnet_ntoa = no; then
+ AC_CHECK_LIB(dnet_stub, dnet_ntoa,
+ [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"])
+ fi
+ AC_CHECK_FUNC(inet_ntoa)
+ if test $ac_cv_func_inet_ntoa = no; then
+ AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl")
+ fi
+ AC_CHECK_FUNC(connect)
+ if test $ac_cv_func_connect = no; then
+ AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", ,
+ $X_EXTRA_LIBS)
+ fi
+
+ AC_CHECK_FUNC(remove)
+ if test $ac_cv_func_remove = no; then
+ AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix")
+ fi
+
+ # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
+ AC_CHECK_FUNC(shmat, ,
+ AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc"))
+
+ # more headers that need to be explicitly included on darwin
+ AC_CHECK_HEADERS(sys/types.h stdint.h)
+
+ # sys/bitypes.h is needed for uint32_t and friends on Tru64
+ AC_CHECK_HEADERS(sys/bitypes.h)
+
+ # darwin requires a poll emulation library
+ AC_CHECK_LIB(poll, poll, LIB_POLL="-lpoll")
+
+ # for some image handling on Mac OS X
+ AC_CHECK_HEADERS(Carbon/Carbon.h)
+
+ # CoreAudio framework
+ AC_CHECK_HEADER(CoreAudio/CoreAudio.h, [
+ AC_DEFINE(HAVE_COREAUDIO, 1, [Define if you have the CoreAudio API])
+ FRAMEWORK_COREAUDIO="-Wl,-framework,CoreAudio"
+ ])
+
+ AC_CHECK_RES_INIT
+ AC_SUBST(LIB_POLL)
+ AC_SUBST(FRAMEWORK_COREAUDIO)
+ LIBSOCKET="$X_EXTRA_LIBS"
+ AC_SUBST(LIBSOCKET)
+ AC_SUBST(X_EXTRA_LIBS)
+ AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4
+ AC_SUBST(LIBUCB)
+
+ case $host in dnl this *is* LynxOS specific
+ *-*-lynxos* )
+ AC_MSG_CHECKING([LynxOS header file wrappers])
+ [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"]
+ AC_MSG_RESULT(disabled)
+ AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS
+ ;;
+ esac
+
+ KDE_CHECK_TYPES
+ KDE_CHECK_LIBDL
+ KDE_CHECK_STRLCPY
+ KDE_CHECK_PIE_SUPPORT
+
+# darwin needs this to initialize the environment
+AC_CHECK_HEADERS(crt_externs.h)
+AC_CHECK_FUNC(_NSGetEnviron, [AC_DEFINE(HAVE_NSGETENVIRON, 1, [Define if your system needs _NSGetEnviron to set up the environment])])
+
+AH_VERBATIM(_DARWIN_ENVIRON,
+[
+#if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H)
+# include <sys/time.h>
+# include <crt_externs.h>
+# define environ (*_NSGetEnviron())
+#endif
+])
+
+AH_VERBATIM(_AIX_STRINGS_H_BZERO,
+[
+/*
+ * AIX defines FD_SET in terms of bzero, but fails to include <strings.h>
+ * that defines bzero.
+ */
+
+#if defined(_AIX)
+#include <strings.h>
+#endif
+])
+
+AC_CHECK_FUNCS([vsnprintf snprintf])
+
+AH_VERBATIM(_TRU64,[
+/*
+ * On HP-UX, the declaration of vsnprintf() is needed every time !
+ */
+
+#if !defined(HAVE_VSNPRINTF) || defined(hpux)
+#if __STDC__
+#include <stdarg.h>
+#include <stdlib.h>
+#else
+#include <varargs.h>
+#endif
+#ifdef __cplusplus
+extern "C"
+#endif
+int vsnprintf(char *str, size_t n, char const *fmt, va_list ap);
+#ifdef __cplusplus
+extern "C"
+#endif
+int snprintf(char *str, size_t n, char const *fmt, ...);
+#endif
+])
+
+])
+
+dnl ------------------------------------------------------------------------
+dnl Find the header files and libraries for X-Windows. Extended the
+dnl macro AC_PATH_X
+dnl ------------------------------------------------------------------------
+dnl
+AC_DEFUN([K_PATH_X],
+[
+AC_REQUIRE([KDE_MISC_TESTS])dnl
+AC_REQUIRE([KDE_CHECK_LIB64])
+
+AC_ARG_ENABLE(
+ embedded,
+ AC_HELP_STRING([--enable-embedded],[link to Qt-embedded, don't use X]),
+ kde_use_qt_emb=$enableval,
+ kde_use_qt_emb=no
+)
+
+AC_ARG_ENABLE(
+ qtopia,
+ AC_HELP_STRING([--enable-qtopia],[link to Qt-embedded, link to the Qtopia Environment]),
+ kde_use_qt_emb_palm=$enableval,
+ kde_use_qt_emb_palm=no
+)
+
+AC_ARG_ENABLE(
+ mac,
+ AC_HELP_STRING([--enable-mac],[link to Qt/Mac (don't use X)]),
+ kde_use_qt_mac=$enableval,
+ kde_use_qt_mac=no
+)
+
+# used to disable x11-specific stuff on special platforms
+AM_CONDITIONAL(include_x11, test "$kde_use_qt_emb" = "no" && test "$kde_use_qt_mac" = "no")
+
+if test "$kde_use_qt_emb" = "no" && test "$kde_use_qt_mac" = "no"; then
+
+AC_MSG_CHECKING(for X)
+
+AC_CACHE_VAL(kde_cv_have_x,
+[# One or both of the vars are not set, and there is no cached value.
+if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then
+ kde_x_includes=NO
+else
+ kde_x_includes=$x_includes
+fi
+if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then
+ kde_x_libraries=NO
+else
+ kde_x_libraries=$x_libraries
+fi
+
+# below we use the standard autoconf calls
+ac_x_libraries=$kde_x_libraries
+ac_x_includes=$kde_x_includes
+
+KDE_PATH_X_DIRECT
+dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries.
+dnl Unfortunately, if compiling with the N32 ABI, this is not the correct
+dnl location. The correct location is /usr/lib32 or an undefined value
+dnl (the linker is smart enough to pick the correct default library).
+dnl Things work just fine if you use just AC_PATH_X_DIRECT.
+dnl Solaris has a similar problem. AC_PATH_X_XMKMF forces x_includes to
+dnl /usr/openwin/include, which doesn't work. /usr/include does work, so
+dnl x_includes should be left alone.
+case "$host" in
+mips-sgi-irix6*)
+ ;;
+*-*-solaris*)
+ ;;
+*)
+ _AC_PATH_X_XMKMF
+ if test -z "$ac_x_includes"; then
+ ac_x_includes="."
+ fi
+ if test -z "$ac_x_libraries"; then
+ ac_x_libraries="/usr/lib${kdelibsuff}"
+ fi
+esac
+#from now on we use our own again
+
+# when the user already gave --x-includes, we ignore
+# what the standard autoconf macros told us.
+if test "$kde_x_includes" = NO; then
+ kde_x_includes=$ac_x_includes
+fi
+
+# for --x-libraries too
+if test "$kde_x_libraries" = NO; then
+ kde_x_libraries=$ac_x_libraries
+fi
+
+if test "$kde_x_includes" = NO; then
+ AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!])
+fi
+
+if test "$kde_x_libraries" = NO; then
+ AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!])
+fi
+
+# Record where we found X for the cache.
+kde_cv_have_x="have_x=yes \
+ kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries"
+])dnl
+
+eval "$kde_cv_have_x"
+
+if test "$have_x" != yes; then
+ AC_MSG_RESULT($have_x)
+ no_x=yes
+else
+ AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes])
+fi
+
+if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then
+ X_INCLUDES=""
+ x_includes="."; dnl better than nothing :-
+ else
+ x_includes=$kde_x_includes
+ X_INCLUDES="-I$x_includes"
+fi
+
+if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then
+ X_LDFLAGS=""
+ x_libraries="/usr/lib"; dnl better than nothing :-
+ else
+ x_libraries=$kde_x_libraries
+ X_LDFLAGS="-L$x_libraries"
+fi
+all_includes="$X_INCLUDES"
+all_libraries="$X_LDFLAGS $LDFLAGS_AS_NEEDED $LDFLAGS_NEW_DTAGS"
+
+# Check for libraries that X11R6 Xt/Xaw programs need.
+ac_save_LDFLAGS="$LDFLAGS"
+LDFLAGS="$LDFLAGS $X_LDFLAGS"
+# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to
+# check for ICE first), but we must link in the order -lSM -lICE or
+# we get undefined symbols. So assume we have SM if we have ICE.
+# These have to be linked with before -lX11, unlike the other
+# libraries we check for below, so use a different variable.
+# --interran@uluru.Stanford.EDU, kb@cs.umb.edu.
+AC_CHECK_LIB(ICE, IceConnectionNumber,
+ [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS)
+LDFLAGS="$ac_save_LDFLAGS"
+
+LIB_X11='-lX11 $(LIBSOCKET)'
+
+AC_MSG_CHECKING(for libXext)
+AC_CACHE_VAL(kde_cv_have_libXext,
+[
+kde_ldflags_safe="$LDFLAGS"
+kde_libs_safe="$LIBS"
+
+LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS"
+LIBS="-lXext -lX11 $LIBSOCKET"
+
+AC_TRY_LINK([
+#include <stdio.h>
+#ifdef STDC_HEADERS
+# include <stdlib.h>
+#endif
+],
+[
+printf("hello Xext\n");
+],
+kde_cv_have_libXext=yes,
+kde_cv_have_libXext=no
+)
+
+LDFLAGS=$kde_ldflags_safe
+LIBS=$kde_libs_safe
+])
+
+AC_MSG_RESULT($kde_cv_have_libXext)
+
+if test "$kde_cv_have_libXext" = "no"; then
+ AC_MSG_ERROR([We need a working libXext to proceed. Since configure
+can't find it itself, we stop here assuming that make wouldn't find
+them either.])
+fi
+
+LIB_XEXT="-lXext"
+QTE_NORTTI=""
+
+elif test "$kde_use_qt_emb" = "yes"; then
+ dnl We're using QT Embedded
+ CPPFLAGS=-DQWS
+ CXXFLAGS="$CXXFLAGS -fno-rtti"
+ QTE_NORTTI="-fno-rtti -DQWS"
+ X_PRE_LIBS=""
+ LIB_X11=""
+ LIB_XEXT=""
+ LIB_XRENDER=""
+ LIBSM=""
+ X_INCLUDES=""
+ X_LDFLAGS=""
+ x_includes=""
+ x_libraries=""
+elif test "$kde_use_qt_mac" = "yes"; then
+ dnl We're using QT/Mac (I use QT_MAC so that qglobal.h doesn't *have* to
+ dnl be included to get the information) --Sam
+ CXXFLAGS="$CXXFLAGS -DQT_MAC -no-cpp-precomp"
+ CFLAGS="$CFLAGS -DQT_MAC -no-cpp-precomp"
+ X_PRE_LIBS=""
+ LIB_X11=""
+ LIB_XEXT=""
+ LIB_XRENDER=""
+ LIBSM=""
+ X_INCLUDES=""
+ X_LDFLAGS=""
+ x_includes=""
+ x_libraries=""
+fi
+AC_SUBST(X_PRE_LIBS)
+AC_SUBST(LIB_X11)
+AC_SUBST(LIB_XRENDER)
+AC_SUBST(LIBSM)
+AC_SUBST(X_INCLUDES)
+AC_SUBST(X_LDFLAGS)
+AC_SUBST(x_includes)
+AC_SUBST(x_libraries)
+AC_SUBST(QTE_NORTTI)
+AC_SUBST(LIB_XEXT)
+
+])
+
+AC_DEFUN([KDE_PRINT_QT_PROGRAM],
+[
+AC_REQUIRE([KDE_USE_QT])
+cat > conftest.$ac_ext <<EOF
+#include "confdefs.h"
+#include <qglobal.h>
+#include <qapplication.h>
+EOF
+if test "$kde_qtver" = "2"; then
+cat >> conftest.$ac_ext <<EOF
+#include <qevent.h>
+#include <qstring.h>
+#include <qstyle.h>
+EOF
+
+if test $kde_qtsubver -gt 0; then
+cat >> conftest.$ac_ext <<EOF
+#if QT_VERSION < 210
+#error 1
+#endif
+EOF
+fi
+fi
+
+if test "$kde_qtver" = "3"; then
+cat >> conftest.$ac_ext <<EOF
+#include <qcursor.h>
+#include <qstylefactory.h>
+#include <private/qucomextra_p.h>
+EOF
+fi
+
+echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext
+cat >> conftest.$ac_ext <<EOF
+#error 1
+#endif
+
+int main() {
+EOF
+if test "$kde_qtver" = "2"; then
+cat >> conftest.$ac_ext <<EOF
+ QStringList *t = new QStringList();
+ Q_UNUSED(t);
+EOF
+if test $kde_qtsubver -gt 0; then
+cat >> conftest.$ac_ext <<EOF
+ QString s;
+ s.setLatin1("Elvis is alive", 14);
+EOF
+fi
+fi
+if test "$kde_qtver" = "3"; then
+cat >> conftest.$ac_ext <<EOF
+ (void)QStyleFactory::create(QString::null);
+ QCursor c(Qt::WhatsThisCursor);
+EOF
+fi
+cat >> conftest.$ac_ext <<EOF
+ return 0;
+}
+EOF
+])
+
+AC_DEFUN([KDE_USE_QT],
+[
+if test -z "$1"; then
+ # Current default Qt version: 3.3
+ kde_qtver=3
+ kde_qtsubver=3
+else
+ kde_qtsubver=`echo "$1" | sed -e 's#[0-9][0-9]*\.\([0-9][0-9]*\).*#\1#'`
+ # following is the check if subversion isnt found in passed argument
+ if test "$kde_qtsubver" = "$1"; then
+ kde_qtsubver=1
+ fi
+ kde_qtver=`echo "$1" | sed -e 's#^\([0-9][0-9]*\)\..*#\1#'`
+ if test "$kde_qtver" = "1"; then
+ kde_qtsubver=42
+ fi
+fi
+
+if test -z "$2"; then
+ if test "$kde_qtver" = "2"; then
+ if test $kde_qtsubver -gt 0; then
+ kde_qt_minversion=">= Qt 2.2.2"
+ else
+ kde_qt_minversion=">= Qt 2.0.2"
+ fi
+ fi
+ if test "$kde_qtver" = "3"; then
+ if test $kde_qtsubver -gt 0; then
+ if test $kde_qtsubver -gt 1; then
+ if test $kde_qtsubver -gt 2; then
+ kde_qt_minversion=">= Qt 3.3 and < 4.0"
+ else
+ kde_qt_minversion=">= Qt 3.2 and < 4.0"
+ fi
+ else
+ kde_qt_minversion=">= Qt 3.1 (20021021) and < 4.0"
+ fi
+ else
+ kde_qt_minversion=">= Qt 3.0 and < 4.0"
+ fi
+ fi
+ if test "$kde_qtver" = "1"; then
+ kde_qt_minversion=">= 1.42 and < 2.0"
+ fi
+else
+ kde_qt_minversion="$2"
+fi
+
+if test -z "$3"; then
+ if test $kde_qtver = 3; then
+ if test $kde_qtsubver -gt 0; then
+ kde_qt_verstring="QT_VERSION >= 0x03@VER@00 && QT_VERSION < 0x040000"
+ qtsubver=`echo "00$kde_qtsubver" | sed -e 's,.*\(..\)$,\1,'`
+ kde_qt_verstring=`echo $kde_qt_verstring | sed -e "s,@VER@,$qtsubver,"`
+ else
+ kde_qt_verstring="QT_VERSION >= 300 && QT_VERSION < 0x040000"
+ fi
+ fi
+ if test $kde_qtver = 2; then
+ if test $kde_qtsubver -gt 0; then
+ kde_qt_verstring="QT_VERSION >= 222"
+ else
+ kde_qt_verstring="QT_VERSION >= 200"
+ fi
+ fi
+ if test $kde_qtver = 1; then
+ kde_qt_verstring="QT_VERSION >= 142 && QT_VERSION < 200"
+ fi
+else
+ kde_qt_verstring="$3"
+fi
+
+if test $kde_qtver = 4; then
+ kde_qt_dirs="$QTDIR /usr/lib/qt4 /usr/lib/qt /usr/share/qt4"
+fi
+if test $kde_qtver = 3; then
+ kde_qt_dirs="$QTDIR /usr/lib/qt3 /usr/lib/qt /usr/share/qt3"
+fi
+if test $kde_qtver = 2; then
+ kde_qt_dirs="$QTDIR /usr/lib/qt2 /usr/lib/qt"
+fi
+if test $kde_qtver = 1; then
+ kde_qt_dirs="$QTDIR /usr/lib/qt"
+fi
+])
+
+AC_DEFUN([KDE_CHECK_QT_DIRECT],
+[
+AC_REQUIRE([KDE_USE_QT])
+AC_MSG_CHECKING([if Qt compiles without flags])
+AC_CACHE_VAL(kde_cv_qt_direct,
+[
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+ac_LD_LIBRARY_PATH_safe=$LD_LIBRARY_PATH
+ac_LIBRARY_PATH="$LIBRARY_PATH"
+ac_cxxflags_safe="$CXXFLAGS"
+ac_ldflags_safe="$LDFLAGS"
+ac_libs_safe="$LIBS"
+
+CXXFLAGS="$CXXFLAGS -I$qt_includes"
+LDFLAGS="$LDFLAGS $X_LDFLAGS"
+if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
+LIBS="$LIBQT -lXext -lX11 $LIBSOCKET"
+else
+LIBS="$LIBQT $LIBSOCKET"
+fi
+LD_LIBRARY_PATH=
+export LD_LIBRARY_PATH
+LIBRARY_PATH=
+export LIBRARY_PATH
+
+KDE_PRINT_QT_PROGRAM
+
+if AC_TRY_EVAL(ac_link) && test -s conftest; then
+ kde_cv_qt_direct="yes"
+else
+ kde_cv_qt_direct="no"
+ echo "configure: failed program was:" >&AC_FD_CC
+ cat conftest.$ac_ext >&AC_FD_CC
+fi
+
+rm -f conftest*
+CXXFLAGS="$ac_cxxflags_safe"
+LDFLAGS="$ac_ldflags_safe"
+LIBS="$ac_libs_safe"
+
+LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe"
+export LD_LIBRARY_PATH
+LIBRARY_PATH="$ac_LIBRARY_PATH"
+export LIBRARY_PATH
+AC_LANG_RESTORE
+])
+
+if test "$kde_cv_qt_direct" = "yes"; then
+ AC_MSG_RESULT(yes)
+ $1
+else
+ AC_MSG_RESULT(no)
+ $2
+fi
+])
+
+dnl ------------------------------------------------------------------------
+dnl Try to find the Qt headers and libraries.
+dnl $(QT_LDFLAGS) will be -Lqtliblocation (if needed)
+dnl and $(QT_INCLUDES) will be -Iqthdrlocation (if needed)
+dnl ------------------------------------------------------------------------
+dnl
+AC_DEFUN([AC_PATH_QT_1_3],
+[
+AC_REQUIRE([K_PATH_X])
+AC_REQUIRE([KDE_USE_QT])
+AC_REQUIRE([KDE_CHECK_LIB64])
+
+dnl ------------------------------------------------------------------------
+dnl Add configure flag to enable linking to MT version of Qt library.
+dnl ------------------------------------------------------------------------
+
+AC_ARG_ENABLE(
+ mt,
+ AC_HELP_STRING([--disable-mt],[link to non-threaded Qt (deprecated)]),
+ kde_use_qt_mt=$enableval,
+ [
+ if test $kde_qtver = 3; then
+ kde_use_qt_mt=yes
+ else
+ kde_use_qt_mt=no
+ fi
+ ]
+)
+
+USING_QT_MT=""
+
+dnl ------------------------------------------------------------------------
+dnl If we not get --disable-qt-mt then adjust some vars for the host.
+dnl ------------------------------------------------------------------------
+
+KDE_MT_LDFLAGS=
+KDE_MT_LIBS=
+if test "x$kde_use_qt_mt" = "xyes"; then
+ KDE_CHECK_THREADING
+ if test "x$kde_use_threading" = "xyes"; then
+ CPPFLAGS="$USE_THREADS -DQT_THREAD_SUPPORT $CPPFLAGS"
+ KDE_MT_LDFLAGS="$USE_THREADS"
+ KDE_MT_LIBS="$LIBPTHREAD"
+ else
+ kde_use_qt_mt=no
+ fi
+fi
+AC_SUBST(KDE_MT_LDFLAGS)
+AC_SUBST(KDE_MT_LIBS)
+
+kde_qt_was_given=yes
+
+dnl ------------------------------------------------------------------------
+dnl If we haven't been told how to link to Qt, we work it out for ourselves.
+dnl ------------------------------------------------------------------------
+if test -z "$LIBQT_GLOB"; then
+ if test "x$kde_use_qt_emb" = "xyes"; then
+ LIBQT_GLOB="libqte.*"
+ else
+ LIBQT_GLOB="libqt.*"
+ fi
+fi
+
+dnl ------------------------------------------------------------
+dnl If we got --enable-embedded then adjust the Qt library name.
+dnl ------------------------------------------------------------
+if test "x$kde_use_qt_emb" = "xyes"; then
+ qtlib="qte"
+else
+ qtlib="qt"
+fi
+
+kde_int_qt="-l$qtlib"
+
+if test -z "$LIBQPE"; then
+dnl ------------------------------------------------------------
+dnl If we got --enable-palmtop then add -lqpe to the link line
+dnl ------------------------------------------------------------
+ if test "x$kde_use_qt_emb" = "xyes"; then
+ if test "x$kde_use_qt_emb_palm" = "xyes"; then
+ LIB_QPE="-lqpe"
+ else
+ LIB_QPE=""
+ fi
+ else
+ LIB_QPE=""
+ fi
+fi
+
+dnl ------------------------------------------------------------------------
+dnl If we got --enable-qt-mt then adjust the Qt library name for the host.
+dnl ------------------------------------------------------------------------
+
+if test "x$kde_use_qt_mt" = "xyes"; then
+ LIBQT="-l$qtlib-mt"
+ kde_int_qt="-l$qtlib-mt"
+ LIBQT_GLOB="lib$qtlib-mt.*"
+ USING_QT_MT="using -mt"
+else
+ LIBQT="-l$qtlib"
+fi
+
+if test $kde_qtver != 1; then
+
+ AC_REQUIRE([AC_FIND_PNG])
+ AC_REQUIRE([AC_FIND_JPEG])
+ LIBQT="$LIBQT $LIBPNG $LIBJPEG"
+fi
+
+if test $kde_qtver = 3; then
+ AC_REQUIRE([KDE_CHECK_LIBDL])
+ LIBQT="$LIBQT $LIBDL"
+fi
+
+AC_MSG_CHECKING([for Qt])
+
+if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
+LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET"
+fi
+ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO
+qt_libraries=""
+qt_includes=""
+AC_ARG_WITH(qt-dir,
+ AC_HELP_STRING([--with-qt-dir=DIR],[where the root of Qt is installed ]),
+ [ ac_qt_includes="$withval"/include
+ ac_qt_libraries="$withval"/lib${kdelibsuff}
+ ac_qt_bindir="$withval"/bin
+ ])
+
+AC_ARG_WITH(qt-includes,
+ AC_HELP_STRING([--with-qt-includes=DIR],[where the Qt includes are. ]),
+ [
+ ac_qt_includes="$withval"
+ ])
+
+kde_qt_libs_given=no
+
+AC_ARG_WITH(qt-libraries,
+ AC_HELP_STRING([--with-qt-libraries=DIR],[where the Qt library is installed.]),
+ [ ac_qt_libraries="$withval"
+ kde_qt_libs_given=yes
+ ])
+
+AC_CACHE_VAL(ac_cv_have_qt,
+[#try to guess Qt locations
+
+qt_incdirs=""
+for dir in $kde_qt_dirs; do
+ qt_incdirs="$qt_incdirs $dir/include $dir"
+done
+qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 /usr/include/qt3 $x_includes"
+if test ! "$ac_qt_includes" = "NO"; then
+ qt_incdirs="$ac_qt_includes $qt_incdirs"
+fi
+
+if test "$kde_qtver" != "1"; then
+ kde_qt_header=qstyle.h
+else
+ kde_qt_header=qglobal.h
+fi
+
+AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir)
+ac_qt_includes="$qt_incdir"
+
+qt_libdirs=""
+for dir in $kde_qt_dirs; do
+ qt_libdirs="$qt_libdirs $dir/lib${kdelibsuff} $dir"
+done
+qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries"
+if test ! "$ac_qt_libraries" = "NO"; then
+ qt_libdir=$ac_qt_libraries
+else
+ qt_libdirs="$ac_qt_libraries $qt_libdirs"
+ # if the Qt was given, the chance is too big that libqt.* doesn't exist
+ qt_libdir=NONE
+ for dir in $qt_libdirs; do
+ try="ls -1 $dir/${LIBQT_GLOB}"
+ if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi
+ done
+fi
+for a in $qt_libdir/lib`echo ${kde_int_qt} | sed 's,^-l,,'`_incremental.*; do
+ if test -e "$a"; then
+ LIBQT="$LIBQT ${kde_int_qt}_incremental"
+ break
+ fi
+done
+
+ac_qt_libraries="$qt_libdir"
+
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+
+ac_cxxflags_safe="$CXXFLAGS"
+ac_ldflags_safe="$LDFLAGS"
+ac_libs_safe="$LIBS"
+
+CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes"
+LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS $KDE_MT_LDFLAGS"
+LIBS="$LIBS $LIBQT $KDE_MT_LIBS"
+
+KDE_PRINT_QT_PROGRAM
+
+if AC_TRY_EVAL(ac_link) && test -s conftest; then
+ rm -f conftest*
+else
+ echo "configure: failed program was:" >&AC_FD_CC
+ cat conftest.$ac_ext >&AC_FD_CC
+ ac_qt_libraries="NO"
+fi
+rm -f conftest*
+CXXFLAGS="$ac_cxxflags_safe"
+LDFLAGS="$ac_ldflags_safe"
+LIBS="$ac_libs_safe"
+
+AC_LANG_RESTORE
+if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then
+ ac_cv_have_qt="have_qt=no"
+ ac_qt_notfound=""
+ missing_qt_mt=""
+ if test "$ac_qt_includes" = NO; then
+ if test "$ac_qt_libraries" = NO; then
+ ac_qt_notfound="(headers and libraries)";
+ else
+ ac_qt_notfound="(headers)";
+ fi
+ else
+ if test "x$kde_use_qt_mt" = "xyes"; then
+ missing_qt_mt="
+Make sure that you have compiled Qt with thread support!"
+ ac_qt_notfound="(library $qtlib-mt)";
+ else
+ ac_qt_notfound="(library $qtlib)";
+ fi
+ fi
+
+ AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation!
+For more details about this problem, look at the end of config.log.$missing_qt_mt])
+else
+ have_qt="yes"
+fi
+])
+
+eval "$ac_cv_have_qt"
+
+if test "$have_qt" != yes; then
+ AC_MSG_RESULT([$have_qt]);
+else
+ ac_cv_have_qt="have_qt=yes \
+ ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries"
+ AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT])
+
+ qt_libraries="$ac_qt_libraries"
+ qt_includes="$ac_qt_includes"
+fi
+
+if test ! "$kde_qt_libs_given" = "yes" && test ! "$kde_qtver" = 3; then
+ KDE_CHECK_QT_DIRECT(qt_libraries= ,[])
+fi
+
+AC_SUBST(qt_libraries)
+AC_SUBST(qt_includes)
+
+if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then
+ QT_INCLUDES=""
+else
+ QT_INCLUDES="-I$qt_includes"
+ all_includes="$QT_INCLUDES $all_includes"
+fi
+
+if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then
+ QT_LDFLAGS=""
+else
+ QT_LDFLAGS="-L$qt_libraries"
+ all_libraries="$QT_LDFLAGS $all_libraries"
+fi
+test -z "$KDE_MT_LDFLAGS" || all_libraries="$all_libraries $KDE_MT_LDFLAGS"
+
+AC_SUBST(QT_INCLUDES)
+AC_SUBST(QT_LDFLAGS)
+AC_PATH_QT_MOC_UIC
+
+KDE_CHECK_QT_JPEG
+
+if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
+LIB_QT="$kde_int_qt $LIBJPEG_QT "'$(LIBZ) $(LIBPNG) -lXext $(LIB_X11) $(LIBSM)'
+else
+LIB_QT="$kde_int_qt $LIBJPEG_QT "'$(LIBZ) $(LIBPNG)'
+fi
+test -z "$KDE_MT_LIBS" || LIB_QT="$LIB_QT $KDE_MT_LIBS"
+for a in $qt_libdir/lib`echo ${kde_int_qt} | sed 's,^-l,,'`_incremental.*; do
+ if test -e "$a"; then
+ LIB_QT="$LIB_QT ${kde_int_qt}_incremental"
+ break
+ fi
+done
+
+AC_SUBST(LIB_QT)
+AC_SUBST(LIB_QPE)
+
+AC_SUBST(kde_qtver)
+])
+
+AC_DEFUN([AC_PATH_QT],
+[
+AC_PATH_QT_1_3
+])
+
+AC_DEFUN([KDE_CHECK_UIC_PLUGINS],
+[
+AC_REQUIRE([AC_PATH_QT_MOC_UIC])
+
+if test x$ac_uic_supports_libpath = xyes; then
+
+AC_MSG_CHECKING([if UIC has KDE plugins available])
+AC_CACHE_VAL(kde_cv_uic_plugins,
+[
+cat > actest.ui << EOF
+<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
+<class>NewConnectionDialog</class>
+<widget class="QDialog">
+ <widget class="KLineEdit">
+ <property name="name">
+ <cstring>testInput</cstring>
+ </property>
+ </widget>
+</widget>
+</UI>
+EOF
+
+
+
+kde_cv_uic_plugins=no
+kde_line="$UIC_PATH -L $kde_widgetdir"
+if test x$ac_uic_supports_nounload = xyes; then
+ kde_line="$kde_line -nounload"
+fi
+kde_line="$kde_line -impl actest.h actest.ui > actest.cpp"
+if AC_TRY_EVAL(kde_line); then
+ # if you're trying to debug this check and think it's incorrect,
+ # better check your installation. The check _is_ correct - your
+ # installation is not.
+ if test -f actest.cpp && grep klineedit actest.cpp > /dev/null; then
+ kde_cv_uic_plugins=yes
+ fi
+fi
+rm -f actest.ui actest.cpp
+])
+
+AC_MSG_RESULT([$kde_cv_uic_plugins])
+if test "$kde_cv_uic_plugins" != yes; then
+ AC_MSG_ERROR([
+you need to install kdelibs first.
+
+If you did install kdelibs, then the Qt version that is picked up by
+this configure is not the same version you used to compile kdelibs.
+The Qt Plugin installed by kdelibs is *ONLY* loadable if it is the
+_same Qt version_, compiled with the _same compiler_ and the same Qt
+configuration settings.
+])
+fi
+fi
+])
+
+AC_DEFUN([KDE_CHECK_FINAL],
+[
+ AC_ARG_ENABLE(final,
+ AC_HELP_STRING([--enable-final],
+ [build size optimized apps (experimental - needs lots of memory)]),
+ kde_use_final=$enableval, kde_use_final=no)
+
+ if test "x$kde_use_final" = "xyes"; then
+ KDE_USE_FINAL_TRUE=""
+ KDE_USE_FINAL_FALSE="#"
+ else
+ KDE_USE_FINAL_TRUE="#"
+ KDE_USE_FINAL_FALSE=""
+ fi
+ AC_SUBST(KDE_USE_FINAL_TRUE)
+ AC_SUBST(KDE_USE_FINAL_FALSE)
+])
+
+AC_DEFUN([KDE_CHECK_CLOSURE],
+[
+ AC_ARG_ENABLE(closure,
+ AC_HELP_STRING([--enable-closure],[delay template instantiation]),
+ kde_use_closure=$enableval, kde_use_closure=no)
+
+ KDE_NO_UNDEFINED=""
+ if test "x$kde_use_closure" = "xyes"; then
+ KDE_USE_CLOSURE_TRUE=""
+ KDE_USE_CLOSURE_FALSE="#"
+# CXXFLAGS="$CXXFLAGS $REPO"
+ else
+ KDE_USE_CLOSURE_TRUE="#"
+ KDE_USE_CLOSURE_FALSE=""
+ KDE_NO_UNDEFINED=""
+ case $host in
+ *-*-linux-gnu)
+ KDE_CHECK_COMPILER_FLAG([Wl,--no-undefined],
+ [KDE_CHECK_COMPILER_FLAG([Wl,--allow-shlib-undefined],
+ [KDE_NO_UNDEFINED="-Wl,--no-undefined -Wl,--allow-shlib-undefined"],
+ [KDE_NO_UNDEFINED=""])],
+ [KDE_NO_UNDEFINED=""])
+ ;;
+ esac
+ fi
+ AC_SUBST(KDE_USE_CLOSURE_TRUE)
+ AC_SUBST(KDE_USE_CLOSURE_FALSE)
+ AC_SUBST(KDE_NO_UNDEFINED)
+])
+
+dnl Check if the linker supports --enable-new-dtags and --as-needed
+AC_DEFUN([KDE_CHECK_NEW_LDFLAGS],
+[
+ AC_ARG_ENABLE(new_ldflags,
+ AC_HELP_STRING([--enable-new-ldflags],
+ [enable the new linker flags]),
+ kde_use_new_ldflags=$enableval,
+ kde_use_new_ldflags=no)
+
+ LDFLAGS_AS_NEEDED=""
+ LDFLAGS_NEW_DTAGS=""
+ if test "x$kde_use_new_ldflags" = "xyes"; then
+ LDFLAGS_NEW_DTAGS=""
+ KDE_CHECK_COMPILER_FLAG([Wl,--enable-new-dtags],
+ [LDFLAGS_NEW_DTAGS="-Wl,--enable-new-dtags"],)
+
+ KDE_CHECK_COMPILER_FLAG([Wl,--as-needed],
+ [LDFLAGS_AS_NEEDED="-Wl,--as-needed"],)
+ fi
+ AC_SUBST(LDFLAGS_AS_NEEDED)
+ AC_SUBST(LDFLAGS_NEW_DTAGS)
+])
+
+AC_DEFUN([KDE_CHECK_NMCHECK],
+[
+ AC_ARG_ENABLE(nmcheck,AC_HELP_STRING([--enable-nmcheck],[enable automatic namespace cleanness check]),
+ kde_use_nmcheck=$enableval, kde_use_nmcheck=no)
+
+ if test "$kde_use_nmcheck" = "yes"; then
+ KDE_USE_NMCHECK_TRUE=""
+ KDE_USE_NMCHECK_FALSE="#"
+ else
+ KDE_USE_NMCHECK_TRUE="#"
+ KDE_USE_NMCHECK_FALSE=""
+ fi
+ AC_SUBST(KDE_USE_NMCHECK_TRUE)
+ AC_SUBST(KDE_USE_NMCHECK_FALSE)
+])
+
+AC_DEFUN([KDE_EXPAND_MAKEVAR], [
+savex=$exec_prefix
+test "x$exec_prefix" = xNONE && exec_prefix=$prefix
+tmp=$$2
+while $1=`eval echo "$tmp"`; test "x$$1" != "x$tmp"; do tmp=$$1; done
+exec_prefix=$savex
+])
+
+dnl ------------------------------------------------------------------------
+dnl Now, the same with KDE
+dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed)
+dnl and $(kde_includes) will be the kdehdrlocation (if needed)
+dnl ------------------------------------------------------------------------
+dnl
+AC_DEFUN([AC_BASE_PATH_KDE],
+[
+AC_REQUIRE([KDE_CHECK_STL])
+AC_REQUIRE([AC_PATH_QT])dnl
+AC_REQUIRE([KDE_CHECK_LIB64])
+
+AC_CHECK_RPATH
+AC_MSG_CHECKING([for KDE])
+
+if test "${prefix}" != NONE; then
+ kde_includes=${includedir}
+ KDE_EXPAND_MAKEVAR(ac_kde_includes, includedir)
+
+ kde_libraries=${libdir}
+ KDE_EXPAND_MAKEVAR(ac_kde_libraries, libdir)
+
+else
+ ac_kde_includes=
+ ac_kde_libraries=
+ kde_libraries=""
+ kde_includes=""
+fi
+
+AC_CACHE_VAL(ac_cv_have_kde,
+[#try to guess kde locations
+
+if test "$kde_qtver" = 1; then
+ kde_check_header="ksock.h"
+ kde_check_lib="libkdecore.la"
+else
+ kde_check_header="ksharedptr.h"
+ kde_check_lib="libkio.la"
+fi
+
+if test -z "$1"; then
+
+kde_incdirs="$kde_libs_prefix/include /usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde3/include /opt/kde/include $x_includes $qt_includes"
+test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs"
+kde_incdirs="$ac_kde_includes $kde_incdirs"
+AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir)
+ac_kde_includes="$kde_incdir"
+
+if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then
+ AC_MSG_ERROR([
+in the prefix, you've chosen, are no KDE headers installed. This will fail.
+So, check this please and use another prefix!])
+fi
+
+kde_libdirs="$kde_libs_prefix/lib${kdelibsuff} /usr/lib/kde/lib${kdelibsuff} /usr/local/kde/lib${kdelibsuff} /usr/kde/lib${kdelibsuff} /usr/lib${kdelibsuff}/kde /usr/lib${kdelibsuff}/kde3 /usr/lib${kdelibsuff} /usr/X11R6/lib${kdelibsuff} /usr/local/lib${kdelibsuff} /opt/kde3/lib${kdelibsuff} /opt/kde/lib${kdelibsuff} /usr/X11R6/kde/lib${kdelibsuff}"
+test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib${kdelibsuff} $KDEDIR $kde_libdirs"
+kde_libdirs="$ac_kde_libraries $libdir $kde_libdirs"
+AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir)
+ac_kde_libraries="$kde_libdir"
+
+kde_widgetdir=NO
+dnl this might be somewhere else
+AC_FIND_FILE("kde3/plugins/designer/kdewidgets.la", $kde_libdirs, kde_widgetdir)
+
+if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then
+AC_MSG_ERROR([
+in the prefix, you've chosen, are no KDE libraries installed. This will fail.
+So, check this please and use another prefix!])
+fi
+
+if test -n "$kde_widgetdir" && test ! -r "$kde_widgetdir/kde3/plugins/designer/kdewidgets.la"; then
+AC_MSG_ERROR([
+I can't find the designer plugins. These are required and should have been installed
+by kdelibs])
+fi
+
+if test -n "$kde_widgetdir"; then
+ kde_widgetdir="$kde_widgetdir/kde3/plugins/designer"
+fi
+
+
+if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO || test "$kde_widgetdir" = NO; then
+ ac_cv_have_kde="have_kde=no"
+else
+ ac_cv_have_kde="have_kde=yes \
+ ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries"
+fi
+
+else dnl test -z $1, e.g. from kdelibs
+
+ ac_cv_have_kde="have_kde=no"
+
+fi
+])dnl
+
+eval "$ac_cv_have_kde"
+
+if test "$have_kde" != "yes"; then
+ if test "${prefix}" = NONE; then
+ ac_kde_prefix="$ac_default_prefix"
+ else
+ ac_kde_prefix="$prefix"
+ fi
+ if test "$exec_prefix" = NONE; then
+ ac_kde_exec_prefix="$ac_kde_prefix"
+ AC_MSG_RESULT([will be installed in $ac_kde_prefix])
+ else
+ ac_kde_exec_prefix="$exec_prefix"
+ AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix])
+ fi
+
+ kde_libraries="${libdir}"
+ kde_includes="${includedir}"
+
+else
+ ac_cv_have_kde="have_kde=yes \
+ ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries"
+ AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes])
+
+ kde_libraries="$ac_kde_libraries"
+ kde_includes="$ac_kde_includes"
+fi
+AC_SUBST(kde_libraries)
+AC_SUBST(kde_includes)
+
+if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then
+ KDE_INCLUDES=""
+else
+ KDE_INCLUDES="-I$kde_includes"
+ all_includes="$KDE_INCLUDES $all_includes"
+fi
+
+KDE_DEFAULT_CXXFLAGS="-DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION"
+
+KDE_LDFLAGS="-L$kde_libraries"
+if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then
+ all_libraries="$KDE_LDFLAGS $all_libraries"
+fi
+
+AC_SUBST(KDE_LDFLAGS)
+AC_SUBST(KDE_INCLUDES)
+
+AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
+
+all_libraries="$all_libraries $USER_LDFLAGS"
+all_includes="$all_includes $USER_INCLUDES"
+AC_SUBST(all_includes)
+AC_SUBST(all_libraries)
+
+if test -z "$1"; then
+KDE_CHECK_UIC_PLUGINS
+fi
+
+ac_kde_libraries="$kde_libdir"
+
+AC_SUBST(AUTODIRS)
+
+
+])
+
+AC_DEFUN([KDE_CHECK_EXTRA_LIBS],
+[
+AC_MSG_CHECKING(for extra includes)
+AC_ARG_WITH(extra-includes,AC_HELP_STRING([--with-extra-includes=DIR],[adds non standard include paths]),
+ kde_use_extra_includes="$withval",
+ kde_use_extra_includes=NONE
+)
+kde_extra_includes=
+if test -n "$kde_use_extra_includes" && \
+ test "$kde_use_extra_includes" != "NONE"; then
+
+ ac_save_ifs=$IFS
+ IFS=':'
+ for dir in $kde_use_extra_includes; do
+ kde_extra_includes="$kde_extra_includes $dir"
+ USER_INCLUDES="$USER_INCLUDES -I$dir"
+ done
+ IFS=$ac_save_ifs
+ kde_use_extra_includes="added"
+else
+ kde_use_extra_includes="no"
+fi
+AC_SUBST(USER_INCLUDES)
+
+AC_MSG_RESULT($kde_use_extra_includes)
+
+kde_extra_libs=
+AC_MSG_CHECKING(for extra libs)
+AC_ARG_WITH(extra-libs,AC_HELP_STRING([--with-extra-libs=DIR],[adds non standard library paths]),
+ kde_use_extra_libs=$withval,
+ kde_use_extra_libs=NONE
+)
+if test -n "$kde_use_extra_libs" && \
+ test "$kde_use_extra_libs" != "NONE"; then
+
+ ac_save_ifs=$IFS
+ IFS=':'
+ for dir in $kde_use_extra_libs; do
+ kde_extra_libs="$kde_extra_libs $dir"
+ KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir"
+ USER_LDFLAGS="$USER_LDFLAGS -L$dir"
+ done
+ IFS=$ac_save_ifs
+ kde_use_extra_libs="added"
+else
+ kde_use_extra_libs="no"
+fi
+
+AC_SUBST(USER_LDFLAGS)
+
+AC_MSG_RESULT($kde_use_extra_libs)
+
+])
+
+AC_DEFUN([KDE_1_CHECK_PATH_HEADERS],
+[
+ AC_MSG_CHECKING([for KDE headers installed])
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+cat > conftest.$ac_ext <<EOF
+#ifdef STDC_HEADERS
+# include <stdlib.h>
+#endif
+#include <stdio.h>
+#include "confdefs.h"
+#include <kapp.h>
+
+int main() {
+ printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data());
+ printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data());
+ printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data());
+ printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data());
+ printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data());
+ printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data());
+ printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data());
+ printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data());
+ printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data());
+ printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data());
+ printf("kde_wallpaperdir=\\"%s\\"\n",
+ KApplication::kde_wallpaperdir().data());
+ printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data());
+ printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data());
+ printf("kde_servicesdir=\\"/tmp/dummy\\"\n");
+ printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n");
+ printf("kde_moduledir=\\"/tmp/dummy\\"\n");
+ printf("kde_styledir=\\"/tmp/dummy\\"\n");
+ printf("kde_widgetdir=\\"/tmp/dummy\\"\n");
+ printf("xdg_appsdir=\\"/tmp/dummy\\"\n");
+ printf("xdg_menudir=\\"/tmp/dummy\\"\n");
+ printf("xdg_directorydir=\\"/tmp/dummy\\"\n");
+ printf("kde_kcfgdir=\\"/tmp/dummy\\"\n");
+ return 0;
+ }
+EOF
+
+ ac_save_CPPFLAGS=$CPPFLAGS
+ CPPFLAGS="$all_includes $CPPFLAGS"
+ if AC_TRY_EVAL(ac_compile); then
+ AC_MSG_RESULT(yes)
+ else
+ AC_MSG_ERROR([your system is not able to compile a small KDE application!
+Check, if you installed the KDE header files correctly.
+For more details about this problem, look at the end of config.log.])
+ fi
+ CPPFLAGS=$ac_save_CPPFLAGS
+
+ AC_LANG_RESTORE
+])
+
+AC_DEFUN([KDE_CHECK_KDEQTADDON],
+[
+AC_MSG_CHECKING(for kde-qt-addon)
+AC_CACHE_VAL(kde_cv_have_kdeqtaddon,
+[
+ kde_ldflags_safe="$LDFLAGS"
+ kde_libs_safe="$LIBS"
+ kde_cxxflags_safe="$CXXFLAGS"
+
+ LIBS="-lkde-qt-addon $LIBQT $LIBS"
+ CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/kde $all_includes"
+ LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS"
+
+ AC_TRY_LINK([
+ #include <qdom.h>
+ ],
+ [
+ QDomDocument doc;
+ ],
+ kde_cv_have_kdeqtaddon=yes,
+ kde_cv_have_kdeqtaddon=no
+ )
+
+ LDFLAGS=$kde_ldflags_safe
+ LIBS=$kde_libs_safe
+ CXXFLAGS=$kde_cxxflags_safe
+])
+
+AC_MSG_RESULT($kde_cv_have_kdeqtaddon)
+
+if test "$kde_cv_have_kdeqtaddon" = "no"; then
+ AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first.
+It is a separate package (and CVS module) named kde-qt-addon.])
+fi
+])
+
+AC_DEFUN([KDE_CREATE_LIBS_ALIASES],
+[
+ AC_REQUIRE([KDE_MISC_TESTS])
+ AC_REQUIRE([KDE_CHECK_LIBDL])
+ AC_REQUIRE([K_PATH_X])
+
+if test $kde_qtver = 3; then
+ case $host in
+ *cygwin*) lib_kded="-lkdeinit_kded" ;;
+ *) lib_kded="" ;;
+ esac
+ AC_SUBST(LIB_KDED, $lib_kded)
+ AC_SUBST(LIB_KDECORE, "-lkdecore")
+ AC_SUBST(LIB_KDEUI, "-lkdeui")
+ AC_SUBST(LIB_KIO, "-lkio")
+ AC_SUBST(LIB_KJS, "-lkjs")
+ AC_SUBST(LIB_SMB, "-lsmb")
+ AC_SUBST(LIB_KAB, "-lkab")
+ AC_SUBST(LIB_KABC, "-lkabc")
+ AC_SUBST(LIB_KHTML, "-lkhtml")
+ AC_SUBST(LIB_KSPELL, "-lkspell")
+ AC_SUBST(LIB_KPARTS, "-lkparts")
+ AC_SUBST(LIB_KDEPRINT, "-lkdeprint")
+ AC_SUBST(LIB_KUTILS, "-lkutils")
+ AC_SUBST(LIB_KDEPIM, "-lkdepim")
+ AC_SUBST(LIB_KIMPROXY, "-lkimproxy")
+ AC_SUBST(LIB_KNEWSTUFF, "-lknewstuff")
+ AC_SUBST(LIB_KDNSSD, "-lkdnssd")
+ AC_SUBST(LIB_KUNITTEST, "-lkunittest")
+# these are for backward compatibility
+ AC_SUBST(LIB_KSYCOCA, "-lkio")
+ AC_SUBST(LIB_KFILE, "-lkio")
+elif test $kde_qtver = 2; then
+ AC_SUBST(LIB_KDECORE, "-lkdecore")
+ AC_SUBST(LIB_KDEUI, "-lkdeui")
+ AC_SUBST(LIB_KIO, "-lkio")
+ AC_SUBST(LIB_KSYCOCA, "-lksycoca")
+ AC_SUBST(LIB_SMB, "-lsmb")
+ AC_SUBST(LIB_KFILE, "-lkfile")
+ AC_SUBST(LIB_KAB, "-lkab")
+ AC_SUBST(LIB_KHTML, "-lkhtml")
+ AC_SUBST(LIB_KSPELL, "-lkspell")
+ AC_SUBST(LIB_KPARTS, "-lkparts")
+ AC_SUBST(LIB_KDEPRINT, "-lkdeprint")
+else
+ AC_SUBST(LIB_KDECORE, "-lkdecore -lXext $(LIB_QT)")
+ AC_SUBST(LIB_KDEUI, "-lkdeui $(LIB_KDECORE)")
+ AC_SUBST(LIB_KFM, "-lkfm $(LIB_KDECORE)")
+ AC_SUBST(LIB_KFILE, "-lkfile $(LIB_KFM) $(LIB_KDEUI)")
+ AC_SUBST(LIB_KAB, "-lkab $(LIB_KIMGIO) $(LIB_KDECORE)")
+fi
+])
+
+AC_DEFUN([AC_PATH_KDE],
+[
+ AC_BASE_PATH_KDE
+ AC_ARG_ENABLE(path-check,AC_HELP_STRING([--disable-path-check],[don't try to find out, where to install]),
+ [
+ if test "$enableval" = "no";
+ then ac_use_path_checking="default"
+ else ac_use_path_checking=""
+ fi
+ ],
+ [
+ if test "$kde_qtver" = 1;
+ then ac_use_path_checking=""
+ else ac_use_path_checking="default"
+ fi
+ ]
+ )
+
+ AC_CREATE_KFSSTND($ac_use_path_checking)
+
+ AC_SUBST_KFSSTND
+ KDE_CREATE_LIBS_ALIASES
+])
+
+dnl KDE_CHECK_FUNC_EXT(<func>, [headers], [sample-use], [C prototype], [autoheader define], [call if found])
+AC_DEFUN([KDE_CHECK_FUNC_EXT],
+[
+AC_MSG_CHECKING(for $1)
+AC_CACHE_VAL(kde_cv_func_$1,
+[
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+save_CXXFLAGS="$CXXFLAGS"
+kde_safe_LIBS="$LIBS"
+LIBS="$LIBS $X_EXTRA_LIBS"
+if test "$GXX" = "yes"; then
+CXXFLAGS="$CXXFLAGS -pedantic-errors"
+fi
+AC_TRY_COMPILE([
+$2
+],
+[
+$3
+],
+kde_cv_func_$1=yes,
+kde_cv_func_$1=no)
+CXXFLAGS="$save_CXXFLAGS"
+LIBS="$kde_safe_LIBS"
+AC_LANG_RESTORE
+])
+
+AC_MSG_RESULT($kde_cv_func_$1)
+
+AC_MSG_CHECKING([if $1 needs custom prototype])
+AC_CACHE_VAL(kde_cv_proto_$1,
+[
+if test "x$kde_cv_func_$1" = xyes; then
+ kde_cv_proto_$1=no
+else
+ case "$1" in
+ setenv|unsetenv|usleep|random|srandom|seteuid|mkstemps|mkstemp|revoke|vsnprintf|strlcpy|strlcat)
+ kde_cv_proto_$1="yes - in libkdefakes"
+ ;;
+ *)
+ kde_cv_proto_$1=unknown
+ ;;
+ esac
+fi
+
+if test "x$kde_cv_proto_$1" = xunknown; then
+
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+ kde_safe_libs=$LIBS
+ LIBS="$LIBS $X_EXTRA_LIBS"
+ AC_TRY_LINK([
+$2
+
+extern "C" $4;
+],
+[
+$3
+],
+[ kde_cv_func_$1=yes
+ kde_cv_proto_$1=yes ],
+ [kde_cv_proto_$1="$1 unavailable"]
+)
+LIBS=$kde_safe_libs
+AC_LANG_RESTORE
+fi
+])
+AC_MSG_RESULT($kde_cv_proto_$1)
+
+if test "x$kde_cv_func_$1" = xyes; then
+ AC_DEFINE(HAVE_$5, 1, [Define if you have $1])
+ $6
+fi
+if test "x$kde_cv_proto_$1" = xno; then
+ AC_DEFINE(HAVE_$5_PROTO, 1,
+ [Define if you have the $1 prototype])
+fi
+
+AH_VERBATIM([_HAVE_$5_PROTO],
+[
+#if !defined(HAVE_$5_PROTO)
+#ifdef __cplusplus
+extern "C" {
+#endif
+$4;
+#ifdef __cplusplus
+}
+#endif
+#endif
+])
+])
+
+AC_DEFUN([AC_CHECK_SETENV],
+[
+ KDE_CHECK_FUNC_EXT(setenv, [
+#include <stdlib.h>
+],
+ [setenv("VAR", "VALUE", 1);],
+ [int setenv (const char *, const char *, int)],
+ [SETENV])
+])
+
+AC_DEFUN([AC_CHECK_UNSETENV],
+[
+ KDE_CHECK_FUNC_EXT(unsetenv, [
+#include <stdlib.h>
+],
+ [unsetenv("VAR");],
+ [void unsetenv (const char *)],
+ [UNSETENV])
+])
+
+AC_DEFUN([AC_CHECK_GETDOMAINNAME],
+[
+ KDE_CHECK_FUNC_EXT(getdomainname, [
+#include <stdlib.h>
+#include <unistd.h>
+#include <netdb.h>
+],
+ [
+char buffer[200];
+getdomainname(buffer, 200);
+],
+ [#include <sys/types.h>
+ int getdomainname (char *, size_t)],
+ [GETDOMAINNAME])
+])
+
+AC_DEFUN([AC_CHECK_GETHOSTNAME],
+[
+ KDE_CHECK_FUNC_EXT(gethostname, [
+#include <stdlib.h>
+#include <unistd.h>
+],
+ [
+char buffer[200];
+gethostname(buffer, 200);
+],
+ [int gethostname (char *, unsigned int)],
+ [GETHOSTNAME])
+])
+
+AC_DEFUN([AC_CHECK_USLEEP],
+[
+ KDE_CHECK_FUNC_EXT(usleep, [
+#include <unistd.h>
+],
+ [
+usleep(200);
+],
+ [int usleep (unsigned int)],
+ [USLEEP])
+])
+
+
+AC_DEFUN([AC_CHECK_RANDOM],
+[
+ KDE_CHECK_FUNC_EXT(random, [
+#include <stdlib.h>
+],
+ [
+random();
+],
+ [long int random(void)],
+ [RANDOM])
+
+ KDE_CHECK_FUNC_EXT(srandom, [
+#include <stdlib.h>
+],
+ [
+srandom(27);
+],
+ [void srandom(unsigned int)],
+ [SRANDOM])
+
+])
+
+AC_DEFUN([AC_CHECK_INITGROUPS],
+[
+ KDE_CHECK_FUNC_EXT(initgroups, [
+#include <sys/types.h>
+#include <unistd.h>
+#include <grp.h>
+],
+ [
+char buffer[200];
+initgroups(buffer, 27);
+],
+ [int initgroups(const char *, gid_t)],
+ [INITGROUPS])
+])
+
+AC_DEFUN([AC_CHECK_MKSTEMPS],
+[
+ KDE_CHECK_FUNC_EXT(mkstemps, [
+#include <stdlib.h>
+#include <unistd.h>
+],
+ [
+mkstemps("/tmp/aaaXXXXXX", 6);
+],
+ [int mkstemps(char *, int)],
+ [MKSTEMPS])
+])
+
+AC_DEFUN([AC_CHECK_MKSTEMP],
+[
+ KDE_CHECK_FUNC_EXT(mkstemp, [
+#include <stdlib.h>
+#include <unistd.h>
+],
+ [
+mkstemp("/tmp/aaaXXXXXX");
+],
+ [int mkstemp(char *)],
+ [MKSTEMP])
+])
+
+AC_DEFUN([AC_CHECK_MKDTEMP],
+[
+ KDE_CHECK_FUNC_EXT(mkdtemp, [
+#include <stdlib.h>
+#include <unistd.h>
+],
+ [
+mkdtemp("/tmp/aaaXXXXXX");
+],
+ [char *mkdtemp(char *)],
+ [MKDTEMP])
+])
+
+
+AC_DEFUN([AC_CHECK_RES_INIT],
+[
+ AC_MSG_CHECKING([if res_init needs -lresolv])
+ kde_libs_safe="$LIBS"
+ LIBS="$LIBS $X_EXTRA_LIBS -lresolv"
+ AC_TRY_LINK(
+ [
+#include <sys/types.h>
+#include <netinet/in.h>
+#include <arpa/nameser.h>
+#include <resolv.h>
+ ],
+ [
+ res_init();
+ ],
+ [
+ LIBRESOLV="-lresolv"
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_RES_INIT, 1, [Define if you have the res_init function])
+ ],
+ [ AC_MSG_RESULT(no) ]
+ )
+ LIBS=$kde_libs_safe
+ AC_SUBST(LIBRESOLV)
+
+ KDE_CHECK_FUNC_EXT(res_init,
+ [
+#include <sys/types.h>
+#include <netinet/in.h>
+#include <arpa/nameser.h>
+#include <resolv.h>
+ ],
+ [res_init()],
+ [int res_init(void)],
+ [RES_INIT])
+])
+
+AC_DEFUN([AC_CHECK_STRLCPY],
+[
+ KDE_CHECK_FUNC_EXT(strlcpy, [
+#include <string.h>
+],
+[ char buf[20];
+ strlcpy(buf, "KDE function test", sizeof(buf));
+],
+ [unsigned long strlcpy(char*, const char*, unsigned long)],
+ [STRLCPY])
+])
+
+AC_DEFUN([AC_CHECK_STRLCAT],
+[
+ KDE_CHECK_FUNC_EXT(strlcat, [
+#include <string.h>
+],
+[ char buf[20];
+ buf[0]='\0';
+ strlcat(buf, "KDE function test", sizeof(buf));
+],
+ [unsigned long strlcat(char*, const char*, unsigned long)],
+ [STRLCAT])
+])
+
+AC_DEFUN([AC_CHECK_RES_QUERY],
+[
+ KDE_CHECK_FUNC_EXT(res_query, [
+#include <sys/types.h>
+#include <netinet/in.h>
+#include <arpa/nameser.h>
+#include <resolv.h>
+#include <netdb.h>
+],
+[
+res_query(NULL, 0, 0, NULL, 0);
+],
+ [int res_query(const char *, int, int, unsigned char *, int)],
+ [RES_QUERY])
+])
+
+AC_DEFUN([AC_CHECK_DN_SKIPNAME],
+[
+ KDE_CHECK_FUNC_EXT(dn_skipname, [
+#include <sys/types.h>
+#include <netinet/in.h>
+#include <arpa/nameser.h>
+#include <resolv.h>
+],
+[
+dn_skipname (NULL, NULL);
+],
+ [int dn_skipname (unsigned char *, unsigned char *)],
+ [DN_SKIPNAME])
+])
+
+
+AC_DEFUN([AC_FIND_GIF],
+ [AC_MSG_CHECKING([for giflib])
+AC_CACHE_VAL(ac_cv_lib_gif,
+[ac_save_LIBS="$LIBS"
+if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
+LIBS="$all_libraries -lgif -lX11 $LIBSOCKET"
+else
+LIBS="$all_libraries -lgif"
+fi
+AC_TRY_LINK(dnl
+[
+#ifdef __cplusplus
+extern "C" {
+#endif
+int GifLastError(void);
+#ifdef __cplusplus
+}
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+],
+ [return GifLastError();],
+ eval "ac_cv_lib_gif=yes",
+ eval "ac_cv_lib_gif=no")
+LIBS="$ac_save_LIBS"
+])dnl
+if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then
+ AC_MSG_RESULT(yes)
+ AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif])
+else
+ AC_MSG_ERROR(You need giflib30. Please install the kdesupport package)
+fi
+])
+
+AC_DEFUN([KDE_FIND_JPEG_HELPER],
+[
+AC_MSG_CHECKING([for libjpeg$2])
+AC_CACHE_VAL(ac_cv_lib_jpeg_$1,
+[
+ac_save_LIBS="$LIBS"
+LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm"
+ac_save_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
+AC_TRY_LINK(
+[
+#ifdef __cplusplus
+extern "C" {
+#endif
+void jpeg_CreateDecompress();
+#ifdef __cplusplus
+}
+#endif
+],
+[jpeg_CreateDecompress();],
+ eval "ac_cv_lib_jpeg_$1=-ljpeg$2",
+ eval "ac_cv_lib_jpeg_$1=no")
+LIBS="$ac_save_LIBS"
+CFLAGS="$ac_save_CFLAGS"
+])
+
+if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then
+ LIBJPEG="$ac_cv_lib_jpeg_$1"
+ AC_MSG_RESULT($ac_cv_lib_jpeg_$1)
+else
+ AC_MSG_RESULT(no)
+ $3
+fi
+
+])
+
+AC_DEFUN([AC_FIND_JPEG],
+[
+dnl first look for libraries
+KDE_FIND_JPEG_HELPER(6b, 6b,
+ KDE_FIND_JPEG_HELPER(normal, [],
+ [
+ LIBJPEG=
+ ]
+ )
+)
+
+dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h
+dnl requires system dependent includes loaded before it)
+jpeg_incdirs="$includedir /usr/include /usr/local/include $kde_extra_includes"
+AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir)
+test "x$jpeg_incdir" = xNO && jpeg_incdir=
+
+dnl if headers _and_ libraries are missing, this is no error, and we
+dnl continue with a warning (the user will get no jpeg support in khtml)
+dnl if only one is missing, it means a configuration error, but we still
+dnl only warn
+if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then
+ AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg])
+else
+ if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then
+ AC_MSG_WARN([
+There is an installation error in jpeg support. You seem to have only one
+of either the headers _or_ the libraries installed. You may need to either
+provide correct --with-extra-... options, or the development package of
+libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/
+Disabling JPEG support.
+])
+ else
+ AC_MSG_WARN([libjpeg not found. disable JPEG support.])
+ fi
+ jpeg_incdir=
+ LIBJPEG=
+fi
+
+AC_SUBST(LIBJPEG)
+AH_VERBATIM(_AC_CHECK_JPEG,
+[/*
+ * jpeg.h needs HAVE_BOOLEAN, when the system uses boolean in system
+ * headers and I'm too lazy to write a configure test as long as only
+ * unixware is related
+ */
+#ifdef _UNIXWARE
+#define HAVE_BOOLEAN
+#endif
+])
+])
+
+AC_DEFUN([KDE_CHECK_QT_JPEG],
+[
+if test -n "$LIBJPEG"; then
+AC_MSG_CHECKING([if Qt needs $LIBJPEG])
+AC_CACHE_VAL(kde_cv_qt_jpeg,
+[
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+ac_save_LIBS="$LIBS"
+LIBS="$all_libraries $USER_LDFLAGS $LIBQT"
+LIBS=`echo $LIBS | sed "s/$LIBJPEG//"`
+ac_save_CXXFLAGS="$CXXFLAGS"
+CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES"
+AC_TRY_LINK(
+[#include <qapplication.h>],
+ [
+ int argc;
+ char** argv;
+ QApplication app(argc, argv);],
+ eval "kde_cv_qt_jpeg=no",
+ eval "kde_cv_qt_jpeg=yes")
+LIBS="$ac_save_LIBS"
+CXXFLAGS="$ac_save_CXXFLAGS"
+AC_LANG_RESTORE
+fi
+])
+
+if eval "test ! \"`echo $kde_cv_qt_jpeg`\" = no"; then
+ AC_MSG_RESULT(yes)
+ LIBJPEG_QT='$(LIBJPEG)'
+else
+ AC_MSG_RESULT(no)
+ LIBJPEG_QT=
+fi
+
+])
+
+AC_DEFUN([AC_FIND_ZLIB],
+[
+AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
+AC_MSG_CHECKING([for libz])
+AC_CACHE_VAL(ac_cv_lib_z,
+[
+kde_save_LIBS="$LIBS"
+LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET"
+kde_save_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
+AC_TRY_LINK(dnl
+[
+#include<zlib.h>
+],
+[
+ char buf[42];
+ gzFile f = (gzFile) 0;
+ /* this would segfault.. but we only link, don't run */
+ (void) gzgets(f, buf, sizeof(buf));
+
+ return (zlibVersion() == ZLIB_VERSION);
+],
+ eval "ac_cv_lib_z='-lz'",
+ eval "ac_cv_lib_z=no")
+LIBS="$kde_save_LIBS"
+CFLAGS="$kde_save_CFLAGS"
+])dnl
+if test ! "$ac_cv_lib_z" = no; then
+ AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz])
+ LIBZ="$ac_cv_lib_z"
+ AC_MSG_RESULT($ac_cv_lib_z)
+else
+ AC_MSG_ERROR(not found.
+ Possibly configure picks up an outdated version
+ installed by XFree86. Remove it from your system.
+
+ Check your installation and look into config.log)
+ LIBZ=""
+fi
+AC_SUBST(LIBZ)
+])
+
+AC_DEFUN([KDE_TRY_TIFFLIB],
+[
+AC_MSG_CHECKING([for libtiff $1])
+
+AC_CACHE_VAL(kde_cv_libtiff_$1,
+[
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+kde_save_LIBS="$LIBS"
+if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
+LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm"
+else
+LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lm"
+fi
+kde_save_CXXFLAGS="$CXXFLAGS"
+CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES"
+
+AC_TRY_LINK(dnl
+[
+#include<tiffio.h>
+],
+ [return (TIFFOpen( "", "r") == 0); ],
+[
+ kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ"
+], [
+ kde_cv_libtiff_$1=no
+])
+
+LIBS="$kde_save_LIBS"
+CXXFLAGS="$kde_save_CXXFLAGS"
+AC_LANG_RESTORE
+])
+
+if test "$kde_cv_libtiff_$1" = "no"; then
+ AC_MSG_RESULT(no)
+ LIBTIFF=""
+ $3
+else
+ LIBTIFF="$kde_cv_libtiff_$1"
+ AC_MSG_RESULT(yes)
+ AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff])
+ $2
+fi
+
+])
+
+AC_DEFUN([AC_FIND_TIFF],
+[
+AC_REQUIRE([K_PATH_X])
+AC_REQUIRE([AC_FIND_ZLIB])
+AC_REQUIRE([AC_FIND_JPEG])
+AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
+
+KDE_TRY_TIFFLIB(tiff, [],
+ KDE_TRY_TIFFLIB(tiff34))
+
+AC_SUBST(LIBTIFF)
+])
+
+AC_DEFUN([KDE_FIND_LIBEXR],
+[
+AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
+AC_REQUIRE([AC_FIND_ZLIB])
+AC_CACHE_VAL(ac_cv_libexr,
+[
+ if test -z "$PKG_CONFIG"; then
+ AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
+ fi
+
+ AC_MSG_CHECKING([for OpenEXR libraries])
+
+ if test "$PKG_CONFIG" = "no" ; then
+ AC_MSG_RESULT(no)
+ echo "*** The pkg-config script could not be found. Make sure it is"
+ echo "*** in your path, or set the PKG_CONFIG environment variable"
+ echo "*** to the full path to pkg-config."
+ echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config."
+ else
+ if !(`$PKG_CONFIG --exists OpenEXR`) ; then
+ AC_MSG_RESULT(no)
+ EXRSTATUS=no
+ else
+ if !(`$PKG_CONFIG --atleast-version="1.1.1" OpenEXR`) ; then
+ AC_MSG_RESULT(no)
+ EXRSTATUS=old
+ else
+ kde_save_LIBS="$LIBS"
+ LIBS="$LIBS $all_libraries $USER_LDFLAGS `pkg-config --libs OpenEXR` $LIBZ"
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ kde_save_CXXFLAGS="$CXXFLAGS"
+ EXR_FLAGS=`$PKG_CONFIG --cflags OpenEXR`
+ CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES $EXR_FLAGS"
+
+ AC_TRY_LINK(dnl
+ [
+ #include <ImfRgbaFile.h>
+ ],
+ [
+ using namespace Imf;
+ RgbaInputFile file ("dummy");
+ return 0;
+ ],
+ eval "ac_cv_libexr='`pkg-config --libs OpenEXR`'",
+ eval "ac_cv_libexr=no"
+ )
+ LIBS="$kde_save_LIBS"
+ CXXFLAGS="$kde_save_CXXFLAGS"
+ AC_LANG_RESTORE
+ ])dnl
+ if eval "test ! \"`echo $ac_cv_libexr`\" = no"; then
+ AC_DEFINE_UNQUOTED(HAVE_EXR, 1, [Define if you have OpenEXR])
+ LIB_EXR="$ac_cv_libexr"
+ AC_MSG_RESULT($ac_cv_libexr)
+ else
+ AC_MSG_RESULT(no)
+ LIB_EXR=""
+ fi
+ fi
+ fi
+ fi
+ AC_SUBST(LIB_EXR)
+ AC_SUBST(EXR_FLAGS)
+])
+
+
+
+AC_DEFUN([AC_FIND_PNG],
+[
+AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
+AC_REQUIRE([AC_FIND_ZLIB])
+AC_MSG_CHECKING([for libpng])
+AC_CACHE_VAL(ac_cv_lib_png,
+[
+kde_save_LIBS="$LIBS"
+if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
+LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET"
+else
+LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm"
+fi
+kde_save_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
+
+AC_TRY_LINK(dnl
+ [
+ #include<png.h>
+ ],
+ [
+ png_structp png_ptr = png_create_read_struct( /* image ptr */
+ PNG_LIBPNG_VER_STRING, 0, 0, 0 );
+ return( png_ptr != 0 );
+ ],
+ eval "ac_cv_lib_png='-lpng $LIBZ -lm'",
+ eval "ac_cv_lib_png=no"
+)
+LIBS="$kde_save_LIBS"
+CFLAGS="$kde_save_CFLAGS"
+])dnl
+if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then
+ AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng])
+ LIBPNG="$ac_cv_lib_png"
+ AC_SUBST(LIBPNG)
+ AC_MSG_RESULT($ac_cv_lib_png)
+else
+ AC_MSG_RESULT(no)
+ LIBPNG=""
+ AC_SUBST(LIBPNG)
+fi
+])
+
+
+AC_DEFUN([AC_FIND_JASPER],
+[
+AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
+AC_REQUIRE([AC_FIND_JPEG])
+AC_MSG_CHECKING([for jasper])
+AC_CACHE_VAL(ac_cv_jasper,
+[
+kde_save_LIBS="$LIBS"
+LIBS="$LIBS $all_libraries $USER_LDFLAGS -ljasper $LIBJPEG -lm"
+kde_save_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
+
+AC_TRY_LINK(dnl
+ [
+ #include<jasper/jasper.h>
+ ],
+ [
+ return( jas_init() );
+ ],
+ eval "ac_cv_jasper='-ljasper $LIBJPEG -lm'",
+ eval "ac_cv_jasper=no"
+)
+LIBS="$kde_save_LIBS"
+CFLAGS="$kde_save_CFLAGS"
+])dnl
+if eval "test ! \"`echo $ac_cv_jasper`\" = no"; then
+ AC_DEFINE_UNQUOTED(HAVE_JASPER, 1, [Define if you have jasper])
+ LIB_JASPER="$ac_cv_jasper"
+ AC_MSG_RESULT($ac_cv_jasper)
+else
+ AC_MSG_RESULT(no)
+ LIB_JASPER=""
+fi
+AC_SUBST(LIB_JASPER)
+])
+
+AC_DEFUN([AC_CHECK_BOOL],
+[
+ AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool])
+])
+
+AC_DEFUN([AC_CHECK_GNU_EXTENSIONS],
+[
+AC_MSG_CHECKING(if you need GNU extensions)
+AC_CACHE_VAL(ac_cv_gnu_extensions,
+[
+cat > conftest.c << EOF
+#include <features.h>
+
+#ifdef __GNU_LIBRARY__
+yes
+#endif
+EOF
+
+if (eval "$ac_cpp conftest.c") 2>&5 |
+ egrep "yes" >/dev/null 2>&1; then
+ rm -rf conftest*
+ ac_cv_gnu_extensions=yes
+else
+ ac_cv_gnu_extensions=no
+fi
+])
+
+AC_MSG_RESULT($ac_cv_gnu_extensions)
+if test "$ac_cv_gnu_extensions" = "yes"; then
+ AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define if you need to use the GNU extensions])
+fi
+])
+
+AC_DEFUN([KDE_CHECK_COMPILER_FLAG],
+[
+AC_MSG_CHECKING([whether $CXX supports -$1])
+kde_cache=`echo $1 | sed 'y% .=/+-,%____p__%'`
+AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache,
+[
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS -$1"
+ AC_TRY_LINK([],[ return 0; ], [eval "kde_cv_prog_cxx_$kde_cache=yes"], [])
+ CXXFLAGS="$save_CXXFLAGS"
+ AC_LANG_RESTORE
+])
+if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then
+ AC_MSG_RESULT(yes)
+ :
+ $2
+else
+ AC_MSG_RESULT(no)
+ :
+ $3
+fi
+])
+
+AC_DEFUN([KDE_CHECK_C_COMPILER_FLAG],
+[
+AC_MSG_CHECKING([whether $CC supports -$1])
+kde_cache=`echo $1 | sed 'y% .=/+-,%____p__%'`
+AC_CACHE_VAL(kde_cv_prog_cc_$kde_cache,
+[
+ AC_LANG_SAVE
+ AC_LANG_C
+ save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -$1"
+ AC_TRY_LINK([],[ return 0; ], [eval "kde_cv_prog_cc_$kde_cache=yes"], [])
+ CFLAGS="$save_CFLAGS"
+ AC_LANG_RESTORE
+])
+if eval "test \"`echo '$kde_cv_prog_cc_'$kde_cache`\" = yes"; then
+ AC_MSG_RESULT(yes)
+ :
+ $2
+else
+ AC_MSG_RESULT(no)
+ :
+ $3
+fi
+])
+
+
+dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables
+dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever])
+dnl it's all white-space separated
+AC_DEFUN([AC_REMOVE_FORBIDDEN],
+[ __val=$$1
+ __forbid=" $2 "
+ if test -n "$__val"; then
+ __new=""
+ ac_save_IFS=$IFS
+ IFS=" "
+ for i in $__val; do
+ case "$__forbid" in
+ *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;;
+ *) # Careful to not add spaces, where there were none, because otherwise
+ # libtool gets confused, if we change e.g. CXX
+ if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;;
+ esac
+ done
+ IFS=$ac_save_IFS
+ $1=$__new
+ fi
+])
+
+
+AC_DEFUN([KDE_CHECK_FOR_BAD_COMPILER],
+[
+ AC_MSG_CHECKING([whether $CC is blacklisted])
+
+ dnl In theory we have tu run this test against $CC and $CXX
+ dnl in C and in C++ mode, because its perfectly legal for
+ dnl the user to mix compiler versions, since C has a defined
+ dnl ABI.
+ dnl
+ dnl For now, we assume the user is not on crack.
+
+ AC_TRY_COMPILE([
+#ifdef __GNUC__
+#if __GNUC__ == 4 && __GNUC_MINOR__ == 0 && __GNUC_PATCHLEVEL__ == 0
+choke me
+#endif
+#endif
+], ,
+ kde_bad_compiler=no,
+ kde_bad_compiler=yes
+)
+
+ AC_MSG_RESULT($kde_bad_compiler)
+
+if test "$kde_bad_compiler" = "yes"; then
+ AC_MSG_ERROR([
+
+This particular compiler version is blacklisted because it
+is known to miscompile KDE. Please use a newer version, or
+if that is not yet available, choose an older version.
+
+Please do not report a bug or bother us reporting this
+configure error. We know about it, and we introduced
+it by intention to avoid untraceable bugs or crashes in KDE.
+
+])
+fi
+
+])
+
+
+AC_DEFUN([KDE_CHECK_FOR_OPT_NOINLINE_MATCH],
+[
+ AC_CACHE_CHECK([whether system headers can cope with -O2 -fno-inline],
+ kde_cv_opt_noinline_match,
+ [
+ kde_cv_opt_noinline_match=irrelevant
+ dnl if we don't use both -O2 and -fno-inline, this check is moot
+ if echo "$CFLAGS" | grep -e -O2 >/dev/null 2>/dev/null \
+ && echo "$CFLAGS" | grep -e -fno-inline >/dev/null 2>/dev/null ; then
+
+ ac_cflags_save="$CFLAGS"
+ CFLAGS="$CFLAGS -D_USE_GNU"
+
+ AC_TRY_LINK([
+ #include <string.h>
+], [ const char *pt, *et;
+ et = __extension__ ({ char __a0, __a1, __a2; (__builtin_constant_p ( ";," ) && ((size_t)(const void *)(( ";," )+ 1) - (size_t)(const void *)( ";," ) == 1) ? ((__a0 =((__const char *) ( ";," ))[0], __a0 == '\0') ? ((void) ( pt ),((void *)0) ) : ((__a1 = ((__const char *) ( ";," ))[1], __a1== '\0') ? (__extension__ (__builtin_constant_p ( __a0 ) && ( __a0 ) == '\0' ? (char *) __rawmemchr ( pt , __a0) : strchr( pt , __a0 ))) : ((__a2 = ((__const char *) ( ";," ))[2], __a2 == '\0') ? __strpbrk_c2 ( pt , __a0, __a1) :(((__const char *) ( ";," ))[3] == '\0' ? __strpbrk_c3 ( pt ,__a0, __a1, __a2): strpbrk ( pt , ";," ))))) : strpbrk ( pt , ";," )); }) ;
+],
+ kde_cv_opt_noinline_match=yes,
+ kde_cv_opt_noinline_match=no
+ )
+
+ CFLAGS="$ac_cflags_save"
+ fi
+ ])
+])
+
+
+dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given
+AC_DEFUN([AC_VALIDIFY_CXXFLAGS],
+[dnl
+if test "x$kde_use_qt_emb" != "xyes"; then
+ AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath])
+ AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath])
+else
+ AC_REMOVE_FORBIDDEN(CXX, [-rpath])
+ AC_REMOVE_FORBIDDEN(CXXFLAGS, [-rpath])
+fi
+])
+
+AC_DEFUN([AC_CHECK_COMPILERS],
+[
+ AC_ARG_ENABLE(debug,
+ AC_HELP_STRING([--enable-debug=ARG],[enables debug symbols (yes|no|full) [default=no]]),
+ [
+ case $enableval in
+ yes)
+ kde_use_debug_code="yes"
+ kde_use_debug_define=no
+ ;;
+ full)
+ kde_use_debug_code="full"
+ kde_use_debug_define=no
+ ;;
+ *)
+ kde_use_debug_code="no"
+ kde_use_debug_define=yes
+ ;;
+ esac
+ ],
+ [kde_use_debug_code="no"
+ kde_use_debug_define=no
+ ])
+
+ dnl Just for configure --help
+ AC_ARG_ENABLE(dummyoption,
+ AC_HELP_STRING([--disable-debug],
+ [disables debug output and debug symbols [default=no]]),
+ [],[])
+
+ AC_ARG_ENABLE(strict,
+ AC_HELP_STRING([--enable-strict],
+ [compiles with strict compiler options (may not work!)]),
+ [
+ if test $enableval = "no"; then
+ kde_use_strict_options="no"
+ else
+ kde_use_strict_options="yes"
+ fi
+ ], [kde_use_strict_options="no"])
+
+ AC_ARG_ENABLE(warnings,AC_HELP_STRING([--disable-warnings],[disables compilation with -Wall and similar]),
+ [
+ if test $enableval = "no"; then
+ kde_use_warnings="no"
+ else
+ kde_use_warnings="yes"
+ fi
+ ], [kde_use_warnings="yes"])
+
+ dnl enable warnings for debug build
+ if test "$kde_use_debug_code" != "no"; then
+ kde_use_warnings=yes
+ fi
+
+ AC_ARG_ENABLE(profile,AC_HELP_STRING([--enable-profile],[creates profiling infos [default=no]]),
+ [kde_use_profiling=$enableval],
+ [kde_use_profiling="no"]
+ )
+
+ dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS
+ CFLAGS=" $CFLAGS"
+
+ AC_PROG_CC
+
+ AC_PROG_CPP
+
+ if test "$GCC" = "yes"; then
+ if test "$kde_use_debug_code" != "no"; then
+ if test $kde_use_debug_code = "full"; then
+ CFLAGS="-g3 -fno-inline $CFLAGS"
+ else
+ CFLAGS="-g -O2 -fno-schedule-insns -fno-inline $CFLAGS"
+ fi
+ else
+ CFLAGS="-O2 $CFLAGS"
+ fi
+ fi
+
+ if test "$kde_use_debug_define" = "yes"; then
+ CFLAGS="-DNDEBUG $CFLAGS"
+ fi
+
+
+ case "$host" in
+ *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";;
+ *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";;
+ esac
+
+ if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then
+ LDFLAGS=""
+ fi
+
+ CXXFLAGS=" $CXXFLAGS"
+
+ AC_PROG_CXX
+
+ KDE_CHECK_FOR_BAD_COMPILER
+
+ if test "$GXX" = "yes" || test "$CXX" = "KCC"; then
+ if test "$kde_use_debug_code" != "no"; then
+ if test "$CXX" = "KCC"; then
+ CXXFLAGS="+K0 -Wall -pedantic -W -Wpointer-arith -Wwrite-strings $CXXFLAGS"
+ else
+ if test "$kde_use_debug_code" = "full"; then
+ CXXFLAGS="-g3 -fno-inline $CXXFLAGS"
+ else
+ CXXFLAGS="-g -O2 -fno-schedule-insns -fno-inline $CXXFLAGS"
+ fi
+ fi
+ KDE_CHECK_COMPILER_FLAG(fno-builtin,[CXXFLAGS="-fno-builtin $CXXFLAGS"])
+
+ dnl convenience compiler flags
+ KDE_CHECK_COMPILER_FLAG(Woverloaded-virtual, [WOVERLOADED_VIRTUAL="-Woverloaded-virtual"], [WOVERLOADED_VRITUAL=""])
+ AC_SUBST(WOVERLOADED_VIRTUAL)
+ else
+ if test "$CXX" = "KCC"; then
+ CXXFLAGS="+K3 $CXXFLAGS"
+ else
+ CXXFLAGS="-O2 $CXXFLAGS"
+ fi
+ fi
+ fi
+
+ if test "$kde_use_debug_define" = "yes"; then
+ CXXFLAGS="-DNDEBUG -DNO_DEBUG $CXXFLAGS"
+ fi
+
+ if test "$kde_use_profiling" = "yes"; then
+ KDE_CHECK_COMPILER_FLAG(pg,
+ [
+ CFLAGS="-pg $CFLAGS"
+ CXXFLAGS="-pg $CXXFLAGS"
+ ])
+ fi
+
+ if test "$kde_use_warnings" = "yes"; then
+ if test "$GCC" = "yes"; then
+ CXXFLAGS="-Wall -W -Wpointer-arith $CXXFLAGS"
+ case $host in
+ *-*-linux-gnu)
+ CFLAGS="-std=iso9899:1990 -W -Wall -Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS"
+ CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts $CXXFLAGS"
+ KDE_CHECK_COMPILER_FLAG(Wmissing-format-attribute, [CXXFLAGS="$CXXFLAGS -Wformat-security -Wmissing-format-attribute"])
+ KDE_CHECK_C_COMPILER_FLAG(Wmissing-format-attribute, [CFLAGS="$CFLAGS -Wformat-security -Wmissing-format-attribute"])
+ ;;
+ esac
+ KDE_CHECK_COMPILER_FLAG(Wundef,[CXXFLAGS="-Wundef $CXXFLAGS"])
+ KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"])
+ dnl ### FIXME: revert for KDE 4
+ KDE_CHECK_COMPILER_FLAG(Wno-non-virtual-dtor,[CXXFLAGS="$CXXFLAGS -Wno-non-virtual-dtor"])
+ fi
+ fi
+
+ if test "$GXX" = "yes" && test "$kde_use_strict_options" = "yes"; then
+ CXXFLAGS="-Wcast-qual -Wshadow -Wcast-align $CXXFLAGS"
+ fi
+
+ AC_ARG_ENABLE(pch,
+ AC_HELP_STRING([--enable-pch],
+ [enables precompiled header support (currently only KCC or gcc >=3.4+unsermake) [default=no]]),
+ [ kde_use_pch=$enableval ],[ kde_use_pch=no ])
+
+ HAVE_GCC_VISIBILITY=0
+ AC_SUBST([HAVE_GCC_VISIBILITY])
+
+ if test "$GXX" = "yes"; then
+ gcc_no_reorder_blocks=NO
+ KDE_CHECK_COMPILER_FLAG(fno-reorder-blocks,[gcc_no_reorder_blocks=YES])
+ if test $kde_use_debug_code != "no" && \
+ test $kde_use_debug_code != "full" && \
+ test "YES" = "$gcc_no_reorder_blocks" ; then
+ CXXFLAGS="$CXXFLAGS -fno-reorder-blocks"
+ CFLAGS="$CFLAGS -fno-reorder-blocks"
+ fi
+ KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"])
+ KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"])
+ KDE_CHECK_COMPILER_FLAG(fno-common, [CXXFLAGS="$CXXFLAGS -fno-common"])
+ KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= )
+ ENABLE_PERMISSIVE_FLAG="-fpermissive"
+
+ if test "$kde_use_pch" = "yes"; then
+ AC_MSG_CHECKING(whether gcc supports precompiling c header files)
+ echo >conftest.h
+ if $CC -x c-header conftest.h >/dev/null 2>/dev/null; then
+ kde_gcc_supports_pch=yes
+ AC_MSG_RESULT(yes)
+ else
+ kde_gcc_supports_pch=no
+ AC_MSG_RESULT(no)
+ fi
+ if test "$kde_gcc_supports_pch" = "yes"; then
+ AC_MSG_CHECKING(whether gcc supports precompiling c++ header files)
+ if $CXX -x c++-header conftest.h >/dev/null 2>/dev/null; then
+ kde_gcc_supports_pch=yes
+ AC_MSG_RESULT(yes)
+ else
+ kde_gcc_supports_pch=no
+ AC_MSG_RESULT(no)
+ fi
+ fi
+ rm -f conftest.h conftest.h.gch
+ fi
+
+ KDE_CHECK_FOR_OPT_NOINLINE_MATCH
+ if test "x$kde_cv_opt_noinline_match" = "xno" ; then
+ CFLAGS="`echo "$CFLAGS" | sed "s/ -fno-inline//"`"
+ fi
+ fi
+ AM_CONDITIONAL(unsermake_enable_pch, test "$kde_use_pch" = "yes" && test "$kde_gcc_supports_pch" = "yes")
+ if test "$CXX" = "KCC"; then
+ dnl unfortunately we currently cannot disable exception support in KCC
+ dnl because doing so is binary incompatible and Qt by default links with exceptions :-(
+ dnl KDE_CHECK_COMPILER_FLAG(-no_exceptions,[CXXFLAGS="$CXXFLAGS --no_exceptions"])
+ dnl KDE_CHECK_COMPILER_FLAG(-exceptions, [USE_EXCEPTIONS="--exceptions"], USE_EXCEPTIONS= )
+
+ if test "$kde_use_pch" = "yes"; then
+ dnl TODO: support --pch-dir!
+ KDE_CHECK_COMPILER_FLAG(-pch,[CXXFLAGS="$CXXFLAGS --pch"])
+ dnl the below works (but the dir must exist), but it's
+ dnl useless for a whole package.
+ dnl The are precompiled headers for each source file, so when compiling
+ dnl from scratch, it doesn't make a difference, and they take up
+ dnl around ~5Mb _per_ sourcefile.
+ dnl KDE_CHECK_COMPILER_FLAG(-pch_dir /tmp,
+ dnl [CXXFLAGS="$CXXFLAGS --pch_dir `pwd`/pcheaders"])
+ fi
+ dnl this flag controls inlining. by default KCC inlines in optimisation mode
+ dnl all implementations that are defined inside the class {} declaration.
+ dnl because of templates-compatibility with broken gcc compilers, this
+ dnl can cause excessive inlining. This flag limits it to a sane level
+ KDE_CHECK_COMPILER_FLAG(-inline_keyword_space_time=6,[CXXFLAGS="$CXXFLAGS --inline_keyword_space_time=6"])
+ KDE_CHECK_COMPILER_FLAG(-inline_auto_space_time=2,[CXXFLAGS="$CXXFLAGS --inline_auto_space_time=2"])
+ KDE_CHECK_COMPILER_FLAG(-inline_implicit_space_time=2.0,[CXXFLAGS="$CXXFLAGS --inline_implicit_space_time=2.0"])
+ KDE_CHECK_COMPILER_FLAG(-inline_generated_space_time=2.0,[CXXFLAGS="$CXXFLAGS --inline_generated_space_time=2.0"])
+ dnl Some source files are shared between multiple executables
+ dnl (or libraries) and some of those need template instantiations.
+ dnl In that case KCC needs to compile those sources with
+ dnl --one_instantiation_per_object. To make it easy for us we compile
+ dnl _all_ objects with that flag (--one_per is a shorthand).
+ KDE_CHECK_COMPILER_FLAG(-one_per, [CXXFLAGS="$CXXFLAGS --one_per"])
+ fi
+ AC_SUBST(USE_EXCEPTIONS)
+ dnl obsolete macro - provided to keep things going
+ USE_RTTI=
+ AC_SUBST(USE_RTTI)
+
+ case "$host" in
+ *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;;
+ *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";;
+ *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";;
+ *-*-solaris*)
+ if test "$GXX" = yes; then
+ libstdcpp=`$CXX -print-file-name=libstdc++.so`
+ if test ! -f $libstdcpp; then
+ AC_MSG_ERROR([You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so])
+ fi
+ fi
+ ;;
+ esac
+
+ AC_VALIDIFY_CXXFLAGS
+
+ AC_PROG_CXXCPP
+
+ if test "$GCC" = yes; then
+ NOOPT_CFLAGS=-O0
+ fi
+ KDE_CHECK_COMPILER_FLAG(O0,[NOOPT_CXXFLAGS=-O0])
+
+ AC_ARG_ENABLE(coverage,
+ AC_HELP_STRING([--enable-coverage],[use gcc coverage testing]), [
+ if test "$am_cv_CC_dependencies_compiler_type" = "gcc3"; then
+ ac_coverage_compiler="-fprofile-arcs -ftest-coverage"
+ ac_coverage_linker="-lgcc"
+ elif test "$am_cv_CC_dependencies_compiler_type" = "gcc"; then
+ ac_coverage_compiler="-fprofile-arcs -ftest-coverage"
+ ac_coverage_linker=""
+ else
+ AC_MSG_ERROR([coverage with your compiler is not supported])
+ fi
+ CFLAGS="$CFLAGS $ac_coverage_compiler"
+ CXXFLAGS="$CXXFLAGS $ac_coverage_compiler"
+ LDFLAGS="$LDFLAGS $ac_coverage_linker"
+ ])
+
+ AC_SUBST(NOOPT_CXXFLAGS)
+ AC_SUBST(NOOPT_CFLAGS)
+ AC_SUBST(ENABLE_PERMISSIVE_FLAG)
+
+ KDE_CHECK_NEW_LDFLAGS
+ KDE_CHECK_FINAL
+ KDE_CHECK_CLOSURE
+ KDE_CHECK_NMCHECK
+
+ ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), [])
+])
+
+AC_DEFUN([KDE_CHECK_VISIBILITY_GCC_BUG],
+ [
+ AC_CACHE_CHECK([for gcc -fvisibility-inlines-hidden bug], kde_cv_val_gcc_visibility_bug,
+ [
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+
+ safe_CXXFLAGS=$CXXFLAGS
+ safe_LDFLAGS=$LDFLAGS
+ CXXFLAGS="$CXXFLAGS -fPIC -fvisibility-inlines-hidden -O0"
+ LDFLAGS="$LDFLAGS -shared -fPIC"
+
+ AC_TRY_LINK(
+ [
+ /* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19664 */
+ #include <string>
+ int some_function( void ) __attribute__ ((visibility("default")));
+ int some_function( void )
+ {
+ std::string s("blafasel");
+ return 0;
+ }
+ ], [/* elvis is alive */],
+ kde_cv_val_gcc_visibility_bug=no, kde_cv_val_gcc_visibility_bug=yes)
+
+ CXXFLAGS=$safe_CXXFLAGS
+ LDFLAGS=$safe_LDFLAGS
+ AC_LANG_RESTORE
+ ]
+ )
+
+ if test x$kde_cv_val_gcc_visibility_bug = xno; then
+ CXXFLAGS="$CXXFLAGS -fvisibility-inlines-hidden"
+ fi
+ ]
+)
+
+AC_DEFUN([KDE_ENABLE_HIDDEN_VISIBILITY],
+[
+ AC_BEFORE([AC_PATH_QT_1_3], [KDE_ENABLE_HIDDEN_VISIBILITY])
+
+ AC_MSG_CHECKING([grepping for visibility push/pop in headers])
+
+ if test "x$GXX" = "xyes"; then
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ AC_EGREP_CPP(
+ [GCC visibility push],
+ [ #include <exception>
+ ],
+ [
+ AC_MSG_RESULT(yes)
+ kde_stdc_visibility_patched=yes ],
+ [
+ AC_MSG_RESULT(no)
+ AC_MSG_WARN([Your libstdc++ doesn't appear to be patched for
+ visibility support. Disabling -fvisibility=hidden])
+
+ kde_stdc_visibility_patched=no ])
+
+ AC_LANG_RESTORE
+
+ kde_have_gcc_visibility=no
+ KDE_CHECK_COMPILER_FLAG(fvisibility=hidden,
+ [
+ kde_have_gcc_visibility=yes
+ dnl the whole toolchain is just a mess, gcc is just too buggy
+ dnl to handle STL with visibility enabled. Lets reconsider
+ dnl when gcc 4.2 is out or when things get fixed in the compiler.
+ dnl Contact mueller@kde.org for details.
+ AC_ARG_ENABLE(gcc-hidden-visibility,
+ AC_HELP_STRING([--enable-gcc-hidden-visibility],[toolchain hidden visibility [default=no]]),
+ [kde_have_gcc_visibility=$enableval],
+ [kde_have_gcc_visibility=no])
+
+ AC_CACHE_CHECK([if Qt is patched for -fvisibility], kde_cv_val_qt_gcc_visibility_patched,
+ [
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+
+ safe_CXXFLAGS=$CXXFLAGS
+ CXXFLAGS="$CXXFLAGS $all_includes"
+
+ AC_TRY_COMPILE(
+ [
+#include <qglobal.h>
+#if Q_EXPORT - 0 != 0
+/* if this compiles, then Q_EXPORT is undefined */
+/* if Q_EXPORT is nonempty, this will break compilation */
+#endif
+ ], [/* elvis is alive */],
+ kde_cv_val_qt_gcc_visibility_patched=no, kde_cv_val_qt_gcc_visibility_patched=yes)
+
+ CXXFLAGS=$safe_CXXFLAGS
+ AC_LANG_RESTORE
+ ]
+ )
+
+ if test x$kde_have_gcc_visibility = "xyes" && test x$kde_stdc_visibility_patched = "xyes" && test x$kde_cv_val_qt_gcc_visibility_patched = "xyes"; then
+ CXXFLAGS="$CXXFLAGS -fvisibility=hidden"
+ KDE_CHECK_VISIBILITY_GCC_BUG
+ HAVE_GCC_VISIBILITY=1
+ AC_DEFINE_UNQUOTED(__KDE_HAVE_GCC_VISIBILITY, "$HAVE_GCC_VISIBILITY", [define to 1 if -fvisibility is supported])
+ fi
+ ])
+ fi
+])
+
+AC_DEFUN([KDE_ADD_DEPENDENCIES],
+[
+ [A]M_DEPENDENCIES(CC)
+ [A]M_DEPENDENCIES(CXX)
+])
+
+dnl just a wrapper to clean up configure.in
+AC_DEFUN([KDE_PROG_LIBTOOL],
+[
+AC_REQUIRE([AC_CHECK_COMPILERS])
+AC_REQUIRE([AC_ENABLE_SHARED])
+AC_REQUIRE([AC_ENABLE_STATIC])
+
+AC_REQUIRE([AC_LIBTOOL_DLOPEN])
+AC_REQUIRE([KDE_CHECK_LIB64])
+
+AC_OBJEXT
+AC_EXEEXT
+
+AM_PROG_LIBTOOL
+AC_LIBTOOL_CXX
+
+LIBTOOL_SHELL="/bin/sh ./libtool"
+# LIBTOOL="$LIBTOOL --silent"
+KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_NO_UNDEFINED) \$(KDE_RPATH) \$(KDE_MT_LDFLAGS)"
+AC_SUBST(KDE_PLUGIN)
+
+# This hack ensures that libtool creates shared libs for kunittest plugins. By default check_LTLIBRARIES makes static libs.
+KDE_CHECK_PLUGIN="\$(KDE_PLUGIN) -rpath \$(libdir)"
+AC_SUBST(KDE_CHECK_PLUGIN)
+
+# we patch configure quite some so we better keep that consistent for incremental runs
+AC_SUBST(AUTOCONF,'$(SHELL) $(top_srcdir)/admin/cvs.sh configure || touch configure')
+])
+
+AC_DEFUN([KDE_CHECK_LIB64],
+[
+ AC_ARG_ENABLE(libsuffix,
+ AC_HELP_STRING([--enable-libsuffix],
+ [/lib directory suffix (64,32,none,auto[=default])]),
+ kdelibsuff=$enableval, kdelibsuff="auto")
+
+ if test "$kdelibsuff" = "auto"; then
+
+cat > conftest.c << EOF
+#include <stdio.h>
+int main() {
+ return 0;
+}
+EOF
+ kdelibsuff=`$CC conftest.c -o conftest.out; ldd conftest.out |sed -ne '/libc.so/{
+ s,.*/lib\([[^\/]]*\)/.*,\1,
+ p
+}'`
+ rm -rf conftest.*
+ fi
+
+ if test "$kdelibsuff" = "no" || test "$kdelibsuff" = "none"; then
+ kdelibsuff=
+ fi
+ if test -z "$kdelibsuff"; then
+ AC_MSG_RESULT([not using lib directory suffix])
+ AC_DEFINE(KDELIBSUFF, [""], Suffix for lib directories)
+ else
+ if test "$libdir" = '${exec_prefix}/lib'; then
+ libdir="$libdir${kdelibsuff}"
+ AC_SUBST([libdir], ["$libdir"]) dnl ugly hack for lib64 platforms
+ fi
+ AC_DEFINE_UNQUOTED(KDELIBSUFF, ["${kdelibsuff}"], Suffix for lib directories)
+ AC_MSG_RESULT([using lib directory suffix $kdelibsuff])
+ fi
+])
+
+AC_DEFUN([KDE_CHECK_TYPES],
+[ AC_CHECK_SIZEOF(int, 4)dnl
+ AC_CHECK_SIZEOF(short)dnl
+ AC_CHECK_SIZEOF(long, 4)dnl
+ AC_CHECK_SIZEOF(char *, 4)dnl
+])dnl
+
+dnl Not used - kept for compat only?
+AC_DEFUN([KDE_DO_IT_ALL],
+[
+AC_CANONICAL_SYSTEM
+AC_ARG_PROGRAM
+AM_INIT_AUTOMAKE($1, $2)
+AM_DISABLE_LIBRARIES
+AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde})
+AC_CHECK_COMPILERS
+KDE_PROG_LIBTOOL
+AM_KDE_WITH_NLS
+AC_PATH_KDE
+])
+
+AC_DEFUN([AC_CHECK_RPATH],
+[
+AC_MSG_CHECKING(for rpath)
+AC_ARG_ENABLE(rpath,
+ AC_HELP_STRING([--disable-rpath],[do not use the rpath feature of ld]),
+ USE_RPATH=$enableval, USE_RPATH=yes)
+
+if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then
+
+ KDE_RPATH="-R \$(libdir)"
+
+ if test "$kde_libraries" != "$libdir"; then
+ KDE_RPATH="$KDE_RPATH -R \$(kde_libraries)"
+ fi
+
+ if test -n "$qt_libraries"; then
+ KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)"
+ fi
+ dnl $x_libraries is set to /usr/lib in case
+ if test -n "$X_LDFLAGS"; then
+ X_RPATH="-R \$(x_libraries)"
+ KDE_RPATH="$KDE_RPATH $X_RPATH"
+ fi
+ if test -n "$KDE_EXTRA_RPATH"; then
+ KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)"
+ fi
+fi
+AC_SUBST(KDE_EXTRA_RPATH)
+AC_SUBST(KDE_RPATH)
+AC_SUBST(X_RPATH)
+AC_MSG_RESULT($USE_RPATH)
+])
+
+dnl Check for the type of the third argument of getsockname
+AC_DEFUN([AC_CHECK_SOCKLEN_T],
+[
+ AC_MSG_CHECKING(for socklen_t)
+ AC_CACHE_VAL(kde_cv_socklen_t,
+ [
+ AC_LANG_PUSH(C++)
+ kde_cv_socklen_t=no
+ AC_TRY_COMPILE([
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ ],
+ [
+ socklen_t len;
+ getpeername(0,0,&len);
+ ],
+ [
+ kde_cv_socklen_t=yes
+ kde_cv_socklen_t_equiv=socklen_t
+ ])
+ AC_LANG_POP(C++)
+ ])
+ AC_MSG_RESULT($kde_cv_socklen_t)
+ if test $kde_cv_socklen_t = no; then
+ AC_MSG_CHECKING([for socklen_t equivalent for socket functions])
+ AC_CACHE_VAL(kde_cv_socklen_t_equiv,
+ [
+ kde_cv_socklen_t_equiv=int
+ AC_LANG_PUSH(C++)
+ for t in int size_t unsigned long "unsigned long"; do
+ AC_TRY_COMPILE([
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ ],
+ [
+ $t len;
+ getpeername(0,0,&len);
+ ],
+ [
+ kde_cv_socklen_t_equiv="$t"
+ break
+ ])
+ done
+ AC_LANG_POP(C++)
+ ])
+ AC_MSG_RESULT($kde_cv_socklen_t_equiv)
+ fi
+ AC_DEFINE_UNQUOTED(kde_socklen_t, $kde_cv_socklen_t_equiv,
+ [type to use in place of socklen_t if not defined])
+ AC_DEFINE_UNQUOTED(ksize_t, $kde_cv_socklen_t_equiv,
+ [type to use in place of socklen_t if not defined (deprecated, use kde_socklen_t)])
+])
+
+dnl This is a merge of some macros out of the gettext aclocal.m4
+dnl since we don't need anything, I took the things we need
+dnl the copyright for them is:
+dnl >
+dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+dnl This Makefile.in is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+dnl PARTICULAR PURPOSE.
+dnl >
+dnl for this file it is relicensed under LGPL
+
+AC_DEFUN([AM_KDE_WITH_NLS],
+ [
+ dnl If we use NLS figure out what method
+
+ AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt,
+ [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt)
+ AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
+
+ if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then
+ AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it])
+ GMSGFMT=":"
+ fi
+ MSGFMT=$GMSGFMT
+ AC_SUBST(GMSGFMT)
+ AC_SUBST(MSGFMT)
+
+ AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext,
+ [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
+
+ dnl Test whether we really found GNU xgettext.
+ if test "$XGETTEXT" != ":"; then
+ dnl If it is no GNU xgettext we define it as : so that the
+ dnl Makefiles still can work.
+ if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
+ : ;
+ else
+ AC_MSG_RESULT(
+ [found xgettext programs is not GNU xgettext; ignore it])
+ XGETTEXT=":"
+ fi
+ fi
+ AC_SUBST(XGETTEXT)
+
+ ])
+
+# Search path for a program which passes the given test.
+# Ulrich Drepper <drepper@cygnus.com>, 1996.
+
+# serial 1
+# Stephan Kulow: I appended a _KDE against name conflicts
+
+dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR,
+dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
+AC_DEFUN([AM_PATH_PROG_WITH_TEST_KDE],
+[# Extract the first word of "$2", so it can be a program name with args.
+set dummy $2; ac_word=[$]2
+AC_MSG_CHECKING([for $ac_word])
+AC_CACHE_VAL(ac_cv_path_$1,
+[case "[$]$1" in
+ /*)
+ ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
+ ;;
+ *)
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
+ for ac_dir in ifelse([$5], , $PATH, [$5]); do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$ac_word; then
+ if [$3]; then
+ ac_cv_path_$1="$ac_dir/$ac_word"
+ break
+ fi
+ fi
+ done
+ IFS="$ac_save_ifs"
+dnl If no 4th arg is given, leave the cache variable unset,
+dnl so AC_PATH_PROGS will keep looking.
+ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
+])dnl
+ ;;
+esac])dnl
+$1="$ac_cv_path_$1"
+if test -n "[$]$1"; then
+ AC_MSG_RESULT([$]$1)
+else
+ AC_MSG_RESULT(no)
+fi
+AC_SUBST($1)dnl
+])
+
+
+# Check whether LC_MESSAGES is available in <locale.h>.
+# Ulrich Drepper <drepper@cygnus.com>, 1995.
+
+# serial 1
+
+AC_DEFUN([AM_LC_MESSAGES],
+ [if test $ac_cv_header_locale_h = yes; then
+ AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
+ [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
+ am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
+ if test $am_cv_val_LC_MESSAGES = yes; then
+ AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your locale.h file contains LC_MESSAGES])
+ fi
+ fi])
+
+dnl From Jim Meyering.
+dnl FIXME: migrate into libit.
+
+AC_DEFUN([AM_FUNC_OBSTACK],
+[AC_CACHE_CHECK([for obstacks], am_cv_func_obstack,
+ [AC_TRY_LINK([#include "obstack.h"],
+ [struct obstack *mem;obstack_free(mem,(char *) 0)],
+ am_cv_func_obstack=yes,
+ am_cv_func_obstack=no)])
+ if test $am_cv_func_obstack = yes; then
+ AC_DEFINE(HAVE_OBSTACK)
+ else
+ LIBOBJS="$LIBOBJS obstack.o"
+ fi
+])
+
+dnl From Jim Meyering. Use this if you use the GNU error.[ch].
+dnl FIXME: Migrate into libit
+
+AC_DEFUN([AM_FUNC_ERROR_AT_LINE],
+[AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line,
+ [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");],
+ am_cv_lib_error_at_line=yes,
+ am_cv_lib_error_at_line=no)])
+ if test $am_cv_lib_error_at_line = no; then
+ LIBOBJS="$LIBOBJS error.o"
+ fi
+ AC_SUBST(LIBOBJS)dnl
+])
+
+# Macro to add for using GNU gettext.
+# Ulrich Drepper <drepper@cygnus.com>, 1995.
+
+# serial 1
+# Stephan Kulow: I put a KDE in it to avoid name conflicts
+
+AC_DEFUN([AM_KDE_GNU_GETTEXT],
+ [AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+ AC_REQUIRE([AC_PROG_RANLIB])dnl
+ AC_REQUIRE([AC_HEADER_STDC])dnl
+ AC_REQUIRE([AC_TYPE_OFF_T])dnl
+ AC_REQUIRE([AC_TYPE_SIZE_T])dnl
+ AC_REQUIRE([AC_FUNC_ALLOCA])dnl
+ AC_REQUIRE([AC_FUNC_MMAP])dnl
+ AC_REQUIRE([AM_KDE_WITH_NLS])dnl
+ AC_CHECK_HEADERS([limits.h locale.h nl_types.h string.h values.h alloca.h])
+ AC_CHECK_FUNCS([getcwd munmap putenv setlocale strchr strcasecmp \
+__argz_count __argz_stringify __argz_next])
+
+ AC_MSG_CHECKING(for stpcpy)
+ AC_CACHE_VAL(kde_cv_func_stpcpy,
+ [
+ kde_safe_cxxflags=$CXXFLAGS
+ CXXFLAGS="-Werror"
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ AC_TRY_COMPILE([
+ #include <string.h>
+ ],
+ [
+ char buffer[200];
+ stpcpy(buffer, buffer);
+ ],
+ kde_cv_func_stpcpy=yes,
+ kde_cv_func_stpcpy=no)
+ AC_LANG_RESTORE
+ CXXFLAGS=$kde_safe_cxxflags
+ ])
+ AC_MSG_RESULT($kde_cv_func_stpcpy)
+ if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then
+ AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy])
+ fi
+
+ AM_LC_MESSAGES
+
+ if test "x$CATOBJEXT" != "x"; then
+ if test "x$ALL_LINGUAS" = "x"; then
+ LINGUAS=
+ else
+ AC_MSG_CHECKING(for catalogs to be installed)
+ NEW_LINGUAS=
+ for lang in ${LINGUAS=$ALL_LINGUAS}; do
+ case "$ALL_LINGUAS" in
+ *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;;
+ esac
+ done
+ LINGUAS=$NEW_LINGUAS
+ AC_MSG_RESULT($LINGUAS)
+ fi
+
+ dnl Construct list of names of catalog files to be constructed.
+ if test -n "$LINGUAS"; then
+ for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
+ fi
+ fi
+
+ ])
+
+AC_DEFUN([AC_HAVE_XPM],
+ [AC_REQUIRE_CPP()dnl
+ AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
+
+ test -z "$XPM_LDFLAGS" && XPM_LDFLAGS=
+ test -z "$XPM_INCLUDE" && XPM_INCLUDE=
+
+ AC_ARG_WITH(xpm,AC_HELP_STRING([--without-xpm],[disable color pixmap XPM tests]),
+ xpm_test=$withval, xpm_test="yes")
+ if test "x$xpm_test" = xno; then
+ ac_cv_have_xpm=no
+ else
+ AC_MSG_CHECKING(for XPM)
+ AC_CACHE_VAL(ac_cv_have_xpm,
+ [
+ ac_save_ldflags="$LDFLAGS"
+ ac_save_cflags="$CFLAGS"
+ if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
+ LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET"
+ else
+ LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm $LIBZ $LIBSOCKET"
+ fi
+ CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES"
+ test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS"
+ AC_TRY_LINK([#include <X11/xpm.h>],[],
+ ac_cv_have_xpm="yes",ac_cv_have_xpm="no")
+ LDFLAGS="$ac_save_ldflags"
+ CFLAGS="$ac_save_cflags"
+ ])dnl
+
+ if test "$ac_cv_have_xpm" = no; then
+ AC_MSG_RESULT(no)
+ XPM_LDFLAGS=""
+ XPMINC=""
+ $2
+ else
+ AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support])
+ if test "$XPM_LDFLAGS" = ""; then
+ XPMLIB='-lXpm $(LIB_X11)'
+ else
+ XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)'
+ fi
+ if test "$XPM_INCLUDE" = ""; then
+ XPMINC=""
+ else
+ XPMINC="-I$XPM_INCLUDE"
+ fi
+ AC_MSG_RESULT(yes)
+ $1
+ fi
+ fi
+ AC_SUBST(XPMINC)
+ AC_SUBST(XPMLIB)
+])
+
+AC_DEFUN([AC_HAVE_DPMS],
+ [AC_REQUIRE_CPP()dnl
+ AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
+
+ test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS=
+ test -z "$DPMS_INCLUDE" && DPMS_INCLUDE=
+ DPMS_LIB=
+
+ AC_ARG_WITH(dpms,AC_HELP_STRING([--without-dpms],[disable DPMS power saving]),
+ dpms_test=$withval, dpms_test="yes")
+ if test "x$dpms_test" = xno; then
+ ac_cv_have_dpms=no
+ else
+ AC_MSG_CHECKING(for DPMS)
+ dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms.
+ dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms".
+ AC_CACHE_VAL(ac_cv_have_dpms,
+ [
+ if test "x$kde_use_qt_emb" = "xyes" || test "x$kde_use_qt_mac" = "xyes"; then
+ AC_MSG_RESULT(no)
+ ac_cv_have_dpms="no"
+ else
+ ac_save_ldflags="$LDFLAGS"
+ ac_save_cflags="$CFLAGS"
+ ac_save_libs="$LIBS"
+ LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries"
+ LIBS="-lX11 -lXext $LIBSOCKET"
+ CFLAGS="$CFLAGS $X_INCLUDES"
+ test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS"
+ AC_TRY_LINK([
+ #include <X11/Xproto.h>
+ #include <X11/X.h>
+ #include <X11/Xlib.h>
+ #include <X11/extensions/dpms.h>
+ int foo_test_dpms()
+ { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[],
+ ac_cv_have_dpms="yes", [
+ LIBS="-lXdpms $LIBS"
+ AC_TRY_LINK([
+ #include <X11/Xproto.h>
+ #include <X11/X.h>
+ #include <X11/Xlib.h>
+ #include <X11/extensions/dpms.h>
+ int foo_test_dpms()
+ { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[],
+ [
+ ac_cv_have_dpms="-lXdpms"
+ ],ac_cv_have_dpms="no")
+ ])
+ LDFLAGS="$ac_save_ldflags"
+ CFLAGS="$ac_save_cflags"
+ LIBS="$ac_save_libs"
+ fi
+ ])dnl
+
+ if test "$ac_cv_have_dpms" = no; then
+ AC_MSG_RESULT(no)
+ DPMS_LDFLAGS=""
+ DPMSINC=""
+ $2
+ else
+ AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support])
+ if test "$ac_cv_have_dpms" = "-lXdpms"; then
+ DPMS_LIB="-lXdpms"
+ fi
+ if test "$DPMS_LDFLAGS" = ""; then
+ DPMSLIB="$DPMS_LIB "'$(LIB_X11)'
+ else
+ DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)'
+ fi
+ if test "$DPMS_INCLUDE" = ""; then
+ DPMSINC=""
+ else
+ DPMSINC="-I$DPMS_INCLUDE"
+ fi
+ AC_MSG_RESULT(yes)
+ $1
+ fi
+ fi
+ ac_save_cflags="$CFLAGS"
+ CFLAGS="$CFLAGS $X_INCLUDES"
+ test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS"
+ AH_TEMPLATE(HAVE_DPMSCAPABLE_PROTO,
+ [Define if you have the DPMSCapable prototype in <X11/extensions/dpms.h>])
+ AC_CHECK_DECL(DPMSCapable,
+ AC_DEFINE(HAVE_DPMSCAPABLE_PROTO),,
+ [#include <X11/Xlib.h>
+ #include <X11/extensions/dpms.h>])
+ AH_TEMPLATE(HAVE_DPMSINFO_PROTO,
+ [Define if you have the DPMSInfo prototype in <X11/extensions/dpms.h>])
+ AC_CHECK_DECL(DPMSInfo,
+ AC_DEFINE(HAVE_DPMSINFO_PROTO),,
+ [#include <X11/Xlib.h>
+ #include <X11/extensions/dpms.h>])
+ CFLAGS="$ac_save_cflags"
+ AC_SUBST(DPMSINC)
+ AC_SUBST(DPMSLIB)
+])
+
+AC_DEFUN([AC_HAVE_GL],
+ [AC_REQUIRE_CPP()dnl
+ AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
+
+ test -z "$GL_LDFLAGS" && GL_LDFLAGS=
+ test -z "$GL_INCLUDE" && GL_INCLUDE=
+
+ AC_ARG_WITH(gl,AC_HELP_STRING([--without-gl],[disable 3D GL modes]),
+ gl_test=$withval, gl_test="yes")
+ if test "x$kde_use_qt_emb" = "xyes"; then
+ # GL and Qt Embedded is a no-go for now.
+ ac_cv_have_gl=no
+ elif test "x$gl_test" = xno; then
+ ac_cv_have_gl=no
+ else
+ AC_MSG_CHECKING(for GL)
+ AC_CACHE_VAL(ac_cv_have_gl,
+ [
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ ac_save_ldflags=$LDFLAGS
+ ac_save_cxxflags=$CXXFLAGS
+ ac_save_libs=$LIBS
+ LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries"
+ LIBS="$LIBS -lGL -lGLU"
+ test "x$kde_use_qt_mac" != xyes && test "x$kde_use_qt_emb" != xyes && LIBS="$LIBS -lX11"
+ LIBS="$LIBS $LIB_XEXT -lm $LIBSOCKET"
+ CXXFLAGS="$CFLAGS $X_INCLUDES"
+ test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS"
+ AC_TRY_LINK([#include <GL/gl.h>
+#include <GL/glu.h>
+], [],
+ ac_cv_have_gl="yes", ac_cv_have_gl="no")
+ AC_LANG_RESTORE
+ LDFLAGS=$ac_save_ldflags
+ CXXFLAGS=$ac_save_cxxflags
+ LIBS=$ac_save_libs
+ ])dnl
+
+ if test "$ac_cv_have_gl" = "no"; then
+ AC_MSG_RESULT(no)
+ GL_LDFLAGS=""
+ GLINC=""
+ $2
+ else
+ AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)])
+ if test "$GL_LDFLAGS" = ""; then
+ GLLIB='-lGLU -lGL $(LIB_X11)'
+ else
+ GLLIB="$GL_LDFLAGS -lGLU -lGL "'$(LIB_X11)'
+ fi
+ if test "$GL_INCLUDE" = ""; then
+ GLINC=""
+ else
+ GLINC="-I$GL_INCLUDE"
+ fi
+ AC_MSG_RESULT($ac_cv_have_gl)
+ $1
+ fi
+ fi
+ AC_SUBST(GLINC)
+ AC_SUBST(GLLIB)
+])
+
+
+ dnl shadow password and PAM magic - maintained by ossi@kde.org
+
+AC_DEFUN([KDE_PAM], [
+ AC_REQUIRE([KDE_CHECK_LIBDL])
+
+ want_pam=
+ AC_ARG_WITH(pam,
+ AC_HELP_STRING([--with-pam[=ARG]],[enable support for PAM: ARG=[yes|no|service name]]),
+ [ if test "x$withval" = "xyes"; then
+ want_pam=yes
+ pam_service=kde
+ elif test "x$withval" = "xno"; then
+ want_pam=no
+ else
+ want_pam=yes
+ pam_service=$withval
+ fi
+ ], [ pam_service=kde ])
+
+ use_pam=
+ PAMLIBS=
+ if test "x$want_pam" != xno; then
+ AC_CHECK_LIB(pam, pam_start, [
+ AC_CHECK_HEADER(security/pam_appl.h,
+ [ pam_header=security/pam_appl.h ],
+ [ AC_CHECK_HEADER(pam/pam_appl.h,
+ [ pam_header=pam/pam_appl.h ],
+ [
+ AC_MSG_WARN([PAM detected, but no headers found!
+Make sure you have the necessary development packages installed.])
+ ]
+ )
+ ]
+ )
+ ], , $LIBDL)
+ if test -z "$pam_header"; then
+ if test "x$want_pam" = xyes; then
+ AC_MSG_ERROR([--with-pam was specified, but cannot compile with PAM!])
+ fi
+ else
+ AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules)])
+ PAMLIBS="$PAM_MISC_LIB -lpam $LIBDL"
+ use_pam=yes
+
+ dnl darwin claims to be something special
+ if test "$pam_header" = "pam/pam_appl.h"; then
+ AC_DEFINE(HAVE_PAM_PAM_APPL_H, 1, [Define if your PAM headers are in pam/ instead of security/])
+ fi
+
+ dnl test whether struct pam_message is const (Linux) or not (Sun)
+ AC_MSG_CHECKING(for const pam_message)
+ AC_EGREP_HEADER([struct pam_message], $pam_header,
+ [ AC_EGREP_HEADER([const struct pam_message], $pam_header,
+ [AC_MSG_RESULT([const: Linux-type PAM])],
+ [AC_MSG_RESULT([nonconst: Sun-type PAM])
+ AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])]
+ )],
+ [AC_MSG_RESULT([not found - assume const, Linux-type PAM])])
+ fi
+ fi
+
+ AC_SUBST(PAMLIBS)
+])
+
+dnl DEF_PAM_SERVICE(arg name, full name, define name)
+AC_DEFUN([DEF_PAM_SERVICE], [
+ AC_ARG_WITH($1-pam,
+ AC_HELP_STRING([--with-$1-pam=[val]],[override PAM service from --with-pam for $2]),
+ [ if test "x$use_pam" = xyes; then
+ $3_PAM_SERVICE=$withval
+ else
+ AC_MSG_ERROR([Cannot use use --with-$1-pam, as no PAM was detected.
+You may want to enforce it by using --with-pam.])
+ fi
+ ],
+ [ if test "x$use_pam" = xyes; then
+ $3_PAM_SERVICE="$pam_service"
+ fi
+ ])
+ if test -n "$$3_PAM_SERVICE"; then
+ AC_MSG_RESULT([The PAM service used by $2 will be $$3_PAM_SERVICE])
+ AC_DEFINE_UNQUOTED($3_PAM_SERVICE, "$$3_PAM_SERVICE", [The PAM service to be used by $2])
+ fi
+ AC_SUBST($3_PAM_SERVICE)
+])
+
+AC_DEFUN([KDE_SHADOWPASSWD], [
+ AC_REQUIRE([KDE_PAM])
+
+ AC_CHECK_LIB(shadow, getspent,
+ [ LIBSHADOW="-lshadow"
+ ac_use_shadow=yes
+ ],
+ [ dnl for UnixWare
+ AC_CHECK_LIB(gen, getspent,
+ [ LIBGEN="-lgen"
+ ac_use_shadow=yes
+ ],
+ [ AC_CHECK_FUNC(getspent,
+ [ ac_use_shadow=yes ],
+ [ ac_use_shadow=no ])
+ ])
+ ])
+ AC_SUBST(LIBSHADOW)
+ AC_SUBST(LIBGEN)
+
+ AC_MSG_CHECKING([for shadow passwords])
+
+ AC_ARG_WITH(shadow,
+ AC_HELP_STRING([--with-shadow],[If you want shadow password support]),
+ [ if test "x$withval" != "xno"; then
+ use_shadow=yes
+ else
+ use_shadow=no
+ fi
+ ], [
+ use_shadow="$ac_use_shadow"
+ ])
+
+ if test "x$use_shadow" = xyes; then
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_SHADOW, 1, [Define if you use shadow passwords])
+ else
+ AC_MSG_RESULT(no)
+ LIBSHADOW=
+ LIBGEN=
+ fi
+
+ dnl finally make the relevant binaries setuid root, if we have shadow passwds.
+ dnl this still applies, if we could use it indirectly through pam.
+ if test "x$use_shadow" = xyes ||
+ ( test "x$use_pam" = xyes && test "x$ac_use_shadow" = xyes ); then
+ case $host in
+ *-*-freebsd* | *-*-netbsd* | *-*-openbsd*)
+ SETUIDFLAGS="-m 4755 -o root";;
+ *)
+ SETUIDFLAGS="-m 4755";;
+ esac
+ fi
+ AC_SUBST(SETUIDFLAGS)
+
+])
+
+AC_DEFUN([KDE_PASSWDLIBS], [
+ AC_REQUIRE([KDE_MISC_TESTS]) dnl for LIBCRYPT
+ AC_REQUIRE([KDE_PAM])
+ AC_REQUIRE([KDE_SHADOWPASSWD])
+
+ if test "x$use_pam" = "xyes"; then
+ PASSWDLIBS="$PAMLIBS"
+ else
+ PASSWDLIBS="$LIBCRYPT $LIBSHADOW $LIBGEN"
+ fi
+
+ dnl FreeBSD uses a shadow-like setup, where /etc/passwd holds the users, but
+ dnl /etc/master.passwd holds the actual passwords. /etc/master.passwd requires
+ dnl root to read, so kcheckpass needs to be root (even when using pam, since pam
+ dnl may need to read /etc/master.passwd).
+ case $host in
+ *-*-freebsd*)
+ SETUIDFLAGS="-m 4755 -o root"
+ ;;
+ *)
+ ;;
+ esac
+
+ AC_SUBST(PASSWDLIBS)
+])
+
+AC_DEFUN([KDE_CHECK_LIBDL],
+[
+AC_CHECK_LIB(dl, dlopen, [
+LIBDL="-ldl"
+ac_cv_have_dlfcn=yes
+])
+
+AC_CHECK_LIB(dld, shl_unload, [
+LIBDL="-ldld"
+ac_cv_have_shload=yes
+])
+
+AC_SUBST(LIBDL)
+])
+
+AC_DEFUN([KDE_CHECK_DLOPEN],
+[
+KDE_CHECK_LIBDL
+AC_CHECK_HEADERS(dlfcn.h dl.h)
+if test "$ac_cv_header_dlfcn_h" = "no"; then
+ ac_cv_have_dlfcn=no
+fi
+
+if test "$ac_cv_header_dl_h" = "no"; then
+ ac_cv_have_shload=no
+fi
+
+dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE
+dnl (MM)
+AC_ARG_ENABLE(dlopen,
+AC_HELP_STRING([--disable-dlopen],[link statically [default=no]]),
+enable_dlopen=$enableval,
+enable_dlopen=yes)
+
+# override the user's opinion, if we know it better ;)
+if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then
+ enable_dlopen=no
+fi
+
+if test "$ac_cv_have_dlfcn" = "yes"; then
+ AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn])
+fi
+
+if test "$ac_cv_have_shload" = "yes"; then
+ AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload])
+fi
+
+if test "$enable_dlopen" = no ; then
+ test -n "$1" && eval $1
+else
+ test -n "$2" && eval $2
+fi
+
+])
+
+AC_DEFUN([KDE_CHECK_DYNAMIC_LOADING],
+[
+KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no)
+KDE_PROG_LIBTOOL
+AC_MSG_CHECKING([dynamic loading])
+eval "`egrep '^build_libtool_libs=' libtool`"
+if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then
+ dynamic_loading=yes
+ AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING)
+else
+ dynamic_loading=no
+fi
+AC_MSG_RESULT($dynamic_loading)
+if test "$dynamic_loading" = "yes"; then
+ $1
+else
+ $2
+fi
+])
+
+AC_DEFUN([KDE_ADD_INCLUDES],
+[
+if test -z "$1"; then
+ test_include="Pix.h"
+else
+ test_include="$1"
+fi
+
+AC_MSG_CHECKING([for libg++ ($test_include)])
+
+AC_CACHE_VAL(kde_cv_libgpp_includes,
+[
+kde_cv_libgpp_includes=no
+
+ for ac_dir in \
+ \
+ /usr/include/g++ \
+ /usr/include \
+ /usr/unsupported/include \
+ /opt/include \
+ $extra_include \
+ ; \
+ do
+ if test -r "$ac_dir/$test_include"; then
+ kde_cv_libgpp_includes=$ac_dir
+ break
+ fi
+ done
+])
+
+AC_MSG_RESULT($kde_cv_libgpp_includes)
+if test "$kde_cv_libgpp_includes" != "no"; then
+ all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES"
+fi
+])
+])
+
+AC_DEFUN([KDE_CHECK_LIBPTHREAD],
+[
+ dnl This code is here specifically to handle the
+ dnl various flavors of threading library on FreeBSD
+ dnl 4-, 5-, and 6-, and the (weird) rules around it.
+ dnl There may be an environment PTHREAD_LIBS that
+ dnl specifies what to use; otherwise, search for it.
+ dnl -pthread is special cased and unsets LIBPTHREAD
+ dnl below if found.
+ LIBPTHREAD=""
+
+ if test -n "$PTHREAD_LIBS"; then
+ if test "x$PTHREAD_LIBS" = "x-pthread" ; then
+ LIBPTHREAD="PTHREAD"
+ else
+ PTHREAD_LIBS_save="$PTHREAD_LIBS"
+ PTHREAD_LIBS=`echo "$PTHREAD_LIBS_save" | sed -e 's,^-l,,g'`
+ AC_MSG_CHECKING([for pthread_create in $PTHREAD_LIBS])
+ KDE_CHECK_LIB($PTHREAD_LIBS, pthread_create, [
+ LIBPTHREAD="$PTHREAD_LIBS_save"])
+ PTHREAD_LIBS="$PTHREAD_LIBS_save"
+ fi
+ fi
+
+ dnl Is this test really needed, in the face of the Tru64 test below?
+ if test -z "$LIBPTHREAD"; then
+ AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"])
+ fi
+
+ dnl This is a special Tru64 check, see BR 76171 issue #18.
+ if test -z "$LIBPTHREAD" ; then
+ AC_MSG_CHECKING([for pthread_create in -lpthread])
+ kde_safe_libs=$LIBS
+ LIBS="$LIBS -lpthread"
+ AC_TRY_LINK([#include <pthread.h>],[(void)pthread_create(0,0,0,0);],[
+ AC_MSG_RESULT(yes)
+ LIBPTHREAD="-lpthread"],[
+ AC_MSG_RESULT(no)])
+ LIBS=$kde_safe_libs
+ fi
+
+ dnl Un-special-case for FreeBSD.
+ if test "x$LIBPTHREAD" = "xPTHREAD" ; then
+ LIBPTHREAD=""
+ fi
+
+ AC_SUBST(LIBPTHREAD)
+])
+
+AC_DEFUN([KDE_CHECK_PTHREAD_OPTION],
+[
+ USE_THREADS=""
+ if test -z "$LIBPTHREAD"; then
+ KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-D_THREAD_SAFE -pthread"])
+ fi
+
+ AH_VERBATIM(__svr_define, [
+#if defined(__SVR4) && !defined(__svr4__)
+#define __svr4__ 1
+#endif
+])
+ case $host_os in
+ solaris*)
+ KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"])
+ CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4"
+ ;;
+ freebsd*)
+ CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE $PTHREAD_CFLAGS"
+ ;;
+ aix*)
+ CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE"
+ LIBPTHREAD="$LIBPTHREAD -lc_r"
+ ;;
+ linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT"
+ if test "$CXX" = "KCC"; then
+ CXXFLAGS="$CXXFLAGS --thread_safe"
+ NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS --thread_safe"
+ fi
+ ;;
+ *)
+ ;;
+ esac
+ AC_SUBST(USE_THREADS)
+ AC_SUBST(LIBPTHREAD)
+])
+
+AC_DEFUN([KDE_CHECK_THREADING],
+[
+ AC_REQUIRE([KDE_CHECK_LIBPTHREAD])
+ AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION])
+ dnl default is yes if libpthread is found and no if no libpthread is available
+ if test -z "$LIBPTHREAD"; then
+ if test -z "$USE_THREADS"; then
+ kde_check_threading_default=no
+ else
+ kde_check_threading_default=yes
+ fi
+ else
+ kde_check_threading_default=yes
+ fi
+ AC_ARG_ENABLE(threading,AC_HELP_STRING([--disable-threading],[disables threading even if libpthread found]),
+ kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default)
+ if test "x$kde_use_threading" = "xyes"; then
+ AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)])
+ fi
+])
+
+AC_DEFUN([KDE_TRY_LINK_PYTHON],
+[
+if test "$kde_python_link_found" = no; then
+
+if test "$1" = normal; then
+ AC_MSG_CHECKING(if a Python application links)
+else
+ AC_MSG_CHECKING(if Python depends on $2)
+fi
+
+AC_CACHE_VAL(kde_cv_try_link_python_$1,
+[
+kde_save_cflags="$CFLAGS"
+CFLAGS="$CFLAGS $PYTHONINC"
+kde_save_libs="$LIBS"
+LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET"
+kde_save_ldflags="$LDFLAGS"
+LDFLAGS="$LDFLAGS $PYTHONLIB"
+
+AC_TRY_LINK(
+[
+#include <Python.h>
+],[
+ PySys_SetArgv(1, 0);
+],
+ [kde_cv_try_link_python_$1=yes],
+ [kde_cv_try_link_python_$1=no]
+)
+CFLAGS="$kde_save_cflags"
+LIBS="$kde_save_libs"
+LDFLAGS="$kde_save_ldflags"
+])
+
+if test "$kde_cv_try_link_python_$1" = "yes"; then
+ AC_MSG_RESULT(yes)
+ kde_python_link_found=yes
+ if test ! "$1" = normal; then
+ LIBPYTHON="$LIBPYTHON $2"
+ fi
+ $3
+else
+ AC_MSG_RESULT(no)
+ $4
+fi
+
+fi
+
+])
+
+AC_DEFUN([KDE_CHECK_PYTHON_DIR],
+[
+AC_MSG_CHECKING([for Python directory])
+
+AC_CACHE_VAL(kde_cv_pythondir,
+[
+ if test -z "$PYTHONDIR"; then
+ kde_cv_pythondir=/usr/local
+ else
+ kde_cv_pythondir="$PYTHONDIR"
+ fi
+])
+
+AC_ARG_WITH(pythondir,
+AC_HELP_STRING([--with-pythondir=pythondir],[use python installed in pythondir]),
+[
+ ac_python_dir=$withval
+], ac_python_dir=$kde_cv_pythondir
+)
+
+AC_MSG_RESULT($ac_python_dir)
+])
+
+AC_DEFUN([KDE_CHECK_PYTHON_INTERN],
+[
+AC_REQUIRE([KDE_CHECK_LIBDL])
+AC_REQUIRE([KDE_CHECK_LIBPTHREAD])
+AC_REQUIRE([KDE_CHECK_PYTHON_DIR])
+
+if test -z "$1"; then
+ version="1.5"
+else
+ version="$1"
+fi
+
+AC_MSG_CHECKING([for Python$version])
+
+python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes"
+AC_FIND_FILE(Python.h, $python_incdirs, python_incdir)
+if test ! -r $python_incdir/Python.h; then
+ AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir)
+ python_incdir=$python_incdir/python$version
+ if test ! -r $python_incdir/Python.h; then
+ python_incdir=no
+ fi
+fi
+
+PYTHONINC=-I$python_incdir
+
+python_libdirs="$ac_python_dir/lib$kdelibsuff /usr/lib$kdelibsuff /usr/local /usr/lib$kdelibsuff $kde_extra_libs"
+AC_FIND_FILE(libpython$version.so, $python_libdirs, python_libdir)
+if test ! -r $python_libdir/libpython$version.so; then
+ AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir)
+ if test ! -r $python_libdir/libpython$version.a; then
+ AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir)
+ python_libdir=$python_libdir/python$version/config
+ if test ! -r $python_libdir/libpython$version.a; then
+ python_libdir=no
+ fi
+ fi
+fi
+
+PYTHONLIB=-L$python_libdir
+kde_orig_LIBPYTHON=$LIBPYTHON
+if test -z "$LIBPYTHON"; then
+ LIBPYTHON=-lpython$version
+fi
+
+AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir)
+python_moddir=$python_moddir/python$version
+if test ! -r $python_moddir/copy.py; then
+ python_moddir=no
+fi
+
+PYTHONMODDIR=$python_moddir
+
+AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir)
+
+if test x$python_incdir = xno || test x$python_libdir = xno || test x$python_moddir = xno; then
+ LIBPYTHON=$kde_orig_LIBPYTHON
+ test "x$PYTHONLIB" = "x-Lno" && PYTHONLIB=""
+ test "x$PYTHONINC" = "x-Ino" && PYTHONINC=""
+ $2
+else
+ dnl Note: this test is very weak
+ kde_python_link_found=no
+ KDE_TRY_LINK_PYTHON(normal)
+ KDE_TRY_LINK_PYTHON(m, -lm)
+ KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD)
+ KDE_TRY_LINK_PYTHON(tcl, -ltcl)
+ KDE_TRY_LINK_PYTHON(db2, -ldb2)
+ KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm])
+ KDE_TRY_LINK_PYTHON(m_and_thread_and_util, [$LIBPTHREAD -lm -lutil])
+ KDE_TRY_LINK_PYTHON(m_and_thread_and_db3, [$LIBPTHREAD -lm -ldb-3 -lutil])
+ KDE_TRY_LINK_PYTHON(pthread_and_db3, [$LIBPTHREAD -ldb-3])
+ KDE_TRY_LINK_PYTHON(m_and_thread_and_db, [$LIBPTHREAD -lm -ldb -ltermcap -lutil])
+ KDE_TRY_LINK_PYTHON(pthread_and_dl, [$LIBPTHREAD $LIBDL -lutil -lreadline -lncurses -lm])
+ KDE_TRY_LINK_PYTHON(pthread_and_panel_curses, [$LIBPTHREAD $LIBDL -lm -lpanel -lcurses])
+ KDE_TRY_LINK_PYTHON(m_and_thread_and_db_special, [$LIBPTHREAD -lm -ldb -lutil], [],
+ [AC_MSG_WARN([it seems, Python depends on another library.
+ Please set LIBPYTHON to '-lpython$version -lotherlib' before calling configure to fix this
+ and contact the authors to let them know about this problem])
+ ])
+
+ LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET"
+ AC_SUBST(PYTHONINC)
+ AC_SUBST(PYTHONLIB)
+ AC_SUBST(LIBPYTHON)
+ AC_SUBST(PYTHONMODDIR)
+ AC_DEFINE(HAVE_PYTHON, 1, [Define if you have the development files for python])
+fi
+
+])
+
+
+AC_DEFUN([KDE_CHECK_PYTHON],
+[
+ KDE_CHECK_PYTHON_INTERN("2.5",
+ [KDE_CHECK_PYTHON_INTERN("2.4",
+ [KDE_CHECK_PYTHON_INTERN("2.3",
+ [KDE_CHECK_PYTHON_INTERN("2.2",
+ [KDE_CHECK_PYTHON_INTERN("2.1",
+ [KDE_CHECK_PYTHON_INTERN("2.0",
+ [KDE_CHECK_PYTHON_INTERN($1, $2) ])
+ ])
+ ])
+ ])
+ ])
+ ])
+])
+
+AC_DEFUN([KDE_CHECK_STL],
+[
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ ac_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`"
+
+ AC_MSG_CHECKING([if C++ programs can be compiled])
+ AC_CACHE_VAL(kde_cv_stl_works,
+ [
+ AC_TRY_COMPILE([
+#include <string>
+using namespace std;
+],[
+ string astring="Hallo Welt.";
+ astring.erase(0, 6); // now astring is "Welt"
+ return 0;
+], kde_cv_stl_works=yes,
+ kde_cv_stl_works=no)
+])
+
+ AC_MSG_RESULT($kde_cv_stl_works)
+
+ if test "$kde_cv_stl_works" = "yes"; then
+ # back compatible
+ AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI])
+ else
+ AC_MSG_ERROR([Your Installation isn't able to compile simple C++ programs.
+Check config.log for details - if you're using a Linux distribution you might miss
+a package named similar to libstdc++-dev.])
+ fi
+
+ CXXFLAGS="$ac_save_CXXFLAGS"
+ AC_LANG_RESTORE
+])
+
+AC_DEFUN([AC_FIND_QIMGIO],
+ [AC_REQUIRE([AC_FIND_JPEG])
+AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
+AC_MSG_CHECKING([for qimgio])
+AC_CACHE_VAL(ac_cv_lib_qimgio,
+[
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+ac_save_LIBS="$LIBS"
+ac_save_CXXFLAGS="$CXXFLAGS"
+LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBQT"
+CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes"
+AC_TRY_RUN(dnl
+[
+#include <qimageio.h>
+#include <qstring.h>
+int main() {
+ QString t = "hallo";
+ t.fill('t');
+ qInitImageIO();
+}
+],
+ ac_cv_lib_qimgio=yes,
+ ac_cv_lib_qimgio=no,
+ ac_cv_lib_qimgio=no)
+LIBS="$ac_save_LIBS"
+CXXFLAGS="$ac_save_CXXFLAGS"
+AC_LANG_RESTORE
+])dnl
+if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then
+ LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG"
+ AC_MSG_RESULT(yes)
+ AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available])
+ AC_SUBST(LIBQIMGIO)
+else
+ AC_MSG_RESULT(not found)
+fi
+])
+
+AC_DEFUN([AM_DISABLE_LIBRARIES],
+[
+ AC_PROVIDE([AM_ENABLE_STATIC])
+ AC_PROVIDE([AM_ENABLE_SHARED])
+ enable_static=no
+ enable_shared=yes
+])
+
+
+AC_DEFUN([AC_CHECK_UTMP_FILE],
+[
+ AC_MSG_CHECKING([for utmp file])
+
+ AC_CACHE_VAL(kde_cv_utmp_file,
+ [
+ kde_cv_utmp_file=no
+
+ for ac_file in \
+ \
+ /var/run/utmp \
+ /var/adm/utmp \
+ /etc/utmp \
+ ; \
+ do
+ if test -r "$ac_file"; then
+ kde_cv_utmp_file=$ac_file
+ break
+ fi
+ done
+ ])
+
+ if test "$kde_cv_utmp_file" != "no"; then
+ AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries])
+ $1
+ AC_MSG_RESULT($kde_cv_utmp_file)
+ else
+ $2
+ AC_MSG_RESULT([non found])
+ fi
+])
+
+
+AC_DEFUN([KDE_CREATE_SUBDIRSLIST],
+[
+
+DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin"
+TOPSUBDIRS=""
+
+if test ! -s $srcdir/subdirs; then
+ dnl Note: Makefile.common creates subdirs, so this is just a fallback
+ files=`cd $srcdir && ls -1`
+ dirs=`for i in $files; do if test -d $i; then echo $i; fi; done`
+ for i in $dirs; do
+ echo $i >> $srcdir/subdirs
+ done
+fi
+
+ac_topsubdirs=
+if test -s $srcdir/inst-apps; then
+ ac_topsubdirs="`cat $srcdir/inst-apps`"
+elif test -s $srcdir/subdirs; then
+ ac_topsubdirs="`cat $srcdir/subdirs`"
+fi
+
+for i in $ac_topsubdirs; do
+ AC_MSG_CHECKING([if $i should be compiled])
+ if test -d $srcdir/$i; then
+ install_it="yes"
+ for j in $DO_NOT_COMPILE; do
+ if test $i = $j; then
+ install_it="no"
+ fi
+ done
+ else
+ install_it="no"
+ fi
+ AC_MSG_RESULT($install_it)
+ vari=`echo $i | sed -e 's,[[-+.@]],_,g'`
+ if test $install_it = "yes"; then
+ TOPSUBDIRS="$TOPSUBDIRS $i"
+ eval "$vari""_SUBDIR_included=yes"
+ else
+ eval "$vari""_SUBDIR_included=no"
+ fi
+done
+
+AC_SUBST(TOPSUBDIRS)
+])
+
+AC_DEFUN([KDE_CHECK_NAMESPACES],
+[
+AC_MSG_CHECKING(whether C++ compiler supports namespaces)
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+AC_TRY_COMPILE([
+],
+[
+namespace Foo {
+ extern int i;
+ namespace Bar {
+ extern int i;
+ }
+}
+
+int Foo::i = 0;
+int Foo::Bar::i = 1;
+],[
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_NAMESPACES)
+], [
+AC_MSG_RESULT(no)
+])
+AC_LANG_RESTORE
+])
+
+dnl ------------------------------------------------------------------------
+dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org
+dnl ------------------------------------------------------------------------
+dnl
+AC_DEFUN([AC_CHECK_S_ISSOCK],
+[
+AC_MSG_CHECKING(for S_ISSOCK)
+AC_CACHE_VAL(ac_cv_have_s_issock,
+[
+AC_TRY_LINK(
+[
+#include <sys/stat.h>
+],
+[
+struct stat buff;
+int b = S_ISSOCK( buff.st_mode );
+],
+ac_cv_have_s_issock=yes,
+ac_cv_have_s_issock=no)
+])
+AC_MSG_RESULT($ac_cv_have_s_issock)
+if test "$ac_cv_have_s_issock" = "yes"; then
+ AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.])
+fi
+
+AH_VERBATIM(_ISSOCK,
+[
+#ifndef HAVE_S_ISSOCK
+#define HAVE_S_ISSOCK
+#define S_ISSOCK(mode) (1==0)
+#endif
+])
+
+])
+
+dnl ------------------------------------------------------------------------
+dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org
+dnl ------------------------------------------------------------------------
+dnl
+AC_DEFUN([AC_CHECK_KDEMAXPATHLEN],
+[
+AC_MSG_CHECKING(for MAXPATHLEN)
+AC_CACHE_VAL(ac_cv_maxpathlen,
+[
+cat > conftest.$ac_ext <<EOF
+#ifdef STDC_HEADERS
+# include <stdlib.h>
+#endif
+#include <stdio.h>
+#include <sys/param.h>
+#ifndef MAXPATHLEN
+#define MAXPATHLEN 1024
+#endif
+
+KDE_HELLO MAXPATHLEN
+
+EOF
+
+ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out"
+
+if AC_TRY_EVAL(ac_try) && test -s conftest.out; then
+ ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out`
+else
+ ac_cv_maxpathlen=1024
+fi
+
+rm conftest.*
+
+])
+AC_MSG_RESULT($ac_cv_maxpathlen)
+AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] )
+])
+
+AC_DEFUN([KDE_CHECK_HEADER],
+[
+ kde_safe_cppflags=$CPPFLAGS
+ CPPFLAGS="$CPPFLAGS $all_includes"
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ AC_CHECK_HEADER([$1], [$2], [$3], [$4])
+ AC_LANG_RESTORE
+ CPPFLAGS=$kde_safe_cppflags
+])
+
+AC_DEFUN([KDE_CHECK_HEADERS],
+[
+ AH_CHECK_HEADERS([$1])
+ AC_LANG_SAVE
+ kde_safe_cppflags=$CPPFLAGS
+ CPPFLAGS="$CPPFLAGS $all_includes"
+ AC_LANG_CPLUSPLUS
+ AC_CHECK_HEADERS([$1], [$2], [$3], [$4])
+ CPPFLAGS=$kde_safe_cppflags
+ AC_LANG_RESTORE
+])
+
+AC_DEFUN([KDE_FAST_CONFIGURE],
+[
+ dnl makes configure fast (needs perl)
+ AC_ARG_ENABLE(fast-perl, AC_HELP_STRING([--disable-fast-perl],[disable fast Makefile generation (needs perl)]),
+ with_fast_perl=$enableval, with_fast_perl=yes)
+])
+
+AC_DEFUN([KDE_CONF_FILES],
+[
+ val=
+ if test -f $srcdir/configure.files ; then
+ val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files`
+ fi
+ CONF_FILES=
+ if test -n "$val" ; then
+ for i in $val ; do
+ CONF_FILES="$CONF_FILES $i"
+ done
+ fi
+ AC_SUBST(CONF_FILES)
+])dnl
+
+dnl This sets the prefix, for arts and kdelibs
+dnl Do NOT use in any other module.
+dnl It only looks at --prefix, KDEDIR and falls back to /usr/local/kde
+AC_DEFUN([KDE_SET_PREFIX_CORE],
+[
+ unset CDPATH
+ dnl make $KDEDIR the default for the installation
+ AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde})
+
+ if test "x$prefix" = "xNONE"; then
+ prefix=$ac_default_prefix
+ ac_configure_args="$ac_configure_args --prefix=$prefix"
+ fi
+ # And delete superfluous '/' to make compares easier
+ prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
+ kde_libs_htmldir=$prefix/share/doc/HTML/
+ exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
+
+ kde_libs_prefix='$(prefix)'
+ kde_libs_htmldir='$(kde_htmldir)'
+ AC_SUBST(kde_libs_prefix)
+ AC_SUBST(kde_libs_htmldir)
+ KDE_FAST_CONFIGURE
+ KDE_CONF_FILES
+])
+
+
+AC_DEFUN([KDE_SET_PREFIX],
+[
+ unset CDPATH
+ dnl We can't give real code to that macro, only a value.
+ dnl It only matters for --help, since we set the prefix in this function anyway.
+ AC_PREFIX_DEFAULT(${KDEDIR:-the kde prefix})
+
+ KDE_SET_DEFAULT_BINDIRS
+ if test "x$prefix" = "xNONE"; then
+ dnl no prefix given: look for kde-config in the PATH and deduce the prefix from it
+ KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kde-config)], [], prepend)
+ else
+ dnl prefix given: look for kde-config, preferrably in prefix, otherwise in PATH
+ kde_save_PATH="$PATH"
+ PATH="$exec_prefix/bin:$prefix/bin:$PATH"
+ KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kde-config)], [], prepend)
+ PATH="$kde_save_PATH"
+ fi
+
+ kde_libs_prefix=`$KDECONFIG --prefix`
+ if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then
+ AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs.
+ This means it has been moved since you installed it.
+ This won't work. Please recompile kdelibs for the new prefix.
+ ])
+ fi
+ kde_libs_htmldir=`$KDECONFIG --install html --expandvars`
+
+ AC_MSG_CHECKING([where to install])
+ if test "x$prefix" = "xNONE"; then
+ prefix=$kde_libs_prefix
+ AC_MSG_RESULT([$prefix (as returned by kde-config)])
+ else
+ dnl --prefix was given. Compare prefixes and warn (in configure.in.bot.end) if different
+ given_prefix=$prefix
+ AC_MSG_RESULT([$prefix (as requested)])
+ fi
+
+ # And delete superfluous '/' to make compares easier
+ prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
+ exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
+ given_prefix=`echo "$given_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
+
+ AC_SUBST(KDECONFIG)
+ AC_SUBST(kde_libs_prefix)
+ AC_SUBST(kde_libs_htmldir)
+
+ KDE_FAST_CONFIGURE
+ KDE_CONF_FILES
+])
+
+pushdef([AC_PROG_INSTALL],
+[
+ dnl our own version, testing for a -p flag
+ popdef([AC_PROG_INSTALL])
+ dnl as AC_PROG_INSTALL works as it works we first have
+ dnl to save if the user didn't specify INSTALL, as the
+ dnl autoconf one overwrites INSTALL and we have no chance to find
+ dnl out afterwards
+ test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL
+ test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM
+ test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT
+ AC_PROG_INSTALL
+
+ if test -z "$kde_save_INSTALL_given" ; then
+ # OK, user hasn't given any INSTALL, autoconf found one for us
+ # now we test, if it supports the -p flag
+ AC_MSG_CHECKING(for -p flag to install)
+ rm -f confinst.$$.* > /dev/null 2>&1
+ echo "Testtest" > confinst.$$.orig
+ ac_res=no
+ if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then
+ if test -f confinst.$$.new ; then
+ # OK, -p seems to do no harm to install
+ INSTALL="${INSTALL} -p"
+ ac_res=yes
+ fi
+ fi
+ rm -f confinst.$$.*
+ AC_MSG_RESULT($ac_res)
+ fi
+ dnl the following tries to resolve some signs and wonders coming up
+ dnl with different autoconf/automake versions
+ dnl e.g.:
+ dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s
+ dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS)
+ dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s
+ dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has
+ dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the
+ dnl install-@DIR@PROGRAMS targets to explicitly use that flag
+ dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as
+ dnl INSTALL_SCRIPT, which breaks with automake <= 1.4
+ dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure
+ dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from
+ dnl automake (due to broken Makefile.am or whatever) to install programs,
+ dnl and so does not see the -s flag in automake > 1.4
+ dnl to clean up that mess we:
+ dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG
+ dnl which cleans KDE's program with automake > 1.4;
+ dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems
+ dnl with automake<=1.4
+ dnl note that dues to this sometimes two '-s' flags are used (if KDE
+ dnl properly uses install-@DIR@PROGRAMS, but I don't care
+ dnl
+ dnl And to all this comes, that I even can't write in comments variable
+ dnl names used by automake, because it is so stupid to think I wanted to
+ dnl _use_ them, therefor I have written A_M_... instead of AM_
+ dnl hmm, I wanted to say something ... ahh yes: Arghhh.
+
+ if test -z "$kde_save_INSTALL_PROGRAM_given" ; then
+ INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)'
+ fi
+ if test -z "$kde_save_INSTALL_SCRIPT_given" ; then
+ INSTALL_SCRIPT='${INSTALL}'
+ fi
+])dnl
+
+AC_DEFUN([KDE_LANG_CPLUSPLUS],
+[AC_LANG_CPLUSPLUS
+ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC'
+pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS])
+])
+
+pushdef([AC_LANG_CPLUSPLUS],
+[popdef([AC_LANG_CPLUSPLUS])
+KDE_LANG_CPLUSPLUS
+])
+
+AC_DEFUN([KDE_CHECK_LONG_LONG],
+[
+AC_MSG_CHECKING(for long long)
+AC_CACHE_VAL(kde_cv_c_long_long,
+[
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ AC_TRY_LINK([], [
+ long long foo = 0;
+ foo = foo+1;
+ ],
+ kde_cv_c_long_long=yes, kde_cv_c_long_long=no)
+ AC_LANG_RESTORE
+])
+AC_MSG_RESULT($kde_cv_c_long_long)
+if test "$kde_cv_c_long_long" = yes; then
+ AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype])
+fi
+])
+
+AC_DEFUN([KDE_CHECK_LIB],
+[
+ kde_save_LDFLAGS="$LDFLAGS"
+ dnl AC_CHECK_LIB modifies LIBS, so save it here
+ kde_save_LIBS="$LIBS"
+ LDFLAGS="$LDFLAGS $all_libraries"
+ case $host_os in
+ aix*) LDFLAGS="-brtl $LDFLAGS"
+ test "$GCC" = yes && LDFLAGS="-Wl,$LDFLAGS"
+ ;;
+ esac
+ AC_CHECK_LIB($1, $2, $3, $4, $5)
+ LDFLAGS="$kde_save_LDFLAGS"
+ LIBS="$kde_save_LIBS"
+])
+
+AC_DEFUN([KDE_JAVA_PREFIX],
+[
+ dir=`dirname "$1"`
+ base=`basename "$1"`
+ list=`ls -1 $dir 2> /dev/null`
+ for entry in $list; do
+ if test -d $dir/$entry/bin; then
+ case $entry in
+ $base)
+ javadirs="$javadirs $dir/$entry/bin"
+ ;;
+ esac
+ elif test -d $dir/$entry/jre/bin; then
+ case $entry in
+ $base)
+ javadirs="$javadirs $dir/$entry/jre/bin"
+ ;;
+ esac
+ fi
+ done
+])
+
+dnl KDE_CHEC_JAVA_DIR(onlyjre)
+AC_DEFUN([KDE_CHECK_JAVA_DIR],
+[
+
+AC_ARG_WITH(java,
+AC_HELP_STRING([--with-java=javadir],[use java installed in javadir, --without-java disables]),
+[ ac_java_dir=$withval
+], ac_java_dir=""
+)
+
+AC_MSG_CHECKING([for Java])
+
+dnl at this point ac_java_dir is either a dir, 'no' to disable, or '' to say look in $PATH
+if test "x$ac_java_dir" = "xno"; then
+ kde_java_bindir=no
+ kde_java_includedir=no
+ kde_java_libjvmdir=no
+ kde_java_libgcjdir=no
+ kde_java_libhpidir=no
+else
+ if test "x$ac_java_dir" = "x"; then
+
+
+ dnl No option set -> collect list of candidate paths
+ if test -n "$JAVA_HOME"; then
+ KDE_JAVA_PREFIX($JAVA_HOME)
+ fi
+ KDE_JAVA_PREFIX(/usr/j2se)
+ KDE_JAVA_PREFIX(/usr/lib/j2se)
+ KDE_JAVA_PREFIX(/usr/j*dk*)
+ KDE_JAVA_PREFIX(/usr/lib/j*dk*)
+ KDE_JAVA_PREFIX(/opt/j*sdk*)
+ KDE_JAVA_PREFIX(/usr/lib/java*)
+ KDE_JAVA_PREFIX(/usr/java*)
+ KDE_JAVA_PREFIX(/usr/java/j*dk*)
+ KDE_JAVA_PREFIX(/usr/java/j*re*)
+ KDE_JAVA_PREFIX(/usr/lib/SunJava2*)
+ KDE_JAVA_PREFIX(/usr/lib/SunJava*)
+ KDE_JAVA_PREFIX(/usr/lib/IBMJava2*)
+ KDE_JAVA_PREFIX(/usr/lib/IBMJava*)
+ KDE_JAVA_PREFIX(/opt/java*)
+
+ kde_cv_path="NONE"
+ kde_save_IFS=$IFS
+ IFS=':'
+ for dir in $PATH; do
+ if test -d "$dir"; then
+ javadirs="$javadirs $dir"
+ fi
+ done
+ IFS=$kde_save_IFS
+ jredirs=
+
+ dnl Now javadirs contains a list of paths that exist, all ending with bin/
+ for dir in $javadirs; do
+ dnl Check for the java executable
+ if test -x "$dir/java"; then
+ dnl And also check for a libjvm.so somewhere under there
+ dnl Since we have to go to the parent dir, /usr/bin is excluded, /usr is too big.
+ if test "$dir" != "/usr/bin"; then
+ libjvmdir=`find $dir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1`
+ if test ! -f $libjvmdir/libjvm.so; then continue; fi
+ jredirs="$jredirs $dir"
+ fi
+ fi
+ done
+
+ dnl Now jredirs contains a reduced list, of paths where both java and ../**/libjvm.so was found
+ JAVAC=
+ JAVA=
+ kde_java_bindir=no
+ for dir in $jredirs; do
+ JAVA="$dir/java"
+ kde_java_bindir=$dir
+ if test -x "$dir/javac"; then
+ JAVAC="$dir/javac"
+ break
+ fi
+ done
+
+ if test -n "$JAVAC"; then
+ dnl this substitution might not work - well, we test for jni.h below
+ kde_java_includedir=`echo $JAVAC | sed -e 's,bin/javac$,include/,'`
+ else
+ kde_java_includedir=no
+ fi
+ else
+ dnl config option set
+ kde_java_bindir=$ac_java_dir/bin
+ if test -x $ac_java_dir/bin/java && test ! -x $ac_java_dir/bin/javac; then
+ kde_java_includedir=no
+ else
+ kde_java_includedir=$ac_java_dir/include
+ fi
+ fi
+fi
+
+dnl At this point kde_java_bindir and kde_java_includedir are either set or "no"
+if test "x$kde_java_bindir" != "xno"; then
+
+ dnl Look for libjvm.so
+ kde_java_libjvmdir=`find $kde_java_bindir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1`
+ dnl Look for libgcj.so
+ kde_java_libgcjdir=`find $kde_java_bindir/.. -name libgcj.so | sed 's,libgcj.so,,'|head -n 1`
+ dnl Look for libhpi.so and avoid green threads
+ kde_java_libhpidir=`find $kde_java_bindir/.. -name libhpi.so | grep -v green | sed 's,libhpi.so,,' | head -n 1`
+
+ dnl Now check everything's fine under there
+ dnl the include dir is our flag for having the JDK
+ if test -d "$kde_java_includedir"; then
+ if test ! -x "$kde_java_bindir/javac"; then
+ AC_MSG_ERROR([javac not found under $kde_java_bindir - it seems you passed a wrong --with-java.])
+ fi
+ if test ! -x "$kde_java_bindir/javah"; then
+ AC_MSG_ERROR([javah not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.])
+ fi
+ if test ! -x "$kde_java_bindir/jar"; then
+ AC_MSG_ERROR([jar not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.])
+ fi
+ if test ! -r "$kde_java_includedir/jni.h"; then
+ AC_MSG_ERROR([jni.h not found under $kde_java_includedir. Use --with-java or --without-java.])
+ fi
+
+ jni_includes="-I$kde_java_includedir"
+ dnl Strange thing, jni.h requires jni_md.h which is under genunix here..
+ dnl and under linux here..
+
+ dnl not needed for gcj
+
+ if test "x$kde_java_libgcjdir" = "x"; then
+ test -d "$kde_java_includedir/linux" && jni_includes="$jni_includes -I$kde_java_includedir/linux"
+ test -d "$kde_java_includedir/solaris" && jni_includes="$jni_includes -I$kde_java_includedir/solaris"
+ test -d "$kde_java_includedir/genunix" && jni_includes="$jni_includes -I$kde_java_includedir/genunix"
+ fi
+
+ else
+ JAVAC=
+ jni_includes=
+ fi
+
+ if test "x$kde_java_libgcjdir" = "x"; then
+ if test ! -r "$kde_java_libjvmdir/libjvm.so"; then
+ AC_MSG_ERROR([libjvm.so not found under $kde_java_libjvmdir. Use --without-java.])
+ fi
+ else
+ if test ! -r "$kde_java_libgcjdir/libgcj.so"; then
+ AC_MSG_ERROR([libgcj.so not found under $kde_java_libgcjdir. Use --without-java.])
+ fi
+ fi
+
+ if test ! -x "$kde_java_bindir/java"; then
+ AC_MSG_ERROR([java not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.])
+ fi
+
+ dnl not needed for gcj compile
+
+ if test "x$kde_java_libgcjdir" = "x"; then
+ if test ! -r "$kde_java_libhpidir/libhpi.so"; then
+ AC_MSG_ERROR([libhpi.so not found under $kde_java_libhpidir. Use --without-java.])
+ fi
+ fi
+
+ if test -n "$jni_includes"; then
+ dnl Check for JNI version
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ ac_cxxflags_safe="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS $all_includes $jni_includes"
+
+ AC_TRY_COMPILE([
+ #include <jni.h>
+ ],
+ [
+ #ifndef JNI_VERSION_1_2
+ Syntax Error
+ #endif
+ ],[ kde_jni_works=yes ],
+ [ kde_jni_works=no ])
+
+ if test $kde_jni_works = no; then
+ AC_MSG_ERROR([Incorrect version of $kde_java_includedir/jni.h.
+ You need to have Java Development Kit (JDK) version 1.2.
+
+ Use --with-java to specify another location.
+ Use --without-java to configure without java support.
+ Or download a newer JDK and try again.
+ See e.g. http://java.sun.com/products/jdk/1.2 ])
+ fi
+
+ CXXFLAGS="$ac_cxxflags_safe"
+ AC_LANG_RESTORE
+
+ dnl All tests ok, inform and subst the variables
+
+ JAVAC=$kde_java_bindir/javac
+ JAVAH=$kde_java_bindir/javah
+ JAR=$kde_java_bindir/jar
+ AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is])
+ if test "x$kde_java_libgcjdir" = "x"; then
+ JVMLIBS="-L$kde_java_libjvmdir -ljvm -L$kde_java_libhpidir -lhpi"
+ else
+ JVMLIBS="-L$kde_java_libgcjdir -lgcj"
+ fi
+ AC_MSG_RESULT([java JDK in $kde_java_bindir])
+
+ else
+ AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is])
+ AC_MSG_RESULT([java JRE in $kde_java_bindir])
+ fi
+elif test -d "/Library/Java/Home"; then
+ kde_java_bindir="/Library/Java/Home/bin"
+ jni_includes="-I/Library/Java/Home/include"
+
+ JAVAC=$kde_java_bindir/javac
+ JAVAH=$kde_java_bindir/javah
+ JAR=$kde_java_bindir/jar
+ JVMLIBS="-Wl,-framework,JavaVM"
+
+ AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is])
+ AC_MSG_RESULT([Apple Java Framework])
+else
+ AC_MSG_RESULT([none found])
+fi
+
+AC_SUBST(JAVAC)
+AC_SUBST(JAVAH)
+AC_SUBST(JAR)
+AC_SUBST(JVMLIBS)
+AC_SUBST(jni_includes)
+
+# for backward compat
+kde_cv_java_includedir=$kde_java_includedir
+kde_cv_java_bindir=$kde_java_bindir
+])
+
+dnl this is a redefinition of autoconf 2.5x's AC_FOREACH.
+dnl When the argument list becomes big, as in KDE for AC_OUTPUT in
+dnl big packages, m4_foreach is dog-slow. So use our own version of
+dnl it. (matz@kde.org)
+m4_define([mm_foreach],
+[m4_pushdef([$1])_mm_foreach($@)m4_popdef([$1])])
+m4_define([mm_car], [[$1]])
+m4_define([mm_car2], [[$@]])
+m4_define([_mm_foreach],
+[m4_if(m4_quote($2), [], [],
+ [m4_define([$1], mm_car($2))$3[]_mm_foreach([$1],
+ mm_car2(m4_shift($2)),
+ [$3])])])
+m4_define([AC_FOREACH],
+[mm_foreach([$1], m4_split(m4_normalize([$2])), [$3])])
+
+AC_DEFUN([KDE_NEED_FLEX],
+[
+kde_libs_safe=$LIBS
+LIBS="$LIBS $USER_LDFLAGS"
+AM_PROG_LEX
+LIBS=$kde_libs_safe
+if test -z "$LEXLIB"; then
+ AC_MSG_ERROR([You need to have flex installed.])
+fi
+AC_SUBST(LEXLIB)
+])
+
+AC_DEFUN([AC_PATH_QTOPIA],
+[
+ dnl TODO: use AC_CACHE_VAL
+
+ if test -z "$1"; then
+ qtopia_minver_maj=1
+ qtopia_minver_min=5
+ qtopia_minver_pat=0
+ else
+ qtopia_minver_maj=`echo "$1" | sed -e "s/^\(.*\)\..*\..*$/\1/"`
+ qtopia_minver_min=`echo "$1" | sed -e "s/^.*\.\(.*\)\..*$/\1/"`
+ qtopia_minver_pat=`echo "$1" | sed -e "s/^.*\..*\.\(.*\)$/\1/"`
+ fi
+
+ qtopia_minver="$qtopia_minver_maj$qtopia_minver_min$qtopia_minver_pat"
+ qtopia_minverstr="$qtopia_minver_maj.$qtopia_minver_min.$qtopia_minver_pat"
+
+ AC_REQUIRE([AC_PATH_QT])
+
+ AC_MSG_CHECKING([for Qtopia])
+
+ LIB_QTOPIA="-lqpe"
+ AC_SUBST(LIB_QTOPIA)
+
+ kde_qtopia_dirs="$QPEDIR /opt/Qtopia"
+
+ ac_qtopia_incdir=NO
+
+ AC_ARG_WITH(qtopia-dir,
+ AC_HELP_STRING([--with-qtopia-dir=DIR],[where the root of Qtopia is installed]),
+ [ ac_qtopia_incdir="$withval"/include] )
+
+ qtopia_incdirs=""
+ for dir in $kde_qtopia_dirs; do
+ qtopia_incdirs="$qtopia_incdirs $dir/include"
+ done
+
+ if test ! "$ac_qtopia_incdir" = "NO"; then
+ qtopia_incdirs="$ac_qtopia_incdir $qtopia_incdirs"
+ fi
+
+ qtopia_incdir=""
+ AC_FIND_FILE(qpe/qpeapplication.h, $qtopia_incdirs, qtopia_incdir)
+ ac_qtopia_incdir="$qtopia_incdir"
+
+ if test -z "$qtopia_incdir"; then
+ AC_MSG_ERROR([Cannot find Qtopia headers. Please check your installation.])
+ fi
+
+ qtopia_ver_maj=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION "\(.*\)\..*\..*".*,\1,p'`;
+ qtopia_ver_min=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION ".*\.\(.*\)\..*".*,\1,p'`;
+ qtopia_ver_pat=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION ".*\..*\.\(.*\)".*,\1,p'`;
+
+ qtopia_ver="$qtopia_ver_maj$qtopia_ver_min$qtopia_ver_pat"
+ qtopia_verstr="$qtopia_ver_maj.$qtopia_ver_min.$qtopia_ver_pat"
+ if test "$qtopia_ver" -lt "$qtopia_minver"; then
+ AC_MSG_ERROR([found Qtopia version $qtopia_verstr but version $qtopia_minverstr
+is required.])
+ fi
+
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+
+ ac_cxxflags_safe="$CXXFLAGS"
+ ac_ldflags_safe="$LDFLAGS"
+ ac_libs_safe="$LIBS"
+
+ CXXFLAGS="$CXXFLAGS -I$qtopia_incdir $all_includes"
+ LDFLAGS="$LDFLAGS $QT_LDFLAGS $all_libraries $USER_LDFLAGS $KDE_MT_LDFLAGS"
+ LIBS="$LIBS $LIB_QTOPIA $LIBQT"
+
+ cat > conftest.$ac_ext <<EOF
+#include "confdefs.h"
+#include <qpe/qpeapplication.h>
+#include <qpe/version.h>
+
+int main( int argc, char **argv )
+{
+ QPEApplication app( argc, argv );
+ return 0;
+}
+EOF
+
+ if AC_TRY_EVAL(ac_link) && test -s conftest; then
+ rm -f conftest*
+ else
+ rm -f conftest*
+ AC_MSG_ERROR([Cannot link small Qtopia Application. For more details look at
+the end of config.log])
+ fi
+
+ CXXFLAGS="$ac_cxxflags_safe"
+ LDFLAGS="$ac_ldflags_safe"
+ LIBS="$ac_libs_safe"
+
+ AC_LANG_RESTORE
+
+ QTOPIA_INCLUDES="-I$qtopia_incdir"
+ AC_SUBST(QTOPIA_INCLUDES)
+
+ AC_MSG_RESULT([found version $qtopia_verstr with headers at $qtopia_incdir])
+])
+
+
+AC_DEFUN([KDE_INIT_DOXYGEN],
+[
+AC_MSG_CHECKING([for Qt docs])
+kde_qtdir=
+if test "${with_qt_dir+set}" = set; then
+ kde_qtdir="$with_qt_dir"
+fi
+
+AC_FIND_FILE(qsql.html, [ $kde_qtdir/doc/html $QTDIR/doc/html /usr/share/doc/packages/qt3/html /usr/lib/qt/doc /usr/lib/qt3/doc /usr/lib/qt3/doc/html /usr/doc/qt3/html /usr/doc/qt3 /usr/share/doc/qt3-doc /usr/share/qt3/doc/html /usr/X11R6/share/doc/qt/html ], QTDOCDIR)
+AC_MSG_RESULT($QTDOCDIR)
+
+AC_SUBST(QTDOCDIR)
+
+KDE_FIND_PATH(dot, DOT, [], [])
+if test -n "$DOT"; then
+ KDE_HAVE_DOT="YES"
+else
+ KDE_HAVE_DOT="NO"
+fi
+AC_SUBST(KDE_HAVE_DOT)
+KDE_FIND_PATH(doxygen, DOXYGEN, [], [])
+AC_SUBST(DOXYGEN)
+
+DOXYGEN_PROJECT_NAME="$1"
+DOXYGEN_PROJECT_NUMBER="$2"
+AC_SUBST(DOXYGEN_PROJECT_NAME)
+AC_SUBST(DOXYGEN_PROJECT_NUMBER)
+
+KDE_HAS_DOXYGEN=no
+if test -n "$DOXYGEN" && test -x "$DOXYGEN" && test -f $QTDOCDIR/qsql.html; then
+ KDE_HAS_DOXYGEN=yes
+fi
+AC_SUBST(KDE_HAS_DOXYGEN)
+
+])
+
+
+AC_DEFUN([AC_FIND_BZIP2],
+[
+AC_MSG_CHECKING([for bzDecompress in libbz2])
+AC_CACHE_VAL(ac_cv_lib_bzip2,
+[
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+kde_save_LIBS="$LIBS"
+LIBS="$all_libraries $USER_LDFLAGS -lbz2 $LIBSOCKET"
+kde_save_CXXFLAGS="$CXXFLAGS"
+CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES"
+AC_TRY_LINK(dnl
+[
+#define BZ_NO_STDIO
+#include<bzlib.h>
+],
+ [ bz_stream s; (void) bzDecompress(&s); ],
+ eval "ac_cv_lib_bzip2='-lbz2'",
+ eval "ac_cv_lib_bzip2=no")
+LIBS="$kde_save_LIBS"
+CXXFLAGS="$kde_save_CXXFLAGS"
+AC_LANG_RESTORE
+])dnl
+AC_MSG_RESULT($ac_cv_lib_bzip2)
+
+if test ! "$ac_cv_lib_bzip2" = no; then
+ BZIP2DIR=bzip2
+
+ LIBBZ2="$ac_cv_lib_bzip2"
+ AC_SUBST(LIBBZ2)
+
+else
+
+ cxx_shared_flag=
+ ld_shared_flag=
+ KDE_CHECK_COMPILER_FLAG(shared, [
+ ld_shared_flag="-shared"
+ ])
+ KDE_CHECK_COMPILER_FLAG(fPIC, [
+ cxx_shared_flag="-fPIC"
+ ])
+
+ AC_MSG_CHECKING([for BZ2_bzDecompress in (shared) libbz2])
+ AC_CACHE_VAL(ac_cv_lib_bzip2_prefix,
+ [
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ kde_save_LIBS="$LIBS"
+ LIBS="$all_libraries $USER_LDFLAGS $ld_shared_flag -lbz2 $LIBSOCKET"
+ kde_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CFLAGS $cxx_shared_flag $all_includes $USER_INCLUDES"
+
+ AC_TRY_LINK(dnl
+ [
+ #define BZ_NO_STDIO
+ #include<bzlib.h>
+ ],
+ [ bz_stream s; (void) BZ2_bzDecompress(&s); ],
+ eval "ac_cv_lib_bzip2_prefix='-lbz2'",
+ eval "ac_cv_lib_bzip2_prefix=no")
+ LIBS="$kde_save_LIBS"
+ CXXFLAGS="$kde_save_CXXFLAGS"
+ AC_LANG_RESTORE
+ ])dnl
+
+ AC_MSG_RESULT($ac_cv_lib_bzip2_prefix)
+
+ if test ! "$ac_cv_lib_bzip2_prefix" = no; then
+ BZIP2DIR=bzip2
+
+ LIBBZ2="$ac_cv_lib_bzip2_prefix"
+ AC_SUBST(LIBBZ2)
+
+ AC_DEFINE(NEED_BZ2_PREFIX, 1, [Define if the libbz2 functions need the BZ2_ prefix])
+ dnl else, we just ignore this
+ fi
+
+fi
+AM_CONDITIONAL(include_BZIP2, test -n "$BZIP2DIR")
+])
+
+dnl ------------------------------------------------------------------------
+dnl Try to find the SSL headers and libraries.
+dnl $(SSL_LDFLAGS) will be -Lsslliblocation (if needed)
+dnl and $(SSL_INCLUDES) will be -Isslhdrlocation (if needed)
+dnl ------------------------------------------------------------------------
+dnl
+AC_DEFUN([KDE_CHECK_SSL],
+[
+LIBSSL="-lssl -lcrypto"
+AC_REQUIRE([KDE_CHECK_LIB64])
+
+ac_ssl_includes=NO ac_ssl_libraries=NO
+ssl_libraries=""
+ssl_includes=""
+AC_ARG_WITH(ssl-dir,
+ AC_HELP_STRING([--with-ssl-dir=DIR],[where the root of OpenSSL is installed]),
+ [ ac_ssl_includes="$withval"/include
+ ac_ssl_libraries="$withval"/lib$kdelibsuff
+ ])
+
+want_ssl=yes
+AC_ARG_WITH(ssl,
+ AC_HELP_STRING([--without-ssl],[disable SSL checks]),
+ [want_ssl=$withval])
+
+if test $want_ssl = yes; then
+
+AC_MSG_CHECKING(for OpenSSL)
+
+AC_CACHE_VAL(ac_cv_have_ssl,
+[#try to guess OpenSSL locations
+
+ ssl_incdirs="/usr/include /usr/local/include /usr/ssl/include /usr/local/ssl/include $prefix/include $kde_extra_includes"
+ ssl_incdirs="$ac_ssl_includes $ssl_incdirs"
+ AC_FIND_FILE(openssl/ssl.h, $ssl_incdirs, ssl_incdir)
+ ac_ssl_includes="$ssl_incdir"
+
+ ssl_libdirs="/usr/lib$kdelibsuff /usr/local/lib$kdelibsuff /usr/ssl/lib$kdelibsuff /usr/local/ssl/lib$kdelibsuff $libdir $prefix/lib$kdelibsuff $exec_prefix/lib$kdelibsuff $kde_extra_libs"
+ if test ! "$ac_ssl_libraries" = "NO"; then
+ ssl_libdirs="$ac_ssl_libraries $ssl_libdirs"
+ fi
+
+ test=NONE
+ ssl_libdir=NONE
+ for dir in $ssl_libdirs; do
+ try="ls -1 $dir/libssl*"
+ if test=`eval $try 2> /dev/null`; then ssl_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi
+ done
+
+ ac_ssl_libraries="$ssl_libdir"
+
+ ac_ldflags_safe="$LDFLAGS"
+ ac_libs_safe="$LIBS"
+
+ LDFLAGS="$LDFLAGS -L$ssl_libdir $all_libraries"
+ LIBS="$LIBS $LIBSSL -lRSAglue -lrsaref"
+
+ AC_TRY_LINK(,void RSAPrivateEncrypt(void);RSAPrivateEncrypt();,
+ ac_ssl_rsaref="yes"
+ ,
+ ac_ssl_rsaref="no"
+ )
+
+ LDFLAGS="$ac_ldflags_safe"
+ LIBS="$ac_libs_safe"
+
+ if test "$ac_ssl_includes" = NO || test "$ac_ssl_libraries" = NO; then
+ have_ssl=no
+ else
+ have_ssl=yes;
+ fi
+
+ ])
+
+ eval "$ac_cv_have_ssl"
+
+ AC_MSG_RESULT([libraries $ac_ssl_libraries, headers $ac_ssl_includes])
+
+ AC_MSG_CHECKING([whether OpenSSL uses rsaref])
+ AC_MSG_RESULT($ac_ssl_rsaref)
+
+ AC_MSG_CHECKING([for easter eggs])
+ AC_MSG_RESULT([none found])
+
+else
+ have_ssl=no
+fi
+
+if test "$have_ssl" = yes; then
+ AC_MSG_CHECKING(for OpenSSL version)
+ dnl Check for SSL version
+ AC_CACHE_VAL(ac_cv_ssl_version,
+ [
+
+ cat >conftest.$ac_ext <<EOF
+#include <openssl/opensslv.h>
+#include <stdio.h>
+ int main() {
+
+#ifndef OPENSSL_VERSION_NUMBER
+ printf("ssl_version=\\"error\\"\n");
+#else
+ if (OPENSSL_VERSION_NUMBER < 0x00906000)
+ printf("ssl_version=\\"old\\"\n");
+ else
+ printf("ssl_version=\\"ok\\"\n");
+#endif
+ return (0);
+ }
+EOF
+
+ ac_save_CPPFLAGS=$CPPFLAGS
+ if test "$ac_ssl_includes" != "/usr/include"; then
+ CPPFLAGS="$CPPFLAGS -I$ac_ssl_includes"
+ fi
+
+ if AC_TRY_EVAL(ac_link); then
+
+ if eval `./conftest 2>&5`; then
+ if test $ssl_version = error; then
+ AC_MSG_ERROR([$ssl_incdir/openssl/opensslv.h doesn't define OPENSSL_VERSION_NUMBER !])
+ else
+ if test $ssl_version = old; then
+ AC_MSG_WARN([OpenSSL version too old. Upgrade to 0.9.6 at least, see http://www.openssl.org. SSL support disabled.])
+ have_ssl=no
+ fi
+ fi
+ ac_cv_ssl_version="ssl_version=$ssl_version"
+ else
+ AC_MSG_ERROR([Your system couldn't run a small SSL test program.
+ Check config.log, and if you can't figure it out, send a mail to
+ David Faure <faure@kde.org>, attaching your config.log])
+ fi
+
+ else
+ AC_MSG_ERROR([Your system couldn't link a small SSL test program.
+ Check config.log, and if you can't figure it out, send a mail to
+ David Faure <faure@kde.org>, attaching your config.log])
+ fi
+ CPPFLAGS=$ac_save_CPPFLAGS
+
+ ])
+
+ eval "$ac_cv_ssl_version"
+ AC_MSG_RESULT($ssl_version)
+fi
+
+if test "$have_ssl" != yes; then
+ LIBSSL="";
+else
+ AC_DEFINE(HAVE_SSL, 1, [If we are going to use OpenSSL])
+ ac_cv_have_ssl="have_ssl=yes \
+ ac_ssl_includes=$ac_ssl_includes ac_ssl_libraries=$ac_ssl_libraries ac_ssl_rsaref=$ac_ssl_rsaref"
+
+
+ ssl_libraries="$ac_ssl_libraries"
+ ssl_includes="$ac_ssl_includes"
+
+ if test "$ac_ssl_rsaref" = yes; then
+ LIBSSL="-lssl -lcrypto -lRSAglue -lrsaref"
+ fi
+
+ if test $ssl_version = "old"; then
+ AC_DEFINE(HAVE_OLD_SSL_API, 1, [Define if you have OpenSSL < 0.9.6])
+ fi
+fi
+
+SSL_INCLUDES=
+
+if test "$ssl_includes" = "/usr/include"; then
+ if test -f /usr/kerberos/include/krb5.h; then
+ SSL_INCLUDES="-I/usr/kerberos/include"
+ fi
+elif test "$ssl_includes" != "/usr/local/include" && test -n "$ssl_includes"; then
+ SSL_INCLUDES="-I$ssl_includes"
+fi
+
+if test "$ssl_libraries" = "/usr/lib" || test "$ssl_libraries" = "/usr/local/lib" || test -z "$ssl_libraries" || test "$ssl_libraries" = "NONE"; then
+ SSL_LDFLAGS=""
+else
+ SSL_LDFLAGS="-L$ssl_libraries -R$ssl_libraries"
+fi
+
+AC_SUBST(SSL_INCLUDES)
+AC_SUBST(SSL_LDFLAGS)
+AC_SUBST(LIBSSL)
+])
+
+AC_DEFUN([KDE_CHECK_STRLCPY],
+[
+ AC_REQUIRE([AC_CHECK_STRLCAT])
+ AC_REQUIRE([AC_CHECK_STRLCPY])
+ AC_CHECK_SIZEOF(size_t)
+ AC_CHECK_SIZEOF(unsigned long)
+
+ AC_MSG_CHECKING([sizeof size_t == sizeof unsigned long])
+ AC_TRY_COMPILE(,[
+ #if SIZEOF_SIZE_T != SIZEOF_UNSIGNED_LONG
+ choke me
+ #endif
+ ],AC_MSG_RESULT([yes]),[
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR([
+ Apparently on your system our assumption sizeof size_t == sizeof unsigned long
+ does not apply. Please mail kde-devel@kde.org with a description of your system!
+ ])
+ ])
+])
+
+AC_DEFUN([KDE_CHECK_BINUTILS],
+[
+ AC_MSG_CHECKING([if ld supports unversioned version maps])
+
+ kde_save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map"
+ echo "{ local: extern \"C++\" { foo }; };" > conftest.map
+ AC_TRY_LINK([int foo;],
+[
+#ifdef __INTEL_COMPILER
+icc apparently does not support libtools version-info and version-script
+at the same time. Dunno where the bug is, but until somebody figured out,
+better disable the optional version scripts.
+#endif
+
+ foo = 42;
+], kde_supports_versionmaps=yes, kde_supports_versionmaps=no)
+ LDFLAGS="$kde_save_LDFLAGS"
+ rm -f conftest.map
+ AM_CONDITIONAL(include_VERSION_SCRIPT,
+ [test "$kde_supports_versionmaps" = "yes" && test "$kde_use_debug_code" = "no"])
+
+ AC_MSG_RESULT($kde_supports_versionmaps)
+])
+
+AC_DEFUN([AM_PROG_OBJC],[
+AC_CHECK_PROGS(OBJC, gcc, gcc)
+test -z "$OBJC" && AC_MSG_ERROR([no acceptable objective-c gcc found in \$PATH])
+if test "x${OBJCFLAGS-unset}" = xunset; then
+ OBJCFLAGS="-g -O2"
+fi
+AC_SUBST(OBJCFLAGS)
+_AM_IF_OPTION([no-dependencies],, [_AM_DEPENDENCIES(OBJC)])
+])
+
+AC_DEFUN([KDE_CHECK_PERL],
+[
+ KDE_FIND_PATH(perl, PERL, [$bindir $exec_prefix/bin $prefix/bin], [
+ AC_MSG_ERROR([No Perl found in your $PATH.
+We need perl to generate some code.])
+ ])
+ AC_SUBST(PERL)
+])
+
+AC_DEFUN([KDE_CHECK_LARGEFILE],
+[
+AC_SYS_LARGEFILE
+if test "$ac_cv_sys_file_offset_bits" != no; then
+ CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits"
+fi
+
+if test "x$ac_cv_sys_large_files" != "xno"; then
+ CPPFLAGS="$CPPFLAGS -D_LARGE_FILES=1"
+fi
+
+])
+
+dnl A small extension to PKG_CHECK_MODULES (defined in pkg.m4.in)
+dnl which allows to search for libs that get installed into the KDE prefix.
+dnl
+dnl Syntax: KDE_PKG_CHECK_MODULES(KSTUFF, libkexif >= 0.2 glib = 1.3.4, action-if, action-not)
+dnl defines KSTUFF_LIBS, KSTUFF_CFLAGS, see pkg-config man page
+dnl also defines KSTUFF_PKG_ERRORS on error
+AC_DEFUN([KDE_PKG_CHECK_MODULES], [
+
+ PKG_CONFIG_PATH="$prefix/lib${kdelibsuff}/pkgconfig:$PKG_CONFIG_PATH"
+ if test "$prefix" != "$kde_libs_prefix"; then
+ PKG_CONFIG_PATH="$kde_libs_prefix/lib${kdelibsuff}/pkgconfig:$PKG_CONFIG_PATH"
+ fi
+ export PKG_CONFIG_PATH
+ PKG_CHECK_MODULES([$1],[$2],[$3],[$4])
+])
+
+
+dnl Check for PIE support in the compiler and linker
+AC_DEFUN([KDE_CHECK_PIE_SUPPORT],
+[
+ AC_CACHE_CHECK([for PIE support], kde_cv_val_pie_support,
+ [
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ safe_CXXFLAGS=$CXXFLAGS
+ safe_LDFLAGS=$LDFLAGS
+ CXXFLAGS="$CXXFLAGS -fPIE"
+ LDFLAGS="$LDFLAGS -pie"
+
+ AC_TRY_LINK([int foo;], [], [kde_cv_val_pie_support=yes], [kde_cv_val_pie_support=no])
+
+ CXXFLAGS=$safe_CXXFLAGS
+ LDFLAGS=$safe_LDFLAGS
+ AC_LANG_RESTORE
+ ])
+
+ AC_MSG_CHECKING(if enabling -pie/fPIE support)
+
+ AC_ARG_ENABLE(pie,
+ AC_HELP_STRING([--enable-pie],[platform supports PIE linking [default=detect]]),
+ [kde_has_pie_support=$enableval],
+ [kde_has_pie_support=detect])
+
+ if test "$kde_has_pie_support" = "detect"; then
+ kde_has_pie_support=$kde_cv_val_pie_support
+ fi
+
+ AC_MSG_RESULT([$kde_has_pie_support])
+
+ KDE_USE_FPIE=""
+ KDE_USE_PIE=""
+
+ AC_SUBST([KDE_USE_FPIE])
+ AC_SUBST([KDE_USE_PIE])
+
+ if test "$kde_has_pie_support" = "yes"; then
+ KDE_USE_FPIE="-fPIE"
+ KDE_USE_PIE="-pie"
+ fi
+])
+# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
+## Copyright 1996, 1997, 1998, 1999, 2000, 2001
+## Free Software Foundation, Inc.
+## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 2 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program; if not, write to the Free Software
+## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+##
+## As a special exception to the GNU General Public License, if you
+## distribute this file as part of a program that contains a
+## configuration script generated by Autoconf, you may include it under
+## the same distribution terms that you use for the rest of that program.
+
+# serial 47 AC_PROG_LIBTOOL
+
+
+# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED)
+# -----------------------------------------------------------
+# If this macro is not defined by Autoconf, define it here.
+m4_ifdef([AC_PROVIDE_IFELSE],
+ [],
+ [m4_define([AC_PROVIDE_IFELSE],
+ [m4_ifdef([AC_PROVIDE_$1],
+ [$2], [$3])])])
+
+
+# AC_PROG_LIBTOOL
+# ---------------
+AC_DEFUN([AC_PROG_LIBTOOL],
+[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl
+dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX
+dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX.
+ AC_PROVIDE_IFELSE([AC_PROG_CXX],
+ [AC_LIBTOOL_CXX],
+ [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX
+ ])])
+dnl And a similar setup for Fortran 77 support
+ AC_PROVIDE_IFELSE([AC_PROG_F77],
+ [AC_LIBTOOL_F77],
+ [define([AC_PROG_F77], defn([AC_PROG_F77])[AC_LIBTOOL_F77
+])])
+
+dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly.
+dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run
+dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both.
+ AC_PROVIDE_IFELSE([AC_PROG_GCJ],
+ [AC_LIBTOOL_GCJ],
+ [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
+ [AC_LIBTOOL_GCJ],
+ [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],
+ [AC_LIBTOOL_GCJ],
+ [ifdef([AC_PROG_GCJ],
+ [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])
+ ifdef([A][M_PROG_GCJ],
+ [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])])
+ ifdef([LT_AC_PROG_GCJ],
+ [define([LT_AC_PROG_GCJ],
+ defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])])
+])])# AC_PROG_LIBTOOL
+
+
+# _AC_PROG_LIBTOOL
+# ----------------
+AC_DEFUN([_AC_PROG_LIBTOOL],
+[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
+AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl
+AC_BEFORE([$0],[AC_LIBTOOL_F77])dnl
+AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl
+
+# This can be used to rebuild libtool when needed
+LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
+
+# Always use our own libtool.
+LIBTOOL='$(SHELL) $(top_builddir)/libtool --silent'
+AC_SUBST(LIBTOOL)dnl
+
+# Prevent multiple expansion
+define([AC_PROG_LIBTOOL], [])
+])# _AC_PROG_LIBTOOL
+
+
+# AC_LIBTOOL_SETUP
+# ----------------
+AC_DEFUN([AC_LIBTOOL_SETUP],
+[AC_PREREQ(2.50)dnl
+AC_REQUIRE([AC_ENABLE_SHARED])dnl
+AC_REQUIRE([AC_ENABLE_STATIC])dnl
+AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
+AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_PROG_LD])dnl
+AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
+AC_REQUIRE([AC_PROG_NM])dnl
+
+AC_REQUIRE([AC_PROG_LN_S])dnl
+AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
+# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers!
+AC_REQUIRE([AC_OBJEXT])dnl
+AC_REQUIRE([AC_EXEEXT])dnl
+dnl
+
+AC_LIBTOOL_SYS_MAX_CMD_LEN
+AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
+AC_LIBTOOL_OBJDIR
+
+AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
+_LT_AC_PROG_ECHO_BACKSLASH
+
+case $host_os in
+aix3*)
+ # AIX sometimes has problems with the GCC collect2 program. For some
+ # reason, if we set the COLLECT_NAMES environment variable, the problems
+ # vanish in a puff of smoke.
+ if test "X${COLLECT_NAMES+set}" != Xset; then
+ COLLECT_NAMES=
+ export COLLECT_NAMES
+ fi
+ ;;
+esac
+
+# Sed substitution that helps us do robust quoting. It backslashifies
+# metacharacters that are still active within double-quoted strings.
+Xsed='sed -e s/^X//'
+[sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g']
+
+# Same as above, but do not quote variable references.
+[double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g']
+
+# Sed substitution to delay expansion of an escaped shell variable in a
+# double_quote_subst'ed string.
+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
+
+# Sed substitution to avoid accidental globbing in evaled expressions
+no_glob_subst='s/\*/\\\*/g'
+
+# Constants:
+rm="rm -f"
+
+# Global variables:
+default_ofile=libtool
+can_build_shared=yes
+
+# All known linkers require a `.a' archive for static linking (except M$VC,
+# which needs '.lib').
+libext=a
+ltmain="$ac_aux_dir/ltmain.sh"
+ofile="$default_ofile"
+with_gnu_ld="$lt_cv_prog_gnu_ld"
+
+AC_CHECK_TOOL(AR, ar, false)
+AC_CHECK_TOOL(RANLIB, ranlib, :)
+AC_CHECK_TOOL(STRIP, strip, :)
+
+old_CC="$CC"
+old_CFLAGS="$CFLAGS"
+
+# Set sane defaults for various variables
+test -z "$AR" && AR=ar
+test -z "$AR_FLAGS" && AR_FLAGS=cru
+test -z "$AS" && AS=as
+test -z "$CC" && CC=cc
+test -z "$LTCC" && LTCC=$CC
+test -z "$DLLTOOL" && DLLTOOL=dlltool
+test -z "$LD" && LD=ld
+test -z "$LN_S" && LN_S="ln -s"
+test -z "$MAGIC_CMD" && MAGIC_CMD=file
+test -z "$NM" && NM=nm
+test -z "$SED" && SED=sed
+test -z "$OBJDUMP" && OBJDUMP=objdump
+test -z "$RANLIB" && RANLIB=:
+test -z "$STRIP" && STRIP=:
+test -z "$ac_objext" && ac_objext=o
+
+# Determine commands to create old-style static archives.
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
+old_postinstall_cmds='chmod 644 $oldlib'
+old_postuninstall_cmds=
+
+if test -n "$RANLIB"; then
+ case $host_os in
+ openbsd*)
+ old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
+ ;;
+ *)
+ old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
+ ;;
+ esac
+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
+fi
+
+# Only perform the check for file, if the check method requires it
+case $deplibs_check_method in
+file_magic*)
+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then
+ AC_PATH_MAGIC
+ fi
+ ;;
+esac
+
+AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
+AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
+enable_win32_dll=yes, enable_win32_dll=no)
+
+AC_ARG_ENABLE([libtool-lock],
+ [AC_HELP_STRING([--disable-libtool-lock],
+ [avoid locking (might break parallel builds)])])
+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+
+AC_ARG_WITH([pic],
+ [AC_HELP_STRING([--with-pic],
+ [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
+ [pic_mode="$withval"],
+ [pic_mode=default])
+test -z "$pic_mode" && pic_mode=default
+
+# Use C for the default configuration in the libtool script
+tagname=
+AC_LIBTOOL_LANG_C_CONFIG
+_LT_AC_TAGCONFIG
+])# AC_LIBTOOL_SETUP
+
+
+# _LT_AC_SYS_COMPILER
+# -------------------
+AC_DEFUN([_LT_AC_SYS_COMPILER],
+[AC_REQUIRE([AC_PROG_CC])dnl
+
+# If no C compiler was specified, use CC.
+LTCC=${LTCC-"$CC"}
+
+# Allow CC to be a program name with arguments.
+compiler=$CC
+])# _LT_AC_SYS_COMPILER
+
+
+# _LT_AC_SYS_LIBPATH_AIX
+# ----------------------
+# Links a minimal program and checks the executable
+# for the system default hardcoded library path. In most cases,
+# this is /usr/lib:/lib, but when the MPI compilers are used
+# the location of the communication and MPI libs are included too.
+# If we don't find anything, use the default library path according
+# to the aix ld manual.
+AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX],
+[AC_LINK_IFELSE(AC_LANG_PROGRAM,[
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
+}'`
+# Check for a 64-bit object if we didn't find anything.
+if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
+}'`; fi],[])
+if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+])# _LT_AC_SYS_LIBPATH_AIX
+
+
+# _LT_AC_SHELL_INIT(ARG)
+# ----------------------
+AC_DEFUN([_LT_AC_SHELL_INIT],
+[ifdef([AC_DIVERSION_NOTICE],
+ [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
+ [AC_DIVERT_PUSH(NOTICE)])
+$1
+AC_DIVERT_POP
+])# _LT_AC_SHELL_INIT
+
+
+# _LT_AC_PROG_ECHO_BACKSLASH
+# --------------------------
+# Add some code to the start of the generated configure script which
+# will find an echo command which doesn't interpret backslashes.
+AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
+[_LT_AC_SHELL_INIT([
+# Check that we are running under the correct shell.
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+case X$ECHO in
+X*--fallback-echo)
+ # Remove one level of quotation (which was required for Make).
+ ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
+ ;;
+esac
+
+echo=${ECHO-echo}
+if test "X[$]1" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+elif test "X[$]1" = X--fallback-echo; then
+ # Avoid inline document here, it may be left over
+ :
+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then
+ # Yippee, $echo works!
+ :
+else
+ # Restart under the correct shell.
+ exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
+fi
+
+if test "X[$]1" = X--fallback-echo; then
+ # used as fallback echo
+ shift
+ cat <<EOF
+[$]*
+EOF
+ exit 0
+fi
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
+
+if test -z "$ECHO"; then
+if test "X${echo_test_string+set}" != Xset; then
+# find a string as large as possible, as long as the shell can cope with it
+ for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
+ # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
+ if (echo_test_string="`eval $cmd`") 2>/dev/null &&
+ echo_test_string="`eval $cmd`" &&
+ (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
+ then
+ break
+ fi
+ done
+fi
+
+if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ :
+else
+ # The Solaris, AIX, and Digital Unix default echo programs unquote
+ # backslashes. This makes it impossible to quote backslashes using
+ # echo "$something" | sed 's/\\/\\\\/g'
+ #
+ # So, first we look for a working echo in the user's PATH.
+
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for dir in $PATH /usr/ucb; do
+ IFS="$lt_save_ifs"
+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ echo="$dir/echo"
+ break
+ fi
+ done
+ IFS="$lt_save_ifs"
+
+ if test "X$echo" = Xecho; then
+ # We didn't find a better echo, so look for alternatives.
+ if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ # This shell has a builtin print -r that does the trick.
+ echo='print -r'
+ elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
+ test "X$CONFIG_SHELL" != X/bin/ksh; then
+ # If we have ksh, try running configure again with it.
+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
+ export ORIGINAL_CONFIG_SHELL
+ CONFIG_SHELL=/bin/ksh
+ export CONFIG_SHELL
+ exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
+ else
+ # Try using printf.
+ echo='printf %s\n'
+ if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ # Cool, printf works
+ :
+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
+ test "X$echo_testing_string" = 'X\t' &&
+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
+ export CONFIG_SHELL
+ SHELL="$CONFIG_SHELL"
+ export SHELL
+ echo="$CONFIG_SHELL [$]0 --fallback-echo"
+ elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
+ test "X$echo_testing_string" = 'X\t' &&
+ echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+ test "X$echo_testing_string" = "X$echo_test_string"; then
+ echo="$CONFIG_SHELL [$]0 --fallback-echo"
+ else
+ # maybe with a smaller string...
+ prev=:
+
+ for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
+ if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
+ then
+ break
+ fi
+ prev="$cmd"
+ done
+
+ if test "$prev" != 'sed 50q "[$]0"'; then
+ echo_test_string=`eval $prev`
+ export echo_test_string
+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
+ else
+ # Oops. We lost completely, so just stick with echo.
+ echo=echo
+ fi
+ fi
+ fi
+ fi
+fi
+fi
+
+# Copy echo and quote the copy suitably for passing to libtool from
+# the Makefile, instead of quoting the original, which is used later.
+ECHO=$echo
+if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
+ ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
+fi
+
+AC_SUBST(ECHO)
+])])# _LT_AC_PROG_ECHO_BACKSLASH
+
+
+# _LT_AC_LOCK
+# -----------
+AC_DEFUN([_LT_AC_LOCK],
+[AC_ARG_ENABLE([libtool-lock],
+ [AC_HELP_STRING([--disable-libtool-lock],
+ [avoid locking (might break parallel builds)])])
+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+
+# Some flags need to be propagated to the compiler or linker for good
+# libtool support.
+case $host in
+ia64-*-hpux*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *ELF-32*)
+ HPUX_IA64_MODE="32"
+ ;;
+ *ELF-64*)
+ HPUX_IA64_MODE="64"
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+*-*-irix6*)
+ # Find out which ABI we are using.
+ echo '[#]line __oline__ "configure"' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ if test "$lt_cv_prog_gnu_ld" = yes; then
+ case `/usr/bin/file conftest.$ac_objext` in
+ *32-bit*)
+ LD="${LD-ld} -melf32bsmip"
+ ;;
+ *N32*)
+ LD="${LD-ld} -melf32bmipn32"
+ ;;
+ *64-bit*)
+ LD="${LD-ld} -melf64bmip"
+ ;;
+ esac
+ else
+ case `/usr/bin/file conftest.$ac_objext` in
+ *32-bit*)
+ LD="${LD-ld} -32"
+ ;;
+ *N32*)
+ LD="${LD-ld} -n32"
+ ;;
+ *64-bit*)
+ LD="${LD-ld} -64"
+ ;;
+ esac
+ fi
+ fi
+ rm -rf conftest*
+ ;;
+
+x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+ if AC_TRY_EVAL(ac_compile); then
+ case "`/usr/bin/file conftest.o`" in
+ *32-bit*)
+ LINUX_64_MODE="32"
+ case $host in
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_i386"
+ ;;
+ ppc64-*linux*)
+ LD="${LD-ld} -m elf32ppclinux"
+ ;;
+ s390x-*linux*)
+ LD="${LD-ld} -m elf_s390"
+ ;;
+ sparc64-*linux*)
+ LD="${LD-ld} -m elf32_sparc"
+ ;;
+ esac
+ ;;
+ *64-bit*)
+ LINUX_64_MODE="64"
+ case $host in
+ x86_64-*linux*)
+ LD="${LD-ld} -m elf_x86_64"
+ ;;
+ ppc*-*linux*|powerpc*-*linux*)
+ LD="${LD-ld} -m elf64ppc"
+ ;;
+ s390*-*linux*)
+ LD="${LD-ld} -m elf64_s390"
+ ;;
+ sparc*-*linux*)
+ LD="${LD-ld} -m elf64_sparc"
+ ;;
+ esac
+ ;;
+ esac
+ fi
+ rm -rf conftest*
+ ;;
+
+*-*-sco3.2v5*)
+ # On SCO OpenServer 5, we need -belf to get full-featured binaries.
+ SAVE_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -belf"
+ AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
+ [AC_LANG_PUSH(C)
+ AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
+ AC_LANG_POP])
+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
+ CFLAGS="$SAVE_CFLAGS"
+ fi
+ ;;
+AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
+[*-*-cygwin* | *-*-mingw* | *-*-pw32*)
+ AC_CHECK_TOOL(DLLTOOL, dlltool, false)
+ AC_CHECK_TOOL(AS, as, false)
+ AC_CHECK_TOOL(OBJDUMP, objdump, false)
+ ;;
+ ])
+esac
+
+need_locks="$enable_libtool_lock"
+
+])# _LT_AC_LOCK
+
+
+# AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
+# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
+# ----------------------------------------------------------------
+# Check whether the given compiler option works
+AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION],
+[AC_REQUIRE([LT_AC_PROG_SED])
+AC_CACHE_CHECK([$1], [$2],
+ [$2=no
+ ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
+ printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+ lt_compiler_flag="$3"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ # The option is referenced via a variable to avoid confusing sed.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$lt_compile" 2>conftest.err)
+ ac_status=$?
+ cat conftest.err >&AS_MESSAGE_LOG_FD
+ echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+ if (exit $ac_status) && test -s "$ac_outfile"; then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ if test ! -s conftest.err; then
+ $2=yes
+ fi
+ fi
+ $rm conftest*
+])
+
+if test x"[$]$2" = xyes; then
+ ifelse([$5], , :, [$5])
+else
+ ifelse([$6], , :, [$6])
+fi
+])# AC_LIBTOOL_COMPILER_OPTION
+
+
+# AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
+# [ACTION-SUCCESS], [ACTION-FAILURE])
+# ------------------------------------------------------------
+# Check whether the given compiler option works
+AC_DEFUN([AC_LIBTOOL_LINKER_OPTION],
+[AC_CACHE_CHECK([$1], [$2],
+ [$2=no
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS $3"
+ printf "$lt_simple_link_test_code" > conftest.$ac_ext
+ if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ if test -s conftest.err; then
+ # Append any errors to the config.log.
+ cat conftest.err 1>&AS_MESSAGE_LOG_FD
+ else
+ $2=yes
+ fi
+ fi
+ $rm conftest*
+ LDFLAGS="$save_LDFLAGS"
+])
+
+if test x"[$]$2" = xyes; then
+ ifelse([$4], , :, [$4])
+else
+ ifelse([$5], , :, [$5])
+fi
+])# AC_LIBTOOL_LINKER_OPTION
+
+
+# AC_LIBTOOL_SYS_MAX_CMD_LEN
+# --------------------------
+AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN],
+[# find the maximum length of command line arguments
+AC_MSG_CHECKING([the maximum length of command line arguments])
+AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
+ i=0
+ testring="ABCD"
+
+ case $build_os in
+ msdosdjgpp*)
+ # On DJGPP, this test can blow up pretty badly due to problems in libc
+ # (any single argument exceeding 2000 bytes causes a buffer overrun
+ # during glob expansion). Even if it were fixed, the result of this
+ # check would be larger than it should be.
+ lt_cv_sys_max_cmd_len=12288; # 12K is about right
+ ;;
+
+ gnu*)
+ # Under GNU Hurd, this test is not required because there is
+ # no limit to the length of command line arguments.
+ # Libtool will interpret -1 as no limit whatsoever
+ lt_cv_sys_max_cmd_len=-1;
+ ;;
+
+ cygwin* | mingw*)
+ # On Win9x/ME, this test blows up -- it succeeds, but takes
+ # about 5 minutes as the teststring grows exponentially.
+ # Worse, since 9x/ME are not pre-emptively multitasking,
+ # you end up with a "frozen" computer, even though with patience
+ # the test eventually succeeds (with a max line length of 256k).
+ # Instead, let's just punt: use the minimum linelength reported by
+ # all of the supported platforms: 8192 (on NT/2K/XP).
+ lt_cv_sys_max_cmd_len=8192;
+ ;;
+
+ *)
+ # If test is not a shell built-in, we'll probably end up computing a
+ # maximum length that is only half of the actual maximum length, but
+ # we can't tell.
+ while (test "X"`$CONFIG_SHELL [$]0 --fallback-echo "X$testring" 2>/dev/null` \
+ = "XX$testring") >/dev/null 2>&1 &&
+ new_result=`expr "X$testring" : ".*" 2>&1` &&
+ lt_cv_sys_max_cmd_len=$new_result &&
+ test $i != 17 # 1/2 MB should be enough
+ do
+ i=`expr $i + 1`
+ testring=$testring$testring
+ done
+ testring=
+ # Add a significant safety factor because C++ compilers can tack on massive
+ # amounts of additional arguments before passing them to the linker.
+ # It appears as though 1/2 is a usable value.
+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
+ ;;
+ esac
+])
+if test -n $lt_cv_sys_max_cmd_len ; then
+ AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
+else
+ AC_MSG_RESULT(none)
+fi
+])# AC_LIBTOOL_SYS_MAX_CMD_LEN
+
+
+# _LT_AC_CHECK_DLFCN
+# --------------------
+AC_DEFUN([_LT_AC_CHECK_DLFCN],
+[AC_CHECK_HEADERS(dlfcn.h)dnl
+])# _LT_AC_CHECK_DLFCN
+
+
+# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
+# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
+# ------------------------------------------------------------------
+AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
+[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
+if test "$cross_compiling" = yes; then :
+ [$4]
+else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<EOF
+[#line __oline__ "configure"
+#include "confdefs.h"
+
+#if HAVE_DLFCN_H
+#include <dlfcn.h>
+#endif
+
+#include <stdio.h>
+
+#ifdef RTLD_GLOBAL
+# define LT_DLGLOBAL RTLD_GLOBAL
+#else
+# ifdef DL_GLOBAL
+# define LT_DLGLOBAL DL_GLOBAL
+# else
+# define LT_DLGLOBAL 0
+# endif
+#endif
+
+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+ find out it does not work in some platform. */
+#ifndef LT_DLLAZY_OR_NOW
+# ifdef RTLD_LAZY
+# define LT_DLLAZY_OR_NOW RTLD_LAZY
+# else
+# ifdef DL_LAZY
+# define LT_DLLAZY_OR_NOW DL_LAZY
+# else
+# ifdef RTLD_NOW
+# define LT_DLLAZY_OR_NOW RTLD_NOW
+# else
+# ifdef DL_NOW
+# define LT_DLLAZY_OR_NOW DL_NOW
+# else
+# define LT_DLLAZY_OR_NOW 0
+# endif
+# endif
+# endif
+# endif
+#endif
+
+#ifdef __cplusplus
+extern "C" void exit (int);
+#endif
+
+void fnord() { int i=42;}
+int main ()
+{
+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+ int status = $lt_dlunknown;
+
+ if (self)
+ {
+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+ /* dlclose (self); */
+ }
+
+ exit (status);
+}]
+EOF
+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
+ (./conftest; exit; ) 2>/dev/null
+ lt_status=$?
+ case x$lt_status in
+ x$lt_dlno_uscore) $1 ;;
+ x$lt_dlneed_uscore) $2 ;;
+ x$lt_unknown|x*) $3 ;;
+ esac
+ else :
+ # compilation failed
+ $3
+ fi
+fi
+rm -fr conftest*
+])# _LT_AC_TRY_DLOPEN_SELF
+
+
+# AC_LIBTOOL_DLOPEN_SELF
+# -------------------
+AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
+[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
+if test "x$enable_dlopen" != xyes; then
+ enable_dlopen=unknown
+ enable_dlopen_self=unknown
+ enable_dlopen_self_static=unknown
+else
+ lt_cv_dlopen=no
+ lt_cv_dlopen_libs=
+
+ case $host_os in
+ beos*)
+ lt_cv_dlopen="load_add_on"
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=yes
+ ;;
+
+ mingw* | pw32*)
+ lt_cv_dlopen="LoadLibrary"
+ lt_cv_dlopen_libs=
+ ;;
+
+ cygwin*)
+ lt_cv_dlopen="dlopen"
+ lt_cv_dlopen_libs=
+ ;;
+
+ darwin*)
+ # if libdl is installed we need to link against it
+ AC_CHECK_LIB([dl], [dlopen],
+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
+ lt_cv_dlopen="dyld"
+ lt_cv_dlopen_libs=
+ lt_cv_dlopen_self=yes
+ ])
+ ;;
+
+ *)
+ AC_CHECK_FUNC([shl_load],
+ [lt_cv_dlopen="shl_load"],
+ [AC_CHECK_LIB([dld], [shl_load],
+ [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
+ [AC_CHECK_FUNC([dlopen],
+ [lt_cv_dlopen="dlopen"],
+ [AC_CHECK_LIB([dl], [dlopen],
+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
+ [AC_CHECK_LIB([svld], [dlopen],
+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
+ [AC_CHECK_LIB([dld], [dld_link],
+ [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
+ ])
+ ])
+ ])
+ ])
+ ])
+ ;;
+ esac
+
+ if test "x$lt_cv_dlopen" != xno; then
+ enable_dlopen=yes
+ else
+ enable_dlopen=no
+ fi
+
+ case $lt_cv_dlopen in
+ dlopen)
+ save_CPPFLAGS="$CPPFLAGS"
+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+
+ save_LDFLAGS="$LDFLAGS"
+ eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
+
+ save_LIBS="$LIBS"
+ LIBS="$lt_cv_dlopen_libs $LIBS"
+
+ AC_CACHE_CHECK([whether a program can dlopen itself],
+ lt_cv_dlopen_self, [dnl
+ _LT_AC_TRY_DLOPEN_SELF(
+ lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
+ lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
+ ])
+
+ if test "x$lt_cv_dlopen_self" = xyes; then
+ LDFLAGS="$LDFLAGS $link_static_flag"
+ AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
+ lt_cv_dlopen_self_static, [dnl
+ _LT_AC_TRY_DLOPEN_SELF(
+ lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
+ lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
+ ])
+ fi
+
+ CPPFLAGS="$save_CPPFLAGS"
+ LDFLAGS="$save_LDFLAGS"
+ LIBS="$save_LIBS"
+ ;;
+ esac
+
+ case $lt_cv_dlopen_self in
+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
+ *) enable_dlopen_self=unknown ;;
+ esac
+
+ case $lt_cv_dlopen_self_static in
+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
+ *) enable_dlopen_self_static=unknown ;;
+ esac
+fi
+])# AC_LIBTOOL_DLOPEN_SELF
+
+
+# AC_LIBTOOL_PROG_CC_C_O([TAGNAME])
+# ---------------------------------
+# Check to see if options -c and -o are simultaneously supported by compiler
+AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O],
+[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
+AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
+ [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
+ [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
+ $rm -r conftest 2>/dev/null
+ mkdir conftest
+ cd conftest
+ mkdir out
+ printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ # According to Tom Tromey, Ian Lance Taylor reported there are C compilers
+ # that will create temporary files in the current directory regardless of
+ # the output directory. Thus, making CWD read-only will cause this test
+ # to fail, enabling locking or at least warning the user not to do parallel
+ # builds.
+ chmod -w .
+
+ lt_compiler_flag="-o out/conftest2.$ac_objext"
+ # Insert the option either (1) after the last *FLAGS variable, or
+ # (2) before a word containing "conftest.", or (3) at the end.
+ # Note that $ac_compile itself does not contain backslashes and begins
+ # with a dollar sign (not a hyphen), so the echo should work correctly.
+ lt_compile=`echo "$ac_compile" | $SED \
+ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
+ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
+ -e 's:$: $lt_compiler_flag:'`
+ (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
+ (eval "$lt_compile" 2>out/conftest.err)
+ ac_status=$?
+ cat out/conftest.err >&AS_MESSAGE_LOG_FD
+ echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+ if (exit $ac_status) && test -s out/conftest2.$ac_objext
+ then
+ # The compiler can only warn and ignore the option if not recognized
+ # So say no if there are warnings
+ if test ! -s out/conftest.err; then
+ _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
+ fi
+ fi
+ chmod u+w .
+ $rm conftest* out/*
+ rmdir out
+ cd ..
+ rmdir conftest
+ $rm conftest*
+])
+])# AC_LIBTOOL_PROG_CC_C_O
+
+
+# AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME])
+# -----------------------------------------
+# Check to see if we can do hard links to lock some files if needed
+AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS],
+[AC_REQUIRE([_LT_AC_LOCK])dnl
+
+hard_links="nottested"
+if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
+ # do not overwrite the value of need_locks provided by the user
+ AC_MSG_CHECKING([if we can lock with hard links])
+ hard_links=yes
+ $rm conftest*
+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
+ touch conftest.a
+ ln conftest.a conftest.b 2>&5 || hard_links=no
+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
+ AC_MSG_RESULT([$hard_links])
+ if test "$hard_links" = no; then
+ AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
+ need_locks=warn
+ fi
+else
+ need_locks=no
+fi
+])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS
+
+
+# AC_LIBTOOL_OBJDIR
+# -----------------
+AC_DEFUN([AC_LIBTOOL_OBJDIR],
+[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
+[rm -f .libs 2>/dev/null
+mkdir .libs 2>/dev/null
+if test -d .libs; then
+ lt_cv_objdir=.libs
+else
+ # MS-DOS does not allow filenames that begin with a dot.
+ lt_cv_objdir=_libs
+fi
+rmdir .libs 2>/dev/null])
+objdir=$lt_cv_objdir
+])# AC_LIBTOOL_OBJDIR
+
+
+# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME])
+# ----------------------------------------------
+# Check hardcoding attributes.
+AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH],
+[AC_MSG_CHECKING([how to hardcode library paths into programs])
+_LT_AC_TAGVAR(hardcode_action, $1)=
+if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \
+ test -n "$_LT_AC_TAGVAR(runpath_var $1)" || \
+ test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)"="Xyes" ; then
+
+ # We can hardcode non-existant directories.
+ if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no &&
+ # If the only mechanism to avoid hardcoding is shlibpath_var, we
+ # have to relink, otherwise we might link with an installed library
+ # when we should be linking with a yet-to-be-installed one
+ ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
+ test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then
+ # Linking always hardcodes the temporary library directory.
+ _LT_AC_TAGVAR(hardcode_action, $1)=relink
+ else
+ # We can link without hardcoding, and we can hardcode nonexisting dirs.
+ _LT_AC_TAGVAR(hardcode_action, $1)=immediate
+ fi
+else
+ # We cannot hardcode anything, or else we can only hardcode existing
+ # directories.
+ _LT_AC_TAGVAR(hardcode_action, $1)=unsupported
+fi
+AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)])
+
+if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then
+ # Fast installation is not supported
+ enable_fast_install=no
+elif test "$shlibpath_overrides_runpath" = yes ||
+ test "$enable_shared" = no; then
+ # Fast installation is not necessary
+ enable_fast_install=needless
+fi
+])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH
+
+
+# AC_LIBTOOL_SYS_LIB_STRIP
+# ------------------------
+AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP],
+[striplib=
+old_striplib=
+AC_MSG_CHECKING([whether stripping libraries is possible])
+if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
+ test -z "$striplib" && striplib="$STRIP --strip-unneeded"
+ AC_MSG_RESULT([yes])
+else
+# FIXME - insert some real tests, host_os isn't really good enough
+ case $host_os in
+ darwin*)
+ if test -n "$STRIP" ; then
+ striplib="$STRIP -x"
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+fi
+ ;;
+ *)
+ AC_MSG_RESULT([no])
+ ;;
+ esac
+fi
+])# AC_LIBTOOL_SYS_LIB_STRIP
+
+
+# AC_LIBTOOL_SYS_DYNAMIC_LINKER
+# -----------------------------
+# PORTME Fill in your ld.so characteristics
+AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER],
+[AC_MSG_CHECKING([dynamic linker characteristics])
+library_names_spec=
+libname_spec='lib$name'
+soname_spec=
+shrext=".so"
+postinstall_cmds=
+postuninstall_cmds=
+finish_cmds=
+finish_eval=
+shlibpath_var=
+shlibpath_overrides_runpath=unknown
+version_type=none
+dynamic_linker="$host_os ld.so"
+sys_lib_dlsearch_path_spec="/lib /usr/lib"
+sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+need_lib_prefix=unknown
+hardcode_into_libs=no
+
+# when you set need_version to no, make sure it does not cause -set_version
+# flags to be left without arguments
+need_version=unknown
+
+case $host_os in
+aix3*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
+ shlibpath_var=LIBPATH
+
+ # AIX 3 has no versioning support, so we append a major version to the name.
+ soname_spec='${libname}${release}${shared_ext}$major'
+ ;;
+
+aix4* | aix5*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ hardcode_into_libs=yes
+ if test "$host_cpu" = ia64; then
+ # AIX 5 supports IA64
+ library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ else
+ # With GCC up to 2.95.x, collect2 would create an import file
+ # for dependence libraries. The import file would start with
+ # the line `#! .'. This would cause the generated library to
+ # depend on `.', always an invalid library. This was fixed in
+ # development snapshots of GCC prior to 3.0.
+ case $host_os in
+ aix4 | aix4.[[01]] | aix4.[[01]].*)
+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
+ echo ' yes '
+ echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
+ :
+ else
+ can_build_shared=no
+ fi
+ ;;
+ esac
+ # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
+ # soname into executable. Probably we can add versioning support to
+ # collect2, so additional links can be useful in future.
+ if test "$aix_use_runtimelinking" = yes; then
+ # If using run time linking (on AIX 4.2 or later) use lib<name>.so
+ # instead of lib<name>.a to let people know that these are not
+ # typical AIX shared libraries.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ else
+ # We preserve .a as extension for shared libraries through AIX4.2
+ # and later when we are not doing run time linking.
+ library_names_spec='${libname}${release}.a $libname.a'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ fi
+ shlibpath_var=LIBPATH
+ fi
+ ;;
+
+amigaos*)
+ library_names_spec='$libname.ixlibrary $libname.a'
+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
+ ;;
+
+beos*)
+ library_names_spec='${libname}${shared_ext}'
+ dynamic_linker="$host_os ld.so"
+ shlibpath_var=LIBRARY_PATH
+ ;;
+
+bsdi4*)
+ version_type=linux
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
+ sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
+ # the default ld.so.conf also contains /usr/contrib/lib and
+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
+ # libtool to hard-code these into programs
+ ;;
+
+cygwin* | mingw* | pw32*)
+ version_type=windows
+ shrext=".dll"
+ need_version=no
+ need_lib_prefix=no
+
+ case $GCC,$host_os in
+ yes,cygwin* | yes,mingw* | yes,pw32*)
+ library_names_spec='$libname.dll.a'
+ # DLL is installed to $(libdir)/../bin by postinstall_cmds
+ postinstall_cmds='base_file=`basename \${file}`~
+ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
+ dldir=$destdir/`dirname \$dlpath`~
+ test -d \$dldir || mkdir -p \$dldir~
+ $install_prog $dir/$dlname \$dldir/$dlname'
+ postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
+ dlpath=$dir/\$dldll~
+ $rm \$dlpath'
+ shlibpath_overrides_runpath=yes
+
+ case $host_os in
+ cygwin*)
+ # Cygwin DLLs use 'cyg' prefix rather than 'lib'
+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+ sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
+ ;;
+ mingw*)
+ # MinGW DLLs use traditional 'lib' prefix
+ soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+ sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+ if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then
+ # It is most probably a Windows format PATH printed by
+ # mingw gcc, but we are running on Cygwin. Gcc prints its search
+ # path with ; separators, and with drive letters. We can handle the
+ # drive letters (cygwin fileutils understands them), so leave them,
+ # especially as we might pass files found there to a mingw objdump,
+ # which wouldn't understand a cygwinified path. Ahh.
+ sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
+ else
+ sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
+ fi
+ ;;
+ pw32*)
+ # pw32 DLLs use 'pw' prefix rather than 'lib'
+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+ ;;
+ esac
+ ;;
+
+ *)
+ library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
+ ;;
+ esac
+ dynamic_linker='Win32 ld.exe'
+ # FIXME: first we should search . and the directory the executable is in
+ shlibpath_var=PATH
+ ;;
+
+darwin* | rhapsody*)
+ dynamic_linker="$host_os dyld"
+ version_type=darwin
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext'
+ soname_spec='${libname}${release}${major}$shared_ext'
+ shlibpath_overrides_runpath=yes
+ shlibpath_var=DYLD_LIBRARY_PATH
+ shrext='$(test .$module = .yes && echo .so || echo .dylib)'
+ # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
+ if test "$GCC" = yes; then
+ sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
+ else
+ sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib'
+ fi
+ sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
+ ;;
+
+dgux*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+freebsd1*)
+ dynamic_linker=no
+ ;;
+
+kfreebsd*-gnu*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ dynamic_linker='GNU ld.so'
+ ;;
+
+freebsd*)
+ objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+ version_type=freebsd-$objformat
+ case $version_type in
+ freebsd-elf*)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+ need_version=no
+ need_lib_prefix=no
+ ;;
+ freebsd-*)
+ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
+ need_version=yes
+ ;;
+ esac
+ shlibpath_var=LD_LIBRARY_PATH
+ case $host_os in
+ freebsd2*)
+ shlibpath_overrides_runpath=yes
+ ;;
+ freebsd3.[01]* | freebsdelf3.[01]*)
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+ *) # from 3.2 on
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+ esac
+ ;;
+
+gnu*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ hardcode_into_libs=yes
+ ;;
+
+hpux9* | hpux10* | hpux11*)
+ # Give a soname corresponding to the major version so that dld.sl refuses to
+ # link against other versions.
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ case "$host_cpu" in
+ ia64*)
+ shrext='.so'
+ hardcode_into_libs=yes
+ dynamic_linker="$host_os dld.so"
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ if test "X$HPUX_IA64_MODE" = X32; then
+ sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+ else
+ sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+ fi
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ ;;
+ hppa*64*)
+ shrext='.sl'
+ hardcode_into_libs=yes
+ dynamic_linker="$host_os dld.sl"
+ shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+ ;;
+ *)
+ shrext='.sl'
+ dynamic_linker="$host_os dld.sl"
+ shlibpath_var=SHLIB_PATH
+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ ;;
+ esac
+ # HP-UX runs *really* slowly unless shared libraries are mode 555.
+ postinstall_cmds='chmod 555 $lib'
+ ;;
+
+irix5* | irix6* | nonstopux*)
+ case $host_os in
+ nonstopux*) version_type=nonstopux ;;
+ *)
+ if test "$lt_cv_prog_gnu_ld" = yes; then
+ version_type=linux
+ else
+ version_type=irix
+ fi ;;
+ esac
+ need_lib_prefix=no
+ need_version=no
+ soname_spec='${libname}${release}${shared_ext}$major'
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
+ case $host_os in
+ irix5* | nonstopux*)
+ libsuff= shlibsuff=
+ ;;
+ *)
+ case $LD in # libtool.m4 will add one of these switches to LD
+ *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
+ libsuff= shlibsuff= libmagic=32-bit;;
+ *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
+ libsuff=32 shlibsuff=N32 libmagic=N32;;
+ *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
+ libsuff=64 shlibsuff=64 libmagic=64-bit;;
+ *) libsuff= shlibsuff= libmagic=never-match;;
+ esac
+ ;;
+ esac
+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
+ shlibpath_overrides_runpath=no
+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+ hardcode_into_libs=yes
+ ;;
+
+# No shared lib support for Linux oldld, aout, or coff.
+linux*oldld* | linux*aout* | linux*coff*)
+ dynamic_linker=no
+ ;;
+
+# This must be Linux ELF.
+linux*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+ libsuff=
+ if test "x$LINUX_64_MODE" = x64; then
+ # Some platforms are per default 64-bit, so there's no /lib64
+ if test -d /lib64; then
+ libsuff=64
+ fi
+ fi
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}"
+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ hardcode_into_libs=yes
+
+ # We used to test for /lib/ld.so.1 and disable shared libraries on
+ # powerpc, because MkLinux only supported shared libraries with the
+ # GNU dynamic linker. Since this was broken with cross compilers,
+ # most powerpc-linux boxes support dynamic linking these days and
+ # people can always --disable-shared, the test was removed, and we
+ # assume the GNU/Linux dynamic linker is in use.
+ dynamic_linker='GNU/Linux ld.so'
+ ;;
+
+netbsd*)
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+ dynamic_linker='NetBSD (a.out) ld.so'
+ else
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='NetBSD ld.elf_so'
+ fi
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ ;;
+
+newsos6)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ ;;
+
+nto-qnx*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ ;;
+
+openbsd*)
+ version_type=sunos
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ case $host_os in
+ openbsd2.[[89]] | openbsd2.[[89]].*)
+ shlibpath_overrides_runpath=no
+ ;;
+ *)
+ shlibpath_overrides_runpath=yes
+ ;;
+ esac
+ else
+ shlibpath_overrides_runpath=yes
+ fi
+ ;;
+
+os2*)
+ libname_spec='$name'
+ shrext=".dll"
+ need_lib_prefix=no
+ library_names_spec='$libname${shared_ext} $libname.a'
+ dynamic_linker='OS/2 ld.exe'
+ shlibpath_var=LIBPATH
+ ;;
+
+osf3* | osf4* | osf5*)
+ version_type=osf
+ need_lib_prefix=no
+ need_version=no
+ soname_spec='${libname}${release}${shared_ext}$major'
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
+ sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
+ ;;
+
+sco3.2v5*)
+ version_type=osf
+ soname_spec='${libname}${release}${shared_ext}$major'
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+solaris*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ hardcode_into_libs=yes
+ # ldd complains unless libraries are executable
+ postinstall_cmds='chmod +x $lib'
+ ;;
+
+sunos4*)
+ version_type=sunos
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+ if test "$with_gnu_ld" = yes; then
+ need_lib_prefix=no
+ fi
+ need_version=yes
+ ;;
+
+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ case $host_vendor in
+ sni)
+ shlibpath_overrides_runpath=no
+ need_lib_prefix=no
+ export_dynamic_flag_spec='${wl}-Blargedynsym'
+ runpath_var=LD_RUN_PATH
+ ;;
+ siemens)
+ need_lib_prefix=no
+ ;;
+ motorola)
+ need_lib_prefix=no
+ need_version=no
+ shlibpath_overrides_runpath=no
+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
+ ;;
+ esac
+ ;;
+
+sysv4*MP*)
+ if test -d /usr/nec ;then
+ version_type=linux
+ library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
+ soname_spec='$libname${shared_ext}.$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ fi
+ ;;
+
+uts4*)
+ version_type=linux
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ ;;
+
+*)
+ dynamic_linker=no
+ ;;
+esac
+AC_MSG_RESULT([$dynamic_linker])
+test "$dynamic_linker" = no && can_build_shared=no
+])# AC_LIBTOOL_SYS_DYNAMIC_LINKER
+
+
+# _LT_AC_TAGCONFIG
+# ----------------
+AC_DEFUN([_LT_AC_TAGCONFIG],
+[AC_ARG_WITH([tags],
+ [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@],
+ [include additional configurations @<:@automatic@:>@])],
+ [tagnames="$withval"])
+
+if test -f "$ltmain" && test -n "$tagnames"; then
+ if test ! -f "${ofile}"; then
+ AC_MSG_WARN([output file `$ofile' does not exist])
+ fi
+
+ if test -z "$LTCC"; then
+ eval "`$SHELL ${ofile} --config | grep '^LTCC='`"
+ if test -z "$LTCC"; then
+ AC_MSG_WARN([output file `$ofile' does not look like a libtool script])
+ else
+ AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile'])
+ fi
+ fi
+
+ # Extract list of available tagged configurations in $ofile.
+ # Note that this assumes the entire list is on one line.
+ available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'`
+
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for tagname in $tagnames; do
+ IFS="$lt_save_ifs"
+ # Check whether tagname contains only valid characters
+ case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in
+ "") ;;
+ *) AC_MSG_ERROR([invalid tag name: $tagname])
+ ;;
+ esac
+
+ if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null
+ then
+ AC_MSG_ERROR([tag name \"$tagname\" already exists])
+ fi
+
+ # Update the list of available tags.
+ if test -n "$tagname"; then
+ echo appending configuration tag \"$tagname\" to $ofile
+
+ case $tagname in
+ CXX)
+ if test -n "$CXX" && test "X$CXX" != "Xno"; then
+ AC_LIBTOOL_LANG_CXX_CONFIG
+ else
+ tagname=""
+ fi
+ ;;
+
+ F77)
+ if test -n "$F77" && test "X$F77" != "Xno"; then
+ AC_LIBTOOL_LANG_F77_CONFIG
+ else
+ tagname=""
+ fi
+ ;;
+
+ GCJ)
+ if test -n "$GCJ" && test "X$GCJ" != "Xno"; then
+ AC_LIBTOOL_LANG_GCJ_CONFIG
+ else
+ tagname=""
+ fi
+ ;;
+
+ RC)
+ AC_LIBTOOL_LANG_RC_CONFIG
+ ;;
+
+ *)
+ AC_MSG_ERROR([Unsupported tag name: $tagname])
+ ;;
+ esac
+
+ # Append the new tag name to the list of available tags.
+ if test -n "$tagname" ; then
+ available_tags="$available_tags $tagname"
+ fi
+ fi
+ done
+ IFS="$lt_save_ifs"
+
+ # Now substitute the updated list of available tags.
+ if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then
+ mv "${ofile}T" "$ofile"
+ chmod +x "$ofile"
+ else
+ rm -f "${ofile}T"
+ AC_MSG_ERROR([unable to update list of available tagged configurations.])
+ fi
+fi
+])# _LT_AC_TAGCONFIG
+
+
+# AC_LIBTOOL_DLOPEN
+# -----------------
+# enable checks for dlopen support
+AC_DEFUN([AC_LIBTOOL_DLOPEN],
+ [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])
+])# AC_LIBTOOL_DLOPEN
+
+
+# AC_LIBTOOL_WIN32_DLL
+# --------------------
+# declare package support for building win32 dll's
+AC_DEFUN([AC_LIBTOOL_WIN32_DLL],
+[AC_BEFORE([$0], [AC_LIBTOOL_SETUP])
+])# AC_LIBTOOL_WIN32_DLL
+
+
+# AC_ENABLE_SHARED([DEFAULT])
+# ---------------------------
+# implement the --enable-shared flag
+# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
+AC_DEFUN([AC_ENABLE_SHARED],
+[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
+AC_ARG_ENABLE([shared],
+ [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
+ [build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])],
+ [p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_shared=yes ;;
+ no) enable_shared=no ;;
+ *)
+ enable_shared=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_shared=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac],
+ [enable_shared=]AC_ENABLE_SHARED_DEFAULT)
+])# AC_ENABLE_SHARED
+
+
+# AC_DISABLE_SHARED
+# -----------------
+#- set the default shared flag to --disable-shared
+AC_DEFUN([AC_DISABLE_SHARED],
+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_ENABLE_SHARED(no)
+])# AC_DISABLE_SHARED
+
+
+# AC_ENABLE_STATIC([DEFAULT])
+# ---------------------------
+# implement the --enable-static flag
+# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
+AC_DEFUN([AC_ENABLE_STATIC],
+[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
+AC_ARG_ENABLE([static],
+ [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@],
+ [build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])],
+ [p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_static=yes ;;
+ no) enable_static=no ;;
+ *)
+ enable_static=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_static=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac],
+ [enable_static=]AC_ENABLE_STATIC_DEFAULT)
+])# AC_ENABLE_STATIC
+
+
+# AC_DISABLE_STATIC
+# -----------------
+# set the default static flag to --disable-static
+AC_DEFUN([AC_DISABLE_STATIC],
+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_ENABLE_STATIC(no)
+])# AC_DISABLE_STATIC
+
+
+# AC_ENABLE_FAST_INSTALL([DEFAULT])
+# ---------------------------------
+# implement the --enable-fast-install flag
+# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
+AC_DEFUN([AC_ENABLE_FAST_INSTALL],
+[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
+AC_ARG_ENABLE([fast-install],
+ [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
+ [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
+ [p=${PACKAGE-default}
+ case $enableval in
+ yes) enable_fast_install=yes ;;
+ no) enable_fast_install=no ;;
+ *)
+ enable_fast_install=no
+ # Look at the argument we got. We use all the common list separators.
+ lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+ for pkg in $enableval; do
+ IFS="$lt_save_ifs"
+ if test "X$pkg" = "X$p"; then
+ enable_fast_install=yes
+ fi
+ done
+ IFS="$lt_save_ifs"
+ ;;
+ esac],
+ [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT)
+])# AC_ENABLE_FAST_INSTALL
+
+
+# AC_DISABLE_FAST_INSTALL
+# -----------------------
+# set the default to --disable-fast-install
+AC_DEFUN([AC_DISABLE_FAST_INSTALL],
+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_ENABLE_FAST_INSTALL(no)
+])# AC_DISABLE_FAST_INSTALL
+
+
+# AC_LIBTOOL_PICMODE([MODE])
+# --------------------------
+# implement the --with-pic flag
+# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
+AC_DEFUN([AC_LIBTOOL_PICMODE],
+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+pic_mode=ifelse($#,1,$1,default)
+])# AC_LIBTOOL_PICMODE
+
+
+# AC_PROG_EGREP
+# -------------
+# This is predefined starting with Autoconf 2.54, so this conditional
+# definition can be removed once we require Autoconf 2.54 or later.
+m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP],
+[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep],
+ [if echo a | (grep -E '(a|b)') >/dev/null 2>&1
+ then ac_cv_prog_egrep='grep -E'
+ else ac_cv_prog_egrep='egrep'
+ fi])
+ EGREP=$ac_cv_prog_egrep
+ AC_SUBST([EGREP])
+])])
+
+
+# AC_PATH_TOOL_PREFIX
+# -------------------
+# find a file program which can recognise shared library
+AC_DEFUN([AC_PATH_TOOL_PREFIX],
+[AC_REQUIRE([AC_PROG_EGREP])dnl
+AC_MSG_CHECKING([for $1])
+AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
+[case $MAGIC_CMD in
+[[\\/*] | ?:[\\/]*])
+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+ ;;
+*)
+ lt_save_MAGIC_CMD="$MAGIC_CMD"
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+dnl $ac_dummy forces splitting on constant user-supplied paths.
+dnl POSIX.2 word splitting is done only on the output of word expansions,
+dnl not every word. This closes a longstanding sh security hole.
+ ac_dummy="ifelse([$2], , $PATH, [$2])"
+ for ac_dir in $ac_dummy; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f $ac_dir/$1; then
+ lt_cv_path_MAGIC_CMD="$ac_dir/$1"
+ if test -n "$file_magic_test_file"; then
+ case $deplibs_check_method in
+ "file_magic "*)
+ file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+ $EGREP "$file_magic_regex" > /dev/null; then
+ :
+ else
+ cat <<EOF 1>&2
+
+*** Warning: the command libtool uses to detect shared libraries,
+*** $file_magic_cmd, produces output that libtool cannot recognize.
+*** The result is that libtool may fail to recognize shared libraries
+*** as such. This will affect the creation of libtool libraries that
+*** depend on shared libraries, but programs linked with such libtool
+*** libraries will work regardless of this problem. Nevertheless, you
+*** may want to report the problem to your system manager and/or to
+*** bug-libtool@gnu.org
+
+EOF
+ fi ;;
+ esac
+ fi
+ break
+ fi
+ done
+ IFS="$lt_save_ifs"
+ MAGIC_CMD="$lt_save_MAGIC_CMD"
+ ;;
+esac])
+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+if test -n "$MAGIC_CMD"; then
+ AC_MSG_RESULT($MAGIC_CMD)
+else
+ AC_MSG_RESULT(no)
+fi
+])# AC_PATH_TOOL_PREFIX
+
+
+# AC_PATH_MAGIC
+# -------------
+# find a file program which can recognise a shared library
+AC_DEFUN([AC_PATH_MAGIC],
+[AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
+if test -z "$lt_cv_path_MAGIC_CMD"; then
+ if test -n "$ac_tool_prefix"; then
+ AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
+ else
+ MAGIC_CMD=:
+ fi
+fi
+])# AC_PATH_MAGIC
+
+
+# AC_PROG_LD
+# ----------
+# find the pathname to the GNU or non-GNU linker
+AC_DEFUN([AC_PROG_LD],
+[AC_ARG_WITH([gnu-ld],
+ [AC_HELP_STRING([--with-gnu-ld],
+ [assume the C compiler uses GNU ld @<:@default=no@:>@])],
+ [test "$withval" = no || with_gnu_ld=yes],
+ [with_gnu_ld=no])
+AC_REQUIRE([LT_AC_PROG_SED])dnl
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+ac_prog=ld
+if test "$GCC" = yes; then
+ # Check if gcc -print-prog-name=ld gives a path.
+ AC_MSG_CHECKING([for ld used by $CC])
+ case $host in
+ *-*-mingw*)
+ # gcc leaves a trailing carriage return which upsets mingw
+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+ *)
+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+ esac
+ case $ac_prog in
+ # Accept absolute paths.
+ [[\\/]]* | ?:[[\\/]]*)
+ re_direlt='/[[^/]][[^/]]*/\.\./'
+ # Canonicalize the pathname of ld
+ ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'`
+ while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
+ ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"`
+ done
+ test -z "$LD" && LD="$ac_prog"
+ ;;
+ "")
+ # If it fails, then pretend we aren't using GCC.
+ ac_prog=ld
+ ;;
+ *)
+ # If it is relative, then search for the first ld in PATH.
+ with_gnu_ld=unknown
+ ;;
+ esac
+elif test "$with_gnu_ld" = yes; then
+ AC_MSG_CHECKING([for GNU ld])
+else
+ AC_MSG_CHECKING([for non-GNU ld])
+fi
+AC_CACHE_VAL(lt_cv_path_LD,
+[if test -z "$LD"; then
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+ lt_cv_path_LD="$ac_dir/$ac_prog"
+ # Check to see if the program is GNU ld. I'd rather use --version,
+ # but apparently some GNU ld's only accept -v.
+ # Break only if it was the GNU/non-GNU ld that we prefer.
+ case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
+ *GNU* | *'with BFD'*)
+ test "$with_gnu_ld" != no && break
+ ;;
+ *)
+ test "$with_gnu_ld" != yes && break
+ ;;
+ esac
+ fi
+ done
+ IFS="$lt_save_ifs"
+else
+ lt_cv_path_LD="$LD" # Let the user override the test with a path.
+fi])
+LD="$lt_cv_path_LD"
+if test -n "$LD"; then
+ AC_MSG_RESULT($LD)
+else
+ AC_MSG_RESULT(no)
+fi
+test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
+AC_PROG_LD_GNU
+])# AC_PROG_LD
+
+
+# AC_PROG_LD_GNU
+# --------------
+AC_DEFUN([AC_PROG_LD_GNU],
+[AC_REQUIRE([AC_PROG_EGREP])dnl
+AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
+[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
+case `$LD -v 2>&1 </dev/null` in
+*GNU* | *'with BFD'*)
+ lt_cv_prog_gnu_ld=yes
+ ;;
+*)
+ lt_cv_prog_gnu_ld=no
+ ;;
+esac])
+with_gnu_ld=$lt_cv_prog_gnu_ld
+])# AC_PROG_LD_GNU
+
+
+# AC_PROG_LD_RELOAD_FLAG
+# ----------------------
+# find reload flag for linker
+# -- PORTME Some linkers may need a different reload flag.
+AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
+[AC_CACHE_CHECK([for $LD option to reload object files],
+ lt_cv_ld_reload_flag,
+ [lt_cv_ld_reload_flag='-r'])
+reload_flag=$lt_cv_ld_reload_flag
+case $reload_flag in
+"" | " "*) ;;
+*) reload_flag=" $reload_flag" ;;
+esac
+reload_cmds='$LD$reload_flag -o $output$reload_objs'
+])# AC_PROG_LD_RELOAD_FLAG
+
+
+# AC_DEPLIBS_CHECK_METHOD
+# -----------------------
+# how to check for library dependencies
+# -- PORTME fill in with the dynamic library characteristics
+AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
+[AC_CACHE_CHECK([how to recognise dependent libraries],
+lt_cv_deplibs_check_method,
+[lt_cv_file_magic_cmd='$MAGIC_CMD'
+lt_cv_file_magic_test_file=
+lt_cv_deplibs_check_method='unknown'
+# Need to set the preceding variable on all platforms that support
+# interlibrary dependencies.
+# 'none' -- dependencies not supported.
+# `unknown' -- same as none, but documents that we really don't know.
+# 'pass_all' -- all dependencies passed with no checks.
+# 'test_compile' -- check by making test program.
+# 'file_magic [[regex]]' -- check by looking for files in library path
+# which responds to the $file_magic_cmd with a given extended regex.
+# If you have `file' or equivalent on your system and you're not sure
+# whether `pass_all' will *always* work, you probably want this one.
+
+case $host_os in
+aix4* | aix5*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+beos*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+bsdi4*)
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
+ lt_cv_file_magic_cmd='/usr/bin/file -L'
+ lt_cv_file_magic_test_file=/shlib/libc.so
+ ;;
+
+cygwin*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+mingw* | pw32*)
+ # win32_libid is a shell function defined in ltmain.sh
+ lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+ lt_cv_file_magic_cmd='win32_libid'
+ ;;
+
+darwin* | rhapsody*)
+ # this will be overwritten by pass_all, but leave it in just in case
+ lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
+ lt_cv_file_magic_cmd='/usr/bin/file -L'
+ case "$host_os" in
+ rhapsody* | darwin1.[[012]])
+ lt_cv_file_magic_test_file=`/System/Library/Frameworks/System.framework/System`
+ ;;
+ *) # Darwin 1.3 on
+ lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
+ ;;
+ esac
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+freebsd* | kfreebsd*-gnu)
+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
+ case $host_cpu in
+ i*86 )
+ # Not sure whether the presence of OpenBSD here was a mistake.
+ # Let's accept both of them until this is cleared up.
+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library'
+ lt_cv_file_magic_cmd=/usr/bin/file
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
+ ;;
+ esac
+ else
+ lt_cv_deplibs_check_method=pass_all
+ fi
+ ;;
+
+gnu*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+hpux10.20* | hpux11*)
+ lt_cv_file_magic_cmd=/usr/bin/file
+ case "$host_cpu" in
+ ia64*)
+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
+ lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
+ ;;
+ hppa*64*)
+ [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
+ lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
+ ;;
+ *)
+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
+ lt_cv_file_magic_test_file=/usr/lib/libc.sl
+ ;;
+ esac
+ ;;
+
+irix5* | irix6* | nonstopux*)
+ case $host_os in
+ irix5* | nonstopux*)
+ # this will be overridden with pass_all, but let us keep it just in case
+ lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
+ ;;
+ *)
+ case $LD in
+ *-32|*"-32 ") libmagic=32-bit;;
+ *-n32|*"-n32 ") libmagic=N32;;
+ *-64|*"-64 ") libmagic=64-bit;;
+ *) libmagic=never-match;;
+ esac
+ # this will be overridden with pass_all, but let us keep it just in case
+ lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1"
+ ;;
+ esac
+ lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+# This must be Linux ELF.
+linux*)
+ case $host_cpu in
+ alpha* | hppa* | i*86 | ia64* | m68* | mips* | powerpc* | sparc* | s390* | sh* | x86_64* )
+ lt_cv_deplibs_check_method=pass_all ;;
+ # the debian people say, arm and glibc 2.3.1 works for them with pass_all
+ arm* )
+ lt_cv_deplibs_check_method=pass_all ;;
+ *)
+ # glibc up to 2.1.1 does not perform some relocations on ARM
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;;
+ esac
+ lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
+ ;;
+
+netbsd*)
+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
+ else
+ lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
+ fi
+ ;;
+
+newos6*)
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
+ lt_cv_file_magic_cmd=/usr/bin/file
+ lt_cv_file_magic_test_file=/usr/lib/libnls.so
+ ;;
+
+nto-qnx*)
+ lt_cv_deplibs_check_method=unknown
+ ;;
+
+openbsd*)
+ lt_cv_file_magic_cmd=/usr/bin/file
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object'
+ else
+ lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
+ fi
+ ;;
+
+osf3* | osf4* | osf5*)
+ # this will be overridden with pass_all, but let us keep it just in case
+ lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
+ lt_cv_file_magic_test_file=/shlib/libc.so
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+sco3.2v5*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+solaris*)
+ lt_cv_deplibs_check_method=pass_all
+ lt_cv_file_magic_test_file=/lib/libc.so
+ ;;
+
+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+ case $host_vendor in
+ motorola)
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
+ ;;
+ ncr)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ sequent)
+ lt_cv_file_magic_cmd='/bin/file'
+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
+ ;;
+ sni)
+ lt_cv_file_magic_cmd='/bin/file'
+ lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
+ lt_cv_file_magic_test_file=/lib/libc.so
+ ;;
+ siemens)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+ esac
+ ;;
+
+sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7* | sysv4*uw2*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+esac
+])
+file_magic_cmd=$lt_cv_file_magic_cmd
+deplibs_check_method=$lt_cv_deplibs_check_method
+test -z "$deplibs_check_method" && deplibs_check_method=unknown
+])# AC_DEPLIBS_CHECK_METHOD
+
+
+# AC_PROG_NM
+# ----------
+# find the pathname to a BSD-compatible name lister
+AC_DEFUN([AC_PROG_NM],
+[AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM,
+[if test -n "$NM"; then
+ # Let the user override the test.
+ lt_cv_path_NM="$NM"
+else
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+ for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
+ IFS="$lt_save_ifs"
+ test -z "$ac_dir" && ac_dir=.
+ tmp_nm="$ac_dir/${ac_tool_prefix}nm"
+ if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+ # Check to see if the nm accepts a BSD-compat flag.
+ # Adding the `sed 1q' prevents false positives on HP-UX, which says:
+ # nm: unknown option "B" ignored
+ # Tru64's nm complains that /dev/null is an invalid object file
+ case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
+ */dev/null* | *'Invalid file or object type'*)
+ lt_cv_path_NM="$tmp_nm -B"
+ break
+ ;;
+ *)
+ case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
+ */dev/null*)
+ lt_cv_path_NM="$tmp_nm -p"
+ break
+ ;;
+ *)
+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
+ continue # so that we can try to find one that supports BSD flags
+ ;;
+ esac
+ esac
+ fi
+ done
+ IFS="$lt_save_ifs"
+ test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
+fi])
+NM="$lt_cv_path_NM"
+])# AC_PROG_NM
+
+
+# AC_CHECK_LIBM
+# -------------
+# check for math library
+AC_DEFUN([AC_CHECK_LIBM],
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+LIBM=
+case $host in
+*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
+ # These system don't have libm, or don't need it
+ ;;
+*-ncr-sysv4.3*)
+ AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
+ AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
+ ;;
+*)
+ AC_CHECK_LIB(m, cos, LIBM="-lm")
+ ;;
+esac
+])# AC_CHECK_LIBM
+
+
+# AC_LIBLTDL_CONVENIENCE([DIRECTORY])
+# -----------------------------------
+# sets LIBLTDL to the link flags for the libltdl convenience library and
+# LTDLINCL to the include flags for the libltdl header and adds
+# --enable-ltdl-convenience to the configure arguments. Note that LIBLTDL
+# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If
+# DIRECTORY is not provided, it is assumed to be `libltdl'. LIBLTDL will
+# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed with
+# '${top_srcdir}/' (note the single quotes!). If your package is not
+# flat and you're not using automake, define top_builddir and
+# top_srcdir appropriately in the Makefiles.
+AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+ case $enable_ltdl_convenience in
+ no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
+ "") enable_ltdl_convenience=yes
+ ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
+ esac
+ LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
+ LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
+ # For backwards non-gettext consistent compatibility...
+ INCLTDL="$LTDLINCL"
+])# AC_LIBLTDL_CONVENIENCE
+
+
+# AC_LIBLTDL_INSTALLABLE([DIRECTORY])
+# -----------------------------------
+# sets LIBLTDL to the link flags for the libltdl installable library and
+# LTDLINCL to the include flags for the libltdl header and adds
+# --enable-ltdl-install to the configure arguments. Note that LIBLTDL
+# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If
+# DIRECTORY is not provided and an installed libltdl is not found, it is
+# assumed to be `libltdl'. LIBLTDL will be prefixed with '${top_builddir}/'
+# and LTDLINCL will be prefixed with '${top_srcdir}/' (note the single
+# quotes!). If your package is not flat and you're not using automake,
+# define top_builddir and top_srcdir appropriately in the Makefiles.
+# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
+AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+ AC_CHECK_LIB(ltdl, lt_dlinit,
+ [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
+ [if test x"$enable_ltdl_install" = xno; then
+ AC_MSG_WARN([libltdl not installed, but installation disabled])
+ else
+ enable_ltdl_install=yes
+ fi
+ ])
+ if test x"$enable_ltdl_install" = x"yes"; then
+ ac_configure_args="$ac_configure_args --enable-ltdl-install"
+ LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
+ LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
+ else
+ ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
+ LIBLTDL="-lltdl"
+ LTDLINCL=
+ fi
+ # For backwards non-gettext consistent compatibility...
+ INCLTDL="$LTDLINCL"
+])# AC_LIBLTDL_INSTALLABLE
+
+
+# AC_LIBTOOL_CXX
+# --------------
+# enable support for C++ libraries
+AC_DEFUN([AC_LIBTOOL_CXX],
+[AC_REQUIRE([_LT_AC_LANG_CXX])
+])# AC_LIBTOOL_CXX
+
+
+# _LT_AC_LANG_CXX
+# ---------------
+AC_DEFUN([_LT_AC_LANG_CXX],
+[AC_REQUIRE([AC_PROG_CXX])
+AC_REQUIRE([AC_PROG_CXXCPP])
+_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX])
+])# _LT_AC_LANG_CXX
+
+
+# AC_LIBTOOL_F77
+# --------------
+# enable support for Fortran 77 libraries
+AC_DEFUN([AC_LIBTOOL_F77],
+[AC_REQUIRE([_LT_AC_LANG_F77])
+])# AC_LIBTOOL_F77
+
+
+# _LT_AC_LANG_F77
+# ---------------
+AC_DEFUN([_LT_AC_LANG_F77],
+[AC_REQUIRE([AC_PROG_F77])
+_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77])
+])# _LT_AC_LANG_F77
+
+
+# AC_LIBTOOL_GCJ
+# --------------
+# enable support for GCJ libraries
+AC_DEFUN([AC_LIBTOOL_GCJ],
+[AC_REQUIRE([_LT_AC_LANG_GCJ])
+])# AC_LIBTOOL_GCJ
+
+
+# _LT_AC_LANG_GCJ
+# ---------------
+AC_DEFUN([_LT_AC_LANG_GCJ],
+[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[],
+ [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[],
+ [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[],
+ [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])],
+ [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])],
+ [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])])
+_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ])
+])# _LT_AC_LANG_GCJ
+
+
+# AC_LIBTOOL_RC
+# --------------
+# enable support for Windows resource files
+AC_DEFUN([AC_LIBTOOL_RC],
+[AC_REQUIRE([LT_AC_PROG_RC])
+_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC])
+])# AC_LIBTOOL_RC
+
+
+# AC_LIBTOOL_LANG_C_CONFIG
+# ------------------------
+# Ensure that the configuration vars for the C compiler are
+# suitably defined. Those variables are subsequently used by
+# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
+AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG])
+AC_DEFUN([_LT_AC_LANG_C_CONFIG],
+[lt_save_CC="$CC"
+AC_LANG_PUSH(C)
+
+# Source file extension for C test sources.
+ac_ext=c
+
+# Object file extension for compiled C test sources.
+objext=o
+_LT_AC_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code="int some_variable = 0;\n"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code='int main(){return(0);}\n'
+
+_LT_AC_SYS_COMPILER
+
+#
+# Check for any special shared library compilation flags.
+#
+_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)=
+if test "$GCC" = no; then
+ case $host_os in
+ sco3.2v5*)
+ _LT_AC_TAGVAR(lt_prog_cc_shlib, $1)='-belf'
+ ;;
+ esac
+fi
+if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then
+ AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries])
+ if echo "$old_CC $old_CFLAGS " | grep "[[ ]]$]_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[[ ]]" >/dev/null; then :
+ else
+ AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure])
+ _LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no
+ fi
+fi
+
+
+#
+# Check to make sure the static flag actually works.
+#
+AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $_LT_AC_TAGVAR(lt_prog_compiler_static, $1) works],
+ _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1),
+ $_LT_AC_TAGVAR(lt_prog_compiler_static, $1),
+ [],
+ [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
+
+
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
+AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
+AC_LIBTOOL_PROG_COMPILER_PIC($1)
+AC_LIBTOOL_PROG_CC_C_O($1)
+AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
+AC_LIBTOOL_PROG_LD_SHLIBS($1)
+AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
+AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
+AC_LIBTOOL_SYS_LIB_STRIP
+AC_LIBTOOL_DLOPEN_SELF($1)
+
+# Report which librarie types wil actually be built
+AC_MSG_CHECKING([if libtool supports shared libraries])
+AC_MSG_RESULT([$can_build_shared])
+
+AC_MSG_CHECKING([whether to build shared libraries])
+test "$can_build_shared" = "no" && enable_shared=no
+
+# On AIX, shared libraries and static libraries use the same namespace, and
+# are all built from PIC.
+case "$host_os" in
+aix3*)
+ test "$enable_shared" = yes && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+
+aix4*)
+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+ test "$enable_shared" = yes && enable_static=no
+ fi
+ ;;
+ darwin* | rhapsody*)
+ if test "$GCC" = yes; then
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ case "$host_os" in
+ rhapsody* | darwin1.[[012]])
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress'
+ ;;
+ *) # Darwin 1.3 on
+ if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress'
+ else
+ case ${MACOSX_DEPLOYMENT_TARGET} in
+ 10.[012])
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress'
+ ;;
+ 10.*)
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup'
+ ;;
+ esac
+ fi
+ ;;
+ esac
+ output_verbose_link_cmd='echo'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring'
+ _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs'
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience'
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+ else
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+esac
+AC_MSG_RESULT([$enable_shared])
+
+AC_MSG_CHECKING([whether to build static libraries])
+# Make sure either enable_shared or enable_static is yes.
+test "$enable_shared" = yes || enable_static=yes
+AC_MSG_RESULT([$enable_static])
+
+AC_LIBTOOL_CONFIG($1)
+
+AC_LANG_POP
+CC="$lt_save_CC"
+])# AC_LIBTOOL_LANG_C_CONFIG
+
+
+# AC_LIBTOOL_LANG_CXX_CONFIG
+# --------------------------
+# Ensure that the configuration vars for the C compiler are
+# suitably defined. Those variables are subsequently used by
+# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
+AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)])
+AC_DEFUN([_LT_AC_LANG_CXX_CONFIG],
+[AC_LANG_PUSH(C++)
+AC_REQUIRE([AC_PROG_CXX])
+AC_REQUIRE([AC_PROG_CXXCPP])
+
+_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+_LT_AC_TAGVAR(allow_undefined_flag, $1)=
+_LT_AC_TAGVAR(always_export_symbols, $1)=no
+_LT_AC_TAGVAR(archive_expsym_cmds, $1)=
+_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
+_LT_AC_TAGVAR(hardcode_direct, $1)=no
+_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
+_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
+_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
+_LT_AC_TAGVAR(hardcode_automatic, $1)=no
+_LT_AC_TAGVAR(module_cmds, $1)=
+_LT_AC_TAGVAR(module_expsym_cmds, $1)=
+_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
+_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_AC_TAGVAR(no_undefined_flag, $1)=
+_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
+_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+
+# Dependencies to place before and after the object being linked:
+_LT_AC_TAGVAR(predep_objects, $1)=
+_LT_AC_TAGVAR(postdep_objects, $1)=
+_LT_AC_TAGVAR(predeps, $1)=
+_LT_AC_TAGVAR(postdeps, $1)=
+_LT_AC_TAGVAR(compiler_lib_search_path, $1)=
+
+# Source file extension for C++ test sources.
+ac_ext=cc
+
+# Object file extension for compiled C++ test sources.
+objext=o
+_LT_AC_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code="int some_variable = 0;\n"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code='int main(int, char *[]) { return(0); }\n'
+
+# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+_LT_AC_SYS_COMPILER
+
+# Allow CC to be a program name with arguments.
+lt_save_CC=$CC
+lt_save_LD=$LD
+lt_save_GCC=$GCC
+GCC=$GXX
+lt_save_with_gnu_ld=$with_gnu_ld
+lt_save_path_LD=$lt_cv_path_LD
+if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
+ lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
+else
+ unset lt_cv_prog_gnu_ld
+fi
+if test -n "${lt_cv_path_LDCXX+set}"; then
+ lt_cv_path_LD=$lt_cv_path_LDCXX
+else
+ unset lt_cv_path_LD
+fi
+test -z "${LDCXX+set}" || LD=$LDCXX
+CC=${CXX-"c++"}
+compiler=$CC
+_LT_AC_TAGVAR(compiler, $1)=$CC
+cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'`
+
+# We don't want -fno-exception wen compiling C++ code, so set the
+# no_builtin_flag separately
+if test "$GXX" = yes; then
+ _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
+else
+ _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
+fi
+
+if test "$GXX" = yes; then
+ # Set up default GNU C++ configuration
+
+ AC_PROG_LD
+
+ # Check if GNU C++ uses GNU ld as the underlying linker, since the
+ # archiving commands below assume that GNU ld is being used.
+ if test "$with_gnu_ld" = yes; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+
+ # If archive_cmds runs LD, not CC, wlarc should be empty
+ # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
+ # investigate it a little bit more. (MM)
+ wlarc='${wl}'
+
+ # ancient GNU ld didn't support --whole-archive et. al.
+ if eval "`$CC -print-prog-name=ld` --help 2>&1" | \
+ grep 'no-whole-archive' > /dev/null; then
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+ else
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
+ fi
+ else
+ with_gnu_ld=no
+ wlarc=
+
+ # A generic and very simple default shared library creation
+ # command for GNU C++ for the case where it uses the native
+ # linker, instead of GNU ld. If possible, this setting should
+ # overridden to take advantage of the native linker features on
+ # the platform it is being used on.
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $lib'
+ fi
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
+
+else
+ GXX=no
+ with_gnu_ld=no
+ wlarc=
+fi
+
+# PORTME: fill in a description of your system's C++ link characteristics
+AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+_LT_AC_TAGVAR(ld_shlibs, $1)=yes
+case $host_os in
+ aix3*)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ aix4* | aix5*)
+ if test "$host_cpu" = ia64; then
+ # On IA64, the linker does run time linking by default, so we don't
+ # have to do anything special.
+ aix_use_runtimelinking=no
+ exp_sym_flag='-Bexport'
+ no_entry_flag=""
+ else
+ # KDE requires run time linking. Make it the default.
+ aix_use_runtimelinking=yes
+ exp_sym_flag='-bexport'
+ no_entry_flag='-bnoentry'
+ fi
+
+ # When large executables or shared objects are built, AIX ld can
+ # have problems creating the table of contents. If linking a library
+ # or program results in "error TOC overflow" add -mminimal-toc to
+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+
+ _LT_AC_TAGVAR(archive_cmds, $1)=''
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+
+ if test "$GXX" = yes; then
+ case $host_os in aix4.[012]|aix4.[012].*)
+ # We only want to do this on AIX 4.2 and lower, the check
+ # below for broken collect2 doesn't work under 4.3+
+ collect2name=`${CC} -print-prog-name=collect2`
+ if test -f "$collect2name" && \
+ strings "$collect2name" | grep resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ else
+ # We have old collect2
+ _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
+ # It fails to find uninstalled libraries when the uninstalled
+ # path is not listed in the libpath. Setting hardcode_minus_L
+ # to unsupported forces relinking
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
+ fi
+ esac
+ shared_flag='-shared'
+ else
+ # not using gcc
+ if test "$host_cpu" = ia64; then
+ # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+ # chokes on -Wl,-G. The following line is correct:
+ shared_flag='-G'
+ else
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag='-qmkshrobj ${wl}-G'
+ else
+ shared_flag='-qmkshrobj'
+ fi
+ fi
+ fi
+
+ # Let the compiler handle the export list.
+ _LT_AC_TAGVAR(always_export_symbols, $1)=no
+ if test "$aix_use_runtimelinking" = yes; then
+ # Warning - without using the other runtime loading flags (-brtl),
+ # -berok will link without error, but may produce a broken library.
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok'
+ # Determine the default libpath from the value encoded in an empty executable.
+ _LT_AC_SYS_LIBPATH_AIX
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+
+ _LT_AC_TAGVAR(archive_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '" $shared_flag"
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ else
+ if test "$host_cpu" = ia64; then
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
+ else
+ # Determine the default libpath from the value encoded in an empty executable.
+ _LT_AC_SYS_LIBPATH_AIX
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+ # Warning - without using the other run time loading flags,
+ # -berok will link without error, but may produce a broken library.
+ _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
+ # -bexpall does not export symbols beginning with underscore (_)
+ _LT_AC_TAGVAR(always_export_symbols, $1)=yes
+ # Exported symbols can be pulled into shared objects from archives
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
+ # This is similar to how AIX traditionally builds it's shared libraries.
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+ fi
+ fi
+ ;;
+ chorus*)
+ case $cc_basename in
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+
+ cygwin* | mingw* | pw32*)
+ # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
+ # as there is no search path for DLLs.
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=no
+ _LT_AC_TAGVAR(always_export_symbols, $1)=no
+ _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+
+ if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
+ # If the export-symbols file already is a .def file (1st line
+ # is EXPORTS), use it as is; otherwise, prepend...
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
+ cp $export_symbols $output_objdir/$soname.def;
+ else
+ echo EXPORTS > $output_objdir/$soname.def;
+ cat $export_symbols >> $output_objdir/$soname.def;
+ fi~
+ $CC -shared -nostdlib $output_objdir/$soname.def $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
+ else
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ darwin* | rhapsody*)
+ if test "$GXX" = yes; then
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ case "$host_os" in
+ rhapsody* | darwin1.[[012]])
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress'
+ ;;
+ *) # Darwin 1.3 on
+ if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress'
+ else
+ case ${MACOSX_DEPLOYMENT_TARGET} in
+ 10.[012])
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress'
+ ;;
+ 10.*)
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup'
+ ;;
+ esac
+ fi
+ ;;
+ esac
+ lt_int_apple_cc_single_mod=no
+ output_verbose_link_cmd='echo'
+ if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then
+ lt_int_apple_cc_single_mod=yes
+ fi
+ if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring'
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring'
+ fi
+ _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs'
+
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ else
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ fi
+ _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience'
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+ else
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ dgux*)
+ case $cc_basename in
+ ec++)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ ghcx)
+ # Green Hills C++ Compiler
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+ freebsd[12]*)
+ # C++ shared libraries reported to be fairly broken before switch to ELF
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ freebsd-elf*)
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ ;;
+ freebsd* | kfreebsd*-gnu)
+ # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
+ # conventions
+ _LT_AC_TAGVAR(ld_shlibs, $1)=yes
+ ;;
+ gnu*)
+ ;;
+ hpux9*)
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+ # but as the default
+ # location of the library.
+
+ case $cc_basename in
+ CC)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ aCC)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | egrep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ ;;
+ *)
+ if test "$GXX" = yes; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ else
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+ hpux10*|hpux11*)
+ if test $with_gnu_ld = no; then
+ case "$host_cpu" in
+ hppa*64*)
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+ ;;
+ ia64*)
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ ;;
+ *)
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ ;;
+ esac
+ fi
+ case "$host_cpu" in
+ hppa*64*)
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+ ia64*)
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+ # but as the default
+ # location of the library.
+ ;;
+ *)
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
+ # but as the default
+ # location of the library.
+ ;;
+ esac
+
+ case $cc_basename in
+ CC)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ aCC)
+ case "$host_cpu" in
+ hppa*64*|ia64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
+ ;;
+ *)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects'
+ ;;
+ esac
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ ;;
+ *)
+ if test "$GXX" = yes; then
+ if test $with_gnu_ld = no; then
+ case "$host_cpu" in
+ ia64*|hppa*64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
+ ;;
+ *)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects'
+ ;;
+ esac
+ fi
+ else
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+ irix5* | irix6*)
+ case $cc_basename in
+ CC)
+ # SGI C++
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
+
+ # Archives containing C++ object files must be created using
+ # "CC -ar", where "CC" is the IRIX C++ compiler. This is
+ # necessary to make sure instantiated templates are included
+ # in the archive.
+ _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
+ ;;
+ *)
+ if test "$GXX" = yes; then
+ if test "$with_gnu_ld" = no; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib'
+ fi
+ fi
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+ esac
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+ ;;
+ linux*)
+ case $cc_basename in
+ KCC)
+ # Kuck and Associates, Inc. (KAI) C++ Compiler
+
+ # KCC will only create a shared library if the output file
+ # ends with ".so" (or ".sl" for HP-UX), so rename the library
+ # to its proper name (with version) after linking.
+ _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir'
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+
+ # Archives containing C++ object files must be created using
+ # "CC -Bstatic", where "CC" is the KAI C++ compiler.
+ _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
+ ;;
+ icpc)
+ # Intel C++
+ with_gnu_ld=yes
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+ ;;
+ cxx)
+ # Compaq C++
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
+
+ runpath_var=LD_RUN_PATH
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ ;;
+ esac
+ ;;
+ lynxos*)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ m88k*)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ mvs*)
+ case $cc_basename in
+ cxx)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+ netbsd*)
+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
+ wlarc=
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ fi
+ # Workaround some broken pre-1.5 toolchains
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
+ ;;
+ osf3*)
+ case $cc_basename in
+ KCC)
+ # Kuck and Associates, Inc. (KAI) C++ Compiler
+
+ # KCC will only create a shared library if the output file
+ # ends with ".so" (or ".sl" for HP-UX), so rename the library
+ # to its proper name (with version) after linking.
+ _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib'
+
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Archives containing C++ object files must be created using
+ # "CC -Bstatic", where "CC" is the KAI C++ compiler.
+ _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
+
+ ;;
+ RCC)
+ # Rational C++ 2.4.1
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ cxx)
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
+
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ ;;
+ *)
+ if test "$GXX" = yes && test "$with_gnu_ld" = no; then
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
+
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
+
+ else
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+ osf4* | osf5*)
+ case $cc_basename in
+ KCC)
+ # Kuck and Associates, Inc. (KAI) C++ Compiler
+
+ # KCC will only create a shared library if the output file
+ # ends with ".so" (or ".sl" for HP-UX), so rename the library
+ # to its proper name (with version) after linking.
+ _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib'
+
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Archives containing C++ object files must be created using
+ # the KAI C++ compiler.
+ _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs'
+ ;;
+ RCC)
+ # Rational C++ 2.4.1
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ cxx)
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
+ echo "-hidden">> $lib.exp~
+ $CC -shared$allow_undefined_flag $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -msym -soname $soname -Wl,-input -Wl,$lib.exp `test -n "$verstring" && echo -set_version $verstring` -update_registry $objdir/so_locations -o $lib~
+ $rm $lib.exp'
+
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ ;;
+ *)
+ if test "$GXX" = yes && test "$with_gnu_ld" = no; then
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
+
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
+
+ else
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+ ;;
+ psos*)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ sco*)
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ case $cc_basename in
+ CC)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+ sunos4*)
+ case $cc_basename in
+ CC)
+ # Sun C++ 4.x
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ lcc)
+ # Lucid
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+ solaris*)
+ case $cc_basename in
+ CC)
+ # Sun C++ 4.2, 5.x and Centerline C++
+ _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+ $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$rm $lib.exp'
+
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ case $host_os in
+ solaris2.[0-5] | solaris2.[0-5].*) ;;
+ *)
+ # The C++ compiler is used as linker so we must use $wl
+ # flag to pass the commands to the underlying system
+ # linker.
+ # Supported since Solaris 2.6 (maybe 2.5.1?)
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+ ;;
+ esac
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ #
+ # There doesn't appear to be a way to prevent this compiler from
+ # explicitly linking system object files so we need to strip them
+ # from the output so that they don't get included in the library
+ # dependencies.
+ output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[[LR]]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+
+ # Archives containing C++ object files must be created using
+ # "CC -xar", where "CC" is the Sun C++ compiler. This is
+ # necessary to make sure instantiated templates are included
+ # in the archive.
+ _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
+ ;;
+ gcx)
+ # Green Hills C++ Compiler
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib'
+
+ # The C++ compiler must be used to create the archive.
+ _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
+ ;;
+ *)
+ # GNU C++ compiler with Solaris linker
+ if test "$GXX" = yes && test "$with_gnu_ld" = no; then
+ _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
+ if $CC --version | grep -v '^2\.7' > /dev/null; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+ $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$rm $lib.exp'
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\""
+ else
+ # g++ 2.7 appears to require `-G' NOT `-shared' on this
+ # platform.
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+ $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$rm $lib.exp'
+
+ # Commands to make compiler produce verbose output that lists
+ # what "hidden" libraries, object files and flags are used when
+ # linking a shared library.
+ output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\""
+ fi
+
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
+ fi
+ ;;
+ esac
+ ;;
+ sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*)
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ ;;
+ tandem*)
+ case $cc_basename in
+ NCC)
+ # NonStop-UX NCC 3.20
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ ;;
+ vxworks*)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ *)
+ # FIXME: insert proper C++ library support
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+esac
+AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
+test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+
+_LT_AC_TAGVAR(GCC, $1)="$GXX"
+_LT_AC_TAGVAR(LD, $1)="$LD"
+
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
+AC_LIBTOOL_POSTDEP_PREDEP($1)
+AC_LIBTOOL_PROG_COMPILER_PIC($1)
+AC_LIBTOOL_PROG_CC_C_O($1)
+AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
+AC_LIBTOOL_PROG_LD_SHLIBS($1)
+AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
+AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
+AC_LIBTOOL_SYS_LIB_STRIP
+AC_LIBTOOL_DLOPEN_SELF($1)
+
+AC_LIBTOOL_CONFIG($1)
+
+AC_LANG_POP
+CC=$lt_save_CC
+LDCXX=$LD
+LD=$lt_save_LD
+GCC=$lt_save_GCC
+with_gnu_ldcxx=$with_gnu_ld
+with_gnu_ld=$lt_save_with_gnu_ld
+lt_cv_path_LDCXX=$lt_cv_path_LD
+lt_cv_path_LD=$lt_save_path_LD
+lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
+lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
+])# AC_LIBTOOL_LANG_CXX_CONFIG
+
+# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME])
+# ------------------------
+# Figure out "hidden" library dependencies from verbose
+# compiler output when linking a shared library.
+# Parse the compiler output and extract the necessary
+# objects, libraries and library flags.
+AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[
+dnl we can't use the lt_simple_compile_test_code here,
+dnl because it contains code intended for an executable,
+dnl not a library. It's possible we should let each
+dnl tag define a new lt_????_link_test_code variable,
+dnl but it's only used here...
+ifelse([$1],[],[cat > conftest.$ac_ext <<EOF
+int a;
+void foo (void) { a = 0; }
+EOF
+],[$1],[CXX],[cat > conftest.$ac_ext <<EOF
+class Foo
+{
+public:
+ Foo (void) { a = 0; }
+private:
+ int a;
+};
+EOF
+],[$1],[F77],[cat > conftest.$ac_ext <<EOF
+ subroutine foo
+ implicit none
+ integer*4 a
+ a=0
+ return
+ end
+EOF
+],[$1],[GCJ],[cat > conftest.$ac_ext <<EOF
+public class foo {
+ private int a;
+ public void bar (void) {
+ a = 0;
+ }
+};
+EOF
+])
+dnl Parse the compiler output and extract the necessary
+dnl objects, libraries and library flags.
+if AC_TRY_EVAL(ac_compile); then
+ # Parse the compiler output and extract the necessary
+ # objects, libraries and library flags.
+
+ # Sentinel used to keep track of whether or not we are before
+ # the conftest object file.
+ pre_test_object_deps_done=no
+
+ # The `*' in the case matches for architectures that use `case' in
+ # $output_verbose_cmd can trigger glob expansion during the loop
+ # eval without this substitution.
+ output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`"
+
+ for p in `eval $output_verbose_link_cmd`; do
+ case $p in
+
+ -L* | -R* | -l*)
+ # Some compilers place space between "-{L,R}" and the path.
+ # Remove the space.
+ if test $p = "-L" \
+ || test $p = "-R"; then
+ prev=$p
+ continue
+ else
+ prev=
+ fi
+
+ if test "$pre_test_object_deps_done" = no; then
+ case $p in
+ -L* | -R*)
+ # Internal compiler library paths should come after those
+ # provided the user. The postdeps already come after the
+ # user supplied libs so there is no need to process them.
+ if test -z "$_LT_AC_TAGVAR(compiler_lib_search_path, $1)"; then
+ _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
+ else
+ _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${_LT_AC_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
+ fi
+ ;;
+ # The "-l" case would never come before the object being
+ # linked, so don't bother handling this case.
+ esac
+ else
+ if test -z "$_LT_AC_TAGVAR(postdeps, $1)"; then
+ _LT_AC_TAGVAR(postdeps, $1)="${prev}${p}"
+ else
+ _LT_AC_TAGVAR(postdeps, $1)="${_LT_AC_TAGVAR(postdeps, $1)} ${prev}${p}"
+ fi
+ fi
+ ;;
+
+ *.$objext|*.$libext)
+ # This assumes that the test object file only shows up
+ # once in the compiler output.
+ if test "$p" = "conftest.$objext"; then
+ pre_test_object_deps_done=yes
+ continue
+ fi
+
+ if test "$pre_test_object_deps_done" = no; then
+ if test -z "$_LT_AC_TAGVAR(predep_objects, $1)"; then
+ _LT_AC_TAGVAR(predep_objects, $1)="$p"
+ else
+ _LT_AC_TAGVAR(predep_objects, $1)="$_LT_AC_TAGVAR(predep_objects, $1) $p"
+ fi
+ else
+ if test -z "$_LT_AC_TAGVAR(postdep_objects, $1)"; then
+ _LT_AC_TAGVAR(postdep_objects, $1)="$p"
+ else
+ _LT_AC_TAGVAR(postdep_objects, $1)="$_LT_AC_TAGVAR(postdep_objects, $1) $p"
+ fi
+ fi
+ ;;
+
+ *) ;; # Ignore the rest.
+
+ esac
+ done
+
+ # Clean up.
+ rm -f a.out a.exe
+else
+ echo "libtool.m4: error: problem compiling $1 test program"
+fi
+
+$rm -f confest.$objext
+
+case " $_LT_AC_TAGVAR(postdeps, $1) " in
+*" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;;
+esac
+])# AC_LIBTOOL_POSTDEP_PREDEP
+
+# AC_LIBTOOL_LANG_F77_CONFIG
+# ------------------------
+# Ensure that the configuration vars for the C compiler are
+# suitably defined. Those variables are subsequently used by
+# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
+AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG], [_LT_AC_LANG_F77_CONFIG(F77)])
+AC_DEFUN([_LT_AC_LANG_F77_CONFIG],
+[AC_REQUIRE([AC_PROG_F77])
+AC_LANG_PUSH(Fortran 77)
+
+_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+_LT_AC_TAGVAR(allow_undefined_flag, $1)=
+_LT_AC_TAGVAR(always_export_symbols, $1)=no
+_LT_AC_TAGVAR(archive_expsym_cmds, $1)=
+_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
+_LT_AC_TAGVAR(hardcode_direct, $1)=no
+_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
+_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
+_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
+_LT_AC_TAGVAR(hardcode_automatic, $1)=no
+_LT_AC_TAGVAR(module_cmds, $1)=
+_LT_AC_TAGVAR(module_expsym_cmds, $1)=
+_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
+_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
+_LT_AC_TAGVAR(no_undefined_flag, $1)=
+_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
+_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+
+# Source file extension for f77 test sources.
+ac_ext=f
+
+# Object file extension for compiled f77 test sources.
+objext=o
+_LT_AC_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code=" subroutine t\n return\n end\n"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code=" program t\n end\n"
+
+# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+_LT_AC_SYS_COMPILER
+
+# Allow CC to be a program name with arguments.
+lt_save_CC="$CC"
+CC=${F77-"f77"}
+compiler=$CC
+_LT_AC_TAGVAR(compiler, $1)=$CC
+cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'`
+
+AC_MSG_CHECKING([if libtool supports shared libraries])
+AC_MSG_RESULT([$can_build_shared])
+
+AC_MSG_CHECKING([whether to build shared libraries])
+test "$can_build_shared" = "no" && enable_shared=no
+
+# On AIX, shared libraries and static libraries use the same namespace, and
+# are all built from PIC.
+case "$host_os" in
+aix3*)
+ test "$enable_shared" = yes && enable_static=no
+ if test -n "$RANLIB"; then
+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ postinstall_cmds='$RANLIB $lib'
+ fi
+ ;;
+aix4*)
+ test "$enable_shared" = yes && enable_static=no
+ ;;
+esac
+AC_MSG_RESULT([$enable_shared])
+
+AC_MSG_CHECKING([whether to build static libraries])
+# Make sure either enable_shared or enable_static is yes.
+test "$enable_shared" = yes || enable_static=yes
+AC_MSG_RESULT([$enable_static])
+
+test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+
+_LT_AC_TAGVAR(GCC, $1)="$G77"
+_LT_AC_TAGVAR(LD, $1)="$LD"
+
+AC_LIBTOOL_PROG_COMPILER_PIC($1)
+AC_LIBTOOL_PROG_CC_C_O($1)
+AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
+AC_LIBTOOL_PROG_LD_SHLIBS($1)
+AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
+AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
+AC_LIBTOOL_SYS_LIB_STRIP
+
+
+AC_LIBTOOL_CONFIG($1)
+
+AC_LANG_POP
+CC="$lt_save_CC"
+])# AC_LIBTOOL_LANG_F77_CONFIG
+
+
+# AC_LIBTOOL_LANG_GCJ_CONFIG
+# --------------------------
+# Ensure that the configuration vars for the C compiler are
+# suitably defined. Those variables are subsequently used by
+# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
+AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG], [_LT_AC_LANG_GCJ_CONFIG(GCJ)])
+AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG],
+[AC_LANG_SAVE
+
+# Source file extension for Java test sources.
+ac_ext=java
+
+# Object file extension for compiled Java test sources.
+objext=o
+_LT_AC_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code="class foo {}\n"
+
+# Code to be used in simple link tests
+lt_simple_link_test_code='public class conftest { public static void main(String[] argv) {}; }\n'
+
+# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+_LT_AC_SYS_COMPILER
+
+# Allow CC to be a program name with arguments.
+lt_save_CC="$CC"
+CC=${GCJ-"gcj"}
+compiler=$CC
+_LT_AC_TAGVAR(compiler, $1)=$CC
+
+# GCJ did not exist at the time GCC didn't implicitly link libc in.
+_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+
+## CAVEAT EMPTOR:
+## There is no encapsulation within the following macros, do not change
+## the running order or otherwise move them around unless you know exactly
+## what you are doing...
+AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
+AC_LIBTOOL_PROG_COMPILER_PIC($1)
+AC_LIBTOOL_PROG_CC_C_O($1)
+AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
+AC_LIBTOOL_PROG_LD_SHLIBS($1)
+AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
+AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
+AC_LIBTOOL_SYS_LIB_STRIP
+AC_LIBTOOL_DLOPEN_SELF($1)
+
+AC_LIBTOOL_CONFIG($1)
+
+AC_LANG_RESTORE
+CC="$lt_save_CC"
+])# AC_LIBTOOL_LANG_GCJ_CONFIG
+
+
+# AC_LIBTOOL_LANG_RC_CONFIG
+# --------------------------
+# Ensure that the configuration vars for the Windows resource compiler are
+# suitably defined. Those variables are subsequently used by
+# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
+AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG], [_LT_AC_LANG_RC_CONFIG(RC)])
+AC_DEFUN([_LT_AC_LANG_RC_CONFIG],
+[AC_LANG_SAVE
+
+# Source file extension for RC test sources.
+ac_ext=rc
+
+# Object file extension for compiled RC test sources.
+objext=o
+_LT_AC_TAGVAR(objext, $1)=$objext
+
+# Code to be used in simple compile tests
+lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }\n'
+
+# Code to be used in simple link tests
+lt_simple_link_test_code="$lt_simple_compile_test_code"
+
+# ltmain only uses $CC for tagged configurations so make sure $CC is set.
+_LT_AC_SYS_COMPILER
+
+# Allow CC to be a program name with arguments.
+lt_save_CC="$CC"
+CC=${RC-"windres"}
+compiler=$CC
+_LT_AC_TAGVAR(compiler, $1)=$CC
+_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
+
+AC_LIBTOOL_CONFIG($1)
+
+AC_LANG_RESTORE
+CC="$lt_save_CC"
+])# AC_LIBTOOL_LANG_RC_CONFIG
+
+
+# AC_LIBTOOL_CONFIG([TAGNAME])
+# ----------------------------
+# If TAGNAME is not passed, then create an initial libtool script
+# with a default configuration from the untagged config vars. Otherwise
+# add code to config.status for appending the configuration named by
+# TAGNAME from the matching tagged config vars.
+AC_DEFUN([AC_LIBTOOL_CONFIG],
+[# The else clause should only fire when bootstrapping the
+# libtool distribution, otherwise you forgot to ship ltmain.sh
+# with your package, and you will get complaints that there are
+# no rules to generate ltmain.sh.
+if test -f "$ltmain"; then
+ # See if we are running on zsh, and set the options which allow our commands through
+ # without removal of \ escapes.
+ if test -n "${ZSH_VERSION+set}" ; then
+ setopt NO_GLOB_SUBST
+ fi
+ # Now quote all the things that may contain metacharacters while being
+ # careful not to overquote the AC_SUBSTed values. We take copies of the
+ # variables and quote the copies for generation of the libtool script.
+ for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM SED SHELL \
+ libname_spec library_names_spec soname_spec extract_expsyms_cmds \
+ old_striplib striplib file_magic_cmd finish_cmds finish_eval \
+ deplibs_check_method reload_flag reload_cmds need_locks \
+ lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \
+ lt_cv_sys_global_symbol_to_c_name_address \
+ sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
+ old_postinstall_cmds old_postuninstall_cmds \
+ _LT_AC_TAGVAR(compiler, $1) \
+ _LT_AC_TAGVAR(CC, $1) \
+ _LT_AC_TAGVAR(LD, $1) \
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1) \
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1) \
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1) \
+ _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) \
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1) \
+ _LT_AC_TAGVAR(thread_safe_flag_spec, $1) \
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1) \
+ _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) \
+ _LT_AC_TAGVAR(old_archive_cmds, $1) \
+ _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) \
+ _LT_AC_TAGVAR(predep_objects, $1) \
+ _LT_AC_TAGVAR(postdep_objects, $1) \
+ _LT_AC_TAGVAR(predeps, $1) \
+ _LT_AC_TAGVAR(postdeps, $1) \
+ _LT_AC_TAGVAR(compiler_lib_search_path, $1) \
+ _LT_AC_TAGVAR(archive_cmds, $1) \
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1) \
+ _LT_AC_TAGVAR(postinstall_cmds, $1) \
+ _LT_AC_TAGVAR(postuninstall_cmds, $1) \
+ _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) \
+ _LT_AC_TAGVAR(allow_undefined_flag, $1) \
+ _LT_AC_TAGVAR(no_undefined_flag, $1) \
+ _LT_AC_TAGVAR(export_symbols_cmds, $1) \
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) \
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) \
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1) \
+ _LT_AC_TAGVAR(hardcode_automatic, $1) \
+ _LT_AC_TAGVAR(module_cmds, $1) \
+ _LT_AC_TAGVAR(module_expsym_cmds, $1) \
+ _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) \
+ _LT_AC_TAGVAR(exclude_expsyms, $1) \
+ _LT_AC_TAGVAR(include_expsyms, $1); do
+
+ case $var in
+ _LT_AC_TAGVAR(old_archive_cmds, $1) | \
+ _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) | \
+ _LT_AC_TAGVAR(archive_cmds, $1) | \
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1) | \
+ _LT_AC_TAGVAR(module_cmds, $1) | \
+ _LT_AC_TAGVAR(module_expsym_cmds, $1) | \
+ _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) | \
+ _LT_AC_TAGVAR(export_symbols_cmds, $1) | \
+ extract_expsyms_cmds | reload_cmds | finish_cmds | \
+ postinstall_cmds | postuninstall_cmds | \
+ old_postinstall_cmds | old_postuninstall_cmds | \
+ sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
+ # Double-quote double-evaled strings.
+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
+ ;;
+ *)
+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
+ ;;
+ esac
+ done
+
+ case $lt_echo in
+ *'\[$]0 --fallback-echo"')
+ lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\[$]0 --fallback-echo"[$]/[$]0 --fallback-echo"/'`
+ ;;
+ esac
+
+ifelse([$1], [],
+ [cfgfile="${ofile}T"
+ trap "$rm \"$cfgfile\"; exit 1" 1 2 15
+ $rm -f "$cfgfile"
+ AC_MSG_NOTICE([creating $ofile])],
+ [cfgfile="$ofile"])
+
+ cat <<__EOF__ >> "$cfgfile"
+ifelse([$1], [],
+[#! $SHELL
+
+# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
+# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
+#
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
+# Free Software Foundation, Inc.
+#
+# This file is part of GNU Libtool:
+# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# A sed program that does not truncate output.
+SED=$lt_SED
+
+# Sed that helps us avoid accidentally triggering echo(1) options like -n.
+Xsed="$SED -e s/^X//"
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
+
+# The names of the tagged configurations supported by this script.
+available_tags=
+
+# ### BEGIN LIBTOOL CONFIG],
+[# ### BEGIN LIBTOOL TAG CONFIG: $tagname])
+
+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+
+# Shell to use when invoking shell scripts.
+SHELL=$lt_SHELL
+
+# Whether or not to build shared libraries.
+build_libtool_libs=$enable_shared
+
+# Whether or not to build static libraries.
+build_old_libs=$enable_static
+
+# Whether or not to add -lc for building shared libraries.
+build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)
+
+# Whether or not to disallow shared libs when runtime libs are static
+allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)
+
+# Whether or not to optimize for fast installation.
+fast_install=$enable_fast_install
+
+# The host system.
+host_alias=$host_alias
+host=$host
+
+# An echo program that does not interpret backslashes.
+echo=$lt_echo
+
+# The archiver.
+AR=$lt_AR
+AR_FLAGS=$lt_AR_FLAGS
+
+# A C compiler.
+LTCC=$lt_LTCC
+
+# A language-specific compiler.
+CC=$lt_[]_LT_AC_TAGVAR(compiler, $1)
+
+# Is the compiler the GNU C compiler?
+with_gcc=$_LT_AC_TAGVAR(GCC, $1)
+
+# An ERE matcher.
+EGREP=$lt_EGREP
+
+# The linker used to build libraries.
+LD=$lt_[]_LT_AC_TAGVAR(LD, $1)
+
+# Whether we need hard or soft links.
+LN_S=$lt_LN_S
+
+# A BSD-compatible nm program.
+NM=$lt_NM
+
+# A symbol stripping program
+STRIP=$STRIP
+
+# Used to examine libraries when file_magic_cmd begins "file"
+MAGIC_CMD=$MAGIC_CMD
+
+# Used on cygwin: DLL creation program.
+DLLTOOL="$DLLTOOL"
+
+# Used on cygwin: object dumper.
+OBJDUMP="$OBJDUMP"
+
+# Used on cygwin: assembler.
+AS="$AS"
+
+# The name of the directory that contains temporary libtool files.
+objdir=$objdir
+
+# How to create reloadable object files.
+reload_flag=$lt_reload_flag
+reload_cmds=$lt_reload_cmds
+
+# How to pass a linker flag through the compiler.
+wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
+
+# Object file suffix (normally "o").
+objext="$ac_objext"
+
+# Old archive suffix (normally "a").
+libext="$libext"
+
+# Shared library suffix (normally ".so").
+shrext='$shrext'
+
+# Executable file suffix (normally "").
+exeext="$exeext"
+
+# Additional compiler flags for building library objects.
+pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)
+pic_mode=$pic_mode
+
+# What is the maximum length of a command?
+max_cmd_len=$lt_cv_sys_max_cmd_len
+
+# Does compiler simultaneously support -c and -o options?
+compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)
+
+# Must we lock files when doing compilation ?
+need_locks=$lt_need_locks
+
+# Do we need the lib prefix for modules?
+need_lib_prefix=$need_lib_prefix
+
+# Do we need a version for libraries?
+need_version=$need_version
+
+# Whether dlopen is supported.
+dlopen_support=$enable_dlopen
+
+# Whether dlopen of programs is supported.
+dlopen_self=$enable_dlopen_self
+
+# Whether dlopen of statically linked programs is supported.
+dlopen_self_static=$enable_dlopen_self_static
+
+# Compiler flag to prevent dynamic linking.
+link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1)
+
+# Compiler flag to turn off builtin functions.
+no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)
+
+# Compiler flag to allow reflexive dlopens.
+export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)
+
+# Compiler flag to generate shared objects directly from archives.
+whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1)
+
+# Compiler flag to generate thread-safe objects.
+thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1)
+
+# Library versioning type.
+version_type=$version_type
+
+# Format of library name prefix.
+libname_spec=$lt_libname_spec
+
+# List of archive names. First name is the real one, the rest are links.
+# The last name is the one that the linker finds with -lNAME.
+library_names_spec=$lt_library_names_spec
+
+# The coded name of the library, if different from the real name.
+soname_spec=$lt_soname_spec
+
+# Commands used to build and install an old-style archive.
+RANLIB=$lt_RANLIB
+old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1)
+old_postinstall_cmds=$lt_old_postinstall_cmds
+old_postuninstall_cmds=$lt_old_postuninstall_cmds
+
+# Create an old-style archive from a shared archive.
+old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1)
+
+# Create a temporary old-style archive to link instead of a shared archive.
+old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)
+
+# Commands used to build and install a shared archive.
+archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1)
+archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1)
+postinstall_cmds=$lt_postinstall_cmds
+postuninstall_cmds=$lt_postuninstall_cmds
+
+# Commands used to build a loadable module (assumed same as above if empty)
+module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1)
+module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1)
+
+# Commands to strip libraries.
+old_striplib=$lt_old_striplib
+striplib=$lt_striplib
+
+# Dependencies to place before the objects being linked to create a
+# shared library.
+predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1)
+
+# Dependencies to place after the objects being linked to create a
+# shared library.
+postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1)
+
+# Dependencies to place before the objects being linked to create a
+# shared library.
+predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1)
+
+# Dependencies to place after the objects being linked to create a
+# shared library.
+postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1)
+
+# The library search path used internally by the compiler when linking
+# a shared library.
+compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
+
+# Method to check whether dependent libraries are shared objects.
+deplibs_check_method=$lt_deplibs_check_method
+
+# Command to use when deplibs_check_method == file_magic.
+file_magic_cmd=$lt_file_magic_cmd
+
+# Flag that allows shared libraries with undefined symbols to be built.
+allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1)
+
+# Flag that forces no undefined symbols.
+no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1)
+
+# Commands used to finish a libtool library installation in a directory.
+finish_cmds=$lt_finish_cmds
+
+# Same as above, but a single script fragment to be evaled but not shown.
+finish_eval=$lt_finish_eval
+
+# Take the output of nm and produce a listing of raw symbols and C names.
+global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
+
+# Transform the output of nm in a proper C declaration
+global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
+
+# Transform the output of nm in a C name address pair
+global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+
+# This is the shared library runtime path variable.
+runpath_var=$runpath_var
+
+# This is the shared library path variable.
+shlibpath_var=$shlibpath_var
+
+# Is shlibpath searched before the hard-coded library search path?
+shlibpath_overrides_runpath=$shlibpath_overrides_runpath
+
+# How to hardcode a shared library path into an executable.
+hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1)
+
+# Whether we should hardcode library paths into libraries.
+hardcode_into_libs=$hardcode_into_libs
+
+# Flag to hardcode \$libdir into a binary during linking.
+# This must work even if \$libdir does not exist.
+hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)
+
+# If ld is used when linking, flag to hardcode \$libdir into
+# a binary during linking. This must work even if \$libdir does
+# not exist.
+hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)
+
+# Whether we need a single -rpath flag with a separated argument.
+hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1)
+
+# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the
+# resulting binary.
+hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1)
+
+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
+# resulting binary.
+hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1)
+
+# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
+# the resulting binary.
+hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)
+
+# Set to yes if building a shared library automatically hardcodes DIR into the library
+# and all subsequent libraries and executables linked against it.
+hardcode_automatic=$_LT_AC_TAGVAR(hardcode_automatic, $1)
+
+# Variables whose values should be saved in libtool wrapper scripts and
+# restored at relink time.
+variables_saved_for_relink="$variables_saved_for_relink"
+
+# Whether libtool must link a program against all its dependency libraries.
+link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1)
+
+# Compile-time system search path for libraries
+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+
+# Run-time system search path for libraries
+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
+
+# Fix the shell variable \$srcfile for the compiler.
+fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)"
+
+# Set to yes if exported symbols are required.
+always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1)
+
+# The commands to list exported symbols.
+export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1)
+
+# The commands to extract the exported symbol list from a shared archive.
+extract_expsyms_cmds=$lt_extract_expsyms_cmds
+
+# Symbols that should not be listed in the preloaded symbols.
+exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1)
+
+# Symbols that must always be exported.
+include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1)
+
+ifelse([$1],[],
+[# ### END LIBTOOL CONFIG],
+[# ### END LIBTOOL TAG CONFIG: $tagname])
+
+__EOF__
+
+ifelse([$1],[], [
+ case $host_os in
+ aix3*)
+ cat <<\EOF >> "$cfgfile"
+
+# AIX sometimes has problems with the GCC collect2 program. For some
+# reason, if we set the COLLECT_NAMES environment variable, the problems
+# vanish in a puff of smoke.
+if test "X${COLLECT_NAMES+set}" != Xset; then
+ COLLECT_NAMES=
+ export COLLECT_NAMES
+fi
+EOF
+ ;;
+ esac
+
+ # We use sed instead of cat because bash on DJGPP gets confused if
+ # if finds mixed CR/LF and LF-only lines. Since sed operates in
+ # text mode, it properly converts lines to CR/LF. This bash problem
+ # is reportedly fixed, but why not run on old versions too?
+ sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1)
+
+ mv -f "$cfgfile" "$ofile" || \
+ (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
+ chmod +x "$ofile"
+])
+else
+ # If there is no Makefile yet, we rely on a make rule to execute
+ # `config.status --recheck' to rerun these tests and create the
+ # libtool script then.
+ test -f Makefile && make "$ltmain"
+fi
+])# AC_LIBTOOL_CONFIG
+
+
+# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME])
+# -------------------------------------------
+AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI],
+[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
+
+_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
+
+if test "$GCC" = yes; then
+ _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
+
+ AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
+ lt_cv_prog_compiler_rtti_exceptions,
+ [-fno-rtti -fno-exceptions], [],
+ [_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
+fi
+])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI
+
+
+# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
+# ---------------------------------
+AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
+[AC_REQUIRE([AC_CANONICAL_HOST])
+AC_REQUIRE([AC_PROG_NM])
+AC_REQUIRE([AC_OBJEXT])
+# Check for command to grab the raw symbol name followed by C symbol from nm.
+AC_MSG_CHECKING([command to parse $NM output from $compiler object])
+AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
+[
+# These are sane defaults that work on at least a few old systems.
+# [They come from Ultrix. What could be older than Ultrix?!! ;)]
+
+# Character class describing NM global symbol codes.
+symcode='[[BCDEGRST]]'
+
+# Regexp to match symbols that can be accessed directly from C.
+sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
+
+# Transform the above into a raw symbol and a C symbol.
+symxfrm='\1 \2\3 \3'
+
+# Transform an extracted symbol line into a proper C declaration
+lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'"
+
+# Transform an extracted symbol line into symbol name and symbol address
+lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
+
+# Define system-specific variables.
+case $host_os in
+aix*)
+ symcode='[[BCDT]]'
+ ;;
+cygwin* | mingw* | pw32*)
+ symcode='[[ABCDGISTW]]'
+ ;;
+hpux*) # Its linker distinguishes data from code symbols
+ if test "$host_cpu" = ia64; then
+ symcode='[[ABCDEGRST]]'
+ fi
+ lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+ lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
+ ;;
+irix* | nonstopux*)
+ symcode='[[BCDEGRST]]'
+ ;;
+osf*)
+ symcode='[[BCDEGQRST]]'
+ ;;
+solaris* | sysv5*)
+ symcode='[[BDT]]'
+ ;;
+sysv4)
+ symcode='[[DFNSTU]]'
+ ;;
+esac
+
+# Handle CRLF in mingw tool chain
+opt_cr=
+case $build_os in
+mingw*)
+ opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
+ ;;
+esac
+
+# If we're using GNU nm, then use its standard symbol codes.
+case `$NM -V 2>&1` in
+*GNU* | *'with BFD'*)
+ symcode='[[ABCDGISTW]]' ;;
+esac
+
+# Try without a prefix undercore, then with it.
+for ac_symprfx in "" "_"; do
+
+ # Write the raw and C identifiers.
+ lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
+
+ # Check to see that the pipe works correctly.
+ pipe_works=no
+
+ rm -f conftest*
+ cat > conftest.$ac_ext <<EOF
+#ifdef __cplusplus
+extern "C" {
+#endif
+char nm_test_var;
+void nm_test_func(){}
+#ifdef __cplusplus
+}
+#endif
+int main(){nm_test_var='a';nm_test_func();return(0);}
+EOF
+
+ if AC_TRY_EVAL(ac_compile); then
+ # Now try to grab the symbols.
+ nlist=conftest.nm
+ if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
+ # Try sorting and uniquifying the output.
+ if sort "$nlist" | uniq > "$nlist"T; then
+ mv -f "$nlist"T "$nlist"
+ else
+ rm -f "$nlist"T
+ fi
+
+ # Make sure that we snagged all the symbols we need.
+ if grep ' nm_test_var$' "$nlist" >/dev/null; then
+ if grep ' nm_test_func$' "$nlist" >/dev/null; then
+ cat <<EOF > conftest.$ac_ext
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+EOF
+ # Now generate the symbol file.
+ eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext'
+
+ cat <<EOF >> conftest.$ac_ext
+#if defined (__STDC__) && __STDC__
+# define lt_ptr_t void *
+#else
+# define lt_ptr_t char *
+# define const
+#endif
+
+/* The mapping between symbol names and symbols. */
+const struct {
+ const char *name;
+ lt_ptr_t address;
+}
+lt_preloaded_symbols[[]] =
+{
+EOF
+ $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext
+ cat <<\EOF >> conftest.$ac_ext
+ {0, (lt_ptr_t) 0}
+};
+
+#ifdef __cplusplus
+}
+#endif
+EOF
+ # Now try linking the two files.
+ mv conftest.$ac_objext conftstm.$ac_objext
+ lt_save_LIBS="$LIBS"
+ lt_save_CFLAGS="$CFLAGS"
+ LIBS="conftstm.$ac_objext"
+ CFLAGS="$CFLAGS$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
+ pipe_works=yes
+ fi
+ LIBS="$lt_save_LIBS"
+ CFLAGS="$lt_save_CFLAGS"
+ else
+ echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
+ fi
+ else
+ echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
+ fi
+ else
+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
+ fi
+ else
+ echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
+ cat conftest.$ac_ext >&5
+ fi
+ rm -f conftest* conftst*
+
+ # Do not use the global_symbol_pipe unless it works.
+ if test "$pipe_works" = yes; then
+ break
+ else
+ lt_cv_sys_global_symbol_pipe=
+ fi
+done
+])
+if test -z "$lt_cv_sys_global_symbol_pipe"; then
+ lt_cv_sys_global_symbol_to_cdecl=
+fi
+if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
+ AC_MSG_RESULT(failed)
+else
+ AC_MSG_RESULT(ok)
+fi
+]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
+
+
+# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME])
+# ---------------------------------------
+AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC],
+[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)=
+_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
+_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=
+
+AC_MSG_CHECKING([for $compiler option to produce PIC])
+ ifelse([$1],[CXX],[
+ # C++ specific cases for pic, static, wl, etc.
+ if test "$GXX" = yes; then
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
+
+ case $host_os in
+ aix*)
+ # All AIX code is PIC.
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ fi
+ ;;
+ amigaos*)
+ # FIXME: we need at least 68020 code to build shared libraries, but
+ # adding the `-m68020' flag to GCC prevents building anything better,
+ # like `-m68040'.
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+ ;;
+ beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+ # PIC is the default for these OSes.
+ ;;
+ mingw* | os2* | pw32*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
+ ;;
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+ ;;
+ *djgpp*)
+ # DJGPP does not support shared libraries at all
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
+ ;;
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
+ fi
+ ;;
+ hpux*)
+ # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+ # not for PA HP-UX.
+ case "$host_cpu" in
+ hppa*64*|ia64*)
+ ;;
+ *)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ ;;
+ *)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ else
+ case $host_os in
+ aix4* | aix5*)
+ # All AIX code is PIC.
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ else
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
+ fi
+ ;;
+ chorus*)
+ case $cc_basename in
+ cxch68)
+ # Green Hills C++ Compiler
+ # _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
+ ;;
+ esac
+ ;;
+ dgux*)
+ case $cc_basename in
+ ec++)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ ;;
+ ghcx)
+ # Green Hills C++ Compiler
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ freebsd* | kfreebsd*-gnu)
+ # FreeBSD uses GNU C++
+ ;;
+ hpux9* | hpux10* | hpux11*)
+ case $cc_basename in
+ CC)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
+ if test "$host_cpu" != ia64; then
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+ fi
+ ;;
+ aCC)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
+ case "$host_cpu" in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+ ;;
+ esac
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ irix5* | irix6* | nonstopux*)
+ case $cc_basename in
+ CC)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ # CC pic flag -KPIC is the default.
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ linux*)
+ case $cc_basename in
+ KCC)
+ # KAI C++ Compiler
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ icpc)
+ # Intel C++
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ cxx)
+ # Compaq C++
+ # Make sure the PIC flag is empty. It appears that all Alpha
+ # Linux and Compaq Tru64 Unix objects are PIC.
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ lynxos*)
+ ;;
+ m88k*)
+ ;;
+ mvs*)
+ case $cc_basename in
+ cxx)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ netbsd*)
+ ;;
+ osf3* | osf4* | osf5*)
+ case $cc_basename in
+ KCC)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
+ ;;
+ RCC)
+ # Rational C++ 2.4.1
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ ;;
+ cxx)
+ # Digital/Compaq C++
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # Make sure the PIC flag is empty. It appears that all Alpha
+ # Linux and Compaq Tru64 Unix objects are PIC.
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ psos*)
+ ;;
+ sco*)
+ case $cc_basename in
+ CC)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ solaris*)
+ case $cc_basename in
+ CC)
+ # Sun C++ 4.2, 5.x and Centerline C++
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+ ;;
+ gcx)
+ # Green Hills C++ Compiler
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ sunos4*)
+ case $cc_basename in
+ CC)
+ # Sun C++ 4.x
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+ lcc)
+ # Lucid
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ tandem*)
+ case $cc_basename in
+ NCC)
+ # NonStop-UX NCC 3.20
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ ;;
+ *)
+ ;;
+ esac
+ ;;
+ unixware*)
+ ;;
+ vxworks*)
+ ;;
+ *)
+ _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ ;;
+ esac
+ fi
+],
+[
+ if test "$GCC" = yes; then
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
+
+ case $host_os in
+ aix*)
+ # All AIX code is PIC.
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ fi
+ ;;
+
+ amigaos*)
+ # FIXME: we need at least 68020 code to build shared libraries, but
+ # adding the `-m68020' flag to GCC prevents building anything better,
+ # like `-m68040'.
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
+ ;;
+
+ beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+ # PIC is the default for these OSes.
+ ;;
+
+ mingw* | pw32* | os2*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
+ ;;
+
+ darwin* | rhapsody*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+ ;;
+
+ msdosdjgpp*)
+ # Just because we use GCC doesn't mean we suddenly get shared libraries
+ # on systems that don't support them.
+ _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ enable_shared=no
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
+ fi
+ ;;
+
+ hpux*)
+ # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+ # not for PA HP-UX.
+ case "$host_cpu" in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ ;;
+
+ *)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ ;;
+ esac
+ else
+ # PORTME Check for flag to pass linker flags through the system compiler.
+ case $host_os in
+ aix*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ if test "$host_cpu" = ia64; then
+ # AIX 5 now supports IA64 processor
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ else
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
+ fi
+ ;;
+
+ mingw* | pw32* | os2*)
+ # This hack is so that the source file can tell whether it is being
+ # built for inclusion in a dll (and should export symbols for example).
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
+ ;;
+
+ hpux9* | hpux10* | hpux11*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
+ # not for PA HP-UX.
+ case "$host_cpu" in
+ hppa*64*|ia64*)
+ # +Z the default
+ ;;
+ *)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
+ ;;
+ esac
+ # Is there a better lt_prog_compiler_static that works with the bundled CC?
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+ ;;
+
+ irix5* | irix6* | nonstopux*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # PIC (with -KPIC) is the default.
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+
+ newsos6)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ linux*)
+ case $CC in
+ icc* | ecc*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+ ccc*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # All Alpha code is PIC.
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+ esac
+ ;;
+
+ osf3* | osf4* | osf5*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ # All OSF/1 code is PIC.
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+ ;;
+
+ sco3.2v5*)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kpic'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-dn'
+ ;;
+
+ solaris*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ sunos4*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec ;then
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ fi
+ ;;
+
+ uts4*)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+ ;;
+
+ *)
+ _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
+ ;;
+ esac
+ fi
+])
+AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)])
+
+#
+# Check to make sure the PIC flag actually works.
+#
+if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then
+ AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works],
+ _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1),
+ [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [],
+ [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in
+ "" | " "*) ;;
+ *) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;;
+ esac],
+ [_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
+ _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
+fi
+case "$host_os" in
+ # For platforms which do not support PIC, -DPIC is meaningless:
+ *djgpp*)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
+ ;;
+ *)
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])"
+ ;;
+esac
+])
+
+
+# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME])
+# ------------------------------------
+# See if the linker supports building shared libraries.
+AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS],
+[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+ifelse([$1],[CXX],[
+ _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ case $host_os in
+ aix4* | aix5*)
+ # If we're using GNU nm, then we don't want the "-C" option.
+ # -C means demangle to AIX nm, but means don't demangle with GNU nm
+ if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
+ _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
+ else
+ _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
+ fi
+ ;;
+ pw32*)
+ _LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
+ ;;
+ cygwin* | mingw*)
+ _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols'
+ ;;
+ *)
+ _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ ;;
+ esac
+],[
+ runpath_var=
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=
+ _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
+ _LT_AC_TAGVAR(archive_cmds, $1)=
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)=
+ _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)=
+ _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)=
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
+ _LT_AC_TAGVAR(thread_safe_flag_spec, $1)=
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
+ _LT_AC_TAGVAR(hardcode_automatic, $1)=no
+ _LT_AC_TAGVAR(module_cmds, $1)=
+ _LT_AC_TAGVAR(module_expsym_cmds, $1)=
+ _LT_AC_TAGVAR(always_export_symbols, $1)=no
+ _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+ # include_expsyms should be a list of space-separated symbols to be *always*
+ # included in the symbol list
+ _LT_AC_TAGVAR(include_expsyms, $1)=
+ # exclude_expsyms can be an extended regexp of symbols to exclude
+ # it will be wrapped by ` (' and `)$', so one must not match beginning or
+ # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
+ # as well as any symbol that contains `d'.
+ _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_"
+ # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
+ # platforms (ab)use it in PIC code, but their linkers get confused if
+ # the symbol is explicitly referenced. Since portable code cannot
+ # rely on this symbol name, it's probably fine to never include it in
+ # preloaded symbol tables.
+ extract_expsyms_cmds=
+
+ case $host_os in
+ cygwin* | mingw* | pw32*)
+ # FIXME: the MSVC++ port hasn't been tested in a loooong time
+ # When not using gcc, we currently assume that we are using
+ # Microsoft Visual C++.
+ if test "$GCC" != yes; then
+ with_gnu_ld=no
+ fi
+ ;;
+ openbsd*)
+ with_gnu_ld=no
+ ;;
+ esac
+
+ _LT_AC_TAGVAR(ld_shlibs, $1)=yes
+ if test "$with_gnu_ld" = yes; then
+ # If archive_cmds runs LD, not CC, wlarc should be empty
+ wlarc='${wl}'
+
+ # See if GNU ld supports shared libraries.
+ case $host_os in
+ aix3* | aix4* | aix5*)
+ # On AIX/PPC, the GNU linker is very broken
+ if test "$host_cpu" != ia64; then
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ cat <<EOF 1>&2
+
+*** Warning: the GNU linker, at least up to release 2.9.1, is reported
+*** to be unable to reliably create shared libraries on AIX.
+*** Therefore, libtool is disabling shared libraries support. If you
+*** really care for shared libraries, you may want to modify your PATH
+*** so that a non-GNU linker is found, and then restart.
+
+EOF
+ fi
+ ;;
+
+ amigaos*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+
+ # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
+ # that the semantics of dynamic libraries on AmigaOS, at least up
+ # to version 4, is to share data among multiple programs linked
+ # with the same dynamic library. Since this doesn't match the
+ # behavior of shared libraries on other platforms, we can't use
+ # them.
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ beos*)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
+ # support --undefined. This deserves some investigation. FIXME
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib'
+ else
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ cygwin* | mingw* | pw32*)
+ # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
+ # as there is no search path for DLLs.
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=no
+ _LT_AC_TAGVAR(always_export_symbols, $1)=no
+ _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols'
+
+ if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
+ # If the export-symbols file already is a .def file (1st line
+ # is EXPORTS), use it as is; otherwise, prepend...
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
+ cp $export_symbols $output_objdir/$soname.def;
+ else
+ echo EXPORTS > $output_objdir/$soname.def;
+ cat $export_symbols >> $output_objdir/$soname.def;
+ fi~
+ $CC -shared $output_objdir/$soname.def $compiler_flags $libobjs $deplibs -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+ wlarc=
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ fi
+ ;;
+
+ solaris* | sysv5*)
+ if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ cat <<EOF 1>&2
+
+*** Warning: The releases 2.8.* of the GNU linker cannot reliably
+*** create shared libraries on Solaris systems. Therefore, libtool
+*** is disabling shared libraries support. We urge you to upgrade GNU
+*** binutils to release 2.9.1 or newer. Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+EOF
+ elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ sunos4*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ wlarc=
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ *)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+ esac
+
+ if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = yes; then
+ runpath_var=LD_RUN_PATH
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+ # ancient GNU ld didn't support --whole-archive et. al.
+ if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+ else
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
+ fi
+ fi
+ else
+ # PORTME fill in a description of your system's linker (not GNU ld)
+ case $host_os in
+ aix3*)
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_AC_TAGVAR(always_export_symbols, $1)=yes
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
+ # Note: this linker hardcodes the directories in LIBPATH if there
+ # are no directories specified by -L.
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+ if test "$GCC" = yes && test -z "$link_static_flag"; then
+ # Neither direct hardcoding nor static linking is supported with a
+ # broken collect2.
+ _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
+ fi
+ ;;
+
+ aix4* | aix5*)
+ if test "$host_cpu" = ia64; then
+ # On IA64, the linker does run time linking by default, so we don't
+ # have to do anything special.
+ aix_use_runtimelinking=no
+ exp_sym_flag='-Bexport'
+ no_entry_flag=""
+ else
+ # If we're using GNU nm, then we don't want the "-C" option.
+ # -C means demangle to AIX nm, but means don't demangle with GNU nm
+ if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
+ _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
+ else
+ _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
+ fi
+
+ # KDE requires run time linking. Make it the default.
+ aix_use_runtimelinking=yes
+ exp_sym_flag='-bexport'
+ no_entry_flag='-bnoentry'
+ fi
+
+ # When large executables or shared objects are built, AIX ld can
+ # have problems creating the table of contents. If linking a library
+ # or program results in "error TOC overflow" add -mminimal-toc to
+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+
+ _LT_AC_TAGVAR(archive_cmds, $1)=''
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+
+ if test "$GCC" = yes; then
+ case $host_os in aix4.[012]|aix4.[012].*)
+ # We only want to do this on AIX 4.2 and lower, the check
+ # below for broken collect2 doesn't work under 4.3+
+ collect2name=`${CC} -print-prog-name=collect2`
+ if test -f "$collect2name" && \
+ strings "$collect2name" | grep resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ else
+ # We have old collect2
+ _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
+ # It fails to find uninstalled libraries when the uninstalled
+ # path is not listed in the libpath. Setting hardcode_minus_L
+ # to unsupported forces relinking
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
+ fi
+ esac
+ shared_flag='-shared'
+ else
+ # not using gcc
+ if test "$host_cpu" = ia64; then
+ # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
+ # chokes on -Wl,-G. The following line is correct:
+ shared_flag='-G'
+ else
+ if test "$aix_use_runtimelinking" = yes; then
+ shared_flag='-qmkshrobj ${wl}-G'
+ else
+ shared_flag='-qmkshrobj'
+ fi
+ fi
+ fi
+
+ # Let the compiler handle the export list.
+ _LT_AC_TAGVAR(always_export_symbols, $1)=no
+ if test "$aix_use_runtimelinking" = yes; then
+ # Warning - without using the other runtime loading flags (-brtl),
+ # -berok will link without error, but may produce a broken library.
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok'
+ # Determine the default libpath from the value encoded in an empty executable.
+ _LT_AC_SYS_LIBPATH_AIX
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+ _LT_AC_TAGVAR(archive_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '" $shared_flag"
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+ else
+ if test "$host_cpu" = ia64; then
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
+ else
+ # Determine the default libpath from the value encoded in an empty executable.
+ _LT_AC_SYS_LIBPATH_AIX
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+ # Warning - without using the other run time loading flags,
+ # -berok will link without error, but may produce a broken library.
+ _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
+ # -bexpall does not export symbols beginning with underscore (_)
+ _LT_AC_TAGVAR(always_export_symbols, $1)=yes
+ # Exported symbols can be pulled into shared objects from archives
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
+ # This is similar to how AIX traditionally builds it's shared libraries.
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+ fi
+ fi
+ ;;
+
+ amigaos*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+ # see comment about different semantics on the GNU ld section
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ bsdi4*)
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
+ ;;
+
+ cygwin* | mingw* | pw32*)
+ # When not using gcc, we currently assume that we are using
+ # Microsoft Visual C++.
+ # hardcode_libdir_flag_spec is actually meaningless, as there is
+ # no search path for DLLs.
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=no
+ # Tell ltmain to make .lib files, not .a files.
+ libext=lib
+ # Tell ltmain to make .dll files, not .so files.
+ shrext=".dll"
+ # FIXME: Setting linknames here is a bad hack.
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $compiler_flags $libobjs `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames='
+ # The linker will automatically build a .lib file if we build a DLL.
+ _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true'
+ # FIXME: Should let the user specify the lib program.
+ _LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs'
+ fix_srcfile_path='`cygpath -w "$srcfile"`'
+ _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+ ;;
+
+ darwin* | rhapsody*)
+ if test "$GXX" = yes ; then
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ case "$host_os" in
+ rhapsody* | darwin1.[[012]])
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress'
+ ;;
+ *) # Darwin 1.3 on
+ if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress'
+ else
+ case ${MACOSX_DEPLOYMENT_TARGET} in
+ 10.[012])
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress'
+ ;;
+ 10.*)
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup'
+ ;;
+ esac
+ fi
+ ;;
+ esac
+ lt_int_apple_cc_single_mod=no
+ output_verbose_link_cmd='echo'
+ if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then
+ lt_int_apple_cc_single_mod=yes
+ fi
+ if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring'
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring'
+ fi
+ _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs'
+ # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
+ if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ else
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ fi
+ _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience'
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+ else
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
+ dgux*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ freebsd1*)
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+
+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
+ # support. Future versions do this automatically, but an explicit c++rt0.o
+ # does not break anything, and helps significantly (at the cost of a little
+ # extra space).
+ freebsd2.2*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ # Unfortunately, older versions of FreeBSD 2 do not have this feature.
+ freebsd2*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
+ freebsd* | kfreebsd*-gnu)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $compiler_flags $libobjs $deplibs'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ hpux9*)
+ if test "$GCC" = yes; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $libobjs $deplibs~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ fi
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ ;;
+
+ hpux10* | hpux11*)
+ if test "$GCC" = yes -a "$with_gnu_ld" = no; then
+ case "$host_cpu" in
+ hppa*64*|ia64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs'
+ ;;
+ *)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $libobjs $deplibs'
+ ;;
+ esac
+ else
+ case "$host_cpu" in
+ hppa*64*|ia64*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
+ ;;
+ *)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+ ;;
+ esac
+ fi
+ if test "$with_gnu_ld" = no; then
+ case "$host_cpu" in
+ hppa*64*)
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+ ia64*)
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+ ;;
+ *)
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+ ;;
+ esac
+ fi
+ ;;
+
+ irix5* | irix6* | nonstopux*)
+ if test "$GCC" = yes; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
+ fi
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+
+ netbsd*)
+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
+ fi
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ newsos6)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ openbsd*)
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $compiler_flags $libobjs $deplibs'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ else
+ case $host_os in
+ openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ ;;
+ *)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $compiler_flags $libobjs $deplibs'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+ ;;
+ esac
+ fi
+ ;;
+
+ os2*)
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
+ _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $compiler_flags $libobjs $deplibs$output_objdir/$libname.def'
+ _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+ ;;
+
+ osf3*)
+ if test "$GCC" = yes; then
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $libobjs $deplibs ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ else
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
+ fi
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+ ;;
+
+ osf4* | osf5*) # as osf3* with the addition of -msym flag
+ if test "$GCC" = yes; then
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $libobjs $deplibs ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+ else
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
+ $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
+
+ # Both c and cxx compiler support -rpath directly
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
+ fi
+ _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+ ;;
+
+ sco3.2v5*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+ runpath_var=LD_RUN_PATH
+ hardcode_runpath_var=yes
+ ;;
+
+ solaris*)
+ _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
+ if test "$GCC" = yes; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+ $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs~$rm $lib.exp'
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
+ fi
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ case $host_os in
+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+ *) # Supported since Solaris 2.6 (maybe 2.5.1?)
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;;
+ esac
+ _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
+ ;;
+
+ sunos4*)
+ if test "x$host_vendor" = xsequent; then
+ # Use $CC to link under sequent, because it throws in some extra .o
+ # files that make .init and .fini sections work.
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $compiler_flags $libobjs $deplibs'
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
+ fi
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ sysv4)
+ case $host_vendor in
+ sni)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true???
+ ;;
+ siemens)
+ ## LD is ld it makes a PLAMLIB
+ ## CC just makes a GrossModule.
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no
+ ;;
+ motorola)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
+ ;;
+ esac
+ runpath_var='LD_RUN_PATH'
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ sysv4.3*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
+ ;;
+
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var=LD_RUN_PATH
+ hardcode_runpath_var=yes
+ _LT_AC_TAGVAR(ld_shlibs, $1)=yes
+ fi
+ ;;
+
+ sysv4.2uw2*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+ _LT_AC_TAGVAR(hardcode_minus_L, $1)=no
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ hardcode_runpath_var=yes
+ runpath_var=LD_RUN_PATH
+ ;;
+
+ sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*)
+ _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text'
+ if test "$GCC" = yes; then
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs'
+ else
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs'
+ fi
+ runpath_var='LD_RUN_PATH'
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ sysv5*)
+ _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
+ # $CC -shared without GNU ld will not create a library from C++
+ # object files and a static libstdc++, better avoid it by now
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ runpath_var='LD_RUN_PATH'
+ ;;
+
+ uts4*)
+ _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
+ *)
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ ;;
+ esac
+ fi
+])
+AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
+test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+
+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
+if test "$GCC" = yes; then
+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
+fi
+
+#
+# Do we need to explicitly link libc?
+#
+case "x$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)" in
+x|xyes)
+ # Assume -lc should be added
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
+
+ if test "$enable_shared" = yes && test "$GCC" = yes; then
+ case $_LT_AC_TAGVAR(archive_cmds, $1) in
+ *'~'*)
+ # FIXME: we may have to deal with multi-command sequences.
+ ;;
+ '$CC '*)
+ # Test whether the compiler implicitly links with -lc since on some
+ # systems, -lgcc has to come before -lc. If gcc already passes -lc
+ # to ld, don't add -lc before -lgcc.
+ AC_MSG_CHECKING([whether -lc should be explicitly linked in])
+ $rm conftest*
+ printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+
+ if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
+ soname=conftest
+ lib=conftest
+ libobjs=conftest.$ac_objext
+ deplibs=
+ wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
+ compiler_flags=-v
+ linker_flags=-v
+ verstring=
+ output_objdir=.
+ libname=conftest
+ lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1)
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=
+ if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
+ then
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
+ else
+ _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
+ fi
+ _LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
+ else
+ cat conftest.err 1>&5
+ fi
+ $rm conftest*
+ AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)])
+ ;;
+ esac
+ fi
+ ;;
+esac
+])# AC_LIBTOOL_PROG_LD_SHLIBS
+
+
+# _LT_AC_FILE_LTDLL_C
+# -------------------
+# Be careful that the start marker always follows a newline.
+AC_DEFUN([_LT_AC_FILE_LTDLL_C], [
+# /* ltdll.c starts here */
+# #define WIN32_LEAN_AND_MEAN
+# #include <windows.h>
+# #undef WIN32_LEAN_AND_MEAN
+# #include <stdio.h>
+#
+# #ifndef __CYGWIN__
+# # ifdef __CYGWIN32__
+# # define __CYGWIN__ __CYGWIN32__
+# # endif
+# #endif
+#
+# #ifdef __cplusplus
+# extern "C" {
+# #endif
+# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
+# #ifdef __cplusplus
+# }
+# #endif
+#
+# #ifdef __CYGWIN__
+# #include <cygwin/cygwin_dll.h>
+# DECLARE_CYGWIN_DLL( DllMain );
+# #endif
+# HINSTANCE __hDllInstance_base;
+#
+# BOOL APIENTRY
+# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
+# {
+# __hDllInstance_base = hInst;
+# return TRUE;
+# }
+# /* ltdll.c ends here */
+])# _LT_AC_FILE_LTDLL_C
+
+
+# _LT_AC_TAGVAR(VARNAME, [TAGNAME])
+# ---------------------------------
+AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])])
+
+
+# old names
+AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL])
+AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
+AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
+AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
+AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
+AC_DEFUN([AM_PROG_LD], [AC_PROG_LD])
+AC_DEFUN([AM_PROG_NM], [AC_PROG_NM])
+
+# This is just to silence aclocal about the macro not being used
+ifelse([AC_DISABLE_FAST_INSTALL])
+
+AC_DEFUN([LT_AC_PROG_GCJ],
+[AC_CHECK_TOOL(GCJ, gcj, no)
+ test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
+ AC_SUBST(GCJFLAGS)
+])
+
+AC_DEFUN([LT_AC_PROG_RC],
+[AC_CHECK_TOOL(RC, windres, no)
+])
+
+############################################################
+# NOTE: This macro has been submitted for inclusion into #
+# GNU Autoconf as AC_PROG_SED. When it is available in #
+# a released version of Autoconf we should remove this #
+# macro and use it instead. #
+############################################################
+# LT_AC_PROG_SED
+# --------------
+# Check for a fully-functional sed program, that truncates
+# as few characters as possible. Prefer GNU sed if found.
+AC_DEFUN([LT_AC_PROG_SED],
+[AC_MSG_CHECKING([for a sed that does not truncate output])
+AC_CACHE_VAL(lt_cv_path_SED,
+[# Loop through the user's path and test for sed and gsed.
+# Then use that list of sed's as ones to test for truncation.
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for lt_ac_prog in sed gsed; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
+ lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
+ fi
+ done
+ done
+done
+lt_ac_max=0
+lt_ac_count=0
+# Add /usr/xpg4/bin/sed as it is typically found on Solaris
+# along with /bin/sed that truncates output.
+for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
+ test ! -f $lt_ac_sed && break
+ cat /dev/null > conftest.in
+ lt_ac_count=0
+ echo $ECHO_N "0123456789$ECHO_C" >conftest.in
+ # Check for GNU sed and select it if it is found.
+ if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
+ lt_cv_path_SED=$lt_ac_sed
+ break
+ fi
+ while true; do
+ cat conftest.in conftest.in >conftest.tmp
+ mv conftest.tmp conftest.in
+ cp conftest.in conftest.nl
+ echo >>conftest.nl
+ $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
+ cmp -s conftest.out conftest.nl || break
+ # 10000 chars as input seems more than enough
+ test $lt_ac_count -gt 10 && break
+ lt_ac_count=`expr $lt_ac_count + 1`
+ if test $lt_ac_count -gt $lt_ac_max; then
+ lt_ac_max=$lt_ac_count
+ lt_cv_path_SED=$lt_ac_sed
+ fi
+ done
+done
+])
+SED=$lt_cv_path_SED
+AC_MSG_RESULT([$SED])
+])
diff --git a/aclocal.m4 b/aclocal.m4
new file mode 100644
index 0000000..dd92cb3
--- /dev/null
+++ b/aclocal.m4
@@ -0,0 +1,863 @@
+# generated automatically by aclocal 1.9.6 -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+# 2005 Free Software Foundation, Inc.
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+# Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_AUTOMAKE_VERSION(VERSION)
+# ----------------------------
+# Automake X.Y traces this macro to ensure aclocal.m4 has been
+# generated from the m4 files accompanying Automake X.Y.
+AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"])
+
+# AM_SET_CURRENT_AUTOMAKE_VERSION
+# -------------------------------
+# Call AM_AUTOMAKE_VERSION so it can be traced.
+# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
+AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
+ [AM_AUTOMAKE_VERSION([1.9.6])])
+
+# AM_AUX_DIR_EXPAND -*- Autoconf -*-
+
+# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
+# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
+# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
+#
+# Of course, Automake must honor this variable whenever it calls a
+# tool from the auxiliary directory. The problem is that $srcdir (and
+# therefore $ac_aux_dir as well) can be either absolute or relative,
+# depending on how configure is run. This is pretty annoying, since
+# it makes $ac_aux_dir quite unusable in subdirectories: in the top
+# source directory, any form will work fine, but in subdirectories a
+# relative path needs to be adjusted first.
+#
+# $ac_aux_dir/missing
+# fails when called from a subdirectory if $ac_aux_dir is relative
+# $top_srcdir/$ac_aux_dir/missing
+# fails if $ac_aux_dir is absolute,
+# fails when called from a subdirectory in a VPATH build with
+# a relative $ac_aux_dir
+#
+# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
+# are both prefixed by $srcdir. In an in-source build this is usually
+# harmless because $srcdir is `.', but things will broke when you
+# start a VPATH build or use an absolute $srcdir.
+#
+# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
+# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
+# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
+# and then we would define $MISSING as
+# MISSING="\${SHELL} $am_aux_dir/missing"
+# This will work as long as MISSING is not called from configure, because
+# unfortunately $(top_srcdir) has no meaning in configure.
+# However there are other variables, like CC, which are often used in
+# configure, and could therefore not use this "fixed" $ac_aux_dir.
+#
+# Another solution, used here, is to always expand $ac_aux_dir to an
+# absolute PATH. The drawback is that using absolute paths prevent a
+# configured tree to be moved without reconfiguration.
+
+AC_DEFUN([AM_AUX_DIR_EXPAND],
+[dnl Rely on autoconf to set up CDPATH properly.
+AC_PREREQ([2.50])dnl
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
+])
+
+# AM_CONDITIONAL -*- Autoconf -*-
+
+# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 7
+
+# AM_CONDITIONAL(NAME, SHELL-CONDITION)
+# -------------------------------------
+# Define a conditional.
+AC_DEFUN([AM_CONDITIONAL],
+[AC_PREREQ(2.52)dnl
+ ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
+ [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
+AC_SUBST([$1_TRUE])
+AC_SUBST([$1_FALSE])
+if $2; then
+ $1_TRUE=
+ $1_FALSE='#'
+else
+ $1_TRUE='#'
+ $1_FALSE=
+fi
+AC_CONFIG_COMMANDS_PRE(
+[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
+ AC_MSG_ERROR([[conditional "$1" was never defined.
+Usually this means the macro was only invoked conditionally.]])
+fi])])
+
+
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 8
+
+# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
+# written in clear, in which case automake, when reading aclocal.m4,
+# will think it sees a *use*, and therefore will trigger all it's
+# C support machinery. Also note that it means that autoscan, seeing
+# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
+
+
+# _AM_DEPENDENCIES(NAME)
+# ----------------------
+# See how the compiler implements dependency checking.
+# NAME is "CC", "CXX", "GCJ", or "OBJC".
+# We try a few techniques and use that to set a single cache variable.
+#
+# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
+# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
+# dependency, and given that the user is not expected to run this macro,
+# just rely on AC_PROG_CC.
+AC_DEFUN([_AM_DEPENDENCIES],
+[AC_REQUIRE([AM_SET_DEPDIR])dnl
+AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
+AC_REQUIRE([AM_MAKE_INCLUDE])dnl
+AC_REQUIRE([AM_DEP_TRACK])dnl
+
+ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
+ [$1], CXX, [depcc="$CXX" am_compiler_list=],
+ [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
+ [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
+ [depcc="$$1" am_compiler_list=])
+
+AC_CACHE_CHECK([dependency style of $depcc],
+ [am_cv_$1_dependencies_compiler_type],
+[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+ # We make a subdir and do the tests there. Otherwise we can end up
+ # making bogus files that we don't know about and never remove. For
+ # instance it was reported that on HP-UX the gcc test will end up
+ # making a dummy file named `D' -- because `-MD' means `put the output
+ # in D'.
+ mkdir conftest.dir
+ # Copy depcomp to subdir because otherwise we won't find it if we're
+ # using a relative directory.
+ cp "$am_depcomp" conftest.dir
+ cd conftest.dir
+ # We will build objects and dependencies in a subdirectory because
+ # it helps to detect inapplicable dependency modes. For instance
+ # both Tru64's cc and ICC support -MD to output dependencies as a
+ # side effect of compilation, but ICC will put the dependencies in
+ # the current directory while Tru64 will put them in the object
+ # directory.
+ mkdir sub
+
+ am_cv_$1_dependencies_compiler_type=none
+ if test "$am_compiler_list" = ""; then
+ am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
+ fi
+ for depmode in $am_compiler_list; do
+ # Setup a source with many dependencies, because some compilers
+ # like to wrap large dependency lists on column 80 (with \), and
+ # we should not choose a depcomp mode which is confused by this.
+ #
+ # We need to recreate these files for each test, as the compiler may
+ # overwrite some of them when testing with obscure command lines.
+ # This happens at least with the AIX C compiler.
+ : > sub/conftest.c
+ for i in 1 2 3 4 5 6; do
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+ # Solaris 8's {/usr,}/bin/sh.
+ touch sub/conftst$i.h
+ done
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+ case $depmode in
+ nosideeffect)
+ # after this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested
+ if test "x$enable_dependency_tracking" = xyes; then
+ continue
+ else
+ break
+ fi
+ ;;
+ none) break ;;
+ esac
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this.
+ if depmode=$depmode \
+ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+ >/dev/null 2>conftest.err &&
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+ # icc doesn't choke on unknown options, it will just issue warnings
+ # or remarks (even with -Werror). So we grep stderr for any message
+ # that says an option was ignored or not supported.
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
+ # icc: Command line warning: ignoring option '-M'; no argument required
+ # The diagnosis changed in icc 8.0:
+ # icc: Command line remark: option '-MP' not supported
+ if (grep 'ignoring option' conftest.err ||
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+ am_cv_$1_dependencies_compiler_type=$depmode
+ break
+ fi
+ fi
+ done
+
+ cd ..
+ rm -rf conftest.dir
+else
+ am_cv_$1_dependencies_compiler_type=none
+fi
+])
+AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
+AM_CONDITIONAL([am__fastdep$1], [
+ test "x$enable_dependency_tracking" != xno \
+ && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
+])
+
+
+# AM_SET_DEPDIR
+# -------------
+# Choose a directory name for dependency files.
+# This macro is AC_REQUIREd in _AM_DEPENDENCIES
+AC_DEFUN([AM_SET_DEPDIR],
+[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
+])
+
+
+# AM_DEP_TRACK
+# ------------
+AC_DEFUN([AM_DEP_TRACK],
+[AC_ARG_ENABLE(dependency-tracking,
+[ --disable-dependency-tracking speeds up one-time build
+ --enable-dependency-tracking do not reject slow dependency extractors])
+if test "x$enable_dependency_tracking" != xno; then
+ am_depcomp="$ac_aux_dir/depcomp"
+ AMDEPBACKSLASH='\'
+fi
+AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
+AC_SUBST([AMDEPBACKSLASH])
+])
+
+# Generate code to set up dependency tracking. -*- Autoconf -*-
+
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+#serial 3
+
+# _AM_OUTPUT_DEPENDENCY_COMMANDS
+# ------------------------------
+AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
+[for mf in $CONFIG_FILES; do
+ # Strip MF so we end up with the name of the file.
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile or not.
+ # We used to match only the files named `Makefile.in', but
+ # some people rename them; so instead we look at the file content.
+ # Grep'ing the first line is not enough: some people post-process
+ # each Makefile.in and add a new line on top of each file to say so.
+ # So let's grep whole file.
+ if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
+ dirpart=`AS_DIRNAME("$mf")`
+ else
+ continue
+ fi
+ # Extract the definition of DEPDIR, am__include, and am__quote
+ # from the Makefile without running `make'.
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+ test -z "$DEPDIR" && continue
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
+ test -z "am__include" && continue
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+ # When using ansi2knr, U may be empty or an underscore; expand it
+ U=`sed -n 's/^U = //p' < "$mf"`
+ # Find all dependency output files, they are included files with
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
+ # simplest approach to changing $(DEPDIR) to its actual value in the
+ # expansion.
+ for file in `sed -n "
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ # Make sure the directory exists.
+ test -f "$dirpart/$file" && continue
+ fdir=`AS_DIRNAME(["$file"])`
+ AS_MKDIR_P([$dirpart/$fdir])
+ # echo "creating $dirpart/$file"
+ echo '# dummy' > "$dirpart/$file"
+ done
+done
+])# _AM_OUTPUT_DEPENDENCY_COMMANDS
+
+
+# AM_OUTPUT_DEPENDENCY_COMMANDS
+# -----------------------------
+# This macro should only be invoked once -- use via AC_REQUIRE.
+#
+# This code is only required when automatic dependency tracking
+# is enabled. FIXME. This creates each `.P' file that we will
+# need in order to bootstrap the dependency handling code.
+AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
+[AC_CONFIG_COMMANDS([depfiles],
+ [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
+ [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
+])
+
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 8
+
+# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS.
+AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
+
+# Do all the work for Automake. -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 12
+
+# This macro actually does too much. Some checks are only needed if
+# your package does certain things. But this isn't really a big deal.
+
+# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
+# AM_INIT_AUTOMAKE([OPTIONS])
+# -----------------------------------------------
+# The call with PACKAGE and VERSION arguments is the old style
+# call (pre autoconf-2.50), which is being phased out. PACKAGE
+# and VERSION should now be passed to AC_INIT and removed from
+# the call to AM_INIT_AUTOMAKE.
+# We support both call styles for the transition. After
+# the next Automake release, Autoconf can make the AC_INIT
+# arguments mandatory, and then we can depend on a new Autoconf
+# release and drop the old call support.
+AC_DEFUN([AM_INIT_AUTOMAKE],
+[AC_PREREQ([2.58])dnl
+dnl Autoconf wants to disallow AM_ names. We explicitly allow
+dnl the ones we care about.
+m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
+AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
+AC_REQUIRE([AC_PROG_INSTALL])dnl
+# test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" &&
+ test -f $srcdir/config.status; then
+ AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
+fi
+
+# test whether we have cygpath
+if test -z "$CYGPATH_W"; then
+ if (cygpath --version) >/dev/null 2>/dev/null; then
+ CYGPATH_W='cygpath -w'
+ else
+ CYGPATH_W=echo
+ fi
+fi
+AC_SUBST([CYGPATH_W])
+
+# Define the identity of the package.
+dnl Distinguish between old-style and new-style calls.
+m4_ifval([$2],
+[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
+ AC_SUBST([PACKAGE], [$1])dnl
+ AC_SUBST([VERSION], [$2])],
+[_AM_SET_OPTIONS([$1])dnl
+ AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
+ AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
+
+_AM_IF_OPTION([no-define],,
+[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
+ AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
+
+# Some tools Automake needs.
+AC_REQUIRE([AM_SANITY_CHECK])dnl
+AC_REQUIRE([AC_ARG_PROGRAM])dnl
+AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
+AM_MISSING_PROG(AUTOCONF, autoconf)
+AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
+AM_MISSING_PROG(AUTOHEADER, autoheader)
+AM_MISSING_PROG(MAKEINFO, makeinfo)
+AM_PROG_INSTALL_SH
+AM_PROG_INSTALL_STRIP
+AC_REQUIRE([AM_PROG_MKDIR_P])dnl
+# We need awk for the "check" target. The system "awk" is bad on
+# some platforms.
+AC_REQUIRE([AC_PROG_AWK])dnl
+AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
+ [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
+ [_AM_PROG_TAR([v7])])])
+_AM_IF_OPTION([no-dependencies],,
+[AC_PROVIDE_IFELSE([AC_PROG_CC],
+ [_AM_DEPENDENCIES(CC)],
+ [define([AC_PROG_CC],
+ defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+AC_PROVIDE_IFELSE([AC_PROG_CXX],
+ [_AM_DEPENDENCIES(CXX)],
+ [define([AC_PROG_CXX],
+ defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+])
+])
+
+
+# When config.status generates a header, we must update the stamp-h file.
+# This file resides in the same directory as the config header
+# that is generated. The stamp files are numbered to have different names.
+
+# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
+# loop where config.status creates the headers, so we can generate
+# our stamp files there.
+AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
+[# Compute $1's index in $config_headers.
+_am_stamp_count=1
+for _am_header in $config_headers :; do
+ case $_am_header in
+ $1 | $1:* )
+ break ;;
+ * )
+ _am_stamp_count=`expr $_am_stamp_count + 1` ;;
+ esac
+done
+echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
+
+# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_PROG_INSTALL_SH
+# ------------------
+# Define $install_sh.
+AC_DEFUN([AM_PROG_INSTALL_SH],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+install_sh=${install_sh-"$am_aux_dir/install-sh"}
+AC_SUBST(install_sh)])
+
+# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 2
+
+# Check whether the underlying file-system supports filenames
+# with a leading dot. For instance MS-DOS doesn't.
+AC_DEFUN([AM_SET_LEADING_DOT],
+[rm -rf .tst 2>/dev/null
+mkdir .tst 2>/dev/null
+if test -d .tst; then
+ am__leading_dot=.
+else
+ am__leading_dot=_
+fi
+rmdir .tst 2>/dev/null
+AC_SUBST([am__leading_dot])])
+
+# Check to see how 'make' treats includes. -*- Autoconf -*-
+
+# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 3
+
+# AM_MAKE_INCLUDE()
+# -----------------
+# Check to see how make treats includes.
+AC_DEFUN([AM_MAKE_INCLUDE],
+[am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+ @echo done
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+AC_MSG_CHECKING([for style of include used by $am_make])
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# We grep out `Entering directory' and `Leaving directory'
+# messages which can occur if `w' ends up in MAKEFLAGS.
+# In particular we don't look at `^make:' because GNU make might
+# be invoked under some other name (usually "gmake"), in which
+# case it prints its new name instead of `make'.
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
+ am__include=include
+ am__quote=
+ _am_result=GNU
+fi
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+ echo '.include "confinc"' > confmf
+ if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
+ am__include=.include
+ am__quote="\""
+ _am_result=BSD
+ fi
+fi
+AC_SUBST([am__include])
+AC_SUBST([am__quote])
+AC_MSG_RESULT([$_am_result])
+rm -f confinc confmf
+])
+
+# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
+
+# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 4
+
+# AM_MISSING_PROG(NAME, PROGRAM)
+# ------------------------------
+AC_DEFUN([AM_MISSING_PROG],
+[AC_REQUIRE([AM_MISSING_HAS_RUN])
+$1=${$1-"${am_missing_run}$2"}
+AC_SUBST($1)])
+
+
+# AM_MISSING_HAS_RUN
+# ------------------
+# Define MISSING if not defined so far and test if it supports --run.
+# If it does, set am_missing_run to use it, otherwise, to nothing.
+AC_DEFUN([AM_MISSING_HAS_RUN],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+ am_missing_run="$MISSING --run "
+else
+ am_missing_run=
+ AC_MSG_WARN([`missing' script is too old or missing])
+fi
+])
+
+# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_PROG_MKDIR_P
+# ---------------
+# Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise.
+#
+# Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories
+# created by `make install' are always world readable, even if the
+# installer happens to have an overly restrictive umask (e.g. 077).
+# This was a mistake. There are at least two reasons why we must not
+# use `-m 0755':
+# - it causes special bits like SGID to be ignored,
+# - it may be too restrictive (some setups expect 775 directories).
+#
+# Do not use -m 0755 and let people choose whatever they expect by
+# setting umask.
+#
+# We cannot accept any implementation of `mkdir' that recognizes `-p'.
+# Some implementations (such as Solaris 8's) are not thread-safe: if a
+# parallel make tries to run `mkdir -p a/b' and `mkdir -p a/c'
+# concurrently, both version can detect that a/ is missing, but only
+# one can create it and the other will error out. Consequently we
+# restrict ourselves to GNU make (using the --version option ensures
+# this.)
+AC_DEFUN([AM_PROG_MKDIR_P],
+[if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+ # We used to keeping the `.' as first argument, in order to
+ # allow $(mkdir_p) to be used without argument. As in
+ # $(mkdir_p) $(somedir)
+ # where $(somedir) is conditionally defined. However this is wrong
+ # for two reasons:
+ # 1. if the package is installed by a user who cannot write `.'
+ # make install will fail,
+ # 2. the above comment should most certainly read
+ # $(mkdir_p) $(DESTDIR)$(somedir)
+ # so it does not work when $(somedir) is undefined and
+ # $(DESTDIR) is not.
+ # To support the latter case, we have to write
+ # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
+ # so the `.' trick is pointless.
+ mkdir_p='mkdir -p --'
+else
+ # On NextStep and OpenStep, the `mkdir' command does not
+ # recognize any option. It will interpret all options as
+ # directories to create, and then abort because `.' already
+ # exists.
+ for d in ./-p ./--version;
+ do
+ test -d $d && rmdir $d
+ done
+ # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
+ if test -f "$ac_aux_dir/mkinstalldirs"; then
+ mkdir_p='$(mkinstalldirs)'
+ else
+ mkdir_p='$(install_sh) -d'
+ fi
+fi
+AC_SUBST([mkdir_p])])
+
+# Helper functions for option handling. -*- Autoconf -*-
+
+# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 3
+
+# _AM_MANGLE_OPTION(NAME)
+# -----------------------
+AC_DEFUN([_AM_MANGLE_OPTION],
+[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
+
+# _AM_SET_OPTION(NAME)
+# ------------------------------
+# Set option NAME. Presently that only means defining a flag for this option.
+AC_DEFUN([_AM_SET_OPTION],
+[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
+
+# _AM_SET_OPTIONS(OPTIONS)
+# ----------------------------------
+# OPTIONS is a space-separated list of Automake options.
+AC_DEFUN([_AM_SET_OPTIONS],
+[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
+
+# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
+# -------------------------------------------
+# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
+AC_DEFUN([_AM_IF_OPTION],
+[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
+
+# Check to make sure that the build environment is sane. -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 4
+
+# AM_SANITY_CHECK
+# ---------------
+AC_DEFUN([AM_SANITY_CHECK],
+[AC_MSG_CHECKING([whether build environment is sane])
+# Just in case
+sleep 1
+echo timestamp > conftest.file
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments. Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+ set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+ if test "$[*]" = "X"; then
+ # -L didn't work.
+ set X `ls -t $srcdir/configure conftest.file`
+ fi
+ rm -f conftest.file
+ if test "$[*]" != "X $srcdir/configure conftest.file" \
+ && test "$[*]" != "X conftest.file $srcdir/configure"; then
+
+ # If neither matched, then we have a broken ls. This can happen
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
+ # broken ls alias from the environment. This has actually
+ # happened. Such a system could not be considered "sane".
+ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
+alias in your environment])
+ fi
+
+ test "$[2]" = conftest.file
+ )
+then
+ # Ok.
+ :
+else
+ AC_MSG_ERROR([newly created file is older than distributed files!
+Check your system clock])
+fi
+AC_MSG_RESULT(yes)])
+
+# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_PROG_INSTALL_STRIP
+# ---------------------
+# One issue with vendor `install' (even GNU) is that you can't
+# specify the program used to strip binaries. This is especially
+# annoying in cross-compiling environments, where the build's strip
+# is unlikely to handle the host's binaries.
+# Fortunately install-sh will honor a STRIPPROG variable, so we
+# always use install-sh in `make install-strip', and initialize
+# STRIPPROG with the value of the STRIP variable (set by the user).
+AC_DEFUN([AM_PROG_INSTALL_STRIP],
+[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'. However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
+if test "$cross_compiling" != no; then
+ AC_CHECK_TOOL([STRIP], [strip], :)
+fi
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+AC_SUBST([INSTALL_STRIP_PROGRAM])])
+
+# Check how to create a tarball. -*- Autoconf -*-
+
+# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 2
+
+# _AM_PROG_TAR(FORMAT)
+# --------------------
+# Check how to create a tarball in format FORMAT.
+# FORMAT should be one of `v7', `ustar', or `pax'.
+#
+# Substitute a variable $(am__tar) that is a command
+# writing to stdout a FORMAT-tarball containing the directory
+# $tardir.
+# tardir=directory && $(am__tar) > result.tar
+#
+# Substitute a variable $(am__untar) that extract such
+# a tarball read from stdin.
+# $(am__untar) < result.tar
+AC_DEFUN([_AM_PROG_TAR],
+[# Always define AMTAR for backward compatibility.
+AM_MISSING_PROG([AMTAR], [tar])
+m4_if([$1], [v7],
+ [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
+ [m4_case([$1], [ustar],, [pax],,
+ [m4_fatal([Unknown tar format])])
+AC_MSG_CHECKING([how to create a $1 tar archive])
+# Loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
+_am_tools=${am_cv_prog_tar_$1-$_am_tools}
+# Do not fold the above two line into one, because Tru64 sh and
+# Solaris sh will not grok spaces in the rhs of `-'.
+for _am_tool in $_am_tools
+do
+ case $_am_tool in
+ gnutar)
+ for _am_tar in tar gnutar gtar;
+ do
+ AM_RUN_LOG([$_am_tar --version]) && break
+ done
+ am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
+ am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
+ am__untar="$_am_tar -xf -"
+ ;;
+ plaintar)
+ # Must skip GNU tar: if it does not support --format= it doesn't create
+ # ustar tarball either.
+ (tar --version) >/dev/null 2>&1 && continue
+ am__tar='tar chf - "$$tardir"'
+ am__tar_='tar chf - "$tardir"'
+ am__untar='tar xf -'
+ ;;
+ pax)
+ am__tar='pax -L -x $1 -w "$$tardir"'
+ am__tar_='pax -L -x $1 -w "$tardir"'
+ am__untar='pax -r'
+ ;;
+ cpio)
+ am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
+ am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
+ am__untar='cpio -i -H $1 -d'
+ ;;
+ none)
+ am__tar=false
+ am__tar_=false
+ am__untar=false
+ ;;
+ esac
+
+ # If the value was cached, stop now. We just wanted to have am__tar
+ # and am__untar set.
+ test -n "${am_cv_prog_tar_$1}" && break
+
+ # tar/untar a dummy directory, and stop if the command works
+ rm -rf conftest.dir
+ mkdir conftest.dir
+ echo GrepMe > conftest.dir/file
+ AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+ rm -rf conftest.dir
+ if test -s conftest.tar; then
+ AM_RUN_LOG([$am__untar <conftest.tar])
+ grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+ fi
+done
+rm -rf conftest.dir
+
+AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
+AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+AC_SUBST([am__tar])
+AC_SUBST([am__untar])
+]) # _AM_PROG_TAR
+
+m4_include([acinclude.m4])
diff --git a/build-kshowmail/RPMROOT/SPECS/kshowmail.spec b/build-kshowmail/RPMROOT/SPECS/kshowmail.spec
new file mode 100644
index 0000000..8df44d4
--- /dev/null
+++ b/build-kshowmail/RPMROOT/SPECS/kshowmail.spec
@@ -0,0 +1,48 @@
+# This spec file was generated using Kpp
+# If you find any problems with this spec file please report
+# the error to ian geiser <geiseri@msoe.edu>
+Summary:
+Name: kshowmail
+Version: 3.0.1-beta
+Release: 0
+Copyright: GPL
+Vendor: Eggert Ehmke <eggert.ehmke@berlin.de>
+Url: http://www.sourceforge.net/projects/kshowmail
+
+Packager: Eggert Ehmke <eggert.ehmke@berlin.de>
+Group: Mail
+Source: kshowmail-3.0.1-beta.tar.gz
+BuildRoot:
+
+%description
+
+
+%prep
+%setup
+CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" ./configure \
+ \
+ $LOCALFLAGS
+%build
+# Setup for parallel builds
+numprocs=`egrep -c ^cpu[0-9]+ /proc/stat || :`
+if [ "$numprocs" = "0" ]; then
+ numprocs=1
+fi
+
+make -j$numprocs
+
+%install
+make install-strip DESTDIR=$RPM_BUILD_ROOT
+
+cd $RPM_BUILD_ROOT
+find . -type d | sed '1,2d;s,^\.,\%attr(-\,root\,root) \%dir ,' > $RPM_BUILD_DIR/file.list.kshowmail
+find . -type f | sed 's,^\.,\%attr(-\,root\,root) ,' >> $RPM_BUILD_DIR/file.list.kshowmail
+find . -type l | sed 's,^\.,\%attr(-\,root\,root) ,' >> $RPM_BUILD_DIR/file.list.kshowmail
+
+%clean
+rm -rf $RPM_BUILD_ROOT/*
+rm -rf $RPM_BUILD_DIR/kshowmail
+rm -rf ../file.list.kshowmail
+
+
+%files -f ../file.list.kshowmail
diff --git a/build-kshowmail/RPMROOT/tmp/rpm-tmp.22447 b/build-kshowmail/RPMROOT/tmp/rpm-tmp.22447
new file mode 100644
index 0000000..0299be2
--- /dev/null
+++ b/build-kshowmail/RPMROOT/tmp/rpm-tmp.22447
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+RPM_SOURCE_DIR="/home/eggert/src/kshowmail//build-kshowmail/RPMROOT//SOURCES"
+RPM_BUILD_DIR="/home/eggert/src/kshowmail//build-kshowmail/RPMROOT//BUILD"
+RPM_OPT_FLAGS="-O2"
+RPM_ARCH="i386"
+RPM_OS="linux"
+export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS
+RPM_DOC_DIR="/usr/doc/packages"
+export RPM_DOC_DIR
+RPM_PACKAGE_NAME="kshowmail"
+RPM_PACKAGE_VERSION="2.1.e"
+RPM_PACKAGE_RELEASE="cd /home/eggert/src/kshowmail/build-kshowmail/RPMROOT/BUILD
+rm -rf kshowmail-2.1.e
+/bin/gzip -dc /home/eggert/src/kshowmail/build-kshowmail/RPMROOT/SOURCES/kshowmail-2.1.e.tar.gz | tar -xvvf -
+STATUS=$?
+if [ $STATUS -ne 0 ]; then
+ exit $STATUS
+fi
+cd kshowmail-2.1.e
+[ `/usr/bin/id -u` = '0' ] && /bin/chown -Rhf root .
+[ `/usr/bin/id -u` = '0' ] && /bin/chgrp -Rhf root .
+/bin/chmod -Rf a+rX,g-w,o-w .
+CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" ./configure \
+ \
+ $LOCALFLAGS
+
+exit 0 \ No newline at end of file
diff --git a/build-kshowmail/rpmmacros b/build-kshowmail/rpmmacros
new file mode 100644
index 0000000..6c1e8a2
--- /dev/null
+++ b/build-kshowmail/rpmmacros
@@ -0,0 +1,2 @@
+%_topdir /home/eggert/src/kshowmail//build-kshowmail/RPMROOT/
+%_tmppath /home/eggert/src/kshowmail//build-kshowmail/RPMROOT/tmp/
diff --git a/build-kshowmail/rpmrc b/build-kshowmail/rpmrc
new file mode 100644
index 0000000..eb05bb1
--- /dev/null
+++ b/build-kshowmail/rpmrc
@@ -0,0 +1 @@
+macrofiles: /usr/lib/rpm/macros:/usr/lib/rpm/%{_target}/macros:/etc/rpm/macros:/etc/rpm/%{_target}/macros:~/.rpmmacros:/home/eggert/src/kshowmail//build-kshowmail/rpmmacros
diff --git a/config.h b/config.h
new file mode 100644
index 0000000..8db2109
--- /dev/null
+++ b/config.h
@@ -0,0 +1,238 @@
+/* config.h. Generated from config.h.in by configure. */
+/* config.h.in. Generated from configure.in by autoheader. */
+
+/* Define to 1 if you have the <Carbon/Carbon.h> header file. */
+/* #undef HAVE_CARBON_CARBON_H */
+
+/* Define if you have the CoreAudio API */
+/* #undef HAVE_COREAUDIO */
+
+/* Define to 1 if you have the <crt_externs.h> header file. */
+/* #undef HAVE_CRT_EXTERNS_H */
+
+/* Defines if your system has the crypt function */
+#define HAVE_CRYPT 1
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#define HAVE_DLFCN_H 1
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#define HAVE_INTTYPES_H 1
+
+/* Define if you have libjpeg */
+#define HAVE_LIBJPEG 1
+
+/* Define if you have libpng */
+#define HAVE_LIBPNG 1
+
+/* Define if you have a working libpthread (will enable threaded code) */
+#define HAVE_LIBPTHREAD 1
+
+/* Define if you have libz */
+#define HAVE_LIBZ 1
+
+/* Define to 1 if you have the <memory.h> header file. */
+#define HAVE_MEMORY_H 1
+
+/* Define if your system needs _NSGetEnviron to set up the environment */
+/* #undef HAVE_NSGETENVIRON */
+
+/* Define if you have res_init */
+#define HAVE_RES_INIT 1
+
+/* Define if you have the res_init prototype */
+#define HAVE_RES_INIT_PROTO 1
+
+/* Define if you have a STL implementation by SGI */
+#define HAVE_SGI_STL 1
+
+/* Define to 1 if you have the `snprintf' function. */
+#define HAVE_SNPRINTF 1
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#define HAVE_STDINT_H 1
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#define HAVE_STDLIB_H 1
+
+/* Define to 1 if you have the <strings.h> header file. */
+#define HAVE_STRINGS_H 1
+
+/* Define to 1 if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define if you have strlcat */
+/* #undef HAVE_STRLCAT */
+
+/* Define if you have the strlcat prototype */
+/* #undef HAVE_STRLCAT_PROTO */
+
+/* Define if you have strlcpy */
+/* #undef HAVE_STRLCPY */
+
+/* Define if you have the strlcpy prototype */
+/* #undef HAVE_STRLCPY_PROTO */
+
+/* Define to 1 if you have the <sys/bitypes.h> header file. */
+#define HAVE_SYS_BITYPES_H 1
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#define HAVE_SYS_STAT_H 1
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#define HAVE_SYS_TYPES_H 1
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#define HAVE_UNISTD_H 1
+
+/* Define to 1 if you have the `vsnprintf' function. */
+#define HAVE_VSNPRINTF 1
+
+/* Suffix for lib directories */
+#define KDELIBSUFF ""
+
+/* Name of package */
+#define PACKAGE "kshowmail"
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT ""
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME ""
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING ""
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME ""
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION ""
+
+/* The size of `char *', as computed by sizeof. */
+#define SIZEOF_CHAR_P 4
+
+/* The size of `int', as computed by sizeof. */
+#define SIZEOF_INT 4
+
+/* The size of `long', as computed by sizeof. */
+#define SIZEOF_LONG 4
+
+/* The size of `short', as computed by sizeof. */
+#define SIZEOF_SHORT 2
+
+/* The size of `size_t', as computed by sizeof. */
+#define SIZEOF_SIZE_T 4
+
+/* The size of `unsigned long', as computed by sizeof. */
+#define SIZEOF_UNSIGNED_LONG 4
+
+/* Define to 1 if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Version number of package */
+#define VERSION "3.3.1"
+
+/* Defined if compiling without arts */
+/* #undef WITHOUT_ARTS */
+
+/*
+ * jpeg.h needs HAVE_BOOLEAN, when the system uses boolean in system
+ * headers and I'm too lazy to write a configure test as long as only
+ * unixware is related
+ */
+#ifdef _UNIXWARE
+#define HAVE_BOOLEAN
+#endif
+
+
+
+/*
+ * AIX defines FD_SET in terms of bzero, but fails to include <strings.h>
+ * that defines bzero.
+ */
+
+#if defined(_AIX)
+#include <strings.h>
+#endif
+
+
+
+#if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H)
+# include <sys/time.h>
+# include <crt_externs.h>
+# define environ (*_NSGetEnviron())
+#endif
+
+
+
+#if !defined(HAVE_RES_INIT_PROTO)
+#ifdef __cplusplus
+extern "C" {
+#endif
+int res_init(void);
+#ifdef __cplusplus
+}
+#endif
+#endif
+
+
+
+#if !defined(HAVE_STRLCAT_PROTO)
+#ifdef __cplusplus
+extern "C" {
+#endif
+unsigned long strlcat(char*, const char*, unsigned long);
+#ifdef __cplusplus
+}
+#endif
+#endif
+
+
+
+#if !defined(HAVE_STRLCPY_PROTO)
+#ifdef __cplusplus
+extern "C" {
+#endif
+unsigned long strlcpy(char*, const char*, unsigned long);
+#ifdef __cplusplus
+}
+#endif
+#endif
+
+
+
+/*
+ * On HP-UX, the declaration of vsnprintf() is needed every time !
+ */
+
+#if !defined(HAVE_VSNPRINTF) || defined(hpux)
+#if __STDC__
+#include <stdarg.h>
+#include <stdlib.h>
+#else
+#include <varargs.h>
+#endif
+#ifdef __cplusplus
+extern "C"
+#endif
+int vsnprintf(char *str, size_t n, char const *fmt, va_list ap);
+#ifdef __cplusplus
+extern "C"
+#endif
+int snprintf(char *str, size_t n, char const *fmt, ...);
+#endif
+
+
+
+#if defined(__SVR4) && !defined(__svr4__)
+#define __svr4__ 1
+#endif
+
+
+/* type to use in place of socklen_t if not defined */
+#define kde_socklen_t socklen_t
+
+/* type to use in place of socklen_t if not defined (deprecated, use
+ kde_socklen_t) */
+#define ksize_t socklen_t
diff --git a/config.h.in b/config.h.in
new file mode 100644
index 0000000..01ee35e
--- /dev/null
+++ b/config.h.in
@@ -0,0 +1,237 @@
+/* config.h.in. Generated from configure.in by autoheader. */
+
+/* Define to 1 if you have the <Carbon/Carbon.h> header file. */
+#undef HAVE_CARBON_CARBON_H
+
+/* Define if you have the CoreAudio API */
+#undef HAVE_COREAUDIO
+
+/* Define to 1 if you have the <crt_externs.h> header file. */
+#undef HAVE_CRT_EXTERNS_H
+
+/* Defines if your system has the crypt function */
+#undef HAVE_CRYPT
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#undef HAVE_DLFCN_H
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#undef HAVE_INTTYPES_H
+
+/* Define if you have libjpeg */
+#undef HAVE_LIBJPEG
+
+/* Define if you have libpng */
+#undef HAVE_LIBPNG
+
+/* Define if you have a working libpthread (will enable threaded code) */
+#undef HAVE_LIBPTHREAD
+
+/* Define if you have libz */
+#undef HAVE_LIBZ
+
+/* Define to 1 if you have the <memory.h> header file. */
+#undef HAVE_MEMORY_H
+
+/* Define if your system needs _NSGetEnviron to set up the environment */
+#undef HAVE_NSGETENVIRON
+
+/* Define if you have res_init */
+#undef HAVE_RES_INIT
+
+/* Define if you have the res_init prototype */
+#undef HAVE_RES_INIT_PROTO
+
+/* Define if you have a STL implementation by SGI */
+#undef HAVE_SGI_STL
+
+/* Define to 1 if you have the `snprintf' function. */
+#undef HAVE_SNPRINTF
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#undef HAVE_STDINT_H
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#undef HAVE_STDLIB_H
+
+/* Define to 1 if you have the <strings.h> header file. */
+#undef HAVE_STRINGS_H
+
+/* Define to 1 if you have the <string.h> header file. */
+#undef HAVE_STRING_H
+
+/* Define if you have strlcat */
+#undef HAVE_STRLCAT
+
+/* Define if you have the strlcat prototype */
+#undef HAVE_STRLCAT_PROTO
+
+/* Define if you have strlcpy */
+#undef HAVE_STRLCPY
+
+/* Define if you have the strlcpy prototype */
+#undef HAVE_STRLCPY_PROTO
+
+/* Define to 1 if you have the <sys/bitypes.h> header file. */
+#undef HAVE_SYS_BITYPES_H
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#undef HAVE_SYS_STAT_H
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#undef HAVE_SYS_TYPES_H
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#undef HAVE_UNISTD_H
+
+/* Define to 1 if you have the `vsnprintf' function. */
+#undef HAVE_VSNPRINTF
+
+/* Suffix for lib directories */
+#undef KDELIBSUFF
+
+/* Name of package */
+#undef PACKAGE
+
+/* Define to the address where bug reports for this package should be sent. */
+#undef PACKAGE_BUGREPORT
+
+/* Define to the full name of this package. */
+#undef PACKAGE_NAME
+
+/* Define to the full name and version of this package. */
+#undef PACKAGE_STRING
+
+/* Define to the one symbol short name of this package. */
+#undef PACKAGE_TARNAME
+
+/* Define to the version of this package. */
+#undef PACKAGE_VERSION
+
+/* The size of `char *', as computed by sizeof. */
+#undef SIZEOF_CHAR_P
+
+/* The size of `int', as computed by sizeof. */
+#undef SIZEOF_INT
+
+/* The size of `long', as computed by sizeof. */
+#undef SIZEOF_LONG
+
+/* The size of `short', as computed by sizeof. */
+#undef SIZEOF_SHORT
+
+/* The size of `size_t', as computed by sizeof. */
+#undef SIZEOF_SIZE_T
+
+/* The size of `unsigned long', as computed by sizeof. */
+#undef SIZEOF_UNSIGNED_LONG
+
+/* Define to 1 if you have the ANSI C header files. */
+#undef STDC_HEADERS
+
+/* Version number of package */
+#undef VERSION
+
+/* Defined if compiling without arts */
+#undef WITHOUT_ARTS
+
+/*
+ * jpeg.h needs HAVE_BOOLEAN, when the system uses boolean in system
+ * headers and I'm too lazy to write a configure test as long as only
+ * unixware is related
+ */
+#ifdef _UNIXWARE
+#define HAVE_BOOLEAN
+#endif
+
+
+
+/*
+ * AIX defines FD_SET in terms of bzero, but fails to include <strings.h>
+ * that defines bzero.
+ */
+
+#if defined(_AIX)
+#include <strings.h>
+#endif
+
+
+
+#if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H)
+# include <sys/time.h>
+# include <crt_externs.h>
+# define environ (*_NSGetEnviron())
+#endif
+
+
+
+#if !defined(HAVE_RES_INIT_PROTO)
+#ifdef __cplusplus
+extern "C" {
+#endif
+int res_init(void);
+#ifdef __cplusplus
+}
+#endif
+#endif
+
+
+
+#if !defined(HAVE_STRLCAT_PROTO)
+#ifdef __cplusplus
+extern "C" {
+#endif
+unsigned long strlcat(char*, const char*, unsigned long);
+#ifdef __cplusplus
+}
+#endif
+#endif
+
+
+
+#if !defined(HAVE_STRLCPY_PROTO)
+#ifdef __cplusplus
+extern "C" {
+#endif
+unsigned long strlcpy(char*, const char*, unsigned long);
+#ifdef __cplusplus
+}
+#endif
+#endif
+
+
+
+/*
+ * On HP-UX, the declaration of vsnprintf() is needed every time !
+ */
+
+#if !defined(HAVE_VSNPRINTF) || defined(hpux)
+#if __STDC__
+#include <stdarg.h>
+#include <stdlib.h>
+#else
+#include <varargs.h>
+#endif
+#ifdef __cplusplus
+extern "C"
+#endif
+int vsnprintf(char *str, size_t n, char const *fmt, va_list ap);
+#ifdef __cplusplus
+extern "C"
+#endif
+int snprintf(char *str, size_t n, char const *fmt, ...);
+#endif
+
+
+
+#if defined(__SVR4) && !defined(__svr4__)
+#define __svr4__ 1
+#endif
+
+
+/* type to use in place of socklen_t if not defined */
+#undef kde_socklen_t
+
+/* type to use in place of socklen_t if not defined (deprecated, use
+ kde_socklen_t) */
+#undef ksize_t
diff --git a/configure.files b/configure.files
new file mode 100644
index 0000000..030bce8
--- /dev/null
+++ b/configure.files
@@ -0,0 +1,2 @@
+./admin/configure.in.min
+configure.in.in
diff --git a/configure.in b/configure.in
new file mode 100644
index 0000000..3858e7d
--- /dev/null
+++ b/configure.in
@@ -0,0 +1,142 @@
+dnl =======================================================
+dnl FILE: ./admin/configure.in.min
+dnl =======================================================
+
+dnl This file is part of the KDE libraries/packages
+dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org)
+
+dnl This file is free software; you can redistribute it and/or
+dnl modify it under the terms of the GNU Library General Public
+dnl License as published by the Free Software Foundation; either
+dnl version 2 of the License, or (at your option) any later version.
+
+dnl This library is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+dnl Library General Public License for more details.
+
+dnl You should have received a copy of the GNU Library General Public License
+dnl along with this library; see the file COPYING.LIB. If not, write to
+dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+dnl Boston, MA 02110-1301, USA.
+
+# Original Author was Kalle@kde.org
+# I lifted it in some mater. (Stephan Kulow)
+# I used much code from Janos Farkas
+
+dnl Process this file with autoconf to produce a configure script.
+
+AC_INIT(acinclude.m4) dnl a source file from your sub dir
+
+dnl This is so we can use kde-common
+AC_CONFIG_AUX_DIR(admin)
+
+dnl This ksh/zsh feature conflicts with `cd blah ; pwd`
+unset CDPATH
+
+dnl Checking host/target/build systems, for make, install etc.
+AC_CANONICAL_SYSTEM
+dnl Perform program name transformation
+AC_ARG_PROGRAM
+
+dnl Automake doc recommends to do this only here. (Janos)
+AM_INIT_AUTOMAKE(kshowmail, 3.3.1) dnl searches for some needed programs
+
+KDE_SET_PREFIX
+
+dnl generate the config header
+AM_CONFIG_HEADER(config.h) dnl at the distribution this done
+
+dnl Checks for programs.
+AC_CHECK_COMPILERS
+AC_ENABLE_SHARED(yes)
+AC_ENABLE_STATIC(no)
+KDE_PROG_LIBTOOL
+
+dnl for NLS support. Call them in this order!
+dnl WITH_NLS is for the po files
+AM_KDE_WITH_NLS
+
+KDE_USE_QT(3)
+AC_PATH_KDE
+dnl =======================================================
+dnl FILE: configure.in.in
+dnl =======================================================
+
+#MIN_CONFIG(3)
+
+dnl PACKAGE set before
+
+dnl check for mimelib/mimepp.h and mimelib/datetime.h
+
+AC_MSG_CHECKING(for headers $kde_incdir/mimelib/mimepp.h and $kde_incdir/mimelib/datetime.h)
+AC_FIND_FILE("/mimelib/mimepp.h", $kde_incdirs, mimeppdir)
+AC_FIND_FILE("/mimelib/datetime.h", $kde_incdirs, datetimedir)
+if test $mimeppdir = "NO" || test $datetimedir = "NO"; then
+ AC_MSG_ERROR(Headers $kde_incdir/mimelib/mimepp.h or $kde_incdir/mimelib/datetime.h not found. Please install kdepim devel package.)
+else
+ AC_MSG_RESULT([found])
+fi
+KDE_CREATE_SUBDIRSLIST
+AC_CONFIG_FILES([ Makefile ])
+AC_CONFIG_FILES([ doc/Makefile ])
+AC_CONFIG_FILES([ doc/cs/Makefile ])
+AC_CONFIG_FILES([ doc/de/Makefile ])
+AC_CONFIG_FILES([ doc/en/Makefile ])
+AC_CONFIG_FILES([ doc/es/Makefile ])
+AC_CONFIG_FILES([ doc/fr/Makefile ])
+AC_CONFIG_FILES([ doc/hu/Makefile ])
+AC_CONFIG_FILES([ doc/it/Makefile ])
+AC_CONFIG_FILES([ doc/ru/Makefile ])
+AC_CONFIG_FILES([ doc/sv/Makefile ])
+AC_CONFIG_FILES([ kshowmail/Makefile ])
+AC_CONFIG_FILES([ kshowmail/kcmconfigs/Makefile ])
+AC_CONFIG_FILES([ pics/Makefile ])
+AC_CONFIG_FILES([ po/Makefile ])
+AC_CONFIG_FILES([ sounds/Makefile ])
+AC_OUTPUT
+# Check if KDE_SET_PREFIX was called, and --prefix was passed to configure
+if test -n "$kde_libs_prefix" -a -n "$given_prefix"; then
+ # And if so, warn when they don't match
+ if test "$kde_libs_prefix" != "$given_prefix"; then
+ # And if kde doesn't know about the prefix yet
+ echo ":"`kde-config --path exe`":" | grep ":$given_prefix/bin/:" 2>&1 >/dev/null
+ if test $? -ne 0; then
+ echo ""
+ echo "Warning: you chose to install this package in $given_prefix,"
+ echo "but KDE was found in $kde_libs_prefix."
+ echo "For this to work, you will need to tell KDE about the new prefix, by ensuring"
+ echo "that KDEDIRS contains it, e.g. export KDEDIRS=$given_prefix:$kde_libs_prefix"
+ echo "Then restart KDE."
+ echo ""
+ fi
+ fi
+fi
+
+if test x$GXX = "xyes" -a x$kde_have_gcc_visibility = "xyes" -a x$kde_cv_val_qt_gcc_visibility_patched = "xno"; then
+ echo ""
+ echo "Your GCC supports symbol visibility, but the patch for Qt supporting visibility"
+ echo "was not included. Therefore, GCC symbol visibility support remains disabled."
+ echo ""
+ echo "For better performance, consider including the Qt visibility supporting patch"
+ echo "located at:"
+ echo ""
+ echo "http://bugs.kde.org/show_bug.cgi?id=109386"
+ echo ""
+ echo "and recompile all of Qt and KDE. Note, this is entirely optional and"
+ echo "everything will continue to work just fine without it."
+ echo ""
+fi
+
+if test "$all_tests" = "bad"; then
+ if test ! "$cache_file" = "/dev/null"; then
+ echo ""
+ echo "Please remove the file $cache_file after changing your setup"
+ echo "so that configure will find the changes next time."
+ echo ""
+ fi
+else
+ echo ""
+ echo "Good - your configure finished. Start make now"
+ echo ""
+fi
diff --git a/configure.in.in b/configure.in.in
new file mode 100644
index 0000000..210b16c
--- /dev/null
+++ b/configure.in.in
@@ -0,0 +1,14 @@
+#MIN_CONFIG(3)
+
+AM_INIT_AUTOMAKE(kshowmail, 3.3.1)
+
+dnl check for mimelib/mimepp.h and mimelib/datetime.h
+
+AC_MSG_CHECKING(for headers $kde_incdir/mimelib/mimepp.h and $kde_incdir/mimelib/datetime.h)
+AC_FIND_FILE("/mimelib/mimepp.h", $kde_incdirs, mimeppdir)
+AC_FIND_FILE("/mimelib/datetime.h", $kde_incdirs, datetimedir)
+if test $mimeppdir = "NO" || test $datetimedir = "NO"; then
+ AC_MSG_ERROR(Headers $kde_incdir/mimelib/mimepp.h or $kde_incdir/mimelib/datetime.h not found. Please install kdepim devel package.)
+else
+ AC_MSG_RESULT([found])
+fi
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644
index 0000000..3afcb22
--- /dev/null
+++ b/doc/Makefile.am
@@ -0,0 +1,10 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+
+SUBDIRS = en de es sv fr hu it ru
+
+####### kdevelop will overwrite this part!!! (end)############
+
+KDE_LANG = ru
+KDE_DOCS = kshowmail
+
+
diff --git a/doc/cs/Makefile.am b/doc/cs/Makefile.am
new file mode 100644
index 0000000..ff41fa8
--- /dev/null
+++ b/doc/cs/Makefile.am
@@ -0,0 +1,10 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+
+
+EXTRA_DIST = index.docbook
+
+####### kdevelop will overwrite this part!!! (end)############
+
+KDE_LANG = en
+KDE_DOCS = kshowmail
+
diff --git a/doc/cs/index.docbook b/doc/cs/index.docbook
new file mode 100644
index 0000000..4832400
--- /dev/null
+++ b/doc/cs/index.docbook
@@ -0,0 +1,516 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1-Based Variant V1.0//EN" "dtd/kdex.dtd" [
+ <!ENTITY kshowmail '<application>Kshowmail</application>'>
+ <!ENTITY kapp "&kshowmail;"><!-- replace kshowmail here -->
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+
+
+ <!-- Do not define any other entities; instead, use the entities
+ from kde-genent.entities and $LANG/user.entities. -->
+]>
+<!-- kdoctemplate v0.8 October 1 1999
+ Minor update to "Credits and Licenses" section on August 24, 2000
+ Removed "Revision history" section on 22 January 2001 -->
+
+<!-- ................................................................ -->
+
+<!-- The language must NOT be changed here. -->
+
+<book lang="&language;">
+
+<!-- This header contains all of the meta-information for the document such
+as Authors, publish date, the abstract, and Keywords -->
+
+<bookinfo>
+<title>The Kshowmail Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Eggert</firstname>
+<surname>Ehmke</surname>
+<affiliation>
+<address><email>eggert.ehmke@berlin.de</email></address>
+</affiliation>
+</author>
+<author>
+<firstname>Allistar</firstname>
+<surname>Melville</surname>
+<affiliation>
+<address><email>allistar@silvermoon.co.nz</email></address>
+</affiliation>
+</author>
+</authorgroup>
+
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+
+<copyright>
+<year>2000</year>
+<year>2001</year>
+<year>2002</year>
+<year>2003</year>
+<year>2004</year>
+<holder>Eggert Ehmke</holder>
+</copyright>
+<!-- Translators: put here the copyright notice of the translation -->
+<!-- Put here the FDL notice. Read the explanation in fdl-notice.docbook
+ and in the FDL itself on how to use it. -->
+<legalnotice>&FDLNotice;</legalnotice>
+
+<!-- Date and version information of the documentation
+Don't forget to include this last date and this last revision number, we
+need them for translation coordination !
+Please respect the format of the date (DD/MM/YYYY) and of the version
+(V.MM.LL), it could be used by automation scripts.
+Do NOT change these in the translation. -->
+
+<date>01/02/2004</date>
+<releaseinfo>3.1.1</releaseinfo>
+
+<!-- Abstract about this handbook -->
+
+<abstract>
+<para>
+This Handbook describes Kshowmail Version 3.1.1
+</para>
+</abstract>
+
+<!-- This is a set of Keywords for indexing by search engines.
+Please at least include KDE, the KDE package it is in, the name
+ of your application, and a few relevant keywords. -->
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kshowmail</keyword>
+<keyword>kmail</keyword>
+<keyword>pop3</keyword>
+<keyword>mail checker</keyword>
+</keywordset>
+
+</bookinfo>
+
+<!-- The contents of the documentation begin here. Label
+each chapter so with the id attribute. This is necessary for two reasons: it
+allows you to easily reference the chapter from other chapters of your
+document, and if there is no ID, the name of the generated HTML files will vary
+from time to time making it hard to manage for maintainers and for the CVS
+system. Any chapter labelled (OPTIONAL) may be left out at the author's
+discretion. Other chapters should not be left out in order to maintain a
+consistent documentation style across all KDE apps. -->
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<!-- The introduction chapter contains a brief introduction for the
+application that explains what it does and where to report
+problems. Basically a long version of the abstract. Don't include a
+revision history. (see installation appendix comment) -->
+
+<para>
+Kshowmail is a KDE tool to watch mails on a POP3 server.
+Headers and complete mails can be viewed without loading them to the
+local mail client.
+Unpleasant mail can be deleted from the server.
+The list of displayed mails can be refreshed via configurable timers.
+Filters can be defined to mark known spam and unwanted mail.
+Mails marked by filters can be deleted automatically.
+A sound can be played if new mail arrives.
+A command menu allows user configurable commands like dcop commands to launch kmail.
+A special command can be defined to send complain mail against spam.
+Multiple accounts are supported.
+</para>
+</chapter>
+
+<chapter id="using-kshowmail">
+<title>Using Kshowmail</title>
+
+<!-- This chapter should tell the user how to use your app. You should use as
+many sections (Chapter, Sect1, Sect3, etc...) as is necessary to fully document
+your application. -->
+
+<sect1 id="kshowmail-features">
+<title>General Usage</title>
+<para>
+Add some accounts in the "Options" config dialog. Connect to the internet. Now you may list the
+mails on the pop3 servers by pressing the "Refresh" button. All other buttons and menu entries
+should explain themself.
+Have fun !
+</para>
+</sect1>
+<sect1 id="shortcuts">
+ <title>Keyboard-Shortcuts</title>
+ <variablelist>
+ <title>These keyboard shortcuts are defined:</title>
+ <varlistentry>
+ <term>F2</term>
+ <listitem>
+ <para>Show headers of selected mails</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F3</term>
+ <listitem>
+ <para>Show complete selected mails</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F5</term>
+ <listitem>
+ <para>Refresh new mails</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Shift-F5</term>
+ <listitem>
+ <para>Force refresh of all mails</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F10</term>
+ <listitem>
+ <para>Configure accounts</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Del</term>
+ <listitem>
+ <para>Delete selected mails from server</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Ctrl-C</term>
+ <listitem>
+ <para>Clear the mail list.
+ (No mails will be deleted from the server)</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+</sect1>
+
+<sect1 id="filter">
+ <title>Filters</title>
+ <para>
+ Filters can be used to select known spam and other unwanted mail.
+ You can define as much filters as you want.
+ They will be applied on all mails each time the message list is refreshed.
+ </para>
+ <para>
+ In the Dialogue "Filter" you can select a state.
+ In the state "Deactivated" all filters are switched off.
+ In the state "Activated" all filters are switched on.
+ Filtered mails are selected in the message list and can be deleted manually.
+ In the state "Automatic delete" all filtered mails are deleted immediatly.
+ Please be careful when you select this state !
+ It may be useful to test new filters some time in the "Activated" state.
+ In the file ~/.kde/share/apps/kshowmail/kshowmail.log you can monitor mails that have been deleted automatically.
+ </para>
+
+ <para>
+ Each filter contains one or two conditions, that can be linked together.
+ Especially powerful conditions can be created using regular expressions.
+ Here the regular expressions of the Qt-Library are utilized,
+ for a detailed documentation see the documentation of the class KRegExpEditor,
+ or one of the numerous texts about regular expressions in the internet.
+ <ulink url="help:/KRegExpEditor/whatIsARegExp.html">
+ What is a regular expression?
+ </ulink>
+ </para>
+
+ <sect2>
+ <title>Regular Expressions examples</title>
+ <para>
+ MS Corporation|Microsoft: either "MS Corporation" or "Microsoft" will be recognized
+ </para>
+ <para>
+ (mail|message) delivery: either "mail delivery" or "message delivery" will be recognized
+ </para>
+ <para>
+ ms (program )?security: either "ms security" or "ms program security" will be recognized
+ </para>
+ <para>
+ [\x0100-\xffff]: all characters outside the ASCII character set are recognized (chinese and korean characters)
+ </para>
+ <para>
+ These templates can be combined arbitrarily.
+ </para>
+ </sect2>
+</sect1>
+
+<sect1 id="cmdline">
+<title>Command Line Parameters</title>
+<para>
+You can provide the selected account on the command line.
+If the option -config is set on the command line, the configuration dialog is started immediatly.
+This can be helpful, if the function "Terminate kshowmail if no new mail" is activated.
+The option -refresh can be used to start the refresh processing immediatly.
+</para>
+</sect1>
+<sect1 id="extprog">
+<title>External programs</title>
+<para>
+To start external programs like kmail, add a entry in the commands menu.
+Command names show up in the Actions menu. If they contain the character '&amp;', the following letter will
+be used as keyboard shortcut.
+</para>
+<para> The following parameters are placeholders and will be substituted by the actual values:</para>
+<para> &lt;user&gt; User name</para>
+<para> &lt;passwd&gt; Password</para>
+<para> &lt;server&gt; Server</para>
+<para> &lt;header&gt; The mail header will be copied to a temporary file, the name of this file will be substituted here.</para>
+<para> &lt;body&gt; The mail body will be copied to a temporary file, the name of this file will be substituted here.</para>
+<para>
+ A very effective method is the dcop command that allows to call selected methods of
+ other KDE programs.
+ You can create a command that calls KMail to get the mail from the server:
+</para>
+<para>
+ <command>dcop kmail KMailIface checkMail</command>
+</para>
+<para>
+ The KDE program kdcop is useful to evaluate the functions of other KDE programs.
+</para>
+</sect1>
+<sect1 id="complain">
+<title> Sending complain mails </title>
+<para>
+ The command to send complain mails is a special one.
+ To keep flexibility, it has been implemented as an external command too.
+ I suggest to use the perl program "spam.pl" version 0.20 or better of Daniel Stenberg.
+ It can be received at <ulink url="http://spam.sourceforge.net">http://spam.sourceforge.net.</ulink>
+ To make it run with kshowmail, follow these steps:
+</para>
+<para>
+ 1. Install spam.pl in a suitable directory, say /usr/local/bin.
+</para>
+<para>
+ 2. Create the files ~/.spam/friends and ~/.spam/from.
+ More details are available in the spam.pl documentation.
+</para>
+<para>
+ 3. Create an entry in the kshowmail command menu.
+ The name of the entry has to be "complain" !
+ Otherwise the command will not be recognized correctly.
+ Enter this text as command line:
+</para>
+<para>
+ <command>spam.pl -d &lt; &lt;body&gt;</command>
+</para>
+<para>
+ This causes the mail body to be piped into spam.pl.
+</para>
+<para>
+ The debug option -d may be removed later, if you are satisfied with the results.
+ Only then the complain mails will be actually sent.
+ Add other options as you like.
+</para>
+<para>
+ Be careful to choose the right entries in the ~/.spam/friends file.
+ At least the local domain should be inserted.
+ Use this feature at your own risk !
+</para>
+<para>
+ As you press the button "Send complain mail", for each highlighted mail
+ there will be one or more complain mails generated and sent immediatly.
+ The receiver of these mails are determined by spam.pl.
+ As long as the option -d is activated, only a message will be displayed to show what would happen.
+ To activate the feature, remove the debug flag.
+</para>
+<para>
+ If you prefer other anti spam programs, try to set them up in a similar way.
+ Contact me if there are any problems.
+</para>
+</sect1>
+</chapter>
+
+<chapter id="faq">
+<title>Questions and Answers</title>
+
+<!-- (OPTIONAL but recommended) This chapter should include all of the silly
+(and not-so-silly) newbie questions that fill up your mailbox. This chapter
+should be reserved for BRIEF questions and answers! If one question uses more
+than a page or so then it should probably be part of the
+"Using this Application" chapter instead. You should use links to
+cross-reference questions to the parts of your documentation that answer them.
+This is also a great place to provide pointers to other FAQ's if your users
+must do some complicated configuration on other programs in order for your
+application work. -->
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>To be provided</para>
+</question>
+<answer>
+<para>To be provided.</para>
+</answer>
+</qandaentry>
+</qandaset>
+</chapter>
+
+<chapter id="credits">
+
+<!-- Include credits for the programmers, documentation writers, and
+contributors here. The license for your software should then be included below
+the credits with a reference to the appropriate license file included in the KDE
+distribution. -->
+
+<title>Credits and License</title>
+
+<para>
+&kapp;
+</para>
+<para>
+Program copyright 2000-2003 Eggert Ehmke <email>eggert.ehmke@berlin.de</email>
+</para>
+<para>
+Contributors:
+<itemizedlist>
+<listitem>
+<para>
+Nicolas Vignal <email>nicolas.vignal@fnac.net</email> who provided RPMs for RedHat,
+and the french translation.
+</para>
+</listitem>
+<listitem>
+<para>
+Edgardo Garcia <email>edyx@mindless.com</email> who provided the spanish translation
+</para>
+</listitem>
+<listitem>
+<para>
+Mattias Newzella <email>newzella@swipnet.se</email> who provided the swedish translation
+</para>
+</listitem>
+<listitem>
+<para>
+Sandor Laza <email>slaza@xs4all.nl</email> who provided the hungarian translation
+</para>
+</listitem>
+<listitem>
+<para>
+Gabriele Postorino <email>g.posto@tin.it</email> who provided the italian translation
+</para>
+</listitem>
+<listitem>
+<para>
+Many users did a lot of testing and created a lot of
+ideas that are now part of kshowmail.
+I want to say "thank you" to all of you !
+</para>
+</listitem>
+</itemizedlist>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove. Commercial development should -->
+<!-- replace this with their copyright and either remove it or re-set this.-->
+
+<!-- Determine which license your application is licensed under,
+ and delete all the remaining licenses below:
+
+ (NOTE: All documentation are licensed under the FDL,
+ regardless of what license the application uses) -->
+
+&underGPL; <!-- GPL License -->
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kshowmail">
+<title>How to obtain Kshowmail</title>
+
+<para>
+The actual version is to be found on
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+or on
+<ulink url="http://freshmeat.net">http://freshmeat.net</ulink>
+
+</para>
+</sect1>
+
+<sect1 id="requirements">
+<title>Requirements</title>
+
+<!--
+List any special requirements for your application here. This should include:
+.Libraries or other software that is not included in kdesupport,
+kdelibs, or kdebase.
+.Hardware requirements like amount of RAM, disk space, graphics card
+capabilities, screen resolution, special expansion cards, etc.
+.Operating systems the app will run on. If your app is designed only for a
+specific OS, (you wrote a graphical LILO configurator for example) put this
+information here.
+-->
+
+<para>
+ Developed and tested under SuSE 8.2.
+ In order to successfully use Kshowmail, you need KDE 3.1.x and Qt 3.1.x.
+</para>
+
+<!-- For a list of updates, you may refer to the application web site
+or the ChangeLog file, or ... -->
+<para>
+You can find a list of changes at
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+</para>
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and Installation</title>
+
+<para>
+ In order to compile and install Kshowmail on your system, type the following in the base
+ directory of Kshowmail:
+ <screen width="40">
+ <prompt>%</prompt> <userinput>./configure</userinput>
+ or even:
+ <prompt>%</prompt> <userinput>./configure --prefix=$KDEDIR</userinput>
+
+ <prompt>%</prompt> <userinput>make</userinput>
+
+ as root:
+ <prompt>%</prompt> <userinput>make install</userinput>
+ </screen>
+ It may be useful to set the environment variable KDEDIR before these steps.
+</para>
+
+<para>
+ Since Kshowmail uses autoconf and automake you should have not trouble compiling it.
+ Should you run into problems please report them to me.
+</para>
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/de/Makefile.am b/doc/de/Makefile.am
new file mode 100644
index 0000000..8108eb8
--- /dev/null
+++ b/doc/de/Makefile.am
@@ -0,0 +1,10 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+
+
+EXTRA_DIST = index.docbook
+
+####### kdevelop will overwrite this part!!! (end)############
+
+KDE_LANG = de
+KDE_DOCS = kshowmail
+
diff --git a/doc/de/index.docbook b/doc/de/index.docbook
new file mode 100644
index 0000000..47ae09b
--- /dev/null
+++ b/doc/de/index.docbook
@@ -0,0 +1,522 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1-Based Variant V1.0//EN" "dtd/kdex.dtd" [
+ <!ENTITY kshowmail '<application>Kshowmail</application>'>
+ <!ENTITY kapp "&kshowmail;"><!-- replace kshowmail here -->
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % German "INCLUDE"><!-- change language only here -->
+
+
+ <!-- Do not define any other entities; instead, use the entities
+ from kde-genent.entities and $LANG/user.entities. -->
+]>
+<!-- kdoctemplate v0.8 October 1 1999
+ Minor update to "Credits and Licenses" section on August 24, 2000
+ Removed "Revision history" section on 22 January 2001 -->
+
+<!-- ................................................................ -->
+
+<!-- The language must NOT be changed here. -->
+
+<book lang="&language;">
+
+<!-- This header contains all of the meta-information for the document such
+as Authors, publish date, the abstract, and Keywords -->
+
+<bookinfo>
+<title>Das KShowmail Handbuch</title>
+
+<authorgroup>
+<author>
+<firstname>Eggert</firstname>
+<surname>Ehmke</surname>
+<affiliation>
+<address><email>eggert.ehmke@berlin.de</email></address>
+</affiliation>
+</author>
+<author>
+<firstname>Allistar</firstname>
+<surname>Melville</surname>
+<affiliation>
+<address><email>allistar@silvermoon.co.nz</email></address>
+</affiliation>
+</author>
+</authorgroup>
+
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+
+<copyright>
+<year>2000</year>
+<year>2001</year>
+<year>2002</year>
+<year>2003</year>
+<year>2004</year>
+<holder>Eggert Ehmke</holder>
+</copyright>
+<!-- Translators: put here the copyright notice of the translation -->
+<!-- Put here the FDL notice. Read the explanation in fdl-notice.docbook
+ and in the FDL itself on how to use it. -->
+<legalnotice>&FDLNotice;</legalnotice>
+
+<!-- Date and version information of the documentation
+Don't forget to include this last date and this last revision number, we
+need them for translation coordination !
+Please respect the format of the date (DD/MM/YYYY) and of the version
+(V.MM.LL), it could be used by automation scripts.
+Do NOT change these in the translation. -->
+
+<date>01/02/2004</date>
+<releaseinfo>3.1.1</releaseinfo>
+
+<!-- Abstract about this handbook -->
+
+<abstract>
+<para>
+Dieses Handbuch beschreibt KShowmail Version 3.1.1
+</para>
+</abstract>
+
+<!-- This is a set of Keywords for indexing by search engines.
+Please at least include KDE, the KDE package it is in, the name
+ of your application, and a few relevant keywords. -->
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kshowmail</keyword>
+<keyword>kmail</keyword>
+<keyword>pop3</keyword>
+<keyword>mail checker</keyword>
+</keywordset>
+
+</bookinfo>
+
+<!-- The contents of the documentation begin here. Label
+each chapter so with the id attribute. This is necessary for two reasons: it
+allows you to easily reference the chapter from other chapters of your
+document, and if there is no ID, the name of the generated HTML files will vary
+from time to time making it hard to manage for maintainers and for the CVS
+system. Any chapter labelled (OPTIONAL) may be left out at the author's
+discretion. Other chapters should not be left out in order to maintain a
+consistent documentation style across all KDE apps. -->
+
+<chapter id="introduction">
+<title>Einf&uuml;hrung</title>
+
+<!-- The introduction chapter contains a brief introduction for the
+application that explains what it does and where to report
+problems. Basically a long version of the abstract. Don't include a
+revision history. (see installation appendix comment) -->
+
+<para>
+KShowmail ist ein KDE-Tool, mit dem Nachrichten (Emails) auf einem POP3-Server
+&uuml;berwacht werden k&ouml;nnen.
+Headers und vollst&auml;ndige Nachrichten k&ouml;nnen betrachtet werden, ohne sie dem lokalen Mail-Client zuzustellen.
+Ungew&uuml;nschte Nachrichten k&ouml;nnen auf dem Server gel&ouml;scht werden.
+Die Liste der angezeigten Nachrichten kann periodisch erneuert werden.
+Filter k&ouml;nnen definiert werden, um bekannte Spam zu kennzeichnen.
+Die durch Filter gekennzeichneten Nchrichten k&ouml;nnen automatisch gel&ouml;scht werden.
+Beim Eintreffen neuer Nachrichten kann ein Klang abgespielt werden.
+Ein Men&uuml; "Kommandos" erlaubt die Einrichtung von benutzerdefinierten
+Kommandos wie dcop zum Aufrufen von Funktionen anderer KDE-Programme.
+Zum Versenden von Beschwerden wegen Spam kann ein besonderes Kommando eingerichtet werden.
+Mehrere Pop3-Konten k&ouml;nnen &uuml;berwacht werden.
+</para>
+</chapter>
+
+<chapter id="using-kshowmail">
+<title>Benutzung</title>
+
+<!-- This chapter should tell the user how to use your app. You should use as
+many sections (Chapter, Sect1, Sect3, etc...) as is necessary to fully document
+your application. -->
+
+<sect1 id="kshowmail-features">
+<title>Allgemein</title>
+<para>
+Im Dialog "Einstellungen/Konten einrichten" k&ouml;nnen Benutzerkonten eingerichtet werden.
+Wenn eine Verbindung zum Internet besteht,
+k&ouml;nnen die Nachrichten auf dem POP3-Server durch Dr&uuml;cken des Buttons "Nachrichten erneuern" angezeigt werden.
+Im Dialog "Einstellungen/Filter einrichten" k&ouml;nnen Filter eingerichtet werden,
+um Nachrichten von bekannten Spammern auszufiltern.
+Alle anderen Buttons und Men&uuml;-Funktionen sollten selbsterkl&auml;rend sein.
+Viel Spa&szlig; !
+</para>
+</sect1>
+<sect1 id="shortcuts">
+ <title>Tastatur-K&uuml;rzel</title>
+ <variablelist>
+ <title>Diese Tastatur-K&uuml;rzel sind definiert:</title>
+ <varlistentry>
+ <term>F2</term>
+ <listitem>
+ <para>Vorspann der markierten Nachrichten anzeigen</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F3</term>
+ <listitem>
+ <para>Vollst&auml;ndige markierte Nachrichten anzeigen</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F5</term>
+ <listitem>
+ <para>Nachrichten erneuern</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Umschalt-F5</term>
+ <listitem>
+ <para>Erzwungenes Erneuern aller Nachrichten</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F10</term>
+ <listitem>
+ <para>Konten einrichten</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Entf</term>
+ <listitem>
+ <para> Markierte Nachrichten l&ouml;schen</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Strg-C</term>
+ <listitem>
+ <para> Liste der geladenen Nachrichten l&ouml;schen
+ (Nachrichten werden nicht vom Server gel&ouml;scht)
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+</sect1>
+
+<sect1 id="filter">
+ <title>Filter</title>
+ <para>
+ Mit Hilfe von Filtern ist es m&ouml;glich, bekannte Spammer und andere unerw&uuml;nschte Nachrichten auszufiltern.
+ Es k&ouml;nnen beliebig viele Filter eingerichtet werden.
+ Sie werden jeweils beim Erneuern der Nachrichtenliste auf alle vorhandenen Nachrichten angewandt.
+ </para>
+ <para>
+ Im Dialog "Filter" kann der Status eingestellt werden.
+ Im Status "Deaktiviert" sind alle Filter ausgeschaltet.
+ Im Status "Aktiviert" sind alle Filter eingeschaltet.
+ Gefilterte Nachrichten werden in der Nachrichtenliste markiert und k&ouml;nnen manuell gel&ouml;scht werden.
+ Im Status "Automatisches L&ouml;schen" werden alle gefilterten Nachrichten sofort gel&ouml;scht.
+ Bitte Vorsicht beim Aktivieren dieses Status !
+ Es ist sinnvoll, neue Filter zun&auml;chst einige Zeit im Status "Aktiviert" zu testen.
+ In der Datei ~/.kde/share/apps/kshowmail/kshowmail.log k&ouml;nnen automatisch gel&ouml;schte Nachrichten
+ &uuml;berpr&uuml;ft werden.
+ </para>
+
+ <para>
+ Jeder Filter besteht aus ein oder zwei Bedingungen, die miteinander verkn&uuml;pft werden k&ouml;nnen.
+ Besonders aussagekr&auml;ftige Bedingungen k&ouml;nnen mit Hilfe der "Regul&auml;ren Ausdr&uuml;cke" formuliert werden.
+ Es werden die Regul&auml;ren Ausdr&uuml;cke der Qt-Bibliothek verwendet, f&uuml;r eine genauere Dokumentation der Syntax
+ siehe die Dokumentation der Klasse KRegExpEditor oder eine der vielen Texte zu "Regular Expressions" im Internet.
+ <ulink url="help:/KRegExpEditor/whatIsARegExp.html">
+ Was ist ein regul&auml;rer Ausdruck?
+ </ulink>
+ </para>
+
+ <sect2>
+ <title>Beispiele zu Regul&auml;ren Ausdr&uuml;cken</title>
+ <para>
+ MS Corporation|Microsoft: entweder "MS Corporation" oder "Microsoft" wird erkannt
+ </para>
+ <para>
+ (mail|message) delivery: entweder "mail delivery" oder "message delivery" wird erkannt
+ </para>
+ <para>
+ ms (program )?security: entweder "ms security" oder "ms program security" wird erkannt
+ </para>
+ <para>
+ [\x0100-\xffff]: alle Zeichen ausserhalb des ASCII-Alphabets werden erkannt (chinesische und koreanische Schriftzeichen)
+ </para>
+ <para>
+ Diese Muster lassen sich beliebig kombinieren.
+ </para>
+ </sect2>
+</sect1>
+
+<sect1 id="cmdline">
+ <title>Kommandozeilen-Parameter</title>
+ <para>
+ Das gew&uuml;nschte Benutzerkonto kann beim Aufruf des Programms auf der Kommandozeile &uuml;bergeben werden.
+ Wird das Programm mit der Option -config gestartet, so wird unmittelbar der Konfigurationsdialog gestartet.
+ Dies kann n&uuml;tzlich sein, wenn die Funktion "Beenden von KShowmail, wenn keine neuen Nachrichten" aktiviert ist.
+ Die Option -refresh kann benutzt werden, um die Erneuerung der Nachrichten sofort zu starten.
+ </para>
+</sect1>
+
+<sect1 id="extprog">
+<title>Externe Kommandos</title>
+<para>
+Im Men&uuml; "Kommandos" k&ouml;nnen externe Kommandos wie dcop eingetragen werden. Die Kommandonamen
+erscheinen danach im gleichen Men&uuml;. Wenn der Kommandoname das Zeichen '&amp;' enth&auml;lt, kann das folgende Zeichen
+als Tastaturk&uuml;rzel benutzt werden.
+</para>
+<para>
+Die folgenden Parameter sind Platzhalter und werden beim Aufruf durch aktuelle
+Werte ersetzt:
+</para>
+<para> &lt;user&gt; Benutzername</para>
+<para> &lt;passwd&gt; Passwort</para>
+<para> &lt;server&gt; Server</para>
+<para>
+&lt;header&gt; Der Vorspann der Nachricht wird in eine tempor&auml;re Datei kopiert, der Name dieser Datei wird hier eingetragen.
+</para>
+<para>
+&lt;body&gt; Die vollst&auml;ndige Nachricht wird in eine tempor&auml;re Datei kopiert, der Name dieser Datei wird hier eingetragen.
+</para>
+
+<para>
+ Eine hilfreiche Methode ist das Kommando dcop, mit dem man ausgew&auml;hlte Funktionen
+ anderer KDE-Programme aufrufen kann.
+ Mit dem folgenden Kommando wird die Mail durch KMail abgerufen:
+</para>
+<para>
+ dcop kmail KMailIface checkMail
+</para>
+<para>
+ Das KDE-Programm kdcop ist hilfreich, um die Funktionen von anderen KDE-Programmen zu erkunden.
+</para>
+
+</sect1>
+<sect1 id="complain">
+<title> Verschicken von Beschwerden </title>
+<para>
+Eine besondere Rolle spielt das Kommando zum Verschicken von Beschwerden wegen Spam.
+Um m&ouml;glichst flexibel zu bleiben, wird es ebenfalls als externes Kommando realisiert.
+Ich empfehle die Benutzung von "spam.pl" Version 0.21 von Daniel Stenberg.
+Es ist zu beziehen unter <ulink url="http://spam.sourceforge.net">http://spam.sourceforge.net.</ulink>
+Um es in KShowmail einzubinden, sind folgende Schritte notwendig:
+</para>
+<para>1. Installiere spam.pl in ein geeignetes Verzeichnis, z.B. /usr/local/bin.</para>
+<para>2. Richte die Dateien ~/.spam/friends und ~/.spam/from ein.
+Weitere Details sind der Dokumentation von spam.pl zu entnehmen.</para>
+<para>3. Einrichten eines Eintrages im Kommandomen&uuml; von KShowmail.
+Der Name des Men&uuml;eintrages mu&szlig; "complain" lauten !
+Sonst wird das Kommando nicht richtig erkannt.
+Als Kommandozeile wird folgender Text eingetragen:
+</para>
+<para> spam.pl -d &lt; &lt;body&gt;</para>
+<para> Hier wird der Text der Nachricht nach stdin von spam.pl umgeleitet.</para>
+<para/>
+<para>
+Die Option -d (Debug) kann sp&auml;ter entfernt werden, wenn man mit der Einrichtung zufrieden ist.
+Erst dann werden die Beschwerden tats&auml;chlich abgeschickt.
+Andere Optionen k&ouml;nnen nach Bedarf hinzugef&uuml;gt werden.
+</para>
+<para>
+Der Inhalt der Datei ~/.spam/friends sollte sorgf&auml;ltig gew&auml;hlt werden.
+Mindestens die eigene Domain sollte darin stehen.
+Die Benutzung dieses Features geschieht auf eigene Gefahr !
+</para>
+<para>
+Bei Bet&auml;tigen des Buttons "Beschwerde schicken" wird f&uuml;r jede markierte Nachricht
+eine oder mehrere Beschwerden erzeugt, die sofort verschickt werden.
+Die Empf&auml;nger dieser Nachrichten werden von spam.pl festgelegt.
+Solange die Debugoption -d in der Kommandozeile steht, wird lediglich ein Fenster angezeigt,
+aus dem zu entnehmen ist, an welche Empf&auml;nger die Nachricht gehen w&uuml;rde.
+Die Funktion wird also aktiviert, indem das Debugflag entfernt wird !
+</para>
+<para>
+Wer ein anderes Anti-Spam-Programm bevorzugt, kann versuchen, es auf &auml;hnliche Weise einzubinden.
+Wenn es dabei Probleme geben sollte, werde ich versuchen zu helfen.
+</para>
+</sect1>
+</chapter>
+
+<chapter id="faq">
+<title>Fragen und Antworten</title>
+
+<!-- (OPTIONAL but recommended) This chapter should include all of the silly
+(and not-so-silly) newbie questions that fill up your mailbox. This chapter
+should be reserved for BRIEF questions and answers! If one question uses more
+than a page or so then it should probably be part of the
+"Using this Application" chapter instead. You should use links to
+cross-reference questions to the parts of your documentation that answer them.
+This is also a great place to provide pointers to other FAQ's if your users
+must do some complicated configuration on other programs in order for your
+application work. -->
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>keine Fragen ...</para>
+</question>
+<answer>
+<para>... keine Antworten !</para>
+</answer>
+</qandaentry>
+</qandaset>
+</chapter>
+
+<chapter id="credits">
+
+<!-- Include credits for the programmers, documentation writers, and
+contributors here. The license for your software should then be included below
+the credits with a reference to the appropriate license file included in the KDE
+distribution. -->
+
+<title>Beitr&auml;ge</title>
+
+<para>
+&kapp;
+</para>
+<para>
+Program copyright 2000-2003 Eggert Ehmke <email>eggert.ehmke@berlin.de</email>
+</para>
+<para>
+Mitwirkende:
+<itemizedlist>
+<listitem>
+<para>
+Nicolas Vignal <email>nicolas.vignal@fnac.net</email> erstellte RPM's f&uuml;r RedHat,
+und die franz&ouml;sische &Uuml;bersetzung.
+</para>
+</listitem>
+<listitem>
+<para>
+Edgardo Garcia <email>edyx@mindless.com</email> erstellte die spanische &Uuml;bersetzung.
+</para>
+</listitem>
+<listitem>
+<para>
+Mattias Newzella <email>newzella@swipnet.se</email> erstellte die schwedische &Uuml;bersetzung.
+</para>
+</listitem>
+<listitem>
+<para>
+Sandor Laza <email>slaza@xs4all.nl</email> erstellte die ungarische &Uuml;bersetzung.
+</para>
+</listitem>
+<listitem>
+<para>
+Gabriele Postorino <email>g.posto@tin.it</email> erstellte die italienische &Uuml;bersetzung.
+</para>
+</listitem>
+<listitem>
+<para>
+Viele Benutzer haben mir bei den Tests geholfen und viele Ideen gehabt, die in das Programm
+eingeflossen sind. Bei allen m&ouml;chte ich mich bedanken !
+</para>
+</listitem>
+</itemizedlist>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove. Commercial development should -->
+<!-- replace this with their copyright and either remove it or re-set this.-->
+
+<!-- Determine which license your application is licensed under,
+ and delete all the remaining licenses below:
+
+ (NOTE: All documentation are licensed under the FDL,
+ regardless of what license the application uses) -->
+
+&underGPL; <!-- GPL License -->
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kshowmail">
+<title>Wo bekomme ich KShowmail ?</title>
+
+<para>
+Die aktuelle Version gibt es immer unter
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+oder bei
+<ulink url="http://freshmeat.net">http://freshmeat.net</ulink>
+</para>
+</sect1>
+
+<sect1 id="requirements">
+<title>Voraussetzungen</title>
+
+<!--
+List any special requirements for your application here. This should include:
+.Libraries or other software that is not included in kdesupport,
+kdelibs, or kdebase.
+.Hardware requirements like amount of RAM, disk space, graphics card
+capabilities, screen resolution, special expansion cards, etc.
+.Operating systems the app will run on. If your app is designed only for a
+specific OS, (you wrote a graphical LILO configurator for example) put this
+information here.
+-->
+
+<para>
+Entwickelt und getestet unter SuSE Linux 8.2.
+Das Programm sollte sich unter allen Linux-Distributionen &uuml;bersetzen lassen.
+Qt 3.1.x und KDE 3.1.x werden ben&ouml;tigt, und die X include Dateien.
+</para>
+
+<!-- For a list of updates, you may refer to the application web site
+or the ChangeLog file, or ... -->
+<para>
+Die aktuellen &Auml;nderungen befinden sich in der Datei Changelog oder bei
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail/</ulink>
+</para>
+</sect1>
+
+<sect1 id="compilation">
+ <title>Kompilation und Installation</title>
+ <para>
+ Um KShowmail zu &uuml;bersetzen und zu installieren, benutze diese Kommandos
+ im Installationsverzeichnis:
+ <screen width="40">
+ <prompt>%</prompt> <userinput>./configure</userinput>
+ oder auch
+ <prompt>%</prompt> <userinput>./configure --prefix=$KDEDIR</userinput>
+
+ <prompt>%</prompt> <userinput>make</userinput>
+
+ Als root:
+ <prompt>%</prompt> <userinput>make install</userinput>
+ </screen>
+ Es ist sinnvoll, die Umgebungsvariable KDEDIR vorher richtig zu setzen.
+ </para>
+
+ <para>
+ Da KShowmail autoconf benutzt, sollte es keine Probleme geben.
+ Falls doch irgendwelche Schwierigkeiten auftreten sollten, wende dich an mich.
+ </para>
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/en/Makefile.am b/doc/en/Makefile.am
new file mode 100644
index 0000000..ff41fa8
--- /dev/null
+++ b/doc/en/Makefile.am
@@ -0,0 +1,10 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+
+
+EXTRA_DIST = index.docbook
+
+####### kdevelop will overwrite this part!!! (end)############
+
+KDE_LANG = en
+KDE_DOCS = kshowmail
+
diff --git a/doc/en/index.docbook b/doc/en/index.docbook
new file mode 100644
index 0000000..4832400
--- /dev/null
+++ b/doc/en/index.docbook
@@ -0,0 +1,516 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1-Based Variant V1.0//EN" "dtd/kdex.dtd" [
+ <!ENTITY kshowmail '<application>Kshowmail</application>'>
+ <!ENTITY kapp "&kshowmail;"><!-- replace kshowmail here -->
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % English "INCLUDE"><!-- change language only here -->
+
+
+ <!-- Do not define any other entities; instead, use the entities
+ from kde-genent.entities and $LANG/user.entities. -->
+]>
+<!-- kdoctemplate v0.8 October 1 1999
+ Minor update to "Credits and Licenses" section on August 24, 2000
+ Removed "Revision history" section on 22 January 2001 -->
+
+<!-- ................................................................ -->
+
+<!-- The language must NOT be changed here. -->
+
+<book lang="&language;">
+
+<!-- This header contains all of the meta-information for the document such
+as Authors, publish date, the abstract, and Keywords -->
+
+<bookinfo>
+<title>The Kshowmail Handbook</title>
+
+<authorgroup>
+<author>
+<firstname>Eggert</firstname>
+<surname>Ehmke</surname>
+<affiliation>
+<address><email>eggert.ehmke@berlin.de</email></address>
+</affiliation>
+</author>
+<author>
+<firstname>Allistar</firstname>
+<surname>Melville</surname>
+<affiliation>
+<address><email>allistar@silvermoon.co.nz</email></address>
+</affiliation>
+</author>
+</authorgroup>
+
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+
+<copyright>
+<year>2000</year>
+<year>2001</year>
+<year>2002</year>
+<year>2003</year>
+<year>2004</year>
+<holder>Eggert Ehmke</holder>
+</copyright>
+<!-- Translators: put here the copyright notice of the translation -->
+<!-- Put here the FDL notice. Read the explanation in fdl-notice.docbook
+ and in the FDL itself on how to use it. -->
+<legalnotice>&FDLNotice;</legalnotice>
+
+<!-- Date and version information of the documentation
+Don't forget to include this last date and this last revision number, we
+need them for translation coordination !
+Please respect the format of the date (DD/MM/YYYY) and of the version
+(V.MM.LL), it could be used by automation scripts.
+Do NOT change these in the translation. -->
+
+<date>01/02/2004</date>
+<releaseinfo>3.1.1</releaseinfo>
+
+<!-- Abstract about this handbook -->
+
+<abstract>
+<para>
+This Handbook describes Kshowmail Version 3.1.1
+</para>
+</abstract>
+
+<!-- This is a set of Keywords for indexing by search engines.
+Please at least include KDE, the KDE package it is in, the name
+ of your application, and a few relevant keywords. -->
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kshowmail</keyword>
+<keyword>kmail</keyword>
+<keyword>pop3</keyword>
+<keyword>mail checker</keyword>
+</keywordset>
+
+</bookinfo>
+
+<!-- The contents of the documentation begin here. Label
+each chapter so with the id attribute. This is necessary for two reasons: it
+allows you to easily reference the chapter from other chapters of your
+document, and if there is no ID, the name of the generated HTML files will vary
+from time to time making it hard to manage for maintainers and for the CVS
+system. Any chapter labelled (OPTIONAL) may be left out at the author's
+discretion. Other chapters should not be left out in order to maintain a
+consistent documentation style across all KDE apps. -->
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<!-- The introduction chapter contains a brief introduction for the
+application that explains what it does and where to report
+problems. Basically a long version of the abstract. Don't include a
+revision history. (see installation appendix comment) -->
+
+<para>
+Kshowmail is a KDE tool to watch mails on a POP3 server.
+Headers and complete mails can be viewed without loading them to the
+local mail client.
+Unpleasant mail can be deleted from the server.
+The list of displayed mails can be refreshed via configurable timers.
+Filters can be defined to mark known spam and unwanted mail.
+Mails marked by filters can be deleted automatically.
+A sound can be played if new mail arrives.
+A command menu allows user configurable commands like dcop commands to launch kmail.
+A special command can be defined to send complain mail against spam.
+Multiple accounts are supported.
+</para>
+</chapter>
+
+<chapter id="using-kshowmail">
+<title>Using Kshowmail</title>
+
+<!-- This chapter should tell the user how to use your app. You should use as
+many sections (Chapter, Sect1, Sect3, etc...) as is necessary to fully document
+your application. -->
+
+<sect1 id="kshowmail-features">
+<title>General Usage</title>
+<para>
+Add some accounts in the "Options" config dialog. Connect to the internet. Now you may list the
+mails on the pop3 servers by pressing the "Refresh" button. All other buttons and menu entries
+should explain themself.
+Have fun !
+</para>
+</sect1>
+<sect1 id="shortcuts">
+ <title>Keyboard-Shortcuts</title>
+ <variablelist>
+ <title>These keyboard shortcuts are defined:</title>
+ <varlistentry>
+ <term>F2</term>
+ <listitem>
+ <para>Show headers of selected mails</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F3</term>
+ <listitem>
+ <para>Show complete selected mails</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F5</term>
+ <listitem>
+ <para>Refresh new mails</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Shift-F5</term>
+ <listitem>
+ <para>Force refresh of all mails</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F10</term>
+ <listitem>
+ <para>Configure accounts</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Del</term>
+ <listitem>
+ <para>Delete selected mails from server</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Ctrl-C</term>
+ <listitem>
+ <para>Clear the mail list.
+ (No mails will be deleted from the server)</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+</sect1>
+
+<sect1 id="filter">
+ <title>Filters</title>
+ <para>
+ Filters can be used to select known spam and other unwanted mail.
+ You can define as much filters as you want.
+ They will be applied on all mails each time the message list is refreshed.
+ </para>
+ <para>
+ In the Dialogue "Filter" you can select a state.
+ In the state "Deactivated" all filters are switched off.
+ In the state "Activated" all filters are switched on.
+ Filtered mails are selected in the message list and can be deleted manually.
+ In the state "Automatic delete" all filtered mails are deleted immediatly.
+ Please be careful when you select this state !
+ It may be useful to test new filters some time in the "Activated" state.
+ In the file ~/.kde/share/apps/kshowmail/kshowmail.log you can monitor mails that have been deleted automatically.
+ </para>
+
+ <para>
+ Each filter contains one or two conditions, that can be linked together.
+ Especially powerful conditions can be created using regular expressions.
+ Here the regular expressions of the Qt-Library are utilized,
+ for a detailed documentation see the documentation of the class KRegExpEditor,
+ or one of the numerous texts about regular expressions in the internet.
+ <ulink url="help:/KRegExpEditor/whatIsARegExp.html">
+ What is a regular expression?
+ </ulink>
+ </para>
+
+ <sect2>
+ <title>Regular Expressions examples</title>
+ <para>
+ MS Corporation|Microsoft: either "MS Corporation" or "Microsoft" will be recognized
+ </para>
+ <para>
+ (mail|message) delivery: either "mail delivery" or "message delivery" will be recognized
+ </para>
+ <para>
+ ms (program )?security: either "ms security" or "ms program security" will be recognized
+ </para>
+ <para>
+ [\x0100-\xffff]: all characters outside the ASCII character set are recognized (chinese and korean characters)
+ </para>
+ <para>
+ These templates can be combined arbitrarily.
+ </para>
+ </sect2>
+</sect1>
+
+<sect1 id="cmdline">
+<title>Command Line Parameters</title>
+<para>
+You can provide the selected account on the command line.
+If the option -config is set on the command line, the configuration dialog is started immediatly.
+This can be helpful, if the function "Terminate kshowmail if no new mail" is activated.
+The option -refresh can be used to start the refresh processing immediatly.
+</para>
+</sect1>
+<sect1 id="extprog">
+<title>External programs</title>
+<para>
+To start external programs like kmail, add a entry in the commands menu.
+Command names show up in the Actions menu. If they contain the character '&amp;', the following letter will
+be used as keyboard shortcut.
+</para>
+<para> The following parameters are placeholders and will be substituted by the actual values:</para>
+<para> &lt;user&gt; User name</para>
+<para> &lt;passwd&gt; Password</para>
+<para> &lt;server&gt; Server</para>
+<para> &lt;header&gt; The mail header will be copied to a temporary file, the name of this file will be substituted here.</para>
+<para> &lt;body&gt; The mail body will be copied to a temporary file, the name of this file will be substituted here.</para>
+<para>
+ A very effective method is the dcop command that allows to call selected methods of
+ other KDE programs.
+ You can create a command that calls KMail to get the mail from the server:
+</para>
+<para>
+ <command>dcop kmail KMailIface checkMail</command>
+</para>
+<para>
+ The KDE program kdcop is useful to evaluate the functions of other KDE programs.
+</para>
+</sect1>
+<sect1 id="complain">
+<title> Sending complain mails </title>
+<para>
+ The command to send complain mails is a special one.
+ To keep flexibility, it has been implemented as an external command too.
+ I suggest to use the perl program "spam.pl" version 0.20 or better of Daniel Stenberg.
+ It can be received at <ulink url="http://spam.sourceforge.net">http://spam.sourceforge.net.</ulink>
+ To make it run with kshowmail, follow these steps:
+</para>
+<para>
+ 1. Install spam.pl in a suitable directory, say /usr/local/bin.
+</para>
+<para>
+ 2. Create the files ~/.spam/friends and ~/.spam/from.
+ More details are available in the spam.pl documentation.
+</para>
+<para>
+ 3. Create an entry in the kshowmail command menu.
+ The name of the entry has to be "complain" !
+ Otherwise the command will not be recognized correctly.
+ Enter this text as command line:
+</para>
+<para>
+ <command>spam.pl -d &lt; &lt;body&gt;</command>
+</para>
+<para>
+ This causes the mail body to be piped into spam.pl.
+</para>
+<para>
+ The debug option -d may be removed later, if you are satisfied with the results.
+ Only then the complain mails will be actually sent.
+ Add other options as you like.
+</para>
+<para>
+ Be careful to choose the right entries in the ~/.spam/friends file.
+ At least the local domain should be inserted.
+ Use this feature at your own risk !
+</para>
+<para>
+ As you press the button "Send complain mail", for each highlighted mail
+ there will be one or more complain mails generated and sent immediatly.
+ The receiver of these mails are determined by spam.pl.
+ As long as the option -d is activated, only a message will be displayed to show what would happen.
+ To activate the feature, remove the debug flag.
+</para>
+<para>
+ If you prefer other anti spam programs, try to set them up in a similar way.
+ Contact me if there are any problems.
+</para>
+</sect1>
+</chapter>
+
+<chapter id="faq">
+<title>Questions and Answers</title>
+
+<!-- (OPTIONAL but recommended) This chapter should include all of the silly
+(and not-so-silly) newbie questions that fill up your mailbox. This chapter
+should be reserved for BRIEF questions and answers! If one question uses more
+than a page or so then it should probably be part of the
+"Using this Application" chapter instead. You should use links to
+cross-reference questions to the parts of your documentation that answer them.
+This is also a great place to provide pointers to other FAQ's if your users
+must do some complicated configuration on other programs in order for your
+application work. -->
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>To be provided</para>
+</question>
+<answer>
+<para>To be provided.</para>
+</answer>
+</qandaentry>
+</qandaset>
+</chapter>
+
+<chapter id="credits">
+
+<!-- Include credits for the programmers, documentation writers, and
+contributors here. The license for your software should then be included below
+the credits with a reference to the appropriate license file included in the KDE
+distribution. -->
+
+<title>Credits and License</title>
+
+<para>
+&kapp;
+</para>
+<para>
+Program copyright 2000-2003 Eggert Ehmke <email>eggert.ehmke@berlin.de</email>
+</para>
+<para>
+Contributors:
+<itemizedlist>
+<listitem>
+<para>
+Nicolas Vignal <email>nicolas.vignal@fnac.net</email> who provided RPMs for RedHat,
+and the french translation.
+</para>
+</listitem>
+<listitem>
+<para>
+Edgardo Garcia <email>edyx@mindless.com</email> who provided the spanish translation
+</para>
+</listitem>
+<listitem>
+<para>
+Mattias Newzella <email>newzella@swipnet.se</email> who provided the swedish translation
+</para>
+</listitem>
+<listitem>
+<para>
+Sandor Laza <email>slaza@xs4all.nl</email> who provided the hungarian translation
+</para>
+</listitem>
+<listitem>
+<para>
+Gabriele Postorino <email>g.posto@tin.it</email> who provided the italian translation
+</para>
+</listitem>
+<listitem>
+<para>
+Many users did a lot of testing and created a lot of
+ideas that are now part of kshowmail.
+I want to say "thank you" to all of you !
+</para>
+</listitem>
+</itemizedlist>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove. Commercial development should -->
+<!-- replace this with their copyright and either remove it or re-set this.-->
+
+<!-- Determine which license your application is licensed under,
+ and delete all the remaining licenses below:
+
+ (NOTE: All documentation are licensed under the FDL,
+ regardless of what license the application uses) -->
+
+&underGPL; <!-- GPL License -->
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kshowmail">
+<title>How to obtain Kshowmail</title>
+
+<para>
+The actual version is to be found on
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+or on
+<ulink url="http://freshmeat.net">http://freshmeat.net</ulink>
+
+</para>
+</sect1>
+
+<sect1 id="requirements">
+<title>Requirements</title>
+
+<!--
+List any special requirements for your application here. This should include:
+.Libraries or other software that is not included in kdesupport,
+kdelibs, or kdebase.
+.Hardware requirements like amount of RAM, disk space, graphics card
+capabilities, screen resolution, special expansion cards, etc.
+.Operating systems the app will run on. If your app is designed only for a
+specific OS, (you wrote a graphical LILO configurator for example) put this
+information here.
+-->
+
+<para>
+ Developed and tested under SuSE 8.2.
+ In order to successfully use Kshowmail, you need KDE 3.1.x and Qt 3.1.x.
+</para>
+
+<!-- For a list of updates, you may refer to the application web site
+or the ChangeLog file, or ... -->
+<para>
+You can find a list of changes at
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+</para>
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation and Installation</title>
+
+<para>
+ In order to compile and install Kshowmail on your system, type the following in the base
+ directory of Kshowmail:
+ <screen width="40">
+ <prompt>%</prompt> <userinput>./configure</userinput>
+ or even:
+ <prompt>%</prompt> <userinput>./configure --prefix=$KDEDIR</userinput>
+
+ <prompt>%</prompt> <userinput>make</userinput>
+
+ as root:
+ <prompt>%</prompt> <userinput>make install</userinput>
+ </screen>
+ It may be useful to set the environment variable KDEDIR before these steps.
+</para>
+
+<para>
+ Since Kshowmail uses autoconf and automake you should have not trouble compiling it.
+ Should you run into problems please report them to me.
+</para>
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/es/Makefile.am b/doc/es/Makefile.am
new file mode 100644
index 0000000..c4df70b
--- /dev/null
+++ b/doc/es/Makefile.am
@@ -0,0 +1,10 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+
+
+EXTRA_DIST = index.docbook
+
+####### kdevelop will overwrite this part!!! (end)############
+
+KDE_LANG = es
+KDE_DOCS = kshowmail
+
diff --git a/doc/es/index.docbook b/doc/es/index.docbook
new file mode 100644
index 0000000..69c25c5
--- /dev/null
+++ b/doc/es/index.docbook
@@ -0,0 +1,428 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1-Based Variant V1.0//EN" "dtd/kdex.dtd" [
+ <!ENTITY kshowmail '<application>Kshowmail</application>'>
+ <!ENTITY kapp "&kshowmail;"><!-- replace kshowmail here -->
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % Spanish "INCLUDE"><!-- change language only here -->
+
+
+ <!-- Do not define any other entities; instead, use the entities
+ from kde-genent.entities and $LANG/user.entities. -->
+]>
+<!-- kdoctemplate v0.8 October 1 1999
+ Minor update to "Credits and Licenses" section on August 24, 2000
+ Removed "Revision history" section on 22 January 2001 -->
+
+<!-- ................................................................ -->
+
+<!-- The language must NOT be changed here. -->
+
+<book lang="&language;">
+
+<!-- This header contains all of the meta-information for the document such
+as Authors, publish date, the abstract, and Keywords -->
+
+<bookinfo>
+<title>El manual del Kshowmail</title>
+
+<authorgroup>
+<author>
+<firstname>Eggert</firstname>
+<surname>Ehmke</surname>
+<affiliation>
+<address><email>eggert.ehmke@berlin.de</email></address>
+</affiliation>
+</author>
+<author>
+<firstname>Allistar</firstname>
+<surname>Melville</surname>
+<affiliation>
+<address><email>allistar@silvermoon.co.nz</email></address>
+</affiliation>
+</author>
+</authorgroup>
+
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+
+<copyright>
+<year>2000</year>
+<year>2001</year>
+<year>2002</year>
+<year>2003</year>
+<holder>Eggert Ehmke</holder>
+</copyright>
+<!-- Translators: put here the copyright notice of the translation -->
+<!-- Put here the FDL notice. Read the explanation in fdl-notice.docbook
+ and in the FDL itself on how to use it. -->
+<legalnotice>&FDLNotice;</legalnotice>
+
+<!-- Date and version information of the documentation
+Don't forget to include this last date and this last revision number, we
+need them for translation coordination !
+Please respect the format of the date (DD/MM/YYYY) and of the version
+(V.MM.LL), it could be used by automation scripts.
+Do NOT change these in the translation. -->
+
+<date>20.02.2003</date>
+<releaseinfo>3.0.4</releaseinfo>
+
+<!-- Abstract about this handbook -->
+
+<abstract>
+<para>
+Este manual describe al Kshowmail versi&oacute;n 3.0.4
+</para>
+</abstract>
+
+<!-- This is a set of Keywords for indexing by search engines.
+Please at least include KDE, the KDE package it is in, the name
+ of your application, and a few relevant keywords. -->
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kshowmail</keyword>
+<keyword>kmail</keyword>
+<keyword>pop3</keyword>
+<keyword>chequear correo</keyword>
+</keywordset>
+
+</bookinfo>
+
+<!-- The contents of the documentation begin here. Label
+each chapter so with the id attribute. This is necessary for two reasons: it
+allows you to easily reference the chapter from other chapters of your
+document, and if there is no ID, the name of the generated HTML files will vary
+from time to time making it hard to manage for maintainers and for the CVS
+system. Any chapter labelled (OPTIONAL) may be left out at the author's
+discretion. Other chapters should not be left out in order to maintain a
+consistent documentation style across all KDE apps. -->
+
+<chapter id="introduction">
+<title>Introducci&oacute;n</title>
+
+<!-- The introduction chapter contains a brief introduction for the
+application that explains what it does and where to report
+problems. Basically a long version of the abstract. Don't include a
+revision history. (see installation appendix comment) -->
+
+<para>
+Kshowmail es una herramienta KDE para ver mensajes en un servidor pop3.
+Es posible ver encabezados y correos completos sin necesidad de bajarlos al
+cliente de correo local. Los correos no deseados pueden ser borrados del servidor.
+La lista de correos mostrados puede ser actualizada peri&oacute;dicamente.
+Un sonido puede ser tocado cuando llega nuevo correo.
+El men&uacute; de "comandos" permite agregar comandos elegidos por el usuario como fetchmail o sendmail.
+Se puede definir un comando especial para enviar un mensaje de protesta contra los correos spam.
+Se pueden monitorear varias cuentas POP3.
+</para>
+</chapter>
+
+<chapter id="using-kshowmail">
+<title>Uso</title>
+
+<!-- This chapter should tell the user how to use your app. You should use as
+many sections (Chapter, Sect1, Sect3, etc...) as is necessary to fully document
+your application. -->
+
+<sect1 id="kshowmail-features">
+<title>Uso General</title>
+<para>
+Agregue una o varias cuentas en el cuadro "Opciones". Con&eacute;ctese a Internet.
+Ahora puede listar los correos en el servidor POP3 presionando el bot&oacute;n "Renovar lista de mensajes".
+Los dem&aacute;s botones y entradas del men&uacute; deber&iacute;an ser autoexplicativos.
+Disfr&uacute;telo!
+</para>
+</sect1>
+<sect1 id="shortcuts">
+ <title>Accesos directos</title>
+ <variablelist>
+ <title>Estos accesos directos est&aacute;n configurados:</title>
+ <varlistentry>
+ <term>F2</term>
+ <listitem>
+ <para>Mostrar encabezales de mensajes seleccionados</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F3</term>
+ <listitem>
+ <para>Mostrar mensajes seleccionadas</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F5</term>
+ <listitem>
+ <para>Renovar mensajes nuevos</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Shift-F5</term>
+ <listitem>
+ <para>Forzar renovaci&oacute;n de toda la lista</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F10</term>
+ <listitem>
+ <para>Configurar cuentas</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Supr</term>
+ <listitem>
+ <para>Borrar mensajes seleccionados del servidor</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Ctrl-C</term>
+ <listitem>
+ <para>Borrar lista de mensajes.
+ (No se borrar&aacute;n mensajes del servidor)</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+</sect1>
+<sect1 id="cmdline">
+<title>Parametros de la l&iacute;nea de comando</title>
+<para>
+Iniciando el programa a trav&eacute;z de la l&iacute;nea de comando se puede especificar la cuenta deseada.
+Si se usa la opci&oacute;n -config iniciando el programa desde la l&iacute;nea de comandos, se mostrar&aacute; directamente el cuadro de
+configuraci&oacute;n de Kshowmail. Esto puede resultar &uacute;til si est&aacute; activa la opci&oacute;n "Finalizar Kshowmail si no hay correo nuevo".
+La Opci&oacute;n -refresh puede ser aplicada para refrescar la lista de mensajes directamente al iniciar el programa.
+</para>
+</sect1>
+<sect1 id="extprog">
+<title>Programas externos</title>
+<para>
+Para iniciar programas externos tal como el sendmail o fetchmail, agregue una entrada en el men&uacute; "Comandos".
+Los nombres de los comandos aparecer&aacute;n en el mismo men&uacute;. Si el nombre del comando tiene el caract&eacute;r '&amp;' la siguiente
+letra ser&aacute; usada como atajo de teclado.
+</para>
+<para>
+Los siguientes par&aacute;metros son variables y al llamarles estar&aacute;n remplazados por los valores actu&aacute;les:
+</para>
+<para> &lt;user&gt; Nombre de usuario</para>
+<para> &lt;passwd&gt; Contrase&ntilde;a</para>
+<para> &lt;server&gt; Servidor</para>
+<para>
+&lt;header&gt; El encabezado del correo ser&aacute; copiado a un archivo temporal, el nombre de dicho archivo ser&aacute; sustituido ac&aacute;.
+</para>
+<para>
+&lt;body&gt; El cuerpo del correo ser&aacute; copiado a un archivo temporal, el nombre de dicho archivo ser&aacute; sustituido ac&aacute;.
+</para>
+</sect1>
+<sect1 id="complain">
+<title>Enviar correos de quejas</title>
+<para>
+El comando para enviar correos de protesta es especial.
+Para mantener la flexibilidad, se lo ha implementado como un comando externo tambi&eacute;n.
+Sugiero usar el programa perl "spam.pl" versi&oacute;n 0.20 o superior de Daniel Stenberg.
+Se puede encontren en
+<ulink url="http://spam.sourceforge.net">http://spam.sourceforge.net.</ulink>
+Para incorporarlo al kshowmail siga las siguientes instrucciones:
+</para>
+
+<para>1. Instale spam.pl en un directorio adecuado, supongamos /usr/local/bin.</para>
+<para>2. Cree los archivos &tilde;/.spam/friends y &tilde;/.spam/from.
+Para mas detalle rem&iacute;tase a la documentaci&oacute;n de spam.pl.</para>
+<para>3. Cree una entrada en el men&uacute; "comando" del kshowmail.
+El nombre del men&uacute; debe ser "complain" !
+De lo contrario el comando no ser&aacute; reconocido correctamente.
+Ingrese este texto como l&iacute;nea de comando:
+</para>
+
+<para> spam.pl -d &lt; &lt;body&gt;</para>
+<para> Esto har&aacute; que el cuerpo del mensaje ser&aacute; desviado a stdin de spam.pl.</para>
+<para/>
+<para>La opci&oacute;n de depuraci&oacute;n -d puede ser removida m&aacute;s tarde si est&aacute; satisfecho con los resultados.
+Reci&eacute;n en este momento las quejas ser&aacute;n enviadas.
+Agrege otras opciones si gusta.
+</para>
+<para>
+Se recomienda seleccionar bien el contenido del archivo ~/.spam/friends.
+Al menos el propio dominio deber&iacute;a aparecer aqu&iacute;.
+El uso de esta opci&oacute;n queda bajo su propia responsibilidad!
+</para>
+<para>
+Presionando el bot&oacute;n "Mandar queja" generan para cada correo mensajes de queja y se env&iacute;an instant&aacute;neamente.
+Los receptores de estos mensajes est&aacute;n definidos por spam.pl.
+Mientras en la linea de comando aparece la opci&oacute;n de depuraci&oacute;n (-d), s&oacute;lo se mostrar&aacute; una ventana que le
+muestra a cual receptores se enviar&iacute;an mensajes.
+Entonces la funcionalidad est&aacute; activada cuando se remueve la opci&oacute;n de depuraci&oacute;n!
+</para>
+<para>
+Otros programas Anti-Spam se pueden intentar de incluir de forma parecida. Si ocurren problemas, intentar&eacute; de ayudar.
+</para>
+</sect1>
+</chapter>
+
+<chapter id="faq">
+<title>Preguntas y Respuestas</title>
+
+<!-- (OPTIONAL but recommended) This chapter should include all of the silly
+(and not-so-silly) newbie questions that fill up your mailbox. This chapter
+should be reserved for BRIEF questions and answers! If one question uses more
+than a page or so then it should probably be part of the
+"Using this Application" chapter instead. You should use links to
+cross-reference questions to the parts of your documentation that answer them.
+This is also a great place to provide pointers to other FAQ's if your users
+must do some complicated configuration on other programs in order for your
+application work. -->
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>no hay preguntas...</para>
+</question>
+<answer>
+<para>...no hay respuestas!</para>
+</answer>
+</qandaentry>
+</qandaset>
+</chapter>
+
+<chapter id="credits">
+
+<!-- Include credits for the programmers, documentation writers, and
+contributors here. The license for your software should then be included below
+the credits with a reference to the appropriate license file included in the KDE
+distribution. -->
+
+<title>Cr&eacute;ditos y licensia</title>
+
+<para>
+&kapp;
+</para>
+<para>
+Program copyright 2000-2003 Eggert Ehmke <email>eggert.ehmke@berlin.de</email>
+</para>
+<para>
+Contribuciones:
+<itemizedlist>
+<listitem>
+<para>
+Nicolas Vignal <email>nicolas.vignal@fnac.net</email> gener&oacute; los RPM's para RedHat, y realiz&oacute; la traducci&oacute;n al franc&eacute;s.
+</para>
+</listitem>
+<listitem>
+<para>
+Stephan Giesler <email>giesler@gmx.net</email> hizo la traducci&oacute;n espa&ntilde;ol a base de la de Edgardo Garcia <email>edyx@mindless.com</email>.
+</para>
+</listitem>
+<listitem>
+<para>
+Mattias Newzella <email>newzella@swipnet.se</email> realiz&oacute; la traducci&oacute;n al sueco.
+</para>
+</listitem>
+<listitem>
+<para>
+Muchos usuarios me ayudaron con pruebas y ideas que fueron incluidas en el programa. Se les agradezco a todos!
+</para>
+</listitem>
+</itemizedlist>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove. Commercial development should -->
+<!-- replace this with their copyright and either remove it or re-set this.-->
+
+<!-- Determine which license your application is licensed under,
+ and delete all the remaining licenses below:
+
+ (NOTE: All documentation are licensed under the FDL,
+ regardless of what license the application uses) -->
+
+&underGPL; <!-- GPL License -->
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kshowmail">
+<title>Donde puedo conseguir Kshowmail?</title>
+
+<para>
+La versi&oacute;n m&aacute;s reciente siempre se encuentra en
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+o en
+<ulink url="http://freshmeat.net">http://freshmeat.net</ulink>
+</para>
+</sect1>
+
+<sect1 id="requirements">
+<title>Requerimientos</title>
+
+<!--
+List any special requirements for your application here. This should include:
+.Libraries or other software that is not included in kdesupport,
+kdelibs, or kdebase.
+.Hardware requirements like amount of RAM, disk space, graphics card
+capabilities, screen resolution, special expansion cards, etc.
+.Operating systems the app will run on. If your app is designed only for a
+specific OS, (you wrote a graphical LILO configurator for example) put this
+information here.
+-->
+
+<para>
+Desarollado y probado bajo SuSE Linux 8.1.
+No tendr&iacute;a que haber problemas con compilarlo en cualquier distribuci&oacute;n Linux.
+Qt 3.1.x y KDE 3.1.x son necesarios, como tambi&eacute;n los archivos include de X.
+</para>
+
+<!-- For a list of updates, you may refer to the application web site
+or the ChangeLog file, or ... -->
+<para>
+Los cambios m&aacute;s recientes se encuentran en el archivo Changelog o en
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+</para>
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilaci&oacute;n e Instalaci&oacute;n</title>
+<para>
+Para compilar e instarlar Kshowmail ejecut&aacute; estos comandos en el directorio de instalaci&oacute;n:
+<screen width="40">
+<prompt>%</prompt> <userinput>./configure</userinput>
+<prompt>%</prompt> <userinput>make</userinput>
+<prompt>%</prompt> <userinput>make install</userinput>
+</screen>
+</para>
+
+<para>
+Como Kshowmail utiliza autoconf, no deber&iacute;an ocurrir problemas. Si igualmente ocurren, contactame.
+</para>
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/fr/Makefile.am b/doc/fr/Makefile.am
new file mode 100644
index 0000000..fdd5123
--- /dev/null
+++ b/doc/fr/Makefile.am
@@ -0,0 +1,10 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+
+
+EXTRA_DIST = index.docbook
+
+####### kdevelop will overwrite this part!!! (end)############
+
+KDE_LANG = fr
+KDE_DOCS = kshowmail
+
diff --git a/doc/fr/index.docbook b/doc/fr/index.docbook
new file mode 100644
index 0000000..af4e833
--- /dev/null
+++ b/doc/fr/index.docbook
@@ -0,0 +1,372 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1-Based Variant V1.0//EN" "dtd/kdex.dtd" [
+ <!ENTITY kshowmail '<application>Kshowmail</application>'>
+ <!ENTITY kapp "&kshowmail;"><!-- replace kshowmail here -->
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % French "INCLUDE"><!-- change language only here -->
+
+
+ <!-- Do not define any other entities; instead, use the entities
+ from kde-genent.entities and $LANG/user.entities. -->
+]>
+<!-- kdoctemplate v0.8 October 1 1999
+ Minor update to "Credits and Licenses" section on August 24, 2000
+ Removed "Revision history" section on 22 January 2001 -->
+
+<!-- ................................................................ -->
+
+<!-- The language must NOT be changed here. -->
+
+<book lang="&language;">
+
+<!-- This header contains all of the meta-information for the document such
+as Authors, publish date, the abstract, and Keywords -->
+
+<bookinfo>
+<title>Le manuel de Kshowmail</title>
+
+<authorgroup>
+
+<author>
+<firstname>Eggert</firstname>
+<othername></othername>
+<surname>Ehmke</surname>
+<affiliation>
+<address><email>eggert.ehmke@berlin.de</email></address>
+</affiliation>
+</author>
+</authorgroup>
+
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+
+<copyright>
+<year>2000</year>
+<year>2001</year>
+<year>2002</year>
+<year>2003</year>
+<holder>Eggert Ehmke</holder>
+</copyright>
+<!-- Translators: put here the copyright notice of the translation -->
+<!-- Put here the FDL notice. Read the explanation in fdl-notice.docbook
+
+ and in the FDL itself on how to use it. -->
+<legalnotice>&FDLNotice;</legalnotice>
+
+<!-- Date and version information of the documentation
+Don't forget to include this last date and this last revision number, we
+need them for translation coordination !
+Please respect the format of the date (DD/MM/YYYY) and of the version
+(V.MM.LL), it could be used by automation scripts.
+Do NOT change these in the translation. -->
+
+<date>03/05/2003</date>
+<releaseinfo>3.0.4</releaseinfo>
+
+<!-- Abstract about this handbook -->
+
+<abstract>
+<para>
+Ce manuel d&eacute;crit la version 3.0.4 de Kshowmail
+</para>
+</abstract>
+
+<!-- This is a set of Keywords for indexing by search engines.
+Please at least include KDE, the KDE package it is in, the name
+ of your application, and a few relevant keywords. -->
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kshowmail</keyword>
+<keyword>kmail</keyword>
+<keyword>pop3</keyword>
+<keyword>mail checker</keyword>
+<keyword>notificateur</keyword>
+</keywordset>
+
+
+</bookinfo>
+
+<!-- The contents of the documentation begin here. Label
+each chapter so with the id attribute. This is necessary for two reasons: it
+allows you to easily reference the chapter from other chapters of your
+document, and if there is no ID, the name of the generated HTML files will vary
+from time to time making it hard to manage for maintainers and for the CVS
+system. Any chapter labelled (OPTIONAL) may be left out at the author's
+discretion. Other chapters should not be left out in order to maintain a
+consistent documentation style across all KDE apps. -->
+
+<chapter id="introduction">
+<title>Introduction</title>
+
+<!-- The introduction chapter contains a brief introduction for the
+application that explains what it does and where to report
+problems. Basically a long version of the abstract. Don't include a
+revision history. (see installation appendix comment) -->
+
+<para>
+Kshowmail est un outil KDE destin&eacute; &agrave; v&eacute;rifier les mails sur un serveur POP3.
+Les en-t&ecirc;tes et les messages complets peuvent &ecirc;tre visualis&eacute;s sans avoir &agrave; les
+t&eacute;l&eacute;charger dans son programme de courrier &eacute;lectronique. Les messages non d&eacute;sir&eacute;s
+peuvent &ecirc;tre effac&eacute;s directement sur le serveur. La liste des messages affich&eacute;s
+peut &ecirc;tre rafra&icirc;chie par le biais de chronom&egrave;tres configurables.
+Un son peut &ecirc;tre jou&eacute; &agrave; l'arriv&eacute;e de nouveaux messages.
+Un menu de commandes permet &agrave; l'utilisateur de lancer des commandes
+configurables telles que fetchmail ou sendmail.
+Une commande sp&eacute;ciale peut &ecirc;tre d&eacute;finie afin d'envoyer un message de plainte
+relatif au spam. Le programme peut g&eacute;rer plusieurs comptes.
+</para>
+</chapter>
+
+<chapter id="using-kshowmail">
+<title>Utiliser Kshowmail</title>
+
+<!-- This chapter should tell the user how to use your app. You should use as
+many sections (Chapter, Sect1, Sect3, etc...) as is necessary to fully document
+your application. -->
+
+<sect1 id="kshowmail-features">
+<title>Utilisation g&eacute;n&eacute;rale</title>
+<para>
+Ajoutez un ou plusieurs comptes via la bo&icirc;te de dialogue "Options". Connectez-vous &agrave; Internet.
+Vous &ecirc;tes maintenant en mesure d'afficher la liste des messages pr&eacute;sents sur les diff&eacute;rents serveurs POP3
+en cliquant sur le bouton "Rafra&icirc;chir". Tous les autres boutons et entr&eacute;es de menus parlent d'eux-m&ecirc;mes.
+La touche "Delete" peut &ecirc;tre utilis&eacute;e pour effacer des messages.
+Bon amusement avec Kshowmail !
+</para>
+</sect1>
+<sect1 id="cmdline">
+<title>Param&egrave;tres de la ligne de commande</title>
+<para>
+Vous pouvez stipuler un compte d&eacute;terminer dans la ligne de commande.
+Si l'option -config est indiqu&eacute;e dans la ligne de commande, la bo&icirc;te de configuration sera imm&eacute;diatement affich&eacute;e.
+Ceci peut &ecirc;tre utile si la fonction "Fermer Kshowmail en l'absence de nouveau message" est activ&eacute;e.
+L'option -refresh peut &ecirc;tre utilis&eacute;e pour lancer le rafra&icirc;chissement de la liste des messages imm&eacute;diatement.
+</para>
+</sect1>
+<sect1 id="extprog">
+<title>Programmes externes</title>
+<para>
+Pour lancer des programmes externes tels que Fetchmail, ajoutez une entr&eacute;e dans le menu des commandes.
+Les noms des commandes apparaissent dans le menu des actions. Si ils contiennent le caract&egrave;re '&amp;'la lettre suivante sera
+utilis&eacute;e comme raccourci clavier.
+</para>
+<para> Les param&egrave;tres suivants sont des variables et seront remplac&eacute;s par leurs valeurs actuelles:</para>
+<para> &lt;user&gt; Utilisateur</para>
+<para> &lt;passwd&gt; Mot de passe</para>
+<para> &lt;server&gt; Serveur</para>
+<para> &lt;header&gt; L'en-t&ecirc;te du message sera copi&eacute; dans un fichier temporaire. Le nom de ce fichier sera indiqu&eacute; ici.</para>
+<para> &lt;body&gt; Le corps du message sera copi&eacute; dans un fichier temporaire. Le nom de ce fichier sera indiqu&eacute; ici.</para>
+</sect1>
+<sect1 id="complain">
+<title> Envoi de messages de plainte </title>
+<para>
+La commande pour envoyer des messages de plainte est une commande particuli&egrave;re.
+Afin d'assurer la flexibilit&eacute; du programme, elle a &eacute;t&eacute; impl&eacute;ment&eacute;e comme commande externe &eacute;galement.
+Je vous sugg&egrave;re d'utiliser le programme perl "spam.pl" version 0.20 ou ult&eacute;rieure de Daniel Stenberg.
+Il peut &ecirc;tre obtenu &agrave; l'adresse <ulink url="http://spam.sourceforge.net">http://spam.sourceforge.net.</ulink>
+Afin qu'il puisse fonctionner avec Kshowmail, suivez les &eacute;tapes suivantes:
+</para>
+<para>1. Installez spam.pl dans un r&eacute;pertoire qui vous convient, par exemple /usr/local/bin.</para>
+<para>2. Cr&eacute;ez les fichiers ~/.spam/friends et ~/.spam/from.
+Vous trouverez plus de d&eacute;tails dans la documentation de spam.pl.</para>
+<para>3. Cr&eacute;ez une entr&eacute;e dans le menu des commandes de kshowmail.
+Le nom de cette entr&eacute;e doit &ecirc;tre "complain" !
+Autrement, la commande ne sera pas reconnue correctement.
+Entrez le texte suivant en tant que ligne de commande:</para>
+<para> spam.pl -d &lt; &lt;body&gt;</para>
+<para> Ceci enverra le corps du message dans spam.pl.</para>
+<para/>
+<para> L'option debug -d pourra &ecirc;tre enlev&eacute;e plus tard, si vous &ecirc;tes satisfait du r&eacute;sultat.
+Les messages de plainte seront seulement envoy&eacute;s &agrave; ce moment-l&agrave;.
+Ajoutez d'autres options comme vous le souhaitez.</para>
+<para> Faites attention de choisir les bonnes entr&eacute;es dans le fichier ~/.spam/friends.
+Au moins le domaine local devra &ecirc;tre renseign&eacute;.
+Utilisez cette fonction &agrave; vos risques et p&eacute;rils !</para>
+<para> Lorsque vous presserez le bouton "Envoyer un message de plainte", un ou plusieurs messages de plainte seront g&eacute;n&eacute;r&eacute;s et envoy&eacute;s
+imm&eacute;diatement pour chacun des messages s&eacute;lectionn&eacute;s.
+Le destinataire de ces messages sera d&eacute;termin&eacute; par spam.pl.
+Aussi longtemps que l'option -d sera activ&eacute;e, seul un message sera affich&eacute; pour indiquer ce qui se passera.
+Pour activer la fonction, enlevez l'indicateur de debug.</para>
+<para> Si vous pr&eacute;f&eacute;rez d'autres programmes antispam, essayez de les installer d'une mani&egrave;re identique.
+Contactez-moi si vous deviez rencontrer un quelconque probl&egrave;me.</para>
+</sect1>
+</chapter>
+
+<chapter id="faq">
+<title>Questions et r&eacute;ponses</title>
+
+<!-- (OPTIONAL but recommended) This chapter should include all of the silly
+(and not-so-silly) newbie questions that fill up your mailbox. This chapter
+should be reserved for BRIEF questions and answers! If one question uses more
+than a page or so then it should probably be part of the
+"Using this Application" chapter instead. You should use links to
+cross-reference questions to the parts of your documentation that answer them.
+This is also a great place to provide pointers to other FAQ's if your users
+must do some complicated configuration on other programs in order for your
+application work. -->
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>A venir.</para>
+</question>
+<answer>
+<para>A venir.</para>
+</answer>
+</qandaentry>
+</qandaset>
+</chapter>
+
+<chapter id="credits">
+
+<!-- Include credits for the programmers, documentation writers, and
+contributors here. The license for your software should then be included below
+the credits with a reference to the appropriate license file included in the KDE
+distribution. -->
+
+<title>Credits et Licence</title>
+
+<para>
+&kapp;
+</para>
+<para>
+Program copyright 2000-2003 Eggert Ehmke <email>eggert.ehmke@berlin.de</email>
+</para>
+<para>
+Contributeurs:
+<itemizedlist>
+<listitem>
+<para>Manfred Haertel <email>Manfred.Haertel@rz-online.de</email>
+qui a &eacute;crit la version originale en ligne de commande.
+</para>
+</listitem>
+<listitem>
+<para>
+Nicolas Vignal <email>nicolas.vignal@fnac.net</email> qui a fourni les RPM's pour RedHat,
+et la traduction fran&ccedil;aise.
+</para>
+</listitem>
+<listitem>
+<para>
+Edgardo Garcia <email>edyx@mindless.com</email> qui a fourni la traduction espagnole.
+</para>
+</listitem>
+<listitem>
+<para>
+Mattias Newzella <email>newzella@swipnet.se</email> qui a fourni la traduction su&eacute;doise.
+</para>
+</listitem>
+<listitem>
+<para>
+Beaucoup d'autres utilisateurs ont longuement test&eacute; le programme et ont apport&eacute; nombre d'id&eacute;es
+qui font maintenant partie de kshowmail.
+A vous tous, je vous dis "merci" !
+</para>
+</listitem>
+</itemizedlist>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove. Commercial development should -->
+<!-- replace this with their copyright and either remove it or re-set this.-->
+
+<!-- Determine which license your application is licensed under,
+ and delete all the remaining licenses below:
+
+ (NOTE: All documentation are licensed under the FDL,
+ regardless of what license the application uses) -->
+
+&underGPL; <!-- GPL License -->
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kshowmail">
+<title>Comment obtenir Kshowmail ?</title>
+
+<para>
+La version actuelle peut &ecirc;tre r&eacute;cup&eacute;r&eacute;e &agrave;
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail/</ulink>
+ou &agrave;
+<ulink url="http://freshmeat.net">http://freshmeat.net</ulink>
+
+</para>
+</sect1>
+
+<sect1 id="requirements">
+<title>El&eacute;ments requis</title>
+
+<!--
+List any special requirements for your application here. This should include:
+.Libraries or other software that is not included in kdesupport,
+kdelibs, or kdebase.
+.Hardware requirements like amount of RAM, disk space, graphics card
+capabilities, screen resolution, special expansion cards, etc.
+.Operating systems the app will run on. If your app is designed only for a
+specific OS, (you wrote a graphical LILO configurator for example) put this
+information here.
+-->
+
+<para>
+Afin de pouvoir utiliser avec succ&egrave;s Kshowmail, vous avez besoin de Qt 3.x.x et KDE 3.x.x.
+</para>
+
+<!-- For a list of updates, you may refer to the application web site
+or the ChangeLog file, or ... -->
+<para>
+Vous trouverez la liste des modifications &agrave;
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+</para>
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilation et installation</title>
+
+<para>
+Afin de pouvoir compiler et installer Kshowmail sur votre syst&egrave;me, tapez les commandes suivantes
+dans le r&eacute;pertoire racine de Kshowmail:
+<screen width="40">
+<prompt>%</prompt> <userinput>./configure</userinput>
+<prompt>%</prompt> <userinput>make</userinput>
+<prompt>%</prompt> <userinput>make install</userinput>
+</screen>
+</para>
+
+<para>Kshowmail utilisant autoconf et automake, vous ne devriez rencontrer aucun probl&egrave;me lors de la compilation.
+Si vous deviez malgr&eacute; tout en rencontrer, merci de bien vouloir me les rapporter.</para>
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/html/AlertDlg_8cpp-source.html b/doc/html/AlertDlg_8cpp-source.html
new file mode 100644
index 0000000..30a0afa
--- /dev/null
+++ b/doc/html/AlertDlg_8cpp-source.html
@@ -0,0 +1,296 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/AlertDlg.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>AlertDlg.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;kdialog.h&gt;</span>
+<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00003"></a>00003 <span class="comment">/****************************************************************************</span>
+<a name="l00004"></a>00004 <span class="comment">** Form implementation generated from reading ui file './AlertDlg.ui'</span>
+<a name="l00005"></a>00005 <span class="comment">**</span>
+<a name="l00006"></a>00006 <span class="comment">** Created: Fr Jun 29 22:08:57 2007</span>
+<a name="l00007"></a>00007 <span class="comment">** by: The User Interface Compiler ($Id: AlertDlg_8cpp-source.html,v 1.10 2007/07/05 17:37:49 kuddel-fl Exp $)</span>
+<a name="l00008"></a>00008 <span class="comment">**</span>
+<a name="l00009"></a>00009 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00010"></a>00010 <span class="comment">****************************************************************************/</span>
+<a name="l00011"></a>00011
+<a name="l00012"></a>00012 <span class="preprocessor">#include "AlertDlg.h"</span>
+<a name="l00013"></a>00013
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;qpushbutton.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;qlabel.h&gt;</span>
+<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;qlayout.h&gt;</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qtooltip.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qwhatsthis.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qimage.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qpixmap.h&gt;</span>
+<a name="l00022"></a>00022
+<a name="l00023"></a>00023 <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> img0_AlertDlg[] = {
+<a name="l00024"></a>00024 <span class="stringliteral">"48 48 114 2"</span>,
+<a name="l00025"></a>00025 <span class="stringliteral">"Qt c None"</span>,
+<a name="l00026"></a>00026 <span class="stringliteral">".D c #000000"</span>,
+<a name="l00027"></a>00027 <span class="stringliteral">".2 c #101c18"</span>,
+<a name="l00028"></a>00028 <span class="stringliteral">"#e c #101c20"</span>,
+<a name="l00029"></a>00029 <span class="stringliteral">".U c #102020"</span>,
+<a name="l00030"></a>00030 <span class="stringliteral">".Z c #103820"</span>,
+<a name="l00031"></a>00031 <span class="stringliteral">"#c c #181c20"</span>,
+<a name="l00032"></a>00032 <span class="stringliteral">"#d c #201810"</span>,
+<a name="l00033"></a>00033 <span class="stringliteral">"#b c #201c20"</span>,
+<a name="l00034"></a>00034 <span class="stringliteral">".6 c #202020"</span>,
+<a name="l00035"></a>00035 <span class="stringliteral">"#S c #202810"</span>,
+<a name="l00036"></a>00036 <span class="stringliteral">"#C c #204841"</span>,
+<a name="l00037"></a>00037 <span class="stringliteral">".M c #313000"</span>,
+<a name="l00038"></a>00038 <span class="stringliteral">"#K c #313029"</span>,
+<a name="l00039"></a>00039 <span class="stringliteral">".J c #313031"</span>,
+<a name="l00040"></a>00040 <span class="stringliteral">"#T c #313839"</span>,
+<a name="l00041"></a>00041 <span class="stringliteral">"#M c #313841"</span>,
+<a name="l00042"></a>00042 <span class="stringliteral">"#p c #413041"</span>,
+<a name="l00043"></a>00043 <span class="stringliteral">"#J c #414000"</span>,
+<a name="l00044"></a>00044 <span class="stringliteral">".O c #414841"</span>,
+<a name="l00045"></a>00045 <span class="stringliteral">".1 c #4a3808"</span>,
+<a name="l00046"></a>00046 <span class="stringliteral">".N c #524c52"</span>,
+<a name="l00047"></a>00047 <span class="stringliteral">".r c #525052"</span>,
+<a name="l00048"></a>00048 <span class="stringliteral">".R c #525952"</span>,
+<a name="l00049"></a>00049 <span class="stringliteral">"#y c #527973"</span>,
+<a name="l00050"></a>00050 <span class="stringliteral">"#q c #52814a"</span>,
+<a name="l00051"></a>00051 <span class="stringliteral">"#B c #528152"</span>,
+<a name="l00052"></a>00052 <span class="stringliteral">"#L c #5a6152"</span>,
+<a name="l00053"></a>00053 <span class="stringliteral">"#z c #622429"</span>,
+<a name="l00054"></a>00054 <span class="stringliteral">".7 c #624852"</span>,
+<a name="l00055"></a>00055 <span class="stringliteral">"#I c #626152"</span>,
+<a name="l00056"></a>00056 <span class="stringliteral">"#V c #626162"</span>,
+<a name="l00057"></a>00057 <span class="stringliteral">".E c #626973"</span>,
+<a name="l00058"></a>00058 <span class="stringliteral">"#x c #6a3000"</span>,
+<a name="l00059"></a>00059 <span class="stringliteral">".t c #733062"</span>,
+<a name="l00060"></a>00060 <span class="stringliteral">".v c #734052"</span>,
+<a name="l00061"></a>00061 <span class="stringliteral">"#o c #736973"</span>,
+<a name="l00062"></a>00062 <span class="stringliteral">"#n c #737562"</span>,
+<a name="l00063"></a>00063 <span class="stringliteral">".s c #737583"</span>,
+<a name="l00064"></a>00064 <span class="stringliteral">"#U c #737983"</span>,
+<a name="l00065"></a>00065 <span class="stringliteral">"#A c #835d6a"</span>,
+<a name="l00066"></a>00066 <span class="stringliteral">".S c #836131"</span>,
+<a name="l00067"></a>00067 <span class="stringliteral">".T c #946931"</span>,
+<a name="l00068"></a>00068 <span class="stringliteral">"#D c #9491a4"</span>,
+<a name="l00069"></a>00069 <span class="stringliteral">"#l c #94aab4"</span>,
+<a name="l00070"></a>00070 <span class="stringliteral">"#v c #9caea4"</span>,
+<a name="l00071"></a>00071 <span class="stringliteral">".K c #a44052"</span>,
+<a name="l00072"></a>00072 <span class="stringliteral">"#w c #a49994"</span>,
+<a name="l00073"></a>00073 <span class="stringliteral">"#j c #a4aac5"</span>,
+<a name="l00074"></a>00074 <span class="stringliteral">"#k c #a4b2a4"</span>,
+<a name="l00075"></a>00075 <span class="stringliteral">"#i c #a4c2a4"</span>,
+<a name="l00076"></a>00076 <span class="stringliteral">"#E c #a4e2b4"</span>,
+<a name="l00077"></a>00077 <span class="stringliteral">".L c #b44831"</span>,
+<a name="l00078"></a>00078 <span class="stringliteral">".5 c #b47952"</span>,
+<a name="l00079"></a>00079 <span class="stringliteral">"#G c #bd8983"</span>,
+<a name="l00080"></a>00080 <span class="stringliteral">".o c #bde2c5"</span>,
+<a name="l00081"></a>00081 <span class="stringliteral">".0 c #c57973"</span>,
+<a name="l00082"></a>00082 <span class="stringliteral">".u c #c5c2d5"</span>,
+<a name="l00083"></a>00083 <span class="stringliteral">".p c #c5cac5"</span>,
+<a name="l00084"></a>00084 <span class="stringliteral">".q c #c5d2f6"</span>,
+<a name="l00085"></a>00085 <span class="stringliteral">".C c #c5e2c5"</span>,
+<a name="l00086"></a>00086 <span class="stringliteral">".8 c #d58173"</span>,
+<a name="l00087"></a>00087 <span class="stringliteral">"#H c #d5ae9c"</span>,
+<a name="l00088"></a>00088 <span class="stringliteral">"#t c #d5c6bd"</span>,
+<a name="l00089"></a>00089 <span class="stringliteral">".l c #d5d2d5"</span>,
+<a name="l00090"></a>00090 <span class="stringliteral">".i c #d5ded5"</span>,
+<a name="l00091"></a>00091 <span class="stringliteral">".k c #d5e2d5"</span>,
+<a name="l00092"></a>00092 <span class="stringliteral">".h c #d5eede"</span>,
+<a name="l00093"></a>00093 <span class="stringliteral">".F c #d5eee6"</span>,
+<a name="l00094"></a>00094 <span class="stringliteral">".w c #d5f2e6"</span>,
+<a name="l00095"></a>00095 <span class="stringliteral">"#r c #de6d6a"</span>,
+<a name="l00096"></a>00096 <span class="stringliteral">"#F c #de958b"</span>,
+<a name="l00097"></a>00097 <span class="stringliteral">"#O c #dea5a4"</span>,
+<a name="l00098"></a>00098 <span class="stringliteral">".3 c #deaea4"</span>,
+<a name="l00099"></a>00099 <span class="stringliteral">"#. c #deb2a4"</span>,
+<a name="l00100"></a>00100 <span class="stringliteral">".Y c #deba62"</span>,
+<a name="l00101"></a>00101 <span class="stringliteral">"#u c #debab4"</span>,
+<a name="l00102"></a>00102 <span class="stringliteral">"#g c #decabd"</span>,
+<a name="l00103"></a>00103 <span class="stringliteral">".m c #dedabd"</span>,
+<a name="l00104"></a>00104 <span class="stringliteral">".e c #dee2e6"</span>,
+<a name="l00105"></a>00105 <span class="stringliteral">"#s c #e61818"</span>,
+<a name="l00106"></a>00106 <span class="stringliteral">".P c #e67d73"</span>,
+<a name="l00107"></a>00107 <span class="stringliteral">"#Q c #e6898b"</span>,
+<a name="l00108"></a>00108 <span class="stringliteral">"#a c #e68d8b"</span>,
+<a name="l00109"></a>00109 <span class="stringliteral">".Q c #e69141"</span>,
+<a name="l00110"></a>00110 <span class="stringliteral">".W c #e6958b"</span>,
+<a name="l00111"></a>00111 <span class="stringliteral">"#f c #e69594"</span>,
+<a name="l00112"></a>00112 <span class="stringliteral">".n c #e6dac5"</span>,
+<a name="l00113"></a>00113 <span class="stringliteral">".j c #e6e2d5"</span>,
+<a name="l00114"></a>00114 <span class="stringliteral">".c c #e6e2e6"</span>,
+<a name="l00115"></a>00115 <span class="stringliteral">".f c #e6f2cd"</span>,
+<a name="l00116"></a>00116 <span class="stringliteral">".g c #e6f2d5"</span>,
+<a name="l00117"></a>00117 <span class="stringliteral">".d c #e6fae6"</span>,
+<a name="l00118"></a>00118 <span class="stringliteral">".# c #e6fff6"</span>,
+<a name="l00119"></a>00119 <span class="stringliteral">"#N c #ee655a"</span>,
+<a name="l00120"></a>00120 <span class="stringliteral">".B c #ee6962"</span>,
+<a name="l00121"></a>00121 <span class="stringliteral">".x c #ee7d7b"</span>,
+<a name="l00122"></a>00122 <span class="stringliteral">"#P c #eeba9c"</span>,
+<a name="l00123"></a>00123 <span class="stringliteral">"#R c #f61810"</span>,
+<a name="l00124"></a>00124 <span class="stringliteral">".y c #f63431"</span>,
+<a name="l00125"></a>00125 <span class="stringliteral">".4 c #f64441"</span>,
+<a name="l00126"></a>00126 <span class="stringliteral">".V c #f64841"</span>,
+<a name="l00127"></a>00127 <span class="stringliteral">".X c #f64c4a"</span>,
+<a name="l00128"></a>00128 <span class="stringliteral">"#m c #f6504a"</span>,
+<a name="l00129"></a>00129 <span class="stringliteral">".9 c #f66562"</span>,
+<a name="l00130"></a>00130 <span class="stringliteral">".H c #f67d73"</span>,
+<a name="l00131"></a>00131 <span class="stringliteral">".b c #f6f2f6"</span>,
+<a name="l00132"></a>00132 <span class="stringliteral">".a c #f6fff6"</span>,
+<a name="l00133"></a>00133 <span class="stringliteral">".z c #ff0000"</span>,
+<a name="l00134"></a>00134 <span class="stringliteral">".I c #ff1810"</span>,
+<a name="l00135"></a>00135 <span class="stringliteral">"#h c #ff1818"</span>,
+<a name="l00136"></a>00136 <span class="stringliteral">".A c #ff1c18"</span>,
+<a name="l00137"></a>00137 <span class="stringliteral">"## c #ff3031"</span>,
+<a name="l00138"></a>00138 <span class="stringliteral">".G c #ff4c4a"</span>,
+<a name="l00139"></a>00139 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00140"></a>00140 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00141"></a>00141 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00142"></a>00142 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00143"></a>00143 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00144"></a>00144 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00145"></a>00145 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00146"></a>00146 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00147"></a>00147 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00148"></a>00148 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00149"></a>00149 <span class="stringliteral">"Qt.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.a.#.aQtQtQtQtQt"</span>,
+<a name="l00150"></a>00150 <span class="stringliteral">"Qt.b.c.d.e.d.c.c.e.c.c.c.f.c.g.c.h.c.i.c.i.j.i.k.i.j.i.k.i.l.i.l.m.l.n.l.o.l.p.l.p.q.#.r.sQtQtQt"</span>,
+<a name="l00151"></a>00151 <span class="stringliteral">"Qt.#.b.t.t.u.t.u.t.v.c.c.c.c.c.w.c.w.c.w.x.y.z.z.A.B.k.k.k.k.k.l.k.l.k.l.C.l.p.l.q.C.#.D.r.EQtQt"</span>,
+<a name="l00152"></a>00152 <span class="stringliteral">"Qt.a.e.d.c.c.e.c.c.c.f.c.g.c.h.c.F.c.h.G.z.z.i.H.z.z.I.k.i.k.m.l.n.l.o.C.J.K.L.K.M.q.#.D.N.OQtQt"</span>,
+<a name="l00153"></a>00153 <span class="stringliteral">"Qt.#.b.t.t.t.c.t.c.t.t.c.c.w.c.w.c.w.x.z.z.z.k.w.z.z.z.P.k.l.k.l.k.C.l.l.Q.n.R.S.T.p.#.D.U.OQtQt"</span>,
+<a name="l00154"></a>00154 <span class="stringliteral">"Qt.b.c.c.e.c.c.c.f.c.g.c.h.c.F.c.h.j.V.z.z.z.W.k.z.z.z.X.m.l.n.l.o.l.C.C.Y.Z.v.0.1.q.#.D.2.OQtQt"</span>,
+<a name="l00155"></a>00155 <span class="stringliteral">"Qt.#.c.t.t.v.c.t.c.v.t.t.t.w.c.w.k.w.x.z.z.z.k.3.z.z.z.4.k.l.k.C.l.C.l.l.5.6.Z.7.8.C.#.D.U.OQtQt"</span>,
+<a name="l00156"></a>00156 <span class="stringliteral">"Qt.a.e.d.c.c.f.c.g.c.f.c.g.c.h.j.i.j.i.9.V#..i##.z.z.z#a.n.l.m.l.n.l.o.C#b.Z#c.Z#d.p.#.D#e.OQtQt"</span>,
+<a name="l00157"></a>00157 <span class="stringliteral">"Qt.#.b.c.c.c.c.c.c.c.c.c.c.w.c.w.c.w.k.w.k.k#f.z.z.z.A.k.k.l.l.l.l.C.p.C.l.C.p.C.p.p.#.D.U.OQtQt"</span>,
+<a name="l00158"></a>00158 <span class="stringliteral">"Qt.b.c.c.e.c.c.c.f.c.g.c.h.c.i.c.i.j.i.k.i#g#h.z.z.z.3.l.m.l.n.l.o.l.p.l.p.q.p.p.p.l.#.D.2.OQtQt"</span>,
+<a name="l00159"></a>00159 <span class="stringliteral">"Qt.#.c.c.c.c.c.c.c.c.c#i#j.w.c#k.k#k.k#l.k#m.z.z.A.W.k.l.k.l.k.C.l.C.p.C.p.C.p.p.p.k.#.D.U.OQtQt"</span>,
+<a name="l00160"></a>00160 <span class="stringliteral">"Qt.a.e.c.c.c.f.c.g.c.h.D#n#o.o.q#n#p#q.D#r.z.z#s#t.k.m.l.n.l.o.l.C.l.o.q.p.q.p.q.p.k.#.D#e.OQtQt"</span>,
+<a name="l00161"></a>00161 <span class="stringliteral">"Qt.#.c.c.c.c.c.c.c.w.k.w.k.w.k.w.k.w.k#u.z.z.x.k.k.l.k.l.k.C.l.C.l.C.p.C.p.p.p.p.p.k.#.D.U.OQtQt"</span>,
+<a name="l00162"></a>00162 <span class="stringliteral">"Qt.b.c.c.f.c.g.c.h.c.F#o#q.j.i#p#v#w.J##.I#x.i#w.m.l.n#p.o.l.C.l.o.q.p.p.p.q.p.p.p.l.#.D.2.OQtQt"</span>,
+<a name="l00163"></a>00163 <span class="stringliteral">"Qt.#.c.c.c.c.c.w.c.w.c#y.p#y#p#l.D.C#z.z#A.D.k#B#w.D.k#C#D.C.l.C.p.C.p.C.p.C.p#E.p.k.#.D.U.OQtQt"</span>,
+<a name="l00164"></a>00164 <span class="stringliteral">"Qt.a.f.c.g.c.h.c.F.c.i.j.i.j.i.j.i.j#F.G.i.j.i.j.i.j.i.j.C.l.o.q.p.q.p.q.p.p.p.p.C.k.#.D#e.OQtQt"</span>,
+<a name="l00165"></a>00165 <span class="stringliteral">"Qt.#.c.c.c.w.c.w.c.w.k#y.l.D#k.C#p.C#G#H#o#l.k.l#o.w.E.l#o.J.p#B.l.J.p.C.p.p.p.p.l.k.#.D.U.OQtQt"</span>,
+<a name="l00166"></a>00166 <span class="stringliteral">"Qt.b.g.c.h.c.F.c.h.j.i#o#q.q#B#k#q#o.J#o.o.D#I.l#q#J#I.l#K#J#I#I#L#J.p.p.p.u.p.p.o.l.#.D.2#MQtQt"</span>,
+<a name="l00167"></a>00167 <span class="stringliteral">"Qt.#.c.w.c.w.c.w.k.w.k.w.k.w.k.k.k#N.z.z.9.l.k.C.l.C.l.C.p.C.p.C.p.C.p.p.p.p.p#E.p.k.#.D.U#MQtQt"</span>,
+<a name="l00168"></a>00168 <span class="stringliteral">"Qt.a.f.c.g.c.h.j.i.j.i.j.i.k.i.k.3.z.z.z.z#O.m.l.n.l.o.q.p.q.p.q.p.p.p.p.p.p#P.u.C.k.#.D#e#MQtQt"</span>,
+<a name="l00169"></a>00169 <span class="stringliteral">"Qt.#.c.c.c.w.c.w.c.w.k.w.k.k.k.k#f.z.z.z.z#Q.l.l.l.C.l.C.l.C.p.C.p.p.p.p.p#E.p#E.l.k.#.D.U#MQtQt"</span>,
+<a name="l00170"></a>00170 <span class="stringliteral">"Qt.b.g.c.h.c.i.c.i.j.i.k.i.k.i.k.i#h.z.z#R.l.n.l.o.l.p.l.p.q.p.p.p.p.p.l.o.l.p.l.o.l.#.D.2#MQtQt"</span>,
+<a name="l00171"></a>00171 <span class="stringliteral">"Qt.#.c.w.c.w.c.w.k.w.k.k.k.w.k.l.k.k#f#Q.k.k.k.l.k.k.k.l.k.k.k.l.k.k.k.l.k.k.k.l.k.k.#.D.U#MQtQt"</span>,
+<a name="l00172"></a>00172 <span class="stringliteral">"Qt.a.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.D#e#MQtQt"</span>,
+<a name="l00173"></a>00173 <span class="stringliteral">"QtQt.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.U#MQtQt"</span>,
+<a name="l00174"></a>00174 <span class="stringliteral">"QtQt.s.r#S#S#S#S#S#S#S#S#S#S#S.U.2.U#e.U.2.U#e.U.2.U#e.U.2.U#e.U.2.U#e.U.2.U#e.U.2.U#e.U#T#MQtQt"</span>,
+<a name="l00175"></a>00175 <span class="stringliteral">"QtQtQt#U#U.r.r.r.r.r.r.r.r.r.r.r.r.r.r.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O#M#M#M#M#M#M#M#M#M#M#M#VQtQt"</span>,
+<a name="l00176"></a>00176 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00177"></a>00177 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00178"></a>00178 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00179"></a>00179 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00180"></a>00180 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00181"></a>00181 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00182"></a>00182 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00183"></a>00183 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00184"></a>00184 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00185"></a>00185 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>,
+<a name="l00186"></a>00186 <span class="stringliteral">"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"</span>};
+<a name="l00187"></a>00187
+<a name="l00188"></a>00188
+<a name="l00189"></a>00189 <span class="comment">/*</span>
+<a name="l00190"></a>00190 <span class="comment"> * Constructs a AlertDlg as a child of 'parent', with the</span>
+<a name="l00191"></a>00191 <span class="comment"> * name 'name' and widget flags set to 'f'.</span>
+<a name="l00192"></a>00192 <span class="comment"> *</span>
+<a name="l00193"></a>00193 <span class="comment"> * The dialog will by default be modeless, unless you set 'modal' to</span>
+<a name="l00194"></a>00194 <span class="comment"> * TRUE to construct a modal dialog.</span>
+<a name="l00195"></a>00195 <span class="comment"> */</span>
+<a name="l00196"></a><a class="code" href="classAlertDlg.html#b8b7463dbb2a1c27a84f3846db46027b">00196</a> <a class="code" href="classAlertDlg.html#b8b7463dbb2a1c27a84f3846db46027b">AlertDlg::AlertDlg</a>( QWidget* parent, <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">bool</span> modal, WFlags fl )
+<a name="l00197"></a>00197 : QDialog( parent, name, modal, fl ),
+<a name="l00198"></a>00198 image0( (const char **) img0_AlertDlg )
+<a name="l00199"></a>00199 {
+<a name="l00200"></a>00200 <span class="keywordflow">if</span> ( !name )
+<a name="l00201"></a>00201 setName( <span class="stringliteral">"AlertDlg"</span> );
+<a name="l00202"></a>00202 <a class="code" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlgLayout</a> = <span class="keyword">new</span> QGridLayout( <span class="keyword">this</span>, 1, 1, 11, 6, <span class="stringliteral">"AlertDlgLayout"</span>);
+<a name="l00203"></a>00203
+<a name="l00204"></a>00204 <a class="code" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">m_ButtonIgnore</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"m_ButtonIgnore"</span> );
+<a name="l00205"></a>00205
+<a name="l00206"></a>00206 <a class="code" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlgLayout</a>-&gt;addWidget( <a class="code" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">m_ButtonIgnore</a>, 2, 2 );
+<a name="l00207"></a>00207
+<a name="l00208"></a>00208 <a class="code" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">m_ButtonOk</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"m_ButtonOk"</span> );
+<a name="l00209"></a>00209
+<a name="l00210"></a>00210 <a class="code" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlgLayout</a>-&gt;addMultiCellWidget( <a class="code" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">m_ButtonOk</a>, 2, 2, 0, 1 );
+<a name="l00211"></a>00211
+<a name="l00212"></a>00212 <a class="code" href="classAlertDlg.html#68460203169eb997f60e1d487309399a">PixmapLabel2</a> = <span class="keyword">new</span> QLabel( <span class="keyword">this</span>, <span class="stringliteral">"PixmapLabel2"</span> );
+<a name="l00213"></a>00213 <a class="code" href="classAlertDlg.html#68460203169eb997f60e1d487309399a">PixmapLabel2</a>-&gt;setPixmap( <a class="code" href="classAlertDlg.html#8309795df6391db4e19bf7d3c2c0a4b5">image0</a> );
+<a name="l00214"></a>00214 <a class="code" href="classAlertDlg.html#68460203169eb997f60e1d487309399a">PixmapLabel2</a>-&gt;setScaledContents( TRUE );
+<a name="l00215"></a>00215
+<a name="l00216"></a>00216 <a class="code" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlgLayout</a>-&gt;addMultiCellWidget( <a class="code" href="classAlertDlg.html#68460203169eb997f60e1d487309399a">PixmapLabel2</a>, 0, 1, 0, 0 );
+<a name="l00217"></a>00217
+<a name="l00218"></a>00218 <a class="code" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">QLabel_1</a> = <span class="keyword">new</span> QLabel( <span class="keyword">this</span>, <span class="stringliteral">"QLabel_1"</span> );
+<a name="l00219"></a>00219 QFont QLabel_1_font( <a class="code" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">QLabel_1</a>-&gt;font() );
+<a name="l00220"></a>00220 QLabel_1_font.setPointSize( 14 );
+<a name="l00221"></a>00221 QLabel_1_font.setBold( TRUE );
+<a name="l00222"></a>00222 QLabel_1_font.setItalic( TRUE );
+<a name="l00223"></a>00223 <a class="code" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">QLabel_1</a>-&gt;setFont( QLabel_1_font );
+<a name="l00224"></a>00224
+<a name="l00225"></a>00225 <a class="code" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlgLayout</a>-&gt;addMultiCellWidget( <a class="code" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">QLabel_1</a>, 0, 0, 1, 2 );
+<a name="l00226"></a>00226
+<a name="l00227"></a>00227 <a class="code" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">QLabel_2</a> = <span class="keyword">new</span> QLabel( <span class="keyword">this</span>, <span class="stringliteral">"QLabel_2"</span> );
+<a name="l00228"></a>00228 QFont QLabel_2_font( <a class="code" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">QLabel_2</a>-&gt;font() );
+<a name="l00229"></a>00229 QLabel_2_font.setPointSize( 14 );
+<a name="l00230"></a>00230 QLabel_2_font.setBold( TRUE );
+<a name="l00231"></a>00231 QLabel_2_font.setItalic( TRUE );
+<a name="l00232"></a>00232 <a class="code" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">QLabel_2</a>-&gt;setFont( QLabel_2_font );
+<a name="l00233"></a>00233
+<a name="l00234"></a>00234 <a class="code" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlgLayout</a>-&gt;addMultiCellWidget( <a class="code" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">QLabel_2</a>, 1, 1, 1, 2 );
+<a name="l00235"></a>00235 <a class="code" href="classAlertDlg.html#a00eea0c7a184d77386a0d9d39624e7b">languageChange</a>();
+<a name="l00236"></a>00236 resize( QSize(271, 127).expandedTo(minimumSizeHint()) );
+<a name="l00237"></a>00237 clearWState( WState_Polished );
+<a name="l00238"></a>00238
+<a name="l00239"></a>00239 <span class="comment">// signals and slots connections</span>
+<a name="l00240"></a>00240 connect( <a class="code" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">m_ButtonIgnore</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( reject() ) );
+<a name="l00241"></a>00241 connect( <a class="code" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">m_ButtonOk</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( accept() ) );
+<a name="l00242"></a>00242 connect( <a class="code" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">m_ButtonOk</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classAlertDlg.html#ccef482c60628a7c5e35633f9810a905">slotOk</a>() ) );
+<a name="l00243"></a>00243
+<a name="l00244"></a>00244 <span class="comment">// tab order</span>
+<a name="l00245"></a>00245 setTabOrder( <a class="code" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">m_ButtonOk</a>, <a class="code" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">m_ButtonIgnore</a> );
+<a name="l00246"></a>00246 }
+<a name="l00247"></a>00247
+<a name="l00248"></a>00248 <span class="comment">/*</span>
+<a name="l00249"></a>00249 <span class="comment"> * Destroys the object and frees any allocated resources</span>
+<a name="l00250"></a>00250 <span class="comment"> */</span>
+<a name="l00251"></a><a class="code" href="classAlertDlg.html#268ce013bcd724380693d42f3bcae203">00251</a> <a class="code" href="classAlertDlg.html#268ce013bcd724380693d42f3bcae203">AlertDlg::~AlertDlg</a>()
+<a name="l00252"></a>00252 {
+<a name="l00253"></a>00253 <span class="comment">// no need to delete child widgets, Qt does it all for us</span>
+<a name="l00254"></a>00254 }
+<a name="l00255"></a>00255
+<a name="l00256"></a>00256 <span class="comment">/*</span>
+<a name="l00257"></a>00257 <span class="comment"> * Sets the strings of the subwidgets using the current</span>
+<a name="l00258"></a>00258 <span class="comment"> * language.</span>
+<a name="l00259"></a>00259 <span class="comment"> */</span>
+<a name="l00260"></a><a class="code" href="classAlertDlg.html#a00eea0c7a184d77386a0d9d39624e7b">00260</a> <span class="keywordtype">void</span> <a class="code" href="classAlertDlg.html#a00eea0c7a184d77386a0d9d39624e7b">AlertDlg::languageChange</a>()
+<a name="l00261"></a>00261 {
+<a name="l00262"></a>00262 setCaption( tr2i18n( <span class="stringliteral">"KShowmail"</span> ) );
+<a name="l00263"></a>00263 <a class="code" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">m_ButtonIgnore</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Ignore"</span> ) );
+<a name="l00264"></a>00264 <a class="code" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">m_ButtonOk</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Show main window"</span> ) );
+<a name="l00265"></a>00265 <a class="code" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">QLabel_1</a>-&gt;setText( tr2i18n( <span class="stringliteral">"New mail"</span> ) );
+<a name="l00266"></a>00266 <a class="code" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">QLabel_2</a>-&gt;setText( tr2i18n( <span class="stringliteral">"has arrived !"</span> ) );
+<a name="l00267"></a>00267 }
+<a name="l00268"></a>00268
+<a name="l00269"></a><a class="code" href="classAlertDlg.html#ccef482c60628a7c5e35633f9810a905">00269</a> <span class="keywordtype">void</span> <a class="code" href="classAlertDlg.html#ccef482c60628a7c5e35633f9810a905">AlertDlg::slotOk</a>()
+<a name="l00270"></a>00270 {
+<a name="l00271"></a>00271 qWarning( <span class="stringliteral">"AlertDlg::slotOk(): Not implemented yet"</span> );
+<a name="l00272"></a>00272 }
+<a name="l00273"></a>00273
+<a name="l00274"></a>00274 <span class="preprocessor">#include "AlertDlg.moc"</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/AlertDlg_8h-source.html b/doc/html/AlertDlg_8h-source.html
new file mode 100644
index 0000000..37b166d
--- /dev/null
+++ b/doc/html/AlertDlg_8h-source.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/AlertDlg.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>AlertDlg.h</h1><a href="AlertDlg_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** Form interface generated from reading ui file './AlertDlg.ui'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Di Apr 1 21:55:26 2008</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The User Interface Compiler ($Id: AlertDlg_8h-source.html,v 1.13 2009/02/24 20:22:47 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#ifndef ALERTDLG_H</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#define ALERTDLG_H</span>
+<a name="l00012"></a>00012 <span class="preprocessor"></span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qpixmap.h&gt;</span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;qdialog.h&gt;</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="keyword">class </span>QVBoxLayout;
+<a name="l00018"></a>00018 <span class="keyword">class </span>QHBoxLayout;
+<a name="l00019"></a>00019 <span class="keyword">class </span>QGridLayout;
+<a name="l00020"></a>00020 <span class="keyword">class </span>QSpacerItem;
+<a name="l00021"></a>00021 <span class="keyword">class </span>QPushButton;
+<a name="l00022"></a>00022 <span class="keyword">class </span>QLabel;
+<a name="l00023"></a>00023
+<a name="l00024"></a><a class="code" href="classAlertDlg.html">00024</a> <span class="keyword">class </span><a class="code" href="classAlertDlg.html">AlertDlg</a> : <span class="keyword">public</span> QDialog
+<a name="l00025"></a>00025 {
+<a name="l00026"></a>00026 Q_OBJECT
+<a name="l00027"></a>00027
+<a name="l00028"></a>00028 <span class="keyword">public</span>:
+<a name="l00029"></a>00029 <a class="code" href="classAlertDlg.html#b8b7463dbb2a1c27a84f3846db46027b">AlertDlg</a>( QWidget* parent = 0, <span class="keyword">const</span> <span class="keywordtype">char</span>* name = 0, <span class="keywordtype">bool</span> modal = FALSE, WFlags fl = 0 );
+<a name="l00030"></a>00030 <a class="code" href="classAlertDlg.html#268ce013bcd724380693d42f3bcae203">~AlertDlg</a>();
+<a name="l00031"></a>00031
+<a name="l00032"></a><a class="code" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">00032</a> QPushButton* <a class="code" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">m_ButtonIgnore</a>;
+<a name="l00033"></a><a class="code" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">00033</a> QPushButton* <a class="code" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">m_ButtonOk</a>;
+<a name="l00034"></a><a class="code" href="classAlertDlg.html#68460203169eb997f60e1d487309399a">00034</a> QLabel* <a class="code" href="classAlertDlg.html#68460203169eb997f60e1d487309399a">PixmapLabel2</a>;
+<a name="l00035"></a><a class="code" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">00035</a> QLabel* <a class="code" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">QLabel_1</a>;
+<a name="l00036"></a><a class="code" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">00036</a> QLabel* <a class="code" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">QLabel_2</a>;
+<a name="l00037"></a>00037
+<a name="l00038"></a>00038 <span class="keyword">public</span> slots:
+<a name="l00039"></a>00039 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAlertDlg.html#ccef482c60628a7c5e35633f9810a905">slotOk</a>();
+<a name="l00040"></a>00040
+<a name="l00041"></a>00041 <span class="keyword">protected</span>:
+<a name="l00042"></a><a class="code" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">00042</a> QGridLayout* <a class="code" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlgLayout</a>;
+<a name="l00043"></a>00043
+<a name="l00044"></a>00044 <span class="keyword">protected</span> slots:
+<a name="l00045"></a>00045 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classAlertDlg.html#a00eea0c7a184d77386a0d9d39624e7b">languageChange</a>();
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 <span class="keyword">private</span>:
+<a name="l00048"></a><a class="code" href="classAlertDlg.html#8309795df6391db4e19bf7d3c2c0a4b5">00048</a> QPixmap <a class="code" href="classAlertDlg.html#8309795df6391db4e19bf7d3c2c0a4b5">image0</a>;
+<a name="l00049"></a>00049
+<a name="l00050"></a>00050 };
+<a name="l00051"></a>00051
+<a name="l00052"></a>00052 <span class="preprocessor">#endif // ALERTDLG_H</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/AlertDlg_8moc-source.html b/doc/html/AlertDlg_8moc-source.html
new file mode 100644
index 0000000..9f63528
--- /dev/null
+++ b/doc/html/AlertDlg_8moc-source.html
@@ -0,0 +1,126 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/AlertDlg.moc Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>AlertDlg.moc</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** AlertDlg meta object code from reading C++ file 'AlertDlg.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Fri Jun 29 22:08:57 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: AlertDlg_8moc-source.html,v 1.10 2007/07/05 17:37:49 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "AlertDlg.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *AlertDlg::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"AlertDlg"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *AlertDlg::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_AlertDlg( <span class="stringliteral">"AlertDlg"</span>, &amp;AlertDlg::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString AlertDlg::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"AlertDlg"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString AlertDlg::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"AlertDlg"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* AlertDlg::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = QDialog::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotOk"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"languageChange"</span>, 0, 0 };
+<a name="l00057"></a>00057 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00058"></a>00058 { <span class="stringliteral">"slotOk()"</span>, &amp;slot_0, QMetaData::Public },
+<a name="l00059"></a>00059 { <span class="stringliteral">"languageChange()"</span>, &amp;slot_1, QMetaData::Protected }
+<a name="l00060"></a>00060 };
+<a name="l00061"></a>00061 metaObj = QMetaObject::new_metaobject(
+<a name="l00062"></a>00062 <span class="stringliteral">"AlertDlg"</span>, parentObject,
+<a name="l00063"></a>00063 slot_tbl, 2,
+<a name="l00064"></a>00064 0, 0,
+<a name="l00065"></a>00065 #ifndef QT_NO_PROPERTIES
+<a name="l00066"></a>00066 0, 0,
+<a name="l00067"></a>00067 0, 0,
+<a name="l00068"></a>00068 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00069"></a>00069 0, 0 );
+<a name="l00070"></a>00070 cleanUp_AlertDlg.setMetaObject( metaObj );
+<a name="l00071"></a>00071 <span class="keywordflow">return</span> metaObj;
+<a name="l00072"></a>00072 }
+<a name="l00073"></a>00073
+<a name="l00074"></a>00074 <span class="keywordtype">void</span>* AlertDlg::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00075"></a>00075 {
+<a name="l00076"></a>00076 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"AlertDlg"</span> ) )
+<a name="l00077"></a>00077 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00078"></a>00078 <span class="keywordflow">return</span> QDialog::qt_cast( clname );
+<a name="l00079"></a>00079 }
+<a name="l00080"></a>00080
+<a name="l00081"></a>00081 <span class="keywordtype">bool</span> AlertDlg::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00082"></a>00082 {
+<a name="l00083"></a>00083 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00084"></a>00084 <span class="keywordflow">case</span> 0: <a class="code" href="classAlertDlg.html#ccef482c60628a7c5e35633f9810a905">slotOk</a>(); <span class="keywordflow">break</span>;
+<a name="l00085"></a>00085 <span class="keywordflow">case</span> 1: <a class="code" href="classAlertDlg.html#a00eea0c7a184d77386a0d9d39624e7b">languageChange</a>(); <span class="keywordflow">break</span>;
+<a name="l00086"></a>00086 <span class="keywordflow">default</span>:
+<a name="l00087"></a>00087 <span class="keywordflow">return</span> QDialog::qt_invoke( _id, _o );
+<a name="l00088"></a>00088 }
+<a name="l00089"></a>00089 <span class="keywordflow">return</span> TRUE;
+<a name="l00090"></a>00090 }
+<a name="l00091"></a>00091
+<a name="l00092"></a>00092 <span class="keywordtype">bool</span> AlertDlg::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00093"></a>00093 {
+<a name="l00094"></a>00094 <span class="keywordflow">return</span> QDialog::qt_emit(_id,_o);
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00097"></a>00097 <span class="preprocessor"></span>
+<a name="l00098"></a>00098 <span class="keywordtype">bool</span> AlertDlg::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00099"></a>00099 {
+<a name="l00100"></a>00100 <span class="keywordflow">return</span> QDialog::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00101"></a>00101 }
+<a name="l00102"></a>00102
+<a name="l00103"></a>00103 <span class="keywordtype">bool</span> AlertDlg::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00104"></a>00104 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/CommandDlg_8cpp-source.html b/doc/html/CommandDlg_8cpp-source.html
new file mode 100644
index 0000000..d1c77e0
--- /dev/null
+++ b/doc/html/CommandDlg_8cpp-source.html
@@ -0,0 +1,186 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/CommandDlg.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>CommandDlg.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;kdialog.h&gt;</span>
+<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00003"></a>00003 <span class="comment">/****************************************************************************</span>
+<a name="l00004"></a>00004 <span class="comment">** Form implementation generated from reading ui file '/home/kuddel/Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/CommandDlg.ui'</span>
+<a name="l00005"></a>00005 <span class="comment">**</span>
+<a name="l00006"></a>00006 <span class="comment">** Created: Di Mai 15 19:57:53 2007</span>
+<a name="l00007"></a>00007 <span class="comment">** by: The User Interface Compiler ($Id: CommandDlg_8cpp-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00008"></a>00008 <span class="comment">**</span>
+<a name="l00009"></a>00009 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00010"></a>00010 <span class="comment">****************************************************************************/</span>
+<a name="l00011"></a>00011
+<a name="l00012"></a>00012 <span class="preprocessor">#include "CommandDlg.h"</span>
+<a name="l00013"></a>00013
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;qpushbutton.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;qgroupbox.h&gt;</span>
+<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;qcombobox.h&gt;</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qlayout.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qtooltip.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qwhatsthis.h&gt;</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="comment">/*</span>
+<a name="l00023"></a>00023 <span class="comment"> * Constructs a CommandDlg as a child of 'parent', with the</span>
+<a name="l00024"></a>00024 <span class="comment"> * name 'name' and widget flags set to 'f'.</span>
+<a name="l00025"></a>00025 <span class="comment"> *</span>
+<a name="l00026"></a>00026 <span class="comment"> * The dialog will by default be modeless, unless you set 'modal' to</span>
+<a name="l00027"></a>00027 <span class="comment"> * TRUE to construct a modal dialog.</span>
+<a name="l00028"></a>00028 <span class="comment"> */</span>
+<a name="l00029"></a><a class="code" href="classCommandDlg.html#00435683972414b1f2ca8bcb9e1dbc91">00029</a> <a class="code" href="classCommandDlg.html#00435683972414b1f2ca8bcb9e1dbc91">CommandDlg::CommandDlg</a>( QWidget* parent, <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">bool</span> modal, WFlags fl )
+<a name="l00030"></a>00030 : QDialog( parent, name, modal, fl )
+<a name="l00031"></a>00031 {
+<a name="l00032"></a>00032 <span class="keywordflow">if</span> ( !name )
+<a name="l00033"></a>00033 setName( <span class="stringliteral">"CommandDlg"</span> );
+<a name="l00034"></a>00034 setSizeGripEnabled( FALSE );
+<a name="l00035"></a>00035 <a class="code" href="classCommandDlg.html#f4d0781c175dda013e4eb5d512edf6ac">CommandDlgLayout</a> = <span class="keyword">new</span> QGridLayout( <span class="keyword">this</span>, 1, 1, 11, 6, <span class="stringliteral">"CommandDlgLayout"</span>);
+<a name="l00036"></a>00036
+<a name="l00037"></a>00037 <a class="code" href="classCommandDlg.html#bb726a94053a9e1aba96babad4e5c024">Layout6</a> = <span class="keyword">new</span> QHBoxLayout( 0, 0, 6, <span class="stringliteral">"Layout6"</span>);
+<a name="l00038"></a>00038 <a class="code" href="classCommandDlg.html#58c806acab3e0beb26bc507ac23db903">Spacer11</a> = <span class="keyword">new</span> QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00039"></a>00039 <a class="code" href="classCommandDlg.html#bb726a94053a9e1aba96babad4e5c024">Layout6</a>-&gt;addItem( <a class="code" href="classCommandDlg.html#58c806acab3e0beb26bc507ac23db903">Spacer11</a> );
+<a name="l00040"></a>00040
+<a name="l00041"></a>00041 <a class="code" href="classCommandDlg.html#15cdabaf87020ef1ead6ecd7e61d1dea">m_ButtonOk</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"m_ButtonOk"</span> );
+<a name="l00042"></a>00042 <a class="code" href="classCommandDlg.html#bb726a94053a9e1aba96babad4e5c024">Layout6</a>-&gt;addWidget( <a class="code" href="classCommandDlg.html#15cdabaf87020ef1ead6ecd7e61d1dea">m_ButtonOk</a> );
+<a name="l00043"></a>00043
+<a name="l00044"></a>00044 <a class="code" href="classCommandDlg.html#44506cd25120706b4dabcf50e45a8d70">m_ButtonCancel</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"m_ButtonCancel"</span> );
+<a name="l00045"></a>00045 <a class="code" href="classCommandDlg.html#bb726a94053a9e1aba96babad4e5c024">Layout6</a>-&gt;addWidget( <a class="code" href="classCommandDlg.html#44506cd25120706b4dabcf50e45a8d70">m_ButtonCancel</a> );
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 <a class="code" href="classCommandDlg.html#f4d0781c175dda013e4eb5d512edf6ac">CommandDlgLayout</a>-&gt;addLayout( <a class="code" href="classCommandDlg.html#bb726a94053a9e1aba96babad4e5c024">Layout6</a>, 1, 0 );
+<a name="l00048"></a>00048
+<a name="l00049"></a>00049 <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a> = <span class="keyword">new</span> QGroupBox( <span class="keyword">this</span>, <span class="stringliteral">"QGroupBox_1"</span> );
+<a name="l00050"></a>00050 <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00051"></a>00051 <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>-&gt;setColumnLayout(0, Qt::Vertical );
+<a name="l00052"></a>00052 <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>-&gt;layout()-&gt;setSpacing( 6 );
+<a name="l00053"></a>00053 <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>-&gt;layout()-&gt;setMargin( 11 );
+<a name="l00054"></a>00054 <a class="code" href="classCommandDlg.html#11cd0e642b8082cc53342e640bb9491d">QGroupBox_1Layout</a> = <span class="keyword">new</span> QGridLayout( <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>-&gt;layout() );
+<a name="l00055"></a>00055 <a class="code" href="classCommandDlg.html#11cd0e642b8082cc53342e640bb9491d">QGroupBox_1Layout</a>-&gt;setAlignment( Qt::AlignTop );
+<a name="l00056"></a>00056
+<a name="l00057"></a>00057 <a class="code" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>, <span class="stringliteral">"m_ButtonAdd"</span> );
+<a name="l00058"></a>00058 <a class="code" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <a class="code" href="classCommandDlg.html#11cd0e642b8082cc53342e640bb9491d">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a>, 1, 0 );
+<a name="l00061"></a>00061
+<a name="l00062"></a>00062 <a class="code" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>, <span class="stringliteral">"m_ButtonEdit"</span> );
+<a name="l00063"></a>00063 <a class="code" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00064"></a>00064
+<a name="l00065"></a>00065 <a class="code" href="classCommandDlg.html#11cd0e642b8082cc53342e640bb9491d">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a>, 1, 1 );
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 <a class="code" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>, <span class="stringliteral">"m_ButtonCopy"</span> );
+<a name="l00068"></a>00068 <a class="code" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00069"></a>00069
+<a name="l00070"></a>00070 <a class="code" href="classCommandDlg.html#11cd0e642b8082cc53342e640bb9491d">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a>, 1, 2 );
+<a name="l00071"></a>00071
+<a name="l00072"></a>00072 <a class="code" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>, <span class="stringliteral">"m_ButtonDelete"</span> );
+<a name="l00073"></a>00073 <a class="code" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00074"></a>00074
+<a name="l00075"></a>00075 <a class="code" href="classCommandDlg.html#11cd0e642b8082cc53342e640bb9491d">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a>, 1, 3 );
+<a name="l00076"></a>00076
+<a name="l00077"></a>00077 <a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a> = <span class="keyword">new</span> QComboBox( FALSE, <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>, <span class="stringliteral">"m_ComboCommand"</span> );
+<a name="l00078"></a>00078 <a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00079"></a>00079 <a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>-&gt;setInsertionPolicy( QComboBox::AtTop );
+<a name="l00080"></a>00080
+<a name="l00081"></a>00081 <a class="code" href="classCommandDlg.html#11cd0e642b8082cc53342e640bb9491d">QGroupBox_1Layout</a>-&gt;addMultiCellWidget( <a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>, 0, 0, 0, 3 );
+<a name="l00082"></a>00082
+<a name="l00083"></a>00083 <a class="code" href="classCommandDlg.html#f4d0781c175dda013e4eb5d512edf6ac">CommandDlgLayout</a>-&gt;addWidget( <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>, 0, 0 );
+<a name="l00084"></a>00084 <a class="code" href="classCommandDlg.html#0c4debe5a9a4cffefbe15970b3161145">languageChange</a>();
+<a name="l00085"></a>00085 resize( QSize(378, 146).expandedTo(minimumSizeHint()) );
+<a name="l00086"></a>00086 clearWState( WState_Polished );
+<a name="l00087"></a>00087
+<a name="l00088"></a>00088 <span class="comment">// signals and slots connections</span>
+<a name="l00089"></a>00089 connect( <a class="code" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classCommandDlg.html#7cddba6d467199508ccafe6d0a3e2576">slotAdd</a>() ) );
+<a name="l00090"></a>00090 connect( <a class="code" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classCommandDlg.html#12de1a903a59e5ddc03927b1bbdfa62e">slotEdit</a>() ) );
+<a name="l00091"></a>00091 connect( <a class="code" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classCommandDlg.html#4bc3a21e6cb8186dc29dd1831d2bad28">slotCopy</a>() ) );
+<a name="l00092"></a>00092 connect( <a class="code" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classCommandDlg.html#74ab751c727cf4f5fdfa9603d6567b2b">slotDelete</a>() ) );
+<a name="l00093"></a>00093 connect( <a class="code" href="classCommandDlg.html#15cdabaf87020ef1ead6ecd7e61d1dea">m_ButtonOk</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classCommandDlg.html#e2ff4ab352bb06d0e0dc9379c4af9f89">slotOk</a>() ) );
+<a name="l00094"></a>00094 connect( <a class="code" href="classCommandDlg.html#44506cd25120706b4dabcf50e45a8d70">m_ButtonCancel</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( reject() ) );
+<a name="l00095"></a>00095 connect( <a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>, SIGNAL( activated(<span class="keywordtype">int</span>) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classCommandDlg.html#2bb1f9388d8b26c7ef63d70834d25b34">slotCommandActivated</a>(<span class="keywordtype">int</span>) ) );
+<a name="l00096"></a>00096
+<a name="l00097"></a>00097 <span class="comment">// tab order</span>
+<a name="l00098"></a>00098 setTabOrder( <a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>, <a class="code" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a> );
+<a name="l00099"></a>00099 setTabOrder( <a class="code" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a>, <a class="code" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a> );
+<a name="l00100"></a>00100 setTabOrder( <a class="code" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a>, <a class="code" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a> );
+<a name="l00101"></a>00101 setTabOrder( <a class="code" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a>, <a class="code" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a> );
+<a name="l00102"></a>00102 setTabOrder( <a class="code" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a>, <a class="code" href="classCommandDlg.html#15cdabaf87020ef1ead6ecd7e61d1dea">m_ButtonOk</a> );
+<a name="l00103"></a>00103 setTabOrder( <a class="code" href="classCommandDlg.html#15cdabaf87020ef1ead6ecd7e61d1dea">m_ButtonOk</a>, <a class="code" href="classCommandDlg.html#44506cd25120706b4dabcf50e45a8d70">m_ButtonCancel</a> );
+<a name="l00104"></a>00104 }
+<a name="l00105"></a>00105
+<a name="l00106"></a>00106 <span class="comment">/*</span>
+<a name="l00107"></a>00107 <span class="comment"> * Destroys the object and frees any allocated resources</span>
+<a name="l00108"></a>00108 <span class="comment"> */</span>
+<a name="l00109"></a><a class="code" href="classCommandDlg.html#0eb54248bcf1851da5c2c054582b1e99">00109</a> <a class="code" href="classCommandDlg.html#0eb54248bcf1851da5c2c054582b1e99">CommandDlg::~CommandDlg</a>()
+<a name="l00110"></a>00110 {
+<a name="l00111"></a>00111 <span class="comment">// no need to delete child widgets, Qt does it all for us</span>
+<a name="l00112"></a>00112 }
+<a name="l00113"></a>00113
+<a name="l00114"></a>00114 <span class="comment">/*</span>
+<a name="l00115"></a>00115 <span class="comment"> * Sets the strings of the subwidgets using the current</span>
+<a name="l00116"></a>00116 <span class="comment"> * language.</span>
+<a name="l00117"></a>00117 <span class="comment"> */</span>
+<a name="l00118"></a><a class="code" href="classCommandDlg.html#0c4debe5a9a4cffefbe15970b3161145">00118</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#0c4debe5a9a4cffefbe15970b3161145">CommandDlg::languageChange</a>()
+<a name="l00119"></a>00119 {
+<a name="l00120"></a>00120 setCaption( tr2i18n( <span class="stringliteral">"Command"</span> ) );
+<a name="l00121"></a>00121 <a class="code" href="classCommandDlg.html#15cdabaf87020ef1ead6ecd7e61d1dea">m_ButtonOk</a>-&gt;setText( tr2i18n( <span class="stringliteral">"OK"</span> ) );
+<a name="l00122"></a>00122 <a class="code" href="classCommandDlg.html#44506cd25120706b4dabcf50e45a8d70">m_ButtonCancel</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Cancel"</span> ) );
+<a name="l00123"></a>00123 <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>-&gt;setTitle( tr2i18n( <span class="stringliteral">"User commands"</span> ) );
+<a name="l00124"></a>00124 <a class="code" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Add"</span> ) );
+<a name="l00125"></a>00125 QToolTip::add( <a class="code" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a>, tr2i18n( <span class="stringliteral">"Add user command"</span> ) );
+<a name="l00126"></a>00126 <a class="code" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Edit"</span> ) );
+<a name="l00127"></a>00127 QToolTip::add( <a class="code" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a>, tr2i18n( <span class="stringliteral">"Edit user command"</span> ) );
+<a name="l00128"></a>00128 <a class="code" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Copy"</span> ) );
+<a name="l00129"></a>00129 QToolTip::add( <a class="code" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a>, tr2i18n( <span class="stringliteral">"Copy user command"</span> ) );
+<a name="l00130"></a>00130 <a class="code" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Delete"</span> ) );
+<a name="l00131"></a>00131 QToolTip::add( <a class="code" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a>, tr2i18n( <span class="stringliteral">"Delete user command"</span> ) );
+<a name="l00132"></a>00132 }
+<a name="l00133"></a>00133
+<a name="l00134"></a><a class="code" href="classCommandDlg.html#2bb1f9388d8b26c7ef63d70834d25b34">00134</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#2bb1f9388d8b26c7ef63d70834d25b34">CommandDlg::slotCommandActivated</a>(<span class="keywordtype">int</span>)
+<a name="l00135"></a>00135 {
+<a name="l00136"></a>00136 qWarning( <span class="stringliteral">"CommandDlg::slotCommandActivated(int): Not implemented yet"</span> );
+<a name="l00137"></a>00137 }
+<a name="l00138"></a>00138
+<a name="l00139"></a><a class="code" href="classCommandDlg.html#7cddba6d467199508ccafe6d0a3e2576">00139</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#7cddba6d467199508ccafe6d0a3e2576">CommandDlg::slotAdd</a>()
+<a name="l00140"></a>00140 {
+<a name="l00141"></a>00141 qWarning( <span class="stringliteral">"CommandDlg::slotAdd(): Not implemented yet"</span> );
+<a name="l00142"></a>00142 }
+<a name="l00143"></a>00143
+<a name="l00144"></a><a class="code" href="classCommandDlg.html#4bc3a21e6cb8186dc29dd1831d2bad28">00144</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#4bc3a21e6cb8186dc29dd1831d2bad28">CommandDlg::slotCopy</a>()
+<a name="l00145"></a>00145 {
+<a name="l00146"></a>00146 qWarning( <span class="stringliteral">"CommandDlg::slotCopy(): Not implemented yet"</span> );
+<a name="l00147"></a>00147 }
+<a name="l00148"></a>00148
+<a name="l00149"></a><a class="code" href="classCommandDlg.html#74ab751c727cf4f5fdfa9603d6567b2b">00149</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#74ab751c727cf4f5fdfa9603d6567b2b">CommandDlg::slotDelete</a>()
+<a name="l00150"></a>00150 {
+<a name="l00151"></a>00151 qWarning( <span class="stringliteral">"CommandDlg::slotDelete(): Not implemented yet"</span> );
+<a name="l00152"></a>00152 }
+<a name="l00153"></a>00153
+<a name="l00154"></a><a class="code" href="classCommandDlg.html#12de1a903a59e5ddc03927b1bbdfa62e">00154</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#12de1a903a59e5ddc03927b1bbdfa62e">CommandDlg::slotEdit</a>()
+<a name="l00155"></a>00155 {
+<a name="l00156"></a>00156 qWarning( <span class="stringliteral">"CommandDlg::slotEdit(): Not implemented yet"</span> );
+<a name="l00157"></a>00157 }
+<a name="l00158"></a>00158
+<a name="l00159"></a><a class="code" href="classCommandDlg.html#e2ff4ab352bb06d0e0dc9379c4af9f89">00159</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#e2ff4ab352bb06d0e0dc9379c4af9f89">CommandDlg::slotOk</a>()
+<a name="l00160"></a>00160 {
+<a name="l00161"></a>00161 qWarning( <span class="stringliteral">"CommandDlg::slotOk(): Not implemented yet"</span> );
+<a name="l00162"></a>00162 }
+<a name="l00163"></a>00163
+<a name="l00164"></a>00164 <span class="preprocessor">#include "CommandDlg.moc"</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/CommandDlg_8h-source.html b/doc/html/CommandDlg_8h-source.html
new file mode 100644
index 0000000..5360a53
--- /dev/null
+++ b/doc/html/CommandDlg_8h-source.html
@@ -0,0 +1,82 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/CommandDlg.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>CommandDlg.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** Form interface generated from reading ui file '/home/kuddel/Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/CommandDlg.ui'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Di Mai 15 19:57:52 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The User Interface Compiler ($Id: CommandDlg_8h-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#ifndef COMMANDDLG_H</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#define COMMANDDLG_H</span>
+<a name="l00012"></a>00012 <span class="preprocessor"></span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qdialog.h&gt;</span>
+<a name="l00015"></a>00015
+<a name="l00016"></a>00016 <span class="keyword">class </span>QVBoxLayout;
+<a name="l00017"></a>00017 <span class="keyword">class </span>QHBoxLayout;
+<a name="l00018"></a>00018 <span class="keyword">class </span>QGridLayout;
+<a name="l00019"></a>00019 <span class="keyword">class </span>QSpacerItem;
+<a name="l00020"></a>00020 <span class="keyword">class </span>QPushButton;
+<a name="l00021"></a>00021 <span class="keyword">class </span>QGroupBox;
+<a name="l00022"></a>00022 <span class="keyword">class </span>QComboBox;
+<a name="l00023"></a>00023
+<a name="l00024"></a><a class="code" href="classCommandDlg.html">00024</a> <span class="keyword">class </span><a class="code" href="classCommandDlg.html">CommandDlg</a> : <span class="keyword">public</span> QDialog
+<a name="l00025"></a>00025 {
+<a name="l00026"></a>00026 Q_OBJECT
+<a name="l00027"></a>00027
+<a name="l00028"></a>00028 <span class="keyword">public</span>:
+<a name="l00029"></a>00029 <a class="code" href="classCommandDlg.html#00435683972414b1f2ca8bcb9e1dbc91">CommandDlg</a>( QWidget* parent = 0, <span class="keyword">const</span> <span class="keywordtype">char</span>* name = 0, <span class="keywordtype">bool</span> modal = FALSE, WFlags fl = 0 );
+<a name="l00030"></a>00030 <a class="code" href="classCommandDlg.html#0eb54248bcf1851da5c2c054582b1e99">~CommandDlg</a>();
+<a name="l00031"></a>00031
+<a name="l00032"></a><a class="code" href="classCommandDlg.html#15cdabaf87020ef1ead6ecd7e61d1dea">00032</a> QPushButton* <a class="code" href="classCommandDlg.html#15cdabaf87020ef1ead6ecd7e61d1dea">m_ButtonOk</a>;
+<a name="l00033"></a><a class="code" href="classCommandDlg.html#44506cd25120706b4dabcf50e45a8d70">00033</a> QPushButton* <a class="code" href="classCommandDlg.html#44506cd25120706b4dabcf50e45a8d70">m_ButtonCancel</a>;
+<a name="l00034"></a><a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">00034</a> QGroupBox* <a class="code" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a>;
+<a name="l00035"></a><a class="code" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">00035</a> QPushButton* <a class="code" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a>;
+<a name="l00036"></a><a class="code" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">00036</a> QPushButton* <a class="code" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a>;
+<a name="l00037"></a><a class="code" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">00037</a> QPushButton* <a class="code" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a>;
+<a name="l00038"></a><a class="code" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">00038</a> QPushButton* <a class="code" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a>;
+<a name="l00039"></a><a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">00039</a> QComboBox* <a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>;
+<a name="l00040"></a>00040
+<a name="l00041"></a>00041 <span class="keyword">public</span> slots:
+<a name="l00042"></a>00042 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#2bb1f9388d8b26c7ef63d70834d25b34">slotCommandActivated</a>(<span class="keywordtype">int</span>);
+<a name="l00043"></a>00043 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#7cddba6d467199508ccafe6d0a3e2576">slotAdd</a>();
+<a name="l00044"></a>00044 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#4bc3a21e6cb8186dc29dd1831d2bad28">slotCopy</a>();
+<a name="l00045"></a>00045 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#74ab751c727cf4f5fdfa9603d6567b2b">slotDelete</a>();
+<a name="l00046"></a>00046 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#12de1a903a59e5ddc03927b1bbdfa62e">slotEdit</a>();
+<a name="l00047"></a>00047 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#e2ff4ab352bb06d0e0dc9379c4af9f89">slotOk</a>();
+<a name="l00048"></a>00048
+<a name="l00049"></a>00049 <span class="keyword">protected</span>:
+<a name="l00050"></a><a class="code" href="classCommandDlg.html#f4d0781c175dda013e4eb5d512edf6ac">00050</a> QGridLayout* <a class="code" href="classCommandDlg.html#f4d0781c175dda013e4eb5d512edf6ac">CommandDlgLayout</a>;
+<a name="l00051"></a><a class="code" href="classCommandDlg.html#bb726a94053a9e1aba96babad4e5c024">00051</a> QHBoxLayout* <a class="code" href="classCommandDlg.html#bb726a94053a9e1aba96babad4e5c024">Layout6</a>;
+<a name="l00052"></a><a class="code" href="classCommandDlg.html#58c806acab3e0beb26bc507ac23db903">00052</a> QSpacerItem* <a class="code" href="classCommandDlg.html#58c806acab3e0beb26bc507ac23db903">Spacer11</a>;
+<a name="l00053"></a><a class="code" href="classCommandDlg.html#11cd0e642b8082cc53342e640bb9491d">00053</a> QGridLayout* <a class="code" href="classCommandDlg.html#11cd0e642b8082cc53342e640bb9491d">QGroupBox_1Layout</a>;
+<a name="l00054"></a>00054
+<a name="l00055"></a>00055 <span class="keyword">protected</span> slots:
+<a name="l00056"></a>00056 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDlg.html#0c4debe5a9a4cffefbe15970b3161145">languageChange</a>();
+<a name="l00057"></a>00057
+<a name="l00058"></a>00058 };
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <span class="preprocessor">#endif // COMMANDDLG_H</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/CommandDlg_8moc-source.html b/doc/html/CommandDlg_8moc-source.html
new file mode 100644
index 0000000..caed33d
--- /dev/null
+++ b/doc/html/CommandDlg_8moc-source.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/CommandDlg.moc Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>CommandDlg.moc</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** CommandDlg meta object code from reading C++ file 'CommandDlg.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Tue May 15 19:57:53 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: CommandDlg_8moc-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "CommandDlg.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *CommandDlg::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"CommandDlg"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *CommandDlg::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_CommandDlg( <span class="stringliteral">"CommandDlg"</span>, &amp;CommandDlg::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString CommandDlg::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"CommandDlg"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString CommandDlg::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"CommandDlg"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* CommandDlg::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = QDialog::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_0[] = {
+<a name="l00056"></a>00056 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00057"></a>00057 };
+<a name="l00058"></a>00058 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotCommandActivated"</span>, 1, param_slot_0 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotAdd"</span>, 0, 0 };
+<a name="l00060"></a>00060 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_2 = {<span class="stringliteral">"slotCopy"</span>, 0, 0 };
+<a name="l00061"></a>00061 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_3 = {<span class="stringliteral">"slotDelete"</span>, 0, 0 };
+<a name="l00062"></a>00062 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_4 = {<span class="stringliteral">"slotEdit"</span>, 0, 0 };
+<a name="l00063"></a>00063 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_5 = {<span class="stringliteral">"slotOk"</span>, 0, 0 };
+<a name="l00064"></a>00064 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_6 = {<span class="stringliteral">"languageChange"</span>, 0, 0 };
+<a name="l00065"></a>00065 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00066"></a>00066 { <span class="stringliteral">"slotCommandActivated(int)"</span>, &amp;slot_0, QMetaData::Public },
+<a name="l00067"></a>00067 { <span class="stringliteral">"slotAdd()"</span>, &amp;slot_1, QMetaData::Public },
+<a name="l00068"></a>00068 { <span class="stringliteral">"slotCopy()"</span>, &amp;slot_2, QMetaData::Public },
+<a name="l00069"></a>00069 { <span class="stringliteral">"slotDelete()"</span>, &amp;slot_3, QMetaData::Public },
+<a name="l00070"></a>00070 { <span class="stringliteral">"slotEdit()"</span>, &amp;slot_4, QMetaData::Public },
+<a name="l00071"></a>00071 { <span class="stringliteral">"slotOk()"</span>, &amp;slot_5, QMetaData::Public },
+<a name="l00072"></a>00072 { <span class="stringliteral">"languageChange()"</span>, &amp;slot_6, QMetaData::Protected }
+<a name="l00073"></a>00073 };
+<a name="l00074"></a>00074 metaObj = QMetaObject::new_metaobject(
+<a name="l00075"></a>00075 <span class="stringliteral">"CommandDlg"</span>, parentObject,
+<a name="l00076"></a>00076 slot_tbl, 7,
+<a name="l00077"></a>00077 0, 0,
+<a name="l00078"></a>00078 #ifndef QT_NO_PROPERTIES
+<a name="l00079"></a>00079 0, 0,
+<a name="l00080"></a>00080 0, 0,
+<a name="l00081"></a>00081 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00082"></a>00082 0, 0 );
+<a name="l00083"></a>00083 cleanUp_CommandDlg.setMetaObject( metaObj );
+<a name="l00084"></a>00084 <span class="keywordflow">return</span> metaObj;
+<a name="l00085"></a>00085 }
+<a name="l00086"></a>00086
+<a name="l00087"></a>00087 <span class="keywordtype">void</span>* CommandDlg::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00088"></a>00088 {
+<a name="l00089"></a>00089 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"CommandDlg"</span> ) )
+<a name="l00090"></a>00090 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00091"></a>00091 <span class="keywordflow">return</span> QDialog::qt_cast( clname );
+<a name="l00092"></a>00092 }
+<a name="l00093"></a>00093
+<a name="l00094"></a>00094 <span class="keywordtype">bool</span> CommandDlg::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00095"></a>00095 {
+<a name="l00096"></a>00096 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00097"></a>00097 <span class="keywordflow">case</span> 0: <a class="code" href="classCommandDlg.html#2bb1f9388d8b26c7ef63d70834d25b34">slotCommandActivated</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00098"></a>00098 <span class="keywordflow">case</span> 1: <a class="code" href="classCommandDlg.html#7cddba6d467199508ccafe6d0a3e2576">slotAdd</a>(); <span class="keywordflow">break</span>;
+<a name="l00099"></a>00099 <span class="keywordflow">case</span> 2: <a class="code" href="classCommandDlg.html#4bc3a21e6cb8186dc29dd1831d2bad28">slotCopy</a>(); <span class="keywordflow">break</span>;
+<a name="l00100"></a>00100 <span class="keywordflow">case</span> 3: <a class="code" href="classCommandDlg.html#74ab751c727cf4f5fdfa9603d6567b2b">slotDelete</a>(); <span class="keywordflow">break</span>;
+<a name="l00101"></a>00101 <span class="keywordflow">case</span> 4: <a class="code" href="classCommandDlg.html#12de1a903a59e5ddc03927b1bbdfa62e">slotEdit</a>(); <span class="keywordflow">break</span>;
+<a name="l00102"></a>00102 <span class="keywordflow">case</span> 5: <a class="code" href="classCommandDlg.html#e2ff4ab352bb06d0e0dc9379c4af9f89">slotOk</a>(); <span class="keywordflow">break</span>;
+<a name="l00103"></a>00103 <span class="keywordflow">case</span> 6: <a class="code" href="classCommandDlg.html#0c4debe5a9a4cffefbe15970b3161145">languageChange</a>(); <span class="keywordflow">break</span>;
+<a name="l00104"></a>00104 <span class="keywordflow">default</span>:
+<a name="l00105"></a>00105 <span class="keywordflow">return</span> QDialog::qt_invoke( _id, _o );
+<a name="l00106"></a>00106 }
+<a name="l00107"></a>00107 <span class="keywordflow">return</span> TRUE;
+<a name="l00108"></a>00108 }
+<a name="l00109"></a>00109
+<a name="l00110"></a>00110 <span class="keywordtype">bool</span> CommandDlg::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00111"></a>00111 {
+<a name="l00112"></a>00112 <span class="keywordflow">return</span> QDialog::qt_emit(_id,_o);
+<a name="l00113"></a>00113 }
+<a name="l00114"></a>00114 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00115"></a>00115 <span class="preprocessor"></span>
+<a name="l00116"></a>00116 <span class="keywordtype">bool</span> CommandDlg::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00117"></a>00117 {
+<a name="l00118"></a>00118 <span class="keywordflow">return</span> QDialog::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00119"></a>00119 }
+<a name="l00120"></a>00120
+<a name="l00121"></a>00121 <span class="keywordtype">bool</span> CommandDlg::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00122"></a>00122 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/CommandEntryDlg_8cpp-source.html b/doc/html/CommandEntryDlg_8cpp-source.html
new file mode 100644
index 0000000..cb77c01
--- /dev/null
+++ b/doc/html/CommandEntryDlg_8cpp-source.html
@@ -0,0 +1,167 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/CommandEntryDlg.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>CommandEntryDlg.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;kdialog.h&gt;</span>
+<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00003"></a>00003 <span class="comment">/****************************************************************************</span>
+<a name="l00004"></a>00004 <span class="comment">** Form implementation generated from reading ui file '/home/kuddel/Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/CommandEntryDlg.ui'</span>
+<a name="l00005"></a>00005 <span class="comment">**</span>
+<a name="l00006"></a>00006 <span class="comment">** Created: Di Mai 15 19:57:54 2007</span>
+<a name="l00007"></a>00007 <span class="comment">** by: The User Interface Compiler ($Id: CommandEntryDlg_8cpp-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00008"></a>00008 <span class="comment">**</span>
+<a name="l00009"></a>00009 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00010"></a>00010 <span class="comment">****************************************************************************/</span>
+<a name="l00011"></a>00011
+<a name="l00012"></a>00012 <span class="preprocessor">#include "CommandEntryDlg.h"</span>
+<a name="l00013"></a>00013
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;qgroupbox.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;qpushbutton.h&gt;</span>
+<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;qcheckbox.h&gt;</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qlineedit.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qlayout.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qtooltip.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qwhatsthis.h&gt;</span>
+<a name="l00022"></a>00022
+<a name="l00023"></a>00023 <span class="comment">/*</span>
+<a name="l00024"></a>00024 <span class="comment"> * Constructs a CommandEntryDlg as a child of 'parent', with the</span>
+<a name="l00025"></a>00025 <span class="comment"> * name 'name' and widget flags set to 'f'.</span>
+<a name="l00026"></a>00026 <span class="comment"> *</span>
+<a name="l00027"></a>00027 <span class="comment"> * The dialog will by default be modeless, unless you set 'modal' to</span>
+<a name="l00028"></a>00028 <span class="comment"> * TRUE to construct a modal dialog.</span>
+<a name="l00029"></a>00029 <span class="comment"> */</span>
+<a name="l00030"></a><a class="code" href="classCommandEntryDlg.html#f72dede73adeeed25d33d643b4093614">00030</a> <a class="code" href="classCommandEntryDlg.html#f72dede73adeeed25d33d643b4093614">CommandEntryDlg::CommandEntryDlg</a>( QWidget* parent, <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">bool</span> modal, WFlags fl )
+<a name="l00031"></a>00031 : QDialog( parent, name, modal, fl )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( !name )
+<a name="l00034"></a>00034 setName( <span class="stringliteral">"CommandEntryDlg"</span> );
+<a name="l00035"></a>00035 setSizeGripEnabled( FALSE );
+<a name="l00036"></a>00036 <a class="code" href="classCommandEntryDlg.html#a601c391fae27d233ba814d43400fbe5">CommandEntryDlgLayout</a> = <span class="keyword">new</span> QVBoxLayout( <span class="keyword">this</span>, 11, 6, <span class="stringliteral">"CommandEntryDlgLayout"</span>);
+<a name="l00037"></a>00037
+<a name="l00038"></a>00038 <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a> = <span class="keyword">new</span> QGroupBox( <span class="keyword">this</span>, <span class="stringliteral">"QGroupBox_1"</span> );
+<a name="l00039"></a>00039 <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>-&gt;setFrameShape( QGroupBox::Box );
+<a name="l00040"></a>00040 <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>-&gt;setFrameShadow( QGroupBox::Sunken );
+<a name="l00041"></a>00041 <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>-&gt;setColumnLayout(0, Qt::Vertical );
+<a name="l00042"></a>00042 <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>-&gt;layout()-&gt;setSpacing( 6 );
+<a name="l00043"></a>00043 <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>-&gt;layout()-&gt;setMargin( 11 );
+<a name="l00044"></a>00044 <a class="code" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a> = <span class="keyword">new</span> QGridLayout( <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>-&gt;layout() );
+<a name="l00045"></a>00045 <a class="code" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a>-&gt;setAlignment( Qt::AlignTop );
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 <a class="code" href="classCommandEntryDlg.html#1d9bf331b4044bb823397f0e82f7d1be">m_ButtonPath</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>, <span class="stringliteral">"m_ButtonPath"</span> );
+<a name="l00048"></a>00048
+<a name="l00049"></a>00049 <a class="code" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classCommandEntryDlg.html#1d9bf331b4044bb823397f0e82f7d1be">m_ButtonPath</a>, 1, 0 );
+<a name="l00050"></a>00050
+<a name="l00051"></a>00051 <a class="code" href="classCommandEntryDlg.html#d6e34685d9dbf050f4ed3f9eb4fb7e93">m_ButtonTest</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>, <span class="stringliteral">"m_ButtonTest"</span> );
+<a name="l00052"></a>00052
+<a name="l00053"></a>00053 <a class="code" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classCommandEntryDlg.html#d6e34685d9dbf050f4ed3f9eb4fb7e93">m_ButtonTest</a>, 0, 2 );
+<a name="l00054"></a>00054
+<a name="l00055"></a>00055 <a class="code" href="classCommandEntryDlg.html#49ab519895b715e68dd255587718b641">m_checkModal</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>, <span class="stringliteral">"m_checkModal"</span> );
+<a name="l00056"></a>00056
+<a name="l00057"></a>00057 <a class="code" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a>-&gt;addMultiCellWidget( <a class="code" href="classCommandEntryDlg.html#49ab519895b715e68dd255587718b641">m_checkModal</a>, 2, 2, 1, 2 );
+<a name="l00058"></a>00058
+<a name="l00059"></a>00059 <a class="code" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">m_EditName</a> = <span class="keyword">new</span> QLineEdit( <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>, <span class="stringliteral">"m_EditName"</span> );
+<a name="l00060"></a>00060 <a class="code" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">m_EditName</a>-&gt;setFocusPolicy( QLineEdit::StrongFocus );
+<a name="l00061"></a>00061
+<a name="l00062"></a>00062 <a class="code" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">m_EditName</a>, 0, 1 );
+<a name="l00063"></a>00063
+<a name="l00064"></a>00064 <a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a> = <span class="keyword">new</span> QLineEdit( <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>, <span class="stringliteral">"m_EditPath"</span> );
+<a name="l00065"></a>00065 <a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a>-&gt;setFocusPolicy( QLineEdit::StrongFocus );
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 <a class="code" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a>-&gt;addMultiCellWidget( <a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a>, 1, 1, 1, 2 );
+<a name="l00068"></a>00068 <a class="code" href="classCommandEntryDlg.html#23d051b2743b394cfaef947a7c1e258a">spacer3</a> = <span class="keyword">new</span> QSpacerItem( 90, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00069"></a>00069 <a class="code" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a>-&gt;addItem( <a class="code" href="classCommandEntryDlg.html#23d051b2743b394cfaef947a7c1e258a">spacer3</a>, 2, 0 );
+<a name="l00070"></a>00070 <a class="code" href="classCommandEntryDlg.html#26e10325d0d4877b4e7ec72106633e52">Spacer16</a> = <span class="keyword">new</span> QSpacerItem( 150, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00071"></a>00071 <a class="code" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a>-&gt;addItem( <a class="code" href="classCommandEntryDlg.html#26e10325d0d4877b4e7ec72106633e52">Spacer16</a>, 0, 0 );
+<a name="l00072"></a>00072 <a class="code" href="classCommandEntryDlg.html#a601c391fae27d233ba814d43400fbe5">CommandEntryDlgLayout</a>-&gt;addWidget( <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a> );
+<a name="l00073"></a>00073
+<a name="l00074"></a>00074 <a class="code" href="classCommandEntryDlg.html#bcf49ebec8d3c5bb291ef773f241ef88">layout2</a> = <span class="keyword">new</span> QHBoxLayout( 0, 0, 6, <span class="stringliteral">"layout2"</span>);
+<a name="l00075"></a>00075 <a class="code" href="classCommandEntryDlg.html#15f62b3dcd97ca1234409845fcca7047">Spacer17</a> = <span class="keyword">new</span> QSpacerItem( 207, 16, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00076"></a>00076 <a class="code" href="classCommandEntryDlg.html#bcf49ebec8d3c5bb291ef773f241ef88">layout2</a>-&gt;addItem( <a class="code" href="classCommandEntryDlg.html#15f62b3dcd97ca1234409845fcca7047">Spacer17</a> );
+<a name="l00077"></a>00077
+<a name="l00078"></a>00078 <a class="code" href="classCommandEntryDlg.html#7998da8210c2093927a2b70c6129d3fc">m_ButtonOk</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"m_ButtonOk"</span> );
+<a name="l00079"></a>00079 <a class="code" href="classCommandEntryDlg.html#bcf49ebec8d3c5bb291ef773f241ef88">layout2</a>-&gt;addWidget( <a class="code" href="classCommandEntryDlg.html#7998da8210c2093927a2b70c6129d3fc">m_ButtonOk</a> );
+<a name="l00080"></a>00080
+<a name="l00081"></a>00081 <a class="code" href="classCommandEntryDlg.html#be3e31b9b73f259d89d301e655db800f">m_ButtonCancel</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"m_ButtonCancel"</span> );
+<a name="l00082"></a>00082 <a class="code" href="classCommandEntryDlg.html#bcf49ebec8d3c5bb291ef773f241ef88">layout2</a>-&gt;addWidget( <a class="code" href="classCommandEntryDlg.html#be3e31b9b73f259d89d301e655db800f">m_ButtonCancel</a> );
+<a name="l00083"></a>00083 <a class="code" href="classCommandEntryDlg.html#a601c391fae27d233ba814d43400fbe5">CommandEntryDlgLayout</a>-&gt;addLayout( <a class="code" href="classCommandEntryDlg.html#bcf49ebec8d3c5bb291ef773f241ef88">layout2</a> );
+<a name="l00084"></a>00084 <a class="code" href="classCommandEntryDlg.html#2f33e10c24f756bc76fd3ff674e53ec8">languageChange</a>();
+<a name="l00085"></a>00085 resize( QSize(387, 207).expandedTo(minimumSizeHint()) );
+<a name="l00086"></a>00086 clearWState( WState_Polished );
+<a name="l00087"></a>00087
+<a name="l00088"></a>00088 <span class="comment">// signals and slots connections</span>
+<a name="l00089"></a>00089 connect( <a class="code" href="classCommandEntryDlg.html#d6e34685d9dbf050f4ed3f9eb4fb7e93">m_ButtonTest</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classCommandEntryDlg.html#dc8db19864a1c18dcb71edd3c6d13bdf">slotTest</a>() ) );
+<a name="l00090"></a>00090 connect( <a class="code" href="classCommandEntryDlg.html#1d9bf331b4044bb823397f0e82f7d1be">m_ButtonPath</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classCommandEntryDlg.html#801dd753d938894e3bd3af1bceb73215">slotPath</a>() ) );
+<a name="l00091"></a>00091 connect( <a class="code" href="classCommandEntryDlg.html#7998da8210c2093927a2b70c6129d3fc">m_ButtonOk</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classCommandEntryDlg.html#f70d2de60fe58f262ab6363442b326e8">slotOk</a>() ) );
+<a name="l00092"></a>00092 connect( <a class="code" href="classCommandEntryDlg.html#be3e31b9b73f259d89d301e655db800f">m_ButtonCancel</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( reject() ) );
+<a name="l00093"></a>00093
+<a name="l00094"></a>00094 <span class="comment">// tab order</span>
+<a name="l00095"></a>00095 setTabOrder( <a class="code" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">m_EditName</a>, <a class="code" href="classCommandEntryDlg.html#d6e34685d9dbf050f4ed3f9eb4fb7e93">m_ButtonTest</a> );
+<a name="l00096"></a>00096 setTabOrder( <a class="code" href="classCommandEntryDlg.html#d6e34685d9dbf050f4ed3f9eb4fb7e93">m_ButtonTest</a>, <a class="code" href="classCommandEntryDlg.html#1d9bf331b4044bb823397f0e82f7d1be">m_ButtonPath</a> );
+<a name="l00097"></a>00097 setTabOrder( <a class="code" href="classCommandEntryDlg.html#1d9bf331b4044bb823397f0e82f7d1be">m_ButtonPath</a>, <a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a> );
+<a name="l00098"></a>00098 setTabOrder( <a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a>, <a class="code" href="classCommandEntryDlg.html#49ab519895b715e68dd255587718b641">m_checkModal</a> );
+<a name="l00099"></a>00099 setTabOrder( <a class="code" href="classCommandEntryDlg.html#49ab519895b715e68dd255587718b641">m_checkModal</a>, <a class="code" href="classCommandEntryDlg.html#7998da8210c2093927a2b70c6129d3fc">m_ButtonOk</a> );
+<a name="l00100"></a>00100 setTabOrder( <a class="code" href="classCommandEntryDlg.html#7998da8210c2093927a2b70c6129d3fc">m_ButtonOk</a>, <a class="code" href="classCommandEntryDlg.html#be3e31b9b73f259d89d301e655db800f">m_ButtonCancel</a> );
+<a name="l00101"></a>00101 }
+<a name="l00102"></a>00102
+<a name="l00103"></a>00103 <span class="comment">/*</span>
+<a name="l00104"></a>00104 <span class="comment"> * Destroys the object and frees any allocated resources</span>
+<a name="l00105"></a>00105 <span class="comment"> */</span>
+<a name="l00106"></a><a class="code" href="classCommandEntryDlg.html#48a980d2b11d91a2848724261ad28ae7">00106</a> <a class="code" href="classCommandEntryDlg.html#48a980d2b11d91a2848724261ad28ae7">CommandEntryDlg::~CommandEntryDlg</a>()
+<a name="l00107"></a>00107 {
+<a name="l00108"></a>00108 <span class="comment">// no need to delete child widgets, Qt does it all for us</span>
+<a name="l00109"></a>00109 }
+<a name="l00110"></a>00110
+<a name="l00111"></a>00111 <span class="comment">/*</span>
+<a name="l00112"></a>00112 <span class="comment"> * Sets the strings of the subwidgets using the current</span>
+<a name="l00113"></a>00113 <span class="comment"> * language.</span>
+<a name="l00114"></a>00114 <span class="comment"> */</span>
+<a name="l00115"></a><a class="code" href="classCommandEntryDlg.html#2f33e10c24f756bc76fd3ff674e53ec8">00115</a> <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDlg.html#2f33e10c24f756bc76fd3ff674e53ec8">CommandEntryDlg::languageChange</a>()
+<a name="l00116"></a>00116 {
+<a name="l00117"></a>00117 setCaption( tr2i18n( <span class="stringliteral">"User command"</span> ) );
+<a name="l00118"></a>00118 <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>-&gt;setTitle( tr2i18n( <span class="stringliteral">"Menu Entry"</span> ) );
+<a name="l00119"></a>00119 <a class="code" href="classCommandEntryDlg.html#1d9bf331b4044bb823397f0e82f7d1be">m_ButtonPath</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Command:"</span> ) );
+<a name="l00120"></a>00120 QToolTip::add( <a class="code" href="classCommandEntryDlg.html#1d9bf331b4044bb823397f0e82f7d1be">m_ButtonPath</a>, tr2i18n( <span class="stringliteral">"Press button to select command path"</span> ) );
+<a name="l00121"></a>00121 <a class="code" href="classCommandEntryDlg.html#d6e34685d9dbf050f4ed3f9eb4fb7e93">m_ButtonTest</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Test"</span> ) );
+<a name="l00122"></a>00122 QToolTip::add( <a class="code" href="classCommandEntryDlg.html#d6e34685d9dbf050f4ed3f9eb4fb7e93">m_ButtonTest</a>, tr2i18n( <span class="stringliteral">"Execute the command immediatly"</span> ) );
+<a name="l00123"></a>00123 <a class="code" href="classCommandEntryDlg.html#49ab519895b715e68dd255587718b641">m_checkModal</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Wait for command to complete"</span> ) );
+<a name="l00124"></a>00124 QToolTip::add( <a class="code" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">m_EditName</a>, tr2i18n( <span class="stringliteral">"Enter menu entry name"</span> ) );
+<a name="l00125"></a>00125 QToolTip::add( <a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a>, tr2i18n( <span class="stringliteral">"&lt;qt&gt;Enter path to selected command and arguments&lt;br&gt;&amp;lt;user&amp;gt;, &amp;lt;server&amp;gt;, &amp;lt;passwd&amp;gt;, &amp;lt;header&amp;gt; and &amp;lt;body&amp;gt; may be used as arguments&lt;/qt&gt;"</span> ) );
+<a name="l00126"></a>00126 <a class="code" href="classCommandEntryDlg.html#7998da8210c2093927a2b70c6129d3fc">m_ButtonOk</a>-&gt;setText( tr2i18n( <span class="stringliteral">"OK"</span> ) );
+<a name="l00127"></a>00127 <a class="code" href="classCommandEntryDlg.html#be3e31b9b73f259d89d301e655db800f">m_ButtonCancel</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Cancel"</span> ) );
+<a name="l00128"></a>00128 }
+<a name="l00129"></a>00129
+<a name="l00130"></a><a class="code" href="classCommandEntryDlg.html#f70d2de60fe58f262ab6363442b326e8">00130</a> <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDlg.html#f70d2de60fe58f262ab6363442b326e8">CommandEntryDlg::slotOk</a>()
+<a name="l00131"></a>00131 {
+<a name="l00132"></a>00132 qWarning( <span class="stringliteral">"CommandEntryDlg::slotOk(): Not implemented yet"</span> );
+<a name="l00133"></a>00133 }
+<a name="l00134"></a>00134
+<a name="l00135"></a><a class="code" href="classCommandEntryDlg.html#801dd753d938894e3bd3af1bceb73215">00135</a> <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDlg.html#801dd753d938894e3bd3af1bceb73215">CommandEntryDlg::slotPath</a>()
+<a name="l00136"></a>00136 {
+<a name="l00137"></a>00137 qWarning( <span class="stringliteral">"CommandEntryDlg::slotPath(): Not implemented yet"</span> );
+<a name="l00138"></a>00138 }
+<a name="l00139"></a>00139
+<a name="l00140"></a><a class="code" href="classCommandEntryDlg.html#dc8db19864a1c18dcb71edd3c6d13bdf">00140</a> <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDlg.html#dc8db19864a1c18dcb71edd3c6d13bdf">CommandEntryDlg::slotTest</a>()
+<a name="l00141"></a>00141 {
+<a name="l00142"></a>00142 qWarning( <span class="stringliteral">"CommandEntryDlg::slotTest(): Not implemented yet"</span> );
+<a name="l00143"></a>00143 }
+<a name="l00144"></a>00144
+<a name="l00145"></a>00145 <span class="preprocessor">#include "CommandEntryDlg.moc"</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/CommandEntryDlg_8h-source.html b/doc/html/CommandEntryDlg_8h-source.html
new file mode 100644
index 0000000..8c24852
--- /dev/null
+++ b/doc/html/CommandEntryDlg_8h-source.html
@@ -0,0 +1,82 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/CommandEntryDlg.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>CommandEntryDlg.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** Form interface generated from reading ui file '/home/kuddel/Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/CommandEntryDlg.ui'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Di Mai 15 19:57:53 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The User Interface Compiler ($Id: CommandEntryDlg_8h-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#ifndef COMMANDENTRYDLG_H</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#define COMMANDENTRYDLG_H</span>
+<a name="l00012"></a>00012 <span class="preprocessor"></span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qdialog.h&gt;</span>
+<a name="l00015"></a>00015
+<a name="l00016"></a>00016 <span class="keyword">class </span>QVBoxLayout;
+<a name="l00017"></a>00017 <span class="keyword">class </span>QHBoxLayout;
+<a name="l00018"></a>00018 <span class="keyword">class </span>QGridLayout;
+<a name="l00019"></a>00019 <span class="keyword">class </span>QSpacerItem;
+<a name="l00020"></a>00020 <span class="keyword">class </span>QGroupBox;
+<a name="l00021"></a>00021 <span class="keyword">class </span>QPushButton;
+<a name="l00022"></a>00022 <span class="keyword">class </span>QCheckBox;
+<a name="l00023"></a>00023 <span class="keyword">class </span>QLineEdit;
+<a name="l00024"></a>00024
+<a name="l00025"></a><a class="code" href="classCommandEntryDlg.html">00025</a> <span class="keyword">class </span><a class="code" href="classCommandEntryDlg.html">CommandEntryDlg</a> : <span class="keyword">public</span> QDialog
+<a name="l00026"></a>00026 {
+<a name="l00027"></a>00027 Q_OBJECT
+<a name="l00028"></a>00028
+<a name="l00029"></a>00029 <span class="keyword">public</span>:
+<a name="l00030"></a>00030 <a class="code" href="classCommandEntryDlg.html#f72dede73adeeed25d33d643b4093614">CommandEntryDlg</a>( QWidget* parent = 0, <span class="keyword">const</span> <span class="keywordtype">char</span>* name = 0, <span class="keywordtype">bool</span> modal = FALSE, WFlags fl = 0 );
+<a name="l00031"></a>00031 <a class="code" href="classCommandEntryDlg.html#48a980d2b11d91a2848724261ad28ae7">~CommandEntryDlg</a>();
+<a name="l00032"></a>00032
+<a name="l00033"></a><a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">00033</a> QGroupBox* <a class="code" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a>;
+<a name="l00034"></a><a class="code" href="classCommandEntryDlg.html#1d9bf331b4044bb823397f0e82f7d1be">00034</a> QPushButton* <a class="code" href="classCommandEntryDlg.html#1d9bf331b4044bb823397f0e82f7d1be">m_ButtonPath</a>;
+<a name="l00035"></a><a class="code" href="classCommandEntryDlg.html#d6e34685d9dbf050f4ed3f9eb4fb7e93">00035</a> QPushButton* <a class="code" href="classCommandEntryDlg.html#d6e34685d9dbf050f4ed3f9eb4fb7e93">m_ButtonTest</a>;
+<a name="l00036"></a><a class="code" href="classCommandEntryDlg.html#49ab519895b715e68dd255587718b641">00036</a> QCheckBox* <a class="code" href="classCommandEntryDlg.html#49ab519895b715e68dd255587718b641">m_checkModal</a>;
+<a name="l00037"></a><a class="code" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">00037</a> QLineEdit* <a class="code" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">m_EditName</a>;
+<a name="l00038"></a><a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">00038</a> QLineEdit* <a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a>;
+<a name="l00039"></a><a class="code" href="classCommandEntryDlg.html#7998da8210c2093927a2b70c6129d3fc">00039</a> QPushButton* <a class="code" href="classCommandEntryDlg.html#7998da8210c2093927a2b70c6129d3fc">m_ButtonOk</a>;
+<a name="l00040"></a><a class="code" href="classCommandEntryDlg.html#be3e31b9b73f259d89d301e655db800f">00040</a> QPushButton* <a class="code" href="classCommandEntryDlg.html#be3e31b9b73f259d89d301e655db800f">m_ButtonCancel</a>;
+<a name="l00041"></a>00041
+<a name="l00042"></a>00042 <span class="keyword">public</span> slots:
+<a name="l00043"></a>00043 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDlg.html#f70d2de60fe58f262ab6363442b326e8">slotOk</a>();
+<a name="l00044"></a>00044 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDlg.html#801dd753d938894e3bd3af1bceb73215">slotPath</a>();
+<a name="l00045"></a>00045 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDlg.html#dc8db19864a1c18dcb71edd3c6d13bdf">slotTest</a>();
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 <span class="keyword">protected</span>:
+<a name="l00048"></a><a class="code" href="classCommandEntryDlg.html#a601c391fae27d233ba814d43400fbe5">00048</a> QVBoxLayout* <a class="code" href="classCommandEntryDlg.html#a601c391fae27d233ba814d43400fbe5">CommandEntryDlgLayout</a>;
+<a name="l00049"></a><a class="code" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">00049</a> QGridLayout* <a class="code" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a>;
+<a name="l00050"></a><a class="code" href="classCommandEntryDlg.html#23d051b2743b394cfaef947a7c1e258a">00050</a> QSpacerItem* <a class="code" href="classCommandEntryDlg.html#23d051b2743b394cfaef947a7c1e258a">spacer3</a>;
+<a name="l00051"></a><a class="code" href="classCommandEntryDlg.html#26e10325d0d4877b4e7ec72106633e52">00051</a> QSpacerItem* <a class="code" href="classCommandEntryDlg.html#26e10325d0d4877b4e7ec72106633e52">Spacer16</a>;
+<a name="l00052"></a><a class="code" href="classCommandEntryDlg.html#bcf49ebec8d3c5bb291ef773f241ef88">00052</a> QHBoxLayout* <a class="code" href="classCommandEntryDlg.html#bcf49ebec8d3c5bb291ef773f241ef88">layout2</a>;
+<a name="l00053"></a><a class="code" href="classCommandEntryDlg.html#15f62b3dcd97ca1234409845fcca7047">00053</a> QSpacerItem* <a class="code" href="classCommandEntryDlg.html#15f62b3dcd97ca1234409845fcca7047">Spacer17</a>;
+<a name="l00054"></a>00054
+<a name="l00055"></a>00055 <span class="keyword">protected</span> slots:
+<a name="l00056"></a>00056 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDlg.html#2f33e10c24f756bc76fd3ff674e53ec8">languageChange</a>();
+<a name="l00057"></a>00057
+<a name="l00058"></a>00058 };
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <span class="preprocessor">#endif // COMMANDENTRYDLG_H</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/CommandEntryDlg_8moc-source.html b/doc/html/CommandEntryDlg_8moc-source.html
new file mode 100644
index 0000000..848ed78
--- /dev/null
+++ b/doc/html/CommandEntryDlg_8moc-source.html
@@ -0,0 +1,132 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/CommandEntryDlg.moc Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>CommandEntryDlg.moc</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** CommandEntryDlg meta object code from reading C++ file 'CommandEntryDlg.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Tue May 15 19:57:54 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: CommandEntryDlg_8moc-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "CommandEntryDlg.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *CommandEntryDlg::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"CommandEntryDlg"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *CommandEntryDlg::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_CommandEntryDlg( <span class="stringliteral">"CommandEntryDlg"</span>, &amp;CommandEntryDlg::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString CommandEntryDlg::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"CommandEntryDlg"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString CommandEntryDlg::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"CommandEntryDlg"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* CommandEntryDlg::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = QDialog::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotOk"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotPath"</span>, 0, 0 };
+<a name="l00057"></a>00057 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_2 = {<span class="stringliteral">"slotTest"</span>, 0, 0 };
+<a name="l00058"></a>00058 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_3 = {<span class="stringliteral">"languageChange"</span>, 0, 0 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00060"></a>00060 { <span class="stringliteral">"slotOk()"</span>, &amp;slot_0, QMetaData::Public },
+<a name="l00061"></a>00061 { <span class="stringliteral">"slotPath()"</span>, &amp;slot_1, QMetaData::Public },
+<a name="l00062"></a>00062 { <span class="stringliteral">"slotTest()"</span>, &amp;slot_2, QMetaData::Public },
+<a name="l00063"></a>00063 { <span class="stringliteral">"languageChange()"</span>, &amp;slot_3, QMetaData::Protected }
+<a name="l00064"></a>00064 };
+<a name="l00065"></a>00065 metaObj = QMetaObject::new_metaobject(
+<a name="l00066"></a>00066 <span class="stringliteral">"CommandEntryDlg"</span>, parentObject,
+<a name="l00067"></a>00067 slot_tbl, 4,
+<a name="l00068"></a>00068 0, 0,
+<a name="l00069"></a>00069 #ifndef QT_NO_PROPERTIES
+<a name="l00070"></a>00070 0, 0,
+<a name="l00071"></a>00071 0, 0,
+<a name="l00072"></a>00072 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00073"></a>00073 0, 0 );
+<a name="l00074"></a>00074 cleanUp_CommandEntryDlg.setMetaObject( metaObj );
+<a name="l00075"></a>00075 <span class="keywordflow">return</span> metaObj;
+<a name="l00076"></a>00076 }
+<a name="l00077"></a>00077
+<a name="l00078"></a>00078 <span class="keywordtype">void</span>* CommandEntryDlg::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00079"></a>00079 {
+<a name="l00080"></a>00080 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"CommandEntryDlg"</span> ) )
+<a name="l00081"></a>00081 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00082"></a>00082 <span class="keywordflow">return</span> QDialog::qt_cast( clname );
+<a name="l00083"></a>00083 }
+<a name="l00084"></a>00084
+<a name="l00085"></a>00085 <span class="keywordtype">bool</span> CommandEntryDlg::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00086"></a>00086 {
+<a name="l00087"></a>00087 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00088"></a>00088 <span class="keywordflow">case</span> 0: <a class="code" href="classCommandEntryDlg.html#f70d2de60fe58f262ab6363442b326e8">slotOk</a>(); <span class="keywordflow">break</span>;
+<a name="l00089"></a>00089 <span class="keywordflow">case</span> 1: <a class="code" href="classCommandEntryDlg.html#801dd753d938894e3bd3af1bceb73215">slotPath</a>(); <span class="keywordflow">break</span>;
+<a name="l00090"></a>00090 <span class="keywordflow">case</span> 2: <a class="code" href="classCommandEntryDlg.html#dc8db19864a1c18dcb71edd3c6d13bdf">slotTest</a>(); <span class="keywordflow">break</span>;
+<a name="l00091"></a>00091 <span class="keywordflow">case</span> 3: <a class="code" href="classCommandEntryDlg.html#2f33e10c24f756bc76fd3ff674e53ec8">languageChange</a>(); <span class="keywordflow">break</span>;
+<a name="l00092"></a>00092 <span class="keywordflow">default</span>:
+<a name="l00093"></a>00093 <span class="keywordflow">return</span> QDialog::qt_invoke( _id, _o );
+<a name="l00094"></a>00094 }
+<a name="l00095"></a>00095 <span class="keywordflow">return</span> TRUE;
+<a name="l00096"></a>00096 }
+<a name="l00097"></a>00097
+<a name="l00098"></a>00098 <span class="keywordtype">bool</span> CommandEntryDlg::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00099"></a>00099 {
+<a name="l00100"></a>00100 <span class="keywordflow">return</span> QDialog::qt_emit(_id,_o);
+<a name="l00101"></a>00101 }
+<a name="l00102"></a>00102 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00103"></a>00103 <span class="preprocessor"></span>
+<a name="l00104"></a>00104 <span class="keywordtype">bool</span> CommandEntryDlg::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00105"></a>00105 {
+<a name="l00106"></a>00106 <span class="keywordflow">return</span> QDialog::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00107"></a>00107 }
+<a name="l00108"></a>00108
+<a name="l00109"></a>00109 <span class="keywordtype">bool</span> CommandEntryDlg::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00110"></a>00110 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/EditDlg_8cpp-source.html b/doc/html/EditDlg_8cpp-source.html
new file mode 100644
index 0000000..4a36681
--- /dev/null
+++ b/doc/html/EditDlg_8cpp-source.html
@@ -0,0 +1,119 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/EditDlg.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>EditDlg.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;kdialog.h&gt;</span>
+<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00003"></a>00003 <span class="comment">/****************************************************************************</span>
+<a name="l00004"></a>00004 <span class="comment">** Form implementation generated from reading ui file '/home/kuddel/Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/EditDlg.ui'</span>
+<a name="l00005"></a>00005 <span class="comment">**</span>
+<a name="l00006"></a>00006 <span class="comment">** Created: Di Mai 15 19:57:53 2007</span>
+<a name="l00007"></a>00007 <span class="comment">** by: The User Interface Compiler ($Id: EditDlg_8cpp-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00008"></a>00008 <span class="comment">**</span>
+<a name="l00009"></a>00009 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00010"></a>00010 <span class="comment">****************************************************************************/</span>
+<a name="l00011"></a>00011
+<a name="l00012"></a>00012 <span class="preprocessor">#include "EditDlg.h"</span>
+<a name="l00013"></a>00013
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;ktextbrowser.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;qpushbutton.h&gt;</span>
+<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;qlayout.h&gt;</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qtooltip.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qwhatsthis.h&gt;</span>
+<a name="l00020"></a>00020
+<a name="l00021"></a>00021 <span class="comment">/*</span>
+<a name="l00022"></a>00022 <span class="comment"> * Constructs a EditDlg as a child of 'parent', with the</span>
+<a name="l00023"></a>00023 <span class="comment"> * name 'name' and widget flags set to 'f'.</span>
+<a name="l00024"></a>00024 <span class="comment"> *</span>
+<a name="l00025"></a>00025 <span class="comment"> * The dialog will by default be modeless, unless you set 'modal' to</span>
+<a name="l00026"></a>00026 <span class="comment"> * TRUE to construct a modal dialog.</span>
+<a name="l00027"></a>00027 <span class="comment"> */</span>
+<a name="l00028"></a><a class="code" href="classEditDlg.html#1a0993a8c1b96893a290c3c7b8ce0a18">00028</a> <a class="code" href="classEditDlg.html#1a0993a8c1b96893a290c3c7b8ce0a18">EditDlg::EditDlg</a>( QWidget* parent, <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">bool</span> modal, WFlags fl )
+<a name="l00029"></a>00029 : QDialog( parent, name, modal, fl )
+<a name="l00030"></a>00030 {
+<a name="l00031"></a>00031 <span class="keywordflow">if</span> ( !name )
+<a name="l00032"></a>00032 setName( <span class="stringliteral">"EditDlg"</span> );
+<a name="l00033"></a>00033 <a class="code" href="classEditDlg.html#121ab750fca3f5077ec34c90edc8fb2e">EditDlgLayout</a> = <span class="keyword">new</span> QVBoxLayout( <span class="keyword">this</span>, 11, 6, <span class="stringliteral">"EditDlgLayout"</span>);
+<a name="l00034"></a>00034
+<a name="l00035"></a>00035 <a class="code" href="classEditDlg.html#8e34dcd04a2c8ed5cd2592b971e3d674">headerlayout</a> = <span class="keyword">new</span> QGridLayout( 0, 1, 1, 0, 6, <span class="stringliteral">"headerlayout"</span>);
+<a name="l00036"></a>00036 <a class="code" href="classEditDlg.html#121ab750fca3f5077ec34c90edc8fb2e">EditDlgLayout</a>-&gt;addLayout( <a class="code" href="classEditDlg.html#8e34dcd04a2c8ed5cd2592b971e3d674">headerlayout</a> );
+<a name="l00037"></a>00037
+<a name="l00038"></a>00038 <a class="code" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a> = <span class="keyword">new</span> KTextBrowser( <span class="keyword">this</span>, <span class="stringliteral">"m_Edit"</span> );
+<a name="l00039"></a>00039 <a class="code" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a>-&gt;setFocusPolicy( KTextBrowser::TabFocus );
+<a name="l00040"></a>00040 <a class="code" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a>-&gt;setTextFormat( KTextBrowser::AutoText );
+<a name="l00041"></a>00041 <a class="code" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a>-&gt;setReadOnly( TRUE );
+<a name="l00042"></a>00042 <a class="code" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a>-&gt;setUndoRedoEnabled( FALSE );
+<a name="l00043"></a>00043 <a class="code" href="classEditDlg.html#121ab750fca3f5077ec34c90edc8fb2e">EditDlgLayout</a>-&gt;addWidget( <a class="code" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a> );
+<a name="l00044"></a>00044
+<a name="l00045"></a>00045 <a class="code" href="classEditDlg.html#7b993caff60b9567e77dd966e0a03d12">layout3</a> = <span class="keyword">new</span> QHBoxLayout( 0, 0, 6, <span class="stringliteral">"layout3"</span>);
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 <a class="code" href="classEditDlg.html#aefe39b417050379770eb36c102f3d01">_buttonReply</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"_buttonReply"</span> );
+<a name="l00048"></a>00048 <a class="code" href="classEditDlg.html#7b993caff60b9567e77dd966e0a03d12">layout3</a>-&gt;addWidget( <a class="code" href="classEditDlg.html#aefe39b417050379770eb36c102f3d01">_buttonReply</a> );
+<a name="l00049"></a>00049 <a class="code" href="classEditDlg.html#c7b18d6e1e9a58b38758c4ab2439edbd">Spacer15</a> = <span class="keyword">new</span> QSpacerItem( 120, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00050"></a>00050 <a class="code" href="classEditDlg.html#7b993caff60b9567e77dd966e0a03d12">layout3</a>-&gt;addItem( <a class="code" href="classEditDlg.html#c7b18d6e1e9a58b38758c4ab2439edbd">Spacer15</a> );
+<a name="l00051"></a>00051
+<a name="l00052"></a>00052 <a class="code" href="classEditDlg.html#8cb35c7986c9d882cddb2c3de4e48a1a">_buttonOk</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"_buttonOk"</span> );
+<a name="l00053"></a>00053 <a class="code" href="classEditDlg.html#7b993caff60b9567e77dd966e0a03d12">layout3</a>-&gt;addWidget( <a class="code" href="classEditDlg.html#8cb35c7986c9d882cddb2c3de4e48a1a">_buttonOk</a> );
+<a name="l00054"></a>00054
+<a name="l00055"></a>00055 <a class="code" href="classEditDlg.html#f96408404a78ca846820488c1aae1429">_buttonCancel</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"_buttonCancel"</span> );
+<a name="l00056"></a>00056 <a class="code" href="classEditDlg.html#7b993caff60b9567e77dd966e0a03d12">layout3</a>-&gt;addWidget( <a class="code" href="classEditDlg.html#f96408404a78ca846820488c1aae1429">_buttonCancel</a> );
+<a name="l00057"></a>00057 <a class="code" href="classEditDlg.html#121ab750fca3f5077ec34c90edc8fb2e">EditDlgLayout</a>-&gt;addLayout( <a class="code" href="classEditDlg.html#7b993caff60b9567e77dd966e0a03d12">layout3</a> );
+<a name="l00058"></a>00058 <a class="code" href="classEditDlg.html#d3a3cffb24bdee707ff2e5d86c4e71bd">languageChange</a>();
+<a name="l00059"></a>00059 resize( QSize(444, 447).expandedTo(minimumSizeHint()) );
+<a name="l00060"></a>00060 clearWState( WState_Polished );
+<a name="l00061"></a>00061
+<a name="l00062"></a>00062 <span class="comment">// signals and slots connections</span>
+<a name="l00063"></a>00063 connect( <a class="code" href="classEditDlg.html#8cb35c7986c9d882cddb2c3de4e48a1a">_buttonOk</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( accept() ) );
+<a name="l00064"></a>00064 connect( <a class="code" href="classEditDlg.html#f96408404a78ca846820488c1aae1429">_buttonCancel</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( reject() ) );
+<a name="l00065"></a>00065 connect( <a class="code" href="classEditDlg.html#aefe39b417050379770eb36c102f3d01">_buttonReply</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classEditDlg.html#9ab14db19e57d69fa883c76406a01f82">slotReplyClicked</a>() ) );
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 <span class="comment">// tab order</span>
+<a name="l00068"></a>00068 setTabOrder( <a class="code" href="classEditDlg.html#8cb35c7986c9d882cddb2c3de4e48a1a">_buttonOk</a>, <a class="code" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a> );
+<a name="l00069"></a>00069 }
+<a name="l00070"></a>00070
+<a name="l00071"></a>00071 <span class="comment">/*</span>
+<a name="l00072"></a>00072 <span class="comment"> * Destroys the object and frees any allocated resources</span>
+<a name="l00073"></a>00073 <span class="comment"> */</span>
+<a name="l00074"></a><a class="code" href="classEditDlg.html#d2ee10f87c785df1bd542d5a40f457c9">00074</a> <a class="code" href="classEditDlg.html#d2ee10f87c785df1bd542d5a40f457c9">EditDlg::~EditDlg</a>()
+<a name="l00075"></a>00075 {
+<a name="l00076"></a>00076 <span class="comment">// no need to delete child widgets, Qt does it all for us</span>
+<a name="l00077"></a>00077 }
+<a name="l00078"></a>00078
+<a name="l00079"></a>00079 <span class="comment">/*</span>
+<a name="l00080"></a>00080 <span class="comment"> * Sets the strings of the subwidgets using the current</span>
+<a name="l00081"></a>00081 <span class="comment"> * language.</span>
+<a name="l00082"></a>00082 <span class="comment"> */</span>
+<a name="l00083"></a><a class="code" href="classEditDlg.html#d3a3cffb24bdee707ff2e5d86c4e71bd">00083</a> <span class="keywordtype">void</span> <a class="code" href="classEditDlg.html#d3a3cffb24bdee707ff2e5d86c4e71bd">EditDlg::languageChange</a>()
+<a name="l00084"></a>00084 {
+<a name="l00085"></a>00085 setCaption( tr2i18n( <span class="stringliteral">"Message"</span> ) );
+<a name="l00086"></a>00086 <a class="code" href="classEditDlg.html#aefe39b417050379770eb36c102f3d01">_buttonReply</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Reply"</span> ) );
+<a name="l00087"></a>00087 QToolTip::add( <a class="code" href="classEditDlg.html#aefe39b417050379770eb36c102f3d01">_buttonReply</a>, tr2i18n( <span class="stringliteral">"Send reply mail"</span> ) );
+<a name="l00088"></a>00088 <a class="code" href="classEditDlg.html#8cb35c7986c9d882cddb2c3de4e48a1a">_buttonOk</a>-&gt;setText( tr2i18n( <span class="stringliteral">"OK"</span> ) );
+<a name="l00089"></a>00089 <a class="code" href="classEditDlg.html#f96408404a78ca846820488c1aae1429">_buttonCancel</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Cancel"</span> ) );
+<a name="l00090"></a>00090 }
+<a name="l00091"></a>00091
+<a name="l00092"></a><a class="code" href="classEditDlg.html#9ab14db19e57d69fa883c76406a01f82">00092</a> <span class="keywordtype">void</span> <a class="code" href="classEditDlg.html#9ab14db19e57d69fa883c76406a01f82">EditDlg::slotReplyClicked</a>()
+<a name="l00093"></a>00093 {
+<a name="l00094"></a>00094 qWarning( <span class="stringliteral">"EditDlg::slotReplyClicked(): Not implemented yet"</span> );
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096
+<a name="l00097"></a>00097 <span class="preprocessor">#include "EditDlg.moc"</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/EditDlg_8h-source.html b/doc/html/EditDlg_8h-source.html
new file mode 100644
index 0000000..d45462b
--- /dev/null
+++ b/doc/html/EditDlg_8h-source.html
@@ -0,0 +1,72 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/EditDlg.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>EditDlg.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** Form interface generated from reading ui file '/home/kuddel/Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/EditDlg.ui'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Di Mai 15 19:57:52 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The User Interface Compiler ($Id: EditDlg_8h-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#ifndef EDITDLG_H</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#define EDITDLG_H</span>
+<a name="l00012"></a>00012 <span class="preprocessor"></span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qdialog.h&gt;</span>
+<a name="l00015"></a>00015
+<a name="l00016"></a>00016 <span class="keyword">class </span>QVBoxLayout;
+<a name="l00017"></a>00017 <span class="keyword">class </span>QHBoxLayout;
+<a name="l00018"></a>00018 <span class="keyword">class </span>QGridLayout;
+<a name="l00019"></a>00019 <span class="keyword">class </span>QSpacerItem;
+<a name="l00020"></a>00020 <span class="keyword">class </span>KTextBrowser;
+<a name="l00021"></a>00021 <span class="keyword">class </span>QPushButton;
+<a name="l00022"></a>00022
+<a name="l00023"></a><a class="code" href="classEditDlg.html">00023</a> <span class="keyword">class </span><a class="code" href="classEditDlg.html">EditDlg</a> : <span class="keyword">public</span> QDialog
+<a name="l00024"></a>00024 {
+<a name="l00025"></a>00025 Q_OBJECT
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 <span class="keyword">public</span>:
+<a name="l00028"></a>00028 <a class="code" href="classEditDlg.html#1a0993a8c1b96893a290c3c7b8ce0a18">EditDlg</a>( QWidget* parent = 0, <span class="keyword">const</span> <span class="keywordtype">char</span>* name = 0, <span class="keywordtype">bool</span> modal = FALSE, WFlags fl = 0 );
+<a name="l00029"></a>00029 <a class="code" href="classEditDlg.html#d2ee10f87c785df1bd542d5a40f457c9">~EditDlg</a>();
+<a name="l00030"></a>00030
+<a name="l00031"></a><a class="code" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">00031</a> KTextBrowser* <a class="code" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a>;
+<a name="l00032"></a><a class="code" href="classEditDlg.html#aefe39b417050379770eb36c102f3d01">00032</a> QPushButton* <a class="code" href="classEditDlg.html#aefe39b417050379770eb36c102f3d01">_buttonReply</a>;
+<a name="l00033"></a><a class="code" href="classEditDlg.html#8cb35c7986c9d882cddb2c3de4e48a1a">00033</a> QPushButton* <a class="code" href="classEditDlg.html#8cb35c7986c9d882cddb2c3de4e48a1a">_buttonOk</a>;
+<a name="l00034"></a><a class="code" href="classEditDlg.html#f96408404a78ca846820488c1aae1429">00034</a> QPushButton* <a class="code" href="classEditDlg.html#f96408404a78ca846820488c1aae1429">_buttonCancel</a>;
+<a name="l00035"></a>00035
+<a name="l00036"></a>00036 <span class="keyword">public</span> slots:
+<a name="l00037"></a>00037 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classEditDlg.html#9ab14db19e57d69fa883c76406a01f82">slotReplyClicked</a>();
+<a name="l00038"></a>00038
+<a name="l00039"></a>00039 <span class="keyword">protected</span>:
+<a name="l00040"></a><a class="code" href="classEditDlg.html#121ab750fca3f5077ec34c90edc8fb2e">00040</a> QVBoxLayout* <a class="code" href="classEditDlg.html#121ab750fca3f5077ec34c90edc8fb2e">EditDlgLayout</a>;
+<a name="l00041"></a><a class="code" href="classEditDlg.html#8e34dcd04a2c8ed5cd2592b971e3d674">00041</a> QGridLayout* <a class="code" href="classEditDlg.html#8e34dcd04a2c8ed5cd2592b971e3d674">headerlayout</a>;
+<a name="l00042"></a><a class="code" href="classEditDlg.html#7b993caff60b9567e77dd966e0a03d12">00042</a> QHBoxLayout* <a class="code" href="classEditDlg.html#7b993caff60b9567e77dd966e0a03d12">layout3</a>;
+<a name="l00043"></a><a class="code" href="classEditDlg.html#c7b18d6e1e9a58b38758c4ab2439edbd">00043</a> QSpacerItem* <a class="code" href="classEditDlg.html#c7b18d6e1e9a58b38758c4ab2439edbd">Spacer15</a>;
+<a name="l00044"></a>00044
+<a name="l00045"></a>00045 <span class="keyword">protected</span> slots:
+<a name="l00046"></a>00046 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classEditDlg.html#d3a3cffb24bdee707ff2e5d86c4e71bd">languageChange</a>();
+<a name="l00047"></a>00047
+<a name="l00048"></a>00048 };
+<a name="l00049"></a>00049
+<a name="l00050"></a>00050 <span class="preprocessor">#endif // EDITDLG_H</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/EditDlg_8moc-source.html b/doc/html/EditDlg_8moc-source.html
new file mode 100644
index 0000000..9a51142
--- /dev/null
+++ b/doc/html/EditDlg_8moc-source.html
@@ -0,0 +1,126 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/EditDlg.moc Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>EditDlg.moc</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** EditDlg meta object code from reading C++ file 'EditDlg.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Tue May 15 19:57:53 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: EditDlg_8moc-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "EditDlg.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *EditDlg::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"EditDlg"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *EditDlg::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_EditDlg( <span class="stringliteral">"EditDlg"</span>, &amp;EditDlg::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString EditDlg::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"EditDlg"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString EditDlg::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"EditDlg"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* EditDlg::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = QDialog::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotReplyClicked"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"languageChange"</span>, 0, 0 };
+<a name="l00057"></a>00057 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00058"></a>00058 { <span class="stringliteral">"slotReplyClicked()"</span>, &amp;slot_0, QMetaData::Public },
+<a name="l00059"></a>00059 { <span class="stringliteral">"languageChange()"</span>, &amp;slot_1, QMetaData::Protected }
+<a name="l00060"></a>00060 };
+<a name="l00061"></a>00061 metaObj = QMetaObject::new_metaobject(
+<a name="l00062"></a>00062 <span class="stringliteral">"EditDlg"</span>, parentObject,
+<a name="l00063"></a>00063 slot_tbl, 2,
+<a name="l00064"></a>00064 0, 0,
+<a name="l00065"></a>00065 #ifndef QT_NO_PROPERTIES
+<a name="l00066"></a>00066 0, 0,
+<a name="l00067"></a>00067 0, 0,
+<a name="l00068"></a>00068 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00069"></a>00069 0, 0 );
+<a name="l00070"></a>00070 cleanUp_EditDlg.setMetaObject( metaObj );
+<a name="l00071"></a>00071 <span class="keywordflow">return</span> metaObj;
+<a name="l00072"></a>00072 }
+<a name="l00073"></a>00073
+<a name="l00074"></a>00074 <span class="keywordtype">void</span>* EditDlg::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00075"></a>00075 {
+<a name="l00076"></a>00076 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"EditDlg"</span> ) )
+<a name="l00077"></a>00077 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00078"></a>00078 <span class="keywordflow">return</span> QDialog::qt_cast( clname );
+<a name="l00079"></a>00079 }
+<a name="l00080"></a>00080
+<a name="l00081"></a>00081 <span class="keywordtype">bool</span> EditDlg::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00082"></a>00082 {
+<a name="l00083"></a>00083 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00084"></a>00084 <span class="keywordflow">case</span> 0: <a class="code" href="classEditDlg.html#9ab14db19e57d69fa883c76406a01f82">slotReplyClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00085"></a>00085 <span class="keywordflow">case</span> 1: <a class="code" href="classEditDlg.html#d3a3cffb24bdee707ff2e5d86c4e71bd">languageChange</a>(); <span class="keywordflow">break</span>;
+<a name="l00086"></a>00086 <span class="keywordflow">default</span>:
+<a name="l00087"></a>00087 <span class="keywordflow">return</span> QDialog::qt_invoke( _id, _o );
+<a name="l00088"></a>00088 }
+<a name="l00089"></a>00089 <span class="keywordflow">return</span> TRUE;
+<a name="l00090"></a>00090 }
+<a name="l00091"></a>00091
+<a name="l00092"></a>00092 <span class="keywordtype">bool</span> EditDlg::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00093"></a>00093 {
+<a name="l00094"></a>00094 <span class="keywordflow">return</span> QDialog::qt_emit(_id,_o);
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00097"></a>00097 <span class="preprocessor"></span>
+<a name="l00098"></a>00098 <span class="keywordtype">bool</span> EditDlg::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00099"></a>00099 {
+<a name="l00100"></a>00100 <span class="keywordflow">return</span> QDialog::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00101"></a>00101 }
+<a name="l00102"></a>00102
+<a name="l00103"></a>00103 <span class="keywordtype">bool</span> EditDlg::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00104"></a>00104 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/FilterDlg_8cpp-source.html b/doc/html/FilterDlg_8cpp-source.html
new file mode 100644
index 0000000..6ce5017
--- /dev/null
+++ b/doc/html/FilterDlg_8cpp-source.html
@@ -0,0 +1,223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/FilterDlg.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>FilterDlg.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;kdialog.h&gt;</span>
+<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00003"></a>00003 <span class="comment">/****************************************************************************</span>
+<a name="l00004"></a>00004 <span class="comment">** Form implementation generated from reading ui file './FilterDlg.ui'</span>
+<a name="l00005"></a>00005 <span class="comment">**</span>
+<a name="l00006"></a>00006 <span class="comment">** Created: Fr Jun 29 22:08:56 2007</span>
+<a name="l00007"></a>00007 <span class="comment">** by: The User Interface Compiler ($Id: FilterDlg_8cpp-source.html,v 1.10 2007/07/05 17:37:49 kuddel-fl Exp $)</span>
+<a name="l00008"></a>00008 <span class="comment">**</span>
+<a name="l00009"></a>00009 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00010"></a>00010 <span class="comment">****************************************************************************/</span>
+<a name="l00011"></a>00011
+<a name="l00012"></a>00012 <span class="preprocessor">#include "FilterDlg.h"</span>
+<a name="l00013"></a>00013
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;qpushbutton.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;qbuttongroup.h&gt;</span>
+<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;qradiobutton.h&gt;</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qgroupbox.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qcombobox.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qlayout.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qtooltip.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qwhatsthis.h&gt;</span>
+<a name="l00023"></a>00023
+<a name="l00024"></a>00024 <span class="comment">/*</span>
+<a name="l00025"></a>00025 <span class="comment"> * Constructs a FilterDlg as a child of 'parent', with the</span>
+<a name="l00026"></a>00026 <span class="comment"> * name 'name' and widget flags set to 'f'.</span>
+<a name="l00027"></a>00027 <span class="comment"> *</span>
+<a name="l00028"></a>00028 <span class="comment"> * The dialog will by default be modeless, unless you set 'modal' to</span>
+<a name="l00029"></a>00029 <span class="comment"> * TRUE to construct a modal dialog.</span>
+<a name="l00030"></a>00030 <span class="comment"> */</span>
+<a name="l00031"></a><a class="code" href="classFilterDlg.html#b3d673e89d2ec101b0224796624deb18">00031</a> <a class="code" href="classFilterDlg.html#b3d673e89d2ec101b0224796624deb18">FilterDlg::FilterDlg</a>( QWidget* parent, <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">bool</span> modal, WFlags fl )
+<a name="l00032"></a>00032 : QDialog( parent, name, modal, fl )
+<a name="l00033"></a>00033 {
+<a name="l00034"></a>00034 <span class="keywordflow">if</span> ( !name )
+<a name="l00035"></a>00035 setName( <span class="stringliteral">"FilterDlg"</span> );
+<a name="l00036"></a>00036 setSizeGripEnabled( FALSE );
+<a name="l00037"></a>00037 <a class="code" href="classFilterDlg.html#a239a88e6ccce2b0362e84af28f6d99d">FilterDlgLayout</a> = <span class="keyword">new</span> QGridLayout( <span class="keyword">this</span>, 1, 1, 11, 6, <span class="stringliteral">"FilterDlgLayout"</span>);
+<a name="l00038"></a>00038
+<a name="l00039"></a>00039 <a class="code" href="classFilterDlg.html#2677d339dadc77d10ac703d2e6feaf4c">Layout6</a> = <span class="keyword">new</span> QHBoxLayout( 0, 0, 6, <span class="stringliteral">"Layout6"</span>);
+<a name="l00040"></a>00040 <a class="code" href="classFilterDlg.html#c1e238a1dd214e2cd82be5d8ef90564d">Spacer11</a> = <span class="keyword">new</span> QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00041"></a>00041 <a class="code" href="classFilterDlg.html#2677d339dadc77d10ac703d2e6feaf4c">Layout6</a>-&gt;addItem( <a class="code" href="classFilterDlg.html#c1e238a1dd214e2cd82be5d8ef90564d">Spacer11</a> );
+<a name="l00042"></a>00042
+<a name="l00043"></a>00043 <a class="code" href="classFilterDlg.html#d987eb9d40d5286157e5f85a218d34b6">_buttonOk</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"_buttonOk"</span> );
+<a name="l00044"></a>00044 <a class="code" href="classFilterDlg.html#2677d339dadc77d10ac703d2e6feaf4c">Layout6</a>-&gt;addWidget( <a class="code" href="classFilterDlg.html#d987eb9d40d5286157e5f85a218d34b6">_buttonOk</a> );
+<a name="l00045"></a>00045
+<a name="l00046"></a>00046 <a class="code" href="classFilterDlg.html#e50d1c38d769025e506e49b30232eb30">_buttonCancel</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"_buttonCancel"</span> );
+<a name="l00047"></a>00047 <a class="code" href="classFilterDlg.html#2677d339dadc77d10ac703d2e6feaf4c">Layout6</a>-&gt;addWidget( <a class="code" href="classFilterDlg.html#e50d1c38d769025e506e49b30232eb30">_buttonCancel</a> );
+<a name="l00048"></a>00048
+<a name="l00049"></a>00049 <a class="code" href="classFilterDlg.html#a239a88e6ccce2b0362e84af28f6d99d">FilterDlgLayout</a>-&gt;addLayout( <a class="code" href="classFilterDlg.html#2677d339dadc77d10ac703d2e6feaf4c">Layout6</a>, 2, 0 );
+<a name="l00050"></a>00050
+<a name="l00051"></a>00051 <a class="code" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a> = <span class="keyword">new</span> QButtonGroup( <span class="keyword">this</span>, <span class="stringliteral">"buttonGroup1"</span> );
+<a name="l00052"></a>00052 <a class="code" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a>-&gt;setColumnLayout(0, Qt::Vertical );
+<a name="l00053"></a>00053 <a class="code" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a>-&gt;layout()-&gt;setSpacing( 6 );
+<a name="l00054"></a>00054 <a class="code" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a>-&gt;layout()-&gt;setMargin( 11 );
+<a name="l00055"></a>00055 <a class="code" href="classFilterDlg.html#301a5cf1674a4302639d74f0c1aa0d28">buttonGroup1Layout</a> = <span class="keyword">new</span> QGridLayout( <a class="code" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a>-&gt;layout() );
+<a name="l00056"></a>00056 <a class="code" href="classFilterDlg.html#301a5cf1674a4302639d74f0c1aa0d28">buttonGroup1Layout</a>-&gt;setAlignment( Qt::AlignTop );
+<a name="l00057"></a>00057
+<a name="l00058"></a>00058 <a class="code" href="classFilterDlg.html#581adf266ac543c6859522ebb4c01378">_radioOff</a> = <span class="keyword">new</span> QRadioButton( <a class="code" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a>, <span class="stringliteral">"_radioOff"</span> );
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <a class="code" href="classFilterDlg.html#301a5cf1674a4302639d74f0c1aa0d28">buttonGroup1Layout</a>-&gt;addWidget( <a class="code" href="classFilterDlg.html#581adf266ac543c6859522ebb4c01378">_radioOff</a>, 0, 0 );
+<a name="l00061"></a>00061
+<a name="l00062"></a>00062 <a class="code" href="classFilterDlg.html#9c5bb9702a4cc705de623898e3328e76">_radioOn</a> = <span class="keyword">new</span> QRadioButton( <a class="code" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a>, <span class="stringliteral">"_radioOn"</span> );
+<a name="l00063"></a>00063
+<a name="l00064"></a>00064 <a class="code" href="classFilterDlg.html#301a5cf1674a4302639d74f0c1aa0d28">buttonGroup1Layout</a>-&gt;addWidget( <a class="code" href="classFilterDlg.html#9c5bb9702a4cc705de623898e3328e76">_radioOn</a>, 1, 0 );
+<a name="l00065"></a>00065
+<a name="l00066"></a>00066 <a class="code" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">_radioAuto</a> = <span class="keyword">new</span> QRadioButton( <a class="code" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a>, <span class="stringliteral">"_radioAuto"</span> );
+<a name="l00067"></a>00067
+<a name="l00068"></a>00068 <a class="code" href="classFilterDlg.html#301a5cf1674a4302639d74f0c1aa0d28">buttonGroup1Layout</a>-&gt;addWidget( <a class="code" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">_radioAuto</a>, 2, 0 );
+<a name="l00069"></a>00069
+<a name="l00070"></a>00070 <a class="code" href="classFilterDlg.html#a239a88e6ccce2b0362e84af28f6d99d">FilterDlgLayout</a>-&gt;addWidget( <a class="code" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a>, 0, 0 );
+<a name="l00071"></a>00071
+<a name="l00072"></a>00072 <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a> = <span class="keyword">new</span> QGroupBox( <span class="keyword">this</span>, <span class="stringliteral">"QGroupBox_1"</span> );
+<a name="l00073"></a>00073 <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00074"></a>00074 <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>-&gt;setColumnLayout(0, Qt::Vertical );
+<a name="l00075"></a>00075 <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>-&gt;layout()-&gt;setSpacing( 6 );
+<a name="l00076"></a>00076 <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>-&gt;layout()-&gt;setMargin( 11 );
+<a name="l00077"></a>00077 <a class="code" href="classFilterDlg.html#9689f90e362266e0e27c8193b6b0ddcd">QGroupBox_1Layout</a> = <span class="keyword">new</span> QGridLayout( <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>-&gt;layout() );
+<a name="l00078"></a>00078 <a class="code" href="classFilterDlg.html#9689f90e362266e0e27c8193b6b0ddcd">QGroupBox_1Layout</a>-&gt;setAlignment( Qt::AlignTop );
+<a name="l00079"></a>00079
+<a name="l00080"></a>00080 <a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a> = <span class="keyword">new</span> QComboBox( FALSE, <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>, <span class="stringliteral">"_comboFilter"</span> );
+<a name="l00081"></a>00081 <a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00082"></a>00082 <a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>-&gt;setInsertionPolicy( QComboBox::AtTop );
+<a name="l00083"></a>00083
+<a name="l00084"></a>00084 <a class="code" href="classFilterDlg.html#9689f90e362266e0e27c8193b6b0ddcd">QGroupBox_1Layout</a>-&gt;addMultiCellWidget( <a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>, 0, 0, 0, 3 );
+<a name="l00085"></a>00085
+<a name="l00086"></a>00086 <a class="code" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>, <span class="stringliteral">"_buttonAdd"</span> );
+<a name="l00087"></a>00087 <a class="code" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00088"></a>00088
+<a name="l00089"></a>00089 <a class="code" href="classFilterDlg.html#9689f90e362266e0e27c8193b6b0ddcd">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a>, 1, 0 );
+<a name="l00090"></a>00090
+<a name="l00091"></a>00091 <a class="code" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>, <span class="stringliteral">"_buttonEdit"</span> );
+<a name="l00092"></a>00092 <a class="code" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00093"></a>00093
+<a name="l00094"></a>00094 <a class="code" href="classFilterDlg.html#9689f90e362266e0e27c8193b6b0ddcd">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a>, 1, 1 );
+<a name="l00095"></a>00095
+<a name="l00096"></a>00096 <a class="code" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>, <span class="stringliteral">"_buttonCopy"</span> );
+<a name="l00097"></a>00097 <a class="code" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00098"></a>00098
+<a name="l00099"></a>00099 <a class="code" href="classFilterDlg.html#9689f90e362266e0e27c8193b6b0ddcd">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a>, 1, 2 );
+<a name="l00100"></a>00100
+<a name="l00101"></a>00101 <a class="code" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>, <span class="stringliteral">"_buttonDelete"</span> );
+<a name="l00102"></a>00102 <a class="code" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00103"></a>00103
+<a name="l00104"></a>00104 <a class="code" href="classFilterDlg.html#9689f90e362266e0e27c8193b6b0ddcd">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a>, 1, 3 );
+<a name="l00105"></a>00105
+<a name="l00106"></a>00106 <a class="code" href="classFilterDlg.html#a239a88e6ccce2b0362e84af28f6d99d">FilterDlgLayout</a>-&gt;addWidget( <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>, 1, 0 );
+<a name="l00107"></a>00107 <a class="code" href="classFilterDlg.html#89ab6a78b02f47b5c1cb0d0ae505101b">languageChange</a>();
+<a name="l00108"></a>00108 resize( QSize(407, 255).expandedTo(minimumSizeHint()) );
+<a name="l00109"></a>00109 clearWState( WState_Polished );
+<a name="l00110"></a>00110
+<a name="l00111"></a>00111 <span class="comment">// signals and slots connections</span>
+<a name="l00112"></a>00112 connect( <a class="code" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterDlg.html#6153217102f046b8025d293be7cf924a">slotAdd</a>() ) );
+<a name="l00113"></a>00113 connect( <a class="code" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterDlg.html#9237a759ed12680d8ecc815c870734d7">slotEdit</a>() ) );
+<a name="l00114"></a>00114 connect( <a class="code" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterDlg.html#2800cdf7ab7a60b28e91610f0de005cf">slotCopy</a>() ) );
+<a name="l00115"></a>00115 connect( <a class="code" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterDlg.html#9b2add471297c225a39966f9cb216691">slotDelete</a>() ) );
+<a name="l00116"></a>00116 connect( <a class="code" href="classFilterDlg.html#d987eb9d40d5286157e5f85a218d34b6">_buttonOk</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterDlg.html#5010987e35d441d034610107fd2c7c0f">slotOk</a>() ) );
+<a name="l00117"></a>00117 connect( <a class="code" href="classFilterDlg.html#e50d1c38d769025e506e49b30232eb30">_buttonCancel</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( reject() ) );
+<a name="l00118"></a>00118 connect( <a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>, SIGNAL( activated(<span class="keywordtype">int</span>) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterDlg.html#54f9810702c707f67112b0df89cf2c04">slotFilterActivated</a>(<span class="keywordtype">int</span>) ) );
+<a name="l00119"></a>00119 connect( <a class="code" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">_radioAuto</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterDlg.html#55e7c3f2045044d68605f8630f897660">slotAutomaticActivated</a>() ) );
+<a name="l00120"></a>00120
+<a name="l00121"></a>00121 <span class="comment">// tab order</span>
+<a name="l00122"></a>00122 setTabOrder( <a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>, <a class="code" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a> );
+<a name="l00123"></a>00123 setTabOrder( <a class="code" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a>, <a class="code" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a> );
+<a name="l00124"></a>00124 setTabOrder( <a class="code" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a>, <a class="code" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a> );
+<a name="l00125"></a>00125 setTabOrder( <a class="code" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a>, <a class="code" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a> );
+<a name="l00126"></a>00126 setTabOrder( <a class="code" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a>, <a class="code" href="classFilterDlg.html#d987eb9d40d5286157e5f85a218d34b6">_buttonOk</a> );
+<a name="l00127"></a>00127 setTabOrder( <a class="code" href="classFilterDlg.html#d987eb9d40d5286157e5f85a218d34b6">_buttonOk</a>, <a class="code" href="classFilterDlg.html#e50d1c38d769025e506e49b30232eb30">_buttonCancel</a> );
+<a name="l00128"></a>00128 }
+<a name="l00129"></a>00129
+<a name="l00130"></a>00130 <span class="comment">/*</span>
+<a name="l00131"></a>00131 <span class="comment"> * Destroys the object and frees any allocated resources</span>
+<a name="l00132"></a>00132 <span class="comment"> */</span>
+<a name="l00133"></a><a class="code" href="classFilterDlg.html#fd1a9b90d89f6969633df9607e761704">00133</a> <a class="code" href="classFilterDlg.html#fd1a9b90d89f6969633df9607e761704">FilterDlg::~FilterDlg</a>()
+<a name="l00134"></a>00134 {
+<a name="l00135"></a>00135 <span class="comment">// no need to delete child widgets, Qt does it all for us</span>
+<a name="l00136"></a>00136 }
+<a name="l00137"></a>00137
+<a name="l00138"></a>00138 <span class="comment">/*</span>
+<a name="l00139"></a>00139 <span class="comment"> * Sets the strings of the subwidgets using the current</span>
+<a name="l00140"></a>00140 <span class="comment"> * language.</span>
+<a name="l00141"></a>00141 <span class="comment"> */</span>
+<a name="l00142"></a><a class="code" href="classFilterDlg.html#89ab6a78b02f47b5c1cb0d0ae505101b">00142</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#89ab6a78b02f47b5c1cb0d0ae505101b">FilterDlg::languageChange</a>()
+<a name="l00143"></a>00143 {
+<a name="l00144"></a>00144 setCaption( tr2i18n( <span class="stringliteral">"Filters"</span> ) );
+<a name="l00145"></a>00145 <a class="code" href="classFilterDlg.html#d987eb9d40d5286157e5f85a218d34b6">_buttonOk</a>-&gt;setText( tr2i18n( <span class="stringliteral">"OK"</span> ) );
+<a name="l00146"></a>00146 <a class="code" href="classFilterDlg.html#e50d1c38d769025e506e49b30232eb30">_buttonCancel</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Cancel"</span> ) );
+<a name="l00147"></a>00147 <a class="code" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a>-&gt;setTitle( tr2i18n( <span class="stringliteral">"Filter Status"</span> ) );
+<a name="l00148"></a>00148 <a class="code" href="classFilterDlg.html#581adf266ac543c6859522ebb4c01378">_radioOff</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Off"</span> ) );
+<a name="l00149"></a>00149 QToolTip::add( <a class="code" href="classFilterDlg.html#581adf266ac543c6859522ebb4c01378">_radioOff</a>, tr2i18n( <span class="stringliteral">"Filters are switched off"</span> ) );
+<a name="l00150"></a>00150 <a class="code" href="classFilterDlg.html#9c5bb9702a4cc705de623898e3328e76">_radioOn</a>-&gt;setText( tr2i18n( <span class="stringliteral">"On"</span> ) );
+<a name="l00151"></a>00151 QToolTip::add( <a class="code" href="classFilterDlg.html#9c5bb9702a4cc705de623898e3328e76">_radioOn</a>, tr2i18n( <span class="stringliteral">"Filters are switched on"</span> ) );
+<a name="l00152"></a>00152 <a class="code" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">_radioAuto</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Automatic Delete"</span> ) );
+<a name="l00153"></a>00153 QToolTip::add( <a class="code" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">_radioAuto</a>, tr2i18n( <span class="stringliteral">"Filters are switched on and are applied automatically"</span> ) );
+<a name="l00154"></a>00154 <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>-&gt;setTitle( tr2i18n( <span class="stringliteral">"Filters"</span> ) );
+<a name="l00155"></a>00155 QToolTip::add( <a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>, tr2i18n( <span class="stringliteral">"&lt;qt&gt;Filters are counted for each automatic deletion;&lt;br&gt;Filters with high counters are listed first&lt;/qt&gt;"</span> ) );
+<a name="l00156"></a>00156 <a class="code" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Add"</span> ) );
+<a name="l00157"></a>00157 QToolTip::add( <a class="code" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a>, tr2i18n( <span class="stringliteral">"Add filter"</span> ) );
+<a name="l00158"></a>00158 <a class="code" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Edit"</span> ) );
+<a name="l00159"></a>00159 QToolTip::add( <a class="code" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a>, tr2i18n( <span class="stringliteral">"Edit filter"</span> ) );
+<a name="l00160"></a>00160 <a class="code" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Copy"</span> ) );
+<a name="l00161"></a>00161 QToolTip::add( <a class="code" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a>, tr2i18n( <span class="stringliteral">"Copy filter"</span> ) );
+<a name="l00162"></a>00162 <a class="code" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Delete"</span> ) );
+<a name="l00163"></a>00163 QToolTip::add( <a class="code" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a>, tr2i18n( <span class="stringliteral">"Delete filter"</span> ) );
+<a name="l00164"></a>00164 }
+<a name="l00165"></a>00165
+<a name="l00166"></a><a class="code" href="classFilterDlg.html#6153217102f046b8025d293be7cf924a">00166</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#6153217102f046b8025d293be7cf924a">FilterDlg::slotAdd</a>()
+<a name="l00167"></a>00167 {
+<a name="l00168"></a>00168 qWarning( <span class="stringliteral">"FilterDlg::slotAdd(): Not implemented yet"</span> );
+<a name="l00169"></a>00169 }
+<a name="l00170"></a>00170
+<a name="l00171"></a><a class="code" href="classFilterDlg.html#2800cdf7ab7a60b28e91610f0de005cf">00171</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#2800cdf7ab7a60b28e91610f0de005cf">FilterDlg::slotCopy</a>()
+<a name="l00172"></a>00172 {
+<a name="l00173"></a>00173 qWarning( <span class="stringliteral">"FilterDlg::slotCopy(): Not implemented yet"</span> );
+<a name="l00174"></a>00174 }
+<a name="l00175"></a>00175
+<a name="l00176"></a><a class="code" href="classFilterDlg.html#9b2add471297c225a39966f9cb216691">00176</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#9b2add471297c225a39966f9cb216691">FilterDlg::slotDelete</a>()
+<a name="l00177"></a>00177 {
+<a name="l00178"></a>00178 qWarning( <span class="stringliteral">"FilterDlg::slotDelete(): Not implemented yet"</span> );
+<a name="l00179"></a>00179 }
+<a name="l00180"></a>00180
+<a name="l00181"></a><a class="code" href="classFilterDlg.html#9237a759ed12680d8ecc815c870734d7">00181</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#9237a759ed12680d8ecc815c870734d7">FilterDlg::slotEdit</a>()
+<a name="l00182"></a>00182 {
+<a name="l00183"></a>00183 qWarning( <span class="stringliteral">"FilterDlg::slotEdit(): Not implemented yet"</span> );
+<a name="l00184"></a>00184 }
+<a name="l00185"></a>00185
+<a name="l00186"></a><a class="code" href="classFilterDlg.html#5010987e35d441d034610107fd2c7c0f">00186</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#5010987e35d441d034610107fd2c7c0f">FilterDlg::slotOk</a>()
+<a name="l00187"></a>00187 {
+<a name="l00188"></a>00188 qWarning( <span class="stringliteral">"FilterDlg::slotOk(): Not implemented yet"</span> );
+<a name="l00189"></a>00189 }
+<a name="l00190"></a>00190
+<a name="l00191"></a><a class="code" href="classFilterDlg.html#54f9810702c707f67112b0df89cf2c04">00191</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#54f9810702c707f67112b0df89cf2c04">FilterDlg::slotFilterActivated</a>(<span class="keywordtype">int</span>)
+<a name="l00192"></a>00192 {
+<a name="l00193"></a>00193 qWarning( <span class="stringliteral">"FilterDlg::slotFilterActivated(int): Not implemented yet"</span> );
+<a name="l00194"></a>00194 }
+<a name="l00195"></a>00195
+<a name="l00196"></a><a class="code" href="classFilterDlg.html#55e7c3f2045044d68605f8630f897660">00196</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#55e7c3f2045044d68605f8630f897660">FilterDlg::slotAutomaticActivated</a>()
+<a name="l00197"></a>00197 {
+<a name="l00198"></a>00198 qWarning( <span class="stringliteral">"FilterDlg::slotAutomaticActivated(): Not implemented yet"</span> );
+<a name="l00199"></a>00199 }
+<a name="l00200"></a>00200
+<a name="l00201"></a>00201 <span class="preprocessor">#include "FilterDlg.moc"</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/FilterDlg_8h-source.html b/doc/html/FilterDlg_8h-source.html
new file mode 100644
index 0000000..b4dfc31
--- /dev/null
+++ b/doc/html/FilterDlg_8h-source.html
@@ -0,0 +1,90 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/FilterDlg.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>FilterDlg.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** Form interface generated from reading ui file './FilterDlg.ui'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Fr Jun 29 22:08:23 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The User Interface Compiler ($Id: FilterDlg_8h-source.html,v 1.10 2007/07/05 17:37:49 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#ifndef FILTERDLG_H</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#define FILTERDLG_H</span>
+<a name="l00012"></a>00012 <span class="preprocessor"></span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qdialog.h&gt;</span>
+<a name="l00015"></a>00015
+<a name="l00016"></a>00016 <span class="keyword">class </span>QVBoxLayout;
+<a name="l00017"></a>00017 <span class="keyword">class </span>QHBoxLayout;
+<a name="l00018"></a>00018 <span class="keyword">class </span>QGridLayout;
+<a name="l00019"></a>00019 <span class="keyword">class </span>QSpacerItem;
+<a name="l00020"></a>00020 <span class="keyword">class </span>QPushButton;
+<a name="l00021"></a>00021 <span class="keyword">class </span>QButtonGroup;
+<a name="l00022"></a>00022 <span class="keyword">class </span>QRadioButton;
+<a name="l00023"></a>00023 <span class="keyword">class </span>QGroupBox;
+<a name="l00024"></a>00024 <span class="keyword">class </span>QComboBox;
+<a name="l00025"></a>00025
+<a name="l00026"></a><a class="code" href="classFilterDlg.html">00026</a> <span class="keyword">class </span><a class="code" href="classFilterDlg.html">FilterDlg</a> : <span class="keyword">public</span> QDialog
+<a name="l00027"></a>00027 {
+<a name="l00028"></a>00028 Q_OBJECT
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="keyword">public</span>:
+<a name="l00031"></a>00031 <a class="code" href="classFilterDlg.html#b3d673e89d2ec101b0224796624deb18">FilterDlg</a>( QWidget* parent = 0, <span class="keyword">const</span> <span class="keywordtype">char</span>* name = 0, <span class="keywordtype">bool</span> modal = FALSE, WFlags fl = 0 );
+<a name="l00032"></a>00032 <a class="code" href="classFilterDlg.html#fd1a9b90d89f6969633df9607e761704">~FilterDlg</a>();
+<a name="l00033"></a>00033
+<a name="l00034"></a><a class="code" href="classFilterDlg.html#d987eb9d40d5286157e5f85a218d34b6">00034</a> QPushButton* <a class="code" href="classFilterDlg.html#d987eb9d40d5286157e5f85a218d34b6">_buttonOk</a>;
+<a name="l00035"></a><a class="code" href="classFilterDlg.html#e50d1c38d769025e506e49b30232eb30">00035</a> QPushButton* <a class="code" href="classFilterDlg.html#e50d1c38d769025e506e49b30232eb30">_buttonCancel</a>;
+<a name="l00036"></a><a class="code" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">00036</a> QButtonGroup* <a class="code" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a>;
+<a name="l00037"></a><a class="code" href="classFilterDlg.html#581adf266ac543c6859522ebb4c01378">00037</a> QRadioButton* <a class="code" href="classFilterDlg.html#581adf266ac543c6859522ebb4c01378">_radioOff</a>;
+<a name="l00038"></a><a class="code" href="classFilterDlg.html#9c5bb9702a4cc705de623898e3328e76">00038</a> QRadioButton* <a class="code" href="classFilterDlg.html#9c5bb9702a4cc705de623898e3328e76">_radioOn</a>;
+<a name="l00039"></a><a class="code" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">00039</a> QRadioButton* <a class="code" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">_radioAuto</a>;
+<a name="l00040"></a><a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">00040</a> QGroupBox* <a class="code" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a>;
+<a name="l00041"></a><a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">00041</a> QComboBox* <a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>;
+<a name="l00042"></a><a class="code" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">00042</a> QPushButton* <a class="code" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a>;
+<a name="l00043"></a><a class="code" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">00043</a> QPushButton* <a class="code" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a>;
+<a name="l00044"></a><a class="code" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">00044</a> QPushButton* <a class="code" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a>;
+<a name="l00045"></a><a class="code" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">00045</a> QPushButton* <a class="code" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a>;
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 <span class="keyword">public</span> slots:
+<a name="l00048"></a>00048 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#6153217102f046b8025d293be7cf924a">slotAdd</a>();
+<a name="l00049"></a>00049 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#2800cdf7ab7a60b28e91610f0de005cf">slotCopy</a>();
+<a name="l00050"></a>00050 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#9b2add471297c225a39966f9cb216691">slotDelete</a>();
+<a name="l00051"></a>00051 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#9237a759ed12680d8ecc815c870734d7">slotEdit</a>();
+<a name="l00052"></a>00052 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#5010987e35d441d034610107fd2c7c0f">slotOk</a>();
+<a name="l00053"></a>00053 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#54f9810702c707f67112b0df89cf2c04">slotFilterActivated</a>(<span class="keywordtype">int</span>);
+<a name="l00054"></a>00054 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#55e7c3f2045044d68605f8630f897660">slotAutomaticActivated</a>();
+<a name="l00055"></a>00055
+<a name="l00056"></a>00056 <span class="keyword">protected</span>:
+<a name="l00057"></a><a class="code" href="classFilterDlg.html#a239a88e6ccce2b0362e84af28f6d99d">00057</a> QGridLayout* <a class="code" href="classFilterDlg.html#a239a88e6ccce2b0362e84af28f6d99d">FilterDlgLayout</a>;
+<a name="l00058"></a><a class="code" href="classFilterDlg.html#2677d339dadc77d10ac703d2e6feaf4c">00058</a> QHBoxLayout* <a class="code" href="classFilterDlg.html#2677d339dadc77d10ac703d2e6feaf4c">Layout6</a>;
+<a name="l00059"></a><a class="code" href="classFilterDlg.html#c1e238a1dd214e2cd82be5d8ef90564d">00059</a> QSpacerItem* <a class="code" href="classFilterDlg.html#c1e238a1dd214e2cd82be5d8ef90564d">Spacer11</a>;
+<a name="l00060"></a><a class="code" href="classFilterDlg.html#301a5cf1674a4302639d74f0c1aa0d28">00060</a> QGridLayout* <a class="code" href="classFilterDlg.html#301a5cf1674a4302639d74f0c1aa0d28">buttonGroup1Layout</a>;
+<a name="l00061"></a><a class="code" href="classFilterDlg.html#9689f90e362266e0e27c8193b6b0ddcd">00061</a> QGridLayout* <a class="code" href="classFilterDlg.html#9689f90e362266e0e27c8193b6b0ddcd">QGroupBox_1Layout</a>;
+<a name="l00062"></a>00062
+<a name="l00063"></a>00063 <span class="keyword">protected</span> slots:
+<a name="l00064"></a>00064 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDlg.html#89ab6a78b02f47b5c1cb0d0ae505101b">languageChange</a>();
+<a name="l00065"></a>00065
+<a name="l00066"></a>00066 };
+<a name="l00067"></a>00067
+<a name="l00068"></a>00068 <span class="preprocessor">#endif // FILTERDLG_H</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/FilterDlg_8moc-source.html b/doc/html/FilterDlg_8moc-source.html
new file mode 100644
index 0000000..7fd3c59
--- /dev/null
+++ b/doc/html/FilterDlg_8moc-source.html
@@ -0,0 +1,147 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/FilterDlg.moc Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>FilterDlg.moc</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** FilterDlg meta object code from reading C++ file 'FilterDlg.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Fri Jun 29 22:08:56 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: FilterDlg_8moc-source.html,v 1.10 2007/07/05 17:37:49 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "FilterDlg.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *FilterDlg::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"FilterDlg"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *FilterDlg::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_FilterDlg( <span class="stringliteral">"FilterDlg"</span>, &amp;FilterDlg::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString FilterDlg::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"FilterDlg"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString FilterDlg::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"FilterDlg"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* FilterDlg::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = QDialog::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotAdd"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotCopy"</span>, 0, 0 };
+<a name="l00057"></a>00057 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_2 = {<span class="stringliteral">"slotDelete"</span>, 0, 0 };
+<a name="l00058"></a>00058 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_3 = {<span class="stringliteral">"slotEdit"</span>, 0, 0 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_4 = {<span class="stringliteral">"slotOk"</span>, 0, 0 };
+<a name="l00060"></a>00060 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_5[] = {
+<a name="l00061"></a>00061 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00062"></a>00062 };
+<a name="l00063"></a>00063 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_5 = {<span class="stringliteral">"slotFilterActivated"</span>, 1, param_slot_5 };
+<a name="l00064"></a>00064 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_6 = {<span class="stringliteral">"slotAutomaticActivated"</span>, 0, 0 };
+<a name="l00065"></a>00065 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_7 = {<span class="stringliteral">"languageChange"</span>, 0, 0 };
+<a name="l00066"></a>00066 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00067"></a>00067 { <span class="stringliteral">"slotAdd()"</span>, &amp;slot_0, QMetaData::Public },
+<a name="l00068"></a>00068 { <span class="stringliteral">"slotCopy()"</span>, &amp;slot_1, QMetaData::Public },
+<a name="l00069"></a>00069 { <span class="stringliteral">"slotDelete()"</span>, &amp;slot_2, QMetaData::Public },
+<a name="l00070"></a>00070 { <span class="stringliteral">"slotEdit()"</span>, &amp;slot_3, QMetaData::Public },
+<a name="l00071"></a>00071 { <span class="stringliteral">"slotOk()"</span>, &amp;slot_4, QMetaData::Public },
+<a name="l00072"></a>00072 { <span class="stringliteral">"slotFilterActivated(int)"</span>, &amp;slot_5, QMetaData::Public },
+<a name="l00073"></a>00073 { <span class="stringliteral">"slotAutomaticActivated()"</span>, &amp;slot_6, QMetaData::Public },
+<a name="l00074"></a>00074 { <span class="stringliteral">"languageChange()"</span>, &amp;slot_7, QMetaData::Protected }
+<a name="l00075"></a>00075 };
+<a name="l00076"></a>00076 metaObj = QMetaObject::new_metaobject(
+<a name="l00077"></a>00077 <span class="stringliteral">"FilterDlg"</span>, parentObject,
+<a name="l00078"></a>00078 slot_tbl, 8,
+<a name="l00079"></a>00079 0, 0,
+<a name="l00080"></a>00080 #ifndef QT_NO_PROPERTIES
+<a name="l00081"></a>00081 0, 0,
+<a name="l00082"></a>00082 0, 0,
+<a name="l00083"></a>00083 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00084"></a>00084 0, 0 );
+<a name="l00085"></a>00085 cleanUp_FilterDlg.setMetaObject( metaObj );
+<a name="l00086"></a>00086 <span class="keywordflow">return</span> metaObj;
+<a name="l00087"></a>00087 }
+<a name="l00088"></a>00088
+<a name="l00089"></a>00089 <span class="keywordtype">void</span>* FilterDlg::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00090"></a>00090 {
+<a name="l00091"></a>00091 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"FilterDlg"</span> ) )
+<a name="l00092"></a>00092 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00093"></a>00093 <span class="keywordflow">return</span> QDialog::qt_cast( clname );
+<a name="l00094"></a>00094 }
+<a name="l00095"></a>00095
+<a name="l00096"></a>00096 <span class="keywordtype">bool</span> FilterDlg::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00097"></a>00097 {
+<a name="l00098"></a>00098 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00099"></a>00099 <span class="keywordflow">case</span> 0: <a class="code" href="classFilterDlg.html#6153217102f046b8025d293be7cf924a">slotAdd</a>(); <span class="keywordflow">break</span>;
+<a name="l00100"></a>00100 <span class="keywordflow">case</span> 1: <a class="code" href="classFilterDlg.html#2800cdf7ab7a60b28e91610f0de005cf">slotCopy</a>(); <span class="keywordflow">break</span>;
+<a name="l00101"></a>00101 <span class="keywordflow">case</span> 2: <a class="code" href="classFilterDlg.html#9b2add471297c225a39966f9cb216691">slotDelete</a>(); <span class="keywordflow">break</span>;
+<a name="l00102"></a>00102 <span class="keywordflow">case</span> 3: <a class="code" href="classFilterDlg.html#9237a759ed12680d8ecc815c870734d7">slotEdit</a>(); <span class="keywordflow">break</span>;
+<a name="l00103"></a>00103 <span class="keywordflow">case</span> 4: <a class="code" href="classFilterDlg.html#5010987e35d441d034610107fd2c7c0f">slotOk</a>(); <span class="keywordflow">break</span>;
+<a name="l00104"></a>00104 <span class="keywordflow">case</span> 5: <a class="code" href="classFilterDlg.html#54f9810702c707f67112b0df89cf2c04">slotFilterActivated</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00105"></a>00105 <span class="keywordflow">case</span> 6: <a class="code" href="classFilterDlg.html#55e7c3f2045044d68605f8630f897660">slotAutomaticActivated</a>(); <span class="keywordflow">break</span>;
+<a name="l00106"></a>00106 <span class="keywordflow">case</span> 7: <a class="code" href="classFilterDlg.html#89ab6a78b02f47b5c1cb0d0ae505101b">languageChange</a>(); <span class="keywordflow">break</span>;
+<a name="l00107"></a>00107 <span class="keywordflow">default</span>:
+<a name="l00108"></a>00108 <span class="keywordflow">return</span> QDialog::qt_invoke( _id, _o );
+<a name="l00109"></a>00109 }
+<a name="l00110"></a>00110 <span class="keywordflow">return</span> TRUE;
+<a name="l00111"></a>00111 }
+<a name="l00112"></a>00112
+<a name="l00113"></a>00113 <span class="keywordtype">bool</span> FilterDlg::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00114"></a>00114 {
+<a name="l00115"></a>00115 <span class="keywordflow">return</span> QDialog::qt_emit(_id,_o);
+<a name="l00116"></a>00116 }
+<a name="l00117"></a>00117 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00118"></a>00118 <span class="preprocessor"></span>
+<a name="l00119"></a>00119 <span class="keywordtype">bool</span> FilterDlg::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00120"></a>00120 {
+<a name="l00121"></a>00121 <span class="keywordflow">return</span> QDialog::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00122"></a>00122 }
+<a name="l00123"></a>00123
+<a name="l00124"></a>00124 <span class="keywordtype">bool</span> FilterDlg::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00125"></a>00125 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/FilterEntryDlg_8cpp-source.html b/doc/html/FilterEntryDlg_8cpp-source.html
new file mode 100644
index 0000000..36bc851
--- /dev/null
+++ b/doc/html/FilterEntryDlg_8cpp-source.html
@@ -0,0 +1,332 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/FilterEntryDlg.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>FilterEntryDlg.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;kdialog.h&gt;</span>
+<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00003"></a>00003 <span class="comment">/****************************************************************************</span>
+<a name="l00004"></a>00004 <span class="comment">** Form implementation generated from reading ui file './FilterEntryDlg.ui'</span>
+<a name="l00005"></a>00005 <span class="comment">**</span>
+<a name="l00006"></a>00006 <span class="comment">** Created: Fr Jun 29 22:08:54 2007</span>
+<a name="l00007"></a>00007 <span class="comment">** by: The User Interface Compiler ($Id: FilterEntryDlg_8cpp-source.html,v 1.10 2007/07/05 17:37:49 kuddel-fl Exp $)</span>
+<a name="l00008"></a>00008 <span class="comment">**</span>
+<a name="l00009"></a>00009 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00010"></a>00010 <span class="comment">****************************************************************************/</span>
+<a name="l00011"></a>00011
+<a name="l00012"></a>00012 <span class="preprocessor">#include "FilterEntryDlg.h"</span>
+<a name="l00013"></a>00013
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;qpushbutton.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;qlineedit.h&gt;</span>
+<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;qgroupbox.h&gt;</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qcombobox.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qcheckbox.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qspinbox.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qlayout.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qtooltip.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;qwhatsthis.h&gt;</span>
+<a name="l00024"></a>00024
+<a name="l00025"></a>00025 <span class="comment">/*</span>
+<a name="l00026"></a>00026 <span class="comment"> * Constructs a FilterEntryDlg as a child of 'parent', with the</span>
+<a name="l00027"></a>00027 <span class="comment"> * name 'name' and widget flags set to 'f'.</span>
+<a name="l00028"></a>00028 <span class="comment"> *</span>
+<a name="l00029"></a>00029 <span class="comment"> * The dialog will by default be modeless, unless you set 'modal' to</span>
+<a name="l00030"></a>00030 <span class="comment"> * TRUE to construct a modal dialog.</span>
+<a name="l00031"></a>00031 <span class="comment"> */</span>
+<a name="l00032"></a><a class="code" href="classFilterEntryDlg.html#1004374888df731e496fa55652f85cc8">00032</a> <a class="code" href="classFilterEntryDlg.html#1004374888df731e496fa55652f85cc8">FilterEntryDlg::FilterEntryDlg</a>( QWidget* parent, <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">bool</span> modal, WFlags fl )
+<a name="l00033"></a>00033 : QDialog( parent, name, modal, fl )
+<a name="l00034"></a>00034 {
+<a name="l00035"></a>00035 <span class="keywordflow">if</span> ( !name )
+<a name="l00036"></a>00036 setName( <span class="stringliteral">"FilterEntryDlg"</span> );
+<a name="l00037"></a>00037 setSizeGripEnabled( FALSE );
+<a name="l00038"></a>00038 <a class="code" href="classFilterEntryDlg.html#2b727644e2fcbecf1b0242531d13d8e2">FilterEntryDlgLayout</a> = <span class="keyword">new</span> QGridLayout( <span class="keyword">this</span>, 1, 1, 11, 6, <span class="stringliteral">"FilterEntryDlgLayout"</span>);
+<a name="l00039"></a>00039
+<a name="l00040"></a>00040 <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a> = <span class="keyword">new</span> QLineEdit( <span class="keyword">this</span>, <span class="stringliteral">"_editName"</span> );
+<a name="l00041"></a>00041 <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>-&gt;setEnabled( TRUE );
+<a name="l00042"></a>00042 <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>-&gt;setReadOnly( TRUE );
+<a name="l00043"></a>00043
+<a name="l00044"></a>00044 <a class="code" href="classFilterEntryDlg.html#2b727644e2fcbecf1b0242531d13d8e2">FilterEntryDlgLayout</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>, 0, 0 );
+<a name="l00045"></a>00045
+<a name="l00046"></a>00046 <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a> = <span class="keyword">new</span> QGroupBox( <span class="keyword">this</span>, <span class="stringliteral">"QGroupBox_1"</span> );
+<a name="l00047"></a>00047 <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>-&gt;setFrameShape( QGroupBox::Box );
+<a name="l00048"></a>00048 <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>-&gt;setFrameShadow( QGroupBox::Sunken );
+<a name="l00049"></a>00049 <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>-&gt;setColumnLayout(0, Qt::Vertical );
+<a name="l00050"></a>00050 <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>-&gt;layout()-&gt;setSpacing( 6 );
+<a name="l00051"></a>00051 <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>-&gt;layout()-&gt;setMargin( 11 );
+<a name="l00052"></a>00052 <a class="code" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a> = <span class="keyword">new</span> QGridLayout( <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>-&gt;layout() );
+<a name="l00053"></a>00053 <a class="code" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a>-&gt;setAlignment( Qt::AlignTop );
+<a name="l00054"></a>00054
+<a name="l00055"></a>00055 <a class="code" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a> = <span class="keyword">new</span> QComboBox( FALSE, <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>, <span class="stringliteral">"_comboItem1"</span> );
+<a name="l00056"></a>00056
+<a name="l00057"></a>00057 <a class="code" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a>-&gt;addMultiCellWidget( <a class="code" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a>, 0, 0, 0, 1 );
+<a name="l00058"></a>00058
+<a name="l00059"></a>00059 <a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a> = <span class="keyword">new</span> QComboBox( FALSE, <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>, <span class="stringliteral">"_comboExpression1"</span> );
+<a name="l00060"></a>00060
+<a name="l00061"></a>00061 <a class="code" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a>-&gt;addMultiCellWidget( <a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a>, 0, 0, 2, 3 );
+<a name="l00062"></a>00062
+<a name="l00063"></a>00063 <a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a> = <span class="keyword">new</span> QLineEdit( <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>, <span class="stringliteral">"_editMatch1"</span> );
+<a name="l00064"></a>00064
+<a name="l00065"></a>00065 <a class="code" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a>-&gt;addMultiCellWidget( <a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a>, 1, 1, 0, 3 );
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 <a class="code" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a> = <span class="keyword">new</span> QComboBox( FALSE, <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>, <span class="stringliteral">"_comboSecondCondition"</span> );
+<a name="l00068"></a>00068
+<a name="l00069"></a>00069 <a class="code" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a>-&gt;addMultiCellWidget( <a class="code" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a>, 3, 3, 0, 3 );
+<a name="l00070"></a>00070
+<a name="l00071"></a>00071 <a class="code" href="classFilterEntryDlg.html#21d063a47d1c8dc6d2f1387e36dc0e29">_checkCaseSensitive1</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>, <span class="stringliteral">"_checkCaseSensitive1"</span> );
+<a name="l00072"></a>00072
+<a name="l00073"></a>00073 <a class="code" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#21d063a47d1c8dc6d2f1387e36dc0e29">_checkCaseSensitive1</a>, 2, 0 );
+<a name="l00074"></a>00074 <a class="code" href="classFilterEntryDlg.html#c3575c94fc0110ad322996f9106adfbd">spacer2</a> = <span class="keyword">new</span> QSpacerItem( 50, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00075"></a>00075 <a class="code" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a>-&gt;addItem( <a class="code" href="classFilterEntryDlg.html#c3575c94fc0110ad322996f9106adfbd">spacer2</a>, 2, 1 );
+<a name="l00076"></a>00076
+<a name="l00077"></a>00077 <a class="code" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">_buttonEditRegExp1</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>, <span class="stringliteral">"_buttonEditRegExp1"</span> );
+<a name="l00078"></a>00078
+<a name="l00079"></a>00079 <a class="code" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">_buttonEditRegExp1</a>, 2, 3 );
+<a name="l00080"></a>00080
+<a name="l00081"></a>00081 <a class="code" href="classFilterEntryDlg.html#b484e56fe6fd6fa210ac549e17dac0c3">_checkRegExp1</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>, <span class="stringliteral">"_checkRegExp1"</span> );
+<a name="l00082"></a>00082
+<a name="l00083"></a>00083 <a class="code" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#b484e56fe6fd6fa210ac549e17dac0c3">_checkRegExp1</a>, 2, 2 );
+<a name="l00084"></a>00084
+<a name="l00085"></a>00085 <a class="code" href="classFilterEntryDlg.html#2b727644e2fcbecf1b0242531d13d8e2">FilterEntryDlgLayout</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>, 1, 0 );
+<a name="l00086"></a>00086
+<a name="l00087"></a>00087 <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a> = <span class="keyword">new</span> QGroupBox( <span class="keyword">this</span>, <span class="stringliteral">"_groupBox2"</span> );
+<a name="l00088"></a>00088 <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>-&gt;setEnabled( FALSE );
+<a name="l00089"></a>00089 <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>-&gt;setColumnLayout(0, Qt::Vertical );
+<a name="l00090"></a>00090 <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>-&gt;layout()-&gt;setSpacing( 6 );
+<a name="l00091"></a>00091 <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>-&gt;layout()-&gt;setMargin( 11 );
+<a name="l00092"></a>00092 <a class="code" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a> = <span class="keyword">new</span> QGridLayout( <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>-&gt;layout() );
+<a name="l00093"></a>00093 <a class="code" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a>-&gt;setAlignment( Qt::AlignTop );
+<a name="l00094"></a>00094
+<a name="l00095"></a>00095 <a class="code" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a> = <span class="keyword">new</span> QComboBox( FALSE, <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>, <span class="stringliteral">"_comboItem2"</span> );
+<a name="l00096"></a>00096
+<a name="l00097"></a>00097 <a class="code" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a>-&gt;addMultiCellWidget( <a class="code" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a>, 0, 0, 0, 1 );
+<a name="l00098"></a>00098
+<a name="l00099"></a>00099 <a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a> = <span class="keyword">new</span> QComboBox( FALSE, <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>, <span class="stringliteral">"_comboExpression2"</span> );
+<a name="l00100"></a>00100
+<a name="l00101"></a>00101 <a class="code" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a>-&gt;addMultiCellWidget( <a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a>, 0, 0, 2, 3 );
+<a name="l00102"></a>00102
+<a name="l00103"></a>00103 <a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a> = <span class="keyword">new</span> QLineEdit( <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>, <span class="stringliteral">"_editMatch2"</span> );
+<a name="l00104"></a>00104
+<a name="l00105"></a>00105 <a class="code" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a>-&gt;addMultiCellWidget( <a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a>, 1, 1, 0, 3 );
+<a name="l00106"></a>00106
+<a name="l00107"></a>00107 <a class="code" href="classFilterEntryDlg.html#7bb75b57a7e6026de7a729d3c3e00eb5">_checkCaseSensitive2</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>, <span class="stringliteral">"_checkCaseSensitive2"</span> );
+<a name="l00108"></a>00108
+<a name="l00109"></a>00109 <a class="code" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#7bb75b57a7e6026de7a729d3c3e00eb5">_checkCaseSensitive2</a>, 2, 0 );
+<a name="l00110"></a>00110 <a class="code" href="classFilterEntryDlg.html#af5dc4eb354581e010c723e889d3853b">spacer3</a> = <span class="keyword">new</span> QSpacerItem( 140, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00111"></a>00111 <a class="code" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a>-&gt;addItem( <a class="code" href="classFilterEntryDlg.html#af5dc4eb354581e010c723e889d3853b">spacer3</a>, 2, 1 );
+<a name="l00112"></a>00112
+<a name="l00113"></a>00113 <a class="code" href="classFilterEntryDlg.html#b9f3d81d53edd0c0dbae49810b8a70cb">_checkRegExp2</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>, <span class="stringliteral">"_checkRegExp2"</span> );
+<a name="l00114"></a>00114
+<a name="l00115"></a>00115 <a class="code" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#b9f3d81d53edd0c0dbae49810b8a70cb">_checkRegExp2</a>, 2, 2 );
+<a name="l00116"></a>00116
+<a name="l00117"></a>00117 <a class="code" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">_buttonEditRegExp2</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>, <span class="stringliteral">"_buttonEditRegExp2"</span> );
+<a name="l00118"></a>00118
+<a name="l00119"></a>00119 <a class="code" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">_buttonEditRegExp2</a>, 2, 3 );
+<a name="l00120"></a>00120
+<a name="l00121"></a>00121 <a class="code" href="classFilterEntryDlg.html#2b727644e2fcbecf1b0242531d13d8e2">FilterEntryDlgLayout</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>, 2, 0 );
+<a name="l00122"></a>00122
+<a name="l00123"></a>00123 <a class="code" href="classFilterEntryDlg.html#63750302bdc8c80e1c5a39502d51231d">Layout11</a> = <span class="keyword">new</span> QHBoxLayout( 0, 0, 6, <span class="stringliteral">"Layout11"</span>);
+<a name="l00124"></a>00124 <a class="code" href="classFilterEntryDlg.html#cb2a000ac6cfa82b1761b18a659381a7">Spacer17</a> = <span class="keyword">new</span> QSpacerItem( 20, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00125"></a>00125 <a class="code" href="classFilterEntryDlg.html#63750302bdc8c80e1c5a39502d51231d">Layout11</a>-&gt;addItem( <a class="code" href="classFilterEntryDlg.html#cb2a000ac6cfa82b1761b18a659381a7">Spacer17</a> );
+<a name="l00126"></a>00126
+<a name="l00127"></a>00127 <a class="code" href="classFilterEntryDlg.html#02b245962b1424e9294d6bf8442a4b38">m_ButtonOk</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"m_ButtonOk"</span> );
+<a name="l00128"></a>00128 <a class="code" href="classFilterEntryDlg.html#63750302bdc8c80e1c5a39502d51231d">Layout11</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#02b245962b1424e9294d6bf8442a4b38">m_ButtonOk</a> );
+<a name="l00129"></a>00129
+<a name="l00130"></a>00130 <a class="code" href="classFilterEntryDlg.html#fcec9c8c312b2830616c2de12f0c8355">m_ButtonCancel</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"m_ButtonCancel"</span> );
+<a name="l00131"></a>00131 <a class="code" href="classFilterEntryDlg.html#63750302bdc8c80e1c5a39502d51231d">Layout11</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#fcec9c8c312b2830616c2de12f0c8355">m_ButtonCancel</a> );
+<a name="l00132"></a>00132
+<a name="l00133"></a>00133 <a class="code" href="classFilterEntryDlg.html#2b727644e2fcbecf1b0242531d13d8e2">FilterEntryDlgLayout</a>-&gt;addLayout( <a class="code" href="classFilterEntryDlg.html#63750302bdc8c80e1c5a39502d51231d">Layout11</a>, 4, 0 );
+<a name="l00134"></a>00134
+<a name="l00135"></a>00135 <a class="code" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a> = <span class="keyword">new</span> QGroupBox( <span class="keyword">this</span>, <span class="stringliteral">"groupBox3"</span> );
+<a name="l00136"></a>00136 <a class="code" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a>-&gt;setColumnLayout(0, Qt::Vertical );
+<a name="l00137"></a>00137 <a class="code" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a>-&gt;layout()-&gt;setSpacing( 6 );
+<a name="l00138"></a>00138 <a class="code" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a>-&gt;layout()-&gt;setMargin( 11 );
+<a name="l00139"></a>00139 <a class="code" href="classFilterEntryDlg.html#3c133eaa09b66636dd31b18d5f66e699">groupBox3Layout</a> = <span class="keyword">new</span> QHBoxLayout( <a class="code" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a>-&gt;layout() );
+<a name="l00140"></a>00140 <a class="code" href="classFilterEntryDlg.html#3c133eaa09b66636dd31b18d5f66e699">groupBox3Layout</a>-&gt;setAlignment( Qt::AlignTop );
+<a name="l00141"></a>00141
+<a name="l00142"></a>00142 <a class="code" href="classFilterEntryDlg.html#efe66d0f49d6a04c504811c048317195">_spinCounter</a> = <span class="keyword">new</span> QSpinBox( <a class="code" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a>, <span class="stringliteral">"_spinCounter"</span> );
+<a name="l00143"></a>00143 <a class="code" href="classFilterEntryDlg.html#efe66d0f49d6a04c504811c048317195">_spinCounter</a>-&gt;setMaxValue( 99999 );
+<a name="l00144"></a>00144 <a class="code" href="classFilterEntryDlg.html#3c133eaa09b66636dd31b18d5f66e699">groupBox3Layout</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#efe66d0f49d6a04c504811c048317195">_spinCounter</a> );
+<a name="l00145"></a>00145
+<a name="l00146"></a>00146 <a class="code" href="classFilterEntryDlg.html#d798b24cd1ba45d07060cd195913975b">_buttonResetCounter</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a>, <span class="stringliteral">"_buttonResetCounter"</span> );
+<a name="l00147"></a>00147 <a class="code" href="classFilterEntryDlg.html#3c133eaa09b66636dd31b18d5f66e699">groupBox3Layout</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#d798b24cd1ba45d07060cd195913975b">_buttonResetCounter</a> );
+<a name="l00148"></a>00148
+<a name="l00149"></a>00149 <a class="code" href="classFilterEntryDlg.html#2b727644e2fcbecf1b0242531d13d8e2">FilterEntryDlgLayout</a>-&gt;addWidget( <a class="code" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a>, 3, 0 );
+<a name="l00150"></a>00150 <a class="code" href="classFilterEntryDlg.html#5724b2b390362ebab6b38d3f99ac689c">languageChange</a>();
+<a name="l00151"></a>00151 resize( QSize(540, 484).expandedTo(minimumSizeHint()) );
+<a name="l00152"></a>00152 clearWState( WState_Polished );
+<a name="l00153"></a>00153
+<a name="l00154"></a>00154 <span class="comment">// signals and slots connections</span>
+<a name="l00155"></a>00155 connect( <a class="code" href="classFilterEntryDlg.html#02b245962b1424e9294d6bf8442a4b38">m_ButtonOk</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#044b3778968adf3cc1dfb860530871d8">slotOk</a>() ) );
+<a name="l00156"></a>00156 connect( <a class="code" href="classFilterEntryDlg.html#fcec9c8c312b2830616c2de12f0c8355">m_ButtonCancel</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( reject() ) );
+<a name="l00157"></a>00157 connect( <a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a>, SIGNAL( textChanged(<span class="keyword">const</span> QString&amp;) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#05d5272687ede82a6bc27d57df7e03af">slotMatch1Changed</a>(<span class="keyword">const</span> QString&amp;) ) );
+<a name="l00158"></a>00158 connect( <a class="code" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a>, SIGNAL( activated(<span class="keywordtype">int</span>) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#4cbdd432ba86f46647b846f301ea0287">slotItem1Selected</a>(<span class="keywordtype">int</span>) ) );
+<a name="l00159"></a>00159 connect( <a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a>, SIGNAL( activated(<span class="keywordtype">int</span>) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#97268e12b04d672a98541223f768f906">slotCondition1Selected</a>(<span class="keywordtype">int</span>) ) );
+<a name="l00160"></a>00160 connect( <a class="code" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a>, SIGNAL( activated(<span class="keywordtype">int</span>) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#1de736a9fada9c574881fa048b97903f">slotItem2Selected</a>(<span class="keywordtype">int</span>) ) );
+<a name="l00161"></a>00161 connect( <a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a>, SIGNAL( activated(<span class="keywordtype">int</span>) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#6ac10e19c5dd00efd78ec6dc55e872c3">slotCondition2Selected</a>(<span class="keywordtype">int</span>) ) );
+<a name="l00162"></a>00162 connect( <a class="code" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a>, SIGNAL( activated(<span class="keywordtype">int</span>) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#d32365f2082078acfc3be07d5908f66f">slotSecondCondition</a>(<span class="keywordtype">int</span>) ) );
+<a name="l00163"></a>00163 connect( <a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a>, SIGNAL( textChanged(<span class="keyword">const</span> QString&amp;) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#e8364f54ae44a0dec8eb45507bb27a4e">slotMatch2Changed</a>(<span class="keyword">const</span> QString&amp;) ) );
+<a name="l00164"></a>00164 connect( <a class="code" href="classFilterEntryDlg.html#d798b24cd1ba45d07060cd195913975b">_buttonResetCounter</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#7b5730ba9c68fe302b94d1a5cb9fc36e">slotResetCounter</a>() ) );
+<a name="l00165"></a>00165 connect( <a class="code" href="classFilterEntryDlg.html#efe66d0f49d6a04c504811c048317195">_spinCounter</a>, SIGNAL( valueChanged(<span class="keywordtype">int</span>) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#141a535ba5c80f39bf1581171d311a4a">slotCounterChanged</a>(<span class="keywordtype">int</span>) ) );
+<a name="l00166"></a>00166 connect( <a class="code" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">_buttonEditRegExp1</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#c730f1ac327348c2062c562325b034cc">slotEditRegExp1</a>() ) );
+<a name="l00167"></a>00167 connect( <a class="code" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">_buttonEditRegExp2</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#50acb364bd9a5fb31aaa5811794925f4">slotEditRegExp2</a>() ) );
+<a name="l00168"></a>00168 connect( <a class="code" href="classFilterEntryDlg.html#b484e56fe6fd6fa210ac549e17dac0c3">_checkRegExp1</a>, SIGNAL( toggled(<span class="keywordtype">bool</span>) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#8ec3aa42606455c31727af7a1a2c45a8">slotToggleRegExp1</a>(<span class="keywordtype">bool</span>) ) );
+<a name="l00169"></a>00169 connect( <a class="code" href="classFilterEntryDlg.html#b9f3d81d53edd0c0dbae49810b8a70cb">_checkRegExp2</a>, SIGNAL( toggled(<span class="keywordtype">bool</span>) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classFilterEntryDlg.html#077268601f80f5394ca7133b834709ed">slotToggleRegExp2</a>(<span class="keywordtype">bool</span>) ) );
+<a name="l00170"></a>00170
+<a name="l00171"></a>00171 <span class="comment">// tab order</span>
+<a name="l00172"></a>00172 setTabOrder( <a class="code" href="classFilterEntryDlg.html#02b245962b1424e9294d6bf8442a4b38">m_ButtonOk</a>, <a class="code" href="classFilterEntryDlg.html#fcec9c8c312b2830616c2de12f0c8355">m_ButtonCancel</a> );
+<a name="l00173"></a>00173 }
+<a name="l00174"></a>00174
+<a name="l00175"></a>00175 <span class="comment">/*</span>
+<a name="l00176"></a>00176 <span class="comment"> * Destroys the object and frees any allocated resources</span>
+<a name="l00177"></a>00177 <span class="comment"> */</span>
+<a name="l00178"></a><a class="code" href="classFilterEntryDlg.html#4ae287b415afeba0a50ea57eb4fe83e2">00178</a> <a class="code" href="classFilterEntryDlg.html#4ae287b415afeba0a50ea57eb4fe83e2">FilterEntryDlg::~FilterEntryDlg</a>()
+<a name="l00179"></a>00179 {
+<a name="l00180"></a>00180 <span class="comment">// no need to delete child widgets, Qt does it all for us</span>
+<a name="l00181"></a>00181 }
+<a name="l00182"></a>00182
+<a name="l00183"></a>00183 <span class="comment">/*</span>
+<a name="l00184"></a>00184 <span class="comment"> * Sets the strings of the subwidgets using the current</span>
+<a name="l00185"></a>00185 <span class="comment"> * language.</span>
+<a name="l00186"></a>00186 <span class="comment"> */</span>
+<a name="l00187"></a><a class="code" href="classFilterEntryDlg.html#5724b2b390362ebab6b38d3f99ac689c">00187</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#5724b2b390362ebab6b38d3f99ac689c">FilterEntryDlg::languageChange</a>()
+<a name="l00188"></a>00188 {
+<a name="l00189"></a>00189 setCaption( tr2i18n( <span class="stringliteral">"Filter"</span> ) );
+<a name="l00190"></a>00190 <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>-&gt;setTitle( tr2i18n( <span class="stringliteral">"Condition"</span> ) );
+<a name="l00191"></a>00191 <a class="code" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a>-&gt;clear();
+<a name="l00192"></a>00192 <a class="code" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"From"</span> ) );
+<a name="l00193"></a>00193 <a class="code" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Subject"</span> ) );
+<a name="l00194"></a>00194 <a class="code" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Header"</span> ) );
+<a name="l00195"></a>00195 <a class="code" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Size"</span> ) );
+<a name="l00196"></a>00196 <a class="code" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"To"</span> ) );
+<a name="l00197"></a>00197 <a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a>-&gt;clear();
+<a name="l00198"></a>00198 <a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Contains"</span> ) );
+<a name="l00199"></a>00199 <a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Doesn't contain"</span> ) );
+<a name="l00200"></a>00200 <a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Equals"</span> ) );
+<a name="l00201"></a>00201 <a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Doesn't equal"</span> ) );
+<a name="l00202"></a>00202 <a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Greater"</span> ) );
+<a name="l00203"></a>00203 <a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Less"</span> ) );
+<a name="l00204"></a>00204 <a class="code" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a>-&gt;clear();
+<a name="l00205"></a>00205 <a class="code" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"No more Conditions"</span> ) );
+<a name="l00206"></a>00206 <a class="code" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"And"</span> ) );
+<a name="l00207"></a>00207 <a class="code" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Or"</span> ) );
+<a name="l00208"></a>00208 <a class="code" href="classFilterEntryDlg.html#21d063a47d1c8dc6d2f1387e36dc0e29">_checkCaseSensitive1</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Case sensitive"</span> ) );
+<a name="l00209"></a>00209 <a class="code" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">_buttonEditRegExp1</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Edit"</span> ) );
+<a name="l00210"></a>00210 QToolTip::add( <a class="code" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">_buttonEditRegExp1</a>, tr2i18n( <span class="stringliteral">"Edit regular expression"</span> ) );
+<a name="l00211"></a>00211 <a class="code" href="classFilterEntryDlg.html#b484e56fe6fd6fa210ac549e17dac0c3">_checkRegExp1</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Regular Expression"</span> ) );
+<a name="l00212"></a>00212 QToolTip::add( <a class="code" href="classFilterEntryDlg.html#b484e56fe6fd6fa210ac549e17dac0c3">_checkRegExp1</a>, tr2i18n( <span class="stringliteral">"For help about regular expressions lookup the Qt documentation"</span> ) );
+<a name="l00213"></a>00213 <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>-&gt;setTitle( tr2i18n( <span class="stringliteral">"second Condition"</span> ) );
+<a name="l00214"></a>00214 <a class="code" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a>-&gt;clear();
+<a name="l00215"></a>00215 <a class="code" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"From"</span> ) );
+<a name="l00216"></a>00216 <a class="code" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Subject"</span> ) );
+<a name="l00217"></a>00217 <a class="code" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Header"</span> ) );
+<a name="l00218"></a>00218 <a class="code" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Size"</span> ) );
+<a name="l00219"></a>00219 <a class="code" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"To"</span> ) );
+<a name="l00220"></a>00220 <a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a>-&gt;clear();
+<a name="l00221"></a>00221 <a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Contains"</span> ) );
+<a name="l00222"></a>00222 <a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Doesn't contain"</span> ) );
+<a name="l00223"></a>00223 <a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Equals"</span> ) );
+<a name="l00224"></a>00224 <a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Doesn't equal"</span> ) );
+<a name="l00225"></a>00225 <a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Greater"</span> ) );
+<a name="l00226"></a>00226 <a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a>-&gt;insertItem( tr2i18n( <span class="stringliteral">"Less"</span> ) );
+<a name="l00227"></a>00227 <a class="code" href="classFilterEntryDlg.html#7bb75b57a7e6026de7a729d3c3e00eb5">_checkCaseSensitive2</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Case sensitive"</span> ) );
+<a name="l00228"></a>00228 <a class="code" href="classFilterEntryDlg.html#b9f3d81d53edd0c0dbae49810b8a70cb">_checkRegExp2</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Regular Expression"</span> ) );
+<a name="l00229"></a>00229 QToolTip::add( <a class="code" href="classFilterEntryDlg.html#b9f3d81d53edd0c0dbae49810b8a70cb">_checkRegExp2</a>, tr2i18n( <span class="stringliteral">"For help about regular expressions lookup the Qt documentation"</span> ) );
+<a name="l00230"></a>00230 <a class="code" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">_buttonEditRegExp2</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Edit"</span> ) );
+<a name="l00231"></a>00231 QToolTip::add( <a class="code" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">_buttonEditRegExp2</a>, tr2i18n( <span class="stringliteral">"Edit regular expression"</span> ) );
+<a name="l00232"></a>00232 <a class="code" href="classFilterEntryDlg.html#02b245962b1424e9294d6bf8442a4b38">m_ButtonOk</a>-&gt;setText( tr2i18n( <span class="stringliteral">"OK"</span> ) );
+<a name="l00233"></a>00233 <a class="code" href="classFilterEntryDlg.html#fcec9c8c312b2830616c2de12f0c8355">m_ButtonCancel</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Cancel"</span> ) );
+<a name="l00234"></a>00234 <a class="code" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a>-&gt;setTitle( tr2i18n( <span class="stringliteral">"Counter"</span> ) );
+<a name="l00235"></a>00235 QToolTip::add( <a class="code" href="classFilterEntryDlg.html#efe66d0f49d6a04c504811c048317195">_spinCounter</a>, tr2i18n( <span class="stringliteral">"&lt;qt&gt;Filters are counted for each automatic deletion;&lt;br&gt;Filters with high counters are listed first&lt;/qt&gt;"</span> ) );
+<a name="l00236"></a>00236 <a class="code" href="classFilterEntryDlg.html#d798b24cd1ba45d07060cd195913975b">_buttonResetCounter</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Reset Counter"</span> ) );
+<a name="l00237"></a>00237 QToolTip::add( <a class="code" href="classFilterEntryDlg.html#d798b24cd1ba45d07060cd195913975b">_buttonResetCounter</a>, tr2i18n( <span class="stringliteral">"&lt;qt&gt;Filters are counted for each automatic deletion;&lt;br&gt;Filters with high counters are listed first&lt;/qt&gt;"</span> ) );
+<a name="l00238"></a>00238 }
+<a name="l00239"></a>00239
+<a name="l00240"></a><a class="code" href="classFilterEntryDlg.html#044b3778968adf3cc1dfb860530871d8">00240</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#044b3778968adf3cc1dfb860530871d8">FilterEntryDlg::slotOk</a>()
+<a name="l00241"></a>00241 {
+<a name="l00242"></a>00242 qWarning( <span class="stringliteral">"FilterEntryDlg::slotOk(): Not implemented yet"</span> );
+<a name="l00243"></a>00243 }
+<a name="l00244"></a>00244
+<a name="l00245"></a><a class="code" href="classFilterEntryDlg.html#4cbdd432ba86f46647b846f301ea0287">00245</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#4cbdd432ba86f46647b846f301ea0287">FilterEntryDlg::slotItem1Selected</a>(<span class="keywordtype">int</span>)
+<a name="l00246"></a>00246 {
+<a name="l00247"></a>00247 qWarning( <span class="stringliteral">"FilterEntryDlg::slotItem1Selected(int): Not implemented yet"</span> );
+<a name="l00248"></a>00248 }
+<a name="l00249"></a>00249
+<a name="l00250"></a><a class="code" href="classFilterEntryDlg.html#1de736a9fada9c574881fa048b97903f">00250</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#1de736a9fada9c574881fa048b97903f">FilterEntryDlg::slotItem2Selected</a>(<span class="keywordtype">int</span>)
+<a name="l00251"></a>00251 {
+<a name="l00252"></a>00252 qWarning( <span class="stringliteral">"FilterEntryDlg::slotItem2Selected(int): Not implemented yet"</span> );
+<a name="l00253"></a>00253 }
+<a name="l00254"></a>00254
+<a name="l00255"></a><a class="code" href="classFilterEntryDlg.html#d32365f2082078acfc3be07d5908f66f">00255</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#d32365f2082078acfc3be07d5908f66f">FilterEntryDlg::slotSecondCondition</a>(<span class="keywordtype">int</span>)
+<a name="l00256"></a>00256 {
+<a name="l00257"></a>00257 qWarning( <span class="stringliteral">"FilterEntryDlg::slotSecondCondition(int): Not implemented yet"</span> );
+<a name="l00258"></a>00258 }
+<a name="l00259"></a>00259
+<a name="l00260"></a><a class="code" href="classFilterEntryDlg.html#97268e12b04d672a98541223f768f906">00260</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#97268e12b04d672a98541223f768f906">FilterEntryDlg::slotCondition1Selected</a>(<span class="keywordtype">int</span>)
+<a name="l00261"></a>00261 {
+<a name="l00262"></a>00262 qWarning( <span class="stringliteral">"FilterEntryDlg::slotCondition1Selected(int): Not implemented yet"</span> );
+<a name="l00263"></a>00263 }
+<a name="l00264"></a>00264
+<a name="l00265"></a><a class="code" href="classFilterEntryDlg.html#6ac10e19c5dd00efd78ec6dc55e872c3">00265</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#6ac10e19c5dd00efd78ec6dc55e872c3">FilterEntryDlg::slotCondition2Selected</a>(<span class="keywordtype">int</span>)
+<a name="l00266"></a>00266 {
+<a name="l00267"></a>00267 qWarning( <span class="stringliteral">"FilterEntryDlg::slotCondition2Selected(int): Not implemented yet"</span> );
+<a name="l00268"></a>00268 }
+<a name="l00269"></a>00269
+<a name="l00270"></a><a class="code" href="classFilterEntryDlg.html#05d5272687ede82a6bc27d57df7e03af">00270</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#05d5272687ede82a6bc27d57df7e03af">FilterEntryDlg::slotMatch1Changed</a>(<span class="keyword">const</span> QString&amp;)
+<a name="l00271"></a>00271 {
+<a name="l00272"></a>00272 qWarning( <span class="stringliteral">"FilterEntryDlg::slotMatch1Changed(const QString&amp;): Not implemented yet"</span> );
+<a name="l00273"></a>00273 }
+<a name="l00274"></a>00274
+<a name="l00275"></a><a class="code" href="classFilterEntryDlg.html#e8364f54ae44a0dec8eb45507bb27a4e">00275</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#e8364f54ae44a0dec8eb45507bb27a4e">FilterEntryDlg::slotMatch2Changed</a>(<span class="keyword">const</span> QString&amp;)
+<a name="l00276"></a>00276 {
+<a name="l00277"></a>00277 qWarning( <span class="stringliteral">"FilterEntryDlg::slotMatch2Changed(const QString&amp;): Not implemented yet"</span> );
+<a name="l00278"></a>00278 }
+<a name="l00279"></a>00279
+<a name="l00280"></a><a class="code" href="classFilterEntryDlg.html#7b5730ba9c68fe302b94d1a5cb9fc36e">00280</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#7b5730ba9c68fe302b94d1a5cb9fc36e">FilterEntryDlg::slotResetCounter</a>()
+<a name="l00281"></a>00281 {
+<a name="l00282"></a>00282 qWarning( <span class="stringliteral">"FilterEntryDlg::slotResetCounter(): Not implemented yet"</span> );
+<a name="l00283"></a>00283 }
+<a name="l00284"></a>00284
+<a name="l00285"></a><a class="code" href="classFilterEntryDlg.html#141a535ba5c80f39bf1581171d311a4a">00285</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#141a535ba5c80f39bf1581171d311a4a">FilterEntryDlg::slotCounterChanged</a>(<span class="keywordtype">int</span>)
+<a name="l00286"></a>00286 {
+<a name="l00287"></a>00287 qWarning( <span class="stringliteral">"FilterEntryDlg::slotCounterChanged(int): Not implemented yet"</span> );
+<a name="l00288"></a>00288 }
+<a name="l00289"></a>00289
+<a name="l00290"></a><a class="code" href="classFilterEntryDlg.html#c730f1ac327348c2062c562325b034cc">00290</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#c730f1ac327348c2062c562325b034cc">FilterEntryDlg::slotEditRegExp1</a>()
+<a name="l00291"></a>00291 {
+<a name="l00292"></a>00292 qWarning( <span class="stringliteral">"FilterEntryDlg::slotEditRegExp1(): Not implemented yet"</span> );
+<a name="l00293"></a>00293 }
+<a name="l00294"></a>00294
+<a name="l00295"></a><a class="code" href="classFilterEntryDlg.html#50acb364bd9a5fb31aaa5811794925f4">00295</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#50acb364bd9a5fb31aaa5811794925f4">FilterEntryDlg::slotEditRegExp2</a>()
+<a name="l00296"></a>00296 {
+<a name="l00297"></a>00297 qWarning( <span class="stringliteral">"FilterEntryDlg::slotEditRegExp2(): Not implemented yet"</span> );
+<a name="l00298"></a>00298 }
+<a name="l00299"></a>00299
+<a name="l00300"></a><a class="code" href="classFilterEntryDlg.html#8ec3aa42606455c31727af7a1a2c45a8">00300</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#8ec3aa42606455c31727af7a1a2c45a8">FilterEntryDlg::slotToggleRegExp1</a>(<span class="keywordtype">bool</span>)
+<a name="l00301"></a>00301 {
+<a name="l00302"></a>00302 qWarning( <span class="stringliteral">"FilterEntryDlg::slotToggleRegExp1(bool): Not implemented yet"</span> );
+<a name="l00303"></a>00303 }
+<a name="l00304"></a>00304
+<a name="l00305"></a><a class="code" href="classFilterEntryDlg.html#077268601f80f5394ca7133b834709ed">00305</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#077268601f80f5394ca7133b834709ed">FilterEntryDlg::slotToggleRegExp2</a>(<span class="keywordtype">bool</span>)
+<a name="l00306"></a>00306 {
+<a name="l00307"></a>00307 qWarning( <span class="stringliteral">"FilterEntryDlg::slotToggleRegExp2(bool): Not implemented yet"</span> );
+<a name="l00308"></a>00308 }
+<a name="l00309"></a>00309
+<a name="l00310"></a>00310 <span class="preprocessor">#include "FilterEntryDlg.moc"</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/FilterEntryDlg_8h-source.html b/doc/html/FilterEntryDlg_8h-source.html
new file mode 100644
index 0000000..567cd10
--- /dev/null
+++ b/doc/html/FilterEntryDlg_8h-source.html
@@ -0,0 +1,110 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/FilterEntryDlg.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>FilterEntryDlg.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** Form interface generated from reading ui file './FilterEntryDlg.ui'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Fr Jun 29 22:08:23 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The User Interface Compiler ($Id: FilterEntryDlg_8h-source.html,v 1.10 2007/07/05 17:37:49 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#ifndef FILTERENTRYDLG_H</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#define FILTERENTRYDLG_H</span>
+<a name="l00012"></a>00012 <span class="preprocessor"></span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qdialog.h&gt;</span>
+<a name="l00015"></a>00015
+<a name="l00016"></a>00016 <span class="keyword">class </span>QVBoxLayout;
+<a name="l00017"></a>00017 <span class="keyword">class </span>QHBoxLayout;
+<a name="l00018"></a>00018 <span class="keyword">class </span>QGridLayout;
+<a name="l00019"></a>00019 <span class="keyword">class </span>QSpacerItem;
+<a name="l00020"></a>00020 <span class="keyword">class </span>QLineEdit;
+<a name="l00021"></a>00021 <span class="keyword">class </span>QGroupBox;
+<a name="l00022"></a>00022 <span class="keyword">class </span>QComboBox;
+<a name="l00023"></a>00023 <span class="keyword">class </span>QCheckBox;
+<a name="l00024"></a>00024 <span class="keyword">class </span>QPushButton;
+<a name="l00025"></a>00025 <span class="keyword">class </span>QSpinBox;
+<a name="l00026"></a>00026
+<a name="l00027"></a><a class="code" href="classFilterEntryDlg.html">00027</a> <span class="keyword">class </span><a class="code" href="classFilterEntryDlg.html">FilterEntryDlg</a> : <span class="keyword">public</span> QDialog
+<a name="l00028"></a>00028 {
+<a name="l00029"></a>00029 Q_OBJECT
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031 <span class="keyword">public</span>:
+<a name="l00032"></a>00032 <a class="code" href="classFilterEntryDlg.html#1004374888df731e496fa55652f85cc8">FilterEntryDlg</a>( QWidget* parent = 0, <span class="keyword">const</span> <span class="keywordtype">char</span>* name = 0, <span class="keywordtype">bool</span> modal = FALSE, WFlags fl = 0 );
+<a name="l00033"></a>00033 <a class="code" href="classFilterEntryDlg.html#4ae287b415afeba0a50ea57eb4fe83e2">~FilterEntryDlg</a>();
+<a name="l00034"></a>00034
+<a name="l00035"></a><a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">00035</a> QLineEdit* <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>;
+<a name="l00036"></a><a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">00036</a> QGroupBox* <a class="code" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a>;
+<a name="l00037"></a><a class="code" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">00037</a> QComboBox* <a class="code" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a>;
+<a name="l00038"></a><a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">00038</a> QComboBox* <a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a>;
+<a name="l00039"></a><a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">00039</a> QLineEdit* <a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a>;
+<a name="l00040"></a><a class="code" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">00040</a> QComboBox* <a class="code" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a>;
+<a name="l00041"></a><a class="code" href="classFilterEntryDlg.html#21d063a47d1c8dc6d2f1387e36dc0e29">00041</a> QCheckBox* <a class="code" href="classFilterEntryDlg.html#21d063a47d1c8dc6d2f1387e36dc0e29">_checkCaseSensitive1</a>;
+<a name="l00042"></a><a class="code" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">00042</a> QPushButton* <a class="code" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">_buttonEditRegExp1</a>;
+<a name="l00043"></a><a class="code" href="classFilterEntryDlg.html#b484e56fe6fd6fa210ac549e17dac0c3">00043</a> QCheckBox* <a class="code" href="classFilterEntryDlg.html#b484e56fe6fd6fa210ac549e17dac0c3">_checkRegExp1</a>;
+<a name="l00044"></a><a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">00044</a> QGroupBox* <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>;
+<a name="l00045"></a><a class="code" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">00045</a> QComboBox* <a class="code" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a>;
+<a name="l00046"></a><a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">00046</a> QComboBox* <a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a>;
+<a name="l00047"></a><a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">00047</a> QLineEdit* <a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a>;
+<a name="l00048"></a><a class="code" href="classFilterEntryDlg.html#7bb75b57a7e6026de7a729d3c3e00eb5">00048</a> QCheckBox* <a class="code" href="classFilterEntryDlg.html#7bb75b57a7e6026de7a729d3c3e00eb5">_checkCaseSensitive2</a>;
+<a name="l00049"></a><a class="code" href="classFilterEntryDlg.html#b9f3d81d53edd0c0dbae49810b8a70cb">00049</a> QCheckBox* <a class="code" href="classFilterEntryDlg.html#b9f3d81d53edd0c0dbae49810b8a70cb">_checkRegExp2</a>;
+<a name="l00050"></a><a class="code" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">00050</a> QPushButton* <a class="code" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">_buttonEditRegExp2</a>;
+<a name="l00051"></a><a class="code" href="classFilterEntryDlg.html#02b245962b1424e9294d6bf8442a4b38">00051</a> QPushButton* <a class="code" href="classFilterEntryDlg.html#02b245962b1424e9294d6bf8442a4b38">m_ButtonOk</a>;
+<a name="l00052"></a><a class="code" href="classFilterEntryDlg.html#fcec9c8c312b2830616c2de12f0c8355">00052</a> QPushButton* <a class="code" href="classFilterEntryDlg.html#fcec9c8c312b2830616c2de12f0c8355">m_ButtonCancel</a>;
+<a name="l00053"></a><a class="code" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">00053</a> QGroupBox* <a class="code" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a>;
+<a name="l00054"></a><a class="code" href="classFilterEntryDlg.html#efe66d0f49d6a04c504811c048317195">00054</a> QSpinBox* <a class="code" href="classFilterEntryDlg.html#efe66d0f49d6a04c504811c048317195">_spinCounter</a>;
+<a name="l00055"></a><a class="code" href="classFilterEntryDlg.html#d798b24cd1ba45d07060cd195913975b">00055</a> QPushButton* <a class="code" href="classFilterEntryDlg.html#d798b24cd1ba45d07060cd195913975b">_buttonResetCounter</a>;
+<a name="l00056"></a>00056
+<a name="l00057"></a>00057 <span class="keyword">public</span> slots:
+<a name="l00058"></a>00058 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#044b3778968adf3cc1dfb860530871d8">slotOk</a>();
+<a name="l00059"></a>00059 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#4cbdd432ba86f46647b846f301ea0287">slotItem1Selected</a>(<span class="keywordtype">int</span>);
+<a name="l00060"></a>00060 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#1de736a9fada9c574881fa048b97903f">slotItem2Selected</a>(<span class="keywordtype">int</span>);
+<a name="l00061"></a>00061 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#d32365f2082078acfc3be07d5908f66f">slotSecondCondition</a>(<span class="keywordtype">int</span>);
+<a name="l00062"></a>00062 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#97268e12b04d672a98541223f768f906">slotCondition1Selected</a>(<span class="keywordtype">int</span>);
+<a name="l00063"></a>00063 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#6ac10e19c5dd00efd78ec6dc55e872c3">slotCondition2Selected</a>(<span class="keywordtype">int</span>);
+<a name="l00064"></a>00064 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#05d5272687ede82a6bc27d57df7e03af">slotMatch1Changed</a>(<span class="keyword">const</span> QString&amp;);
+<a name="l00065"></a>00065 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#e8364f54ae44a0dec8eb45507bb27a4e">slotMatch2Changed</a>(<span class="keyword">const</span> QString&amp;);
+<a name="l00066"></a>00066 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#7b5730ba9c68fe302b94d1a5cb9fc36e">slotResetCounter</a>();
+<a name="l00067"></a>00067 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#141a535ba5c80f39bf1581171d311a4a">slotCounterChanged</a>(<span class="keywordtype">int</span>);
+<a name="l00068"></a>00068 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#c730f1ac327348c2062c562325b034cc">slotEditRegExp1</a>();
+<a name="l00069"></a>00069 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#50acb364bd9a5fb31aaa5811794925f4">slotEditRegExp2</a>();
+<a name="l00070"></a>00070 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#8ec3aa42606455c31727af7a1a2c45a8">slotToggleRegExp1</a>(<span class="keywordtype">bool</span>);
+<a name="l00071"></a>00071 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#077268601f80f5394ca7133b834709ed">slotToggleRegExp2</a>(<span class="keywordtype">bool</span>);
+<a name="l00072"></a>00072
+<a name="l00073"></a>00073 <span class="keyword">protected</span>:
+<a name="l00074"></a><a class="code" href="classFilterEntryDlg.html#2b727644e2fcbecf1b0242531d13d8e2">00074</a> QGridLayout* <a class="code" href="classFilterEntryDlg.html#2b727644e2fcbecf1b0242531d13d8e2">FilterEntryDlgLayout</a>;
+<a name="l00075"></a><a class="code" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">00075</a> QGridLayout* <a class="code" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a>;
+<a name="l00076"></a><a class="code" href="classFilterEntryDlg.html#c3575c94fc0110ad322996f9106adfbd">00076</a> QSpacerItem* <a class="code" href="classFilterEntryDlg.html#c3575c94fc0110ad322996f9106adfbd">spacer2</a>;
+<a name="l00077"></a><a class="code" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">00077</a> QGridLayout* <a class="code" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a>;
+<a name="l00078"></a><a class="code" href="classFilterEntryDlg.html#af5dc4eb354581e010c723e889d3853b">00078</a> QSpacerItem* <a class="code" href="classFilterEntryDlg.html#af5dc4eb354581e010c723e889d3853b">spacer3</a>;
+<a name="l00079"></a><a class="code" href="classFilterEntryDlg.html#63750302bdc8c80e1c5a39502d51231d">00079</a> QHBoxLayout* <a class="code" href="classFilterEntryDlg.html#63750302bdc8c80e1c5a39502d51231d">Layout11</a>;
+<a name="l00080"></a><a class="code" href="classFilterEntryDlg.html#cb2a000ac6cfa82b1761b18a659381a7">00080</a> QSpacerItem* <a class="code" href="classFilterEntryDlg.html#cb2a000ac6cfa82b1761b18a659381a7">Spacer17</a>;
+<a name="l00081"></a><a class="code" href="classFilterEntryDlg.html#3c133eaa09b66636dd31b18d5f66e699">00081</a> QHBoxLayout* <a class="code" href="classFilterEntryDlg.html#3c133eaa09b66636dd31b18d5f66e699">groupBox3Layout</a>;
+<a name="l00082"></a>00082
+<a name="l00083"></a>00083 <span class="keyword">protected</span> slots:
+<a name="l00084"></a>00084 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDlg.html#5724b2b390362ebab6b38d3f99ac689c">languageChange</a>();
+<a name="l00085"></a>00085
+<a name="l00086"></a>00086 };
+<a name="l00087"></a>00087
+<a name="l00088"></a>00088 <span class="preprocessor">#endif // FILTERENTRYDLG_H</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/FilterEntryDlg_8moc-source.html b/doc/html/FilterEntryDlg_8moc-source.html
new file mode 100644
index 0000000..20b0617
--- /dev/null
+++ b/doc/html/FilterEntryDlg_8moc-source.html
@@ -0,0 +1,195 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/FilterEntryDlg.moc Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>FilterEntryDlg.moc</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** FilterEntryDlg meta object code from reading C++ file 'FilterEntryDlg.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Fri Jun 29 22:08:54 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: FilterEntryDlg_8moc-source.html,v 1.10 2007/07/05 17:37:49 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "FilterEntryDlg.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *FilterEntryDlg::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"FilterEntryDlg"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *FilterEntryDlg::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_FilterEntryDlg( <span class="stringliteral">"FilterEntryDlg"</span>, &amp;FilterEntryDlg::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString FilterEntryDlg::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"FilterEntryDlg"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString FilterEntryDlg::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"FilterEntryDlg"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* FilterEntryDlg::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = QDialog::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotOk"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_1[] = {
+<a name="l00057"></a>00057 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00058"></a>00058 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotItem1Selected"</span>, 1, param_slot_1 };
+<a name="l00060"></a>00060 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_2[] = {
+<a name="l00061"></a>00061 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00062"></a>00062 };
+<a name="l00063"></a>00063 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_2 = {<span class="stringliteral">"slotItem2Selected"</span>, 1, param_slot_2 };
+<a name="l00064"></a>00064 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_3[] = {
+<a name="l00065"></a>00065 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00066"></a>00066 };
+<a name="l00067"></a>00067 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_3 = {<span class="stringliteral">"slotSecondCondition"</span>, 1, param_slot_3 };
+<a name="l00068"></a>00068 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_4[] = {
+<a name="l00069"></a>00069 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00070"></a>00070 };
+<a name="l00071"></a>00071 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_4 = {<span class="stringliteral">"slotCondition1Selected"</span>, 1, param_slot_4 };
+<a name="l00072"></a>00072 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_5[] = {
+<a name="l00073"></a>00073 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00074"></a>00074 };
+<a name="l00075"></a>00075 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_5 = {<span class="stringliteral">"slotCondition2Selected"</span>, 1, param_slot_5 };
+<a name="l00076"></a>00076 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_6[] = {
+<a name="l00077"></a>00077 { 0, &amp;static_QUType_QString, 0, QUParameter::In }
+<a name="l00078"></a>00078 };
+<a name="l00079"></a>00079 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_6 = {<span class="stringliteral">"slotMatch1Changed"</span>, 1, param_slot_6 };
+<a name="l00080"></a>00080 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_7[] = {
+<a name="l00081"></a>00081 { 0, &amp;static_QUType_QString, 0, QUParameter::In }
+<a name="l00082"></a>00082 };
+<a name="l00083"></a>00083 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_7 = {<span class="stringliteral">"slotMatch2Changed"</span>, 1, param_slot_7 };
+<a name="l00084"></a>00084 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_8 = {<span class="stringliteral">"slotResetCounter"</span>, 0, 0 };
+<a name="l00085"></a>00085 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_9[] = {
+<a name="l00086"></a>00086 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00087"></a>00087 };
+<a name="l00088"></a>00088 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_9 = {<span class="stringliteral">"slotCounterChanged"</span>, 1, param_slot_9 };
+<a name="l00089"></a>00089 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_10 = {<span class="stringliteral">"slotEditRegExp1"</span>, 0, 0 };
+<a name="l00090"></a>00090 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_11 = {<span class="stringliteral">"slotEditRegExp2"</span>, 0, 0 };
+<a name="l00091"></a>00091 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_12[] = {
+<a name="l00092"></a>00092 { 0, &amp;static_QUType_bool, 0, QUParameter::In }
+<a name="l00093"></a>00093 };
+<a name="l00094"></a>00094 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_12 = {<span class="stringliteral">"slotToggleRegExp1"</span>, 1, param_slot_12 };
+<a name="l00095"></a>00095 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_13[] = {
+<a name="l00096"></a>00096 { 0, &amp;static_QUType_bool, 0, QUParameter::In }
+<a name="l00097"></a>00097 };
+<a name="l00098"></a>00098 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_13 = {<span class="stringliteral">"slotToggleRegExp2"</span>, 1, param_slot_13 };
+<a name="l00099"></a>00099 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_14 = {<span class="stringliteral">"languageChange"</span>, 0, 0 };
+<a name="l00100"></a>00100 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00101"></a>00101 { <span class="stringliteral">"slotOk()"</span>, &amp;slot_0, QMetaData::Public },
+<a name="l00102"></a>00102 { <span class="stringliteral">"slotItem1Selected(int)"</span>, &amp;slot_1, QMetaData::Public },
+<a name="l00103"></a>00103 { <span class="stringliteral">"slotItem2Selected(int)"</span>, &amp;slot_2, QMetaData::Public },
+<a name="l00104"></a>00104 { <span class="stringliteral">"slotSecondCondition(int)"</span>, &amp;slot_3, QMetaData::Public },
+<a name="l00105"></a>00105 { <span class="stringliteral">"slotCondition1Selected(int)"</span>, &amp;slot_4, QMetaData::Public },
+<a name="l00106"></a>00106 { <span class="stringliteral">"slotCondition2Selected(int)"</span>, &amp;slot_5, QMetaData::Public },
+<a name="l00107"></a>00107 { <span class="stringliteral">"slotMatch1Changed(const QString&amp;)"</span>, &amp;slot_6, QMetaData::Public },
+<a name="l00108"></a>00108 { <span class="stringliteral">"slotMatch2Changed(const QString&amp;)"</span>, &amp;slot_7, QMetaData::Public },
+<a name="l00109"></a>00109 { <span class="stringliteral">"slotResetCounter()"</span>, &amp;slot_8, QMetaData::Public },
+<a name="l00110"></a>00110 { <span class="stringliteral">"slotCounterChanged(int)"</span>, &amp;slot_9, QMetaData::Public },
+<a name="l00111"></a>00111 { <span class="stringliteral">"slotEditRegExp1()"</span>, &amp;slot_10, QMetaData::Public },
+<a name="l00112"></a>00112 { <span class="stringliteral">"slotEditRegExp2()"</span>, &amp;slot_11, QMetaData::Public },
+<a name="l00113"></a>00113 { <span class="stringliteral">"slotToggleRegExp1(bool)"</span>, &amp;slot_12, QMetaData::Public },
+<a name="l00114"></a>00114 { <span class="stringliteral">"slotToggleRegExp2(bool)"</span>, &amp;slot_13, QMetaData::Public },
+<a name="l00115"></a>00115 { <span class="stringliteral">"languageChange()"</span>, &amp;slot_14, QMetaData::Protected }
+<a name="l00116"></a>00116 };
+<a name="l00117"></a>00117 metaObj = QMetaObject::new_metaobject(
+<a name="l00118"></a>00118 <span class="stringliteral">"FilterEntryDlg"</span>, parentObject,
+<a name="l00119"></a>00119 slot_tbl, 15,
+<a name="l00120"></a>00120 0, 0,
+<a name="l00121"></a>00121 #ifndef QT_NO_PROPERTIES
+<a name="l00122"></a>00122 0, 0,
+<a name="l00123"></a>00123 0, 0,
+<a name="l00124"></a>00124 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00125"></a>00125 0, 0 );
+<a name="l00126"></a>00126 cleanUp_FilterEntryDlg.setMetaObject( metaObj );
+<a name="l00127"></a>00127 <span class="keywordflow">return</span> metaObj;
+<a name="l00128"></a>00128 }
+<a name="l00129"></a>00129
+<a name="l00130"></a>00130 <span class="keywordtype">void</span>* FilterEntryDlg::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00131"></a>00131 {
+<a name="l00132"></a>00132 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"FilterEntryDlg"</span> ) )
+<a name="l00133"></a>00133 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00134"></a>00134 <span class="keywordflow">return</span> QDialog::qt_cast( clname );
+<a name="l00135"></a>00135 }
+<a name="l00136"></a>00136
+<a name="l00137"></a>00137 <span class="keywordtype">bool</span> FilterEntryDlg::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00138"></a>00138 {
+<a name="l00139"></a>00139 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00140"></a>00140 <span class="keywordflow">case</span> 0: <a class="code" href="classFilterEntryDlg.html#044b3778968adf3cc1dfb860530871d8">slotOk</a>(); <span class="keywordflow">break</span>;
+<a name="l00141"></a>00141 <span class="keywordflow">case</span> 1: <a class="code" href="classFilterEntryDlg.html#4cbdd432ba86f46647b846f301ea0287">slotItem1Selected</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00142"></a>00142 <span class="keywordflow">case</span> 2: <a class="code" href="classFilterEntryDlg.html#1de736a9fada9c574881fa048b97903f">slotItem2Selected</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00143"></a>00143 <span class="keywordflow">case</span> 3: <a class="code" href="classFilterEntryDlg.html#d32365f2082078acfc3be07d5908f66f">slotSecondCondition</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00144"></a>00144 <span class="keywordflow">case</span> 4: <a class="code" href="classFilterEntryDlg.html#97268e12b04d672a98541223f768f906">slotCondition1Selected</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00145"></a>00145 <span class="keywordflow">case</span> 5: <a class="code" href="classFilterEntryDlg.html#6ac10e19c5dd00efd78ec6dc55e872c3">slotCondition2Selected</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00146"></a>00146 <span class="keywordflow">case</span> 6: <a class="code" href="classFilterEntryDlg.html#05d5272687ede82a6bc27d57df7e03af">slotMatch1Changed</a>((<span class="keyword">const</span> QString&amp;)static_QUType_QString.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00147"></a>00147 <span class="keywordflow">case</span> 7: <a class="code" href="classFilterEntryDlg.html#e8364f54ae44a0dec8eb45507bb27a4e">slotMatch2Changed</a>((<span class="keyword">const</span> QString&amp;)static_QUType_QString.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00148"></a>00148 <span class="keywordflow">case</span> 8: <a class="code" href="classFilterEntryDlg.html#7b5730ba9c68fe302b94d1a5cb9fc36e">slotResetCounter</a>(); <span class="keywordflow">break</span>;
+<a name="l00149"></a>00149 <span class="keywordflow">case</span> 9: <a class="code" href="classFilterEntryDlg.html#141a535ba5c80f39bf1581171d311a4a">slotCounterChanged</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00150"></a>00150 <span class="keywordflow">case</span> 10: <a class="code" href="classFilterEntryDlg.html#c730f1ac327348c2062c562325b034cc">slotEditRegExp1</a>(); <span class="keywordflow">break</span>;
+<a name="l00151"></a>00151 <span class="keywordflow">case</span> 11: <a class="code" href="classFilterEntryDlg.html#50acb364bd9a5fb31aaa5811794925f4">slotEditRegExp2</a>(); <span class="keywordflow">break</span>;
+<a name="l00152"></a>00152 <span class="keywordflow">case</span> 12: <a class="code" href="classFilterEntryDlg.html#8ec3aa42606455c31727af7a1a2c45a8">slotToggleRegExp1</a>((<span class="keywordtype">bool</span>)static_QUType_bool.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00153"></a>00153 <span class="keywordflow">case</span> 13: <a class="code" href="classFilterEntryDlg.html#077268601f80f5394ca7133b834709ed">slotToggleRegExp2</a>((<span class="keywordtype">bool</span>)static_QUType_bool.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00154"></a>00154 <span class="keywordflow">case</span> 14: <a class="code" href="classFilterEntryDlg.html#5724b2b390362ebab6b38d3f99ac689c">languageChange</a>(); <span class="keywordflow">break</span>;
+<a name="l00155"></a>00155 <span class="keywordflow">default</span>:
+<a name="l00156"></a>00156 <span class="keywordflow">return</span> QDialog::qt_invoke( _id, _o );
+<a name="l00157"></a>00157 }
+<a name="l00158"></a>00158 <span class="keywordflow">return</span> TRUE;
+<a name="l00159"></a>00159 }
+<a name="l00160"></a>00160
+<a name="l00161"></a>00161 <span class="keywordtype">bool</span> FilterEntryDlg::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00162"></a>00162 {
+<a name="l00163"></a>00163 <span class="keywordflow">return</span> QDialog::qt_emit(_id,_o);
+<a name="l00164"></a>00164 }
+<a name="l00165"></a>00165 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00166"></a>00166 <span class="preprocessor"></span>
+<a name="l00167"></a>00167 <span class="keywordtype">bool</span> FilterEntryDlg::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00168"></a>00168 {
+<a name="l00169"></a>00169 <span class="keywordflow">return</span> QDialog::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00170"></a>00170 }
+<a name="l00171"></a>00171
+<a name="l00172"></a>00172 <span class="keywordtype">bool</span> FilterEntryDlg::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00173"></a>00173 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/OptionDlg_8cpp-source.html b/doc/html/OptionDlg_8cpp-source.html
new file mode 100644
index 0000000..116e509
--- /dev/null
+++ b/doc/html/OptionDlg_8cpp-source.html
@@ -0,0 +1,579 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/OptionDlg.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>OptionDlg.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;kdialog.h&gt;</span>
+<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00003"></a>00003 <span class="comment">/****************************************************************************</span>
+<a name="l00004"></a>00004 <span class="comment">** Form implementation generated from reading ui file '/home/kuddel/Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/OptionDlg.ui'</span>
+<a name="l00005"></a>00005 <span class="comment">**</span>
+<a name="l00006"></a>00006 <span class="comment">** Created: Di Mai 15 19:57:54 2007</span>
+<a name="l00007"></a>00007 <span class="comment">** by: The User Interface Compiler ($Id: OptionDlg_8cpp-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00008"></a>00008 <span class="comment">**</span>
+<a name="l00009"></a>00009 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00010"></a>00010 <span class="comment">****************************************************************************/</span>
+<a name="l00011"></a>00011
+<a name="l00012"></a>00012 <span class="preprocessor">#include "OptionDlg.h"</span>
+<a name="l00013"></a>00013
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;qpushbutton.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;qgroupbox.h&gt;</span>
+<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;qlabel.h&gt;</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qcombobox.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qtabwidget.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qwidget.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qcheckbox.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qspinbox.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;qlineedit.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;qlayout.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;qtooltip.h&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;qwhatsthis.h&gt;</span>
+<a name="l00027"></a>00027
+<a name="l00028"></a>00028 <span class="comment">/*</span>
+<a name="l00029"></a>00029 <span class="comment"> * Constructs a OptionDlg as a child of 'parent', with the</span>
+<a name="l00030"></a>00030 <span class="comment"> * name 'name' and widget flags set to 'f'.</span>
+<a name="l00031"></a>00031 <span class="comment"> *</span>
+<a name="l00032"></a>00032 <span class="comment"> * The dialog will by default be modeless, unless you set 'modal' to</span>
+<a name="l00033"></a>00033 <span class="comment"> * TRUE to construct a modal dialog.</span>
+<a name="l00034"></a>00034 <span class="comment"> */</span>
+<a name="l00035"></a><a class="code" href="classOptionDlg.html#05e56abcb224cbcb9c3bae64ba76175a">00035</a> <a class="code" href="classOptionDlg.html#05e56abcb224cbcb9c3bae64ba76175a">OptionDlg::OptionDlg</a>( QWidget* parent, <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">bool</span> modal, WFlags fl )
+<a name="l00036"></a>00036 : QDialog( parent, name, modal, fl )
+<a name="l00037"></a>00037 {
+<a name="l00038"></a>00038 <span class="keywordflow">if</span> ( !name )
+<a name="l00039"></a>00039 setName( <span class="stringliteral">"OptionDlg"</span> );
+<a name="l00040"></a>00040 setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)1, 0, 0, sizePolicy().hasHeightForWidth() ) );
+<a name="l00041"></a>00041 setSizeGripEnabled( FALSE );
+<a name="l00042"></a>00042 <a class="code" href="classOptionDlg.html#f2a78d5c1e7ebdd2074d1cfc2f553cb1">OptionDlgLayout</a> = <span class="keyword">new</span> QVBoxLayout( <span class="keyword">this</span>, 11, 6, <span class="stringliteral">"OptionDlgLayout"</span>);
+<a name="l00043"></a>00043
+<a name="l00044"></a>00044 <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a> = <span class="keyword">new</span> QGroupBox( <span class="keyword">this</span>, <span class="stringliteral">"QGroupBox_1"</span> );
+<a name="l00045"></a>00045 <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>-&gt;setMinimumSize( QSize( 380, 130 ) );
+<a name="l00046"></a>00046 <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>-&gt;setColumnLayout(0, Qt::Vertical );
+<a name="l00047"></a>00047 <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>-&gt;layout()-&gt;setSpacing( 6 );
+<a name="l00048"></a>00048 <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>-&gt;layout()-&gt;setMargin( 11 );
+<a name="l00049"></a>00049 <a class="code" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a> = <span class="keyword">new</span> QGridLayout( <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>-&gt;layout() );
+<a name="l00050"></a>00050 <a class="code" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a>-&gt;setAlignment( Qt::AlignTop );
+<a name="l00051"></a>00051
+<a name="l00052"></a>00052 <a class="code" href="classOptionDlg.html#f2b08f1c9e6b69a9ab60f884da54f89d">QLabel_1</a> = <span class="keyword">new</span> QLabel( <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>, <span class="stringliteral">"QLabel_1"</span> );
+<a name="l00053"></a>00053
+<a name="l00054"></a>00054 <a class="code" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#f2b08f1c9e6b69a9ab60f884da54f89d">QLabel_1</a>, 0, 0 );
+<a name="l00055"></a>00055 <a class="code" href="classOptionDlg.html#169a7100c7f2da97421eb57882e6cdce">spacer4</a> = <span class="keyword">new</span> QSpacerItem( 40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00056"></a>00056 <a class="code" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a>-&gt;addItem( <a class="code" href="classOptionDlg.html#169a7100c7f2da97421eb57882e6cdce">spacer4</a>, 1, 4 );
+<a name="l00057"></a>00057
+<a name="l00058"></a>00058 <a class="code" href="classOptionDlg.html#dcfa5019bacd8a4c7b2a192eed57e973">m_ButtonDelete</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>, <span class="stringliteral">"m_ButtonDelete"</span> );
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <a class="code" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#dcfa5019bacd8a4c7b2a192eed57e973">m_ButtonDelete</a>, 1, 3 );
+<a name="l00061"></a>00061
+<a name="l00062"></a>00062 <a class="code" href="classOptionDlg.html#5827d094ba37dc02388af25cefc1d58a">m_ButtonCopy</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>, <span class="stringliteral">"m_ButtonCopy"</span> );
+<a name="l00063"></a>00063
+<a name="l00064"></a>00064 <a class="code" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#5827d094ba37dc02388af25cefc1d58a">m_ButtonCopy</a>, 1, 2 );
+<a name="l00065"></a>00065
+<a name="l00066"></a>00066 <a class="code" href="classOptionDlg.html#b062f6eafa19f35357e4aed5e050257d">m_ButtonEdit</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>, <span class="stringliteral">"m_ButtonEdit"</span> );
+<a name="l00067"></a>00067
+<a name="l00068"></a>00068 <a class="code" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#b062f6eafa19f35357e4aed5e050257d">m_ButtonEdit</a>, 1, 1 );
+<a name="l00069"></a>00069
+<a name="l00070"></a>00070 <a class="code" href="classOptionDlg.html#f5351545a58dc835af0f6b73f63ca155">m_ButtonAdd</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>, <span class="stringliteral">"m_ButtonAdd"</span> );
+<a name="l00071"></a>00071
+<a name="l00072"></a>00072 <a class="code" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#f5351545a58dc835af0f6b73f63ca155">m_ButtonAdd</a>, 1, 0 );
+<a name="l00073"></a>00073
+<a name="l00074"></a>00074 <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a> = <span class="keyword">new</span> QComboBox( FALSE, <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>, <span class="stringliteral">"m_ComboAccount"</span> );
+<a name="l00075"></a>00075 <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>-&gt;setFocusPolicy( QComboBox::TabFocus );
+<a name="l00076"></a>00076 <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>-&gt;setInsertionPolicy( QComboBox::AtTop );
+<a name="l00077"></a>00077
+<a name="l00078"></a>00078 <a class="code" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>, 0, 0, 1, 3 );
+<a name="l00079"></a>00079 <a class="code" href="classOptionDlg.html#e2a13e9c7b92aaac9bdbe44be32090d9">spacer2</a> = <span class="keyword">new</span> QSpacerItem( 360, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00080"></a>00080 <a class="code" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a>-&gt;addItem( <a class="code" href="classOptionDlg.html#e2a13e9c7b92aaac9bdbe44be32090d9">spacer2</a>, 0, 4 );
+<a name="l00081"></a>00081 <a class="code" href="classOptionDlg.html#f2a78d5c1e7ebdd2074d1cfc2f553cb1">OptionDlgLayout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a> );
+<a name="l00082"></a>00082
+<a name="l00083"></a>00083 <a class="code" href="classOptionDlg.html#57faa9421d4b06b179ad02cd84f77a12">layout3</a> = <span class="keyword">new</span> QVBoxLayout( 0, 0, 6, <span class="stringliteral">"layout3"</span>);
+<a name="l00084"></a>00084
+<a name="l00085"></a>00085 <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a> = <span class="keyword">new</span> QTabWidget( <span class="keyword">this</span>, <span class="stringliteral">"TabWidget2"</span> );
+<a name="l00086"></a>00086 <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>-&gt;setMinimumSize( QSize( 380, 209 ) );
+<a name="l00087"></a>00087
+<a name="l00088"></a>00088 <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a> = <span class="keyword">new</span> QWidget( <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>, <span class="stringliteral">"tab"</span> );
+<a name="l00089"></a>00089 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a> = <span class="keyword">new</span> QGridLayout( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, 1, 1, 11, 6, <span class="stringliteral">"tabLayout"</span>);
+<a name="l00090"></a>00090
+<a name="l00091"></a>00091 <a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"m_CheckSavePassword"</span> );
+<a name="l00092"></a>00092
+<a name="l00093"></a>00093 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a>, 0, 0, 0, 1 );
+<a name="l00094"></a>00094
+<a name="l00095"></a>00095 <a class="code" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">m_CheckStartMinimized</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"m_CheckStartMinimized"</span> );
+<a name="l00096"></a>00096
+<a name="l00097"></a>00097 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">m_CheckStartMinimized</a>, 0, 0, 2, 3 );
+<a name="l00098"></a>00098
+<a name="l00099"></a>00099 <a class="code" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">m_CheckConfirmDelete</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"m_CheckConfirmDelete"</span> );
+<a name="l00100"></a>00100
+<a name="l00101"></a>00101 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">m_CheckConfirmDelete</a>, 1, 1, 0, 1 );
+<a name="l00102"></a>00102
+<a name="l00103"></a>00103 <a class="code" href="classOptionDlg.html#e41bbc238ca8e91941442bb711517fe3">QLabel_2</a> = <span class="keyword">new</span> QLabel( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"QLabel_2"</span> );
+<a name="l00104"></a>00104
+<a name="l00105"></a>00105 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#e41bbc238ca8e91941442bb711517fe3">QLabel_2</a>, 3, 0 );
+<a name="l00106"></a>00106
+<a name="l00107"></a>00107 <a class="code" href="classOptionDlg.html#d57e8e6ba21c3cbe7f31f68635f1c856">QLabel_3</a> = <span class="keyword">new</span> QLabel( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"QLabel_3"</span> );
+<a name="l00108"></a>00108
+<a name="l00109"></a>00109 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#d57e8e6ba21c3cbe7f31f68635f1c856">QLabel_3</a>, 3, 2 );
+<a name="l00110"></a>00110
+<a name="l00111"></a>00111 <a class="code" href="classOptionDlg.html#97584503ba9983d1f0556189a5de3dac">QLabel_6</a> = <span class="keyword">new</span> QLabel( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"QLabel_6"</span> );
+<a name="l00112"></a>00112
+<a name="l00113"></a>00113 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#97584503ba9983d1f0556189a5de3dac">QLabel_6</a>, 4, 0 );
+<a name="l00114"></a>00114
+<a name="l00115"></a>00115 <a class="code" href="classOptionDlg.html#65ee72e62bd25ed5ac2d1e6b1ae46e50">QLabel_4</a> = <span class="keyword">new</span> QLabel( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"QLabel_4"</span> );
+<a name="l00116"></a>00116
+<a name="l00117"></a>00117 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#65ee72e62bd25ed5ac2d1e6b1ae46e50">QLabel_4</a>, 4, 2 );
+<a name="l00118"></a>00118
+<a name="l00119"></a>00119 <a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a> = <span class="keyword">new</span> QSpinBox( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"m_SpinPop3Timer"</span> );
+<a name="l00120"></a>00120 <a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a>-&gt;setMouseTracking( FALSE );
+<a name="l00121"></a>00121 <a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a>-&gt;setFocusPolicy( QSpinBox::StrongFocus );
+<a name="l00122"></a>00122 <a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a>-&gt;setAcceptDrops( FALSE );
+<a name="l00123"></a>00123 <a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a>-&gt;setMaxValue( 300 );
+<a name="l00124"></a>00124
+<a name="l00125"></a>00125 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a>, 4, 1 );
+<a name="l00126"></a>00126
+<a name="l00127"></a>00127 <a class="code" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a> = <span class="keyword">new</span> QSpinBox( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"m_SpinInitTimer"</span> );
+<a name="l00128"></a>00128 <a class="code" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a>-&gt;setFocusPolicy( QSpinBox::StrongFocus );
+<a name="l00129"></a>00129 <a class="code" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a>-&gt;setMaxValue( 120 );
+<a name="l00130"></a>00130
+<a name="l00131"></a>00131 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a>, 3, 1 );
+<a name="l00132"></a>00132
+<a name="l00133"></a>00133 <a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a> = <span class="keyword">new</span> QSpinBox( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"m_SpinIntervalTimer"</span> );
+<a name="l00134"></a>00134 <a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a>-&gt;setFocusPolicy( QSpinBox::StrongFocus );
+<a name="l00135"></a>00135 <a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a>-&gt;setMaxValue( 1440 );
+<a name="l00136"></a>00136
+<a name="l00137"></a>00137 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a>, 3, 3 );
+<a name="l00138"></a>00138
+<a name="l00139"></a>00139 <a class="code" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a> = <span class="keyword">new</span> QSpinBox( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"m_SpinMaxSize"</span> );
+<a name="l00140"></a>00140 <a class="code" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a>-&gt;setFocusPolicy( QSpinBox::StrongFocus );
+<a name="l00141"></a>00141 <a class="code" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a>-&gt;setMaxValue( 9999 );
+<a name="l00142"></a>00142
+<a name="l00143"></a>00143 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a>, 4, 3 );
+<a name="l00144"></a>00144
+<a name="l00145"></a>00145 <a class="code" href="classOptionDlg.html#8fc4bdd8d230a0f5d6ed01cde33e9278">_checkConfirmClose</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"_checkConfirmClose"</span> );
+<a name="l00146"></a>00146
+<a name="l00147"></a>00147 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#8fc4bdd8d230a0f5d6ed01cde33e9278">_checkConfirmClose</a>, 0, 4 );
+<a name="l00148"></a>00148
+<a name="l00149"></a>00149 <a class="code" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"m_CheckKeepNewMail"</span> );
+<a name="l00150"></a>00150
+<a name="l00151"></a>00151 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a>, 1, 1, 2, 3 );
+<a name="l00152"></a>00152
+<a name="l00153"></a>00153 <a class="code" href="classOptionDlg.html#5553bc799edbadb53b00f8c26342cc0e">m_CheckCloseMinimizes</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"m_CheckCloseMinimizes"</span> );
+<a name="l00154"></a>00154
+<a name="l00155"></a>00155 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#5553bc799edbadb53b00f8c26342cc0e">m_CheckCloseMinimizes</a>, 1, 4 );
+<a name="l00156"></a>00156
+<a name="l00157"></a>00157 <a class="code" href="classOptionDlg.html#ae8aaaee5cd4a83d5f7f09d16cb4cdcd">m_CheckMinimizeToTray</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, <span class="stringliteral">"m_CheckMinimizeToTray"</span> );
+<a name="l00158"></a>00158
+<a name="l00159"></a>00159 <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#ae8aaaee5cd4a83d5f7f09d16cb4cdcd">m_CheckMinimizeToTray</a>, 2, 2, 0, 1 );
+<a name="l00160"></a>00160 <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>-&gt;insertTab( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, QString::fromLatin1(<span class="stringliteral">""</span>) );
+<a name="l00161"></a>00161
+<a name="l00162"></a>00162 <a class="code" href="classOptionDlg.html#0526dec363ca38aa071b6d205af2971c">tab_2</a> = <span class="keyword">new</span> QWidget( <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>, <span class="stringliteral">"tab_2"</span> );
+<a name="l00163"></a>00163 <a class="code" href="classOptionDlg.html#6702f780899bc9461d21c29cfb7b4757">tabLayout_2</a> = <span class="keyword">new</span> QHBoxLayout( <a class="code" href="classOptionDlg.html#0526dec363ca38aa071b6d205af2971c">tab_2</a>, 11, 6, <span class="stringliteral">"tabLayout_2"</span>);
+<a name="l00164"></a>00164
+<a name="l00165"></a>00165 <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a> = <span class="keyword">new</span> QGroupBox( <a class="code" href="classOptionDlg.html#0526dec363ca38aa071b6d205af2971c">tab_2</a>, <span class="stringliteral">"GroupBox3"</span> );
+<a name="l00166"></a>00166 <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a>-&gt;setColumnLayout(0, Qt::Vertical );
+<a name="l00167"></a>00167 <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a>-&gt;layout()-&gt;setSpacing( 6 );
+<a name="l00168"></a>00168 <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a>-&gt;layout()-&gt;setMargin( 11 );
+<a name="l00169"></a>00169 <a class="code" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">GroupBox3Layout</a> = <span class="keyword">new</span> QVBoxLayout( <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a>-&gt;layout() );
+<a name="l00170"></a>00170 <a class="code" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">GroupBox3Layout</a>-&gt;setAlignment( Qt::AlignTop );
+<a name="l00171"></a>00171
+<a name="l00172"></a>00172 <a class="code" href="classOptionDlg.html#6379a589358b6110cfa48798a30951ab">m_CheckActive</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a>, <span class="stringliteral">"m_CheckActive"</span> );
+<a name="l00173"></a>00173 <a class="code" href="classOptionDlg.html#6379a589358b6110cfa48798a30951ab">m_CheckActive</a>-&gt;setChecked( TRUE );
+<a name="l00174"></a>00174 <a class="code" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">GroupBox3Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#6379a589358b6110cfa48798a30951ab">m_CheckActive</a> );
+<a name="l00175"></a>00175
+<a name="l00176"></a>00176 <a class="code" href="classOptionDlg.html#1fdb0d9cfac85bbef22d749e40dd9376">m_CheckAccount1</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a>, <span class="stringliteral">"m_CheckAccount1"</span> );
+<a name="l00177"></a>00177 <a class="code" href="classOptionDlg.html#1fdb0d9cfac85bbef22d749e40dd9376">m_CheckAccount1</a>-&gt;setChecked( TRUE );
+<a name="l00178"></a>00178 <a class="code" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">GroupBox3Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#1fdb0d9cfac85bbef22d749e40dd9376">m_CheckAccount1</a> );
+<a name="l00179"></a>00179
+<a name="l00180"></a>00180 <a class="code" href="classOptionDlg.html#b1e0581d2cf52c0337d42bbc898a2fc2">m_CheckServer</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a>, <span class="stringliteral">"m_CheckServer"</span> );
+<a name="l00181"></a>00181 <a class="code" href="classOptionDlg.html#b1e0581d2cf52c0337d42bbc898a2fc2">m_CheckServer</a>-&gt;setChecked( TRUE );
+<a name="l00182"></a>00182 <a class="code" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">GroupBox3Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#b1e0581d2cf52c0337d42bbc898a2fc2">m_CheckServer</a> );
+<a name="l00183"></a>00183
+<a name="l00184"></a>00184 <a class="code" href="classOptionDlg.html#e7595a79588cccd851e00714b0b47d94">m_CheckUser</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a>, <span class="stringliteral">"m_CheckUser"</span> );
+<a name="l00185"></a>00185 <a class="code" href="classOptionDlg.html#e7595a79588cccd851e00714b0b47d94">m_CheckUser</a>-&gt;setChecked( TRUE );
+<a name="l00186"></a>00186 <a class="code" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">GroupBox3Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#e7595a79588cccd851e00714b0b47d94">m_CheckUser</a> );
+<a name="l00187"></a>00187
+<a name="l00188"></a>00188 <a class="code" href="classOptionDlg.html#d20b2cce97a72b706dfb29ddc93f1766">m_CheckMessages</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a>, <span class="stringliteral">"m_CheckMessages"</span> );
+<a name="l00189"></a>00189 <a class="code" href="classOptionDlg.html#d20b2cce97a72b706dfb29ddc93f1766">m_CheckMessages</a>-&gt;setChecked( TRUE );
+<a name="l00190"></a>00190 <a class="code" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">GroupBox3Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#d20b2cce97a72b706dfb29ddc93f1766">m_CheckMessages</a> );
+<a name="l00191"></a>00191
+<a name="l00192"></a>00192 <a class="code" href="classOptionDlg.html#bbd14d7cfd0662a8089e83be0809d46f">m_CheckSize1</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a>, <span class="stringliteral">"m_CheckSize1"</span> );
+<a name="l00193"></a>00193 <a class="code" href="classOptionDlg.html#bbd14d7cfd0662a8089e83be0809d46f">m_CheckSize1</a>-&gt;setChecked( TRUE );
+<a name="l00194"></a>00194 <a class="code" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">GroupBox3Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#bbd14d7cfd0662a8089e83be0809d46f">m_CheckSize1</a> );
+<a name="l00195"></a>00195 <a class="code" href="classOptionDlg.html#6702f780899bc9461d21c29cfb7b4757">tabLayout_2</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a> );
+<a name="l00196"></a>00196
+<a name="l00197"></a>00197 <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a> = <span class="keyword">new</span> QGroupBox( <a class="code" href="classOptionDlg.html#0526dec363ca38aa071b6d205af2971c">tab_2</a>, <span class="stringliteral">"GroupBox2"</span> );
+<a name="l00198"></a>00198 <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)7, 0, 0, <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00199"></a>00199 <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>-&gt;setColumnLayout(0, Qt::Vertical );
+<a name="l00200"></a>00200 <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>-&gt;layout()-&gt;setSpacing( 6 );
+<a name="l00201"></a>00201 <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>-&gt;layout()-&gt;setMargin( 11 );
+<a name="l00202"></a>00202 <a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a> = <span class="keyword">new</span> QVBoxLayout( <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>-&gt;layout() );
+<a name="l00203"></a>00203 <a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a>-&gt;setAlignment( Qt::AlignTop );
+<a name="l00204"></a>00204
+<a name="l00205"></a>00205 <a class="code" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">m_CheckNumber</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>, <span class="stringliteral">"m_CheckNumber"</span> );
+<a name="l00206"></a>00206 <a class="code" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">m_CheckNumber</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)5, 0, 0, <a class="code" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">m_CheckNumber</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00207"></a>00207 <a class="code" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">m_CheckNumber</a>-&gt;setChecked( TRUE );
+<a name="l00208"></a>00208 <a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">m_CheckNumber</a> );
+<a name="l00209"></a>00209
+<a name="l00210"></a>00210 <a class="code" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">m_CheckAccount2</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>, <span class="stringliteral">"m_CheckAccount2"</span> );
+<a name="l00211"></a>00211 <a class="code" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">m_CheckAccount2</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)5, 0, 0, <a class="code" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">m_CheckAccount2</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00212"></a>00212 <a class="code" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">m_CheckAccount2</a>-&gt;setChecked( TRUE );
+<a name="l00213"></a>00213 <a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">m_CheckAccount2</a> );
+<a name="l00214"></a>00214
+<a name="l00215"></a>00215 <a class="code" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">m_CheckFrom</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>, <span class="stringliteral">"m_CheckFrom"</span> );
+<a name="l00216"></a>00216 <a class="code" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">m_CheckFrom</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)5, 0, 0, <a class="code" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">m_CheckFrom</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00217"></a>00217 <a class="code" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">m_CheckFrom</a>-&gt;setChecked( TRUE );
+<a name="l00218"></a>00218 <a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">m_CheckFrom</a> );
+<a name="l00219"></a>00219
+<a name="l00220"></a>00220 <a class="code" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">m_CheckTo</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>, <span class="stringliteral">"m_CheckTo"</span> );
+<a name="l00221"></a>00221 <a class="code" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">m_CheckTo</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)5, 0, 0, <a class="code" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">m_CheckTo</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00222"></a>00222 <a class="code" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">m_CheckTo</a>-&gt;setChecked( TRUE );
+<a name="l00223"></a>00223 <a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">m_CheckTo</a> );
+<a name="l00224"></a>00224
+<a name="l00225"></a>00225 <a class="code" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">m_CheckSubject</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>, <span class="stringliteral">"m_CheckSubject"</span> );
+<a name="l00226"></a>00226 <a class="code" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">m_CheckSubject</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)5, 0, 0, <a class="code" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">m_CheckSubject</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00227"></a>00227 <a class="code" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">m_CheckSubject</a>-&gt;setChecked( TRUE );
+<a name="l00228"></a>00228 <a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">m_CheckSubject</a> );
+<a name="l00229"></a>00229
+<a name="l00230"></a>00230 <a class="code" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">m_CheckDate</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>, <span class="stringliteral">"m_CheckDate"</span> );
+<a name="l00231"></a>00231 <a class="code" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">m_CheckDate</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)5, 0, 0, <a class="code" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">m_CheckDate</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00232"></a>00232 <a class="code" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">m_CheckDate</a>-&gt;setChecked( TRUE );
+<a name="l00233"></a>00233 <a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">m_CheckDate</a> );
+<a name="l00234"></a>00234
+<a name="l00235"></a>00235 <a class="code" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">m_CheckSize2</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>, <span class="stringliteral">"m_CheckSize2"</span> );
+<a name="l00236"></a>00236 <a class="code" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">m_CheckSize2</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)5, 0, 0, <a class="code" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">m_CheckSize2</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00237"></a>00237 <a class="code" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">m_CheckSize2</a>-&gt;setChecked( TRUE );
+<a name="l00238"></a>00238 <a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">m_CheckSize2</a> );
+<a name="l00239"></a>00239
+<a name="l00240"></a>00240 <a class="code" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">m_CheckContent</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>, <span class="stringliteral">"m_CheckContent"</span> );
+<a name="l00241"></a>00241 <a class="code" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">m_CheckContent</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)5, 0, 0, <a class="code" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">m_CheckContent</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00242"></a>00242 <a class="code" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">m_CheckContent</a>-&gt;setChecked( TRUE );
+<a name="l00243"></a>00243 <a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">m_CheckContent</a> );
+<a name="l00244"></a>00244
+<a name="l00245"></a>00245 <a class="code" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">m_CheckState</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>, <span class="stringliteral">"m_CheckState"</span> );
+<a name="l00246"></a>00246 <a class="code" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">m_CheckState</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)1, (QSizePolicy::SizeType)5, 0, 0, <a class="code" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">m_CheckState</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00247"></a>00247 <a class="code" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">m_CheckState</a>-&gt;setChecked( TRUE );
+<a name="l00248"></a>00248 <a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">m_CheckState</a> );
+<a name="l00249"></a>00249 <a class="code" href="classOptionDlg.html#6702f780899bc9461d21c29cfb7b4757">tabLayout_2</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a> );
+<a name="l00250"></a>00250
+<a name="l00251"></a>00251 <a class="code" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">groupBox4</a> = <span class="keyword">new</span> QGroupBox( <a class="code" href="classOptionDlg.html#0526dec363ca38aa071b6d205af2971c">tab_2</a>, <span class="stringliteral">"groupBox4"</span> );
+<a name="l00252"></a>00252 <a class="code" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">groupBox4</a>-&gt;setColumnLayout(0, Qt::Vertical );
+<a name="l00253"></a>00253 <a class="code" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">groupBox4</a>-&gt;layout()-&gt;setSpacing( 6 );
+<a name="l00254"></a>00254 <a class="code" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">groupBox4</a>-&gt;layout()-&gt;setMargin( 11 );
+<a name="l00255"></a>00255 <a class="code" href="classOptionDlg.html#a8ef8d42b1fc85a6f37423ad0bcefcae">groupBox4Layout</a> = <span class="keyword">new</span> QVBoxLayout( <a class="code" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">groupBox4</a>-&gt;layout() );
+<a name="l00256"></a>00256 <a class="code" href="classOptionDlg.html#a8ef8d42b1fc85a6f37423ad0bcefcae">groupBox4Layout</a>-&gt;setAlignment( Qt::AlignTop );
+<a name="l00257"></a>00257
+<a name="l00258"></a>00258 <a class="code" href="classOptionDlg.html#822eac789cfdbe481591d6a14b250571">m_checkHTML</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">groupBox4</a>, <span class="stringliteral">"m_checkHTML"</span> );
+<a name="l00259"></a>00259 <a class="code" href="classOptionDlg.html#a8ef8d42b1fc85a6f37423ad0bcefcae">groupBox4Layout</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#822eac789cfdbe481591d6a14b250571">m_checkHTML</a> );
+<a name="l00260"></a>00260 <a class="code" href="classOptionDlg.html#6702f780899bc9461d21c29cfb7b4757">tabLayout_2</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">groupBox4</a> );
+<a name="l00261"></a>00261 <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>-&gt;insertTab( <a class="code" href="classOptionDlg.html#0526dec363ca38aa071b6d205af2971c">tab_2</a>, QString::fromLatin1(<span class="stringliteral">""</span>) );
+<a name="l00262"></a>00262
+<a name="l00263"></a>00263 <a class="code" href="classOptionDlg.html#e5718ae6060503e26fe6ddc1dbb9d080">tab_3</a> = <span class="keyword">new</span> QWidget( <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>, <span class="stringliteral">"tab_3"</span> );
+<a name="l00264"></a>00264 <a class="code" href="classOptionDlg.html#61664d27d32355fab76184bb47adf86a">tabLayout_3</a> = <span class="keyword">new</span> QVBoxLayout( <a class="code" href="classOptionDlg.html#e5718ae6060503e26fe6ddc1dbb9d080">tab_3</a>, 11, 6, <span class="stringliteral">"tabLayout_3"</span>);
+<a name="l00265"></a>00265
+<a name="l00266"></a>00266 <a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#e5718ae6060503e26fe6ddc1dbb9d080">tab_3</a>, <span class="stringliteral">"m_CheckMinimizeNoMail"</span> );
+<a name="l00267"></a>00267 <a class="code" href="classOptionDlg.html#61664d27d32355fab76184bb47adf86a">tabLayout_3</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a> );
+<a name="l00268"></a>00268
+<a name="l00269"></a>00269 <a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#e5718ae6060503e26fe6ddc1dbb9d080">tab_3</a>, <span class="stringliteral">"m_CheckTerminateNoMail"</span> );
+<a name="l00270"></a>00270 <a class="code" href="classOptionDlg.html#61664d27d32355fab76184bb47adf86a">tabLayout_3</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a> );
+<a name="l00271"></a>00271 <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>-&gt;insertTab( <a class="code" href="classOptionDlg.html#e5718ae6060503e26fe6ddc1dbb9d080">tab_3</a>, QString::fromLatin1(<span class="stringliteral">""</span>) );
+<a name="l00272"></a>00272
+<a name="l00273"></a>00273 <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a> = <span class="keyword">new</span> QWidget( <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>, <span class="stringliteral">"tab_4"</span> );
+<a name="l00274"></a>00274 <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a> = <span class="keyword">new</span> QGridLayout( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, 1, 1, 11, 6, <span class="stringliteral">"tabLayout_4"</span>);
+<a name="l00275"></a>00275
+<a name="l00276"></a>00276 <a class="code" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">m_CheckBeep</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, <span class="stringliteral">"m_CheckBeep"</span> );
+<a name="l00277"></a>00277
+<a name="l00278"></a>00278 <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">m_CheckBeep</a>, 0, 0, 2, 3 );
+<a name="l00279"></a>00279
+<a name="l00280"></a>00280 <a class="code" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">m_CheckShowMainWindow</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, <span class="stringliteral">"m_CheckShowMainWindow"</span> );
+<a name="l00281"></a>00281
+<a name="l00282"></a>00282 <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">m_CheckShowMainWindow</a>, 1, 1, 0, 1 );
+<a name="l00283"></a>00283
+<a name="l00284"></a>00284 <a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, <span class="stringliteral">"m_CheckSound"</span> );
+<a name="l00285"></a>00285
+<a name="l00286"></a>00286 <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a>, 1, 1, 2, 3 );
+<a name="l00287"></a>00287
+<a name="l00288"></a>00288 <a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, <span class="stringliteral">"m_CheckExternalProg"</span> );
+<a name="l00289"></a>00289
+<a name="l00290"></a>00290 <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a>, 2, 2, 0, 1 );
+<a name="l00291"></a>00291
+<a name="l00292"></a>00292 <a class="code" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, <span class="stringliteral">"m_ButtonSelectSoundFile"</span> );
+<a name="l00293"></a>00293
+<a name="l00294"></a>00294 <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a>, 3, 0 );
+<a name="l00295"></a>00295
+<a name="l00296"></a>00296 <a class="code" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, <span class="stringliteral">"m_ButtonSoundTest"</span> );
+<a name="l00297"></a>00297
+<a name="l00298"></a>00298 <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a>, 3, 3 );
+<a name="l00299"></a>00299
+<a name="l00300"></a>00300 <a class="code" href="classOptionDlg.html#5adabd2b563e6c382e0f578ca2cfd113">QLabel_5</a> = <span class="keyword">new</span> QLabel( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, <span class="stringliteral">"QLabel_5"</span> );
+<a name="l00301"></a>00301
+<a name="l00302"></a>00302 <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#5adabd2b563e6c382e0f578ca2cfd113">QLabel_5</a>, 4, 0 );
+<a name="l00303"></a>00303
+<a name="l00304"></a>00304 <a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a> = <span class="keyword">new</span> QComboBox( FALSE, <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, <span class="stringliteral">"m_ComboExternalProg"</span> );
+<a name="l00305"></a>00305 <a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a>-&gt;setInsertionPolicy( QComboBox::AtTop );
+<a name="l00306"></a>00306
+<a name="l00307"></a>00307 <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a>, 4, 4, 1, 2 );
+<a name="l00308"></a>00308
+<a name="l00309"></a>00309 <a class="code" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a> = <span class="keyword">new</span> QPushButton( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, <span class="stringliteral">"m_ButtonExternalProgTest"</span> );
+<a name="l00310"></a>00310
+<a name="l00311"></a>00311 <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a>, 4, 3 );
+<a name="l00312"></a>00312
+<a name="l00313"></a>00313 <a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a> = <span class="keyword">new</span> QLineEdit( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, <span class="stringliteral">"m_EditSoundFile"</span> );
+<a name="l00314"></a>00314
+<a name="l00315"></a>00315 <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a>, 3, 3, 1, 2 );
+<a name="l00316"></a>00316
+<a name="l00317"></a>00317 <a class="code" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">m_CheckShowMessagebox</a> = <span class="keyword">new</span> QCheckBox( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, <span class="stringliteral">"m_CheckShowMessagebox"</span> );
+<a name="l00318"></a>00318
+<a name="l00319"></a>00319 <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a>-&gt;addMultiCellWidget( <a class="code" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">m_CheckShowMessagebox</a>, 0, 0, 0, 1 );
+<a name="l00320"></a>00320 <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>-&gt;insertTab( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, QString::fromLatin1(<span class="stringliteral">""</span>) );
+<a name="l00321"></a>00321 <a class="code" href="classOptionDlg.html#57faa9421d4b06b179ad02cd84f77a12">layout3</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a> );
+<a name="l00322"></a>00322
+<a name="l00323"></a>00323 <a class="code" href="classOptionDlg.html#a96e74ece6336c05e03376af33f5269c">layout2</a> = <span class="keyword">new</span> QHBoxLayout( 0, 0, 6, <span class="stringliteral">"layout2"</span>);
+<a name="l00324"></a>00324 <a class="code" href="classOptionDlg.html#f6170350191d444f72418d6484f4ea19">Spacer70</a> = <span class="keyword">new</span> QSpacerItem( 477, 16, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00325"></a>00325 <a class="code" href="classOptionDlg.html#a96e74ece6336c05e03376af33f5269c">layout2</a>-&gt;addItem( <a class="code" href="classOptionDlg.html#f6170350191d444f72418d6484f4ea19">Spacer70</a> );
+<a name="l00326"></a>00326
+<a name="l00327"></a>00327 <a class="code" href="classOptionDlg.html#8ceb133b8b4ccd071329112b7fa9181a">m_ButtonOk</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"m_ButtonOk"</span> );
+<a name="l00328"></a>00328 <a class="code" href="classOptionDlg.html#a96e74ece6336c05e03376af33f5269c">layout2</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#8ceb133b8b4ccd071329112b7fa9181a">m_ButtonOk</a> );
+<a name="l00329"></a>00329
+<a name="l00330"></a>00330 <a class="code" href="classOptionDlg.html#e1d3b44701644711f98f32b4bae8db92">m_ButtonCancel</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"m_ButtonCancel"</span> );
+<a name="l00331"></a>00331 <a class="code" href="classOptionDlg.html#a96e74ece6336c05e03376af33f5269c">layout2</a>-&gt;addWidget( <a class="code" href="classOptionDlg.html#e1d3b44701644711f98f32b4bae8db92">m_ButtonCancel</a> );
+<a name="l00332"></a>00332 <a class="code" href="classOptionDlg.html#57faa9421d4b06b179ad02cd84f77a12">layout3</a>-&gt;addLayout( <a class="code" href="classOptionDlg.html#a96e74ece6336c05e03376af33f5269c">layout2</a> );
+<a name="l00333"></a>00333 <a class="code" href="classOptionDlg.html#f2a78d5c1e7ebdd2074d1cfc2f553cb1">OptionDlgLayout</a>-&gt;addLayout( <a class="code" href="classOptionDlg.html#57faa9421d4b06b179ad02cd84f77a12">layout3</a> );
+<a name="l00334"></a>00334 <a class="code" href="classOptionDlg.html#faff39abb53603d21e94af1bcbc04a9c">languageChange</a>();
+<a name="l00335"></a>00335 resize( QSize(554, 566).expandedTo(minimumSizeHint()) );
+<a name="l00336"></a>00336 clearWState( WState_Polished );
+<a name="l00337"></a>00337
+<a name="l00338"></a>00338 <span class="comment">// signals and slots connections</span>
+<a name="l00339"></a>00339 connect( <a class="code" href="classOptionDlg.html#b062f6eafa19f35357e4aed5e050257d">m_ButtonEdit</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classOptionDlg.html#79f5f5a3cfe82b2ab728db889571f790">slotButtonEditClicked</a>() ) );
+<a name="l00340"></a>00340 connect( <a class="code" href="classOptionDlg.html#5827d094ba37dc02388af25cefc1d58a">m_ButtonCopy</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classOptionDlg.html#a308d66d94a9e8f7bb01f95d8d170340">slotButtonCopyClicked</a>() ) );
+<a name="l00341"></a>00341 connect( <a class="code" href="classOptionDlg.html#f5351545a58dc835af0f6b73f63ca155">m_ButtonAdd</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classOptionDlg.html#ddbabac04a2faf257ef1000a817b6dfd">slotButtonAddClicked</a>() ) );
+<a name="l00342"></a>00342 connect( <a class="code" href="classOptionDlg.html#dcfa5019bacd8a4c7b2a192eed57e973">m_ButtonDelete</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classOptionDlg.html#f34d904632a999f09525e4a84a4f4bba">slotButtonDeleteClicked</a>() ) );
+<a name="l00343"></a>00343 connect( <a class="code" href="classOptionDlg.html#e1d3b44701644711f98f32b4bae8db92">m_ButtonCancel</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( reject() ) );
+<a name="l00344"></a>00344 connect( <a class="code" href="classOptionDlg.html#8ceb133b8b4ccd071329112b7fa9181a">m_ButtonOk</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( accept() ) );
+<a name="l00345"></a>00345 connect( <a class="code" href="classOptionDlg.html#8ceb133b8b4ccd071329112b7fa9181a">m_ButtonOk</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classOptionDlg.html#e0ceefbabae4b3a3a27cfb109d613f4d">slotButtonOkClicked</a>() ) );
+<a name="l00346"></a>00346 connect( <a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a>, SIGNAL( toggled(<span class="keywordtype">bool</span>) ), <a class="code" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a>, SLOT( setEnabled(<span class="keywordtype">bool</span>) ) );
+<a name="l00347"></a>00347 connect( <a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a>, SIGNAL( toggled(<span class="keywordtype">bool</span>) ), <a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a>, SLOT( setEnabled(<span class="keywordtype">bool</span>) ) );
+<a name="l00348"></a>00348 connect( <a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a>, SIGNAL( toggled(<span class="keywordtype">bool</span>) ), <a class="code" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a>, SLOT( setEnabled(<span class="keywordtype">bool</span>) ) );
+<a name="l00349"></a>00349 connect( <a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a>, SIGNAL( toggled(<span class="keywordtype">bool</span>) ), <a class="code" href="classOptionDlg.html#5adabd2b563e6c382e0f578ca2cfd113">QLabel_5</a>, SLOT( setEnabled(<span class="keywordtype">bool</span>) ) );
+<a name="l00350"></a>00350 connect( <a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a>, SIGNAL( toggled(<span class="keywordtype">bool</span>) ), <a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a>, SLOT( setEnabled(<span class="keywordtype">bool</span>) ) );
+<a name="l00351"></a>00351 connect( <a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a>, SIGNAL( toggled(<span class="keywordtype">bool</span>) ), <a class="code" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a>, SLOT( setEnabled(<span class="keywordtype">bool</span>) ) );
+<a name="l00352"></a>00352 connect( <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>, SIGNAL( activated(<span class="keywordtype">int</span>) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classOptionDlg.html#8435e876b83edc8727adf3c9522c990d">slotAccountActivated</a>(<span class="keywordtype">int</span>) ) );
+<a name="l00353"></a>00353 connect( <a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classOptionDlg.html#fe059a79c1b5adad4c4b65a54ea7e588">slotSavePasswordToggled</a>() ) );
+<a name="l00354"></a>00354 connect( <a class="code" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classOptionDlg.html#a5c107a0ebaffc5d55a19f15e453f016">slotButtonSelectSoundFile</a>() ) );
+<a name="l00355"></a>00355 connect( <a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classOptionDlg.html#356d143dceae572edfe25c4895d42e99">slotTerminateNoMailClicked</a>() ) );
+<a name="l00356"></a>00356 connect( <a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classOptionDlg.html#d68c949ba426c9e99c3667133e14410b">slotMinimizeNoMailClicked</a>() ) );
+<a name="l00357"></a>00357 connect( <a class="code" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classOptionDlg.html#68ea03d004a5e8dee71731d004765efa">slotSoundTest</a>() ) );
+<a name="l00358"></a>00358 connect( <a class="code" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classOptionDlg.html#6d1e4f6d6bcba2be67cc6d96cf7dce78">slotExternalProgTest</a>() ) );
+<a name="l00359"></a>00359
+<a name="l00360"></a>00360 <span class="comment">// tab order</span>
+<a name="l00361"></a>00361 setTabOrder( <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>, <a class="code" href="classOptionDlg.html#f5351545a58dc835af0f6b73f63ca155">m_ButtonAdd</a> );
+<a name="l00362"></a>00362 setTabOrder( <a class="code" href="classOptionDlg.html#f5351545a58dc835af0f6b73f63ca155">m_ButtonAdd</a>, <a class="code" href="classOptionDlg.html#b062f6eafa19f35357e4aed5e050257d">m_ButtonEdit</a> );
+<a name="l00363"></a>00363 setTabOrder( <a class="code" href="classOptionDlg.html#b062f6eafa19f35357e4aed5e050257d">m_ButtonEdit</a>, <a class="code" href="classOptionDlg.html#5827d094ba37dc02388af25cefc1d58a">m_ButtonCopy</a> );
+<a name="l00364"></a>00364 setTabOrder( <a class="code" href="classOptionDlg.html#5827d094ba37dc02388af25cefc1d58a">m_ButtonCopy</a>, <a class="code" href="classOptionDlg.html#dcfa5019bacd8a4c7b2a192eed57e973">m_ButtonDelete</a> );
+<a name="l00365"></a>00365 setTabOrder( <a class="code" href="classOptionDlg.html#dcfa5019bacd8a4c7b2a192eed57e973">m_ButtonDelete</a>, <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a> );
+<a name="l00366"></a>00366 setTabOrder( <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>, <a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a> );
+<a name="l00367"></a>00367 setTabOrder( <a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a>, <a class="code" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">m_CheckStartMinimized</a> );
+<a name="l00368"></a>00368 setTabOrder( <a class="code" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">m_CheckStartMinimized</a>, <a class="code" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">m_CheckConfirmDelete</a> );
+<a name="l00369"></a>00369 setTabOrder( <a class="code" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">m_CheckConfirmDelete</a>, <a class="code" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a> );
+<a name="l00370"></a>00370 setTabOrder( <a class="code" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a>, <a class="code" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a> );
+<a name="l00371"></a>00371 setTabOrder( <a class="code" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a>, <a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a> );
+<a name="l00372"></a>00372 setTabOrder( <a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a>, <a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a> );
+<a name="l00373"></a>00373 setTabOrder( <a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a>, <a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a> );
+<a name="l00374"></a>00374 setTabOrder( <a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a>, <a class="code" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a> );
+<a name="l00375"></a>00375 setTabOrder( <a class="code" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a>, <a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a> );
+<a name="l00376"></a>00376 setTabOrder( <a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a>, <a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a> );
+<a name="l00377"></a>00377 setTabOrder( <a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a>, <a class="code" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">m_CheckShowMessagebox</a> );
+<a name="l00378"></a>00378 setTabOrder( <a class="code" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">m_CheckShowMessagebox</a>, <a class="code" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">m_CheckShowMainWindow</a> );
+<a name="l00379"></a>00379 setTabOrder( <a class="code" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">m_CheckShowMainWindow</a>, <a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a> );
+<a name="l00380"></a>00380 setTabOrder( <a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a>, <a class="code" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">m_CheckBeep</a> );
+<a name="l00381"></a>00381 setTabOrder( <a class="code" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">m_CheckBeep</a>, <a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a> );
+<a name="l00382"></a>00382 setTabOrder( <a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a>, <a class="code" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a> );
+<a name="l00383"></a>00383 setTabOrder( <a class="code" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a>, <a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a> );
+<a name="l00384"></a>00384 setTabOrder( <a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a>, <a class="code" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a> );
+<a name="l00385"></a>00385 setTabOrder( <a class="code" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a>, <a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a> );
+<a name="l00386"></a>00386 setTabOrder( <a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a>, <a class="code" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a> );
+<a name="l00387"></a>00387 setTabOrder( <a class="code" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a>, <a class="code" href="classOptionDlg.html#8ceb133b8b4ccd071329112b7fa9181a">m_ButtonOk</a> );
+<a name="l00388"></a>00388 setTabOrder( <a class="code" href="classOptionDlg.html#8ceb133b8b4ccd071329112b7fa9181a">m_ButtonOk</a>, <a class="code" href="classOptionDlg.html#e1d3b44701644711f98f32b4bae8db92">m_ButtonCancel</a> );
+<a name="l00389"></a>00389 }
+<a name="l00390"></a>00390
+<a name="l00391"></a>00391 <span class="comment">/*</span>
+<a name="l00392"></a>00392 <span class="comment"> * Destroys the object and frees any allocated resources</span>
+<a name="l00393"></a>00393 <span class="comment"> */</span>
+<a name="l00394"></a><a class="code" href="classOptionDlg.html#cc442307e009b470032fe689ee31ef7e">00394</a> <a class="code" href="classOptionDlg.html#cc442307e009b470032fe689ee31ef7e">OptionDlg::~OptionDlg</a>()
+<a name="l00395"></a>00395 {
+<a name="l00396"></a>00396 <span class="comment">// no need to delete child widgets, Qt does it all for us</span>
+<a name="l00397"></a>00397 }
+<a name="l00398"></a>00398
+<a name="l00399"></a>00399 <span class="comment">/*</span>
+<a name="l00400"></a>00400 <span class="comment"> * Sets the strings of the subwidgets using the current</span>
+<a name="l00401"></a>00401 <span class="comment"> * language.</span>
+<a name="l00402"></a>00402 <span class="comment"> */</span>
+<a name="l00403"></a><a class="code" href="classOptionDlg.html#faff39abb53603d21e94af1bcbc04a9c">00403</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#faff39abb53603d21e94af1bcbc04a9c">OptionDlg::languageChange</a>()
+<a name="l00404"></a>00404 {
+<a name="l00405"></a>00405 setCaption( tr2i18n( <span class="stringliteral">"Options"</span> ) );
+<a name="l00406"></a>00406 <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>-&gt;setTitle( tr2i18n( <span class="stringliteral">"Accounts"</span> ) );
+<a name="l00407"></a>00407 <a class="code" href="classOptionDlg.html#f2b08f1c9e6b69a9ab60f884da54f89d">QLabel_1</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Name:"</span> ) );
+<a name="l00408"></a>00408 QToolTip::add( <a class="code" href="classOptionDlg.html#f2b08f1c9e6b69a9ab60f884da54f89d">QLabel_1</a>, tr2i18n( <span class="stringliteral">"Select a pop3 account"</span> ) );
+<a name="l00409"></a>00409 <a class="code" href="classOptionDlg.html#dcfa5019bacd8a4c7b2a192eed57e973">m_ButtonDelete</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Delete"</span> ) );
+<a name="l00410"></a>00410 QToolTip::add( <a class="code" href="classOptionDlg.html#dcfa5019bacd8a4c7b2a192eed57e973">m_ButtonDelete</a>, tr2i18n( <span class="stringliteral">"Delete account"</span> ) );
+<a name="l00411"></a>00411 <a class="code" href="classOptionDlg.html#5827d094ba37dc02388af25cefc1d58a">m_ButtonCopy</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Cop&amp;y"</span> ) );
+<a name="l00412"></a>00412 QToolTip::add( <a class="code" href="classOptionDlg.html#5827d094ba37dc02388af25cefc1d58a">m_ButtonCopy</a>, tr2i18n( <span class="stringliteral">"copy account"</span> ) );
+<a name="l00413"></a>00413 <a class="code" href="classOptionDlg.html#b062f6eafa19f35357e4aed5e050257d">m_ButtonEdit</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Edit"</span> ) );
+<a name="l00414"></a>00414 QToolTip::add( <a class="code" href="classOptionDlg.html#b062f6eafa19f35357e4aed5e050257d">m_ButtonEdit</a>, tr2i18n( <span class="stringliteral">"Edit account"</span> ) );
+<a name="l00415"></a>00415 <a class="code" href="classOptionDlg.html#f5351545a58dc835af0f6b73f63ca155">m_ButtonAdd</a>-&gt;setText( tr2i18n( <span class="stringliteral">"&amp;Add"</span> ) );
+<a name="l00416"></a>00416 QToolTip::add( <a class="code" href="classOptionDlg.html#f5351545a58dc835af0f6b73f63ca155">m_ButtonAdd</a>, tr2i18n( <span class="stringliteral">"Add new account"</span> ) );
+<a name="l00417"></a>00417 QToolTip::add( <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>, tr2i18n( <span class="stringliteral">"Select a pop3 account"</span> ) );
+<a name="l00418"></a>00418 <a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Save Password"</span> ) );
+<a name="l00419"></a>00419 QToolTip::add( <a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a>, tr2i18n( <span class="stringliteral">"Save password (not recommended !)"</span> ) );
+<a name="l00420"></a>00420 <a class="code" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">m_CheckStartMinimized</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Start Minimi&amp;zed"</span> ) );
+<a name="l00421"></a>00421 QToolTip::add( <a class="code" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">m_CheckStartMinimized</a>, tr2i18n( <span class="stringliteral">"Application is started as icon"</span> ) );
+<a name="l00422"></a>00422 <a class="code" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">m_CheckConfirmDelete</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Confirm delete"</span> ) );
+<a name="l00423"></a>00423 QToolTip::add( <a class="code" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">m_CheckConfirmDelete</a>, tr2i18n( <span class="stringliteral">"If checked, message delete must be confirmed"</span> ) );
+<a name="l00424"></a>00424 <a class="code" href="classOptionDlg.html#e41bbc238ca8e91941442bb711517fe3">QLabel_2</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Initial Timer:"</span> ) );
+<a name="l00425"></a>00425 QToolTip::add( <a class="code" href="classOptionDlg.html#e41bbc238ca8e91941442bb711517fe3">QLabel_2</a>, tr2i18n( <span class="stringliteral">"Seconds until first automatic logon (0 = no automatic)"</span> ) );
+<a name="l00426"></a>00426 <a class="code" href="classOptionDlg.html#d57e8e6ba21c3cbe7f31f68635f1c856">QLabel_3</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Interval Timer:"</span> ) );
+<a name="l00427"></a>00427 QToolTip::add( <a class="code" href="classOptionDlg.html#d57e8e6ba21c3cbe7f31f68635f1c856">QLabel_3</a>, tr2i18n( <span class="stringliteral">"Minutes between automatic logon (0 = no automatic)"</span> ) );
+<a name="l00428"></a>00428 <a class="code" href="classOptionDlg.html#97584503ba9983d1f0556189a5de3dac">QLabel_6</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Pop3 Timer"</span> ) );
+<a name="l00429"></a>00429 QToolTip::add( <a class="code" href="classOptionDlg.html#97584503ba9983d1f0556189a5de3dac">QLabel_6</a>, tr2i18n( <span class="stringliteral">"Pop3 timeout"</span> ) );
+<a name="l00430"></a>00430 <a class="code" href="classOptionDlg.html#65ee72e62bd25ed5ac2d1e6b1ae46e50">QLabel_4</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Max Size:"</span> ) );
+<a name="l00431"></a>00431 QToolTip::add( <a class="code" href="classOptionDlg.html#65ee72e62bd25ed5ac2d1e6b1ae46e50">QLabel_4</a>, tr2i18n( <span class="stringliteral">"Maximal size of downloaded mail body in kilobytes"</span> ) );
+<a name="l00432"></a>00432 QToolTip::add( <a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a>, tr2i18n( <span class="stringliteral">"Pop3 timeout"</span> ) );
+<a name="l00433"></a>00433 QToolTip::add( <a class="code" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a>, tr2i18n( <span class="stringliteral">"Seconds until first automatic logon (0 = no automatic)"</span> ) );
+<a name="l00434"></a>00434 QToolTip::add( <a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a>, tr2i18n( <span class="stringliteral">"Minutes between automatic logon (0 = no automatic)"</span> ) );
+<a name="l00435"></a>00435 QToolTip::add( <a class="code" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a>, tr2i18n( <span class="stringliteral">"Maximal size of downloaded mail body in kilobytes"</span> ) );
+<a name="l00436"></a>00436 <a class="code" href="classOptionDlg.html#8fc4bdd8d230a0f5d6ed01cde33e9278">_checkConfirmClose</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Confirm Close"</span> ) );
+<a name="l00437"></a>00437 <a class="code" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a>-&gt;setText( tr2i18n( <span class="stringliteral">"&amp;Keep mail as new"</span> ) );
+<a name="l00438"></a>00438 <a class="code" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a>-&gt;setAccel( QKeySequence( tr2i18n( <span class="stringliteral">"Alt+K"</span> ) ) );
+<a name="l00439"></a>00439 QToolTip::add( <a class="code" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a>, tr2i18n( <span class="stringliteral">"Keep mail as new until termination"</span> ) );
+<a name="l00440"></a>00440 <a class="code" href="classOptionDlg.html#5553bc799edbadb53b00f8c26342cc0e">m_CheckCloseMinimizes</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Close to tray"</span> ) );
+<a name="l00441"></a>00441 <a class="code" href="classOptionDlg.html#5553bc799edbadb53b00f8c26342cc0e">m_CheckCloseMinimizes</a>-&gt;setAccel( QKeySequence( QString::null ) );
+<a name="l00442"></a>00442 QToolTip::add( <a class="code" href="classOptionDlg.html#5553bc799edbadb53b00f8c26342cc0e">m_CheckCloseMinimizes</a>, tr2i18n( <span class="stringliteral">"Close button leaves the application running in tray"</span> ) );
+<a name="l00443"></a>00443 <a class="code" href="classOptionDlg.html#ae8aaaee5cd4a83d5f7f09d16cb4cdcd">m_CheckMinimizeToTray</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Minimize to tray"</span> ) );
+<a name="l00444"></a>00444 <a class="code" href="classOptionDlg.html#ae8aaaee5cd4a83d5f7f09d16cb4cdcd">m_CheckMinimizeToTray</a>-&gt;setAccel( QKeySequence( QString::null ) );
+<a name="l00445"></a>00445 QToolTip::add( <a class="code" href="classOptionDlg.html#ae8aaaee5cd4a83d5f7f09d16cb4cdcd">m_CheckMinimizeToTray</a>, tr2i18n( <span class="stringliteral">"Minimizes to the tray rather than to the taskbar"</span> ) );
+<a name="l00446"></a>00446 <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>-&gt;changeTab( <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>, tr2i18n( <span class="stringliteral">"&amp;General Options"</span> ) );
+<a name="l00447"></a>00447 <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a>-&gt;setTitle( tr2i18n( <span class="stringliteral">"Account list"</span> ) );
+<a name="l00448"></a>00448 <a class="code" href="classOptionDlg.html#6379a589358b6110cfa48798a30951ab">m_CheckActive</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Active"</span> ) );
+<a name="l00449"></a>00449 <a class="code" href="classOptionDlg.html#1fdb0d9cfac85bbef22d749e40dd9376">m_CheckAccount1</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Account"</span> ) );
+<a name="l00450"></a>00450 <a class="code" href="classOptionDlg.html#b1e0581d2cf52c0337d42bbc898a2fc2">m_CheckServer</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Server"</span> ) );
+<a name="l00451"></a>00451 <a class="code" href="classOptionDlg.html#e7595a79588cccd851e00714b0b47d94">m_CheckUser</a>-&gt;setText( tr2i18n( <span class="stringliteral">"User"</span> ) );
+<a name="l00452"></a>00452 <a class="code" href="classOptionDlg.html#d20b2cce97a72b706dfb29ddc93f1766">m_CheckMessages</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Messages"</span> ) );
+<a name="l00453"></a>00453 <a class="code" href="classOptionDlg.html#bbd14d7cfd0662a8089e83be0809d46f">m_CheckSize1</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Si&amp;ze"</span> ) );
+<a name="l00454"></a>00454 <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>-&gt;setTitle( tr2i18n( <span class="stringliteral">"Mail list"</span> ) );
+<a name="l00455"></a>00455 <a class="code" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">m_CheckNumber</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Number"</span> ) );
+<a name="l00456"></a>00456 <a class="code" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">m_CheckAccount2</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Account"</span> ) );
+<a name="l00457"></a>00457 <a class="code" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">m_CheckFrom</a>-&gt;setText( tr2i18n( <span class="stringliteral">"From"</span> ) );
+<a name="l00458"></a>00458 <a class="code" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">m_CheckTo</a>-&gt;setText( tr2i18n( <span class="stringliteral">"To"</span> ) );
+<a name="l00459"></a>00459 <a class="code" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">m_CheckSubject</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Su&amp;bject"</span> ) );
+<a name="l00460"></a>00460 <a class="code" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">m_CheckDate</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Date"</span> ) );
+<a name="l00461"></a>00461 <a class="code" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">m_CheckSize2</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Size"</span> ) );
+<a name="l00462"></a>00462 <a class="code" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">m_CheckContent</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Content"</span> ) );
+<a name="l00463"></a>00463 <a class="code" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">m_CheckState</a>-&gt;setText( tr2i18n( <span class="stringliteral">"State"</span> ) );
+<a name="l00464"></a>00464 <a class="code" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">groupBox4</a>-&gt;setTitle( tr2i18n( <span class="stringliteral">"Mail content"</span> ) );
+<a name="l00465"></a>00465 <a class="code" href="classOptionDlg.html#822eac789cfdbe481591d6a14b250571">m_checkHTML</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Allow HTML"</span> ) );
+<a name="l00466"></a>00466 <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>-&gt;changeTab( <a class="code" href="classOptionDlg.html#0526dec363ca38aa071b6d205af2971c">tab_2</a>, tr2i18n( <span class="stringliteral">"Display Options"</span> ) );
+<a name="l00467"></a>00467 <a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Minimi&amp;ze"</span> ) );
+<a name="l00468"></a>00468 QToolTip::add( <a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a>, tr2i18n( <span class="stringliteral">"Minimize window if no new mail"</span> ) );
+<a name="l00469"></a>00469 <a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Terminate"</span> ) );
+<a name="l00470"></a>00470 QToolTip::add( <a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a>, tr2i18n( <span class="stringliteral">"Terminate kshowmail if no new mail"</span> ) );
+<a name="l00471"></a>00471 <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>-&gt;changeTab( <a class="code" href="classOptionDlg.html#e5718ae6060503e26fe6ddc1dbb9d080">tab_3</a>, tr2i18n( <span class="stringliteral">"Action if &amp;no mail"</span> ) );
+<a name="l00472"></a>00472 <a class="code" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">m_CheckBeep</a>-&gt;setText( tr2i18n( <span class="stringliteral">"&amp;Beep"</span> ) );
+<a name="l00473"></a>00473 QToolTip::add( <a class="code" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">m_CheckBeep</a>, tr2i18n( <span class="stringliteral">"Beeps the internal speaker if new mail"</span> ) );
+<a name="l00474"></a>00474 <a class="code" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">m_CheckShowMainWindow</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Show main window"</span> ) );
+<a name="l00475"></a>00475 QToolTip::add( <a class="code" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">m_CheckShowMainWindow</a>, tr2i18n( <span class="stringliteral">"Show main window if new mail arrives"</span> ) );
+<a name="l00476"></a>00476 <a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Sound"</span> ) );
+<a name="l00477"></a>00477 QToolTip::add( <a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a>, tr2i18n( <span class="stringliteral">"Plays sound if new mail"</span> ) );
+<a name="l00478"></a>00478 <a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a>-&gt;setText( tr2i18n( <span class="stringliteral">"E&amp;xternal Program"</span> ) );
+<a name="l00479"></a>00479 QToolTip::add( <a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a>, tr2i18n( <span class="stringliteral">"Starts external program if new mail"</span> ) );
+<a name="l00480"></a>00480 <a class="code" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Sound File:"</span> ) );
+<a name="l00481"></a>00481 QToolTip::add( <a class="code" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a>, tr2i18n( <span class="stringliteral">"Press to select sound file"</span> ) );
+<a name="l00482"></a>00482 <a class="code" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Test"</span> ) );
+<a name="l00483"></a>00483 QToolTip::add( <a class="code" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a>, tr2i18n( <span class="stringliteral">"Play the selected sound file"</span> ) );
+<a name="l00484"></a>00484 <a class="code" href="classOptionDlg.html#5adabd2b563e6c382e0f578ca2cfd113">QLabel_5</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Command:"</span> ) );
+<a name="l00485"></a>00485 QToolTip::add( <a class="code" href="classOptionDlg.html#5adabd2b563e6c382e0f578ca2cfd113">QLabel_5</a>, tr2i18n( <span class="stringliteral">"Select external command"</span> ) );
+<a name="l00486"></a>00486 QToolTip::add( <a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a>, tr2i18n( <span class="stringliteral">"Select external command"</span> ) );
+<a name="l00487"></a>00487 <a class="code" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Test"</span> ) );
+<a name="l00488"></a>00488 QToolTip::add( <a class="code" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a>, tr2i18n( <span class="stringliteral">"Start the selected program"</span> ) );
+<a name="l00489"></a>00489 QToolTip::add( <a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a>, tr2i18n( <span class="stringliteral">"Enter sound file"</span> ) );
+<a name="l00490"></a>00490 <a class="code" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">m_CheckShowMessagebox</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Show message box"</span> ) );
+<a name="l00491"></a>00491 QToolTip::add( <a class="code" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">m_CheckShowMessagebox</a>, tr2i18n( <span class="stringliteral">"Show message if new mail arrives"</span> ) );
+<a name="l00492"></a>00492 <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>-&gt;changeTab( <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>, tr2i18n( <span class="stringliteral">"Action if new &amp;mail"</span> ) );
+<a name="l00493"></a>00493 <a class="code" href="classOptionDlg.html#8ceb133b8b4ccd071329112b7fa9181a">m_ButtonOk</a>-&gt;setText( tr2i18n( <span class="stringliteral">"&amp;OK"</span> ) );
+<a name="l00494"></a>00494 <a class="code" href="classOptionDlg.html#e1d3b44701644711f98f32b4bae8db92">m_ButtonCancel</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Cancel"</span> ) );
+<a name="l00495"></a>00495 }
+<a name="l00496"></a>00496
+<a name="l00497"></a><a class="code" href="classOptionDlg.html#6d1e4f6d6bcba2be67cc6d96cf7dce78">00497</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#6d1e4f6d6bcba2be67cc6d96cf7dce78">OptionDlg::slotExternalProgTest</a>()
+<a name="l00498"></a>00498 {
+<a name="l00499"></a>00499 qWarning( <span class="stringliteral">"OptionDlg::slotExternalProgTest(): Not implemented yet"</span> );
+<a name="l00500"></a>00500 }
+<a name="l00501"></a>00501
+<a name="l00502"></a><a class="code" href="classOptionDlg.html#8435e876b83edc8727adf3c9522c990d">00502</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#8435e876b83edc8727adf3c9522c990d">OptionDlg::slotAccountActivated</a>(<span class="keywordtype">int</span>)
+<a name="l00503"></a>00503 {
+<a name="l00504"></a>00504 qWarning( <span class="stringliteral">"OptionDlg::slotAccountActivated(int): Not implemented yet"</span> );
+<a name="l00505"></a>00505 }
+<a name="l00506"></a>00506
+<a name="l00507"></a><a class="code" href="classOptionDlg.html#ddbabac04a2faf257ef1000a817b6dfd">00507</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#ddbabac04a2faf257ef1000a817b6dfd">OptionDlg::slotButtonAddClicked</a>()
+<a name="l00508"></a>00508 {
+<a name="l00509"></a>00509 qWarning( <span class="stringliteral">"OptionDlg::slotButtonAddClicked(): Not implemented yet"</span> );
+<a name="l00510"></a>00510 }
+<a name="l00511"></a>00511
+<a name="l00512"></a><a class="code" href="classOptionDlg.html#a308d66d94a9e8f7bb01f95d8d170340">00512</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#a308d66d94a9e8f7bb01f95d8d170340">OptionDlg::slotButtonCopyClicked</a>()
+<a name="l00513"></a>00513 {
+<a name="l00514"></a>00514 qWarning( <span class="stringliteral">"OptionDlg::slotButtonCopyClicked(): Not implemented yet"</span> );
+<a name="l00515"></a>00515 }
+<a name="l00516"></a>00516
+<a name="l00517"></a><a class="code" href="classOptionDlg.html#f34d904632a999f09525e4a84a4f4bba">00517</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#f34d904632a999f09525e4a84a4f4bba">OptionDlg::slotButtonDeleteClicked</a>()
+<a name="l00518"></a>00518 {
+<a name="l00519"></a>00519 qWarning( <span class="stringliteral">"OptionDlg::slotButtonDeleteClicked(): Not implemented yet"</span> );
+<a name="l00520"></a>00520 }
+<a name="l00521"></a>00521
+<a name="l00522"></a><a class="code" href="classOptionDlg.html#79f5f5a3cfe82b2ab728db889571f790">00522</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#79f5f5a3cfe82b2ab728db889571f790">OptionDlg::slotButtonEditClicked</a>()
+<a name="l00523"></a>00523 {
+<a name="l00524"></a>00524 qWarning( <span class="stringliteral">"OptionDlg::slotButtonEditClicked(): Not implemented yet"</span> );
+<a name="l00525"></a>00525 }
+<a name="l00526"></a>00526
+<a name="l00527"></a><a class="code" href="classOptionDlg.html#e0ceefbabae4b3a3a27cfb109d613f4d">00527</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#e0ceefbabae4b3a3a27cfb109d613f4d">OptionDlg::slotButtonOkClicked</a>()
+<a name="l00528"></a>00528 {
+<a name="l00529"></a>00529 qWarning( <span class="stringliteral">"OptionDlg::slotButtonOkClicked(): Not implemented yet"</span> );
+<a name="l00530"></a>00530 }
+<a name="l00531"></a>00531
+<a name="l00532"></a><a class="code" href="classOptionDlg.html#a5c107a0ebaffc5d55a19f15e453f016">00532</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#a5c107a0ebaffc5d55a19f15e453f016">OptionDlg::slotButtonSelectSoundFile</a>()
+<a name="l00533"></a>00533 {
+<a name="l00534"></a>00534 qWarning( <span class="stringliteral">"OptionDlg::slotButtonSelectSoundFile(): Not implemented yet"</span> );
+<a name="l00535"></a>00535 }
+<a name="l00536"></a>00536
+<a name="l00537"></a><a class="code" href="classOptionDlg.html#d68c949ba426c9e99c3667133e14410b">00537</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#d68c949ba426c9e99c3667133e14410b">OptionDlg::slotMinimizeNoMailClicked</a>()
+<a name="l00538"></a>00538 {
+<a name="l00539"></a>00539 qWarning( <span class="stringliteral">"OptionDlg::slotMinimizeNoMailClicked(): Not implemented yet"</span> );
+<a name="l00540"></a>00540 }
+<a name="l00541"></a>00541
+<a name="l00542"></a><a class="code" href="classOptionDlg.html#fe059a79c1b5adad4c4b65a54ea7e588">00542</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#fe059a79c1b5adad4c4b65a54ea7e588">OptionDlg::slotSavePasswordToggled</a>()
+<a name="l00543"></a>00543 {
+<a name="l00544"></a>00544 qWarning( <span class="stringliteral">"OptionDlg::slotSavePasswordToggled(): Not implemented yet"</span> );
+<a name="l00545"></a>00545 }
+<a name="l00546"></a>00546
+<a name="l00547"></a><a class="code" href="classOptionDlg.html#68ea03d004a5e8dee71731d004765efa">00547</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#68ea03d004a5e8dee71731d004765efa">OptionDlg::slotSoundTest</a>()
+<a name="l00548"></a>00548 {
+<a name="l00549"></a>00549 qWarning( <span class="stringliteral">"OptionDlg::slotSoundTest(): Not implemented yet"</span> );
+<a name="l00550"></a>00550 }
+<a name="l00551"></a>00551
+<a name="l00552"></a><a class="code" href="classOptionDlg.html#356d143dceae572edfe25c4895d42e99">00552</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#356d143dceae572edfe25c4895d42e99">OptionDlg::slotTerminateNoMailClicked</a>()
+<a name="l00553"></a>00553 {
+<a name="l00554"></a>00554 qWarning( <span class="stringliteral">"OptionDlg::slotTerminateNoMailClicked(): Not implemented yet"</span> );
+<a name="l00555"></a>00555 }
+<a name="l00556"></a>00556
+<a name="l00557"></a>00557 <span class="preprocessor">#include "OptionDlg.moc"</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/OptionDlg_8h-source.html b/doc/html/OptionDlg_8h-source.html
new file mode 100644
index 0000000..45d75fb
--- /dev/null
+++ b/doc/html/OptionDlg_8h-source.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/OptionDlg.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>OptionDlg.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** Form interface generated from reading ui file '/home/kuddel/Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/OptionDlg.ui'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Di Mai 15 19:57:53 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The User Interface Compiler ($Id: OptionDlg_8h-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#ifndef OPTIONDLG_H</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#define OPTIONDLG_H</span>
+<a name="l00012"></a>00012 <span class="preprocessor"></span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qdialog.h&gt;</span>
+<a name="l00015"></a>00015
+<a name="l00016"></a>00016 <span class="keyword">class </span>QVBoxLayout;
+<a name="l00017"></a>00017 <span class="keyword">class </span>QHBoxLayout;
+<a name="l00018"></a>00018 <span class="keyword">class </span>QGridLayout;
+<a name="l00019"></a>00019 <span class="keyword">class </span>QSpacerItem;
+<a name="l00020"></a>00020 <span class="keyword">class </span>QGroupBox;
+<a name="l00021"></a>00021 <span class="keyword">class </span>QLabel;
+<a name="l00022"></a>00022 <span class="keyword">class </span>QPushButton;
+<a name="l00023"></a>00023 <span class="keyword">class </span>QComboBox;
+<a name="l00024"></a>00024 <span class="keyword">class </span>QTabWidget;
+<a name="l00025"></a>00025 <span class="keyword">class </span>QWidget;
+<a name="l00026"></a>00026 <span class="keyword">class </span>QCheckBox;
+<a name="l00027"></a>00027 <span class="keyword">class </span>QSpinBox;
+<a name="l00028"></a>00028 <span class="keyword">class </span>QLineEdit;
+<a name="l00029"></a>00029
+<a name="l00030"></a><a class="code" href="classOptionDlg.html">00030</a> <span class="keyword">class </span><a class="code" href="classOptionDlg.html">OptionDlg</a> : <span class="keyword">public</span> QDialog
+<a name="l00031"></a>00031 {
+<a name="l00032"></a>00032 Q_OBJECT
+<a name="l00033"></a>00033
+<a name="l00034"></a>00034 <span class="keyword">public</span>:
+<a name="l00035"></a>00035 <a class="code" href="classOptionDlg.html#05e56abcb224cbcb9c3bae64ba76175a">OptionDlg</a>( QWidget* parent = 0, <span class="keyword">const</span> <span class="keywordtype">char</span>* name = 0, <span class="keywordtype">bool</span> modal = FALSE, WFlags fl = 0 );
+<a name="l00036"></a>00036 <a class="code" href="classOptionDlg.html#cc442307e009b470032fe689ee31ef7e">~OptionDlg</a>();
+<a name="l00037"></a>00037
+<a name="l00038"></a><a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">00038</a> QGroupBox* <a class="code" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a>;
+<a name="l00039"></a><a class="code" href="classOptionDlg.html#f2b08f1c9e6b69a9ab60f884da54f89d">00039</a> QLabel* <a class="code" href="classOptionDlg.html#f2b08f1c9e6b69a9ab60f884da54f89d">QLabel_1</a>;
+<a name="l00040"></a><a class="code" href="classOptionDlg.html#dcfa5019bacd8a4c7b2a192eed57e973">00040</a> QPushButton* <a class="code" href="classOptionDlg.html#dcfa5019bacd8a4c7b2a192eed57e973">m_ButtonDelete</a>;
+<a name="l00041"></a><a class="code" href="classOptionDlg.html#5827d094ba37dc02388af25cefc1d58a">00041</a> QPushButton* <a class="code" href="classOptionDlg.html#5827d094ba37dc02388af25cefc1d58a">m_ButtonCopy</a>;
+<a name="l00042"></a><a class="code" href="classOptionDlg.html#b062f6eafa19f35357e4aed5e050257d">00042</a> QPushButton* <a class="code" href="classOptionDlg.html#b062f6eafa19f35357e4aed5e050257d">m_ButtonEdit</a>;
+<a name="l00043"></a><a class="code" href="classOptionDlg.html#f5351545a58dc835af0f6b73f63ca155">00043</a> QPushButton* <a class="code" href="classOptionDlg.html#f5351545a58dc835af0f6b73f63ca155">m_ButtonAdd</a>;
+<a name="l00044"></a><a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">00044</a> QComboBox* <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>;
+<a name="l00045"></a><a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">00045</a> QTabWidget* <a class="code" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a>;
+<a name="l00046"></a><a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">00046</a> QWidget* <a class="code" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a>;
+<a name="l00047"></a><a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">00047</a> QCheckBox* <a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a>;
+<a name="l00048"></a><a class="code" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">00048</a> QCheckBox* <a class="code" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">m_CheckStartMinimized</a>;
+<a name="l00049"></a><a class="code" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">00049</a> QCheckBox* <a class="code" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">m_CheckConfirmDelete</a>;
+<a name="l00050"></a><a class="code" href="classOptionDlg.html#e41bbc238ca8e91941442bb711517fe3">00050</a> QLabel* <a class="code" href="classOptionDlg.html#e41bbc238ca8e91941442bb711517fe3">QLabel_2</a>;
+<a name="l00051"></a><a class="code" href="classOptionDlg.html#d57e8e6ba21c3cbe7f31f68635f1c856">00051</a> QLabel* <a class="code" href="classOptionDlg.html#d57e8e6ba21c3cbe7f31f68635f1c856">QLabel_3</a>;
+<a name="l00052"></a><a class="code" href="classOptionDlg.html#97584503ba9983d1f0556189a5de3dac">00052</a> QLabel* <a class="code" href="classOptionDlg.html#97584503ba9983d1f0556189a5de3dac">QLabel_6</a>;
+<a name="l00053"></a><a class="code" href="classOptionDlg.html#65ee72e62bd25ed5ac2d1e6b1ae46e50">00053</a> QLabel* <a class="code" href="classOptionDlg.html#65ee72e62bd25ed5ac2d1e6b1ae46e50">QLabel_4</a>;
+<a name="l00054"></a><a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">00054</a> QSpinBox* <a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a>;
+<a name="l00055"></a><a class="code" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">00055</a> QSpinBox* <a class="code" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a>;
+<a name="l00056"></a><a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">00056</a> QSpinBox* <a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a>;
+<a name="l00057"></a><a class="code" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">00057</a> QSpinBox* <a class="code" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a>;
+<a name="l00058"></a><a class="code" href="classOptionDlg.html#8fc4bdd8d230a0f5d6ed01cde33e9278">00058</a> QCheckBox* <a class="code" href="classOptionDlg.html#8fc4bdd8d230a0f5d6ed01cde33e9278">_checkConfirmClose</a>;
+<a name="l00059"></a><a class="code" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">00059</a> QCheckBox* <a class="code" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a>;
+<a name="l00060"></a><a class="code" href="classOptionDlg.html#5553bc799edbadb53b00f8c26342cc0e">00060</a> QCheckBox* <a class="code" href="classOptionDlg.html#5553bc799edbadb53b00f8c26342cc0e">m_CheckCloseMinimizes</a>;
+<a name="l00061"></a><a class="code" href="classOptionDlg.html#ae8aaaee5cd4a83d5f7f09d16cb4cdcd">00061</a> QCheckBox* <a class="code" href="classOptionDlg.html#ae8aaaee5cd4a83d5f7f09d16cb4cdcd">m_CheckMinimizeToTray</a>;
+<a name="l00062"></a><a class="code" href="classOptionDlg.html#0526dec363ca38aa071b6d205af2971c">00062</a> QWidget* <a class="code" href="classOptionDlg.html#0526dec363ca38aa071b6d205af2971c">tab_2</a>;
+<a name="l00063"></a><a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">00063</a> QGroupBox* <a class="code" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a>;
+<a name="l00064"></a><a class="code" href="classOptionDlg.html#6379a589358b6110cfa48798a30951ab">00064</a> QCheckBox* <a class="code" href="classOptionDlg.html#6379a589358b6110cfa48798a30951ab">m_CheckActive</a>;
+<a name="l00065"></a><a class="code" href="classOptionDlg.html#1fdb0d9cfac85bbef22d749e40dd9376">00065</a> QCheckBox* <a class="code" href="classOptionDlg.html#1fdb0d9cfac85bbef22d749e40dd9376">m_CheckAccount1</a>;
+<a name="l00066"></a><a class="code" href="classOptionDlg.html#b1e0581d2cf52c0337d42bbc898a2fc2">00066</a> QCheckBox* <a class="code" href="classOptionDlg.html#b1e0581d2cf52c0337d42bbc898a2fc2">m_CheckServer</a>;
+<a name="l00067"></a><a class="code" href="classOptionDlg.html#e7595a79588cccd851e00714b0b47d94">00067</a> QCheckBox* <a class="code" href="classOptionDlg.html#e7595a79588cccd851e00714b0b47d94">m_CheckUser</a>;
+<a name="l00068"></a><a class="code" href="classOptionDlg.html#d20b2cce97a72b706dfb29ddc93f1766">00068</a> QCheckBox* <a class="code" href="classOptionDlg.html#d20b2cce97a72b706dfb29ddc93f1766">m_CheckMessages</a>;
+<a name="l00069"></a><a class="code" href="classOptionDlg.html#bbd14d7cfd0662a8089e83be0809d46f">00069</a> QCheckBox* <a class="code" href="classOptionDlg.html#bbd14d7cfd0662a8089e83be0809d46f">m_CheckSize1</a>;
+<a name="l00070"></a><a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">00070</a> QGroupBox* <a class="code" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a>;
+<a name="l00071"></a><a class="code" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">00071</a> QCheckBox* <a class="code" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">m_CheckNumber</a>;
+<a name="l00072"></a><a class="code" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">00072</a> QCheckBox* <a class="code" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">m_CheckAccount2</a>;
+<a name="l00073"></a><a class="code" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">00073</a> QCheckBox* <a class="code" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">m_CheckFrom</a>;
+<a name="l00074"></a><a class="code" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">00074</a> QCheckBox* <a class="code" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">m_CheckTo</a>;
+<a name="l00075"></a><a class="code" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">00075</a> QCheckBox* <a class="code" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">m_CheckSubject</a>;
+<a name="l00076"></a><a class="code" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">00076</a> QCheckBox* <a class="code" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">m_CheckDate</a>;
+<a name="l00077"></a><a class="code" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">00077</a> QCheckBox* <a class="code" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">m_CheckSize2</a>;
+<a name="l00078"></a><a class="code" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">00078</a> QCheckBox* <a class="code" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">m_CheckContent</a>;
+<a name="l00079"></a><a class="code" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">00079</a> QCheckBox* <a class="code" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">m_CheckState</a>;
+<a name="l00080"></a><a class="code" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">00080</a> QGroupBox* <a class="code" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">groupBox4</a>;
+<a name="l00081"></a><a class="code" href="classOptionDlg.html#822eac789cfdbe481591d6a14b250571">00081</a> QCheckBox* <a class="code" href="classOptionDlg.html#822eac789cfdbe481591d6a14b250571">m_checkHTML</a>;
+<a name="l00082"></a><a class="code" href="classOptionDlg.html#e5718ae6060503e26fe6ddc1dbb9d080">00082</a> QWidget* <a class="code" href="classOptionDlg.html#e5718ae6060503e26fe6ddc1dbb9d080">tab_3</a>;
+<a name="l00083"></a><a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">00083</a> QCheckBox* <a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a>;
+<a name="l00084"></a><a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">00084</a> QCheckBox* <a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a>;
+<a name="l00085"></a><a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">00085</a> QWidget* <a class="code" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a>;
+<a name="l00086"></a><a class="code" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">00086</a> QCheckBox* <a class="code" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">m_CheckBeep</a>;
+<a name="l00087"></a><a class="code" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">00087</a> QCheckBox* <a class="code" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">m_CheckShowMainWindow</a>;
+<a name="l00088"></a><a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">00088</a> QCheckBox* <a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a>;
+<a name="l00089"></a><a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">00089</a> QCheckBox* <a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a>;
+<a name="l00090"></a><a class="code" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">00090</a> QPushButton* <a class="code" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a>;
+<a name="l00091"></a><a class="code" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">00091</a> QPushButton* <a class="code" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a>;
+<a name="l00092"></a><a class="code" href="classOptionDlg.html#5adabd2b563e6c382e0f578ca2cfd113">00092</a> QLabel* <a class="code" href="classOptionDlg.html#5adabd2b563e6c382e0f578ca2cfd113">QLabel_5</a>;
+<a name="l00093"></a><a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">00093</a> QComboBox* <a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a>;
+<a name="l00094"></a><a class="code" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">00094</a> QPushButton* <a class="code" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a>;
+<a name="l00095"></a><a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">00095</a> QLineEdit* <a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a>;
+<a name="l00096"></a><a class="code" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">00096</a> QCheckBox* <a class="code" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">m_CheckShowMessagebox</a>;
+<a name="l00097"></a><a class="code" href="classOptionDlg.html#8ceb133b8b4ccd071329112b7fa9181a">00097</a> QPushButton* <a class="code" href="classOptionDlg.html#8ceb133b8b4ccd071329112b7fa9181a">m_ButtonOk</a>;
+<a name="l00098"></a><a class="code" href="classOptionDlg.html#e1d3b44701644711f98f32b4bae8db92">00098</a> QPushButton* <a class="code" href="classOptionDlg.html#e1d3b44701644711f98f32b4bae8db92">m_ButtonCancel</a>;
+<a name="l00099"></a>00099
+<a name="l00100"></a>00100 <span class="keyword">public</span> slots:
+<a name="l00101"></a>00101 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#6d1e4f6d6bcba2be67cc6d96cf7dce78">slotExternalProgTest</a>();
+<a name="l00102"></a>00102 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#8435e876b83edc8727adf3c9522c990d">slotAccountActivated</a>(<span class="keywordtype">int</span>);
+<a name="l00103"></a>00103 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#ddbabac04a2faf257ef1000a817b6dfd">slotButtonAddClicked</a>();
+<a name="l00104"></a>00104 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#a308d66d94a9e8f7bb01f95d8d170340">slotButtonCopyClicked</a>();
+<a name="l00105"></a>00105 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#f34d904632a999f09525e4a84a4f4bba">slotButtonDeleteClicked</a>();
+<a name="l00106"></a>00106 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#79f5f5a3cfe82b2ab728db889571f790">slotButtonEditClicked</a>();
+<a name="l00107"></a>00107 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#e0ceefbabae4b3a3a27cfb109d613f4d">slotButtonOkClicked</a>();
+<a name="l00108"></a>00108 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#a5c107a0ebaffc5d55a19f15e453f016">slotButtonSelectSoundFile</a>();
+<a name="l00109"></a>00109 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#d68c949ba426c9e99c3667133e14410b">slotMinimizeNoMailClicked</a>();
+<a name="l00110"></a>00110 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#fe059a79c1b5adad4c4b65a54ea7e588">slotSavePasswordToggled</a>();
+<a name="l00111"></a>00111 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#68ea03d004a5e8dee71731d004765efa">slotSoundTest</a>();
+<a name="l00112"></a>00112 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#356d143dceae572edfe25c4895d42e99">slotTerminateNoMailClicked</a>();
+<a name="l00113"></a>00113
+<a name="l00114"></a>00114 <span class="keyword">protected</span>:
+<a name="l00115"></a><a class="code" href="classOptionDlg.html#f2a78d5c1e7ebdd2074d1cfc2f553cb1">00115</a> QVBoxLayout* <a class="code" href="classOptionDlg.html#f2a78d5c1e7ebdd2074d1cfc2f553cb1">OptionDlgLayout</a>;
+<a name="l00116"></a><a class="code" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">00116</a> QGridLayout* <a class="code" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a>;
+<a name="l00117"></a><a class="code" href="classOptionDlg.html#169a7100c7f2da97421eb57882e6cdce">00117</a> QSpacerItem* <a class="code" href="classOptionDlg.html#169a7100c7f2da97421eb57882e6cdce">spacer4</a>;
+<a name="l00118"></a><a class="code" href="classOptionDlg.html#e2a13e9c7b92aaac9bdbe44be32090d9">00118</a> QSpacerItem* <a class="code" href="classOptionDlg.html#e2a13e9c7b92aaac9bdbe44be32090d9">spacer2</a>;
+<a name="l00119"></a><a class="code" href="classOptionDlg.html#57faa9421d4b06b179ad02cd84f77a12">00119</a> QVBoxLayout* <a class="code" href="classOptionDlg.html#57faa9421d4b06b179ad02cd84f77a12">layout3</a>;
+<a name="l00120"></a><a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">00120</a> QGridLayout* <a class="code" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a>;
+<a name="l00121"></a><a class="code" href="classOptionDlg.html#6702f780899bc9461d21c29cfb7b4757">00121</a> QHBoxLayout* <a class="code" href="classOptionDlg.html#6702f780899bc9461d21c29cfb7b4757">tabLayout_2</a>;
+<a name="l00122"></a><a class="code" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">00122</a> QVBoxLayout* <a class="code" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">GroupBox3Layout</a>;
+<a name="l00123"></a><a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">00123</a> QVBoxLayout* <a class="code" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a>;
+<a name="l00124"></a><a class="code" href="classOptionDlg.html#a8ef8d42b1fc85a6f37423ad0bcefcae">00124</a> QVBoxLayout* <a class="code" href="classOptionDlg.html#a8ef8d42b1fc85a6f37423ad0bcefcae">groupBox4Layout</a>;
+<a name="l00125"></a><a class="code" href="classOptionDlg.html#61664d27d32355fab76184bb47adf86a">00125</a> QVBoxLayout* <a class="code" href="classOptionDlg.html#61664d27d32355fab76184bb47adf86a">tabLayout_3</a>;
+<a name="l00126"></a><a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">00126</a> QGridLayout* <a class="code" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a>;
+<a name="l00127"></a><a class="code" href="classOptionDlg.html#a96e74ece6336c05e03376af33f5269c">00127</a> QHBoxLayout* <a class="code" href="classOptionDlg.html#a96e74ece6336c05e03376af33f5269c">layout2</a>;
+<a name="l00128"></a><a class="code" href="classOptionDlg.html#f6170350191d444f72418d6484f4ea19">00128</a> QSpacerItem* <a class="code" href="classOptionDlg.html#f6170350191d444f72418d6484f4ea19">Spacer70</a>;
+<a name="l00129"></a>00129
+<a name="l00130"></a>00130 <span class="keyword">protected</span> slots:
+<a name="l00131"></a>00131 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDlg.html#faff39abb53603d21e94af1bcbc04a9c">languageChange</a>();
+<a name="l00132"></a>00132
+<a name="l00133"></a>00133 };
+<a name="l00134"></a>00134
+<a name="l00135"></a>00135 <span class="preprocessor">#endif // OPTIONDLG_H</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/OptionDlg_8moc-source.html b/doc/html/OptionDlg_8moc-source.html
new file mode 100644
index 0000000..4dca8cb
--- /dev/null
+++ b/doc/html/OptionDlg_8moc-source.html
@@ -0,0 +1,162 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/OptionDlg.moc Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>OptionDlg.moc</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** OptionDlg meta object code from reading C++ file 'OptionDlg.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Tue May 15 19:57:54 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: OptionDlg_8moc-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "OptionDlg.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *OptionDlg::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"OptionDlg"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *OptionDlg::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_OptionDlg( <span class="stringliteral">"OptionDlg"</span>, &amp;OptionDlg::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString OptionDlg::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"OptionDlg"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString OptionDlg::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"OptionDlg"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* OptionDlg::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = QDialog::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotExternalProgTest"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_1[] = {
+<a name="l00057"></a>00057 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00058"></a>00058 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotAccountActivated"</span>, 1, param_slot_1 };
+<a name="l00060"></a>00060 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_2 = {<span class="stringliteral">"slotButtonAddClicked"</span>, 0, 0 };
+<a name="l00061"></a>00061 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_3 = {<span class="stringliteral">"slotButtonCopyClicked"</span>, 0, 0 };
+<a name="l00062"></a>00062 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_4 = {<span class="stringliteral">"slotButtonDeleteClicked"</span>, 0, 0 };
+<a name="l00063"></a>00063 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_5 = {<span class="stringliteral">"slotButtonEditClicked"</span>, 0, 0 };
+<a name="l00064"></a>00064 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_6 = {<span class="stringliteral">"slotButtonOkClicked"</span>, 0, 0 };
+<a name="l00065"></a>00065 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_7 = {<span class="stringliteral">"slotButtonSelectSoundFile"</span>, 0, 0 };
+<a name="l00066"></a>00066 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_8 = {<span class="stringliteral">"slotMinimizeNoMailClicked"</span>, 0, 0 };
+<a name="l00067"></a>00067 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_9 = {<span class="stringliteral">"slotSavePasswordToggled"</span>, 0, 0 };
+<a name="l00068"></a>00068 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_10 = {<span class="stringliteral">"slotSoundTest"</span>, 0, 0 };
+<a name="l00069"></a>00069 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_11 = {<span class="stringliteral">"slotTerminateNoMailClicked"</span>, 0, 0 };
+<a name="l00070"></a>00070 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_12 = {<span class="stringliteral">"languageChange"</span>, 0, 0 };
+<a name="l00071"></a>00071 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00072"></a>00072 { <span class="stringliteral">"slotExternalProgTest()"</span>, &amp;slot_0, QMetaData::Public },
+<a name="l00073"></a>00073 { <span class="stringliteral">"slotAccountActivated(int)"</span>, &amp;slot_1, QMetaData::Public },
+<a name="l00074"></a>00074 { <span class="stringliteral">"slotButtonAddClicked()"</span>, &amp;slot_2, QMetaData::Public },
+<a name="l00075"></a>00075 { <span class="stringliteral">"slotButtonCopyClicked()"</span>, &amp;slot_3, QMetaData::Public },
+<a name="l00076"></a>00076 { <span class="stringliteral">"slotButtonDeleteClicked()"</span>, &amp;slot_4, QMetaData::Public },
+<a name="l00077"></a>00077 { <span class="stringliteral">"slotButtonEditClicked()"</span>, &amp;slot_5, QMetaData::Public },
+<a name="l00078"></a>00078 { <span class="stringliteral">"slotButtonOkClicked()"</span>, &amp;slot_6, QMetaData::Public },
+<a name="l00079"></a>00079 { <span class="stringliteral">"slotButtonSelectSoundFile()"</span>, &amp;slot_7, QMetaData::Public },
+<a name="l00080"></a>00080 { <span class="stringliteral">"slotMinimizeNoMailClicked()"</span>, &amp;slot_8, QMetaData::Public },
+<a name="l00081"></a>00081 { <span class="stringliteral">"slotSavePasswordToggled()"</span>, &amp;slot_9, QMetaData::Public },
+<a name="l00082"></a>00082 { <span class="stringliteral">"slotSoundTest()"</span>, &amp;slot_10, QMetaData::Public },
+<a name="l00083"></a>00083 { <span class="stringliteral">"slotTerminateNoMailClicked()"</span>, &amp;slot_11, QMetaData::Public },
+<a name="l00084"></a>00084 { <span class="stringliteral">"languageChange()"</span>, &amp;slot_12, QMetaData::Protected }
+<a name="l00085"></a>00085 };
+<a name="l00086"></a>00086 metaObj = QMetaObject::new_metaobject(
+<a name="l00087"></a>00087 <span class="stringliteral">"OptionDlg"</span>, parentObject,
+<a name="l00088"></a>00088 slot_tbl, 13,
+<a name="l00089"></a>00089 0, 0,
+<a name="l00090"></a>00090 #ifndef QT_NO_PROPERTIES
+<a name="l00091"></a>00091 0, 0,
+<a name="l00092"></a>00092 0, 0,
+<a name="l00093"></a>00093 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00094"></a>00094 0, 0 );
+<a name="l00095"></a>00095 cleanUp_OptionDlg.setMetaObject( metaObj );
+<a name="l00096"></a>00096 <span class="keywordflow">return</span> metaObj;
+<a name="l00097"></a>00097 }
+<a name="l00098"></a>00098
+<a name="l00099"></a>00099 <span class="keywordtype">void</span>* OptionDlg::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00100"></a>00100 {
+<a name="l00101"></a>00101 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"OptionDlg"</span> ) )
+<a name="l00102"></a>00102 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00103"></a>00103 <span class="keywordflow">return</span> QDialog::qt_cast( clname );
+<a name="l00104"></a>00104 }
+<a name="l00105"></a>00105
+<a name="l00106"></a>00106 <span class="keywordtype">bool</span> OptionDlg::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00107"></a>00107 {
+<a name="l00108"></a>00108 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00109"></a>00109 <span class="keywordflow">case</span> 0: <a class="code" href="classOptionDlg.html#6d1e4f6d6bcba2be67cc6d96cf7dce78">slotExternalProgTest</a>(); <span class="keywordflow">break</span>;
+<a name="l00110"></a>00110 <span class="keywordflow">case</span> 1: <a class="code" href="classOptionDlg.html#8435e876b83edc8727adf3c9522c990d">slotAccountActivated</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00111"></a>00111 <span class="keywordflow">case</span> 2: <a class="code" href="classOptionDlg.html#ddbabac04a2faf257ef1000a817b6dfd">slotButtonAddClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00112"></a>00112 <span class="keywordflow">case</span> 3: <a class="code" href="classOptionDlg.html#a308d66d94a9e8f7bb01f95d8d170340">slotButtonCopyClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00113"></a>00113 <span class="keywordflow">case</span> 4: <a class="code" href="classOptionDlg.html#f34d904632a999f09525e4a84a4f4bba">slotButtonDeleteClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00114"></a>00114 <span class="keywordflow">case</span> 5: <a class="code" href="classOptionDlg.html#79f5f5a3cfe82b2ab728db889571f790">slotButtonEditClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00115"></a>00115 <span class="keywordflow">case</span> 6: <a class="code" href="classOptionDlg.html#e0ceefbabae4b3a3a27cfb109d613f4d">slotButtonOkClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00116"></a>00116 <span class="keywordflow">case</span> 7: <a class="code" href="classOptionDlg.html#a5c107a0ebaffc5d55a19f15e453f016">slotButtonSelectSoundFile</a>(); <span class="keywordflow">break</span>;
+<a name="l00117"></a>00117 <span class="keywordflow">case</span> 8: <a class="code" href="classOptionDlg.html#d68c949ba426c9e99c3667133e14410b">slotMinimizeNoMailClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00118"></a>00118 <span class="keywordflow">case</span> 9: <a class="code" href="classOptionDlg.html#fe059a79c1b5adad4c4b65a54ea7e588">slotSavePasswordToggled</a>(); <span class="keywordflow">break</span>;
+<a name="l00119"></a>00119 <span class="keywordflow">case</span> 10: <a class="code" href="classOptionDlg.html#68ea03d004a5e8dee71731d004765efa">slotSoundTest</a>(); <span class="keywordflow">break</span>;
+<a name="l00120"></a>00120 <span class="keywordflow">case</span> 11: <a class="code" href="classOptionDlg.html#356d143dceae572edfe25c4895d42e99">slotTerminateNoMailClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00121"></a>00121 <span class="keywordflow">case</span> 12: <a class="code" href="classOptionDlg.html#faff39abb53603d21e94af1bcbc04a9c">languageChange</a>(); <span class="keywordflow">break</span>;
+<a name="l00122"></a>00122 <span class="keywordflow">default</span>:
+<a name="l00123"></a>00123 <span class="keywordflow">return</span> QDialog::qt_invoke( _id, _o );
+<a name="l00124"></a>00124 }
+<a name="l00125"></a>00125 <span class="keywordflow">return</span> TRUE;
+<a name="l00126"></a>00126 }
+<a name="l00127"></a>00127
+<a name="l00128"></a>00128 <span class="keywordtype">bool</span> OptionDlg::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00129"></a>00129 {
+<a name="l00130"></a>00130 <span class="keywordflow">return</span> QDialog::qt_emit(_id,_o);
+<a name="l00131"></a>00131 }
+<a name="l00132"></a>00132 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00133"></a>00133 <span class="preprocessor"></span>
+<a name="l00134"></a>00134 <span class="keywordtype">bool</span> OptionDlg::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00135"></a>00135 {
+<a name="l00136"></a>00136 <span class="keywordflow">return</span> QDialog::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00137"></a>00137 }
+<a name="l00138"></a>00138
+<a name="l00139"></a>00139 <span class="keywordtype">bool</span> OptionDlg::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00140"></a>00140 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/ServerDlg_8cpp-source.html b/doc/html/ServerDlg_8cpp-source.html
new file mode 100644
index 0000000..5fbabab
--- /dev/null
+++ b/doc/html/ServerDlg_8cpp-source.html
@@ -0,0 +1,204 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/ServerDlg.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>ServerDlg.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &lt;kdialog.h&gt;</span>
+<a name="l00002"></a>00002 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00003"></a>00003 <span class="comment">/****************************************************************************</span>
+<a name="l00004"></a>00004 <span class="comment">** Form implementation generated from reading ui file '/home/kuddel/Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/ServerDlg.ui'</span>
+<a name="l00005"></a>00005 <span class="comment">**</span>
+<a name="l00006"></a>00006 <span class="comment">** Created: Di Mai 15 19:57:54 2007</span>
+<a name="l00007"></a>00007 <span class="comment">** by: The User Interface Compiler ($Id: ServerDlg_8cpp-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00008"></a>00008 <span class="comment">**</span>
+<a name="l00009"></a>00009 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00010"></a>00010 <span class="comment">****************************************************************************/</span>
+<a name="l00011"></a>00011
+<a name="l00012"></a>00012 <span class="preprocessor">#include "ServerDlg.h"</span>
+<a name="l00013"></a>00013
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;qpushbutton.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;qlabel.h&gt;</span>
+<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;qlineedit.h&gt;</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qcheckbox.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qcombobox.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qspinbox.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qlayout.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qtooltip.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;qwhatsthis.h&gt;</span>
+<a name="l00024"></a>00024
+<a name="l00025"></a>00025 <span class="comment">/*</span>
+<a name="l00026"></a>00026 <span class="comment"> * Constructs a ServerDlg as a child of 'parent', with the</span>
+<a name="l00027"></a>00027 <span class="comment"> * name 'name' and widget flags set to 'f'.</span>
+<a name="l00028"></a>00028 <span class="comment"> *</span>
+<a name="l00029"></a>00029 <span class="comment"> * The dialog will by default be modeless, unless you set 'modal' to</span>
+<a name="l00030"></a>00030 <span class="comment"> * TRUE to construct a modal dialog.</span>
+<a name="l00031"></a>00031 <span class="comment"> */</span>
+<a name="l00032"></a><a class="code" href="classServerDlg.html#c58b59def2e66e6c5bbd227152f06ff1">00032</a> <a class="code" href="classServerDlg.html#c58b59def2e66e6c5bbd227152f06ff1">ServerDlg::ServerDlg</a>( QWidget* parent, <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">bool</span> modal, WFlags fl )
+<a name="l00033"></a>00033 : QDialog( parent, name, modal, fl )
+<a name="l00034"></a>00034 {
+<a name="l00035"></a>00035 <span class="keywordflow">if</span> ( !name )
+<a name="l00036"></a>00036 setName( <span class="stringliteral">"ServerDlg"</span> );
+<a name="l00037"></a>00037 setSizeGripEnabled( FALSE );
+<a name="l00038"></a>00038 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a> = <span class="keyword">new</span> QGridLayout( <span class="keyword">this</span>, 1, 1, 11, 6, <span class="stringliteral">"ServerDlgLayout"</span>);
+<a name="l00039"></a>00039
+<a name="l00040"></a>00040 <a class="code" href="classServerDlg.html#e08739ab911ad22f1baef6a47f478155">QLabel_4</a> = <span class="keyword">new</span> QLabel( <span class="keyword">this</span>, <span class="stringliteral">"QLabel_4"</span> );
+<a name="l00041"></a>00041 <a class="code" href="classServerDlg.html#e08739ab911ad22f1baef6a47f478155">QLabel_4</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classServerDlg.html#e08739ab911ad22f1baef6a47f478155">QLabel_4</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00042"></a>00042
+<a name="l00043"></a>00043 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#e08739ab911ad22f1baef6a47f478155">QLabel_4</a>, 5, 0 );
+<a name="l00044"></a>00044
+<a name="l00045"></a>00045 <a class="code" href="classServerDlg.html#7a6943617bfa890cdc3b9fea25d5a217">m_EditAccount</a> = <span class="keyword">new</span> QLineEdit( <span class="keyword">this</span>, <span class="stringliteral">"m_EditAccount"</span> );
+<a name="l00046"></a>00046 <a class="code" href="classServerDlg.html#7a6943617bfa890cdc3b9fea25d5a217">m_EditAccount</a>-&gt;setFocusPolicy( QLineEdit::StrongFocus );
+<a name="l00047"></a>00047
+<a name="l00048"></a>00048 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#7a6943617bfa890cdc3b9fea25d5a217">m_EditAccount</a>, 0, 1 );
+<a name="l00049"></a>00049
+<a name="l00050"></a>00050 <a class="code" href="classServerDlg.html#8995a72a3416f8b38780cae0285ee300">m_EditServer</a> = <span class="keyword">new</span> QLineEdit( <span class="keyword">this</span>, <span class="stringliteral">"m_EditServer"</span> );
+<a name="l00051"></a>00051 <a class="code" href="classServerDlg.html#8995a72a3416f8b38780cae0285ee300">m_EditServer</a>-&gt;setFocusPolicy( QLineEdit::StrongFocus );
+<a name="l00052"></a>00052
+<a name="l00053"></a>00053 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#8995a72a3416f8b38780cae0285ee300">m_EditServer</a>, 1, 1 );
+<a name="l00054"></a>00054
+<a name="l00055"></a>00055 <a class="code" href="classServerDlg.html#2a451082a9b41a3c368d2239802d4340">QLabel_3</a> = <span class="keyword">new</span> QLabel( <span class="keyword">this</span>, <span class="stringliteral">"QLabel_3"</span> );
+<a name="l00056"></a>00056 <a class="code" href="classServerDlg.html#2a451082a9b41a3c368d2239802d4340">QLabel_3</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classServerDlg.html#2a451082a9b41a3c368d2239802d4340">QLabel_3</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00057"></a>00057
+<a name="l00058"></a>00058 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#2a451082a9b41a3c368d2239802d4340">QLabel_3</a>, 4, 0 );
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <a class="code" href="classServerDlg.html#2e1762f00479244febf47837bc95d14e">CheckActive</a> = <span class="keyword">new</span> QCheckBox( <span class="keyword">this</span>, <span class="stringliteral">"CheckActive"</span> );
+<a name="l00061"></a>00061
+<a name="l00062"></a>00062 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#2e1762f00479244febf47837bc95d14e">CheckActive</a>, 6, 1 );
+<a name="l00063"></a>00063
+<a name="l00064"></a>00064 <a class="code" href="classServerDlg.html#5ffa85e8d10a2186ee9674261bbfd98b">Layout13</a> = <span class="keyword">new</span> QHBoxLayout( 0, 0, 6, <span class="stringliteral">"Layout13"</span>);
+<a name="l00065"></a>00065
+<a name="l00066"></a>00066 <a class="code" href="classServerDlg.html#edd4686af6bac8a9b6801240595a350d">m_ButtonOk</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"m_ButtonOk"</span> );
+<a name="l00067"></a>00067 <a class="code" href="classServerDlg.html#edd4686af6bac8a9b6801240595a350d">m_ButtonOk</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classServerDlg.html#edd4686af6bac8a9b6801240595a350d">m_ButtonOk</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00068"></a>00068 <a class="code" href="classServerDlg.html#5ffa85e8d10a2186ee9674261bbfd98b">Layout13</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#edd4686af6bac8a9b6801240595a350d">m_ButtonOk</a> );
+<a name="l00069"></a>00069 <a class="code" href="classServerDlg.html#a13106ba1ce57124aa233a152b7ed1a0">Spacer1</a> = <span class="keyword">new</span> QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00070"></a>00070 <a class="code" href="classServerDlg.html#5ffa85e8d10a2186ee9674261bbfd98b">Layout13</a>-&gt;addItem( <a class="code" href="classServerDlg.html#a13106ba1ce57124aa233a152b7ed1a0">Spacer1</a> );
+<a name="l00071"></a>00071
+<a name="l00072"></a>00072 <a class="code" href="classServerDlg.html#890621d9388729ada4c7a3e46aa4ca88">m_ButtonCancel</a> = <span class="keyword">new</span> QPushButton( <span class="keyword">this</span>, <span class="stringliteral">"m_ButtonCancel"</span> );
+<a name="l00073"></a>00073 <a class="code" href="classServerDlg.html#890621d9388729ada4c7a3e46aa4ca88">m_ButtonCancel</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classServerDlg.html#890621d9388729ada4c7a3e46aa4ca88">m_ButtonCancel</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00074"></a>00074 <a class="code" href="classServerDlg.html#5ffa85e8d10a2186ee9674261bbfd98b">Layout13</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#890621d9388729ada4c7a3e46aa4ca88">m_ButtonCancel</a> );
+<a name="l00075"></a>00075
+<a name="l00076"></a>00076 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addMultiCellLayout( <a class="code" href="classServerDlg.html#5ffa85e8d10a2186ee9674261bbfd98b">Layout13</a>, 7, 7, 0, 1 );
+<a name="l00077"></a>00077
+<a name="l00078"></a>00078 <a class="code" href="classServerDlg.html#4ee5b1f6981fba44c45c2dcc15340aae">QLabel_1</a> = <span class="keyword">new</span> QLabel( <span class="keyword">this</span>, <span class="stringliteral">"QLabel_1"</span> );
+<a name="l00079"></a>00079 <a class="code" href="classServerDlg.html#4ee5b1f6981fba44c45c2dcc15340aae">QLabel_1</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classServerDlg.html#4ee5b1f6981fba44c45c2dcc15340aae">QLabel_1</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00080"></a>00080
+<a name="l00081"></a>00081 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#4ee5b1f6981fba44c45c2dcc15340aae">QLabel_1</a>, 0, 0 );
+<a name="l00082"></a>00082
+<a name="l00083"></a>00083 <a class="code" href="classServerDlg.html#a5df67905ccbe9d66768589a9e4e6cc2">QLabel_2</a> = <span class="keyword">new</span> QLabel( <span class="keyword">this</span>, <span class="stringliteral">"QLabel_2"</span> );
+<a name="l00084"></a>00084 <a class="code" href="classServerDlg.html#a5df67905ccbe9d66768589a9e4e6cc2">QLabel_2</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classServerDlg.html#a5df67905ccbe9d66768589a9e4e6cc2">QLabel_2</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00085"></a>00085
+<a name="l00086"></a>00086 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#a5df67905ccbe9d66768589a9e4e6cc2">QLabel_2</a>, 1, 0 );
+<a name="l00087"></a>00087
+<a name="l00088"></a>00088 <a class="code" href="classServerDlg.html#9a4f7dd7a820b166cfcf8fe9efd7bd17">QLabel_5</a> = <span class="keyword">new</span> QLabel( <span class="keyword">this</span>, <span class="stringliteral">"QLabel_5"</span> );
+<a name="l00089"></a>00089 <a class="code" href="classServerDlg.html#9a4f7dd7a820b166cfcf8fe9efd7bd17">QLabel_5</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classServerDlg.html#9a4f7dd7a820b166cfcf8fe9efd7bd17">QLabel_5</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00090"></a>00090
+<a name="l00091"></a>00091 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#9a4f7dd7a820b166cfcf8fe9efd7bd17">QLabel_5</a>, 2, 0 );
+<a name="l00092"></a>00092
+<a name="l00093"></a>00093 <a class="code" href="classServerDlg.html#e85121e9293307b93f4a88cdbed7f07f">QLabel_6</a> = <span class="keyword">new</span> QLabel( <span class="keyword">this</span>, <span class="stringliteral">"QLabel_6"</span> );
+<a name="l00094"></a>00094 <a class="code" href="classServerDlg.html#e85121e9293307b93f4a88cdbed7f07f">QLabel_6</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classServerDlg.html#e85121e9293307b93f4a88cdbed7f07f">QLabel_6</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00095"></a>00095
+<a name="l00096"></a>00096 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#e85121e9293307b93f4a88cdbed7f07f">QLabel_6</a>, 3, 0 );
+<a name="l00097"></a>00097
+<a name="l00098"></a>00098 <a class="code" href="classServerDlg.html#50988c2d6da00d7aac9153c3502e971c">Layout15</a> = <span class="keyword">new</span> QHBoxLayout( 0, 0, 6, <span class="stringliteral">"Layout15"</span>);
+<a name="l00099"></a>00099
+<a name="l00100"></a>00100 <a class="code" href="classServerDlg.html#249ee8e0562af6bfb41423158ad54ba3">m_ComboProtocol</a> = <span class="keyword">new</span> QComboBox( FALSE, <span class="keyword">this</span>, <span class="stringliteral">"m_ComboProtocol"</span> );
+<a name="l00101"></a>00101 <a class="code" href="classServerDlg.html#249ee8e0562af6bfb41423158ad54ba3">m_ComboProtocol</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classServerDlg.html#249ee8e0562af6bfb41423158ad54ba3">m_ComboProtocol</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00102"></a>00102 <a class="code" href="classServerDlg.html#249ee8e0562af6bfb41423158ad54ba3">m_ComboProtocol</a>-&gt;setFocusPolicy( QComboBox::ClickFocus );
+<a name="l00103"></a>00103 <a class="code" href="classServerDlg.html#249ee8e0562af6bfb41423158ad54ba3">m_ComboProtocol</a>-&gt;setInsertionPolicy( QComboBox::AtTop );
+<a name="l00104"></a>00104 <a class="code" href="classServerDlg.html#50988c2d6da00d7aac9153c3502e971c">Layout15</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#249ee8e0562af6bfb41423158ad54ba3">m_ComboProtocol</a> );
+<a name="l00105"></a>00105 <a class="code" href="classServerDlg.html#fbc4e3111d287c9cf11f738e988b0c37">Spacer11</a> = <span class="keyword">new</span> QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00106"></a>00106 <a class="code" href="classServerDlg.html#50988c2d6da00d7aac9153c3502e971c">Layout15</a>-&gt;addItem( <a class="code" href="classServerDlg.html#fbc4e3111d287c9cf11f738e988b0c37">Spacer11</a> );
+<a name="l00107"></a>00107
+<a name="l00108"></a>00108 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addLayout( <a class="code" href="classServerDlg.html#50988c2d6da00d7aac9153c3502e971c">Layout15</a>, 2, 1 );
+<a name="l00109"></a>00109
+<a name="l00110"></a>00110 <a class="code" href="classServerDlg.html#db4ed9643452314bb65d230557549069">Layout14</a> = <span class="keyword">new</span> QHBoxLayout( 0, 0, 6, <span class="stringliteral">"Layout14"</span>);
+<a name="l00111"></a>00111
+<a name="l00112"></a>00112 <a class="code" href="classServerDlg.html#e113c681047f355e626560156070d58d">m_SpinPort</a> = <span class="keyword">new</span> QSpinBox( <span class="keyword">this</span>, <span class="stringliteral">"m_SpinPort"</span> );
+<a name="l00113"></a>00113 <a class="code" href="classServerDlg.html#e113c681047f355e626560156070d58d">m_SpinPort</a>-&gt;setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, <a class="code" href="classServerDlg.html#e113c681047f355e626560156070d58d">m_SpinPort</a>-&gt;sizePolicy().hasHeightForWidth() ) );
+<a name="l00114"></a>00114 <a class="code" href="classServerDlg.html#e113c681047f355e626560156070d58d">m_SpinPort</a>-&gt;setFocusPolicy( QSpinBox::ClickFocus );
+<a name="l00115"></a>00115 <a class="code" href="classServerDlg.html#e113c681047f355e626560156070d58d">m_SpinPort</a>-&gt;setMaxValue( 9999 );
+<a name="l00116"></a>00116 <a class="code" href="classServerDlg.html#db4ed9643452314bb65d230557549069">Layout14</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#e113c681047f355e626560156070d58d">m_SpinPort</a> );
+<a name="l00117"></a>00117 <a class="code" href="classServerDlg.html#ffa09ac5f6428a6486eab425b849f629">Spacer10</a> = <span class="keyword">new</span> QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
+<a name="l00118"></a>00118 <a class="code" href="classServerDlg.html#db4ed9643452314bb65d230557549069">Layout14</a>-&gt;addItem( <a class="code" href="classServerDlg.html#ffa09ac5f6428a6486eab425b849f629">Spacer10</a> );
+<a name="l00119"></a>00119
+<a name="l00120"></a>00120 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addLayout( <a class="code" href="classServerDlg.html#db4ed9643452314bb65d230557549069">Layout14</a>, 3, 1 );
+<a name="l00121"></a>00121
+<a name="l00122"></a>00122 <a class="code" href="classServerDlg.html#e30637c768ca6fcd772f0e3c4bad516d">m_EditUser</a> = <span class="keyword">new</span> QLineEdit( <span class="keyword">this</span>, <span class="stringliteral">"m_EditUser"</span> );
+<a name="l00123"></a>00123 <a class="code" href="classServerDlg.html#e30637c768ca6fcd772f0e3c4bad516d">m_EditUser</a>-&gt;setFocusPolicy( QLineEdit::StrongFocus );
+<a name="l00124"></a>00124
+<a name="l00125"></a>00125 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#e30637c768ca6fcd772f0e3c4bad516d">m_EditUser</a>, 4, 1 );
+<a name="l00126"></a>00126
+<a name="l00127"></a>00127 <a class="code" href="classServerDlg.html#fde33b5549863278ffd58f1bda3c8a70">m_EditPassword</a> = <span class="keyword">new</span> QLineEdit( <span class="keyword">this</span>, <span class="stringliteral">"m_EditPassword"</span> );
+<a name="l00128"></a>00128 <a class="code" href="classServerDlg.html#fde33b5549863278ffd58f1bda3c8a70">m_EditPassword</a>-&gt;setFocusPolicy( QLineEdit::StrongFocus );
+<a name="l00129"></a>00129 <a class="code" href="classServerDlg.html#fde33b5549863278ffd58f1bda3c8a70">m_EditPassword</a>-&gt;setEchoMode( QLineEdit::Password );
+<a name="l00130"></a>00130
+<a name="l00131"></a>00131 <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>-&gt;addWidget( <a class="code" href="classServerDlg.html#fde33b5549863278ffd58f1bda3c8a70">m_EditPassword</a>, 5, 1 );
+<a name="l00132"></a>00132 <a class="code" href="classServerDlg.html#ca4f288c6200a66a56825e748292ad97">languageChange</a>();
+<a name="l00133"></a>00133 resize( QSize(246, 256).expandedTo(minimumSizeHint()) );
+<a name="l00134"></a>00134 clearWState( WState_Polished );
+<a name="l00135"></a>00135
+<a name="l00136"></a>00136 <span class="comment">// signals and slots connections</span>
+<a name="l00137"></a>00137 connect( <a class="code" href="classServerDlg.html#edd4686af6bac8a9b6801240595a350d">m_ButtonOk</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classServerDlg.html#a8fd268743a6699149f86dfd25055d05">slotButtonOkClicked</a>() ) );
+<a name="l00138"></a>00138 connect( <a class="code" href="classServerDlg.html#890621d9388729ada4c7a3e46aa4ca88">m_ButtonCancel</a>, SIGNAL( clicked() ), <span class="keyword">this</span>, SLOT( reject() ) );
+<a name="l00139"></a>00139
+<a name="l00140"></a>00140 <span class="comment">// tab order</span>
+<a name="l00141"></a>00141 setTabOrder( <a class="code" href="classServerDlg.html#7a6943617bfa890cdc3b9fea25d5a217">m_EditAccount</a>, <a class="code" href="classServerDlg.html#8995a72a3416f8b38780cae0285ee300">m_EditServer</a> );
+<a name="l00142"></a>00142 setTabOrder( <a class="code" href="classServerDlg.html#8995a72a3416f8b38780cae0285ee300">m_EditServer</a>, <a class="code" href="classServerDlg.html#e30637c768ca6fcd772f0e3c4bad516d">m_EditUser</a> );
+<a name="l00143"></a>00143 setTabOrder( <a class="code" href="classServerDlg.html#e30637c768ca6fcd772f0e3c4bad516d">m_EditUser</a>, <a class="code" href="classServerDlg.html#fde33b5549863278ffd58f1bda3c8a70">m_EditPassword</a> );
+<a name="l00144"></a>00144 setTabOrder( <a class="code" href="classServerDlg.html#fde33b5549863278ffd58f1bda3c8a70">m_EditPassword</a>, <a class="code" href="classServerDlg.html#edd4686af6bac8a9b6801240595a350d">m_ButtonOk</a> );
+<a name="l00145"></a>00145 setTabOrder( <a class="code" href="classServerDlg.html#edd4686af6bac8a9b6801240595a350d">m_ButtonOk</a>, <a class="code" href="classServerDlg.html#890621d9388729ada4c7a3e46aa4ca88">m_ButtonCancel</a> );
+<a name="l00146"></a>00146 setTabOrder( <a class="code" href="classServerDlg.html#890621d9388729ada4c7a3e46aa4ca88">m_ButtonCancel</a>, <a class="code" href="classServerDlg.html#2e1762f00479244febf47837bc95d14e">CheckActive</a> );
+<a name="l00147"></a>00147 setTabOrder( <a class="code" href="classServerDlg.html#2e1762f00479244febf47837bc95d14e">CheckActive</a>, <a class="code" href="classServerDlg.html#249ee8e0562af6bfb41423158ad54ba3">m_ComboProtocol</a> );
+<a name="l00148"></a>00148 setTabOrder( <a class="code" href="classServerDlg.html#249ee8e0562af6bfb41423158ad54ba3">m_ComboProtocol</a>, <a class="code" href="classServerDlg.html#e113c681047f355e626560156070d58d">m_SpinPort</a> );
+<a name="l00149"></a>00149 }
+<a name="l00150"></a>00150
+<a name="l00151"></a>00151 <span class="comment">/*</span>
+<a name="l00152"></a>00152 <span class="comment"> * Destroys the object and frees any allocated resources</span>
+<a name="l00153"></a>00153 <span class="comment"> */</span>
+<a name="l00154"></a><a class="code" href="classServerDlg.html#517c785a1d8f364cd3d6bd044f88e07e">00154</a> <a class="code" href="classServerDlg.html#517c785a1d8f364cd3d6bd044f88e07e">ServerDlg::~ServerDlg</a>()
+<a name="l00155"></a>00155 {
+<a name="l00156"></a>00156 <span class="comment">// no need to delete child widgets, Qt does it all for us</span>
+<a name="l00157"></a>00157 }
+<a name="l00158"></a>00158
+<a name="l00159"></a>00159 <span class="comment">/*</span>
+<a name="l00160"></a>00160 <span class="comment"> * Sets the strings of the subwidgets using the current</span>
+<a name="l00161"></a>00161 <span class="comment"> * language.</span>
+<a name="l00162"></a>00162 <span class="comment"> */</span>
+<a name="l00163"></a><a class="code" href="classServerDlg.html#ca4f288c6200a66a56825e748292ad97">00163</a> <span class="keywordtype">void</span> <a class="code" href="classServerDlg.html#ca4f288c6200a66a56825e748292ad97">ServerDlg::languageChange</a>()
+<a name="l00164"></a>00164 {
+<a name="l00165"></a>00165 setCaption( tr2i18n( <span class="stringliteral">"Server Options"</span> ) );
+<a name="l00166"></a>00166 <a class="code" href="classServerDlg.html#e08739ab911ad22f1baef6a47f478155">QLabel_4</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Password:"</span> ) );
+<a name="l00167"></a>00167 <a class="code" href="classServerDlg.html#2a451082a9b41a3c368d2239802d4340">QLabel_3</a>-&gt;setText( tr2i18n( <span class="stringliteral">"User:"</span> ) );
+<a name="l00168"></a>00168 <a class="code" href="classServerDlg.html#2e1762f00479244febf47837bc95d14e">CheckActive</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Active"</span> ) );
+<a name="l00169"></a>00169 <a class="code" href="classServerDlg.html#edd4686af6bac8a9b6801240595a350d">m_ButtonOk</a>-&gt;setText( tr2i18n( <span class="stringliteral">"OK"</span> ) );
+<a name="l00170"></a>00170 <a class="code" href="classServerDlg.html#890621d9388729ada4c7a3e46aa4ca88">m_ButtonCancel</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Cancel"</span> ) );
+<a name="l00171"></a>00171 <a class="code" href="classServerDlg.html#4ee5b1f6981fba44c45c2dcc15340aae">QLabel_1</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Account:"</span> ) );
+<a name="l00172"></a>00172 <a class="code" href="classServerDlg.html#a5df67905ccbe9d66768589a9e4e6cc2">QLabel_2</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Server:"</span> ) );
+<a name="l00173"></a>00173 <a class="code" href="classServerDlg.html#9a4f7dd7a820b166cfcf8fe9efd7bd17">QLabel_5</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Protocol:"</span> ) );
+<a name="l00174"></a>00174 <a class="code" href="classServerDlg.html#e85121e9293307b93f4a88cdbed7f07f">QLabel_6</a>-&gt;setText( tr2i18n( <span class="stringliteral">"Port:"</span> ) );
+<a name="l00175"></a>00175 }
+<a name="l00176"></a>00176
+<a name="l00177"></a><a class="code" href="classServerDlg.html#a8fd268743a6699149f86dfd25055d05">00177</a> <span class="keywordtype">void</span> <a class="code" href="classServerDlg.html#a8fd268743a6699149f86dfd25055d05">ServerDlg::slotButtonOkClicked</a>()
+<a name="l00178"></a>00178 {
+<a name="l00179"></a>00179 qWarning( <span class="stringliteral">"ServerDlg::slotButtonOkClicked(): Not implemented yet"</span> );
+<a name="l00180"></a>00180 }
+<a name="l00181"></a>00181
+<a name="l00182"></a>00182 <span class="preprocessor">#include "ServerDlg.moc"</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/ServerDlg_8h-source.html b/doc/html/ServerDlg_8h-source.html
new file mode 100644
index 0000000..a5ca380
--- /dev/null
+++ b/doc/html/ServerDlg_8h-source.html
@@ -0,0 +1,91 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/ServerDlg.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>ServerDlg.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** Form interface generated from reading ui file '/home/kuddel/Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/ServerDlg.ui'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Di Mai 15 19:57:52 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The User Interface Compiler ($Id: ServerDlg_8h-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#ifndef SERVERDLG_H</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#define SERVERDLG_H</span>
+<a name="l00012"></a>00012 <span class="preprocessor"></span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qvariant.h&gt;</span>
+<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qdialog.h&gt;</span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;kpassdlg.h&gt;</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="keyword">class </span>QVBoxLayout;
+<a name="l00018"></a>00018 <span class="keyword">class </span>QHBoxLayout;
+<a name="l00019"></a>00019 <span class="keyword">class </span>QGridLayout;
+<a name="l00020"></a>00020 <span class="keyword">class </span>QSpacerItem;
+<a name="l00021"></a>00021 <span class="keyword">class </span>QLabel;
+<a name="l00022"></a>00022 <span class="keyword">class </span>QLineEdit;
+<a name="l00023"></a>00023 <span class="keyword">class </span>QCheckBox;
+<a name="l00024"></a>00024 <span class="keyword">class </span>QPushButton;
+<a name="l00025"></a>00025 <span class="keyword">class </span>QComboBox;
+<a name="l00026"></a>00026 <span class="keyword">class </span>QSpinBox;
+<a name="l00027"></a>00027
+<a name="l00028"></a><a class="code" href="classServerDlg.html">00028</a> <span class="keyword">class </span><a class="code" href="classServerDlg.html">ServerDlg</a> : <span class="keyword">public</span> QDialog
+<a name="l00029"></a>00029 {
+<a name="l00030"></a>00030 Q_OBJECT
+<a name="l00031"></a>00031
+<a name="l00032"></a>00032 <span class="keyword">public</span>:
+<a name="l00033"></a>00033 <a class="code" href="classServerDlg.html#c58b59def2e66e6c5bbd227152f06ff1">ServerDlg</a>( QWidget* parent = 0, <span class="keyword">const</span> <span class="keywordtype">char</span>* name = 0, <span class="keywordtype">bool</span> modal = FALSE, WFlags fl = 0 );
+<a name="l00034"></a>00034 <a class="code" href="classServerDlg.html#517c785a1d8f364cd3d6bd044f88e07e">~ServerDlg</a>();
+<a name="l00035"></a>00035
+<a name="l00036"></a><a class="code" href="classServerDlg.html#e08739ab911ad22f1baef6a47f478155">00036</a> QLabel* <a class="code" href="classServerDlg.html#e08739ab911ad22f1baef6a47f478155">QLabel_4</a>;
+<a name="l00037"></a><a class="code" href="classServerDlg.html#7a6943617bfa890cdc3b9fea25d5a217">00037</a> QLineEdit* <a class="code" href="classServerDlg.html#7a6943617bfa890cdc3b9fea25d5a217">m_EditAccount</a>;
+<a name="l00038"></a><a class="code" href="classServerDlg.html#8995a72a3416f8b38780cae0285ee300">00038</a> QLineEdit* <a class="code" href="classServerDlg.html#8995a72a3416f8b38780cae0285ee300">m_EditServer</a>;
+<a name="l00039"></a><a class="code" href="classServerDlg.html#2a451082a9b41a3c368d2239802d4340">00039</a> QLabel* <a class="code" href="classServerDlg.html#2a451082a9b41a3c368d2239802d4340">QLabel_3</a>;
+<a name="l00040"></a><a class="code" href="classServerDlg.html#2e1762f00479244febf47837bc95d14e">00040</a> QCheckBox* <a class="code" href="classServerDlg.html#2e1762f00479244febf47837bc95d14e">CheckActive</a>;
+<a name="l00041"></a><a class="code" href="classServerDlg.html#edd4686af6bac8a9b6801240595a350d">00041</a> QPushButton* <a class="code" href="classServerDlg.html#edd4686af6bac8a9b6801240595a350d">m_ButtonOk</a>;
+<a name="l00042"></a><a class="code" href="classServerDlg.html#890621d9388729ada4c7a3e46aa4ca88">00042</a> QPushButton* <a class="code" href="classServerDlg.html#890621d9388729ada4c7a3e46aa4ca88">m_ButtonCancel</a>;
+<a name="l00043"></a><a class="code" href="classServerDlg.html#4ee5b1f6981fba44c45c2dcc15340aae">00043</a> QLabel* <a class="code" href="classServerDlg.html#4ee5b1f6981fba44c45c2dcc15340aae">QLabel_1</a>;
+<a name="l00044"></a><a class="code" href="classServerDlg.html#a5df67905ccbe9d66768589a9e4e6cc2">00044</a> QLabel* <a class="code" href="classServerDlg.html#a5df67905ccbe9d66768589a9e4e6cc2">QLabel_2</a>;
+<a name="l00045"></a><a class="code" href="classServerDlg.html#9a4f7dd7a820b166cfcf8fe9efd7bd17">00045</a> QLabel* <a class="code" href="classServerDlg.html#9a4f7dd7a820b166cfcf8fe9efd7bd17">QLabel_5</a>;
+<a name="l00046"></a><a class="code" href="classServerDlg.html#e85121e9293307b93f4a88cdbed7f07f">00046</a> QLabel* <a class="code" href="classServerDlg.html#e85121e9293307b93f4a88cdbed7f07f">QLabel_6</a>;
+<a name="l00047"></a><a class="code" href="classServerDlg.html#249ee8e0562af6bfb41423158ad54ba3">00047</a> QComboBox* <a class="code" href="classServerDlg.html#249ee8e0562af6bfb41423158ad54ba3">m_ComboProtocol</a>;
+<a name="l00048"></a><a class="code" href="classServerDlg.html#e113c681047f355e626560156070d58d">00048</a> QSpinBox* <a class="code" href="classServerDlg.html#e113c681047f355e626560156070d58d">m_SpinPort</a>;
+<a name="l00049"></a><a class="code" href="classServerDlg.html#e30637c768ca6fcd772f0e3c4bad516d">00049</a> QLineEdit* <a class="code" href="classServerDlg.html#e30637c768ca6fcd772f0e3c4bad516d">m_EditUser</a>;
+<a name="l00050"></a><a class="code" href="classServerDlg.html#fde33b5549863278ffd58f1bda3c8a70">00050</a> QLineEdit* <a class="code" href="classServerDlg.html#fde33b5549863278ffd58f1bda3c8a70">m_EditPassword</a>;
+<a name="l00051"></a>00051
+<a name="l00052"></a>00052 <span class="keyword">public</span> slots:
+<a name="l00053"></a>00053 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServerDlg.html#a8fd268743a6699149f86dfd25055d05">slotButtonOkClicked</a>();
+<a name="l00054"></a>00054
+<a name="l00055"></a>00055 <span class="keyword">protected</span>:
+<a name="l00056"></a><a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">00056</a> QGridLayout* <a class="code" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a>;
+<a name="l00057"></a><a class="code" href="classServerDlg.html#5ffa85e8d10a2186ee9674261bbfd98b">00057</a> QHBoxLayout* <a class="code" href="classServerDlg.html#5ffa85e8d10a2186ee9674261bbfd98b">Layout13</a>;
+<a name="l00058"></a><a class="code" href="classServerDlg.html#a13106ba1ce57124aa233a152b7ed1a0">00058</a> QSpacerItem* <a class="code" href="classServerDlg.html#a13106ba1ce57124aa233a152b7ed1a0">Spacer1</a>;
+<a name="l00059"></a><a class="code" href="classServerDlg.html#50988c2d6da00d7aac9153c3502e971c">00059</a> QHBoxLayout* <a class="code" href="classServerDlg.html#50988c2d6da00d7aac9153c3502e971c">Layout15</a>;
+<a name="l00060"></a><a class="code" href="classServerDlg.html#fbc4e3111d287c9cf11f738e988b0c37">00060</a> QSpacerItem* <a class="code" href="classServerDlg.html#fbc4e3111d287c9cf11f738e988b0c37">Spacer11</a>;
+<a name="l00061"></a><a class="code" href="classServerDlg.html#db4ed9643452314bb65d230557549069">00061</a> QHBoxLayout* <a class="code" href="classServerDlg.html#db4ed9643452314bb65d230557549069">Layout14</a>;
+<a name="l00062"></a><a class="code" href="classServerDlg.html#ffa09ac5f6428a6486eab425b849f629">00062</a> QSpacerItem* <a class="code" href="classServerDlg.html#ffa09ac5f6428a6486eab425b849f629">Spacer10</a>;
+<a name="l00063"></a>00063
+<a name="l00064"></a>00064 <span class="keyword">protected</span> slots:
+<a name="l00065"></a>00065 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServerDlg.html#ca4f288c6200a66a56825e748292ad97">languageChange</a>();
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 };
+<a name="l00068"></a>00068
+<a name="l00069"></a>00069 <span class="preprocessor">#endif // SERVERDLG_H</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/ServerDlg_8moc-source.html b/doc/html/ServerDlg_8moc-source.html
new file mode 100644
index 0000000..446d746
--- /dev/null
+++ b/doc/html/ServerDlg_8moc-source.html
@@ -0,0 +1,126 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/ServerDlg.moc Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>ServerDlg.moc</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** ServerDlg meta object code from reading C++ file 'ServerDlg.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Tue May 15 19:57:54 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: ServerDlg_8moc-source.html,v 1.8 2007/05/16 20:11:59 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "ServerDlg.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *ServerDlg::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"ServerDlg"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *ServerDlg::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_ServerDlg( <span class="stringliteral">"ServerDlg"</span>, &amp;ServerDlg::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString ServerDlg::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"ServerDlg"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString ServerDlg::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"ServerDlg"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* ServerDlg::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = QDialog::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotButtonOkClicked"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"languageChange"</span>, 0, 0 };
+<a name="l00057"></a>00057 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00058"></a>00058 { <span class="stringliteral">"slotButtonOkClicked()"</span>, &amp;slot_0, QMetaData::Public },
+<a name="l00059"></a>00059 { <span class="stringliteral">"languageChange()"</span>, &amp;slot_1, QMetaData::Protected }
+<a name="l00060"></a>00060 };
+<a name="l00061"></a>00061 metaObj = QMetaObject::new_metaobject(
+<a name="l00062"></a>00062 <span class="stringliteral">"ServerDlg"</span>, parentObject,
+<a name="l00063"></a>00063 slot_tbl, 2,
+<a name="l00064"></a>00064 0, 0,
+<a name="l00065"></a>00065 #ifndef QT_NO_PROPERTIES
+<a name="l00066"></a>00066 0, 0,
+<a name="l00067"></a>00067 0, 0,
+<a name="l00068"></a>00068 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00069"></a>00069 0, 0 );
+<a name="l00070"></a>00070 cleanUp_ServerDlg.setMetaObject( metaObj );
+<a name="l00071"></a>00071 <span class="keywordflow">return</span> metaObj;
+<a name="l00072"></a>00072 }
+<a name="l00073"></a>00073
+<a name="l00074"></a>00074 <span class="keywordtype">void</span>* ServerDlg::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00075"></a>00075 {
+<a name="l00076"></a>00076 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"ServerDlg"</span> ) )
+<a name="l00077"></a>00077 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00078"></a>00078 <span class="keywordflow">return</span> QDialog::qt_cast( clname );
+<a name="l00079"></a>00079 }
+<a name="l00080"></a>00080
+<a name="l00081"></a>00081 <span class="keywordtype">bool</span> ServerDlg::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00082"></a>00082 {
+<a name="l00083"></a>00083 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00084"></a>00084 <span class="keywordflow">case</span> 0: <a class="code" href="classServerDlg.html#a8fd268743a6699149f86dfd25055d05">slotButtonOkClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00085"></a>00085 <span class="keywordflow">case</span> 1: <a class="code" href="classServerDlg.html#ca4f288c6200a66a56825e748292ad97">languageChange</a>(); <span class="keywordflow">break</span>;
+<a name="l00086"></a>00086 <span class="keywordflow">default</span>:
+<a name="l00087"></a>00087 <span class="keywordflow">return</span> QDialog::qt_invoke( _id, _o );
+<a name="l00088"></a>00088 }
+<a name="l00089"></a>00089 <span class="keywordflow">return</span> TRUE;
+<a name="l00090"></a>00090 }
+<a name="l00091"></a>00091
+<a name="l00092"></a>00092 <span class="keywordtype">bool</span> ServerDlg::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00093"></a>00093 {
+<a name="l00094"></a>00094 <span class="keywordflow">return</span> QDialog::qt_emit(_id,_o);
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00097"></a>00097 <span class="preprocessor"></span>
+<a name="l00098"></a>00098 <span class="keywordtype">bool</span> ServerDlg::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00099"></a>00099 {
+<a name="l00100"></a>00100 <span class="keywordflow">return</span> QDialog::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00101"></a>00101 }
+<a name="l00102"></a>00102
+<a name="l00103"></a>00103 <span class="keywordtype">bool</span> ServerDlg::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00104"></a>00104 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/alertdialog_8cpp-source.html b/doc/html/alertdialog_8cpp-source.html
new file mode 100644
index 0000000..629bd9c
--- /dev/null
+++ b/doc/html/alertdialog_8cpp-source.html
@@ -0,0 +1,61 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/alertdialog.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>alertdialog.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> alertdialog.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Sun Nov 4 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include "alertdialog.h"</span>
+<a name="l00019"></a>00019
+<a name="l00020"></a><a class="code" href="classAlertDialog.html#0c3106b439a19f0b5a240b3095595880">00020</a> <a class="code" href="classAlertDialog.html#0c3106b439a19f0b5a240b3095595880">AlertDialog::AlertDialog</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name ):
+<a name="l00021"></a>00021 <a class="code" href="classAlertDlg.html">AlertDlg</a>(parent,name,true)
+<a name="l00022"></a>00022 {
+<a name="l00023"></a>00023 <span class="comment">// position the dialog at the upper left corner of the main window.</span>
+<a name="l00024"></a>00024 <span class="comment">// if the main window is iconized, the last position on screen is used.</span>
+<a name="l00025"></a>00025 setGeometry (parent-&gt;x (), parent-&gt;y (), width (), height ());
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 <span class="comment">// now show the dialog</span>
+<a name="l00028"></a>00028 show ();
+<a name="l00029"></a>00029 }
+<a name="l00030"></a>00030
+<a name="l00031"></a><a class="code" href="classAlertDialog.html#5ea8838b691df53710d053c592ce2c7c">00031</a> <a class="code" href="classAlertDialog.html#5ea8838b691df53710d053c592ce2c7c">AlertDialog::~AlertDialog</a>()
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 }
+<a name="l00034"></a>00034
+<a name="l00035"></a><a class="code" href="classAlertDialog.html#c21e0287175d595335f38f3d185db704">00035</a> <span class="keywordtype">void</span> <a class="code" href="classAlertDialog.html#c21e0287175d595335f38f3d185db704">AlertDialog::slotOk</a> ()
+<a name="l00036"></a>00036 {
+<a name="l00037"></a>00037 emit <a class="code" href="classAlertDialog.html#08aea36dcb2c5932884c5e38940fa3fa">signalOk</a> ();
+<a name="l00038"></a>00038 }
+<a name="l00039"></a>00039
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/alertdialog_8h-source.html b/doc/html/alertdialog_8h-source.html
new file mode 100644
index 0000000..e5aa419
--- /dev/null
+++ b/doc/html/alertdialog_8h-source.html
@@ -0,0 +1,63 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/alertdialog.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>alertdialog.h</h1><a href="alertdialog_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> alertdialog.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Sun Nov 4 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef ALERTDIALOG_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define ALERTDIALOG_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qwidget.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "<a class="code" href="AlertDlg_8h.html">AlertDlg.h</a>"</span>
+<a name="l00023"></a>00023
+<a name="l00028"></a><a class="code" href="classAlertDialog.html">00028</a> <span class="keyword">class </span><a class="code" href="classAlertDialog.html">AlertDialog</a> : <span class="keyword">public</span> <a class="code" href="classAlertDlg.html">AlertDlg</a>
+<a name="l00029"></a>00029 {
+<a name="l00030"></a>00030 Q_OBJECT
+<a name="l00031"></a>00031 <span class="keyword">public</span>:
+<a name="l00032"></a>00032 <a class="code" href="classAlertDialog.html#0c3106b439a19f0b5a240b3095595880">AlertDialog</a>(QWidget *parent=0, <span class="keyword">const</span> <span class="keywordtype">char</span> *name=0);
+<a name="l00033"></a>00033 <a class="code" href="classAlertDialog.html#5ea8838b691df53710d053c592ce2c7c">~AlertDialog</a>();
+<a name="l00034"></a>00034 <span class="keyword">public</span> slots:
+<a name="l00035"></a>00035 <span class="keywordtype">void</span> <a class="code" href="classAlertDialog.html#c21e0287175d595335f38f3d185db704">slotOk</a> ();
+<a name="l00036"></a>00036 signals:
+<a name="l00037"></a>00037 <span class="keywordtype">void</span> <a class="code" href="classAlertDialog.html#08aea36dcb2c5932884c5e38940fa3fa">signalOk</a> ();
+<a name="l00038"></a>00038 };
+<a name="l00039"></a>00039
+<a name="l00040"></a>00040 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/alertdialog_8moc_8cpp-source.html b/doc/html/alertdialog_8moc_8cpp-source.html
new file mode 100644
index 0000000..56b4c7e
--- /dev/null
+++ b/doc/html/alertdialog_8moc_8cpp-source.html
@@ -0,0 +1,138 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/alertdialog.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>alertdialog.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** AlertDialog meta object code from reading C++ file 'alertdialog.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Fri Jun 29 22:09:03 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: alertdialog_8moc_8cpp-source.html,v 1.10 2007/07/05 17:37:49 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "alertdialog.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *AlertDialog::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"AlertDialog"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *AlertDialog::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_AlertDialog( <span class="stringliteral">"AlertDialog"</span>, &amp;AlertDialog::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString AlertDialog::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"AlertDialog"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString AlertDialog::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"AlertDialog"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* AlertDialog::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = AlertDlg::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotOk"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00057"></a>00057 { <span class="stringliteral">"slotOk()"</span>, &amp;slot_0, QMetaData::Public }
+<a name="l00058"></a>00058 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod signal_0 = {<span class="stringliteral">"signalOk"</span>, 0, 0 };
+<a name="l00060"></a>00060 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData signal_tbl[] = {
+<a name="l00061"></a>00061 { <span class="stringliteral">"signalOk()"</span>, &amp;signal_0, QMetaData::Public }
+<a name="l00062"></a>00062 };
+<a name="l00063"></a>00063 metaObj = QMetaObject::new_metaobject(
+<a name="l00064"></a>00064 <span class="stringliteral">"AlertDialog"</span>, parentObject,
+<a name="l00065"></a>00065 slot_tbl, 1,
+<a name="l00066"></a>00066 signal_tbl, 1,
+<a name="l00067"></a>00067 #ifndef QT_NO_PROPERTIES
+<a name="l00068"></a>00068 0, 0,
+<a name="l00069"></a>00069 0, 0,
+<a name="l00070"></a>00070 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00071"></a>00071 0, 0 );
+<a name="l00072"></a>00072 cleanUp_AlertDialog.setMetaObject( metaObj );
+<a name="l00073"></a>00073 <span class="keywordflow">return</span> metaObj;
+<a name="l00074"></a>00074 }
+<a name="l00075"></a>00075
+<a name="l00076"></a>00076 <span class="keywordtype">void</span>* AlertDialog::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00077"></a>00077 {
+<a name="l00078"></a>00078 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"AlertDialog"</span> ) )
+<a name="l00079"></a>00079 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00080"></a>00080 <span class="keywordflow">return</span> AlertDlg::qt_cast( clname );
+<a name="l00081"></a>00081 }
+<a name="l00082"></a>00082
+<a name="l00083"></a>00083 <span class="comment">// SIGNAL signalOk</span>
+<a name="l00084"></a><a class="code" href="classAlertDialog.html#08aea36dcb2c5932884c5e38940fa3fa">00084</a> <span class="keywordtype">void</span> <a class="code" href="classAlertDialog.html#08aea36dcb2c5932884c5e38940fa3fa">AlertDialog::signalOk</a>()
+<a name="l00085"></a>00085 {
+<a name="l00086"></a>00086 activate_signal( staticMetaObject()-&gt;signalOffset() + 0 );
+<a name="l00087"></a>00087 }
+<a name="l00088"></a>00088
+<a name="l00089"></a>00089 <span class="keywordtype">bool</span> AlertDialog::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00090"></a>00090 {
+<a name="l00091"></a>00091 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00092"></a>00092 <span class="keywordflow">case</span> 0: <a class="code" href="classAlertDialog.html#c21e0287175d595335f38f3d185db704">slotOk</a>(); <span class="keywordflow">break</span>;
+<a name="l00093"></a>00093 <span class="keywordflow">default</span>:
+<a name="l00094"></a>00094 <span class="keywordflow">return</span> AlertDlg::qt_invoke( _id, _o );
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096 <span class="keywordflow">return</span> TRUE;
+<a name="l00097"></a>00097 }
+<a name="l00098"></a>00098
+<a name="l00099"></a>00099 <span class="keywordtype">bool</span> AlertDialog::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00100"></a>00100 {
+<a name="l00101"></a>00101 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;signalOffset() ) {
+<a name="l00102"></a>00102 <span class="keywordflow">case</span> 0: <a class="code" href="classAlertDialog.html#08aea36dcb2c5932884c5e38940fa3fa">signalOk</a>(); <span class="keywordflow">break</span>;
+<a name="l00103"></a>00103 <span class="keywordflow">default</span>:
+<a name="l00104"></a>00104 <span class="keywordflow">return</span> AlertDlg::qt_emit(_id,_o);
+<a name="l00105"></a>00105 }
+<a name="l00106"></a>00106 <span class="keywordflow">return</span> TRUE;
+<a name="l00107"></a>00107 }
+<a name="l00108"></a>00108 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00109"></a>00109 <span class="preprocessor"></span>
+<a name="l00110"></a>00110 <span class="keywordtype">bool</span> AlertDialog::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00111"></a>00111 {
+<a name="l00112"></a>00112 <span class="keywordflow">return</span> AlertDlg::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00113"></a>00113 }
+<a name="l00114"></a>00114
+<a name="l00115"></a>00115 <span class="keywordtype">bool</span> AlertDialog::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00116"></a>00116 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/annotated.html b/doc/html/annotated.html
new file mode 100644
index 0000000..c8b7486
--- /dev/null
+++ b/doc/html/annotated.html
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li id="current"><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>kshowmail.kdevelop Class List</h1>Here are the classes, structs, unions and interfaces with brief descriptions:<table>
+ <tr><td class="indexkey"><a class="el" href="classAccountSetupDialog.html">AccountSetupDialog</a></td><td class="indexvalue">Dialog to setup an account </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classAccountSetupItem.html">AccountSetupItem</a></td><td class="indexvalue">This class is used in <a class="el" href="classConfigAccounts.html">ConfigAccounts</a> to show the available accounts in the list view and to store an account setup </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classAlertDialog.html">AlertDialog</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classConfigAccounts.html">ConfigAccounts</a></td><td class="indexvalue">Part of the setup dialog (<a class="el" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">KShowMailApp::SetupDialog</a>) to configure the accounts </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classConfigActions.html">ConfigActions</a></td><td class="indexvalue">Part of the setup dialog (<a class="el" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">KShowMailApp::SetupDialog</a>) to configure the actions </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classConfigDisplay.html">ConfigDisplay</a></td><td class="indexvalue">Part of the setup dialog (<a class="el" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">KShowMailApp::SetupDialog</a>) to configure the display </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classConfigElem.html">ConfigElem</a></td><td class="indexvalue">Represents a mail account </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classConfigFilter.html">ConfigFilter</a></td><td class="indexvalue">Part of the setup dialog (<a class="el" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">KShowMailApp::SetupDialog</a>) to configure the filter </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classConfigGeneral.html">ConfigGeneral</a></td><td class="indexvalue">Part of the setup dialog (<a class="el" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">KShowMailApp::SetupDialog</a>) to configure general things </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classConfigList.html">ConfigList</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classConfigLog.html">ConfigLog</a></td><td class="indexvalue">Part of the setup dialog (<a class="el" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">KShowMailApp::SetupDialog</a>) to configure the log </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classConfigSpamcheck.html">ConfigSpamcheck</a></td><td class="indexvalue">Part of the setup dialog (<a class="el" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">KShowMailApp::SetupDialog</a>) to configure the spam check </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classFilterCriteriaWidget.html">FilterCriteriaWidget</a></td><td class="indexvalue">Part of the filter setup dialog (class <a class="el" href="classFilterSetupDialog.html">FilterSetupDialog</a>) to show a criteria of the selected filter </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classFilterItem.html">FilterItem</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classFilterItemCriteria.html">FilterItemCriteria</a></td><td class="indexvalue">This is a criteria of a filter item. For using create an object and call <a class="el" href="classFilterItemCriteria.html#e375925202f58a23336366bf68c8d1ab">check()</a>. It gets its configuration itself from the config file at creation time. You can't reload the setup </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classFilterLog.html">FilterLog</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classFilterLogEntry.html">FilterLogEntry</a></td><td class="indexvalue">An Object of this class contains the datas about a deleted or moved mail. These objects are stored in the lists of the filter log </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classFilterLogView.html">FilterLogView</a></td><td class="indexvalue">This dialog box shows the filter log </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classFilterLogViewDeletedItem.html">FilterLogViewDeletedItem</a></td><td class="indexvalue">Item of the filter log view of deleted mails </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classFilterLogViewMovedItem.html">FilterLogViewMovedItem</a></td><td class="indexvalue">Item of the filter log view of moved mails </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classFilterSetupDialog.html">FilterSetupDialog</a></td><td class="indexvalue">Dialog to setup a filter </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classFilterSetupItem.html">FilterSetupItem</a></td><td class="indexvalue">This class is used in <a class="el" href="classConfigFilter.html">ConfigFilter</a> to show the available filters in the list view and to store a filter setup </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classHeaderFilter.html">HeaderFilter</a></td><td class="indexvalue">This is the mail header filter. Call <a class="el" href="classHeaderFilter.html#ebfa41067bf1df5c34ebeb5fb6ea9029">check()</a> with some header datas of the mail to get the configured action for this mail. If the settings was changed by the config GUI you have to call <a class="el" href="classHeaderFilter.html#46c0c049254cb8c9aa1aa6946f2f4165">load()</a> </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classKShowMailDock.html">KShowMailDock</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classMailBoxWizard.html">MailBoxWizard</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classMailBoxWizardListItem.html">MailBoxWizardListItem</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classSenderListDialog.html">SenderListDialog</a></td><td class="indexvalue">This is a dialog to edit the blacklist and whitelist. It is used by the class <a class="el" href="classConfigFilter.html">ConfigFilter</a> </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classSenderListFilter.html">SenderListFilter</a></td><td class="indexvalue">This class represents both the blacklist and the whitelist. For using create an object of it and call <a class="el" href="classSenderListFilter.html#03ac4bb843906d784fcbe6ac8bef7b31">check()</a> to test a sender address. You have to call <a class="el" href="classSenderListFilter.html#6e7a4477291793511c385bdd30c349f1">load()</a> after the settings in the config file was changed </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classServerDialog.html">ServerDialog</a></td><td class="indexvalue">Dialog to edit account options. You can not create a new account or edit the account name </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classShowHeaderDialog.html">ShowHeaderDialog</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classShowMailDialog.html">ShowMailDialog</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classShowRecord.html">ShowRecord</a></td><td class="indexvalue">List which contains all mails of an account </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td class="indexvalue">Represents a mail </td></tr>
+ <tr><td class="indexkey"><a class="el" href="structTypes_1_1DownloadActionParams__Type.html">Types::DownloadActionParams_Type</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="structTypes_1_1FilterCriteria__Type.html">Types::FilterCriteria_Type</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classUniqueApp.html">UniqueApp</a></td><td class="indexvalue">Creates a unique instance of kshowmail </td></tr>
+</table>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classAlertDialog-members.html b/doc/html/classAlertDialog-members.html
new file mode 100644
index 0000000..e5379e4
--- /dev/null
+++ b/doc/html/classAlertDialog-members.html
@@ -0,0 +1,41 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>AlertDialog Member List</h1>This is the complete list of members for <a class="el" href="classAlertDialog.html">AlertDialog</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classAlertDialog.html#0c3106b439a19f0b5a240b3095595880">AlertDialog</a>(QWidget *parent=0, const char *name=0)</td><td><a class="el" href="classAlertDialog.html">AlertDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#b8b7463dbb2a1c27a84f3846db46027b">AlertDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlgLayout</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#a00eea0c7a184d77386a0d9d39624e7b">languageChange</a>()</td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">m_ButtonIgnore</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">m_ButtonOk</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#68460203169eb997f60e1d487309399a">PixmapLabel2</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">QLabel_1</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">QLabel_2</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDialog.html#08aea36dcb2c5932884c5e38940fa3fa">signalOk</a>()</td><td><a class="el" href="classAlertDialog.html">AlertDialog</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDialog.html#c21e0287175d595335f38f3d185db704">slotOk</a>()</td><td><a class="el" href="classAlertDialog.html">AlertDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDialog.html#5ea8838b691df53710d053c592ce2c7c">~AlertDialog</a>()</td><td><a class="el" href="classAlertDialog.html">AlertDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#268ce013bcd724380693d42f3bcae203">~AlertDlg</a>()</td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classAlertDialog.html b/doc/html/classAlertDialog.html
new file mode 100644
index 0000000..203ffbb
--- /dev/null
+++ b/doc/html/classAlertDialog.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: AlertDialog Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>AlertDialog Class Reference</h1><!-- doxytag: class="AlertDialog" --><!-- doxytag: inherits="AlertDlg" --><code>#include &lt;<a class="el" href="alertdialog_8h-source.html">alertdialog.h</a>&gt;</code>
+<p>
+<p>Inheritance diagram for AlertDialog:
+<p><center><img src="classAlertDialog.png" usemap="#AlertDialog_map" border="0" alt=""></center>
+<map name="AlertDialog_map">
+<area href="classAlertDlg.html" alt="AlertDlg" shape="rect" coords="0,0,75,24">
+</map>
+<a href="classAlertDialog-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDialog.html#c21e0287175d595335f38f3d185db704">slotOk</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Signals</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDialog.html#08aea36dcb2c5932884c5e38940fa3fa">signalOk</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDialog.html#0c3106b439a19f0b5a240b3095595880">AlertDialog</a> (QWidget *parent=0, const char *name=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDialog.html#5ea8838b691df53710d053c592ce2c7c">~AlertDialog</a> ()</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke </dd></dl>
+
+<p>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="0c3106b439a19f0b5a240b3095595880"></a><!-- doxytag: member="AlertDialog::AlertDialog" ref="0c3106b439a19f0b5a240b3095595880" args="(QWidget *parent=0, const char *name=0)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">AlertDialog::AlertDialog </td>
+ <td>(</td>
+ <td class="paramtype">QWidget *&nbsp;</td>
+ <td class="paramname"> <em>parent</em> = <code>0</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&nbsp;</td>
+ <td class="paramname"> <em>name</em> = <code>0</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="5ea8838b691df53710d053c592ce2c7c"></a><!-- doxytag: member="AlertDialog::~AlertDialog" ref="5ea8838b691df53710d053c592ce2c7c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">AlertDialog::~AlertDialog </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="c21e0287175d595335f38f3d185db704"></a><!-- doxytag: member="AlertDialog::slotOk" ref="c21e0287175d595335f38f3d185db704" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void AlertDialog::slotOk </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [virtual, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>
+Reimplemented from <a class="el" href="classAlertDlg.html#ccef482c60628a7c5e35633f9810a905">AlertDlg</a>.
+</div>
+</div><p>
+<a class="anchor" name="08aea36dcb2c5932884c5e38940fa3fa"></a><!-- doxytag: member="AlertDialog::signalOk" ref="08aea36dcb2c5932884c5e38940fa3fa" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void AlertDialog::signalOk </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="alertdialog_8h-source.html">alertdialog.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="alertdialog_8cpp.html">alertdialog.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classAlertDialog.png b/doc/html/classAlertDialog.png
new file mode 100644
index 0000000..377ba37
--- /dev/null
+++ b/doc/html/classAlertDialog.png
Binary files differ
diff --git a/doc/html/classAlertDlg-members.html b/doc/html/classAlertDlg-members.html
new file mode 100644
index 0000000..4956952
--- /dev/null
+++ b/doc/html/classAlertDlg-members.html
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>AlertDlg Member List</h1>This is the complete list of members for <a class="el" href="classAlertDlg.html">AlertDlg</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#b8b7463dbb2a1c27a84f3846db46027b">AlertDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlgLayout</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#8309795df6391db4e19bf7d3c2c0a4b5">image0</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#a00eea0c7a184d77386a0d9d39624e7b">languageChange</a>()</td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">m_ButtonIgnore</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">m_ButtonOk</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#68460203169eb997f60e1d487309399a">PixmapLabel2</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">QLabel_1</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">QLabel_2</a></td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#ccef482c60628a7c5e35633f9810a905">slotOk</a>()</td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAlertDlg.html#268ce013bcd724380693d42f3bcae203">~AlertDlg</a>()</td><td><a class="el" href="classAlertDlg.html">AlertDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classAlertDlg.html b/doc/html/classAlertDlg.html
new file mode 100644
index 0000000..1ac11cf
--- /dev/null
+++ b/doc/html/classAlertDlg.html
@@ -0,0 +1,275 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: AlertDlg Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>AlertDlg Class Reference</h1><!-- doxytag: class="AlertDlg" --><code>#include &lt;<a class="el" href="AlertDlg_8h-source.html">AlertDlg.h</a>&gt;</code>
+<p>
+<p>Inheritance diagram for AlertDlg:
+<p><center><img src="classAlertDlg.png" usemap="#AlertDlg_map" border="0" alt=""></center>
+<map name="AlertDlg_map">
+<area href="classAlertDialog.html" alt="AlertDialog" shape="rect" coords="0,56,75,80">
+</map>
+<a href="classAlertDlg-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDlg.html#ccef482c60628a7c5e35633f9810a905">slotOk</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDlg.html#b8b7463dbb2a1c27a84f3846db46027b">AlertDlg</a> (QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDlg.html#268ce013bcd724380693d42f3bcae203">~AlertDlg</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">m_ButtonIgnore</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">m_ButtonOk</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDlg.html#68460203169eb997f60e1d487309399a">PixmapLabel2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">QLabel_1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">QLabel_2</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDlg.html#a00eea0c7a184d77386a0d9d39624e7b">languageChange</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlgLayout</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QPixmap&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAlertDlg.html#8309795df6391db4e19bf7d3c2c0a4b5">image0</a></td></tr>
+
+</table>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="b8b7463dbb2a1c27a84f3846db46027b"></a><!-- doxytag: member="AlertDlg::AlertDlg" ref="b8b7463dbb2a1c27a84f3846db46027b" args="(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">AlertDlg::AlertDlg </td>
+ <td>(</td>
+ <td class="paramtype">QWidget *&nbsp;</td>
+ <td class="paramname"> <em>parent</em> = <code>0</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&nbsp;</td>
+ <td class="paramname"> <em>name</em> = <code>0</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>modal</em> = <code>FALSE</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">WFlags&nbsp;</td>
+ <td class="paramname"> <em>fl</em> = <code>0</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="268ce013bcd724380693d42f3bcae203"></a><!-- doxytag: member="AlertDlg::~AlertDlg" ref="268ce013bcd724380693d42f3bcae203" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">AlertDlg::~AlertDlg </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="ccef482c60628a7c5e35633f9810a905"></a><!-- doxytag: member="AlertDlg::slotOk" ref="ccef482c60628a7c5e35633f9810a905" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void AlertDlg::slotOk </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [virtual, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="classAlertDialog.html#c21e0287175d595335f38f3d185db704">AlertDialog</a>.
+</div>
+</div><p>
+<a class="anchor" name="a00eea0c7a184d77386a0d9d39624e7b"></a><!-- doxytag: member="AlertDlg::languageChange" ref="a00eea0c7a184d77386a0d9d39624e7b" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void AlertDlg::languageChange </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, virtual, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="eb7788e0ac9452d9875139eb5a5117c4"></a><!-- doxytag: member="AlertDlg::m_ButtonIgnore" ref="eb7788e0ac9452d9875139eb5a5117c4" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QPushButton* <a class="el" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">AlertDlg::m_ButtonIgnore</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="6aed3204e4061bbcf2af10d196d1d33a"></a><!-- doxytag: member="AlertDlg::m_ButtonOk" ref="6aed3204e4061bbcf2af10d196d1d33a" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QPushButton* <a class="el" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">AlertDlg::m_ButtonOk</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="68460203169eb997f60e1d487309399a"></a><!-- doxytag: member="AlertDlg::PixmapLabel2" ref="68460203169eb997f60e1d487309399a" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QLabel* <a class="el" href="classAlertDlg.html#68460203169eb997f60e1d487309399a">AlertDlg::PixmapLabel2</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="6c55122d5c924676559a12d39863488e"></a><!-- doxytag: member="AlertDlg::QLabel_1" ref="6c55122d5c924676559a12d39863488e" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QLabel* <a class="el" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">AlertDlg::QLabel_1</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="2993a64823b3edf7874709d2108ce3d7"></a><!-- doxytag: member="AlertDlg::QLabel_2" ref="2993a64823b3edf7874709d2108ce3d7" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QLabel* <a class="el" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">AlertDlg::QLabel_2</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="7ff66f74b2fcc1c1ebe7b9c48c9478ca"></a><!-- doxytag: member="AlertDlg::AlertDlgLayout" ref="7ff66f74b2fcc1c1ebe7b9c48c9478ca" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QGridLayout* <a class="el" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlg::AlertDlgLayout</a><code> [protected]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="8309795df6391db4e19bf7d3c2c0a4b5"></a><!-- doxytag: member="AlertDlg::image0" ref="8309795df6391db4e19bf7d3c2c0a4b5" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QPixmap <a class="el" href="classAlertDlg.html#8309795df6391db4e19bf7d3c2c0a4b5">AlertDlg::image0</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="AlertDlg_8h-source.html">AlertDlg.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="AlertDlg_8cpp.html">AlertDlg.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classAlertDlg.png b/doc/html/classAlertDlg.png
new file mode 100644
index 0000000..41b0f9b
--- /dev/null
+++ b/doc/html/classAlertDlg.png
Binary files differ
diff --git a/doc/html/classCommandDialog-members.html b/doc/html/classCommandDialog-members.html
new file mode 100644
index 0000000..40a9e63
--- /dev/null
+++ b/doc/html/classCommandDialog-members.html
@@ -0,0 +1,55 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>CommandDialog Member List</h1>This is the complete list of members for <a class="el" href="classCommandDialog.html">CommandDialog</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classCommandDialog.html#bd38a3e65b0dce5805404012f0613cff">CommandDialog</a>(QWidget *parent, const char *name, CommandList *list, ConfigElem *pConfig, ConfigList *pConfigList)</td><td><a class="el" href="classCommandDialog.html">CommandDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#00435683972414b1f2ca8bcb9e1dbc91">CommandDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#f4d0781c175dda013e4eb5d512edf6ac">CommandDlgLayout</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#0c4debe5a9a4cffefbe15970b3161145">languageChange</a>()</td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#bb726a94053a9e1aba96babad4e5c024">Layout6</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#44506cd25120706b4dabcf50e45a8d70">m_ButtonCancel</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#15cdabaf87020ef1ead6ecd7e61d1dea">m_ButtonOk</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a></td><td><a class="el" href="classCommandDialog.html">CommandDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDialog.html#df9a5022f1021b82ba4426edd688bc26">m_pConfig</a></td><td><a class="el" href="classCommandDialog.html">CommandDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDialog.html#ed633f71695d6a861d71c2811a51d2af">m_pConfigList</a></td><td><a class="el" href="classCommandDialog.html">CommandDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDialog.html#40534ab21fbace3c1a1a04ebeb7a8d02">m_plist</a></td><td><a class="el" href="classCommandDialog.html">CommandDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#11cd0e642b8082cc53342e640bb9491d">QGroupBox_1Layout</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDialog.html#dda22468a397da253b53f5e6fb355e51">slotAdd</a>()</td><td><a class="el" href="classCommandDialog.html">CommandDialog</a></td><td><code> [private, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDialog.html#cd99b824ab0b9db86f17ec4292665251">slotCommandActivated</a>(int)</td><td><a class="el" href="classCommandDialog.html">CommandDialog</a></td><td><code> [private, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDialog.html#8677e258307ae6388b27cb904657c544">slotCopy</a>()</td><td><a class="el" href="classCommandDialog.html">CommandDialog</a></td><td><code> [private, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDialog.html#cab1d5db08aac54c1adf59462a3c2ecb">slotDelete</a>()</td><td><a class="el" href="classCommandDialog.html">CommandDialog</a></td><td><code> [private, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDialog.html#fb379bb2e58af29cb4a41192d09baa5c">slotEdit</a>()</td><td><a class="el" href="classCommandDialog.html">CommandDialog</a></td><td><code> [private, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDialog.html#0dafa016ff6fd4f2273274c0c90f309c">slotOk</a>()</td><td><a class="el" href="classCommandDialog.html">CommandDialog</a></td><td><code> [private, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#58c806acab3e0beb26bc507ac23db903">Spacer11</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDialog.html#192de72c165b17b2881c0ba8f60745c1">~CommandDialog</a>()</td><td><a class="el" href="classCommandDialog.html">CommandDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#0eb54248bcf1851da5c2c054582b1e99">~CommandDlg</a>()</td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classCommandDialog.html b/doc/html/classCommandDialog.html
new file mode 100644
index 0000000..ea6f4ca
--- /dev/null
+++ b/doc/html/classCommandDialog.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: CommandDialog Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>CommandDialog Class Reference</h1><!-- doxytag: class="CommandDialog" --><!-- doxytag: inherits="CommandDlg" --><p>Inheritance diagram for CommandDialog:
+<p><center><img src="classCommandDialog.png" usemap="#CommandDialog_map" border="0" alt=""></center>
+<map name="CommandDialog_map">
+<area href="classCommandDlg.html" alt="CommandDlg" shape="rect" coords="0,0,103,24">
+</map>
+<a href="classCommandDialog-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bd38a3e65b0dce5805404012f0613cff"></a><!-- doxytag: member="CommandDialog::CommandDialog" ref="bd38a3e65b0dce5805404012f0613cff" args="(QWidget *parent, const char *name, CommandList *list, ConfigElem *pConfig, ConfigList *pConfigList)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDialog.html#bd38a3e65b0dce5805404012f0613cff">CommandDialog</a> (QWidget *parent, const char *name, <a class="el" href="classCommandList.html">CommandList</a> *list, <a class="el" href="classConfigElem.html">ConfigElem</a> *pConfig, <a class="el" href="classConfigList.html">ConfigList</a> *pConfigList)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="192de72c165b17b2881c0ba8f60745c1"></a><!-- doxytag: member="CommandDialog::~CommandDialog" ref="192de72c165b17b2881c0ba8f60745c1" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDialog.html#192de72c165b17b2881c0ba8f60745c1">~CommandDialog</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dda22468a397da253b53f5e6fb355e51"></a><!-- doxytag: member="CommandDialog::slotAdd" ref="dda22468a397da253b53f5e6fb355e51" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDialog.html#dda22468a397da253b53f5e6fb355e51">slotAdd</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fb379bb2e58af29cb4a41192d09baa5c"></a><!-- doxytag: member="CommandDialog::slotEdit" ref="fb379bb2e58af29cb4a41192d09baa5c" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDialog.html#fb379bb2e58af29cb4a41192d09baa5c">slotEdit</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8677e258307ae6388b27cb904657c544"></a><!-- doxytag: member="CommandDialog::slotCopy" ref="8677e258307ae6388b27cb904657c544" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDialog.html#8677e258307ae6388b27cb904657c544">slotCopy</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cab1d5db08aac54c1adf59462a3c2ecb"></a><!-- doxytag: member="CommandDialog::slotDelete" ref="cab1d5db08aac54c1adf59462a3c2ecb" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDialog.html#cab1d5db08aac54c1adf59462a3c2ecb">slotDelete</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0dafa016ff6fd4f2273274c0c90f309c"></a><!-- doxytag: member="CommandDialog::slotOk" ref="0dafa016ff6fd4f2273274c0c90f309c" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDialog.html#0dafa016ff6fd4f2273274c0c90f309c">slotOk</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd99b824ab0b9db86f17ec4292665251"></a><!-- doxytag: member="CommandDialog::slotCommandActivated" ref="cd99b824ab0b9db86f17ec4292665251" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDialog.html#cd99b824ab0b9db86f17ec4292665251">slotCommandActivated</a> (int)</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="40534ab21fbace3c1a1a04ebeb7a8d02"></a><!-- doxytag: member="CommandDialog::m_plist" ref="40534ab21fbace3c1a1a04ebeb7a8d02" args="" -->
+<a class="el" href="classCommandList.html">CommandList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDialog.html#40534ab21fbace3c1a1a04ebeb7a8d02">m_plist</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cc18c807ba3c9c1d6fc8000b0c4729b9"></a><!-- doxytag: member="CommandDialog::m_locallist" ref="cc18c807ba3c9c1d6fc8000b0c4729b9" args="" -->
+<a class="el" href="classCommandList.html">CommandList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ed633f71695d6a861d71c2811a51d2af"></a><!-- doxytag: member="CommandDialog::m_pConfigList" ref="ed633f71695d6a861d71c2811a51d2af" args="" -->
+<a class="el" href="classConfigList.html">ConfigList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDialog.html#ed633f71695d6a861d71c2811a51d2af">m_pConfigList</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="df9a5022f1021b82ba4426edd688bc26"></a><!-- doxytag: member="CommandDialog::m_pConfig" ref="df9a5022f1021b82ba4426edd688bc26" args="" -->
+<a class="el" href="classConfigElem.html">ConfigElem</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDialog.html#df9a5022f1021b82ba4426edd688bc26">m_pConfig</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="commanddialog_8h-source.html#l00035">35</a> of file <a class="el" href="commanddialog_8h-source.html">commanddialog.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="commanddialog_8h-source.html">commanddialog.h</a><li>kshowmail/<a class="el" href="commanddialog_8cpp-source.html">commanddialog.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classCommandDialog.png b/doc/html/classCommandDialog.png
new file mode 100644
index 0000000..c78390e
--- /dev/null
+++ b/doc/html/classCommandDialog.png
Binary files differ
diff --git a/doc/html/classCommandDlg-members.html b/doc/html/classCommandDlg-members.html
new file mode 100644
index 0000000..867d0b5
--- /dev/null
+++ b/doc/html/classCommandDlg-members.html
@@ -0,0 +1,49 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>CommandDlg Member List</h1>This is the complete list of members for <a class="el" href="classCommandDlg.html">CommandDlg</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#00435683972414b1f2ca8bcb9e1dbc91">CommandDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#f4d0781c175dda013e4eb5d512edf6ac">CommandDlgLayout</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#0c4debe5a9a4cffefbe15970b3161145">languageChange</a>()</td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#bb726a94053a9e1aba96babad4e5c024">Layout6</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#44506cd25120706b4dabcf50e45a8d70">m_ButtonCancel</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#15cdabaf87020ef1ead6ecd7e61d1dea">m_ButtonOk</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#11cd0e642b8082cc53342e640bb9491d">QGroupBox_1Layout</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#7cddba6d467199508ccafe6d0a3e2576">slotAdd</a>()</td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#2bb1f9388d8b26c7ef63d70834d25b34">slotCommandActivated</a>(int)</td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#4bc3a21e6cb8186dc29dd1831d2bad28">slotCopy</a>()</td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#74ab751c727cf4f5fdfa9603d6567b2b">slotDelete</a>()</td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#12de1a903a59e5ddc03927b1bbdfa62e">slotEdit</a>()</td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#e2ff4ab352bb06d0e0dc9379c4af9f89">slotOk</a>()</td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#58c806acab3e0beb26bc507ac23db903">Spacer11</a></td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandDlg.html#0eb54248bcf1851da5c2c054582b1e99">~CommandDlg</a>()</td><td><a class="el" href="classCommandDlg.html">CommandDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classCommandDlg.html b/doc/html/classCommandDlg.html
new file mode 100644
index 0000000..fa64ebd
--- /dev/null
+++ b/doc/html/classCommandDlg.html
@@ -0,0 +1,110 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: CommandDlg Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>CommandDlg Class Reference</h1><!-- doxytag: class="CommandDlg" --><p>Inheritance diagram for CommandDlg:
+<p><center><img src="classCommandDlg.png" usemap="#CommandDlg_map" border="0" alt=""></center>
+<map name="CommandDlg_map">
+<area href="classCommandDialog.html" alt="CommandDialog" shape="rect" coords="0,56,103,80">
+</map>
+<a href="classCommandDlg-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2bb1f9388d8b26c7ef63d70834d25b34"></a><!-- doxytag: member="CommandDlg::slotCommandActivated" ref="2bb1f9388d8b26c7ef63d70834d25b34" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#2bb1f9388d8b26c7ef63d70834d25b34">slotCommandActivated</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7cddba6d467199508ccafe6d0a3e2576"></a><!-- doxytag: member="CommandDlg::slotAdd" ref="7cddba6d467199508ccafe6d0a3e2576" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#7cddba6d467199508ccafe6d0a3e2576">slotAdd</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4bc3a21e6cb8186dc29dd1831d2bad28"></a><!-- doxytag: member="CommandDlg::slotCopy" ref="4bc3a21e6cb8186dc29dd1831d2bad28" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#4bc3a21e6cb8186dc29dd1831d2bad28">slotCopy</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="74ab751c727cf4f5fdfa9603d6567b2b"></a><!-- doxytag: member="CommandDlg::slotDelete" ref="74ab751c727cf4f5fdfa9603d6567b2b" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#74ab751c727cf4f5fdfa9603d6567b2b">slotDelete</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="12de1a903a59e5ddc03927b1bbdfa62e"></a><!-- doxytag: member="CommandDlg::slotEdit" ref="12de1a903a59e5ddc03927b1bbdfa62e" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#12de1a903a59e5ddc03927b1bbdfa62e">slotEdit</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e2ff4ab352bb06d0e0dc9379c4af9f89"></a><!-- doxytag: member="CommandDlg::slotOk" ref="e2ff4ab352bb06d0e0dc9379c4af9f89" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#e2ff4ab352bb06d0e0dc9379c4af9f89">slotOk</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="00435683972414b1f2ca8bcb9e1dbc91"></a><!-- doxytag: member="CommandDlg::CommandDlg" ref="00435683972414b1f2ca8bcb9e1dbc91" args="(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#00435683972414b1f2ca8bcb9e1dbc91">CommandDlg</a> (QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0eb54248bcf1851da5c2c054582b1e99"></a><!-- doxytag: member="CommandDlg::~CommandDlg" ref="0eb54248bcf1851da5c2c054582b1e99" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#0eb54248bcf1851da5c2c054582b1e99">~CommandDlg</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="15cdabaf87020ef1ead6ecd7e61d1dea"></a><!-- doxytag: member="CommandDlg::m_ButtonOk" ref="15cdabaf87020ef1ead6ecd7e61d1dea" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#15cdabaf87020ef1ead6ecd7e61d1dea">m_ButtonOk</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="44506cd25120706b4dabcf50e45a8d70"></a><!-- doxytag: member="CommandDlg::m_ButtonCancel" ref="44506cd25120706b4dabcf50e45a8d70" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#44506cd25120706b4dabcf50e45a8d70">m_ButtonCancel</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd6dd884317f748cf736cb9f66a8e06c"></a><!-- doxytag: member="CommandDlg::QGroupBox_1" ref="cd6dd884317f748cf736cb9f66a8e06c" args="" -->
+QGroupBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#cd6dd884317f748cf736cb9f66a8e06c">QGroupBox_1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="795e9ee51e45bb71dff776cd4cfa13cb"></a><!-- doxytag: member="CommandDlg::m_ButtonAdd" ref="795e9ee51e45bb71dff776cd4cfa13cb" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#795e9ee51e45bb71dff776cd4cfa13cb">m_ButtonAdd</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bfb5091484e8bdd9e77d5c2fd4324743"></a><!-- doxytag: member="CommandDlg::m_ButtonEdit" ref="bfb5091484e8bdd9e77d5c2fd4324743" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#bfb5091484e8bdd9e77d5c2fd4324743">m_ButtonEdit</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="68d34d549ef6b4464c0f645a39cc7b90"></a><!-- doxytag: member="CommandDlg::m_ButtonCopy" ref="68d34d549ef6b4464c0f645a39cc7b90" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#68d34d549ef6b4464c0f645a39cc7b90">m_ButtonCopy</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="30ea515a9e24cabfb15d4243f4173e7e"></a><!-- doxytag: member="CommandDlg::m_ButtonDelete" ref="30ea515a9e24cabfb15d4243f4173e7e" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#30ea515a9e24cabfb15d4243f4173e7e">m_ButtonDelete</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="96835ee0557e2288d0254beefc2469de"></a><!-- doxytag: member="CommandDlg::m_ComboCommand" ref="96835ee0557e2288d0254beefc2469de" args="" -->
+QComboBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0c4debe5a9a4cffefbe15970b3161145"></a><!-- doxytag: member="CommandDlg::languageChange" ref="0c4debe5a9a4cffefbe15970b3161145" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#0c4debe5a9a4cffefbe15970b3161145">languageChange</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f4d0781c175dda013e4eb5d512edf6ac"></a><!-- doxytag: member="CommandDlg::CommandDlgLayout" ref="f4d0781c175dda013e4eb5d512edf6ac" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#f4d0781c175dda013e4eb5d512edf6ac">CommandDlgLayout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bb726a94053a9e1aba96babad4e5c024"></a><!-- doxytag: member="CommandDlg::Layout6" ref="bb726a94053a9e1aba96babad4e5c024" args="" -->
+QHBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#bb726a94053a9e1aba96babad4e5c024">Layout6</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="58c806acab3e0beb26bc507ac23db903"></a><!-- doxytag: member="CommandDlg::Spacer11" ref="58c806acab3e0beb26bc507ac23db903" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#58c806acab3e0beb26bc507ac23db903">Spacer11</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="11cd0e642b8082cc53342e640bb9491d"></a><!-- doxytag: member="CommandDlg::QGroupBox_1Layout" ref="11cd0e642b8082cc53342e640bb9491d" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandDlg.html#11cd0e642b8082cc53342e640bb9491d">QGroupBox_1Layout</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="CommandDlg_8h-source.html#l00024">24</a> of file <a class="el" href="CommandDlg_8h-source.html">CommandDlg.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="CommandDlg_8h-source.html">CommandDlg.h</a><li>kshowmail/<a class="el" href="CommandDlg_8cpp-source.html">CommandDlg.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classCommandDlg.png b/doc/html/classCommandDlg.png
new file mode 100644
index 0000000..1ebb372
--- /dev/null
+++ b/doc/html/classCommandDlg.png
Binary files differ
diff --git a/doc/html/classCommandEntry-members.html b/doc/html/classCommandEntry-members.html
new file mode 100644
index 0000000..dfa124a
--- /dev/null
+++ b/doc/html/classCommandEntry-members.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>CommandEntry Member List</h1>This is the complete list of members for <a class="el" href="classCommandEntry.html">CommandEntry</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classCommandEntry.html#37d1d204b27f43a7585419910f427ef6">CommandEntry</a>()</td><td><a class="el" href="classCommandEntry.html">CommandEntry</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntry.html#3e849f75a242e963cd2a2ea10f24add9">CommandEntry</a>(const char *name, const char *path, const int id, const bool modal)</td><td><a class="el" href="classCommandEntry.html">CommandEntry</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntry.html#cad226ce36530384dcf7cbe58c25fa8c">CommandEntry</a>(const CommandEntry *copy)</td><td><a class="el" href="classCommandEntry.html">CommandEntry</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntry.html#371ab20c14d238960b5e2054ac98a548">exec</a>(ConfigElem *pelem=NULL, const char *header=NULL, const char *body=NULL)</td><td><a class="el" href="classCommandEntry.html">CommandEntry</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntry.html#cd2d8c4b1d560d214e0dcbdabefe168f">exec</a>(const QString &amp;path, ConfigElem *pelem, const char *header=NULL, const char *body=NULL)</td><td><a class="el" href="classCommandEntry.html">CommandEntry</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">m_id</a></td><td><a class="el" href="classCommandEntry.html">CommandEntry</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntry.html#12d3b1efa2768340e1b90b565a52edc6">m_name</a></td><td><a class="el" href="classCommandEntry.html">CommandEntry</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntry.html#b2824de79b051470cd00b1d2b51a0ce1">m_path</a></td><td><a class="el" href="classCommandEntry.html">CommandEntry</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntry.html#ff7231796097759987dfcd3fe631bdff">m_waitForCommand</a></td><td><a class="el" href="classCommandEntry.html">CommandEntry</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntry.html#199c7f73a993b784a15eb3fc5f893956">operator=</a>(const CommandEntry &amp;entry)</td><td><a class="el" href="classCommandEntry.html">CommandEntry</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classCommandEntry.html b/doc/html/classCommandEntry.html
new file mode 100644
index 0000000..1458681
--- /dev/null
+++ b/doc/html/classCommandEntry.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: CommandEntry Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>CommandEntry Class Reference</h1><!-- doxytag: class="CommandEntry" --><a href="classCommandEntry-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="37d1d204b27f43a7585419910f427ef6"></a><!-- doxytag: member="CommandEntry::CommandEntry" ref="37d1d204b27f43a7585419910f427ef6" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntry.html#37d1d204b27f43a7585419910f427ef6">CommandEntry</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3e849f75a242e963cd2a2ea10f24add9"></a><!-- doxytag: member="CommandEntry::CommandEntry" ref="3e849f75a242e963cd2a2ea10f24add9" args="(const char *name, const char *path, const int id, const bool modal)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntry.html#3e849f75a242e963cd2a2ea10f24add9">CommandEntry</a> (const char *name, const char *path, const int id, const bool modal)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cad226ce36530384dcf7cbe58c25fa8c"></a><!-- doxytag: member="CommandEntry::CommandEntry" ref="cad226ce36530384dcf7cbe58c25fa8c" args="(const CommandEntry *copy)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntry.html#cad226ce36530384dcf7cbe58c25fa8c">CommandEntry</a> (const <a class="el" href="classCommandEntry.html">CommandEntry</a> *copy)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="199c7f73a993b784a15eb3fc5f893956"></a><!-- doxytag: member="CommandEntry::operator=" ref="199c7f73a993b784a15eb3fc5f893956" args="(const CommandEntry &amp;entry)" -->
+<a class="el" href="classCommandEntry.html">CommandEntry</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntry.html#199c7f73a993b784a15eb3fc5f893956">operator=</a> (const <a class="el" href="classCommandEntry.html">CommandEntry</a> &amp;entry)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="371ab20c14d238960b5e2054ac98a548"></a><!-- doxytag: member="CommandEntry::exec" ref="371ab20c14d238960b5e2054ac98a548" args="(ConfigElem *pelem=NULL, const char *header=NULL, const char *body=NULL)" -->
+bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntry.html#371ab20c14d238960b5e2054ac98a548">exec</a> (<a class="el" href="classConfigElem.html">ConfigElem</a> *pelem=NULL, const char *header=NULL, const char *body=NULL)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd2d8c4b1d560d214e0dcbdabefe168f"></a><!-- doxytag: member="CommandEntry::exec" ref="cd2d8c4b1d560d214e0dcbdabefe168f" args="(const QString &amp;path, ConfigElem *pelem, const char *header=NULL, const char *body=NULL)" -->
+bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntry.html#cd2d8c4b1d560d214e0dcbdabefe168f">exec</a> (const QString &amp;path, <a class="el" href="classConfigElem.html">ConfigElem</a> *pelem, const char *header=NULL, const char *body=NULL)</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="12d3b1efa2768340e1b90b565a52edc6"></a><!-- doxytag: member="CommandEntry::m_name" ref="12d3b1efa2768340e1b90b565a52edc6" args="" -->
+QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntry.html#12d3b1efa2768340e1b90b565a52edc6">m_name</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b2824de79b051470cd00b1d2b51a0ce1"></a><!-- doxytag: member="CommandEntry::m_path" ref="b2824de79b051470cd00b1d2b51a0ce1" args="" -->
+QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntry.html#b2824de79b051470cd00b1d2b51a0ce1">m_path</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5f1098dd21df36fae20591ba0fc9a5fa"></a><!-- doxytag: member="CommandEntry::m_id" ref="5f1098dd21df36fae20591ba0fc9a5fa" args="" -->
+int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">m_id</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ff7231796097759987dfcd3fe631bdff"></a><!-- doxytag: member="CommandEntry::m_waitForCommand" ref="ff7231796097759987dfcd3fe631bdff" args="" -->
+bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntry.html#ff7231796097759987dfcd3fe631bdff">m_waitForCommand</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="commandentry_8h-source.html#l00033">33</a> of file <a class="el" href="commandentry_8h-source.html">commandentry.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="commandentry_8h-source.html">commandentry.h</a><li>kshowmail/<a class="el" href="commandentry_8cpp-source.html">commandentry.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classCommandEntryDialog-members.html b/doc/html/classCommandEntryDialog-members.html
new file mode 100644
index 0000000..9e61f4d
--- /dev/null
+++ b/doc/html/classCommandEntryDialog-members.html
@@ -0,0 +1,52 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>CommandEntryDialog Member List</h1>This is the complete list of members for <a class="el" href="classCommandEntryDialog.html">CommandEntryDialog</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDialog.html#eb206b2dc7ed4061415c836beb462c94">CommandEntryDialog</a>(QWidget *parent, const char *name, CommandEntry *entry, ConfigElem *pConfigElem)</td><td><a class="el" href="classCommandEntryDialog.html">CommandEntryDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#f72dede73adeeed25d33d643b4093614">CommandEntryDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#a601c391fae27d233ba814d43400fbe5">CommandEntryDlgLayout</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#2f33e10c24f756bc76fd3ff674e53ec8">languageChange</a>()</td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#bcf49ebec8d3c5bb291ef773f241ef88">layout2</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#be3e31b9b73f259d89d301e655db800f">m_ButtonCancel</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#7998da8210c2093927a2b70c6129d3fc">m_ButtonOk</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#1d9bf331b4044bb823397f0e82f7d1be">m_ButtonPath</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#d6e34685d9dbf050f4ed3f9eb4fb7e93">m_ButtonTest</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#49ab519895b715e68dd255587718b641">m_checkModal</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">m_EditName</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDialog.html#a7e4e602a8d726fdb9cb2b65f86a5831">m_pConfigElem</a></td><td><a class="el" href="classCommandEntryDialog.html">CommandEntryDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDialog.html#a9cc8cd62488ed8553a10629efd05493">m_pentry</a></td><td><a class="el" href="classCommandEntryDialog.html">CommandEntryDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDialog.html#8187f0d92fcd9aae910cfb882bf8745e">slotOk</a>()</td><td><a class="el" href="classCommandEntryDialog.html">CommandEntryDialog</a></td><td><code> [private, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDialog.html#faba9a230098cd59984d36ba723c7015">slotPath</a>()</td><td><a class="el" href="classCommandEntryDialog.html">CommandEntryDialog</a></td><td><code> [private, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDialog.html#875065ff0abfde7cf8a673de0423b3e2">slotTest</a>()</td><td><a class="el" href="classCommandEntryDialog.html">CommandEntryDialog</a></td><td><code> [private, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#26e10325d0d4877b4e7ec72106633e52">Spacer16</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#15f62b3dcd97ca1234409845fcca7047">Spacer17</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#23d051b2743b394cfaef947a7c1e258a">spacer3</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDialog.html#6f23e608879e8835078176de5d48756f">~CommandEntryDialog</a>()</td><td><a class="el" href="classCommandEntryDialog.html">CommandEntryDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#48a980d2b11d91a2848724261ad28ae7">~CommandEntryDlg</a>()</td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classCommandEntryDialog.html b/doc/html/classCommandEntryDialog.html
new file mode 100644
index 0000000..9622a86
--- /dev/null
+++ b/doc/html/classCommandEntryDialog.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: CommandEntryDialog Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>CommandEntryDialog Class Reference</h1><!-- doxytag: class="CommandEntryDialog" --><!-- doxytag: inherits="CommandEntryDlg" --><code>#include &lt;<a class="el" href="commandentrydialog_8h-source.html">commandentrydialog.h</a>&gt;</code>
+<p>
+<p>Inheritance diagram for CommandEntryDialog:
+<p><center><img src="classCommandEntryDialog.png" usemap="#CommandEntryDialog_map" border="0" alt=""></center>
+<map name="CommandEntryDialog_map">
+<area href="classCommandEntryDlg.html" alt="CommandEntryDlg" shape="rect" coords="0,0,133,24">
+</map>
+<a href="classCommandEntryDialog-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eb206b2dc7ed4061415c836beb462c94"></a><!-- doxytag: member="CommandEntryDialog::CommandEntryDialog" ref="eb206b2dc7ed4061415c836beb462c94" args="(QWidget *parent, const char *name, CommandEntry *entry, ConfigElem *pConfigElem)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDialog.html#eb206b2dc7ed4061415c836beb462c94">CommandEntryDialog</a> (QWidget *parent, const char *name, <a class="el" href="classCommandEntry.html">CommandEntry</a> *entry, <a class="el" href="classConfigElem.html">ConfigElem</a> *pConfigElem)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6f23e608879e8835078176de5d48756f"></a><!-- doxytag: member="CommandEntryDialog::~CommandEntryDialog" ref="6f23e608879e8835078176de5d48756f" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDialog.html#6f23e608879e8835078176de5d48756f">~CommandEntryDialog</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="faba9a230098cd59984d36ba723c7015"></a><!-- doxytag: member="CommandEntryDialog::slotPath" ref="faba9a230098cd59984d36ba723c7015" args="()" -->
+void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDialog.html#faba9a230098cd59984d36ba723c7015">slotPath</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="875065ff0abfde7cf8a673de0423b3e2"></a><!-- doxytag: member="CommandEntryDialog::slotTest" ref="875065ff0abfde7cf8a673de0423b3e2" args="()" -->
+void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDialog.html#875065ff0abfde7cf8a673de0423b3e2">slotTest</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8187f0d92fcd9aae910cfb882bf8745e"></a><!-- doxytag: member="CommandEntryDialog::slotOk" ref="8187f0d92fcd9aae910cfb882bf8745e" args="()" -->
+void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDialog.html#8187f0d92fcd9aae910cfb882bf8745e">slotOk</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a9cc8cd62488ed8553a10629efd05493"></a><!-- doxytag: member="CommandEntryDialog::m_pentry" ref="a9cc8cd62488ed8553a10629efd05493" args="" -->
+<a class="el" href="classCommandEntry.html">CommandEntry</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDialog.html#a9cc8cd62488ed8553a10629efd05493">m_pentry</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a7e4e602a8d726fdb9cb2b65f86a5831"></a><!-- doxytag: member="CommandEntryDialog::m_pConfigElem" ref="a7e4e602a8d726fdb9cb2b65f86a5831" args="" -->
+<a class="el" href="classConfigElem.html">ConfigElem</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDialog.html#a7e4e602a8d726fdb9cb2b65f86a5831">m_pConfigElem</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke </dd></dl>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="commandentrydialog_8h-source.html#l00030">30</a> of file <a class="el" href="commandentrydialog_8h-source.html">commandentrydialog.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="commandentrydialog_8h-source.html">commandentrydialog.h</a><li>kshowmail/<a class="el" href="commandentrydialog_8cpp-source.html">commandentrydialog.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classCommandEntryDialog.png b/doc/html/classCommandEntryDialog.png
new file mode 100644
index 0000000..1d28993
--- /dev/null
+++ b/doc/html/classCommandEntryDialog.png
Binary files differ
diff --git a/doc/html/classCommandEntryDlg-members.html b/doc/html/classCommandEntryDlg-members.html
new file mode 100644
index 0000000..cc7f395
--- /dev/null
+++ b/doc/html/classCommandEntryDlg-members.html
@@ -0,0 +1,48 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>CommandEntryDlg Member List</h1>This is the complete list of members for <a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#f72dede73adeeed25d33d643b4093614">CommandEntryDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#a601c391fae27d233ba814d43400fbe5">CommandEntryDlgLayout</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#2f33e10c24f756bc76fd3ff674e53ec8">languageChange</a>()</td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#bcf49ebec8d3c5bb291ef773f241ef88">layout2</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#be3e31b9b73f259d89d301e655db800f">m_ButtonCancel</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#7998da8210c2093927a2b70c6129d3fc">m_ButtonOk</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#1d9bf331b4044bb823397f0e82f7d1be">m_ButtonPath</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#d6e34685d9dbf050f4ed3f9eb4fb7e93">m_ButtonTest</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#49ab519895b715e68dd255587718b641">m_checkModal</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">m_EditName</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#f70d2de60fe58f262ab6363442b326e8">slotOk</a>()</td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#801dd753d938894e3bd3af1bceb73215">slotPath</a>()</td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#dc8db19864a1c18dcb71edd3c6d13bdf">slotTest</a>()</td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#26e10325d0d4877b4e7ec72106633e52">Spacer16</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#15f62b3dcd97ca1234409845fcca7047">Spacer17</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#23d051b2743b394cfaef947a7c1e258a">spacer3</a></td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandEntryDlg.html#48a980d2b11d91a2848724261ad28ae7">~CommandEntryDlg</a>()</td><td><a class="el" href="classCommandEntryDlg.html">CommandEntryDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classCommandEntryDlg.html b/doc/html/classCommandEntryDlg.html
new file mode 100644
index 0000000..39356ad
--- /dev/null
+++ b/doc/html/classCommandEntryDlg.html
@@ -0,0 +1,107 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: CommandEntryDlg Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>CommandEntryDlg Class Reference</h1><!-- doxytag: class="CommandEntryDlg" --><p>Inheritance diagram for CommandEntryDlg:
+<p><center><img src="classCommandEntryDlg.png" usemap="#CommandEntryDlg_map" border="0" alt=""></center>
+<map name="CommandEntryDlg_map">
+<area href="classCommandEntryDialog.html" alt="CommandEntryDialog" shape="rect" coords="0,56,133,80">
+</map>
+<a href="classCommandEntryDlg-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f70d2de60fe58f262ab6363442b326e8"></a><!-- doxytag: member="CommandEntryDlg::slotOk" ref="f70d2de60fe58f262ab6363442b326e8" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#f70d2de60fe58f262ab6363442b326e8">slotOk</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="801dd753d938894e3bd3af1bceb73215"></a><!-- doxytag: member="CommandEntryDlg::slotPath" ref="801dd753d938894e3bd3af1bceb73215" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#801dd753d938894e3bd3af1bceb73215">slotPath</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dc8db19864a1c18dcb71edd3c6d13bdf"></a><!-- doxytag: member="CommandEntryDlg::slotTest" ref="dc8db19864a1c18dcb71edd3c6d13bdf" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#dc8db19864a1c18dcb71edd3c6d13bdf">slotTest</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f72dede73adeeed25d33d643b4093614"></a><!-- doxytag: member="CommandEntryDlg::CommandEntryDlg" ref="f72dede73adeeed25d33d643b4093614" args="(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#f72dede73adeeed25d33d643b4093614">CommandEntryDlg</a> (QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="48a980d2b11d91a2848724261ad28ae7"></a><!-- doxytag: member="CommandEntryDlg::~CommandEntryDlg" ref="48a980d2b11d91a2848724261ad28ae7" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#48a980d2b11d91a2848724261ad28ae7">~CommandEntryDlg</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="deccd1e1f668d764a093a86c06f9958d"></a><!-- doxytag: member="CommandEntryDlg::QGroupBox_1" ref="deccd1e1f668d764a093a86c06f9958d" args="" -->
+QGroupBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#deccd1e1f668d764a093a86c06f9958d">QGroupBox_1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1d9bf331b4044bb823397f0e82f7d1be"></a><!-- doxytag: member="CommandEntryDlg::m_ButtonPath" ref="1d9bf331b4044bb823397f0e82f7d1be" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#1d9bf331b4044bb823397f0e82f7d1be">m_ButtonPath</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d6e34685d9dbf050f4ed3f9eb4fb7e93"></a><!-- doxytag: member="CommandEntryDlg::m_ButtonTest" ref="d6e34685d9dbf050f4ed3f9eb4fb7e93" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#d6e34685d9dbf050f4ed3f9eb4fb7e93">m_ButtonTest</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="49ab519895b715e68dd255587718b641"></a><!-- doxytag: member="CommandEntryDlg::m_checkModal" ref="49ab519895b715e68dd255587718b641" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#49ab519895b715e68dd255587718b641">m_checkModal</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ad145bf81ac6c124364a9f37990e1736"></a><!-- doxytag: member="CommandEntryDlg::m_EditName" ref="ad145bf81ac6c124364a9f37990e1736" args="" -->
+QLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">m_EditName</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5075918262a60e47f82fbd07e7f20e28"></a><!-- doxytag: member="CommandEntryDlg::m_EditPath" ref="5075918262a60e47f82fbd07e7f20e28" args="" -->
+QLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7998da8210c2093927a2b70c6129d3fc"></a><!-- doxytag: member="CommandEntryDlg::m_ButtonOk" ref="7998da8210c2093927a2b70c6129d3fc" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#7998da8210c2093927a2b70c6129d3fc">m_ButtonOk</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="be3e31b9b73f259d89d301e655db800f"></a><!-- doxytag: member="CommandEntryDlg::m_ButtonCancel" ref="be3e31b9b73f259d89d301e655db800f" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#be3e31b9b73f259d89d301e655db800f">m_ButtonCancel</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2f33e10c24f756bc76fd3ff674e53ec8"></a><!-- doxytag: member="CommandEntryDlg::languageChange" ref="2f33e10c24f756bc76fd3ff674e53ec8" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#2f33e10c24f756bc76fd3ff674e53ec8">languageChange</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a601c391fae27d233ba814d43400fbe5"></a><!-- doxytag: member="CommandEntryDlg::CommandEntryDlgLayout" ref="a601c391fae27d233ba814d43400fbe5" args="" -->
+QVBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#a601c391fae27d233ba814d43400fbe5">CommandEntryDlgLayout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="724bb56850ce352ac6a9e3929a8d787d"></a><!-- doxytag: member="CommandEntryDlg::QGroupBox_1Layout" ref="724bb56850ce352ac6a9e3929a8d787d" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#724bb56850ce352ac6a9e3929a8d787d">QGroupBox_1Layout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="23d051b2743b394cfaef947a7c1e258a"></a><!-- doxytag: member="CommandEntryDlg::spacer3" ref="23d051b2743b394cfaef947a7c1e258a" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#23d051b2743b394cfaef947a7c1e258a">spacer3</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="26e10325d0d4877b4e7ec72106633e52"></a><!-- doxytag: member="CommandEntryDlg::Spacer16" ref="26e10325d0d4877b4e7ec72106633e52" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#26e10325d0d4877b4e7ec72106633e52">Spacer16</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bcf49ebec8d3c5bb291ef773f241ef88"></a><!-- doxytag: member="CommandEntryDlg::layout2" ref="bcf49ebec8d3c5bb291ef773f241ef88" args="" -->
+QHBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#bcf49ebec8d3c5bb291ef773f241ef88">layout2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="15f62b3dcd97ca1234409845fcca7047"></a><!-- doxytag: member="CommandEntryDlg::Spacer17" ref="15f62b3dcd97ca1234409845fcca7047" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandEntryDlg.html#15f62b3dcd97ca1234409845fcca7047">Spacer17</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="CommandEntryDlg_8h-source.html#l00025">25</a> of file <a class="el" href="CommandEntryDlg_8h-source.html">CommandEntryDlg.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="CommandEntryDlg_8h-source.html">CommandEntryDlg.h</a><li>kshowmail/<a class="el" href="CommandEntryDlg_8cpp-source.html">CommandEntryDlg.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classCommandEntryDlg.png b/doc/html/classCommandEntryDlg.png
new file mode 100644
index 0000000..7f3fba5
--- /dev/null
+++ b/doc/html/classCommandEntryDlg.png
Binary files differ
diff --git a/doc/html/classCommandList-members.html b/doc/html/classCommandList-members.html
new file mode 100644
index 0000000..4588010
--- /dev/null
+++ b/doc/html/classCommandList-members.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>CommandList Member List</h1>This is the complete list of members for <a class="el" href="classCommandList.html">CommandList</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classCommandList.html#a5cc72c5c68da1d3e18f808da93025c6">CommandList</a>()</td><td><a class="el" href="classCommandList.html">CommandList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandList.html#75139c46235d0453af653bfaf9018a11">compareItems</a>(QCollection::Item item1, QCollection::Item item2)</td><td><a class="el" href="classCommandList.html">CommandList</a></td><td><code> [protected, virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandList.html#99f8a7c87e09a186bd5664638b704619">exec</a>(unsigned int id, ConfigElem *pelem, const char *header, const char *body)</td><td><a class="el" href="classCommandList.html">CommandList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandList.html#7450f5fc2f7d1fafd3b490f5d39a72e3">exec</a>(unsigned int pos, ConfigElem *pelem)</td><td><a class="el" href="classCommandList.html">CommandList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandList.html#5037135701a78aadeebc9520df6abf2b">newItem</a>(QCollection::Item d)</td><td><a class="el" href="classCommandList.html">CommandList</a></td><td><code> [protected, virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandList.html#5db2a340101b2c274fa4691e4a90caa9">operator=</a>(CommandList &amp;right)</td><td><a class="el" href="classCommandList.html">CommandList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandList.html#154b13cfab656e47790f1f12f92401a4">readOptions</a>(KConfig *config)</td><td><a class="el" href="classCommandList.html">CommandList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandList.html#49d6d504715977b9d20fbc931ab62641">saveOptions</a>(KConfig *config)</td><td><a class="el" href="classCommandList.html">CommandList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandList.html#e5a8632fb53943a8ec5b8edfa268e668">setCombo</a>(QComboBox *combo, int nIndex)</td><td><a class="el" href="classCommandList.html">CommandList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classCommandList.html#ada18ff9b6162b3ca25b9e4c28a05031">~CommandList</a>()</td><td><a class="el" href="classCommandList.html">CommandList</a></td><td><code> [virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classCommandList.html b/doc/html/classCommandList.html
new file mode 100644
index 0000000..8cab68c
--- /dev/null
+++ b/doc/html/classCommandList.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: CommandList Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>CommandList Class Reference</h1><!-- doxytag: class="CommandList" --><a href="classCommandList-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a5cc72c5c68da1d3e18f808da93025c6"></a><!-- doxytag: member="CommandList::CommandList" ref="a5cc72c5c68da1d3e18f808da93025c6" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandList.html#a5cc72c5c68da1d3e18f808da93025c6">CommandList</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ada18ff9b6162b3ca25b9e4c28a05031"></a><!-- doxytag: member="CommandList::~CommandList" ref="ada18ff9b6162b3ca25b9e4c28a05031" args="()" -->
+virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandList.html#ada18ff9b6162b3ca25b9e4c28a05031">~CommandList</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e5a8632fb53943a8ec5b8edfa268e668"></a><!-- doxytag: member="CommandList::setCombo" ref="e5a8632fb53943a8ec5b8edfa268e668" args="(QComboBox *combo, int nIndex)" -->
+void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandList.html#e5a8632fb53943a8ec5b8edfa268e668">setCombo</a> (QComboBox *combo, int nIndex)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5db2a340101b2c274fa4691e4a90caa9"></a><!-- doxytag: member="CommandList::operator=" ref="5db2a340101b2c274fa4691e4a90caa9" args="(CommandList &amp;right)" -->
+<a class="el" href="classCommandList.html">CommandList</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandList.html#5db2a340101b2c274fa4691e4a90caa9">operator=</a> (<a class="el" href="classCommandList.html">CommandList</a> &amp;right)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="99f8a7c87e09a186bd5664638b704619"></a><!-- doxytag: member="CommandList::exec" ref="99f8a7c87e09a186bd5664638b704619" args="(unsigned int id, ConfigElem *pelem, const char *header, const char *body)" -->
+bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandList.html#99f8a7c87e09a186bd5664638b704619">exec</a> (unsigned int id, <a class="el" href="classConfigElem.html">ConfigElem</a> *pelem, const char *header, const char *body)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7450f5fc2f7d1fafd3b490f5d39a72e3"></a><!-- doxytag: member="CommandList::exec" ref="7450f5fc2f7d1fafd3b490f5d39a72e3" args="(unsigned int pos, ConfigElem *pelem)" -->
+bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandList.html#7450f5fc2f7d1fafd3b490f5d39a72e3">exec</a> (unsigned int pos, <a class="el" href="classConfigElem.html">ConfigElem</a> *pelem)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="154b13cfab656e47790f1f12f92401a4"></a><!-- doxytag: member="CommandList::readOptions" ref="154b13cfab656e47790f1f12f92401a4" args="(KConfig *config)" -->
+void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandList.html#154b13cfab656e47790f1f12f92401a4">readOptions</a> (KConfig *config)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="49d6d504715977b9d20fbc931ab62641"></a><!-- doxytag: member="CommandList::saveOptions" ref="49d6d504715977b9d20fbc931ab62641" args="(KConfig *config)" -->
+void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandList.html#49d6d504715977b9d20fbc931ab62641">saveOptions</a> (KConfig *config)</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="75139c46235d0453af653bfaf9018a11"></a><!-- doxytag: member="CommandList::compareItems" ref="75139c46235d0453af653bfaf9018a11" args="(QCollection::Item item1, QCollection::Item item2)" -->
+virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandList.html#75139c46235d0453af653bfaf9018a11">compareItems</a> (QCollection::Item item1, QCollection::Item item2)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5037135701a78aadeebc9520df6abf2b"></a><!-- doxytag: member="CommandList::newItem" ref="5037135701a78aadeebc9520df6abf2b" args="(QCollection::Item d)" -->
+virtual QCollection::Item&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCommandList.html#5037135701a78aadeebc9520df6abf2b">newItem</a> (QCollection::Item d)</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="commandlist_8h-source.html#l00031">31</a> of file <a class="el" href="commandlist_8h-source.html">commandlist.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="commandlist_8h-source.html">commandlist.h</a><li>kshowmail/<a class="el" href="commandlist_8cpp-source.html">commandlist.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classConfigElem-members.html b/doc/html/classConfigElem-members.html
new file mode 100644
index 0000000..a274a0d
--- /dev/null
+++ b/doc/html/classConfigElem-members.html
@@ -0,0 +1,149 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ConfigElem Member List</h1>This is the complete list of members for <a class="el" href="classConfigElem.html">ConfigElem</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#6a1f1cb81c4bcca055e0b98bd9fb0cf7">applyFiltersDeleted</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#973328114a20a798887ab040aba33141">assertPassword</a>(bool force=false)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#85fb09c9cdc92ae5e8663bf8c6c4a615">cancelShowHeaders</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#5fc7f4f73b17bb27faef10d96b80a77c">clearMailList</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#f4e51ff42a86a9d5a6ed0f361069d242">commitDeletion</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#7a53693e1ca3b30406efb6c8a68ce851">commitDownloading</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#3691ecff2aab23143072b434fd304c45">commitRefresh</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#dbbb95e2595abd6e9b0f593e7edfa283">ConfigElem</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#74aa827d61789b2c19b3efbc5f374c82">ConfigElem</a>(ConfigList *config)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#2c7a292764612fed972279e181c897d5">ConfigElem</a>(ConfigElem *pElem)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#3a6a88209785cd551bc5dd901840288c">ConfigElem</a>(ConfigList *config, const QString &amp;account)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#8dc234323fe966a322ae8649bc2cd76e">continueShowHeaders</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#300f2eab6d5d210b64b595b1a6048a5f">count</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">deleteNextMail</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#750ccb3fb3f7d1857b79f7218f5a0767">deleteSelectedMails</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#c3a6aea2718324eba83d02f6e5828fa5">deletionPerformedByFilters</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#e638826fe97d9aded3d3dadde320103e">doDownloadActions</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#f96a3bda830dcfbe7aa579c3e64cfed4">downloadActionsInvoked</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#365bd67f2ec657beaf98ded2463b61a2">fillMailListView</a>(KshowmailView *view)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#1c5b6fd53a5dfbe13c8d9ef2f3b97608">filterApplied</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#e3f2a5c6b03dd756f474255247461b02">FLog</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#f7202b10df7e27303315d754b25b6d6c">getHeaders</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#6a7f0888c77882eda05bcc22a27947c1">getHost</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#b5b2ecee68626b7ff80219cdb3f3bed2">getListViewItem</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#599f2dc026bd3d759d9e2ada3d4ff3ea">getNextHeader</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#1fd7ddefdce76a3da2bf3eda7ff28942">getNextMailForDownloadActions</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#c072d6241f981b1e0ffffb63a0a52250">getNumberMails</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#2725f96acd936fd8a9008d6ddf04ba76">getNumberNewMails</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#7ea9a96f400284acce0999639659c461">getPassword</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#34bc68f7bbdc296d18460f303f479450">getPasswordStorage</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#2b3366a9ebc43549491bd003578a0bc8">getPort</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#562620c4141a744725d384309a9e55f1">getProtocol</a>(bool upperCase=false) const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#93c5c182878b9809188933046e04a998">getSelectedSubjects</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#ab836ffc3b068d052ea3486f8cdac74d">getSizes</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#1b2187ece7367694776f17c6cad6571c">getState</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#3cb6757a426072724df1b1ea930da796">getTimeoutTime</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#fdc03b7cd5b73cca18f0787509e32edc">getTLS</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#bb71d58016499cd57784e60efee37b0f">getTotalSize</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#38ba64f20fe31a6e59d6c58775672922">getUIDs</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#a4b9669aff68ef45c260c2d485d8a405">getURL</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#19f5621cac8e71c1088995bcef75596a">getUser</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#371db6ec6023c72fbfac6b765b0de08b">hasPassword</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#748ec06f6ad44f36143389bb9501a1f7">hasSelectedMails</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#85b505610abbe0c01921a6e385a7548e">headerFilter</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#e5e1c7ae0734cb85654d7c6f2b073ef0">init</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#807e183296b04a86035a17a6f2fa0392">isMailDir</a>(const QDir &amp;path)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#8e8e1f32420d051a8c6d4df4a3ad4b93">isSelected</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#261c27647b7d842799e94ae149212ad5">isSpam</a>(QByteArray mail) const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#ef9bf08b5313d9b0d5983f5a9459cf3a">isSpamAssassinRunning</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#be79ff49926793b27e8af8b5101c7b70">killPOP3Job</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">m_bActive</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#ac5a5ecf9c70a0c94c2cf7181a1989dd">mailbody</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#dc3d4a8f849b476ff72d2c485a3ffa36">MailsToDownload</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#30203c10e9c6b563ee9c454269cad8d1">moveCounter</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">newMails</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">PasswordStorage</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#46e0d578a0c537e8d13ad689044f1fe7">printSetup</a>() const</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#dee46100623211279e37f498ac43c4e4">readStoredMails</a>(QDomElement &amp;parent)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#23ed166f77355117fa99dcbc3d5b7d12">receivedHeader</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#fc6f21ff722d537d2e59ee42e57cd337">receivedSizes</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#80f016779bdc8774cc7822a839b2c796">receivedUIDs</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#3a709da00728e100343bfde8aac61491">refreshAccountListItem</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#83af8872b7e83279750434e7ef376e5b">refreshMailList</a>(FilterLog *log=NULL)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#b842ac987bd40656b334c4e8c3a75103">refreshPerformedByFilters</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#f0c46e80c8300ab141a759042d4f38b5">reloadFilterSettings</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#bda433f60b1eed0d4b8d207707d5005c">saveOptions</a>(QDomDocument &amp;doc, QDomElement &amp;parent)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#b8a7341e3db3e69b8e661c89ff08b7f4">secureLoginType</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#8248ddc45de2d7d924e59e7c591da98f">setAccountName</a>(QString name)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#4a5aa6b86e56403fa453c9d642b71812">setActive</a>(bool active)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#cf56636bf7537e7f5dbc1a762b4670d2">setHost</a>(const QString &amp;host)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#a58326995659da378bc160ed90ad578b">setListViewItem</a>(QListViewItem *item)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#6edf15369f3e906a04dff0b92f5b3c2d">setPassword</a>(const QString &amp;password)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#58f9d269bd389c52718d78d7615c4431">setPasswordStorage</a>(int storage)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#cc66eba0b4fbf308cddad0478f20ef0f">setPort</a>(unsigned short int port)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#103236b06a88a8d14b629170df1a7ca9">setProtocol</a>(const QString &amp;protocol)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#67f45e40b98d20d7d26e1e244f42b208">setTLS</a>(bool tls)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#856ca37e391329be6b06f8be2f0a1f74">setUser</a>(const QString &amp;user)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">showNextMail</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#0725bb36943ca6fd1ca82af5ef6913a3">showSelectedHeaders</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#01e5735260c23f43480d807e7e9070c9">showSelectedMails</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#c04e111468d52ed1ca964569188c96e5">sigConfigChanged</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#93838eda4c71ad66360ee5a27f630d8e">sigDeleteReady</a>(QString account)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#e328a1ef29ab8784bf9fd36de34d8bc0">sigMessageWindowClosed</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#14267b997f50ad3069115e8b976d89bb">sigMessageWindowOpened</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#d57456d967920820080dc13d6fb5a8ff">sigRefreshReady</a>(QString account)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#bd3b61aa04ce3bd6ce507cb555c360d4">sigShowBodiesReady</a>(QString account)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#a63d81fad1dc2f9f8f015effabb8b6d9">slotBodyDownloaded</a>(KIO::Job *job)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#ab068855931a06371d27ec03695121a7">slotDataMailBody</a>(KIO::Job *, const QByteArray &amp;datas)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">slotFinalizeDeletion</a>(KIO::Job *)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#6470facb8041787fc48707ece1dfc364">slotFinalizeRefresh</a>(KIO::Job *)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail</a>(KIO::Job *)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#2220bd2656a5e87cfb2582ae8854f71c">slotHeaderDownloaded</a>(KIO::Job *job)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#f2f44d27824ca6c4caf9c472f5c980b4">slotMailDeleted</a>(KIO::Job *job)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#53d209d56cb8ba5ce9f2f1d781d40e4f">slotMailDownloadedForAction</a>(KIO::Job *job)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#52b690b870d814bf6017500edc731aae">slotReceiveHeader</a>(KIO::Job *, const QByteArray &amp;data)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#b3e0a075b84fed2a1e156de17cdefbad">slotReceiveSize</a>(KIO::Job *, const QByteArray &amp;data)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#11db8a853a253b81a16ecd199c441911">slotReceiveUID</a>(KIO::Job *, const QByteArray &amp;data)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#685be03ba48ad2e1cfb9a0cc04a81559">slotSizesReceived</a>(KIO::Job *job)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#9771cc6111fae208e8ca92d9c162096d">slotTimeout</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#5ba4833fd4b897bb21fa31dff2cf5750">slotUIDsReceived</a>(KIO::Job *job)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">startKIOJob</a>(const QString &amp;path)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#91365e361149fd5d564b99a4b7182fc3">swapMailLists</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#b13600ffaaae88a8e0baf030ffd926a1">useTLS</a></td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#4289e9e88062857964798c71cbc496ef">writeToMailBox</a>(const QString &amp;mail, const QString &amp;box)</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigElem.html#d14d9c03f757691f198efd14104a3ce8">~ConfigElem</a>()</td><td><a class="el" href="classConfigElem.html">ConfigElem</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classConfigElem.html b/doc/html/classConfigElem.html
new file mode 100644
index 0000000..3870b11
--- /dev/null
+++ b/doc/html/classConfigElem.html
@@ -0,0 +1,2855 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: ConfigElem Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ConfigElem Class Reference</h1><!-- doxytag: class="ConfigElem" -->Represents a mail account.
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="configelem_8h-source.html">configelem.h</a>&gt;</code>
+<p>
+<a href="classConfigElem-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Signals</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#93838eda4c71ad66360ee5a27f630d8e">sigDeleteReady</a> (QString account)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#bd3b61aa04ce3bd6ce507cb555c360d4">sigShowBodiesReady</a> (QString account)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#c04e111468d52ed1ca964569188c96e5">sigConfigChanged</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#14267b997f50ad3069115e8b976d89bb">sigMessageWindowOpened</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#e328a1ef29ab8784bf9fd36de34d8bc0">sigMessageWindowClosed</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#d57456d967920820080dc13d6fb5a8ff">sigRefreshReady</a> (QString account)</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#dbbb95e2595abd6e9b0f593e7edfa283">ConfigElem</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#74aa827d61789b2c19b3efbc5f374c82">ConfigElem</a> (<a class="el" href="classConfigList.html">ConfigList</a> *config)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#2c7a292764612fed972279e181c897d5">ConfigElem</a> (<a class="el" href="classConfigElem.html">ConfigElem</a> *pElem)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#3a6a88209785cd551bc5dd901840288c">ConfigElem</a> (<a class="el" href="classConfigList.html">ConfigList</a> *config, const QString &amp;account)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#d14d9c03f757691f198efd14104a3ce8">~ConfigElem</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#4a5aa6b86e56403fa453c9d642b71812">setActive</a> (bool active)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#8248ddc45de2d7d924e59e7c591da98f">setAccountName</a> (QString name)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#7ea9a96f400284acce0999639659c461">getPassword</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#6edf15369f3e906a04dff0b92f5b3c2d">setPassword</a> (const QString &amp;password)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#371db6ec6023c72fbfac6b765b0de08b">hasPassword</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KURL&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#a4b9669aff68ef45c260c2d485d8a405">getURL</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#a58326995659da378bc160ed90ad578b">setListViewItem</a> (QListViewItem *item)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QListViewItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#b5b2ecee68626b7ff80219cdb3f3bed2">getListViewItem</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#8e8e1f32420d051a8c6d4df4a3ad4b93">isSelected</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#5fc7f4f73b17bb27faef10d96b80a77c">clearMailList</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#cf56636bf7537e7f5dbc1a762b4670d2">setHost</a> (const QString &amp;host)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#6a7f0888c77882eda05bcc22a27947c1">getHost</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#103236b06a88a8d14b629170df1a7ca9">setProtocol</a> (const QString &amp;protocol)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#562620c4141a744725d384309a9e55f1">getProtocol</a> (bool upperCase=false) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#67f45e40b98d20d7d26e1e244f42b208">setTLS</a> (bool tls)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#fdc03b7cd5b73cca18f0787509e32edc">getTLS</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#cc66eba0b4fbf308cddad0478f20ef0f">setPort</a> (unsigned short int port)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned short int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#2b3366a9ebc43549491bd003578a0bc8">getPort</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#856ca37e391329be6b06f8be2f0a1f74">setUser</a> (const QString &amp;user)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#19f5621cac8e71c1088995bcef75596a">getUser</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#58f9d269bd389c52718d78d7615c4431">setPasswordStorage</a> (int storage)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#34bc68f7bbdc296d18460f303f479450">getPasswordStorage</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#bda433f60b1eed0d4b8d207707d5005c">saveOptions</a> (QDomDocument &amp;doc, QDomElement &amp;parent)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#dee46100623211279e37f498ac43c4e4">readStoredMails</a> (QDomElement &amp;parent)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#300f2eab6d5d210b64b595b1a6048a5f">count</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#750ccb3fb3f7d1857b79f7218f5a0767">deleteSelectedMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#01e5735260c23f43480d807e7e9070c9">showSelectedMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#973328114a20a798887ab040aba33141">assertPassword</a> (bool force=false)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">Types::AccountState_Type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#1b2187ece7367694776f17c6cad6571c">getState</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QStringList&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#93c5c182878b9809188933046e04a998">getSelectedSubjects</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#748ec06f6ad44f36143389bb9501a1f7">hasSelectedMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#83af8872b7e83279750434e7ef376e5b">refreshMailList</a> (<a class="el" href="classFilterLog.html">FilterLog</a> *log=NULL)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#2725f96acd936fd8a9008d6ddf04ba76">getNumberNewMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#c072d6241f981b1e0ffffb63a0a52250">getNumberMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#bb71d58016499cd57784e60efee37b0f">getTotalSize</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#365bd67f2ec657beaf98ded2463b61a2">fillMailListView</a> (<a class="el" href="classKshowmailView.html">KshowmailView</a> *view)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#3a709da00728e100343bfde8aac61491">refreshAccountListItem</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#be79ff49926793b27e8af8b5101c7b70">killPOP3Job</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#0725bb36943ca6fd1ca82af5ef6913a3">showSelectedHeaders</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#46e0d578a0c537e8d13ad689044f1fe7">printSetup</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#f0c46e80c8300ab141a759042d4f38b5">reloadFilterSettings</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#8dc234323fe966a322ae8649bc2cd76e">continueShowHeaders</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#85fb09c9cdc92ae5e8663bf8c6c4a615">cancelShowHeaders</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#261c27647b7d842799e94ae149212ad5">isSpam</a> (QByteArray mail) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#ef9bf08b5313d9b0d5983f5a9459cf3a">isSpamAssassinRunning</a> () const</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#f2f44d27824ca6c4caf9c472f5c980b4">slotMailDeleted</a> (KIO::Job *job)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">slotFinalizeDeletion</a> (KIO::Job *)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#a63d81fad1dc2f9f8f015effabb8b6d9">slotBodyDownloaded</a> (KIO::Job *job)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#53d209d56cb8ba5ce9f2f1d781d40e4f">slotMailDownloadedForAction</a> (KIO::Job *job)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#ab068855931a06371d27ec03695121a7">slotDataMailBody</a> (KIO::Job *, const QByteArray &amp;datas)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail</a> (KIO::Job *)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#9771cc6111fae208e8ca92d9c162096d">slotTimeout</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#11db8a853a253b81a16ecd199c441911">slotReceiveUID</a> (KIO::Job *, const QByteArray &amp;data)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#5ba4833fd4b897bb21fa31dff2cf5750">slotUIDsReceived</a> (KIO::Job *job)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#b3e0a075b84fed2a1e156de17cdefbad">slotReceiveSize</a> (KIO::Job *, const QByteArray &amp;data)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#685be03ba48ad2e1cfb9a0cc04a81559">slotSizesReceived</a> (KIO::Job *job)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#6470facb8041787fc48707ece1dfc364">slotFinalizeRefresh</a> (KIO::Job *)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#2220bd2656a5e87cfb2582ae8854f71c">slotHeaderDownloaded</a> (KIO::Job *job)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#52b690b870d814bf6017500edc731aae">slotReceiveHeader</a> (KIO::Job *, const QByteArray &amp;data)</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#e5e1c7ae0734cb85654d7c6f2b073ef0">init</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">deleteNextMail</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#f4e51ff42a86a9d5a6ed0f361069d242">commitDeletion</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">showNextMail</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#7a53693e1ca3b30406efb6c8a68ce851">commitDownloading</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">startKIOJob</a> (const QString &amp;path)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#3cb6757a426072724df1b1ea930da796">getTimeoutTime</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#38ba64f20fe31a6e59d6c58775672922">getUIDs</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#ab836ffc3b068d052ea3486f8cdac74d">getSizes</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#f7202b10df7e27303315d754b25b6d6c">getHeaders</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#599f2dc026bd3d759d9e2ada3d4ff3ea">getNextHeader</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#6a1f1cb81c4bcca055e0b98bd9fb0cf7">applyFiltersDeleted</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#3691ecff2aab23143072b434fd304c45">commitRefresh</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#91365e361149fd5d564b99a4b7182fc3">swapMailLists</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#e638826fe97d9aded3d3dadde320103e">doDownloadActions</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#1fd7ddefdce76a3da2bf3eda7ff28942">getNextMailForDownloadActions</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#807e183296b04a86035a17a6f2fa0392">isMailDir</a> (const QDir &amp;path)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#4289e9e88062857964798c71cbc496ef">writeToMailBox</a> (const QString &amp;mail, const QString &amp;box)</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classConfigList.html">ConfigList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classFilterLog.html">FilterLog</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#e3f2a5c6b03dd756f474255247461b02">FLog</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">Types::AccountState_Type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">PasswordStorage</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">m_bActive</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QListViewItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShowRecord.html">ShowRecord</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KURL&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#b8a7341e3db3e69b8e661c89ff08b7f4">secureLoginType</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#b13600ffaaae88a8e0baf030ffd926a1">useTLS</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QByteArray&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#ac5a5ecf9c70a0c94c2cf7181a1989dd">mailbody</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">MailNumberList_Type&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">MailToDownloadMap_Type&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#dc3d4a8f849b476ff72d2c485a3ffa36">MailsToDownload</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">MailNumberList_Type&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">MailNumberList_Type&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">newMails</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KIO::TransferJob *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QTimer *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShowRecord.html">ShowRecord</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QStringList&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#80f016779bdc8774cc7822a839b2c796">receivedUIDs</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QStringList&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#fc6f21ff722d537d2e59ee42e57cd337">receivedSizes</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QByteArray&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#23ed166f77355117fa99dcbc3d5b7d12">receivedHeader</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classHeaderFilter.html">HeaderFilter</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#85b505610abbe0c01921a6e385a7548e">headerFilter</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#1c5b6fd53a5dfbe13c8d9ef2f3b97608">filterApplied</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#c3a6aea2718324eba83d02f6e5828fa5">deletionPerformedByFilters</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#b842ac987bd40656b334c4e8c3a75103">refreshPerformedByFilters</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#f96a3bda830dcfbe7aa579c3e64cfed4">downloadActionsInvoked</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigElem.html#30203c10e9c6b563ee9c454269cad8d1">moveCounter</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Represents a mail account.
+<p>
+Contains all datas of the account like server, user password and so on. It also contains the mails read from the server. Used in class <a class="el" href="classConfigList.html">ConfigList</a> and <a class="el" href="classConfigAccounts.html">ConfigAccounts</a>.<p>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classShowRecord.html">ShowRecord</a> <p>
+<a class="el" href="classConfigList.html">ConfigList</a> <p>
+ConfigAccounts::Accounts </dd></dl>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke &lt;<a href="mailto:eggert.ehmke@berlin.de">eggert.ehmke@berlin.de</a>&gt; <p>
+Ulrich Weigelt &lt;<a href="mailto:ulrich.weigelt@gmx.de">ulrich.weigelt@gmx.de</a>&gt; </dd></dl>
+
+<p>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="dbbb95e2595abd6e9b0f593e7edfa283"></a><!-- doxytag: member="ConfigElem::ConfigElem" ref="dbbb95e2595abd6e9b0f593e7edfa283" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ConfigElem::ConfigElem </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+General Constructor Warning: The pointer to the application configuration (<a class="el" href="classConfigList.html">ConfigList</a>) will not be set.
+</div>
+</div><p>
+<a class="anchor" name="74aa827d61789b2c19b3efbc5f374c82"></a><!-- doxytag: member="ConfigElem::ConfigElem" ref="74aa827d61789b2c19b3efbc5f374c82" args="(ConfigList *config)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ConfigElem::ConfigElem </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classConfigList.html">ConfigList</a> *&nbsp;</td>
+ <td class="paramname"> <em>config</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Default Constructor <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>config</em>&nbsp;</td><td>pointer to the general app configuration </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="2c7a292764612fed972279e181c897d5"></a><!-- doxytag: member="ConfigElem::ConfigElem" ref="2c7a292764612fed972279e181c897d5" args="(ConfigElem *pElem)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ConfigElem::ConfigElem </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classConfigElem.html">ConfigElem</a> *&nbsp;</td>
+ <td class="paramname"> <em>pElem</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Copy Constructor. It doesn't copy the mail list but creates a new empty one. The pointer to the appropriate account list view item is set to NULL.The new account is active by default. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>pElem</em>&nbsp;</td><td>the account which will be copied </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="3a6a88209785cd551bc5dd901840288c"></a><!-- doxytag: member="ConfigElem::ConfigElem" ref="3a6a88209785cd551bc5dd901840288c" args="(ConfigList *config, const QString &amp;account)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ConfigElem::ConfigElem </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classConfigList.html">ConfigList</a> *&nbsp;</td>
+ <td class="paramname"> <em>config</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>account</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructs a account which is called like the given name. Creates a empty mail list. Sets the pointer to the appropriate account list view item to NULL. The account is deactivated by default. The url doesn't contain any server informations. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>config</em>&nbsp;</td><td>pointer to the general app configuration </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of the new account </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="d14d9c03f757691f198efd14104a3ce8"></a><!-- doxytag: member="ConfigElem::~ConfigElem" ref="d14d9c03f757691f198efd14104a3ce8" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ConfigElem::~ConfigElem </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Destructor Does nothing.
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="9c91fce81b58e9d0d1b37688711e9014"></a><!-- doxytag: member="ConfigElem::isActive" ref="9c91fce81b58e9d0d1b37688711e9014" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigElem::isActive </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the account is active. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - account is active; FALSE - account is not active </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="4a5aa6b86e56403fa453c9d642b71812"></a><!-- doxytag: member="ConfigElem::setActive" ref="4a5aa6b86e56403fa453c9d642b71812" args="(bool active)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::setActive </td>
+ <td>(</td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>active</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the account active. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>active</em>&nbsp;</td><td>TRUE - active account; FALSE - deactivate account </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="760e18ad688d55cd76bfeeb4958df769"></a><!-- doxytag: member="ConfigElem::getAccountName" ref="760e18ad688d55cd76bfeeb4958df769" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ConfigElem::getAccountName </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Gets the account name. <dl class="return" compact><dt><b>Returns:</b></dt><dd>account name </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="8248ddc45de2d7d924e59e7c591da98f"></a><!-- doxytag: member="ConfigElem::setAccountName" ref="8248ddc45de2d7d924e59e7c591da98f" args="(QString name)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::setAccountName </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>name</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the account name. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the account name </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="7ea9a96f400284acce0999639659c461"></a><!-- doxytag: member="ConfigElem::getPassword" ref="7ea9a96f400284acce0999639659c461" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ConfigElem::getPassword </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Gets the account password. <dl class="return" compact><dt><b>Returns:</b></dt><dd>password </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="6edf15369f3e906a04dff0b92f5b3c2d"></a><!-- doxytag: member="ConfigElem::setPassword" ref="6edf15369f3e906a04dff0b92f5b3c2d" args="(const QString &amp;password)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::setPassword </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>password</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the account password. To save it in the configuration file call <a class="el" href="classConfigElem.html#bda433f60b1eed0d4b8d207707d5005c">saveOptions()</a>. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>password</em>&nbsp;</td><td>new password </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="371db6ec6023c72fbfac6b765b0de08b"></a><!-- doxytag: member="ConfigElem::hasPassword" ref="371db6ec6023c72fbfac6b765b0de08b" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigElem::hasPassword </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether a password is stored. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - there is password stored; FALSE - no password stored </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="a4b9669aff68ef45c260c2d485d8a405"></a><!-- doxytag: member="ConfigElem::getURL" ref="a4b9669aff68ef45c260c2d485d8a405" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KURL ConfigElem::getURL </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the url of this account. <dl class="return" compact><dt><b>Returns:</b></dt><dd>url </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="a58326995659da378bc160ed90ad578b"></a><!-- doxytag: member="ConfigElem::setListViewItem" ref="a58326995659da378bc160ed90ad578b" args="(QListViewItem *item)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::setListViewItem </td>
+ <td>(</td>
+ <td class="paramtype">QListViewItem *&nbsp;</td>
+ <td class="paramname"> <em>item</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the pointer to the item in the account list view item. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a> </dd></dl>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>item</em>&nbsp;</td><td>account list view item </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="b5b2ecee68626b7ff80219cdb3f3bed2"></a><!-- doxytag: member="ConfigElem::getListViewItem" ref="b5b2ecee68626b7ff80219cdb3f3bed2" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QListViewItem * ConfigElem::getListViewItem </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the pointer to the account list view item. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>pointer to the appropriate list view item </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="8e8e1f32420d051a8c6d4df4a3ad4b93"></a><!-- doxytag: member="ConfigElem::isSelected" ref="8e8e1f32420d051a8c6d4df4a3ad4b93" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigElem::isSelected </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns TRUE, if the appropriate list view item is selected. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - list view item is selected <p>
+FALSE - list view item is not selected </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="5fc7f4f73b17bb27faef10d96b80a77c"></a><!-- doxytag: member="ConfigElem::clearMailList" ref="5fc7f4f73b17bb27faef10d96b80a77c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::clearMailList </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Clears the mail list or creates a new one.
+</div>
+</div><p>
+<a class="anchor" name="cf56636bf7537e7f5dbc1a762b4670d2"></a><!-- doxytag: member="ConfigElem::setHost" ref="cf56636bf7537e7f5dbc1a762b4670d2" args="(const QString &amp;host)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::setHost </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>host</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the host name. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>host</em>&nbsp;</td><td>host name </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="6a7f0888c77882eda05bcc22a27947c1"></a><!-- doxytag: member="ConfigElem::getHost" ref="6a7f0888c77882eda05bcc22a27947c1" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ConfigElem::getHost </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the hostname. <dl class="return" compact><dt><b>Returns:</b></dt><dd>the name of the host or QString::null if no host is set </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="103236b06a88a8d14b629170df1a7ca9"></a><!-- doxytag: member="ConfigElem::setProtocol" ref="103236b06a88a8d14b629170df1a7ca9" args="(const QString &amp;protocol)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::setProtocol </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>protocol</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the protocol. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>protocol</em>&nbsp;</td><td>the protocol </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="562620c4141a744725d384309a9e55f1"></a><!-- doxytag: member="ConfigElem::getProtocol" ref="562620c4141a744725d384309a9e55f1" args="(bool upperCase=false) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ConfigElem::getProtocol </td>
+ <td>(</td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>upperCase</em> = <code>false</code> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the protocol. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>upperCase</em>&nbsp;</td><td>TRUE - transforms the protocol string to upper case </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>protocol </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="67f45e40b98d20d7d26e1e244f42b208"></a><!-- doxytag: member="ConfigElem::setTLS" ref="67f45e40b98d20d7d26e1e244f42b208" args="(bool tls)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::setTLS </td>
+ <td>(</td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>tls</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Enable or disable TLS. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>tls</em>&nbsp;</td><td>TRUE: use TLS; FALSE: don't use TLS </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="fdc03b7cd5b73cca18f0787509e32edc"></a><!-- doxytag: member="ConfigElem::getTLS" ref="fdc03b7cd5b73cca18f0787509e32edc" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigElem::getTLS </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether TLS is enabled. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE: TLS is enabled <p>
+FALSE: TLS is disabled </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="cc66eba0b4fbf308cddad0478f20ef0f"></a><!-- doxytag: member="ConfigElem::setPort" ref="cc66eba0b4fbf308cddad0478f20ef0f" args="(unsigned short int port)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::setPort </td>
+ <td>(</td>
+ <td class="paramtype">unsigned short int&nbsp;</td>
+ <td class="paramname"> <em>port</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the port. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>port</em>&nbsp;</td><td>the port </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="2b3366a9ebc43549491bd003578a0bc8"></a><!-- doxytag: member="ConfigElem::getPort" ref="2b3366a9ebc43549491bd003578a0bc8" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned short int ConfigElem::getPort </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the port number. <dl class="return" compact><dt><b>Returns:</b></dt><dd>port number </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="856ca37e391329be6b06f8be2f0a1f74"></a><!-- doxytag: member="ConfigElem::setUser" ref="856ca37e391329be6b06f8be2f0a1f74" args="(const QString &amp;user)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::setUser </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>user</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the user. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>user</em>&nbsp;</td><td>username </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="19f5621cac8e71c1088995bcef75596a"></a><!-- doxytag: member="ConfigElem::getUser" ref="19f5621cac8e71c1088995bcef75596a" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ConfigElem::getUser </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the user name. <dl class="return" compact><dt><b>Returns:</b></dt><dd>the user name or QString::null if there is no user name </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="58f9d269bd389c52718d78d7615c4431"></a><!-- doxytag: member="ConfigElem::setPasswordStorage" ref="58f9d269bd389c52718d78d7615c4431" args="(int storage)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::setPasswordStorage </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>storage</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the password storage type. The <a class="el" href="namespaceConstants.html">Constants</a> are defined in <a class="el" href="constants_8h.html">constants.h</a> <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>storage</em>&nbsp;</td><td>type of password storage; valid values are: CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="34bc68f7bbdc296d18460f303f479450"></a><!-- doxytag: member="ConfigElem::getPasswordStorage" ref="34bc68f7bbdc296d18460f303f479450" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ConfigElem::getPasswordStorage </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the password storage type. The <a class="el" href="namespaceConstants.html">Constants</a> are defined in <a class="el" href="constants_8h.html">constants.h</a>. <dl class="return" compact><dt><b>Returns:</b></dt><dd>type of password storage; valid values are: CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="bda433f60b1eed0d4b8d207707d5005c"></a><!-- doxytag: member="ConfigElem::saveOptions" ref="bda433f60b1eed0d4b8d207707d5005c" args="(QDomDocument &amp;doc, QDomElement &amp;parent)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::saveOptions </td>
+ <td>(</td>
+ <td class="paramtype">QDomDocument &amp;&nbsp;</td>
+ <td class="paramname"> <em>doc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QDomElement &amp;&nbsp;</td>
+ <td class="paramname"> <em>parent</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Saves the stored mails into the given DOM document. It doesn't create a new DOM element but used the given one. Saves the setup into the application config. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>doc</em>&nbsp;</td><td>DOM document which contains all application settings, mails and account settings </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>parent</em>&nbsp;</td><td>DOM element in which all settings and mails of this account will be saved </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="dee46100623211279e37f498ac43c4e4"></a><!-- doxytag: member="ConfigElem::readStoredMails" ref="dee46100623211279e37f498ac43c4e4" args="(QDomElement &amp;parent)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::readStoredMails </td>
+ <td>(</td>
+ <td class="paramtype">QDomElement &amp;&nbsp;</td>
+ <td class="paramname"> <em>parent</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Gets the stored mails. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>parent</em>&nbsp;</td><td>DOM element which contains the mails of this account </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="300f2eab6d5d210b64b595b1a6048a5f"></a><!-- doxytag: member="ConfigElem::count" ref="300f2eab6d5d210b64b595b1a6048a5f" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ConfigElem::count </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the number of stored mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>number of mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="750ccb3fb3f7d1857b79f7218f5a0767"></a><!-- doxytag: member="ConfigElem::deleteSelectedMails" ref="750ccb3fb3f7d1857b79f7218f5a0767" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::deleteSelectedMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Deletes all selected mails. This just starts the deletion and returns after then. When the deletion is ready the signal sigDeleteReady will be emitted.
+</div>
+</div><p>
+<a class="anchor" name="01e5735260c23f43480d807e7e9070c9"></a><!-- doxytag: member="ConfigElem::showSelectedMails" ref="01e5735260c23f43480d807e7e9070c9" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::showSelectedMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Downloads and shows the bodies of all selected mails. This just starts the download and returns after then. When the download is ready and the body is shown the sigShowBodiesReady will be emitted.
+</div>
+</div><p>
+<a class="anchor" name="973328114a20a798887ab040aba33141"></a><!-- doxytag: member="ConfigElem::assertPassword" ref="973328114a20a798887ab040aba33141" args="(bool force=false)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigElem::assertPassword </td>
+ <td>(</td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>force</em> = <code>false</code> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Opens a dialog to ask for a password, stores it temporarily in the account settings and emits the signal sigConfigChanged. Does not open a dialog if a password is already stored in the account settings. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>force</em>&nbsp;</td><td>ask for a new password even if a password is stored </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - a password is available <p>
+FALSE - no password is available </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="1b2187ece7367694776f17c6cad6571c"></a><!-- doxytag: member="ConfigElem::getState" ref="1b2187ece7367694776f17c6cad6571c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">Types::AccountState_Type</a> ConfigElem::getState </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the state of the account. <dl class="return" compact><dt><b>Returns:</b></dt><dd>account state </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="93c5c182878b9809188933046e04a998"></a><!-- doxytag: member="ConfigElem::getSelectedSubjects" ref="93c5c182878b9809188933046e04a998" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QStringList ConfigElem::getSelectedSubjects </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the subjects of the selected mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>subjects of selected mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="748ec06f6ad44f36143389bb9501a1f7"></a><!-- doxytag: member="ConfigElem::hasSelectedMails" ref="748ec06f6ad44f36143389bb9501a1f7" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigElem::hasSelectedMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether there are mails in the list that are selected in the list view. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - there are selected mails <p>
+FALSE - there aren't selected mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="83af8872b7e83279750434e7ef376e5b"></a><!-- doxytag: member="ConfigElem::refreshMailList" ref="83af8872b7e83279750434e7ef376e5b" args="(FilterLog *log=NULL)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::refreshMailList </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classFilterLog.html">FilterLog</a> *&nbsp;</td>
+ <td class="paramname"> <em>log</em> = <code>NULL</code> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Refreshes the mail list. This just starts the refresh and returns after then. When the refresh is ready, the signal sigRefreshReady will be emitted. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>log</em>&nbsp;</td><td>Pointer to the filter log </td></tr>
+ </table>
+</dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#d57456d967920820080dc13d6fb5a8ff">sigRefreshReady</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="2725f96acd936fd8a9008d6ddf04ba76"></a><!-- doxytag: member="ConfigElem::getNumberNewMails" ref="2725f96acd936fd8a9008d6ddf04ba76" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ConfigElem::getNumberNewMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the number of new mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>number of new mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="c072d6241f981b1e0ffffb63a0a52250"></a><!-- doxytag: member="ConfigElem::getNumberMails" ref="c072d6241f981b1e0ffffb63a0a52250" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ConfigElem::getNumberMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the number of mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>number of mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="bb71d58016499cd57784e60efee37b0f"></a><!-- doxytag: member="ConfigElem::getTotalSize" ref="bb71d58016499cd57784e60efee37b0f" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">long ConfigElem::getTotalSize </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the total size of all mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>total size </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="365bd67f2ec657beaf98ded2463b61a2"></a><!-- doxytag: member="ConfigElem::fillMailListView" ref="365bd67f2ec657beaf98ded2463b61a2" args="(KshowmailView *view)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::fillMailListView </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classKshowmailView.html">KshowmailView</a> *&nbsp;</td>
+ <td class="paramname"> <em>view</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Creates for every mail a list view item and insert it into the mail list view. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>view</em>&nbsp;</td><td>pointer to the application view </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="3a709da00728e100343bfde8aac61491"></a><!-- doxytag: member="ConfigElem::refreshAccountListItem" ref="3a709da00728e100343bfde8aac61491" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::refreshAccountListItem </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Refreshes the appropriate entry of the account list (number of mails and total size) Uses the pointer to the list view item stored in m_pViewItem.
+</div>
+</div><p>
+<a class="anchor" name="be79ff49926793b27e8af8b5101c7b70"></a><!-- doxytag: member="ConfigElem::killPOP3Job" ref="be79ff49926793b27e8af8b5101c7b70" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::killPOP3Job </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Kills a running pop3 job.
+</div>
+</div><p>
+<a class="anchor" name="0725bb36943ca6fd1ca82af5ef6913a3"></a><!-- doxytag: member="ConfigElem::showSelectedHeaders" ref="0725bb36943ca6fd1ca82af5ef6913a3" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ConfigElem::showSelectedHeaders </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Shows the headers of all selected mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>continueShowHeaders - the user has clicked OK. The invoking function will show the next header <p>
+cancelShowHeaders - the user has clicked Cancel. The invoking function will not show the next header. <p>
+continueShowHeaders - no mails of this account are selected </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="46e0d578a0c537e8d13ad689044f1fe7"></a><!-- doxytag: member="ConfigElem::printSetup" ref="46e0d578a0c537e8d13ad689044f1fe7" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::printSetup </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Prints the setup to stdout.
+</div>
+</div><p>
+<a class="anchor" name="f0c46e80c8300ab141a759042d4f38b5"></a><!-- doxytag: member="ConfigElem::reloadFilterSettings" ref="f0c46e80c8300ab141a759042d4f38b5" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::reloadFilterSettings </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Reloads the settings of the filters. It just calls the load() methode of the header filter.
+</div>
+</div><p>
+<a class="anchor" name="e5e1c7ae0734cb85654d7c6f2b073ef0"></a><!-- doxytag: member="ConfigElem::init" ref="e5e1c7ae0734cb85654d7c6f2b073ef0" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::init </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Initializes the account.
+</div>
+</div><p>
+<a class="anchor" name="d68eb7fd9d907eaa7b4116f81f19bb30"></a><!-- doxytag: member="ConfigElem::deleteNextMail" ref="d68eb7fd9d907eaa7b4116f81f19bb30" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::deleteNextMail </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Deletes the first mail of MailsToDelete. After a succesful deletion this mail will be removed from the list by <a class="el" href="classConfigElem.html#f2f44d27824ca6c4caf9c472f5c980b4">slotMailDeleted()</a> and this method will be invoked again. If the list is empty, it will call commitDelete. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#f2f44d27824ca6c4caf9c472f5c980b4">slotMailDeleted()</a> <p>
+<a class="el" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="f4e51ff42a86a9d5a6ed0f361069d242"></a><!-- doxytag: member="ConfigElem::commitDeletion" ref="f4e51ff42a86a9d5a6ed0f361069d242" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::commitDeletion </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Commits the deletion. Starts a pop3 job that will do the commit. Its signal result is connected with <a class="el" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">slotFinalizeDeletion()</a>. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">slotFinalizeDeletion()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="962f37179e56d2cc5fca450744b23199"></a><!-- doxytag: member="ConfigElem::showNextMail" ref="962f37179e56d2cc5fca450744b23199" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::showNextMail </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Shows the body of the first mail in MailsToShow. After a succesful download and opening of the window this mail will be removed from the list by <a class="el" href="classConfigElem.html#a63d81fad1dc2f9f8f015effabb8b6d9">slotBodyDownloaded()</a> and this method will be invoked again. If the list is empty, it will call <a class="el" href="classConfigElem.html#7a53693e1ca3b30406efb6c8a68ce851">commitDownloading()</a>. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#7a53693e1ca3b30406efb6c8a68ce851">commitDownloading()</a> <p>
+<a class="el" href="classConfigElem.html#a63d81fad1dc2f9f8f015effabb8b6d9">slotBodyDownloaded()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="7a53693e1ca3b30406efb6c8a68ce851"></a><!-- doxytag: member="ConfigElem::commitDownloading" ref="7a53693e1ca3b30406efb6c8a68ce851" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::commitDownloading </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Commits the downloading of mail bodies. Starts a pop3 job that will do the commit. Its signal result is connected with <a class="el" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail()</a>. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="91d4d6394730fae55c12ccb1247d76aa"></a><!-- doxytag: member="ConfigElem::startKIOJob" ref="91d4d6394730fae55c12ccb1247d76aa" args="(const QString &amp;path)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::startKIOJob </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>path</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Creates a POP3 transfer job (<a class="el" href="namespaceKIO.html">KIO</a> Job), which will be stored in pop3Job. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>command and parameters of the job as URL path </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="3cb6757a426072724df1b1ea930da796"></a><!-- doxytag: member="ConfigElem::getTimeoutTime" ref="3cb6757a426072724df1b1ea930da796" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned int ConfigElem::getTimeoutTime </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the timeout time in seconds which is stored in the general configuration of the application. Returns POP3_DEFAULT_TIMEOUT_TIME (defined in <a class="el" href="constants_8h.html">constants.h</a>), if no time is available. Returns POP3_MINIMUM_TIMEOUT_TIME (defined in <a class="el" href="constants_8h.html">constants.h</a>), if the get time is less than POP3_MINIMUM_TIMEOUT_TIME. <dl class="return" compact><dt><b>Returns:</b></dt><dd>seconds to timeout </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="38ba64f20fe31a6e59d6c58775672922"></a><!-- doxytag: member="ConfigElem::getUIDs" ref="38ba64f20fe31a6e59d6c58775672922" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::getUIDs </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+First step of the refresh cycle. Gets the UIDs of the available mails from the server. It starts a <a class="el" href="namespaceKIO.html">KIO</a> job to get the UIDs. The UIDs will be stored in receivedUIDs by <a class="el" href="classConfigElem.html#11db8a853a253b81a16ecd199c441911">slotReceiveUID()</a>. When the job is ready, it will invoke <a class="el" href="classConfigElem.html#5ba4833fd4b897bb21fa31dff2cf5750">slotUIDsReceived()</a>.
+</div>
+</div><p>
+<a class="anchor" name="ab836ffc3b068d052ea3486f8cdac74d"></a><!-- doxytag: member="ConfigElem::getSizes" ref="ab836ffc3b068d052ea3486f8cdac74d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::getSizes </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Second step of the refresh cycle. Gets the sizes of the available mails from the server. It starts a <a class="el" href="namespaceKIO.html">KIO</a> job to get these. The Sizes will be temporarily stored in receivedSizes by <a class="el" href="classConfigElem.html#b3e0a075b84fed2a1e156de17cdefbad">slotReceiveSize()</a>. When the job is ready, it will invoke <a class="el" href="classConfigElem.html#685be03ba48ad2e1cfb9a0cc04a81559">slotSizesReceived()</a>.
+</div>
+</div><p>
+<a class="anchor" name="f7202b10df7e27303315d754b25b6d6c"></a><!-- doxytag: member="ConfigElem::getHeaders" ref="f7202b10df7e27303315d754b25b6d6c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::getHeaders </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Third step of the refresh cycle. Gets the header of the new mails from the server.
+</div>
+</div><p>
+<a class="anchor" name="599f2dc026bd3d759d9e2ada3d4ff3ea"></a><!-- doxytag: member="ConfigElem::getNextHeader" ref="599f2dc026bd3d759d9e2ada3d4ff3ea" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::getNextHeader </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Get the header of the first mail in newMails. After a succesful download this mail will be removed from the list by <a class="el" href="classConfigElem.html#2220bd2656a5e87cfb2582ae8854f71c">slotHeaderDownloaded()</a> and this method will be invoked again. If the list is empty, it will call <a class="el" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders()</a> to get the known headers from the old mail list (m_pshowrecord). <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders()</a> <p>
+<a class="el" href="classConfigElem.html#2220bd2656a5e87cfb2582ae8854f71c">slotHeaderDownloaded()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="4c8bf2c5e048a2c18048a3444841a668"></a><!-- doxytag: member="ConfigElem::copyHeaders" ref="4c8bf2c5e048a2c18048a3444841a668" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::copyHeaders </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Fourth step of the refresh cycle. Copies the known headers of the old mails from the old mail list to the new one. At the end it invokes <a class="el" href="classConfigElem.html#91365e361149fd5d564b99a4b7182fc3">swapMailLists()</a>.
+</div>
+</div><p>
+<a class="anchor" name="f4206aa01f491b7a7e2c57682fe10b31"></a><!-- doxytag: member="ConfigElem::applyFilters" ref="f4206aa01f491b7a7e2c57682fe10b31" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::applyFilters </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sixth step of the refresh cycle. Applies the filters to the mails in the mail list. Invoked by <a class="el" href="classConfigElem.html#91365e361149fd5d564b99a4b7182fc3">swapMailLists()</a>. This methode maybe starts a new refresh cycle because after a deletion or moving we need a actual list of mails on the server. To avoid a never-ending loop you must not call this methode during the second refresh cycle. Therefore it sets filterApplied to TRUE. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#1c5b6fd53a5dfbe13c8d9ef2f3b97608">filterApplied</a> <p>
+<a class="el" href="classConfigElem.html#6a1f1cb81c4bcca055e0b98bd9fb0cf7">applyFiltersDeleted()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="6a1f1cb81c4bcca055e0b98bd9fb0cf7"></a><!-- doxytag: member="ConfigElem::applyFiltersDeleted" ref="6a1f1cb81c4bcca055e0b98bd9fb0cf7" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::applyFiltersDeleted </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+If there are mails to delete by filters applyFilters will call the regular deletion cycle of this class with set byFilter-flag. Therefore the deletion will not branch to <a class="el" href="classConfigElem.html#f4e51ff42a86a9d5a6ed0f361069d242">commitDeletion()</a> but to this methode. This performs a second refresh cycle to get an effective mail list from the server. This new cycle will not apply the filters again, because the flag filterApplied is set to TRUE. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> <p>
+<a class="el" href="classConfigElem.html#1c5b6fd53a5dfbe13c8d9ef2f3b97608">filterApplied</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="cdba8db3598e2390099294968623abc4"></a><!-- doxytag: member="ConfigElem::cancelRefresh" ref="cdba8db3598e2390099294968623abc4" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::cancelRefresh </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Cancels the refresh. Will be invoked, when a pop3 job has reported an error.
+</div>
+</div><p>
+<a class="anchor" name="3691ecff2aab23143072b434fd304c45"></a><!-- doxytag: member="ConfigElem::commitRefresh" ref="3691ecff2aab23143072b434fd304c45" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::commitRefresh </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Commits the refresh. Starts a pop3 job that will do the commit. Its signal result is connected with <a class="el" href="classConfigElem.html#6470facb8041787fc48707ece1dfc364">slotFinalizeRefresh()</a>. Invoked by <a class="el" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders()</a> if the filters was applied or <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> if not second refresh was necessary. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#6470facb8041787fc48707ece1dfc364">slotFinalizeRefresh()</a> <p>
+<a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="91365e361149fd5d564b99a4b7182fc3"></a><!-- doxytag: member="ConfigElem::swapMailLists" ref="91365e361149fd5d564b99a4b7182fc3" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::swapMailLists </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Fifth step of the refresh cycle. Copies the pointer to the temporary list to m_pshowrecord. Invoked by <a class="el" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders()</a> and <a class="el" href="classConfigElem.html#5ba4833fd4b897bb21fa31dff2cf5750">slotUIDsReceived()</a>. The temporary list will be the current mail list. At the end it invokes <a class="el" href="classConfigElem.html#3691ecff2aab23143072b434fd304c45">commitRefresh()</a> if the filters were applied (filterApplied == TRUE) or deactive or it invokes <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> if the filters were not applied (filterApplied == FALSE). <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a> <p>
+<a class="el" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders()</a> <p>
+<a class="el" href="classConfigElem.html#5ba4833fd4b897bb21fa31dff2cf5750">slotUIDsReceived()</a> <p>
+<a class="el" href="classConfigElem.html#3691ecff2aab23143072b434fd304c45">commitRefresh()</a> <p>
+<a class="el" href="classConfigElem.html#1c5b6fd53a5dfbe13c8d9ef2f3b97608">filterApplied</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="e638826fe97d9aded3d3dadde320103e"></a><!-- doxytag: member="ConfigElem::doDownloadActions" ref="e638826fe97d9aded3d3dadde320103e" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::doDownloadActions </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Does all filter actions for which we have to download the mails These are: Moving, spam check It doesn't removes they from the server.
+</div>
+</div><p>
+<a class="anchor" name="1fd7ddefdce76a3da2bf3eda7ff28942"></a><!-- doxytag: member="ConfigElem::getNextMailForDownloadActions" ref="1fd7ddefdce76a3da2bf3eda7ff28942" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::getNextMailForDownloadActions </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Gets the body of the first mail in MailsToDownload. After a succesful download and writing into the mailbox this mail will be removed from the list by slotMailDownloadedforDownloadActions() and this method will be invoked again. If the list is empty, it will call <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> to continue the filtering. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> <p>
+slotMailDownloadedforDownloadActions() </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="807e183296b04a86035a17a6f2fa0392"></a><!-- doxytag: member="ConfigElem::isMailDir" ref="807e183296b04a86035a17a6f2fa0392" args="(const QDir &amp;path)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigElem::isMailDir </td>
+ <td>(</td>
+ <td class="paramtype">const QDir &amp;&nbsp;</td>
+ <td class="paramname"> <em>path</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the given directory is a maildir directory <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>the directory for test </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - directory is a maildir directory </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="4289e9e88062857964798c71cbc496ef"></a><!-- doxytag: member="ConfigElem::writeToMailBox" ref="4289e9e88062857964798c71cbc496ef" args="(const QString &amp;mail, const QString &amp;box)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigElem::writeToMailBox </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>mail</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>box</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Writes the given mail into the mailbox. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>mail</em>&nbsp;</td><td>the Mail </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>box</em>&nbsp;</td><td>path to the mailbox </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - Writing was succesful </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="f2f44d27824ca6c4caf9c472f5c980b4"></a><!-- doxytag: member="ConfigElem::slotMailDeleted" ref="f2f44d27824ca6c4caf9c472f5c980b4" args="(KIO::Job *job)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotMailDeleted </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname"> <em>job</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal result of the launched pop3 job. Removes the deleted mail from the internal mail list (m_pshowrecord). Removes the first mail from MailsToDelete and invokes <a class="el" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">deleteNextMail()</a> again to delete the next mail. If the list is empty after it has removed the first item, it will call commitDelete(). If an error is occured, it will call <a class="el" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">slotFinalizeDeletion()</a>. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>job</em>&nbsp;</td><td>job which has emit the result signal </td></tr>
+ </table>
+</dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">deleteNextMail()</a> <p>
+<a class="el" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a> <p>
+<a class="el" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a> <p>
+<a class="el" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">slotFinalizeDeletion()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="1b5233c5dd75c286a369b69545f711d5"></a><!-- doxytag: member="ConfigElem::slotFinalizeDeletion" ref="1b5233c5dd75c286a369b69545f711d5" args="(KIO::Job *)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotFinalizeDeletion </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with the signal result of the job which commits the deletion. Finalizes the deletion of mails. Emits signal sigDeleteReady. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">deleteNextMail()</a> <p>
+<a class="el" href="classConfigElem.html#f2f44d27824ca6c4caf9c472f5c980b4">slotMailDeleted()</a> <p>
+<a class="el" href="classConfigElem.html#93838eda4c71ad66360ee5a27f630d8e">sigDeleteReady</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="a63d81fad1dc2f9f8f015effabb8b6d9"></a><!-- doxytag: member="ConfigElem::slotBodyDownloaded" ref="a63d81fad1dc2f9f8f015effabb8b6d9" args="(KIO::Job *job)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotBodyDownloaded </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname"> <em>job</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal result of the launched pop3 job to download a mail body. Opens a window (class <a class="el" href="classShowMailDialog.html">ShowMailDialog</a>) with the downloaded mail body. Removes the first mail from MailsToShow and invokes <a class="el" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">showNextMail()</a> again to show the next mail. If the list is empty after it has removed the first item, it will call <a class="el" href="classConfigElem.html#7a53693e1ca3b30406efb6c8a68ce851">commitDownloading()</a>. If an error is occured, it will call <a class="el" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail()</a>. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>job</em>&nbsp;</td><td>job which has emit the result signal </td></tr>
+ </table>
+</dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">showNextMail()</a> <p>
+<a class="el" href="classConfigElem.html#7a53693e1ca3b30406efb6c8a68ce851">commitDownloading()</a> <p>
+<a class="el" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a> <p>
+<a class="el" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a> <p>
+<a class="el" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail()</a> <p>
+<a class="el" href="classShowMailDialog.html">ShowMailDialog</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="53d209d56cb8ba5ce9f2f1d781d40e4f"></a><!-- doxytag: member="ConfigElem::slotMailDownloadedForAction" ref="53d209d56cb8ba5ce9f2f1d781d40e4f" args="(KIO::Job *job)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotMailDownloadedForAction </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname"> <em>job</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal result of the launched pop3 job to download a mail to write it into a mailbox or do a spam check. Maybe it puts the number of the downloaded mail into the list of mails to delete (MailsToDelete). Removes the first mail from MailsToMove and invokes getNextMailForMove() again to get and write the next mail. If the list is empty after it has removed the first item, it will call <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> to continue the filtering. If an error is occured the current mail will not put into MailsToDelete. And it returns to <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> immediately. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>job</em>&nbsp;</td><td>job which has emit the result signal </td></tr>
+ </table>
+</dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#dc3d4a8f849b476ff72d2c485a3ffa36">MailsToDownload</a> <p>
+<a class="el" href="classConfigElem.html#1fd7ddefdce76a3da2bf3eda7ff28942">getNextMailForDownloadActions()</a> <p>
+<a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="ab068855931a06371d27ec03695121a7"></a><!-- doxytag: member="ConfigElem::slotDataMailBody" ref="ab068855931a06371d27ec03695121a7" args="(KIO::Job *, const QByteArray &amp;datas)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotDataMailBody </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QByteArray &amp;&nbsp;</td>
+ <td class="paramname"> <em>datas</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal data of the launched pop3 job to download a mail body. Receives the downloaded data from the job. This lot will be called several times during the donwload. At the last one the array is empty. It extracts the body from the downloaded data and stores it in DownloadedMailBody. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>datas</em>&nbsp;</td><td>the downloaded mail </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="36b830294fa07e4a5a134f7975cfca27"></a><!-- doxytag: member="ConfigElem::slotFinalizeShowMail" ref="36b830294fa07e4a5a134f7975cfca27" args="(KIO::Job *)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotFinalizeShowMail </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with the signal result of the job which commits the download of the mail bodies. Finalizes the downloading and showing of the selected mails. Emits signal sigShowBodiesReady and sets account state to idle. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">showNextMail()</a> <p>
+<a class="el" href="classConfigElem.html#a63d81fad1dc2f9f8f015effabb8b6d9">slotBodyDownloaded()</a> <p>
+<a class="el" href="classConfigElem.html#bd3b61aa04ce3bd6ce507cb555c360d4">sigShowBodiesReady</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="9771cc6111fae208e8ca92d9c162096d"></a><!-- doxytag: member="ConfigElem::slotTimeout" ref="9771cc6111fae208e8ca92d9c162096d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotTimeout </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal timeout() of the timeout timer pop3Timer. Will be called when the timer is run down, if the pop3 job has not ended on time. It kills a running pop3 job and invokes the appropriate finalize slot of the running operation.
+</div>
+</div><p>
+<a class="anchor" name="11db8a853a253b81a16ecd199c441911"></a><!-- doxytag: member="ConfigElem::slotReceiveUID" ref="11db8a853a253b81a16ecd199c441911" args="(KIO::Job *, const QByteArray &amp;data)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotReceiveUID </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QByteArray &amp;&nbsp;</td>
+ <td class="paramname"> <em>data</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with the signal "data" of the pop3 transfer job which gets mail UIDs (Unique ID). Therefore it will be called when the job has received an UIDL from the server. Every received UID causes a call of this slot. When the job ends, it causes a last call but with an empty data array. The UIDs will be stored in receivedUIDs. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>received data, which contain an uid </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="5ba4833fd4b897bb21fa31dff2cf5750"></a><!-- doxytag: member="ConfigElem::slotUIDsReceived" ref="5ba4833fd4b897bb21fa31dff2cf5750" args="(KIO::Job *job)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotUIDsReceived </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname"> <em>job</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal result of the launched pop3 job to get the UIDs. Will be invoked, when all UIDs are received and stored in receivedUIDs. Analyzes the received UID datas and creates new <a class="el" href="classShowRecordElem.html">ShowRecordElem</a> instances in the new mail list accordingly. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>job</em>&nbsp;</td><td>job which has emitted the result signal </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="b3e0a075b84fed2a1e156de17cdefbad"></a><!-- doxytag: member="ConfigElem::slotReceiveSize" ref="b3e0a075b84fed2a1e156de17cdefbad" args="(KIO::Job *, const QByteArray &amp;data)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotReceiveSize </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QByteArray &amp;&nbsp;</td>
+ <td class="paramname"> <em>data</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with the signal "data" of the pop3 transfer job which gets mail Sizes. Therefore it will be called when the job has received a size from the server. Every received size causes a call of this slot. When the job ends, it causes a last call but with an empty data array. The UIDs will be stored in receivedSizes. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>received data, which contain a size </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="685be03ba48ad2e1cfb9a0cc04a81559"></a><!-- doxytag: member="ConfigElem::slotSizesReceived" ref="685be03ba48ad2e1cfb9a0cc04a81559" args="(KIO::Job *job)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotSizesReceived </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname"> <em>job</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal result of the launched pop3 job to get the Sizes. Will be invoked, when all Sizes are received and stored in receivedSizes. Analyzes the received datas and writes these in the appropriate mail instances. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>job</em>&nbsp;</td><td>job which has emitted the result signal </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="6470facb8041787fc48707ece1dfc364"></a><!-- doxytag: member="ConfigElem::slotFinalizeRefresh" ref="6470facb8041787fc48707ece1dfc364" args="(KIO::Job *)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotFinalizeRefresh </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal result of the job which commits the refresh. Finalizes a succesful refresh. Emits sigRefreshReady and sets account state to idle
+</div>
+</div><p>
+<a class="anchor" name="2220bd2656a5e87cfb2582ae8854f71c"></a><!-- doxytag: member="ConfigElem::slotHeaderDownloaded" ref="2220bd2656a5e87cfb2582ae8854f71c" args="(KIO::Job *job)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotHeaderDownloaded </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname"> <em>job</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal result of the launched pop3 job. Stores the received headers into the appropriate instance of the mail list. Removes the first mail from newMails and invokes <a class="el" href="classConfigElem.html#599f2dc026bd3d759d9e2ada3d4ff3ea">getNextHeader()</a> again to get the next header. If the list is empty after it has removed the first item, it will call <a class="el" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders()</a>. If an error has occured, it will call <a class="el" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh()</a>. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>job</em>&nbsp;</td><td>job which has emit the result signal </td></tr>
+ </table>
+</dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#599f2dc026bd3d759d9e2ada3d4ff3ea">getNextHeader()</a> <p>
+<a class="el" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">newMails</a> <p>
+<a class="el" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a> <p>
+<a class="el" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh()</a> <p>
+<a class="el" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="52b690b870d814bf6017500edc731aae"></a><!-- doxytag: member="ConfigElem::slotReceiveHeader" ref="52b690b870d814bf6017500edc731aae" args="(KIO::Job *, const QByteArray &amp;data)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::slotReceiveHeader </td>
+ <td>(</td>
+ <td class="paramtype">KIO::Job *&nbsp;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QByteArray &amp;&nbsp;</td>
+ <td class="paramname"> <em>data</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with the signal "data" of the pop3 transfer job which gets a mail header. Therefore it will be called when the job has received a part of the header from the server. When the job ends, it causes a last call but with an empty data array. The complete header will be stored in receivedHeader. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>received data, which contains a header part </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="93838eda4c71ad66360ee5a27f630d8e"></a><!-- doxytag: member="ConfigElem::sigDeleteReady" ref="93838eda4c71ad66360ee5a27f630d8e" args="(QString account)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::sigDeleteReady </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>account</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Will be emitted when all selected mails are deleted. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of the account, which has emitted this signal </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="bd3b61aa04ce3bd6ce507cb555c360d4"></a><!-- doxytag: member="ConfigElem::sigShowBodiesReady" ref="bd3b61aa04ce3bd6ce507cb555c360d4" args="(QString account)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::sigShowBodiesReady </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>account</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Will be emitted when the bodies of all selected mails are downloaded and shown. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of the account, which has emitted this signal </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="c04e111468d52ed1ca964569188c96e5"></a><!-- doxytag: member="ConfigElem::sigConfigChanged" ref="c04e111468d52ed1ca964569188c96e5" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::sigConfigChanged </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Will be emitted when the settings have been changed.
+</div>
+</div><p>
+<a class="anchor" name="14267b997f50ad3069115e8b976d89bb"></a><!-- doxytag: member="ConfigElem::sigMessageWindowOpened" ref="14267b997f50ad3069115e8b976d89bb" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::sigMessageWindowOpened </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Will be emitted, when a window to show a message was opened.
+</div>
+</div><p>
+<a class="anchor" name="e328a1ef29ab8784bf9fd36de34d8bc0"></a><!-- doxytag: member="ConfigElem::sigMessageWindowClosed" ref="e328a1ef29ab8784bf9fd36de34d8bc0" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::sigMessageWindowClosed </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Will be emitted, when a window to show a message was closed.
+</div>
+</div><p>
+<a class="anchor" name="d57456d967920820080dc13d6fb5a8ff"></a><!-- doxytag: member="ConfigElem::sigRefreshReady" ref="d57456d967920820080dc13d6fb5a8ff" args="(QString account)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigElem::sigRefreshReady </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>account</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Will be emitted, when the mail list was refreshed. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of the account, which has emitted this signal </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="261c27647b7d842799e94ae149212ad5"></a><!-- doxytag: member="ConfigElem::isSpam" ref="261c27647b7d842799e94ae149212ad5" args="(QByteArray mail) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigElem::isSpam </td>
+ <td>(</td>
+ <td class="paramtype">QByteArray&nbsp;</td>
+ <td class="paramname"> <em>mail</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Forwards the given mail to SpamAssassin and returns the test result <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>mail</em>&nbsp;</td><td>the mail to test </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - mail is spam </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="ef9bf08b5313d9b0d5983f5a9459cf3a"></a><!-- doxytag: member="ConfigElem::isSpamAssassinRunning" ref="ef9bf08b5313d9b0d5983f5a9459cf3a" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigElem::isSpamAssassinRunning </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Looks for a running spamd daemon of SpamAssassin. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - SpamAssassin is running </dd></dl>
+
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="8dc234323fe966a322ae8649bc2cd76e"></a><!-- doxytag: member="ConfigElem::continueShowHeaders" ref="8dc234323fe966a322ae8649bc2cd76e" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int const <a class="el" href="classConfigElem.html#8dc234323fe966a322ae8649bc2cd76e">ConfigElem::continueShowHeaders</a><code> [static]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returned by <a class="el" href="classConfigElem.html#0725bb36943ca6fd1ca82af5ef6913a3">showSelectedHeaders()</a>, if the user has clicked OK.
+</div>
+</div><p>
+<a class="anchor" name="85fb09c9cdc92ae5e8663bf8c6c4a615"></a><!-- doxytag: member="ConfigElem::cancelShowHeaders" ref="85fb09c9cdc92ae5e8663bf8c6c4a615" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int const <a class="el" href="classConfigElem.html#85fb09c9cdc92ae5e8663bf8c6c4a615">ConfigElem::cancelShowHeaders</a><code> [static]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returned by <a class="el" href="classConfigElem.html#0725bb36943ca6fd1ca82af5ef6913a3">showSelectedHeaders()</a>, if the user has clicked Cancel.
+</div>
+</div><p>
+<a class="anchor" name="cdde481b0e7623717f25721a23b95352"></a><!-- doxytag: member="ConfigElem::appConfig" ref="cdde481b0e7623717f25721a23b95352" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classConfigList.html">ConfigList</a>* <a class="el" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">ConfigElem::appConfig</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Pointer to the configuration of the application. Set by the constructors.
+</div>
+</div><p>
+<a class="anchor" name="e3f2a5c6b03dd756f474255247461b02"></a><!-- doxytag: member="ConfigElem::FLog" ref="e3f2a5c6b03dd756f474255247461b02" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classFilterLog.html">FilterLog</a>* <a class="el" href="classConfigElem.html#e3f2a5c6b03dd756f474255247461b02">ConfigElem::FLog</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Pointer to the filter log. Will be set by <a class="el" href="classConfigElem.html#83af8872b7e83279750434e7ef376e5b">refreshMailList()</a> at every refresh.
+</div>
+</div><p>
+<a class="anchor" name="47a700c6d8d856f35bdcd4e01910a4ca"></a><!-- doxytag: member="ConfigElem::state" ref="47a700c6d8d856f35bdcd4e01910a4ca" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">Types::AccountState_Type</a> <a class="el" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">ConfigElem::state</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+State of the account.
+</div>
+</div><p>
+<a class="anchor" name="1ad409223125a43d257cd7666c8c7284"></a><!-- doxytag: member="ConfigElem::PasswordStorage" ref="1ad409223125a43d257cd7666c8c7284" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int <a class="el" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">ConfigElem::PasswordStorage</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Type of password storage. valid values are: CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET The <a class="el" href="namespaceConstants.html">Constants</a> are defined in <a class="el" href="constants_8h.html">constants.h</a> <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#bda433f60b1eed0d4b8d207707d5005c">saveOptions()</a> <p>
+<a class="el" href="classConfigElem.html#58f9d269bd389c52718d78d7615c4431">setPasswordStorage()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="e8b4f30a42bc989ce81f71bc032f19f1"></a><!-- doxytag: member="ConfigElem::m_bActive" ref="e8b4f30a42bc989ce81f71bc032f19f1" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">ConfigElem::m_bActive</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - account is active; FALSE - account is not active
+</div>
+</div><p>
+<a class="anchor" name="52f6b77b64915aeadf30cf2e550da876"></a><!-- doxytag: member="ConfigElem::m_strAccount" ref="52f6b77b64915aeadf30cf2e550da876" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString <a class="el" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">ConfigElem::m_strAccount</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Account Name
+</div>
+</div><p>
+<a class="anchor" name="bae0388a8b60c42be7977eec129f1a11"></a><!-- doxytag: member="ConfigElem::m_pViewItem" ref="bae0388a8b60c42be7977eec129f1a11" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QListViewItem* <a class="el" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">ConfigElem::m_pViewItem</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Pointer to the appropriate item in the account list view.
+</div>
+</div><p>
+<a class="anchor" name="9724726ea014cf6d22a413d266ca69d2"></a><!-- doxytag: member="ConfigElem::m_pshowrecord" ref="9724726ea014cf6d22a413d266ca69d2" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classShowRecord.html">ShowRecord</a>* <a class="el" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">ConfigElem::m_pshowrecord</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+List which contains all read mails from the server.
+</div>
+</div><p>
+<a class="anchor" name="c9d1c50d2a2ac6c4fa9261f0d77729a9"></a><!-- doxytag: member="ConfigElem::m_url" ref="c9d1c50d2a2ac6c4fa9261f0d77729a9" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KURL <a class="el" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">ConfigElem::m_url</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Uniform Resource Locator of the account on the pop3 server.
+</div>
+</div><p>
+<a class="anchor" name="b8a7341e3db3e69b8e661c89ff08b7f4"></a><!-- doxytag: member="ConfigElem::secureLoginType" ref="b8a7341e3db3e69b8e661c89ff08b7f4" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int <a class="el" href="classConfigElem.html#b8a7341e3db3e69b8e661c89ff08b7f4">ConfigElem::secureLoginType</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Type of secure login. See <a class="el" href="constants_8h.html">constants.h</a> for valid values (CONFIG_VALUE_ACCOUNT_SECLOGIN_...)
+</div>
+</div><p>
+<a class="anchor" name="b13600ffaaae88a8e0baf030ffd926a1"></a><!-- doxytag: member="ConfigElem::useTLS" ref="b13600ffaaae88a8e0baf030ffd926a1" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigElem.html#b13600ffaaae88a8e0baf030ffd926a1">ConfigElem::useTLS</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+False: TLS is enabled
+</div>
+</div><p>
+<a class="anchor" name="ac5a5ecf9c70a0c94c2cf7181a1989dd"></a><!-- doxytag: member="ConfigElem::mailbody" ref="ac5a5ecf9c70a0c94c2cf7181a1989dd" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QByteArray <a class="el" href="classConfigElem.html#ac5a5ecf9c70a0c94c2cf7181a1989dd">ConfigElem::mailbody</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Contains a downloaded mail body. Will be set by <a class="el" href="classConfigElem.html#ab068855931a06371d27ec03695121a7">slotDataMailBody()</a> and read by <a class="el" href="classConfigElem.html#a63d81fad1dc2f9f8f015effabb8b6d9">slotBodyDownloaded()</a>.
+</div>
+</div><p>
+<a class="anchor" name="08ca23bb32c12dff0909a8d29d5d5028"></a><!-- doxytag: member="ConfigElem::MailsToDelete" ref="08ca23bb32c12dff0909a8d29d5d5028" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">MailNumberList_Type <a class="el" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">ConfigElem::MailsToDelete</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Contains the numbers of mails which will be deleted. Set by <a class="el" href="classConfigElem.html#750ccb3fb3f7d1857b79f7218f5a0767">deleteSelectedMails()</a> and <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> and used by <a class="el" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">deleteNextMail()</a> to get the number of the next mail to delete. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#750ccb3fb3f7d1857b79f7218f5a0767">deleteSelectedMails()</a> <p>
+<a class="el" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">deleteNextMail()</a> <p>
+<a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="dc3d4a8f849b476ff72d2c485a3ffa36"></a><!-- doxytag: member="ConfigElem::MailsToDownload" ref="dc3d4a8f849b476ff72d2c485a3ffa36" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">MailToDownloadMap_Type <a class="el" href="classConfigElem.html#dc3d4a8f849b476ff72d2c485a3ffa36">ConfigElem::MailsToDownload</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Contains the numbers of the mails shall be moved for actions like moving to mailbox or spam check. Contains also some parameters (like mailbox) about the action which have to be performed. Set and used by <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a>. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="c2e27da3fda21662ca8706043e257151"></a><!-- doxytag: member="ConfigElem::MailsToShow" ref="c2e27da3fda21662ca8706043e257151" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">MailNumberList_Type <a class="el" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">ConfigElem::MailsToShow</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Contains the numbers of mails for which the bodies will be shown. Set by <a class="el" href="classConfigElem.html#01e5735260c23f43480d807e7e9070c9">showSelectedMails()</a> and used by <a class="el" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">showNextMail()</a> to get the number of the next mail to show. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#01e5735260c23f43480d807e7e9070c9">showSelectedMails()</a> <p>
+<a class="el" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">showNextMail()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="f13c7462315db5c44ecaeff609d95306"></a><!-- doxytag: member="ConfigElem::newMails" ref="f13c7462315db5c44ecaeff609d95306" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">MailNumberList_Type <a class="el" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">ConfigElem::newMails</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Contains the numbers of new mails. Set by <a class="el" href="classConfigElem.html#f7202b10df7e27303315d754b25b6d6c">getHeaders()</a> and used by <a class="el" href="classConfigElem.html#599f2dc026bd3d759d9e2ada3d4ff3ea">getNextHeader()</a> to download the headers of the new mails. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigElem.html#f7202b10df7e27303315d754b25b6d6c">getHeaders()</a> <p>
+<a class="el" href="classConfigElem.html#599f2dc026bd3d759d9e2ada3d4ff3ea">getNextHeader()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="abccdbb4bf0f8c3ba6ac726c27f454fc"></a><!-- doxytag: member="ConfigElem::pop3Job" ref="abccdbb4bf0f8c3ba6ac726c27f454fc" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KIO::TransferJob* <a class="el" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">ConfigElem::pop3Job</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Pointer to a launched pop3 job.
+</div>
+</div><p>
+<a class="anchor" name="141eb0510e9f4031634ef566cba27329"></a><!-- doxytag: member="ConfigElem::pop3Timer" ref="141eb0510e9f4031634ef566cba27329" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QTimer* <a class="el" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">ConfigElem::pop3Timer</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+timeout timer. Will be started together with every pop3 job. If it runs down, <a class="el" href="classConfigElem.html#9771cc6111fae208e8ca92d9c162096d">slotTimeout()</a> will be invoked.
+</div>
+</div><p>
+<a class="anchor" name="a586a6941a1c9c21019ca42cebb4e6d3"></a><!-- doxytag: member="ConfigElem::tempMailList" ref="a586a6941a1c9c21019ca42cebb4e6d3" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classShowRecord.html">ShowRecord</a>* <a class="el" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">ConfigElem::tempMailList</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+While refreshing, this <a class="el" href="classShowRecord.html">ShowRecord</a> instance will be used to build a new mail list. After that this pointer will be assigned to m_pshowrecord.
+</div>
+</div><p>
+<a class="anchor" name="80f016779bdc8774cc7822a839b2c796"></a><!-- doxytag: member="ConfigElem::receivedUIDs" ref="80f016779bdc8774cc7822a839b2c796" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QStringList <a class="el" href="classConfigElem.html#80f016779bdc8774cc7822a839b2c796">ConfigElem::receivedUIDs</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+List of received mail UIDs (unique ID). Used by <a class="el" href="classConfigElem.html#11db8a853a253b81a16ecd199c441911">slotReceiveUID()</a> and <a class="el" href="classConfigElem.html#5ba4833fd4b897bb21fa31dff2cf5750">slotUIDsReceived()</a>.
+</div>
+</div><p>
+<a class="anchor" name="fc6f21ff722d537d2e59ee42e57cd337"></a><!-- doxytag: member="ConfigElem::receivedSizes" ref="fc6f21ff722d537d2e59ee42e57cd337" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QStringList <a class="el" href="classConfigElem.html#fc6f21ff722d537d2e59ee42e57cd337">ConfigElem::receivedSizes</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+List of received mail sizes. Used by <a class="el" href="classConfigElem.html#b3e0a075b84fed2a1e156de17cdefbad">slotReceiveSize()</a> and <a class="el" href="classConfigElem.html#685be03ba48ad2e1cfb9a0cc04a81559">slotSizesReceived()</a>.
+</div>
+</div><p>
+<a class="anchor" name="23ed166f77355117fa99dcbc3d5b7d12"></a><!-- doxytag: member="ConfigElem::receivedHeader" ref="23ed166f77355117fa99dcbc3d5b7d12" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QByteArray <a class="el" href="classConfigElem.html#23ed166f77355117fa99dcbc3d5b7d12">ConfigElem::receivedHeader</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+A received mail header. Set by <a class="el" href="classConfigElem.html#52b690b870d814bf6017500edc731aae">slotReceiveHeader()</a> and used by <a class="el" href="classConfigElem.html#2220bd2656a5e87cfb2582ae8854f71c">slotHeaderDownloaded()</a>.
+</div>
+</div><p>
+<a class="anchor" name="85b505610abbe0c01921a6e385a7548e"></a><!-- doxytag: member="ConfigElem::headerFilter" ref="85b505610abbe0c01921a6e385a7548e" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classHeaderFilter.html">HeaderFilter</a> <a class="el" href="classConfigElem.html#85b505610abbe0c01921a6e385a7548e">ConfigElem::headerFilter</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Every account has is own header filter instance.
+</div>
+</div><p>
+<a class="anchor" name="1c5b6fd53a5dfbe13c8d9ef2f3b97608"></a><!-- doxytag: member="ConfigElem::filterApplied" ref="1c5b6fd53a5dfbe13c8d9ef2f3b97608" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigElem.html#1c5b6fd53a5dfbe13c8d9ef2f3b97608">ConfigElem::filterApplied</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+This is a flag whether the filters was applied during a refresh cycle. If the some mails was deleted (recommend by the filter), we need a actual list of mails from the server. Therefore a second refresh cycle will be started. To avoid a never-ending loop this flag will be set to TRUE by <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a>. If the second refresh is running this one will not invoke the filters.
+</div>
+</div><p>
+<a class="anchor" name="c3a6aea2718324eba83d02f6e5828fa5"></a><!-- doxytag: member="ConfigElem::deletionPerformedByFilters" ref="c3a6aea2718324eba83d02f6e5828fa5" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigElem.html#c3a6aea2718324eba83d02f6e5828fa5">ConfigElem::deletionPerformedByFilters</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+This flag is set by <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> to indicate the deletion cycle is performed by filters and not by user. The deletion methodes need it to decide on branch targets
+</div>
+</div><p>
+<a class="anchor" name="b842ac987bd40656b334c4e8c3a75103"></a><!-- doxytag: member="ConfigElem::refreshPerformedByFilters" ref="b842ac987bd40656b334c4e8c3a75103" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigElem.html#b842ac987bd40656b334c4e8c3a75103">ConfigElem::refreshPerformedByFilters</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+This flag is set by <a class="el" href="classConfigElem.html#6a1f1cb81c4bcca055e0b98bd9fb0cf7">applyFiltersDeleted()</a> to indicate the refresh cycle is the second one after a deletion which was performed by filters. The refresh cycle need it to hold the remaining mails as new.
+</div>
+</div><p>
+<a class="anchor" name="f96a3bda830dcfbe7aa579c3e64cfed4"></a><!-- doxytag: member="ConfigElem::downloadActionsInvoked" ref="f96a3bda830dcfbe7aa579c3e64cfed4" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigElem.html#f96a3bda830dcfbe7aa579c3e64cfed4">ConfigElem::downloadActionsInvoked</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+This flag is set to TRUE by <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> to indicate the mailbodies are downloading and writing to the mailboxes or spam checking. When this is ended, <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters()</a> will be called again and it reset this flag
+</div>
+</div><p>
+<a class="anchor" name="30203c10e9c6b563ee9c454269cad8d1"></a><!-- doxytag: member="ConfigElem::moveCounter" ref="30203c10e9c6b563ee9c454269cad8d1" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int <a class="el" href="classConfigElem.html#30203c10e9c6b563ee9c454269cad8d1">ConfigElem::moveCounter</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Counter for moving to create an unique file name
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="configelem_8h-source.html">configelem.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="configelem_8cpp.html">configelem.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classConfigList-members.html b/doc/html/classConfigList-members.html
new file mode 100644
index 0000000..3882094
--- /dev/null
+++ b/doc/html/classConfigList-members.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ConfigList Member List</h1>This is the complete list of members for <a class="el" href="classConfigList.html">ConfigList</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">AccountDeletionMap</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">AccountRefreshMap</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">AccountShowBodiesMap</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#4cd09107151c848fafe17db0c8e9a4a6">allowHTML</a>() const</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#cae6685097cd8e5e63cee28e17d92d41">AutoRefreshOn</a>() const</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#28739bc3cd7ce87dbd7f994081375a41">beep</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#fa610dea65deb4e7e26c01926e740e84">closeToTray</a>() const</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#8bf1aaa71ff8971369466e5c2a36d27f">compareItems</a>(QCollection::Item item1, QCollection::Item item2)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [protected, virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#457897bbe5bd27799e6f920d4cea2173">ConfigList</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#4886c3988fef0e227cd03af094b21415">confirmClose</a>() const</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#a466577c54fec821ff484a378ce32e98">confirmDeletion</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">connectAccounts</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#ac13c19975a07aa87da0047cc66b4ce1">deleteSelectedMails</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#01cf49eac83ba56d1f9b3fbaa6bf4648">executeNewMailCommand</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#1db2530c553952aef3c23483dd6b6567">fillMailListView</a>(KshowmailView *view)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#f5155dad83daf4956ebfb09f6ebd50c6">getAccount</a>(const QString &amp;name) const</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#3b74518a8dc0aff55be667276bc4597b">getInitTime</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#493eec8637f0f34fb25e13d07b6d838a">getNumberMails</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#c68944845fe63749fc073947fbdd44d6">getNumberNewMails</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#3e41f463a87fbc8523bbd731cf36b473">getRefreshTimeInterval</a>() const</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#83776f91a264d92cea2b6f7ef0c02765">getSelectedAccount</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#d489b548662d865fe34686507dc801ef">getSelectedSubjects</a>() const</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#2a997667f702e9416a9006a481c7d848">getSpamAction</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#18994e01d2362c49cd428e3b77c0a32a">getSpamMailbox</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#80a368db22ca3a29c668a544611d16f4">getTimeoutTime</a>() const</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#2e6d8a00456ca4b61ddba18ab419dd38">getTotalSize</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#47d7852e47d047dc7c00ad76715aa4df">hasAccount</a>(const QString &amp;name) const</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#14b38a4e600859c0b6f3ef38afffc037">hasActiveAccounts</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#ed405d97a4a1d20cac93bf2a23cf40bf">hasInitTime</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#d80765bfadbd675b9b89ebdec0cf3566">hasSelectedMails</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#49a20af219bc1a4f20e50b59b6f2310c">keepNew</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#3c7523934753f98f3087ed4083df3ab2">killPOP3Jobs</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#017597159dc4b62d147aade09140e942">m_bAllowHTML</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#a866f2fd4fb32d49ab99306150d79c50">m_bBeep</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#da6c14776958a3b28f68797c7feb6c5b">m_bCloseMinimizes</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#ae8d4084a4b83a09722015793afb974c">m_bCommand</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#80b1f5a036cdaf9054ba57831a0c013e">m_bConfirmClose</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#8b8d0d0a2d78c9f3ede1db0a9e77f8be">m_bConfirmDelete</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#54c7671d25847b7b16cf71ec61c640d0">m_bKeepNew</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#f22fd0f8854795662a444bc2b4f8a9b9">m_bMinimize</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#af4cc3801f229ae974131ef1e000a8cf">m_bMinimizeToTray</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#1bd48d8596694d5b39e0ead274689010">m_bShowConnectionErrors</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#b9613ab5f07edb0ef04383867674a5ce">m_bShowMainWindow</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#35d80df8b80f34868140a2163d207490">m_bShowMessage</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">m_bSound</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#fb4f1f200303a7e94114a8c4c85eb47e">m_bStartMinimized</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#cdf78356d632253ac463907e526eb26a">m_bTerminate</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">m_nInitTimer</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#b15e5bd9334e36428c5d44b9ee2a97d5">m_nIntervalTimer</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#f4a428e650cf89e8ae0df0a2983f96f4">m_nPop3Timer</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#ea53a55a83d06cb76e3e686dd29ca034">m_strCommandPath</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#be34e6084394fa6fa99422a7cc50d8f0">m_strSoundFile</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#94f99e48dfcc902ef18ea7310f395beb">minimizeMainWindowNoNewMails</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#c64e08e3c1469622763dd462612a83ca">minimizesToTray</a>() const</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#24464fe479402405ee9b849ddcc9c567">newItem</a>(QCollection::Item item)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [protected, virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#5e7a5e2323ebbbad7d960bae9814ce5d">playSound</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#77c53c4e4120961c2647d4081486aeda">playSound</a>(const char *file)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#ac706ab3763709422de0ccfa91db7776">printSetup</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#e24d2fa3175996ba24faa1ed1efcf35a">quitNoNewMails</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#18b093749b6a474b68a4c2bfe952d65c">readStoredMails</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#b3d5530c7419f6aa4b43e4247f3036a5">refreshAccountList</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#8cec55c3631317208f4800408a6e98c8">refreshMailLists</a>(FilterLog *log=NULL)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#8ab66c254c66635f97df7e17882b4ab2">refreshSetup</a>(KListView *view)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#f4faa44af3bbe318a2623b3146dc2c2d">saveOptions</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#9f3341f60b7f800b58f50e67c1f872b4">setAllowHTML</a>(bool allowHTML)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#5f798d2e62d3d8d013e3b2f54d51e94e">setConfirmDeletion</a>(bool confirm)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#c40250ce119d3e6f75b32b296ffaa36c">setInitTime</a>(int time)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#633c6c07518ecf2405ad472ab843790f">setItem</a>(const char *item)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#e595f764ea9b38f0634137438bdd4d70">setList</a>(QListView *list)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#1676756c27b3578802dba1ce47b39dcd">setRefreshTimeInterval</a>(unsigned int interval)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#2470bfe4948ada050b08b93cef51b969">setTimeoutTime</a>(uint time)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#2270af8a5ce1740958f0f0b39359051f">showAlertMessageForNewMails</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#04033fd5903daf6b1286891a2c7a228c">showConnectionErrors</a>() const</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#b4021a1f9087d447649a362d8779ec34">showMainWindowForNewMails</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#9578f65f771482e727dfb3e1da861aa3">showSelectedHeaders</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#69be8d63f8363fe9c727ebdaeb9eb7fa">showSelectedMails</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#6cc47a8e403bad408356604c0888c292">sigAllMessageWindowsClosed</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#9b5c13b885ba99acefb6bcb81f54b563">sigConfigChanged</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#6d5f55c7447fc52efd5800daeb8302dc">sigDeleteReady</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#4e33dcc16368960e9a41dca3bb878360">sigMessageWindowOpened</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#cd0d056e66a4c054306dca9936b9d5da">sigRefreshReady</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#4df89bc3cd1da72c4404cbe6fe1f10d1">sigShowBodiesReady</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#f8495aff41becdac4998b0c2881cccde">slotAccountConfigChanged</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#640d6202cfb38c449e95906e7581693b">slotCheckDeletionState</a>(QString account)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#beaa15863a4aae563a8539d176067f79">slotCheckRefreshState</a>(QString account)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#bdbf21b25f8e963e5c32d167aff1fe16">slotCheckShowBodiesState</a>(QString account)</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#6a9cc47ba150c0923b558752f118ec6c">slotMessageWindowClosed</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#1ffbc4bf4ef66872162065b80a248b7a">slotMessageWindowOpened</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#9b32c6d646ae58275351208894d7f545">spamAction</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#44cf59851c3af0b6f0a1cbdb15688491">spamMailbox</a></td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#6b5567437e81508f071d31acb4509994">startMinimized</a>() const</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigList.html#1b6a054d7671b4f57d7fe77f123179ea">~ConfigList</a>()</td><td><a class="el" href="classConfigList.html">ConfigList</a></td><td><code> [inline, virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classConfigList.html b/doc/html/classConfigList.html
new file mode 100644
index 0000000..948573b
--- /dev/null
+++ b/doc/html/classConfigList.html
@@ -0,0 +1,2087 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: ConfigList Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ConfigList Class Reference</h1><!-- doxytag: class="ConfigList" --><code>#include &lt;<a class="el" href="configlist_8h-source.html">configlist.h</a>&gt;</code>
+<p>
+<a href="classConfigList-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Signals</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#9b5c13b885ba99acefb6bcb81f54b563">sigConfigChanged</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#6d5f55c7447fc52efd5800daeb8302dc">sigDeleteReady</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#4df89bc3cd1da72c4404cbe6fe1f10d1">sigShowBodiesReady</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#4e33dcc16368960e9a41dca3bb878360">sigMessageWindowOpened</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#6cc47a8e403bad408356604c0888c292">sigAllMessageWindowsClosed</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#cd0d056e66a4c054306dca9936b9d5da">sigRefreshReady</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#457897bbe5bd27799e6f920d4cea2173">ConfigList</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#1b6a054d7671b4f57d7fe77f123179ea">~ConfigList</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#8ab66c254c66635f97df7e17882b4ab2">refreshSetup</a> (KListView *view)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#3e41f463a87fbc8523bbd731cf36b473">getRefreshTimeInterval</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#1676756c27b3578802dba1ce47b39dcd">setRefreshTimeInterval</a> (unsigned int interval)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#cae6685097cd8e5e63cee28e17d92d41">AutoRefreshOn</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#5f798d2e62d3d8d013e3b2f54d51e94e">setConfirmDeletion</a> (bool confirm)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#a466577c54fec821ff484a378ce32e98">confirmDeletion</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#4886c3988fef0e227cd03af094b21415">confirmClose</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#6b5567437e81508f071d31acb4509994">startMinimized</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#fa610dea65deb4e7e26c01926e740e84">closeToTray</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#c64e08e3c1469622763dd462612a83ca">minimizesToTray</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#04033fd5903daf6b1286891a2c7a228c">showConnectionErrors</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#9f3341f60b7f800b58f50e67c1f872b4">setAllowHTML</a> (bool allowHTML)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#4cd09107151c848fafe17db0c8e9a4a6">allowHTML</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#14b38a4e600859c0b6f3ef38afffc037">hasActiveAccounts</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">uint&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#80a368db22ca3a29c668a544611d16f4">getTimeoutTime</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#2470bfe4948ada050b08b93cef51b969">setTimeoutTime</a> (uint time)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classConfigElem.html">ConfigElem</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#83776f91a264d92cea2b6f7ef0c02765">getSelectedAccount</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#ac13c19975a07aa87da0047cc66b4ce1">deleteSelectedMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">connectAccounts</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QStringList&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#d489b548662d865fe34686507dc801ef">getSelectedSubjects</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#d80765bfadbd675b9b89ebdec0cf3566">hasSelectedMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#69be8d63f8363fe9c727ebdaeb9eb7fa">showSelectedMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#8cec55c3631317208f4800408a6e98c8">refreshMailLists</a> (<a class="el" href="classFilterLog.html">FilterLog</a> *log=NULL)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#c68944845fe63749fc073947fbdd44d6">getNumberNewMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#493eec8637f0f34fb25e13d07b6d838a">getNumberMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#2e6d8a00456ca4b61ddba18ab419dd38">getTotalSize</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#1db2530c553952aef3c23483dd6b6567">fillMailListView</a> (<a class="el" href="classKshowmailView.html">KshowmailView</a> *view)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#b4021a1f9087d447649a362d8779ec34">showMainWindowForNewMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#2270af8a5ce1740958f0f0b39359051f">showAlertMessageForNewMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#e24d2fa3175996ba24faa1ed1efcf35a">quitNoNewMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#94f99e48dfcc902ef18ea7310f395beb">minimizeMainWindowNoNewMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#3b74518a8dc0aff55be667276bc4597b">getInitTime</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#c40250ce119d3e6f75b32b296ffaa36c">setInitTime</a> (int time)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#ed405d97a4a1d20cac93bf2a23cf40bf">hasInitTime</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#b3d5530c7419f6aa4b43e4247f3036a5">refreshAccountList</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#3c7523934753f98f3087ed4083df3ab2">killPOP3Jobs</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#9578f65f771482e727dfb3e1da861aa3">showSelectedHeaders</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#01cf49eac83ba56d1f9b3fbaa6bf4648">executeNewMailCommand</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#49a20af219bc1a4f20e50b59b6f2310c">keepNew</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#ac706ab3763709422de0ccfa91db7776">printSetup</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#f4faa44af3bbe318a2623b3146dc2c2d">saveOptions</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#18b093749b6a474b68a4c2bfe952d65c">readStoredMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">FilterAction_Type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#2a997667f702e9416a9006a481c7d848">getSpamAction</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#18994e01d2362c49cd428e3b77c0a32a">getSpamMailbox</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#633c6c07518ecf2405ad472ab843790f">setItem</a> (const char *item)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#e595f764ea9b38f0634137438bdd4d70">setList</a> (QListView *list)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#28739bc3cd7ce87dbd7f994081375a41">beep</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#5e7a5e2323ebbbad7d960bae9814ce5d">playSound</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#77c53c4e4120961c2647d4081486aeda">playSound</a> (const char *file)</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#f8495aff41becdac4998b0c2881cccde">slotAccountConfigChanged</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#640d6202cfb38c449e95906e7581693b">slotCheckDeletionState</a> (QString account)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#bdbf21b25f8e963e5c32d167aff1fe16">slotCheckShowBodiesState</a> (QString account)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#1ffbc4bf4ef66872162065b80a248b7a">slotMessageWindowOpened</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#6a9cc47ba150c0923b558752f118ec6c">slotMessageWindowClosed</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#beaa15863a4aae563a8539d176067f79">slotCheckRefreshState</a> (QString account)</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual QCollection::Item&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#24464fe479402405ee9b849ddcc9c567">newItem</a> (QCollection::Item item)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#8bf1aaa71ff8971369466e5c2a36d27f">compareItems</a> (QCollection::Item item1, QCollection::Item item2)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#47d7852e47d047dc7c00ad76715aa4df">hasAccount</a> (const QString &amp;name) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classConfigElem.html">ConfigElem</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#f5155dad83daf4956ebfb09f6ebd50c6">getAccount</a> (const QString &amp;name) const</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KConfig *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#b15e5bd9334e36428c5d44b9ee2a97d5">m_nIntervalTimer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">uint&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#f4a428e650cf89e8ae0df0a2983f96f4">m_nPop3Timer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">AccountTaskMap_Type&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">AccountDeletionMap</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">AccountTaskMap_Type&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">AccountShowBodiesMap</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">AccountTaskMap_Type&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">AccountRefreshMap</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#8b8d0d0a2d78c9f3ede1db0a9e77f8be">m_bConfirmDelete</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#017597159dc4b62d147aade09140e942">m_bAllowHTML</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">m_nInitTimer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#35d80df8b80f34868140a2163d207490">m_bShowMessage</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#b9613ab5f07edb0ef04383867674a5ce">m_bShowMainWindow</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#a866f2fd4fb32d49ab99306150d79c50">m_bBeep</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">m_bSound</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#be34e6084394fa6fa99422a7cc50d8f0">m_strSoundFile</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#ae8d4084a4b83a09722015793afb974c">m_bCommand</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#ea53a55a83d06cb76e3e686dd29ca034">m_strCommandPath</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#cdf78356d632253ac463907e526eb26a">m_bTerminate</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#f22fd0f8854795662a444bc2b4f8a9b9">m_bMinimize</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#1bd48d8596694d5b39e0ead274689010">m_bShowConnectionErrors</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#80b1f5a036cdaf9054ba57831a0c013e">m_bConfirmClose</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#fb4f1f200303a7e94114a8c4c85eb47e">m_bStartMinimized</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#da6c14776958a3b28f68797c7feb6c5b">m_bCloseMinimizes</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#af4cc3801f229ae974131ef1e000a8cf">m_bMinimizeToTray</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#54c7671d25847b7b16cf71ec61c640d0">m_bKeepNew</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#44cf59851c3af0b6f0a1cbdb15688491">spamMailbox</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">FilterAction_Type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigList.html#9b32c6d646ae58275351208894d7f545">spamAction</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Contains the application and account settings. The account settings are stored in <a class="el" href="classConfigElem.html">ConfigElem</a> objects. <dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke <p>
+Ulrich Weigelt </dd></dl>
+
+<p>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="457897bbe5bd27799e6f920d4cea2173"></a><!-- doxytag: member="ConfigList::ConfigList" ref="457897bbe5bd27799e6f920d4cea2173" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ConfigList::ConfigList </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor.
+</div>
+</div><p>
+<a class="anchor" name="1b6a054d7671b4f57d7fe77f123179ea"></a><!-- doxytag: member="ConfigList::~ConfigList" ref="1b6a054d7671b4f57d7fe77f123179ea" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual ConfigList::~ConfigList </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [inline, virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Destructor
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="8ab66c254c66635f97df7e17882b4ab2"></a><!-- doxytag: member="ConfigList::refreshSetup" ref="8ab66c254c66635f97df7e17882b4ab2" args="(KListView *view)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::refreshSetup </td>
+ <td>(</td>
+ <td class="paramtype">KListView *&nbsp;</td>
+ <td class="paramname"> <em>view</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Reads the setup from the configuration file (kshowmailrc) and sets the properties. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>view</em>&nbsp;</td><td>pointer to the account list view </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="3e41f463a87fbc8523bbd731cf36b473"></a><!-- doxytag: member="ConfigList::getRefreshTimeInterval" ref="3e41f463a87fbc8523bbd731cf36b473" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ConfigList::getRefreshTimeInterval </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the auto refresh time interval. <dl class="return" compact><dt><b>Returns:</b></dt><dd>refresh time interval [minutes] </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="1676756c27b3578802dba1ce47b39dcd"></a><!-- doxytag: member="ConfigList::setRefreshTimeInterval" ref="1676756c27b3578802dba1ce47b39dcd" args="(unsigned int interval)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::setRefreshTimeInterval </td>
+ <td>(</td>
+ <td class="paramtype">unsigned int&nbsp;</td>
+ <td class="paramname"> <em>interval</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the auto refresh time interval. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>interval</em>&nbsp;</td><td>the new time interval [minutes] </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="cae6685097cd8e5e63cee28e17d92d41"></a><!-- doxytag: member="ConfigList::AutoRefreshOn" ref="cae6685097cd8e5e63cee28e17d92d41" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::AutoRefreshOn </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether auto refresh is on. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - auto refresh is on; FALSE - auto refresh is off </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="5f798d2e62d3d8d013e3b2f54d51e94e"></a><!-- doxytag: member="ConfigList::setConfirmDeletion" ref="5f798d2e62d3d8d013e3b2f54d51e94e" args="(bool confirm)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::setConfirmDeletion </td>
+ <td>(</td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>confirm</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets whether the user has to confirm a deletion. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>confirm</em>&nbsp;</td><td>TRUE - user has to confirm; FALSE - the user does not have to confirm </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="a466577c54fec821ff484a378ce32e98"></a><!-- doxytag: member="ConfigList::confirmDeletion" ref="a466577c54fec821ff484a378ce32e98" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::confirmDeletion </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the user has to confirm a deletion. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - the user has to confirm <p>
+FALSE - the user does not have to confirm </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="4886c3988fef0e227cd03af094b21415"></a><!-- doxytag: member="ConfigList::confirmClose" ref="4886c3988fef0e227cd03af094b21415" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::confirmClose </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the user has to confirm window close. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - user has to confirm <p>
+FALSE - user does not have to confirm </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="6b5567437e81508f071d31acb4509994"></a><!-- doxytag: member="ConfigList::startMinimized" ref="6b5567437e81508f071d31acb4509994" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::startMinimized </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the app shall start minimized. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - start minimized <p>
+FALSE - don't start minimized </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="fa610dea65deb4e7e26c01926e740e84"></a><!-- doxytag: member="ConfigList::closeToTray" ref="fa610dea65deb4e7e26c01926e740e84" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::closeToTray </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the close button leaves the application running in tray. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - leaves running <p>
+FALSE - app will be closed </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="c64e08e3c1469622763dd462612a83ca"></a><!-- doxytag: member="ConfigList::minimizesToTray" ref="c64e08e3c1469622763dd462612a83ca" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::minimizesToTray </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether minimizes to the tray rather than to the taskbar. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - minimizes to the tray <p>
+FALSE - minimizes to the taskbar </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="04033fd5903daf6b1286891a2c7a228c"></a><!-- doxytag: member="ConfigList::showConnectionErrors" ref="04033fd5903daf6b1286891a2c7a228c" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::showConnectionErrors </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether connection errors will be shown during refresh. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - show errors <p>
+FALSE - don't show errors </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="9f3341f60b7f800b58f50e67c1f872b4"></a><!-- doxytag: member="ConfigList::setAllowHTML" ref="9f3341f60b7f800b58f50e67c1f872b4" args="(bool allowHTML)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::setAllowHTML </td>
+ <td>(</td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>allowHTML</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets whether the mail show dialog has to use HTML. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>allowHTML</em>&nbsp;</td><td>TRUE - the dialog has to use HTML; FALSE - the dialog must not use HTML </td></tr>
+ </table>
+</dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#017597159dc4b62d147aade09140e942">m_bAllowHTML</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="4cd09107151c848fafe17db0c8e9a4a6"></a><!-- doxytag: member="ConfigList::allowHTML" ref="4cd09107151c848fafe17db0c8e9a4a6" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::allowHTML </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the mail show dialog has to use HTML. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - the dialog has to use HTML <p>
+FALSE - the dialog must not use HTML </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#017597159dc4b62d147aade09140e942">m_bAllowHTML</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="14b38a4e600859c0b6f3ef38afffc037"></a><!-- doxytag: member="ConfigList::hasActiveAccounts" ref="14b38a4e600859c0b6f3ef38afffc037" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::hasActiveAccounts </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether there are active accounts. Doesn't set the current account. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - Yes, there are active accounts (at least one :o) ); FALSE - no active accounts </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="80a368db22ca3a29c668a544611d16f4"></a><!-- doxytag: member="ConfigList::getTimeoutTime" ref="80a368db22ca3a29c668a544611d16f4" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">uint ConfigList::getTimeoutTime </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the number of seconds the application will be wait for a pop3 job. <dl class="return" compact><dt><b>Returns:</b></dt><dd>seconds to timeout </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="2470bfe4948ada050b08b93cef51b969"></a><!-- doxytag: member="ConfigList::setTimeoutTime" ref="2470bfe4948ada050b08b93cef51b969" args="(uint time)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::setTimeoutTime </td>
+ <td>(</td>
+ <td class="paramtype">uint&nbsp;</td>
+ <td class="paramname"> <em>time</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the number of seconds the application will be wait for a pop3 job. Minimum time is POP3_MINIMUM_TIMEOUT_TIME seconds. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>time</em>&nbsp;</td><td>seconds to timeout </td></tr>
+ </table>
+</dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="constants_8h.html">constants.h</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="83776f91a264d92cea2b6f7ef0c02765"></a><!-- doxytag: member="ConfigList::getSelectedAccount" ref="83776f91a264d92cea2b6f7ef0c02765" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classConfigElem.html">ConfigElem</a> * ConfigList::getSelectedAccount </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the first account, for which an appropriate item is selected in the account list view. <dl class="return" compact><dt><b>Returns:</b></dt><dd>pointer to the selected account object <p>
+NULL - no account is selected </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="ac13c19975a07aa87da0047cc66b4ce1"></a><!-- doxytag: member="ConfigList::deleteSelectedMails" ref="ac13c19975a07aa87da0047cc66b4ce1" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::deleteSelectedMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Deletes all selected mails from the servers and the mail lists. This just starts the deletion and returns after then. When all accounts are ready the signal sigDeleteReady will be emitted.
+</div>
+</div><p>
+<a class="anchor" name="ea02d4502c51afab1e50f9fabd36a722"></a><!-- doxytag: member="ConfigList::connectAccounts" ref="ea02d4502c51afab1e50f9fabd36a722" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::connectAccounts </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connects the signals of the accounts with the slots of this class. It is necessary to do this after an account has been appended to the list and it is a good idea to call this method before you invoke an operation on an account that may emit a signal. The reason is that the pointer list seemingly often changes the adresses of the inserted accounts. After that the connections are corrupt.
+</div>
+</div><p>
+<a class="anchor" name="d489b548662d865fe34686507dc801ef"></a><!-- doxytag: member="ConfigList::getSelectedSubjects" ref="d489b548662d865fe34686507dc801ef" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QStringList ConfigList::getSelectedSubjects </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the subjects of the selected mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>subjects of selected mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="d80765bfadbd675b9b89ebdec0cf3566"></a><!-- doxytag: member="ConfigList::hasSelectedMails" ref="d80765bfadbd675b9b89ebdec0cf3566" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::hasSelectedMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether there are mails in this list which are selected in the list view. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - there are selected mails <p>
+FALSE - there aren't selected mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="69be8d63f8363fe9c727ebdaeb9eb7fa"></a><!-- doxytag: member="ConfigList::showSelectedMails" ref="69be8d63f8363fe9c727ebdaeb9eb7fa" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::showSelectedMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Downloads and shows the bodies of the selected mails. This just starts the download and returns after then. When all bodies are downloaded and shown the signal sigShowBodiesReady will be emitted.
+</div>
+</div><p>
+<a class="anchor" name="8cec55c3631317208f4800408a6e98c8"></a><!-- doxytag: member="ConfigList::refreshMailLists" ref="8cec55c3631317208f4800408a6e98c8" args="(FilterLog *log=NULL)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::refreshMailLists </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classFilterLog.html">FilterLog</a> *&nbsp;</td>
+ <td class="paramname"> <em>log</em> = <code>NULL</code> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Refreshes the mail list of all accounts. This just starts the refresh and returns after then. When all accounts have refreshed their mail list the signal sigRefreshReady will be emitted. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>log</em>&nbsp;</td><td>Pointer to the filter log. </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="c68944845fe63749fc073947fbdd44d6"></a><!-- doxytag: member="ConfigList::getNumberNewMails" ref="c68944845fe63749fc073947fbdd44d6" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ConfigList::getNumberNewMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the number of new mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>number of new mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="493eec8637f0f34fb25e13d07b6d838a"></a><!-- doxytag: member="ConfigList::getNumberMails" ref="493eec8637f0f34fb25e13d07b6d838a" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ConfigList::getNumberMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the number of mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>number of mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="2e6d8a00456ca4b61ddba18ab419dd38"></a><!-- doxytag: member="ConfigList::getTotalSize" ref="2e6d8a00456ca4b61ddba18ab419dd38" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">long ConfigList::getTotalSize </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the total size of all mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>total size </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="1db2530c553952aef3c23483dd6b6567"></a><!-- doxytag: member="ConfigList::fillMailListView" ref="1db2530c553952aef3c23483dd6b6567" args="(KshowmailView *view)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::fillMailListView </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classKshowmailView.html">KshowmailView</a> *&nbsp;</td>
+ <td class="paramname"> <em>view</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Creates for every mail a list view item and inserts it into the mail list view. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>view</em>&nbsp;</td><td>pointer to the application view </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="b4021a1f9087d447649a362d8779ec34"></a><!-- doxytag: member="ConfigList::showMainWindowForNewMails" ref="b4021a1f9087d447649a362d8779ec34" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::showMainWindowForNewMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the main window will be shown, if new mails was received. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - main window will be shown <p>
+FALSE - main window will not be shown </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="2270af8a5ce1740958f0f0b39359051f"></a><!-- doxytag: member="ConfigList::showAlertMessageForNewMails" ref="2270af8a5ce1740958f0f0b39359051f" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::showAlertMessageForNewMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether an alert message will be shown if new mails were received. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - will be shown <p>
+FALSE - will not be shown </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="e24d2fa3175996ba24faa1ed1efcf35a"></a><!-- doxytag: member="ConfigList::quitNoNewMails" ref="e24d2fa3175996ba24faa1ed1efcf35a" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::quitNoNewMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the app will be terminated if no new mails were received. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - will be terminated <p>
+FALSE - will not be terminated </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="94f99e48dfcc902ef18ea7310f395beb"></a><!-- doxytag: member="ConfigList::minimizeMainWindowNoNewMails" ref="94f99e48dfcc902ef18ea7310f395beb" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::minimizeMainWindowNoNewMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the main window will be minimized, if no new mails were received. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - main window will be minimized <p>
+FALSE - main window will not be minimized </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="3b74518a8dc0aff55be667276bc4597b"></a><!-- doxytag: member="ConfigList::getInitTime" ref="3b74518a8dc0aff55be667276bc4597b" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ConfigList::getInitTime </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the configured time to the first refresh. <dl class="return" compact><dt><b>Returns:</b></dt><dd>time to the first refresh (seconds) </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="c40250ce119d3e6f75b32b296ffaa36c"></a><!-- doxytag: member="ConfigList::setInitTime" ref="c40250ce119d3e6f75b32b296ffaa36c" args="(int time)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::setInitTime </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>time</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the time to the first refresh. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>time</em>&nbsp;</td><td>time (seconds) to the first refresh </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="ed405d97a4a1d20cac93bf2a23cf40bf"></a><!-- doxytag: member="ConfigList::hasInitTime" ref="ed405d97a4a1d20cac93bf2a23cf40bf" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::hasInitTime </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether a time to first refresh is configured. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - init time configured <p>
+FALSE - no init time configured </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="b3d5530c7419f6aa4b43e4247f3036a5"></a><!-- doxytag: member="ConfigList::refreshAccountList" ref="b3d5530c7419f6aa4b43e4247f3036a5" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::refreshAccountList </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Refreshes the account list (number of mails and total size).
+</div>
+</div><p>
+<a class="anchor" name="3c7523934753f98f3087ed4083df3ab2"></a><!-- doxytag: member="ConfigList::killPOP3Jobs" ref="3c7523934753f98f3087ed4083df3ab2" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::killPOP3Jobs </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Kills all running pop3 jobs.
+</div>
+</div><p>
+<a class="anchor" name="9578f65f771482e727dfb3e1da861aa3"></a><!-- doxytag: member="ConfigList::showSelectedHeaders" ref="9578f65f771482e727dfb3e1da861aa3" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::showSelectedHeaders </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Shows the headers of all selected mails.
+</div>
+</div><p>
+<a class="anchor" name="01cf49eac83ba56d1f9b3fbaa6bf4648"></a><!-- doxytag: member="ConfigList::executeNewMailCommand" ref="01cf49eac83ba56d1f9b3fbaa6bf4648" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::executeNewMailCommand </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Executes the configure new mail command. Does nothing, if the command option is switched off (m_bCommand == false).
+</div>
+</div><p>
+<a class="anchor" name="49a20af219bc1a4f20e50b59b6f2310c"></a><!-- doxytag: member="ConfigList::keepNew" ref="49a20af219bc1a4f20e50b59b6f2310c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::keepNew </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether all new mails will keep new status until the app is closed. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - mails keep new status at next refresh <p>
+FALSE - mails don't keep new status at next refresh </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="ac706ab3763709422de0ccfa91db7776"></a><!-- doxytag: member="ConfigList::printSetup" ref="ac706ab3763709422de0ccfa91db7776" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::printSetup </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Prints the setup.
+</div>
+</div><p>
+<a class="anchor" name="f4faa44af3bbe318a2623b3146dc2c2d"></a><!-- doxytag: member="ConfigList::saveOptions" ref="f4faa44af3bbe318a2623b3146dc2c2d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::saveOptions </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Saves the current mails data and the account setups. The mails data will be saved into an XML file (kshowmail.xml). The account setups will be saved into the application config file (kshowmailrc).
+</div>
+</div><p>
+<a class="anchor" name="18b093749b6a474b68a4c2bfe952d65c"></a><!-- doxytag: member="ConfigList::readStoredMails" ref="18b093749b6a474b68a4c2bfe952d65c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::readStoredMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Reads stored mails data. At every setup saving (e.g. at exit) the mails data will be stored into the file kshowmail.xml. At application start we read this file to identify mails which are not new at first refresh.
+</div>
+</div><p>
+<a class="anchor" name="2a997667f702e9416a9006a481c7d848"></a><!-- doxytag: member="ConfigList::getSpamAction" ref="2a997667f702e9416a9006a481c7d848" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">FilterAction_Type</a> ConfigList::getSpamAction </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the action to used on spam mails <dl class="return" compact><dt><b>Returns:</b></dt><dd>action to used on spam mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="18994e01d2362c49cd428e3b77c0a32a"></a><!-- doxytag: member="ConfigList::getSpamMailbox" ref="18994e01d2362c49cd428e3b77c0a32a" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ConfigList::getSpamMailbox </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the mailbox for spam mails <dl class="return" compact><dt><b>Returns:</b></dt><dd>mailbox for spam </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="633c6c07518ecf2405ad472ab843790f"></a><!-- doxytag: member="ConfigList::setItem" ref="633c6c07518ecf2405ad472ab843790f" args="(const char *item)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::setItem </td>
+ <td>(</td>
+ <td class="paramtype">const char *&nbsp;</td>
+ <td class="paramname"> <em>item</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="e595f764ea9b38f0634137438bdd4d70"></a><!-- doxytag: member="ConfigList::setList" ref="e595f764ea9b38f0634137438bdd4d70" args="(QListView *list)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::setList </td>
+ <td>(</td>
+ <td class="paramtype">QListView *&nbsp;</td>
+ <td class="paramname"> <em>list</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="28739bc3cd7ce87dbd7f994081375a41"></a><!-- doxytag: member="ConfigList::beep" ref="28739bc3cd7ce87dbd7f994081375a41" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::beep </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="5e7a5e2323ebbbad7d960bae9814ce5d"></a><!-- doxytag: member="ConfigList::playSound" ref="5e7a5e2323ebbbad7d960bae9814ce5d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::playSound </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="77c53c4e4120961c2647d4081486aeda"></a><!-- doxytag: member="ConfigList::playSound" ref="77c53c4e4120961c2647d4081486aeda" args="(const char *file)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::playSound </td>
+ <td>(</td>
+ <td class="paramtype">const char *&nbsp;</td>
+ <td class="paramname"> <em>file</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="24464fe479402405ee9b849ddcc9c567"></a><!-- doxytag: member="ConfigList::newItem" ref="24464fe479402405ee9b849ddcc9c567" args="(QCollection::Item item)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QCollection::Item ConfigList::newItem </td>
+ <td>(</td>
+ <td class="paramtype">QCollection::Item&nbsp;</td>
+ <td class="paramname"> <em>item</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Makes a copy from the given account object and returns the pointer to it. Reimplementation of QPtrList::newItem(). Used by QPtrList to add new items. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>item</em>&nbsp;</td><td>account object </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>pointer to the new account object </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="8bf1aaa71ff8971369466e5c2a36d27f"></a><!-- doxytag: member="ConfigList::compareItems" ref="8bf1aaa71ff8971369466e5c2a36d27f" args="(QCollection::Item item1, QCollection::Item item2)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ConfigList::compareItems </td>
+ <td>(</td>
+ <td class="paramtype">QCollection::Item&nbsp;</td>
+ <td class="paramname"> <em>item1</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QCollection::Item&nbsp;</td>
+ <td class="paramname"> <em>item2</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"><code> [protected, virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Compares two <a class="el" href="classConfigElem.html">ConfigElem</a> objects. Reimplementation of QPtrList::compareItems(). Used by inSort(). <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>item1</em>&nbsp;</td><td>account 1 </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>item2</em>&nbsp;</td><td>account 2 </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 if account name 1 == account name 2 <p>
+nonzero if account name 2 != account name 2 </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="47d7852e47d047dc7c00ad76715aa4df"></a><!-- doxytag: member="ConfigList::hasAccount" ref="47d7852e47d047dc7c00ad76715aa4df" args="(const QString &amp;name) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ConfigList::hasAccount </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>name</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the given account is in the list <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name of the searched account </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - account is existent <p>
+FALSE - account is not existent </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="f5155dad83daf4956ebfb09f6ebd50c6"></a><!-- doxytag: member="ConfigList::getAccount" ref="f5155dad83daf4956ebfb09f6ebd50c6" args="(const QString &amp;name) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classConfigElem.html">ConfigElem</a> * ConfigList::getAccount </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>name</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the pointer to the account named like the given name. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>of the searched account </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>account or NULL, if the account was not found </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="f8495aff41becdac4998b0c2881cccde"></a><!-- doxytag: member="ConfigList::slotAccountConfigChanged" ref="f8495aff41becdac4998b0c2881cccde" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::slotAccountConfigChanged </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal sigConfigChanged of all accounts. Emits the signal sigConfigChanged.
+</div>
+</div><p>
+<a class="anchor" name="640d6202cfb38c449e95906e7581693b"></a><!-- doxytag: member="ConfigList::slotCheckDeletionState" ref="640d6202cfb38c449e95906e7581693b" args="(QString account)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::slotCheckDeletionState </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>account</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal sigDeleteReady of all accounts. When an account has sent this signal its appropriate item in AccountDeletionMap will set to FALSE. When all accounts have done the deletion it will emit signal sigDeleteReady. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of the account which has emitted the signal </td></tr>
+ </table>
+</dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">AccountDeletionMap</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="bdbf21b25f8e963e5c32d167aff1fe16"></a><!-- doxytag: member="ConfigList::slotCheckShowBodiesState" ref="bdbf21b25f8e963e5c32d167aff1fe16" args="(QString account)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::slotCheckShowBodiesState </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>account</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal sigShowBodiesReady of all accounts. When an account has sent this signal its appropriate item in AccountShowBodiesMap will set to FALSE. When all accounts have shown the mail it will emit signal sigShowBodiesReady. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of the account which has emitted the signal </td></tr>
+ </table>
+</dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">AccountShowBodiesMap</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="1ffbc4bf4ef66872162065b80a248b7a"></a><!-- doxytag: member="ConfigList::slotMessageWindowOpened" ref="1ffbc4bf4ef66872162065b80a248b7a" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::slotMessageWindowOpened </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal sigMessageWindowOpened of all accounts. When an account has sent this signal the counter ctrOpenMessageWindows will be incremented. When the counter was incremented from zero (the first window was opened) the signal sigMessageWindowOpened will be emitted. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a> <p>
+<a class="el" href="classConfigList.html#4e33dcc16368960e9a41dca3bb878360">sigMessageWindowOpened</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="6a9cc47ba150c0923b558752f118ec6c"></a><!-- doxytag: member="ConfigList::slotMessageWindowClosed" ref="6a9cc47ba150c0923b558752f118ec6c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::slotMessageWindowClosed </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal sigMessageWindowClosed of all accounts. When an account has sent this signal the counter ctrOpenMessageWindows will be decremented. When the counter has reached zero the signal sigAllMessageWindowsClosed will be emitted. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a> <p>
+<a class="el" href="classConfigList.html#6cc47a8e403bad408356604c0888c292">sigAllMessageWindowsClosed</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="beaa15863a4aae563a8539d176067f79"></a><!-- doxytag: member="ConfigList::slotCheckRefreshState" ref="beaa15863a4aae563a8539d176067f79" args="(QString account)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::slotCheckRefreshState </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>account</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal sigRefreshReady of all accounts. When an account has sent this signal its appropriate item in AccountRefreshMap will set to FALSE. When all accounts have refreshed their mail list it will emit signal sigRefreshReady. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of the account which has emitted the signal </td></tr>
+ </table>
+</dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">AccountRefreshMap</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="9b5c13b885ba99acefb6bcb81f54b563"></a><!-- doxytag: member="ConfigList::sigConfigChanged" ref="9b5c13b885ba99acefb6bcb81f54b563" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::sigConfigChanged </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Will be emitted when the configuration of an account or of the app was changed.
+</div>
+</div><p>
+<a class="anchor" name="6d5f55c7447fc52efd5800daeb8302dc"></a><!-- doxytag: member="ConfigList::sigDeleteReady" ref="6d5f55c7447fc52efd5800daeb8302dc" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::sigDeleteReady </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Will be emitted when all selected mails are deleted.
+</div>
+</div><p>
+<a class="anchor" name="4df89bc3cd1da72c4404cbe6fe1f10d1"></a><!-- doxytag: member="ConfigList::sigShowBodiesReady" ref="4df89bc3cd1da72c4404cbe6fe1f10d1" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::sigShowBodiesReady </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Will be emitted when all selected mails are shown.
+</div>
+</div><p>
+<a class="anchor" name="4e33dcc16368960e9a41dca3bb878360"></a><!-- doxytag: member="ConfigList::sigMessageWindowOpened" ref="4e33dcc16368960e9a41dca3bb878360" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::sigMessageWindowOpened </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Will be emitted by slotMessageWindowOpened when an account has opened a window to show a mail. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#1ffbc4bf4ef66872162065b80a248b7a">slotMessageWindowOpened</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="6cc47a8e403bad408356604c0888c292"></a><!-- doxytag: member="ConfigList::sigAllMessageWindowsClosed" ref="6cc47a8e403bad408356604c0888c292" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::sigAllMessageWindowsClosed </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Will be emitted by slotMessageWindowClosed when all accounts have closed their windows to show mails. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#6a9cc47ba150c0923b558752f118ec6c">slotMessageWindowClosed</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="cd0d056e66a4c054306dca9936b9d5da"></a><!-- doxytag: member="ConfigList::sigRefreshReady" ref="cd0d056e66a4c054306dca9936b9d5da" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ConfigList::sigRefreshReady </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Will be emitted, when all accounts have refreshed their mail list.
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="4bed3e796400897fbffd3eb19e4ff296"></a><!-- doxytag: member="ConfigList::config" ref="4bed3e796400897fbffd3eb19e4ff296" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KConfig* <a class="el" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">ConfigList::config</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connector to the configuration file
+</div>
+</div><p>
+<a class="anchor" name="b15e5bd9334e36428c5d44b9ee2a97d5"></a><!-- doxytag: member="ConfigList::m_nIntervalTimer" ref="b15e5bd9334e36428c5d44b9ee2a97d5" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int <a class="el" href="classConfigList.html#b15e5bd9334e36428c5d44b9ee2a97d5">ConfigList::m_nIntervalTimer</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Time in minutes to the next automatic refresh.
+</div>
+</div><p>
+<a class="anchor" name="f4a428e650cf89e8ae0df0a2983f96f4"></a><!-- doxytag: member="ConfigList::m_nPop3Timer" ref="f4a428e650cf89e8ae0df0a2983f96f4" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">uint <a class="el" href="classConfigList.html#f4a428e650cf89e8ae0df0a2983f96f4">ConfigList::m_nPop3Timer</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Number of seconds the application will wait for a pop3 job to complete.
+</div>
+</div><p>
+<a class="anchor" name="bc124e934246f773aeab03b5f0940f01"></a><!-- doxytag: member="ConfigList::AccountDeletionMap" ref="bc124e934246f773aeab03b5f0940f01" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">AccountTaskMap_Type <a class="el" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">ConfigList::AccountDeletionMap</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+This map is used by the delete methods. <a class="el" href="classConfigList.html#ac13c19975a07aa87da0047cc66b4ce1">deleteSelectedMails()</a> clears it and after that inserts for every account an item. The Key is the account name and the data is TRUE. When <a class="el" href="classConfigList.html#640d6202cfb38c449e95906e7581693b">slotCheckDeletionState()</a> is invoked by a signal sent by an account, this slot will set the appropriate item data to FALSE. If the data of all items are set to FALSE, the method will know all accounts have ended the deletion and will emit sigDeleteReady. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#ac13c19975a07aa87da0047cc66b4ce1">deleteSelectedMails()</a> <p>
+<a class="el" href="classConfigList.html#640d6202cfb38c449e95906e7581693b">slotCheckDeletionState()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="6fcc9096444b71e03865ac2402bb0d23"></a><!-- doxytag: member="ConfigList::AccountShowBodiesMap" ref="6fcc9096444b71e03865ac2402bb0d23" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">AccountTaskMap_Type <a class="el" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">ConfigList::AccountShowBodiesMap</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+This map is used by the methods to show the mail body. <a class="el" href="classConfigList.html#69be8d63f8363fe9c727ebdaeb9eb7fa">showSelectedMails()</a> clears it and after that inserts for every account an item. The Key is the account name and the data is TRUE. When <a class="el" href="classConfigList.html#bdbf21b25f8e963e5c32d167aff1fe16">slotCheckShowBodiesState()</a> is invoked by a signal sent by an account, this slot will set the appropriate item data to FALSE. If the data of all items are set to FALSE, the method will know all accounts have shown the mail body and will emit sigShowBodiesReady. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#69be8d63f8363fe9c727ebdaeb9eb7fa">showSelectedMails()</a> <p>
+<a class="el" href="classConfigList.html#bdbf21b25f8e963e5c32d167aff1fe16">slotCheckShowBodiesState()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="9c266b75b6629ff8f850ac9b9a2a8a08"></a><!-- doxytag: member="ConfigList::AccountRefreshMap" ref="9c266b75b6629ff8f850ac9b9a2a8a08" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">AccountTaskMap_Type <a class="el" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">ConfigList::AccountRefreshMap</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+This map is used by the methods to refresh the account mail lists. <a class="el" href="classConfigList.html#8cec55c3631317208f4800408a6e98c8">refreshMailLists()</a> clears it and after that inserts for every account an item. The Key ist the account name and the data is TRUE. When <a class="el" href="classConfigList.html#beaa15863a4aae563a8539d176067f79">slotCheckRefreshState()</a> is invoked by a signal sent by an account, this slot will set the appropriate item data to FALSE. If the data of all items are set to FALSE, the method will know all accounts have refreshed their mail list and will emit sigRefreshReady. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#8cec55c3631317208f4800408a6e98c8">refreshMailLists()</a> <p>
+<a class="el" href="classConfigList.html#beaa15863a4aae563a8539d176067f79">slotCheckRefreshState()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="8b8d0d0a2d78c9f3ede1db0a9e77f8be"></a><!-- doxytag: member="ConfigList::m_bConfirmDelete" ref="8b8d0d0a2d78c9f3ede1db0a9e77f8be" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#8b8d0d0a2d78c9f3ede1db0a9e77f8be">ConfigList::m_bConfirmDelete</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - the user has to confirm a deletion, FALSE - the user does not have to confirm a deletion
+</div>
+</div><p>
+<a class="anchor" name="017597159dc4b62d147aade09140e942"></a><!-- doxytag: member="ConfigList::m_bAllowHTML" ref="017597159dc4b62d147aade09140e942" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#017597159dc4b62d147aade09140e942">ConfigList::m_bAllowHTML</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - allow HTML formatting in the mail show dialog box FALSE - don't allow HTML formatting <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#9f3341f60b7f800b58f50e67c1f872b4">setAllowHTML()</a> <p>
+<a class="el" href="classConfigList.html#4cd09107151c848fafe17db0c8e9a4a6">allowHTML()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="6a3a4e9a8428c350a53bbf7b39f27e39"></a><!-- doxytag: member="ConfigList::ctrOpenMessageWindows" ref="6a3a4e9a8428c350a53bbf7b39f27e39" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int <a class="el" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ConfigList::ctrOpenMessageWindows</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Number of windows, which have been opened by the accounts to show mails. Used by <a class="el" href="classConfigList.html#1ffbc4bf4ef66872162065b80a248b7a">slotMessageWindowOpened()</a> and <a class="el" href="classConfigList.html#6a9cc47ba150c0923b558752f118ec6c">slotMessageWindowClosed()</a>. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#1ffbc4bf4ef66872162065b80a248b7a">slotMessageWindowOpened</a> <p>
+<a class="el" href="classConfigList.html#6a9cc47ba150c0923b558752f118ec6c">slotMessageWindowClosed</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="872222b57b257e2ba67cf360dffc2a1b"></a><!-- doxytag: member="ConfigList::m_nInitTimer" ref="872222b57b257e2ba67cf360dffc2a1b" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int <a class="el" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">ConfigList::m_nInitTimer</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Contains the time (seconds) to first refresh. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classConfigList.html#c40250ce119d3e6f75b32b296ffaa36c">setInitTime()</a> <p>
+<a class="el" href="classConfigList.html#3b74518a8dc0aff55be667276bc4597b">getInitTime()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="35d80df8b80f34868140a2163d207490"></a><!-- doxytag: member="ConfigList::m_bShowMessage" ref="35d80df8b80f34868140a2163d207490" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#35d80df8b80f34868140a2163d207490">ConfigList::m_bShowMessage</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - If a new mail is arrived an alert window will be shown.
+</div>
+</div><p>
+<a class="anchor" name="b9613ab5f07edb0ef04383867674a5ce"></a><!-- doxytag: member="ConfigList::m_bShowMainWindow" ref="b9613ab5f07edb0ef04383867674a5ce" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#b9613ab5f07edb0ef04383867674a5ce">ConfigList::m_bShowMainWindow</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - If a new mail is arrived the main window will be shown.
+</div>
+</div><p>
+<a class="anchor" name="a866f2fd4fb32d49ab99306150d79c50"></a><!-- doxytag: member="ConfigList::m_bBeep" ref="a866f2fd4fb32d49ab99306150d79c50" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#a866f2fd4fb32d49ab99306150d79c50">ConfigList::m_bBeep</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - If a new mail is arrived the system will beep.
+</div>
+</div><p>
+<a class="anchor" name="a50d4f3ca2c1f7814aec63df25de1811"></a><!-- doxytag: member="ConfigList::m_bSound" ref="a50d4f3ca2c1f7814aec63df25de1811" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">ConfigList::m_bSound</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - If a new mail is arrived a sound will be played.
+</div>
+</div><p>
+<a class="anchor" name="be34e6084394fa6fa99422a7cc50d8f0"></a><!-- doxytag: member="ConfigList::m_strSoundFile" ref="be34e6084394fa6fa99422a7cc50d8f0" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString <a class="el" href="classConfigList.html#be34e6084394fa6fa99422a7cc50d8f0">ConfigList::m_strSoundFile</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sound file which will be played if a new mail is arrived.
+</div>
+</div><p>
+<a class="anchor" name="ae8d4084a4b83a09722015793afb974c"></a><!-- doxytag: member="ConfigList::m_bCommand" ref="ae8d4084a4b83a09722015793afb974c" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#ae8d4084a4b83a09722015793afb974c">ConfigList::m_bCommand</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - If a new mail is arrived a command will be executed.
+</div>
+</div><p>
+<a class="anchor" name="ea53a55a83d06cb76e3e686dd29ca034"></a><!-- doxytag: member="ConfigList::m_strCommandPath" ref="ea53a55a83d06cb76e3e686dd29ca034" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString <a class="el" href="classConfigList.html#ea53a55a83d06cb76e3e686dd29ca034">ConfigList::m_strCommandPath</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Path to command which will be executed if a new mail is arrived.
+</div>
+</div><p>
+<a class="anchor" name="cdf78356d632253ac463907e526eb26a"></a><!-- doxytag: member="ConfigList::m_bTerminate" ref="cdf78356d632253ac463907e526eb26a" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#cdf78356d632253ac463907e526eb26a">ConfigList::m_bTerminate</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - If no new mail is arrived the application will be ended.
+</div>
+</div><p>
+<a class="anchor" name="f22fd0f8854795662a444bc2b4f8a9b9"></a><!-- doxytag: member="ConfigList::m_bMinimize" ref="f22fd0f8854795662a444bc2b4f8a9b9" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#f22fd0f8854795662a444bc2b4f8a9b9">ConfigList::m_bMinimize</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - If no new mail is arrived the main window will be minimized.
+</div>
+</div><p>
+<a class="anchor" name="1bd48d8596694d5b39e0ead274689010"></a><!-- doxytag: member="ConfigList::m_bShowConnectionErrors" ref="1bd48d8596694d5b39e0ead274689010" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#1bd48d8596694d5b39e0ead274689010">ConfigList::m_bShowConnectionErrors</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - If a connection error occures during refresh an error message will be shown.
+</div>
+</div><p>
+<a class="anchor" name="80b1f5a036cdaf9054ba57831a0c013e"></a><!-- doxytag: member="ConfigList::m_bConfirmClose" ref="80b1f5a036cdaf9054ba57831a0c013e" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#80b1f5a036cdaf9054ba57831a0c013e">ConfigList::m_bConfirmClose</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - The user has to confirm window close.
+</div>
+</div><p>
+<a class="anchor" name="fb4f1f200303a7e94114a8c4c85eb47e"></a><!-- doxytag: member="ConfigList::m_bStartMinimized" ref="fb4f1f200303a7e94114a8c4c85eb47e" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#fb4f1f200303a7e94114a8c4c85eb47e">ConfigList::m_bStartMinimized</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - the app starts minimized.
+</div>
+</div><p>
+<a class="anchor" name="da6c14776958a3b28f68797c7feb6c5b"></a><!-- doxytag: member="ConfigList::m_bCloseMinimizes" ref="da6c14776958a3b28f68797c7feb6c5b" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#da6c14776958a3b28f68797c7feb6c5b">ConfigList::m_bCloseMinimizes</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - the close button leaves the application running in tray
+</div>
+</div><p>
+<a class="anchor" name="af4cc3801f229ae974131ef1e000a8cf"></a><!-- doxytag: member="ConfigList::m_bMinimizeToTray" ref="af4cc3801f229ae974131ef1e000a8cf" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#af4cc3801f229ae974131ef1e000a8cf">ConfigList::m_bMinimizeToTray</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - minimizes to the tray rather than to the taskbar
+</div>
+</div><p>
+<a class="anchor" name="54c7671d25847b7b16cf71ec61c640d0"></a><!-- doxytag: member="ConfigList::m_bKeepNew" ref="54c7671d25847b7b16cf71ec61c640d0" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classConfigList.html#54c7671d25847b7b16cf71ec61c640d0">ConfigList::m_bKeepNew</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - mails keep new until termination
+</div>
+</div><p>
+<a class="anchor" name="44cf59851c3af0b6f0a1cbdb15688491"></a><!-- doxytag: member="ConfigList::spamMailbox" ref="44cf59851c3af0b6f0a1cbdb15688491" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString <a class="el" href="classConfigList.html#44cf59851c3af0b6f0a1cbdb15688491">ConfigList::spamMailbox</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Mailbox for Spam, if configured
+</div>
+</div><p>
+<a class="anchor" name="9b32c6d646ae58275351208894d7f545"></a><!-- doxytag: member="ConfigList::spamAction" ref="9b32c6d646ae58275351208894d7f545" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">FilterAction_Type</a> <a class="el" href="classConfigList.html#9b32c6d646ae58275351208894d7f545">ConfigList::spamAction</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Action which shall be done, if the mail is Spam
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="configlist_8h-source.html">configlist.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="configlist_8cpp.html">configlist.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classEditDialog-members.html b/doc/html/classEditDialog-members.html
new file mode 100644
index 0000000..39f5388
--- /dev/null
+++ b/doc/html/classEditDialog-members.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>EditDialog Member List</h1>This is the complete list of members for <a class="el" href="classEditDialog.html">EditDialog</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#f96408404a78ca846820488c1aae1429">_buttonCancel</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#8cb35c7986c9d882cddb2c3de4e48a1a">_buttonOk</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#aefe39b417050379770eb36c102f3d01">_buttonReply</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDialog.html#2ca1e6e1f1bf299f39bfe42a42d310a0">_row</a></td><td><a class="el" href="classEditDialog.html">EditDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDialog.html#60b8b3d2cb57cb5f8a1f12b41cb48925">addWidget</a>(const QString &amp;label, const QString &amp;value)</td><td><a class="el" href="classEditDialog.html">EditDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDialog.html#f04c4d1f7426db3ce7b52afbd47bee3a">EditDialog</a>(QWidget *parent, const char *name, const char *content, bool html)</td><td><a class="el" href="classEditDialog.html">EditDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#1a0993a8c1b96893a290c3c7b8ce0a18">EditDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#121ab750fca3f5077ec34c90edc8fb2e">EditDlgLayout</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#8e34dcd04a2c8ed5cd2592b971e3d674">headerlayout</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#d3a3cffb24bdee707ff2e5d86c4e71bd">languageChange</a>()</td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#7b993caff60b9567e77dd966e0a03d12">layout3</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDialog.html#375c93b954436746caab26f1d2664811">slotReplyClicked</a>()</td><td><a class="el" href="classEditDialog.html">EditDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#c7b18d6e1e9a58b38758c4ab2439edbd">Spacer15</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDialog.html#702b03511d3afe4d3a05a588b06d597c">~EditDialog</a>()</td><td><a class="el" href="classEditDialog.html">EditDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#d2ee10f87c785df1bd542d5a40f457c9">~EditDlg</a>()</td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classEditDialog.html b/doc/html/classEditDialog.html
new file mode 100644
index 0000000..33b8c23
--- /dev/null
+++ b/doc/html/classEditDialog.html
@@ -0,0 +1,63 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: EditDialog Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>EditDialog Class Reference</h1><!-- doxytag: class="EditDialog" --><!-- doxytag: inherits="EditDlg" --><code>#include &lt;<a class="el" href="editdialog_8h-source.html">editdialog.h</a>&gt;</code>
+<p>
+<p>Inheritance diagram for EditDialog:
+<p><center><img src="classEditDialog.png" usemap="#EditDialog_map" border="0" alt=""></center>
+<map name="EditDialog_map">
+<area href="classEditDlg.html" alt="EditDlg" shape="rect" coords="0,0,69,24">
+</map>
+<a href="classEditDialog-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="375c93b954436746caab26f1d2664811"></a><!-- doxytag: member="EditDialog::slotReplyClicked" ref="375c93b954436746caab26f1d2664811" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDialog.html#375c93b954436746caab26f1d2664811">slotReplyClicked</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f04c4d1f7426db3ce7b52afbd47bee3a"></a><!-- doxytag: member="EditDialog::EditDialog" ref="f04c4d1f7426db3ce7b52afbd47bee3a" args="(QWidget *parent, const char *name, const char *content, bool html)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDialog.html#f04c4d1f7426db3ce7b52afbd47bee3a">EditDialog</a> (QWidget *parent, const char *name, const char *content, bool html)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="702b03511d3afe4d3a05a588b06d597c"></a><!-- doxytag: member="EditDialog::~EditDialog" ref="702b03511d3afe4d3a05a588b06d597c" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDialog.html#702b03511d3afe4d3a05a588b06d597c">~EditDialog</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="60b8b3d2cb57cb5f8a1f12b41cb48925"></a><!-- doxytag: member="EditDialog::addWidget" ref="60b8b3d2cb57cb5f8a1f12b41cb48925" args="(const QString &amp;label, const QString &amp;value)" -->
+void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDialog.html#60b8b3d2cb57cb5f8a1f12b41cb48925">addWidget</a> (const QString &amp;label, const QString &amp;value)</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2ca1e6e1f1bf299f39bfe42a42d310a0"></a><!-- doxytag: member="EditDialog::_row" ref="2ca1e6e1f1bf299f39bfe42a42d310a0" args="" -->
+int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDialog.html#2ca1e6e1f1bf299f39bfe42a42d310a0">_row</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke </dd></dl>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="editdialog_8h-source.html#l00028">28</a> of file <a class="el" href="editdialog_8h-source.html">editdialog.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="editdialog_8h-source.html">editdialog.h</a><li>kshowmail/<a class="el" href="editdialog_8cpp-source.html">editdialog.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classEditDialog.png b/doc/html/classEditDialog.png
new file mode 100644
index 0000000..91976e2
--- /dev/null
+++ b/doc/html/classEditDialog.png
Binary files differ
diff --git a/doc/html/classEditDlg-members.html b/doc/html/classEditDlg-members.html
new file mode 100644
index 0000000..119c66b
--- /dev/null
+++ b/doc/html/classEditDlg-members.html
@@ -0,0 +1,40 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>EditDlg Member List</h1>This is the complete list of members for <a class="el" href="classEditDlg.html">EditDlg</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#f96408404a78ca846820488c1aae1429">_buttonCancel</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#8cb35c7986c9d882cddb2c3de4e48a1a">_buttonOk</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#aefe39b417050379770eb36c102f3d01">_buttonReply</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#1a0993a8c1b96893a290c3c7b8ce0a18">EditDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#121ab750fca3f5077ec34c90edc8fb2e">EditDlgLayout</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#8e34dcd04a2c8ed5cd2592b971e3d674">headerlayout</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#d3a3cffb24bdee707ff2e5d86c4e71bd">languageChange</a>()</td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#7b993caff60b9567e77dd966e0a03d12">layout3</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#9ab14db19e57d69fa883c76406a01f82">slotReplyClicked</a>()</td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#c7b18d6e1e9a58b38758c4ab2439edbd">Spacer15</a></td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEditDlg.html#d2ee10f87c785df1bd542d5a40f457c9">~EditDlg</a>()</td><td><a class="el" href="classEditDlg.html">EditDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:20 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classEditDlg.html b/doc/html/classEditDlg.html
new file mode 100644
index 0000000..c8298fb
--- /dev/null
+++ b/doc/html/classEditDlg.html
@@ -0,0 +1,83 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: EditDlg Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>EditDlg Class Reference</h1><!-- doxytag: class="EditDlg" --><p>Inheritance diagram for EditDlg:
+<p><center><img src="classEditDlg.png" usemap="#EditDlg_map" border="0" alt=""></center>
+<map name="EditDlg_map">
+<area href="classEditDialog.html" alt="EditDialog" shape="rect" coords="0,56,69,80">
+</map>
+<a href="classEditDlg-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9ab14db19e57d69fa883c76406a01f82"></a><!-- doxytag: member="EditDlg::slotReplyClicked" ref="9ab14db19e57d69fa883c76406a01f82" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDlg.html#9ab14db19e57d69fa883c76406a01f82">slotReplyClicked</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1a0993a8c1b96893a290c3c7b8ce0a18"></a><!-- doxytag: member="EditDlg::EditDlg" ref="1a0993a8c1b96893a290c3c7b8ce0a18" args="(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDlg.html#1a0993a8c1b96893a290c3c7b8ce0a18">EditDlg</a> (QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d2ee10f87c785df1bd542d5a40f457c9"></a><!-- doxytag: member="EditDlg::~EditDlg" ref="d2ee10f87c785df1bd542d5a40f457c9" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDlg.html#d2ee10f87c785df1bd542d5a40f457c9">~EditDlg</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e0c63f69593ec302266eb0adde25423c"></a><!-- doxytag: member="EditDlg::m_Edit" ref="e0c63f69593ec302266eb0adde25423c" args="" -->
+KTextBrowser *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aefe39b417050379770eb36c102f3d01"></a><!-- doxytag: member="EditDlg::_buttonReply" ref="aefe39b417050379770eb36c102f3d01" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDlg.html#aefe39b417050379770eb36c102f3d01">_buttonReply</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8cb35c7986c9d882cddb2c3de4e48a1a"></a><!-- doxytag: member="EditDlg::_buttonOk" ref="8cb35c7986c9d882cddb2c3de4e48a1a" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDlg.html#8cb35c7986c9d882cddb2c3de4e48a1a">_buttonOk</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f96408404a78ca846820488c1aae1429"></a><!-- doxytag: member="EditDlg::_buttonCancel" ref="f96408404a78ca846820488c1aae1429" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDlg.html#f96408404a78ca846820488c1aae1429">_buttonCancel</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d3a3cffb24bdee707ff2e5d86c4e71bd"></a><!-- doxytag: member="EditDlg::languageChange" ref="d3a3cffb24bdee707ff2e5d86c4e71bd" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDlg.html#d3a3cffb24bdee707ff2e5d86c4e71bd">languageChange</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="121ab750fca3f5077ec34c90edc8fb2e"></a><!-- doxytag: member="EditDlg::EditDlgLayout" ref="121ab750fca3f5077ec34c90edc8fb2e" args="" -->
+QVBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDlg.html#121ab750fca3f5077ec34c90edc8fb2e">EditDlgLayout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8e34dcd04a2c8ed5cd2592b971e3d674"></a><!-- doxytag: member="EditDlg::headerlayout" ref="8e34dcd04a2c8ed5cd2592b971e3d674" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDlg.html#8e34dcd04a2c8ed5cd2592b971e3d674">headerlayout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7b993caff60b9567e77dd966e0a03d12"></a><!-- doxytag: member="EditDlg::layout3" ref="7b993caff60b9567e77dd966e0a03d12" args="" -->
+QHBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDlg.html#7b993caff60b9567e77dd966e0a03d12">layout3</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c7b18d6e1e9a58b38758c4ab2439edbd"></a><!-- doxytag: member="EditDlg::Spacer15" ref="c7b18d6e1e9a58b38758c4ab2439edbd" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEditDlg.html#c7b18d6e1e9a58b38758c4ab2439edbd">Spacer15</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="EditDlg_8h-source.html#l00023">23</a> of file <a class="el" href="EditDlg_8h-source.html">EditDlg.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="EditDlg_8h-source.html">EditDlg.h</a><li>kshowmail/<a class="el" href="EditDlg_8cpp-source.html">EditDlg.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:20 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classEditDlg.png b/doc/html/classEditDlg.png
new file mode 100644
index 0000000..f546770
--- /dev/null
+++ b/doc/html/classEditDlg.png
Binary files differ
diff --git a/doc/html/classFilter-members.html b/doc/html/classFilter-members.html
new file mode 100644
index 0000000..a9befa8
--- /dev/null
+++ b/doc/html/classFilter-members.html
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>Filter Member List</h1>This is the complete list of members for <a class="el" href="classFilter.html">Filter</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classFilter.html#4d53518cda0abbbb6ca6badd97bb321a">_filter</a></td><td><a class="el" href="classFilter.html">Filter</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">_status</a></td><td><a class="el" href="classFilter.html">Filter</a></td><td><code> [static]</code></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>automatic</b> enum value (defined in <a class="el" href="classFilter.html">Filter</a>)</td><td><a class="el" href="classFilter.html">Filter</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilter.html#d15994c30d497afd567a6445446a249e">Filter</a>()</td><td><a class="el" href="classFilter.html">Filter</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilter.html#829a8d1a39c82631bfa096afb6102a6a">filterStatus</a> enum name</td><td><a class="el" href="classFilter.html">Filter</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilter.html#1092aa06ff29a9c2adceadde9d4891f3">matches</a>(ShowRecordElem *)</td><td><a class="el" href="classFilter.html">Filter</a></td><td><code> [static]</code></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>off</b> enum value (defined in <a class="el" href="classFilter.html">Filter</a>)</td><td><a class="el" href="classFilter.html">Filter</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>on</b> enum value (defined in <a class="el" href="classFilter.html">Filter</a>)</td><td><a class="el" href="classFilter.html">Filter</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilter.html#8a623e7594c98dc82c711b1cf6c7ba3c">readOptions</a>(KConfig *config)</td><td><a class="el" href="classFilter.html">Filter</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilter.html#f7df8eed305a70107437c61ab6a328d6">saveOptions</a>(KConfig *config)</td><td><a class="el" href="classFilter.html">Filter</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilter.html#502ee334d42eac3edbaf32b599f9c35e">~Filter</a>()</td><td><a class="el" href="classFilter.html">Filter</a></td><td><code> [private]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilter.html b/doc/html/classFilter.html
new file mode 100644
index 0000000..30d435b
--- /dev/null
+++ b/doc/html/classFilter.html
@@ -0,0 +1,67 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Filter Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>Filter Class Reference</h1><!-- doxytag: class="Filter" --><a href="classFilter-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilter.html#829a8d1a39c82631bfa096afb6102a6a">filterStatus</a> { <b>off</b>,
+<b>on</b>,
+<b>automatic</b>
+ }</td></tr>
+
+<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1092aa06ff29a9c2adceadde9d4891f3"></a><!-- doxytag: member="Filter::matches" ref="1092aa06ff29a9c2adceadde9d4891f3" args="(ShowRecordElem *)" -->
+static <a class="el" href="classFilterElem.html">FilterElem</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilter.html#1092aa06ff29a9c2adceadde9d4891f3">matches</a> (<a class="el" href="classShowRecordElem.html">ShowRecordElem</a> *)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8a623e7594c98dc82c711b1cf6c7ba3c"></a><!-- doxytag: member="Filter::readOptions" ref="8a623e7594c98dc82c711b1cf6c7ba3c" args="(KConfig *config)" -->
+static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilter.html#8a623e7594c98dc82c711b1cf6c7ba3c">readOptions</a> (KConfig *config)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f7df8eed305a70107437c61ab6a328d6"></a><!-- doxytag: member="Filter::saveOptions" ref="f7df8eed305a70107437c61ab6a328d6" args="(KConfig *config)" -->
+static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilter.html#f7df8eed305a70107437c61ab6a328d6">saveOptions</a> (KConfig *config)</td></tr>
+
+<tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4d53518cda0abbbb6ca6badd97bb321a"></a><!-- doxytag: member="Filter::_filter" ref="4d53518cda0abbbb6ca6badd97bb321a" args="" -->
+static <a class="el" href="classFilterList.html">FilterList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilter.html#4d53518cda0abbbb6ca6badd97bb321a">_filter</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="13f81ff1452d6cdc1076393813163df5"></a><!-- doxytag: member="Filter::_status" ref="13f81ff1452d6cdc1076393813163df5" args="" -->
+static <a class="el" href="classFilter.html#829a8d1a39c82631bfa096afb6102a6a">filterStatus</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">_status</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d15994c30d497afd567a6445446a249e"></a><!-- doxytag: member="Filter::Filter" ref="d15994c30d497afd567a6445446a249e" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilter.html#d15994c30d497afd567a6445446a249e">Filter</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="502ee334d42eac3edbaf32b599f9c35e"></a><!-- doxytag: member="Filter::~Filter" ref="502ee334d42eac3edbaf32b599f9c35e" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilter.html#502ee334d42eac3edbaf32b599f9c35e">~Filter</a> ()</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="filter_8h-source.html#l00034">34</a> of file <a class="el" href="filter_8h-source.html">filter.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="filter_8h-source.html">filter.h</a><li>kshowmail/<a class="el" href="filter_8cpp-source.html">filter.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterDialog-members.html b/doc/html/classFilterDialog-members.html
new file mode 100644
index 0000000..d9f7eed
--- /dev/null
+++ b/doc/html/classFilterDialog-members.html
@@ -0,0 +1,58 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterDialog Member List</h1>This is the complete list of members for <a class="el" href="classFilterDialog.html">FilterDialog</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#e50d1c38d769025e506e49b30232eb30">_buttonCancel</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#d987eb9d40d5286157e5f85a218d34b6">_buttonOk</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a></td><td><a class="el" href="classFilterDialog.html">FilterDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">_radioAuto</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#581adf266ac543c6859522ebb4c01378">_radioOff</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#9c5bb9702a4cc705de623898e3328e76">_radioOn</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#301a5cf1674a4302639d74f0c1aa0d28">buttonGroup1Layout</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDialog.html#b18a98f30157bf485fba9af7cc2084e9">FilterDialog</a>(QWidget *parent=0, const char *name=0)</td><td><a class="el" href="classFilterDialog.html">FilterDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#b3d673e89d2ec101b0224796624deb18">FilterDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#a239a88e6ccce2b0362e84af28f6d99d">FilterDlgLayout</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#89ab6a78b02f47b5c1cb0d0ae505101b">languageChange</a>()</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#2677d339dadc77d10ac703d2e6feaf4c">Layout6</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#9689f90e362266e0e27c8193b6b0ddcd">QGroupBox_1Layout</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDialog.html#835b1d2b6e96708721781caf207332da">slotAdd</a>()</td><td><a class="el" href="classFilterDialog.html">FilterDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDialog.html#ffc657f27a12b95497e85f59bdcbaa4e">slotAutomaticActivated</a>()</td><td><a class="el" href="classFilterDialog.html">FilterDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDialog.html#48fa2c908dad65fe5cb851a8b0384af8">slotCopy</a>()</td><td><a class="el" href="classFilterDialog.html">FilterDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDialog.html#304365c7bed8c9311cd9d0fcb956f9e2">slotDelete</a>()</td><td><a class="el" href="classFilterDialog.html">FilterDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDialog.html#157304d8ac83796d8e6099575995a417">slotEdit</a>()</td><td><a class="el" href="classFilterDialog.html">FilterDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDialog.html#caeb4cc7992b9859693fe1d00e657b7d">slotFilterActivated</a>(int)</td><td><a class="el" href="classFilterDialog.html">FilterDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDialog.html#037dd38c75aa6a5db083dab42bc9a0b4">slotOk</a>()</td><td><a class="el" href="classFilterDialog.html">FilterDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#c1e238a1dd214e2cd82be5d8ef90564d">Spacer11</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDialog.html#021f1e42fa83fd2914aace2b3fcbcf62">~FilterDialog</a>()</td><td><a class="el" href="classFilterDialog.html">FilterDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#fd1a9b90d89f6969633df9607e761704">~FilterDlg</a>()</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterDialog.html b/doc/html/classFilterDialog.html
new file mode 100644
index 0000000..240836e
--- /dev/null
+++ b/doc/html/classFilterDialog.html
@@ -0,0 +1,78 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: FilterDialog Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterDialog Class Reference</h1><!-- doxytag: class="FilterDialog" --><!-- doxytag: inherits="FilterDlg" --><code>#include &lt;<a class="el" href="filterdialog_8h-source.html">filterdialog.h</a>&gt;</code>
+<p>
+<p>Inheritance diagram for FilterDialog:
+<p><center><img src="classFilterDialog.png" usemap="#FilterDialog_map" border="0" alt=""></center>
+<map name="FilterDialog_map">
+<area href="classFilterDlg.html" alt="FilterDlg" shape="rect" coords="0,0,77,24">
+</map>
+<a href="classFilterDialog-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="835b1d2b6e96708721781caf207332da"></a><!-- doxytag: member="FilterDialog::slotAdd" ref="835b1d2b6e96708721781caf207332da" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDialog.html#835b1d2b6e96708721781caf207332da">slotAdd</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="157304d8ac83796d8e6099575995a417"></a><!-- doxytag: member="FilterDialog::slotEdit" ref="157304d8ac83796d8e6099575995a417" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDialog.html#157304d8ac83796d8e6099575995a417">slotEdit</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="48fa2c908dad65fe5cb851a8b0384af8"></a><!-- doxytag: member="FilterDialog::slotCopy" ref="48fa2c908dad65fe5cb851a8b0384af8" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDialog.html#48fa2c908dad65fe5cb851a8b0384af8">slotCopy</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="304365c7bed8c9311cd9d0fcb956f9e2"></a><!-- doxytag: member="FilterDialog::slotDelete" ref="304365c7bed8c9311cd9d0fcb956f9e2" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDialog.html#304365c7bed8c9311cd9d0fcb956f9e2">slotDelete</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="037dd38c75aa6a5db083dab42bc9a0b4"></a><!-- doxytag: member="FilterDialog::slotOk" ref="037dd38c75aa6a5db083dab42bc9a0b4" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDialog.html#037dd38c75aa6a5db083dab42bc9a0b4">slotOk</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="caeb4cc7992b9859693fe1d00e657b7d"></a><!-- doxytag: member="FilterDialog::slotFilterActivated" ref="caeb4cc7992b9859693fe1d00e657b7d" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDialog.html#caeb4cc7992b9859693fe1d00e657b7d">slotFilterActivated</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ffc657f27a12b95497e85f59bdcbaa4e"></a><!-- doxytag: member="FilterDialog::slotAutomaticActivated" ref="ffc657f27a12b95497e85f59bdcbaa4e" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDialog.html#ffc657f27a12b95497e85f59bdcbaa4e">slotAutomaticActivated</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b18a98f30157bf485fba9af7cc2084e9"></a><!-- doxytag: member="FilterDialog::FilterDialog" ref="b18a98f30157bf485fba9af7cc2084e9" args="(QWidget *parent=0, const char *name=0)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDialog.html#b18a98f30157bf485fba9af7cc2084e9">FilterDialog</a> (QWidget *parent=0, const char *name=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="021f1e42fa83fd2914aace2b3fcbcf62"></a><!-- doxytag: member="FilterDialog::~FilterDialog" ref="021f1e42fa83fd2914aace2b3fcbcf62" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDialog.html#021f1e42fa83fd2914aace2b3fcbcf62">~FilterDialog</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f51f93ed33359ba108e81e98ca68ce9f"></a><!-- doxytag: member="FilterDialog::_filters" ref="f51f93ed33359ba108e81e98ca68ce9f" args="" -->
+<a class="el" href="classFilterList.html">FilterList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke </dd></dl>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="filterdialog_8h-source.html#l00031">31</a> of file <a class="el" href="filterdialog_8h-source.html">filterdialog.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="filterdialog_8h-source.html">filterdialog.h</a><li>kshowmail/<a class="el" href="filterdialog_8cpp-source.html">filterdialog.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterDialog.png b/doc/html/classFilterDialog.png
new file mode 100644
index 0000000..24b20e3
--- /dev/null
+++ b/doc/html/classFilterDialog.png
Binary files differ
diff --git a/doc/html/classFilterDlg-members.html b/doc/html/classFilterDlg-members.html
new file mode 100644
index 0000000..8767d66
--- /dev/null
+++ b/doc/html/classFilterDlg-members.html
@@ -0,0 +1,55 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterDlg Member List</h1>This is the complete list of members for <a class="el" href="classFilterDlg.html">FilterDlg</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#e50d1c38d769025e506e49b30232eb30">_buttonCancel</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#d987eb9d40d5286157e5f85a218d34b6">_buttonOk</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">_radioAuto</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#581adf266ac543c6859522ebb4c01378">_radioOff</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#9c5bb9702a4cc705de623898e3328e76">_radioOn</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#301a5cf1674a4302639d74f0c1aa0d28">buttonGroup1Layout</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#b3d673e89d2ec101b0224796624deb18">FilterDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#a239a88e6ccce2b0362e84af28f6d99d">FilterDlgLayout</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#89ab6a78b02f47b5c1cb0d0ae505101b">languageChange</a>()</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#2677d339dadc77d10ac703d2e6feaf4c">Layout6</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#9689f90e362266e0e27c8193b6b0ddcd">QGroupBox_1Layout</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#6153217102f046b8025d293be7cf924a">slotAdd</a>()</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#55e7c3f2045044d68605f8630f897660">slotAutomaticActivated</a>()</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#2800cdf7ab7a60b28e91610f0de005cf">slotCopy</a>()</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#9b2add471297c225a39966f9cb216691">slotDelete</a>()</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#9237a759ed12680d8ecc815c870734d7">slotEdit</a>()</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#54f9810702c707f67112b0df89cf2c04">slotFilterActivated</a>(int)</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#5010987e35d441d034610107fd2c7c0f">slotOk</a>()</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#c1e238a1dd214e2cd82be5d8ef90564d">Spacer11</a></td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterDlg.html#fd1a9b90d89f6969633df9607e761704">~FilterDlg</a>()</td><td><a class="el" href="classFilterDlg.html">FilterDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterDlg.html b/doc/html/classFilterDlg.html
new file mode 100644
index 0000000..e1da3d2
--- /dev/null
+++ b/doc/html/classFilterDlg.html
@@ -0,0 +1,128 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: FilterDlg Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterDlg Class Reference</h1><!-- doxytag: class="FilterDlg" --><p>Inheritance diagram for FilterDlg:
+<p><center><img src="classFilterDlg.png" usemap="#FilterDlg_map" border="0" alt=""></center>
+<map name="FilterDlg_map">
+<area href="classFilterDialog.html" alt="FilterDialog" shape="rect" coords="0,56,77,80">
+</map>
+<a href="classFilterDlg-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6153217102f046b8025d293be7cf924a"></a><!-- doxytag: member="FilterDlg::slotAdd" ref="6153217102f046b8025d293be7cf924a" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#6153217102f046b8025d293be7cf924a">slotAdd</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2800cdf7ab7a60b28e91610f0de005cf"></a><!-- doxytag: member="FilterDlg::slotCopy" ref="2800cdf7ab7a60b28e91610f0de005cf" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#2800cdf7ab7a60b28e91610f0de005cf">slotCopy</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9b2add471297c225a39966f9cb216691"></a><!-- doxytag: member="FilterDlg::slotDelete" ref="9b2add471297c225a39966f9cb216691" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#9b2add471297c225a39966f9cb216691">slotDelete</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9237a759ed12680d8ecc815c870734d7"></a><!-- doxytag: member="FilterDlg::slotEdit" ref="9237a759ed12680d8ecc815c870734d7" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#9237a759ed12680d8ecc815c870734d7">slotEdit</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5010987e35d441d034610107fd2c7c0f"></a><!-- doxytag: member="FilterDlg::slotOk" ref="5010987e35d441d034610107fd2c7c0f" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#5010987e35d441d034610107fd2c7c0f">slotOk</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="54f9810702c707f67112b0df89cf2c04"></a><!-- doxytag: member="FilterDlg::slotFilterActivated" ref="54f9810702c707f67112b0df89cf2c04" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#54f9810702c707f67112b0df89cf2c04">slotFilterActivated</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="55e7c3f2045044d68605f8630f897660"></a><!-- doxytag: member="FilterDlg::slotAutomaticActivated" ref="55e7c3f2045044d68605f8630f897660" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#55e7c3f2045044d68605f8630f897660">slotAutomaticActivated</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b3d673e89d2ec101b0224796624deb18"></a><!-- doxytag: member="FilterDlg::FilterDlg" ref="b3d673e89d2ec101b0224796624deb18" args="(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#b3d673e89d2ec101b0224796624deb18">FilterDlg</a> (QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fd1a9b90d89f6969633df9607e761704"></a><!-- doxytag: member="FilterDlg::~FilterDlg" ref="fd1a9b90d89f6969633df9607e761704" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#fd1a9b90d89f6969633df9607e761704">~FilterDlg</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d987eb9d40d5286157e5f85a218d34b6"></a><!-- doxytag: member="FilterDlg::_buttonOk" ref="d987eb9d40d5286157e5f85a218d34b6" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#d987eb9d40d5286157e5f85a218d34b6">_buttonOk</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e50d1c38d769025e506e49b30232eb30"></a><!-- doxytag: member="FilterDlg::_buttonCancel" ref="e50d1c38d769025e506e49b30232eb30" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#e50d1c38d769025e506e49b30232eb30">_buttonCancel</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c1d958ab2478e54011dfa62438c609a3"></a><!-- doxytag: member="FilterDlg::buttonGroup1" ref="c1d958ab2478e54011dfa62438c609a3" args="" -->
+QButtonGroup *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#c1d958ab2478e54011dfa62438c609a3">buttonGroup1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="581adf266ac543c6859522ebb4c01378"></a><!-- doxytag: member="FilterDlg::_radioOff" ref="581adf266ac543c6859522ebb4c01378" args="" -->
+QRadioButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#581adf266ac543c6859522ebb4c01378">_radioOff</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9c5bb9702a4cc705de623898e3328e76"></a><!-- doxytag: member="FilterDlg::_radioOn" ref="9c5bb9702a4cc705de623898e3328e76" args="" -->
+QRadioButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#9c5bb9702a4cc705de623898e3328e76">_radioOn</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8abe86382756a03f58267a0b98bb975a"></a><!-- doxytag: member="FilterDlg::_radioAuto" ref="8abe86382756a03f58267a0b98bb975a" args="" -->
+QRadioButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">_radioAuto</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="28e7c0c7d110f9536c11386f6c96eabe"></a><!-- doxytag: member="FilterDlg::QGroupBox_1" ref="28e7c0c7d110f9536c11386f6c96eabe" args="" -->
+QGroupBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#28e7c0c7d110f9536c11386f6c96eabe">QGroupBox_1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8d14bf57a0a9a0fd6b9993a2e70010de"></a><!-- doxytag: member="FilterDlg::_comboFilter" ref="8d14bf57a0a9a0fd6b9993a2e70010de" args="" -->
+QComboBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fd9b392bb3dd8d874c188238693e37d8"></a><!-- doxytag: member="FilterDlg::_buttonAdd" ref="fd9b392bb3dd8d874c188238693e37d8" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#fd9b392bb3dd8d874c188238693e37d8">_buttonAdd</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="985b8957333a21eb1ce7b756c9f7b65b"></a><!-- doxytag: member="FilterDlg::_buttonEdit" ref="985b8957333a21eb1ce7b756c9f7b65b" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#985b8957333a21eb1ce7b756c9f7b65b">_buttonEdit</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="46f7d857db3a983b85affeaa4b56a873"></a><!-- doxytag: member="FilterDlg::_buttonCopy" ref="46f7d857db3a983b85affeaa4b56a873" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#46f7d857db3a983b85affeaa4b56a873">_buttonCopy</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="28450909de8f6a3ab33a5f1bf80a4567"></a><!-- doxytag: member="FilterDlg::_buttonDelete" ref="28450909de8f6a3ab33a5f1bf80a4567" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#28450909de8f6a3ab33a5f1bf80a4567">_buttonDelete</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="89ab6a78b02f47b5c1cb0d0ae505101b"></a><!-- doxytag: member="FilterDlg::languageChange" ref="89ab6a78b02f47b5c1cb0d0ae505101b" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#89ab6a78b02f47b5c1cb0d0ae505101b">languageChange</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a239a88e6ccce2b0362e84af28f6d99d"></a><!-- doxytag: member="FilterDlg::FilterDlgLayout" ref="a239a88e6ccce2b0362e84af28f6d99d" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#a239a88e6ccce2b0362e84af28f6d99d">FilterDlgLayout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2677d339dadc77d10ac703d2e6feaf4c"></a><!-- doxytag: member="FilterDlg::Layout6" ref="2677d339dadc77d10ac703d2e6feaf4c" args="" -->
+QHBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#2677d339dadc77d10ac703d2e6feaf4c">Layout6</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c1e238a1dd214e2cd82be5d8ef90564d"></a><!-- doxytag: member="FilterDlg::Spacer11" ref="c1e238a1dd214e2cd82be5d8ef90564d" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#c1e238a1dd214e2cd82be5d8ef90564d">Spacer11</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="301a5cf1674a4302639d74f0c1aa0d28"></a><!-- doxytag: member="FilterDlg::buttonGroup1Layout" ref="301a5cf1674a4302639d74f0c1aa0d28" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#301a5cf1674a4302639d74f0c1aa0d28">buttonGroup1Layout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9689f90e362266e0e27c8193b6b0ddcd"></a><!-- doxytag: member="FilterDlg::QGroupBox_1Layout" ref="9689f90e362266e0e27c8193b6b0ddcd" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterDlg.html#9689f90e362266e0e27c8193b6b0ddcd">QGroupBox_1Layout</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="FilterDlg_8h-source.html#l00026">26</a> of file <a class="el" href="FilterDlg_8h-source.html">FilterDlg.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="FilterDlg_8h-source.html">FilterDlg.h</a><li>kshowmail/<a class="el" href="FilterDlg_8cpp-source.html">FilterDlg.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterDlg.png b/doc/html/classFilterDlg.png
new file mode 100644
index 0000000..1bff8a5
--- /dev/null
+++ b/doc/html/classFilterDlg.png
Binary files differ
diff --git a/doc/html/classFilterElem-members.html b/doc/html/classFilterElem-members.html
new file mode 100644
index 0000000..24039ee
--- /dev/null
+++ b/doc/html/classFilterElem-members.html
@@ -0,0 +1,46 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterElem Member List</h1>This is the complete list of members for <a class="el" href="classFilterElem.html">FilterElem</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#2e417fd43d30ac8ce2d417f818b37a42">_counter</a></td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a></td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a></td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#91c7d695c13e14fd53b74f01ed082679">_secondCondition</a></td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>condAnd</b> enum value (defined in <a class="el" href="classFilterElem.html">FilterElem</a>)</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>condOr</b> enum value (defined in <a class="el" href="classFilterElem.html">FilterElem</a>)</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#698d996b7fd2b6df65b49be93f43d1e6">FilterElem</a>()</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#de53fe769758b2eba5c053de670ef14f">FilterElem</a>(const FilterRecord &amp;)</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#95c8db56c3e637ae4b68fa9aa27bdbb3">FilterElem</a>(const FilterElem &amp;)</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#911373fc7c641be784ff8d258afb369d">getCounter</a>()</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#d33b35168ea3075ecee564c17e39b749">incCounter</a>()</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#23b386b3041ad1acc7069eac6b59203f">matches</a>(ShowRecordElem *)</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>noSecondCondition</b> enum value (defined in <a class="el" href="classFilterElem.html">FilterElem</a>)</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">secondCondition</a> enum name</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#032bde919691a3b2813f0d70b661f98a">setCounter</a>(unsigned int number)</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#e8ee6b5b370ed5c092e43f7090c0d75f">setSecondCondition</a>(secondCondition scnd, const FilterRecord &amp;)</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>() const</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterElem.html#c0bb85bbedfcb29b44f6146d7ebf34ec">~FilterElem</a>()</td><td><a class="el" href="classFilterElem.html">FilterElem</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterElem.html b/doc/html/classFilterElem.html
new file mode 100644
index 0000000..6e96266
--- /dev/null
+++ b/doc/html/classFilterElem.html
@@ -0,0 +1,185 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: FilterElem Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterElem Class Reference</h1><!-- doxytag: class="FilterElem" --><a href="classFilterElem-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">secondCondition</a> { <b>noSecondCondition</b>,
+<b>condAnd</b>,
+<b>condOr</b>
+ }</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="698d996b7fd2b6df65b49be93f43d1e6"></a><!-- doxytag: member="FilterElem::FilterElem" ref="698d996b7fd2b6df65b49be93f43d1e6" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#698d996b7fd2b6df65b49be93f43d1e6">FilterElem</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="de53fe769758b2eba5c053de670ef14f"></a><!-- doxytag: member="FilterElem::FilterElem" ref="de53fe769758b2eba5c053de670ef14f" args="(const FilterRecord &amp;)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#de53fe769758b2eba5c053de670ef14f">FilterElem</a> (const <a class="el" href="classFilterRecord.html">FilterRecord</a> &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="95c8db56c3e637ae4b68fa9aa27bdbb3"></a><!-- doxytag: member="FilterElem::FilterElem" ref="95c8db56c3e637ae4b68fa9aa27bdbb3" args="(const FilterElem &amp;)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#95c8db56c3e637ae4b68fa9aa27bdbb3">FilterElem</a> (const <a class="el" href="classFilterElem.html">FilterElem</a> &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e8ee6b5b370ed5c092e43f7090c0d75f"></a><!-- doxytag: member="FilterElem::setSecondCondition" ref="e8ee6b5b370ed5c092e43f7090c0d75f" args="(secondCondition scnd, const FilterRecord &amp;)" -->
+void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#e8ee6b5b370ed5c092e43f7090c0d75f">setSecondCondition</a> (<a class="el" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">secondCondition</a> scnd, const <a class="el" href="classFilterRecord.html">FilterRecord</a> &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c0bb85bbedfcb29b44f6146d7ebf34ec"></a><!-- doxytag: member="FilterElem::~FilterElem" ref="c0bb85bbedfcb29b44f6146d7ebf34ec" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#c0bb85bbedfcb29b44f6146d7ebf34ec">~FilterElem</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="252af203fd2bf1784359034c73a7f6c8"></a><!-- doxytag: member="FilterElem::toString" ref="252af203fd2bf1784359034c73a7f6c8" args="() const" -->
+QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="23b386b3041ad1acc7069eac6b59203f"></a><!-- doxytag: member="FilterElem::matches" ref="23b386b3041ad1acc7069eac6b59203f" args="(ShowRecordElem *)" -->
+bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#23b386b3041ad1acc7069eac6b59203f">matches</a> (<a class="el" href="classShowRecordElem.html">ShowRecordElem</a> *)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#911373fc7c641be784ff8d258afb369d">getCounter</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#032bde919691a3b2813f0d70b661f98a">setCounter</a> (unsigned int number)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#d33b35168ea3075ecee564c17e39b749">incCounter</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0dc9e7d0ab4a85f5426f091eb459565"></a><!-- doxytag: member="FilterElem::_filter1" ref="a0dc9e7d0ab4a85f5426f091eb459565" args="" -->
+<a class="el" href="classFilterRecord.html">FilterRecord</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e872e95b54e1af0c6773c92cec688020"></a><!-- doxytag: member="FilterElem::_filter2" ref="e872e95b54e1af0c6773c92cec688020" args="" -->
+<a class="el" href="classFilterRecord.html">FilterRecord</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="91c7d695c13e14fd53b74f01ed082679"></a><!-- doxytag: member="FilterElem::_secondCondition" ref="91c7d695c13e14fd53b74f01ed082679" args="" -->
+<a class="el" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">secondCondition</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#91c7d695c13e14fd53b74f01ed082679">_secondCondition</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterElem.html#2e417fd43d30ac8ce2d417f818b37a42">_counter</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="filterelem_8h-source.html#l00048">48</a> of file <a class="el" href="filterelem_8h-source.html">filterelem.h</a>.<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="911373fc7c641be784ff8d258afb369d"></a><!-- doxytag: member="FilterElem::getCounter" ref="911373fc7c641be784ff8d258afb369d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned int FilterElem::getCounter </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the number of mail deletions which was caused by this filter. <dl class="return" compact><dt><b>Returns:</b></dt><dd>number of deleted mails </dd></dl>
+
+<p>
+Definition at line <a class="el" href="filterelem_8cpp-source.html#l00289">289</a> of file <a class="el" href="filterelem_8cpp-source.html">filterelem.cpp</a>.
+<p>
+References <a class="el" href="filterelem_8h-source.html#l00090">_counter</a>.
+<p>
+Referenced by <a class="el" href="filterlist_8cpp-source.html#l00061">FilterList::compareItems()</a>, and <a class="el" href="filterentrydialog_8cpp-source.html#l00036">FilterEntryDialog::FilterEntryDialog()</a>.
+</div>
+</div><p>
+<a class="anchor" name="032bde919691a3b2813f0d70b661f98a"></a><!-- doxytag: member="FilterElem::setCounter" ref="032bde919691a3b2813f0d70b661f98a" args="(unsigned int number)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void FilterElem::setCounter </td>
+ <td>(</td>
+ <td class="paramtype">unsigned int&nbsp;</td>
+ <td class="paramname"> <em>number</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the deleted mail counter. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>number of mail deletions caused by this filter </td></tr>
+ </table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="filterelem_8cpp-source.html#l00299">299</a> of file <a class="el" href="filterelem_8cpp-source.html">filterelem.cpp</a>.
+<p>
+References <a class="el" href="filterelem_8h-source.html#l00090">_counter</a>.
+<p>
+Referenced by <a class="el" href="filterlist_8cpp-source.html#l00082">FilterList::readOptions()</a>, and <a class="el" href="filterentrydialog_8cpp-source.html#l00198">FilterEntryDialog::slotCounterChanged()</a>.
+</div>
+</div><p>
+<a class="anchor" name="d33b35168ea3075ecee564c17e39b749"></a><!-- doxytag: member="FilterElem::incCounter" ref="d33b35168ea3075ecee564c17e39b749" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void FilterElem::incCounter </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Increments the deleted mail counter.
+<p>
+Definition at line <a class="el" href="filterelem_8cpp-source.html#l00294">294</a> of file <a class="el" href="filterelem_8cpp-source.html">filterelem.cpp</a>.
+<p>
+References <a class="el" href="filterelem_8h-source.html#l00090">_counter</a>.
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="2e417fd43d30ac8ce2d417f818b37a42"></a><!-- doxytag: member="FilterElem::_counter" ref="2e417fd43d30ac8ce2d417f818b37a42" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned int <a class="el" href="classFilterElem.html#2e417fd43d30ac8ce2d417f818b37a42">FilterElem::_counter</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Number of mails its deletion was caused by this filter.
+<p>
+Definition at line <a class="el" href="filterelem_8h-source.html#l00090">90</a> of file <a class="el" href="filterelem_8h-source.html">filterelem.h</a>.
+<p>
+Referenced by <a class="el" href="filterelem_8cpp-source.html#l00289">getCounter()</a>, <a class="el" href="filterelem_8cpp-source.html#l00294">incCounter()</a>, <a class="el" href="filterelem_8cpp-source.html#l00299">setCounter()</a>, and <a class="el" href="filterelem_8cpp-source.html#l00112">toString()</a>.
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="filterelem_8h-source.html">filterelem.h</a><li>kshowmail/<a class="el" href="filterelem_8cpp-source.html">filterelem.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterEntryDialog-members.html b/doc/html/classFilterEntryDialog-members.html
new file mode 100644
index 0000000..e6644ec
--- /dev/null
+++ b/doc/html/classFilterEntryDialog-members.html
@@ -0,0 +1,77 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterEntryDialog Member List</h1>This is the complete list of members for <a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">_buttonEditRegExp1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">_buttonEditRegExp2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#d798b24cd1ba45d07060cd195913975b">_buttonResetCounter</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#21d063a47d1c8dc6d2f1387e36dc0e29">_checkCaseSensitive1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#7bb75b57a7e6026de7a729d3c3e00eb5">_checkCaseSensitive2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#b484e56fe6fd6fa210ac549e17dac0c3">_checkRegExp1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#b9f3d81d53edd0c0dbae49810b8a70cb">_checkRegExp2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a></td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#efe66d0f49d6a04c504811c048317195">_spinCounter</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#8afdfaa4c1f8c87fe62d0539362d4096">FilterEntryDialog</a>(QWidget *parent, const char *name, FilterElem *elem)</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#1004374888df731e496fa55652f85cc8">FilterEntryDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#2b727644e2fcbecf1b0242531d13d8e2">FilterEntryDlgLayout</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#3c133eaa09b66636dd31b18d5f66e699">groupBox3Layout</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#5724b2b390362ebab6b38d3f99ac689c">languageChange</a>()</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#63750302bdc8c80e1c5a39502d51231d">Layout11</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#fcec9c8c312b2830616c2de12f0c8355">m_ButtonCancel</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#02b245962b1424e9294d6bf8442a4b38">m_ButtonOk</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#d1b8e6ad082b138b40d603600619880e">slotCondition1Selected</a>(int)</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#fef2a5891f1c85fdd64316617475efc4">slotCondition2Selected</a>(int)</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#b18666f342aa81585cfc5a9cfb45eeaf">slotCounterChanged</a>(int)</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#fb51ce872b6f69e25d69ae885bdbda35">slotEditRegExp1</a>()</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#cfcf731be60a186c0fe4f9033efee9bc">slotEditRegExp2</a>()</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#9090b80ae92e98a8e9bbe7286eaba31f">slotItem1Selected</a>(int)</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#06db22e10498d15b0522482f64b1bb2e">slotItem2Selected</a>(int)</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#598df103af53b46357e7f5b72ca56989">slotMatch1Changed</a>(const QString &amp;)</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#fa9fdfabc86df022db4359efe31e8d8f">slotMatch2Changed</a>(const QString &amp;)</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#f3998b74a965c468fd402a1fb6a2119a">slotOk</a>()</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#9b6e94a93facdc06f6c64ef2590a8160">slotResetCounter</a>()</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#cb27cf3391fbaa0c98248029da8c9d85">slotSecondCondition</a>(int)</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#1ff4443376696447597710971eb497bb">slotToggleRegExp1</a>(bool)</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#8a846edd8d8d1d25c475346ecf747d64">slotToggleRegExp2</a>(bool)</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#cb2a000ac6cfa82b1761b18a659381a7">Spacer17</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#c3575c94fc0110ad322996f9106adfbd">spacer2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#af5dc4eb354581e010c723e889d3853b">spacer3</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDialog.html#4bd7012e9db9522d88b3d608ec8906d1">~FilterEntryDialog</a>()</td><td><a class="el" href="classFilterEntryDialog.html">FilterEntryDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#4ae287b415afeba0a50ea57eb4fe83e2">~FilterEntryDlg</a>()</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterEntryDialog.html b/doc/html/classFilterEntryDialog.html
new file mode 100644
index 0000000..57c19ca
--- /dev/null
+++ b/doc/html/classFilterEntryDialog.html
@@ -0,0 +1,99 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: FilterEntryDialog Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterEntryDialog Class Reference</h1><!-- doxytag: class="FilterEntryDialog" --><!-- doxytag: inherits="FilterEntryDlg" --><code>#include &lt;<a class="el" href="filterentrydialog_8h-source.html">filterentrydialog.h</a>&gt;</code>
+<p>
+<p>Inheritance diagram for FilterEntryDialog:
+<p><center><img src="classFilterEntryDialog.png" usemap="#FilterEntryDialog_map" border="0" alt=""></center>
+<map name="FilterEntryDialog_map">
+<area href="classFilterEntryDlg.html" alt="FilterEntryDlg" shape="rect" coords="0,0,107,24">
+</map>
+<a href="classFilterEntryDialog-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f3998b74a965c468fd402a1fb6a2119a"></a><!-- doxytag: member="FilterEntryDialog::slotOk" ref="f3998b74a965c468fd402a1fb6a2119a" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#f3998b74a965c468fd402a1fb6a2119a">slotOk</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9090b80ae92e98a8e9bbe7286eaba31f"></a><!-- doxytag: member="FilterEntryDialog::slotItem1Selected" ref="9090b80ae92e98a8e9bbe7286eaba31f" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#9090b80ae92e98a8e9bbe7286eaba31f">slotItem1Selected</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="06db22e10498d15b0522482f64b1bb2e"></a><!-- doxytag: member="FilterEntryDialog::slotItem2Selected" ref="06db22e10498d15b0522482f64b1bb2e" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#06db22e10498d15b0522482f64b1bb2e">slotItem2Selected</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cb27cf3391fbaa0c98248029da8c9d85"></a><!-- doxytag: member="FilterEntryDialog::slotSecondCondition" ref="cb27cf3391fbaa0c98248029da8c9d85" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#cb27cf3391fbaa0c98248029da8c9d85">slotSecondCondition</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d1b8e6ad082b138b40d603600619880e"></a><!-- doxytag: member="FilterEntryDialog::slotCondition1Selected" ref="d1b8e6ad082b138b40d603600619880e" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#d1b8e6ad082b138b40d603600619880e">slotCondition1Selected</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fef2a5891f1c85fdd64316617475efc4"></a><!-- doxytag: member="FilterEntryDialog::slotCondition2Selected" ref="fef2a5891f1c85fdd64316617475efc4" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#fef2a5891f1c85fdd64316617475efc4">slotCondition2Selected</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="598df103af53b46357e7f5b72ca56989"></a><!-- doxytag: member="FilterEntryDialog::slotMatch1Changed" ref="598df103af53b46357e7f5b72ca56989" args="(const QString &amp;)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#598df103af53b46357e7f5b72ca56989">slotMatch1Changed</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fa9fdfabc86df022db4359efe31e8d8f"></a><!-- doxytag: member="FilterEntryDialog::slotMatch2Changed" ref="fa9fdfabc86df022db4359efe31e8d8f" args="(const QString &amp;)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#fa9fdfabc86df022db4359efe31e8d8f">slotMatch2Changed</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9b6e94a93facdc06f6c64ef2590a8160"></a><!-- doxytag: member="FilterEntryDialog::slotResetCounter" ref="9b6e94a93facdc06f6c64ef2590a8160" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#9b6e94a93facdc06f6c64ef2590a8160">slotResetCounter</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b18666f342aa81585cfc5a9cfb45eeaf"></a><!-- doxytag: member="FilterEntryDialog::slotCounterChanged" ref="b18666f342aa81585cfc5a9cfb45eeaf" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#b18666f342aa81585cfc5a9cfb45eeaf">slotCounterChanged</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fb51ce872b6f69e25d69ae885bdbda35"></a><!-- doxytag: member="FilterEntryDialog::slotEditRegExp1" ref="fb51ce872b6f69e25d69ae885bdbda35" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#fb51ce872b6f69e25d69ae885bdbda35">slotEditRegExp1</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cfcf731be60a186c0fe4f9033efee9bc"></a><!-- doxytag: member="FilterEntryDialog::slotEditRegExp2" ref="cfcf731be60a186c0fe4f9033efee9bc" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#cfcf731be60a186c0fe4f9033efee9bc">slotEditRegExp2</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1ff4443376696447597710971eb497bb"></a><!-- doxytag: member="FilterEntryDialog::slotToggleRegExp1" ref="1ff4443376696447597710971eb497bb" args="(bool)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#1ff4443376696447597710971eb497bb">slotToggleRegExp1</a> (bool)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8a846edd8d8d1d25c475346ecf747d64"></a><!-- doxytag: member="FilterEntryDialog::slotToggleRegExp2" ref="8a846edd8d8d1d25c475346ecf747d64" args="(bool)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#8a846edd8d8d1d25c475346ecf747d64">slotToggleRegExp2</a> (bool)</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8afdfaa4c1f8c87fe62d0539362d4096"></a><!-- doxytag: member="FilterEntryDialog::FilterEntryDialog" ref="8afdfaa4c1f8c87fe62d0539362d4096" args="(QWidget *parent, const char *name, FilterElem *elem)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#8afdfaa4c1f8c87fe62d0539362d4096">FilterEntryDialog</a> (QWidget *parent, const char *name, <a class="el" href="classFilterElem.html">FilterElem</a> *elem)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4bd7012e9db9522d88b3d608ec8906d1"></a><!-- doxytag: member="FilterEntryDialog::~FilterEntryDialog" ref="4bd7012e9db9522d88b3d608ec8906d1" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#4bd7012e9db9522d88b3d608ec8906d1">~FilterEntryDialog</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9d49564214ed9c9c7ee9be3b2983cca8"></a><!-- doxytag: member="FilterEntryDialog::_elem" ref="9d49564214ed9c9c7ee9be3b2983cca8" args="" -->
+<a class="el" href="classFilterElem.html">FilterElem</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke </dd></dl>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="filterentrydialog_8h-source.html#l00029">29</a> of file <a class="el" href="filterentrydialog_8h-source.html">filterentrydialog.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="filterentrydialog_8h-source.html">filterentrydialog.h</a><li>kshowmail/<a class="el" href="filterentrydialog_8cpp-source.html">filterentrydialog.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterEntryDialog.png b/doc/html/classFilterEntryDialog.png
new file mode 100644
index 0000000..83546bb
--- /dev/null
+++ b/doc/html/classFilterEntryDialog.png
Binary files differ
diff --git a/doc/html/classFilterEntryDlg-members.html b/doc/html/classFilterEntryDlg-members.html
new file mode 100644
index 0000000..5b53119
--- /dev/null
+++ b/doc/html/classFilterEntryDlg-members.html
@@ -0,0 +1,74 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterEntryDlg Member List</h1>This is the complete list of members for <a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">_buttonEditRegExp1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">_buttonEditRegExp2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#d798b24cd1ba45d07060cd195913975b">_buttonResetCounter</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#21d063a47d1c8dc6d2f1387e36dc0e29">_checkCaseSensitive1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#7bb75b57a7e6026de7a729d3c3e00eb5">_checkCaseSensitive2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#b484e56fe6fd6fa210ac549e17dac0c3">_checkRegExp1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#b9f3d81d53edd0c0dbae49810b8a70cb">_checkRegExp2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#efe66d0f49d6a04c504811c048317195">_spinCounter</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#1004374888df731e496fa55652f85cc8">FilterEntryDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#2b727644e2fcbecf1b0242531d13d8e2">FilterEntryDlgLayout</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#3c133eaa09b66636dd31b18d5f66e699">groupBox3Layout</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#5724b2b390362ebab6b38d3f99ac689c">languageChange</a>()</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#63750302bdc8c80e1c5a39502d51231d">Layout11</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#fcec9c8c312b2830616c2de12f0c8355">m_ButtonCancel</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#02b245962b1424e9294d6bf8442a4b38">m_ButtonOk</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#97268e12b04d672a98541223f768f906">slotCondition1Selected</a>(int)</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#6ac10e19c5dd00efd78ec6dc55e872c3">slotCondition2Selected</a>(int)</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#141a535ba5c80f39bf1581171d311a4a">slotCounterChanged</a>(int)</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#c730f1ac327348c2062c562325b034cc">slotEditRegExp1</a>()</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#50acb364bd9a5fb31aaa5811794925f4">slotEditRegExp2</a>()</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#4cbdd432ba86f46647b846f301ea0287">slotItem1Selected</a>(int)</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#1de736a9fada9c574881fa048b97903f">slotItem2Selected</a>(int)</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#05d5272687ede82a6bc27d57df7e03af">slotMatch1Changed</a>(const QString &amp;)</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#e8364f54ae44a0dec8eb45507bb27a4e">slotMatch2Changed</a>(const QString &amp;)</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#044b3778968adf3cc1dfb860530871d8">slotOk</a>()</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#7b5730ba9c68fe302b94d1a5cb9fc36e">slotResetCounter</a>()</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#d32365f2082078acfc3be07d5908f66f">slotSecondCondition</a>(int)</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#8ec3aa42606455c31727af7a1a2c45a8">slotToggleRegExp1</a>(bool)</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#077268601f80f5394ca7133b834709ed">slotToggleRegExp2</a>(bool)</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#cb2a000ac6cfa82b1761b18a659381a7">Spacer17</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#c3575c94fc0110ad322996f9106adfbd">spacer2</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#af5dc4eb354581e010c723e889d3853b">spacer3</a></td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterEntryDlg.html#4ae287b415afeba0a50ea57eb4fe83e2">~FilterEntryDlg</a>()</td><td><a class="el" href="classFilterEntryDlg.html">FilterEntryDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterEntryDlg.html b/doc/html/classFilterEntryDlg.html
new file mode 100644
index 0000000..9f63fb8
--- /dev/null
+++ b/doc/html/classFilterEntryDlg.html
@@ -0,0 +1,185 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: FilterEntryDlg Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterEntryDlg Class Reference</h1><!-- doxytag: class="FilterEntryDlg" --><p>Inheritance diagram for FilterEntryDlg:
+<p><center><img src="classFilterEntryDlg.png" usemap="#FilterEntryDlg_map" border="0" alt=""></center>
+<map name="FilterEntryDlg_map">
+<area href="classFilterEntryDialog.html" alt="FilterEntryDialog" shape="rect" coords="0,56,107,80">
+</map>
+<a href="classFilterEntryDlg-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="044b3778968adf3cc1dfb860530871d8"></a><!-- doxytag: member="FilterEntryDlg::slotOk" ref="044b3778968adf3cc1dfb860530871d8" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#044b3778968adf3cc1dfb860530871d8">slotOk</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4cbdd432ba86f46647b846f301ea0287"></a><!-- doxytag: member="FilterEntryDlg::slotItem1Selected" ref="4cbdd432ba86f46647b846f301ea0287" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#4cbdd432ba86f46647b846f301ea0287">slotItem1Selected</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1de736a9fada9c574881fa048b97903f"></a><!-- doxytag: member="FilterEntryDlg::slotItem2Selected" ref="1de736a9fada9c574881fa048b97903f" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#1de736a9fada9c574881fa048b97903f">slotItem2Selected</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d32365f2082078acfc3be07d5908f66f"></a><!-- doxytag: member="FilterEntryDlg::slotSecondCondition" ref="d32365f2082078acfc3be07d5908f66f" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#d32365f2082078acfc3be07d5908f66f">slotSecondCondition</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="97268e12b04d672a98541223f768f906"></a><!-- doxytag: member="FilterEntryDlg::slotCondition1Selected" ref="97268e12b04d672a98541223f768f906" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#97268e12b04d672a98541223f768f906">slotCondition1Selected</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6ac10e19c5dd00efd78ec6dc55e872c3"></a><!-- doxytag: member="FilterEntryDlg::slotCondition2Selected" ref="6ac10e19c5dd00efd78ec6dc55e872c3" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#6ac10e19c5dd00efd78ec6dc55e872c3">slotCondition2Selected</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="05d5272687ede82a6bc27d57df7e03af"></a><!-- doxytag: member="FilterEntryDlg::slotMatch1Changed" ref="05d5272687ede82a6bc27d57df7e03af" args="(const QString &amp;)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#05d5272687ede82a6bc27d57df7e03af">slotMatch1Changed</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e8364f54ae44a0dec8eb45507bb27a4e"></a><!-- doxytag: member="FilterEntryDlg::slotMatch2Changed" ref="e8364f54ae44a0dec8eb45507bb27a4e" args="(const QString &amp;)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#e8364f54ae44a0dec8eb45507bb27a4e">slotMatch2Changed</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7b5730ba9c68fe302b94d1a5cb9fc36e"></a><!-- doxytag: member="FilterEntryDlg::slotResetCounter" ref="7b5730ba9c68fe302b94d1a5cb9fc36e" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#7b5730ba9c68fe302b94d1a5cb9fc36e">slotResetCounter</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="141a535ba5c80f39bf1581171d311a4a"></a><!-- doxytag: member="FilterEntryDlg::slotCounterChanged" ref="141a535ba5c80f39bf1581171d311a4a" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#141a535ba5c80f39bf1581171d311a4a">slotCounterChanged</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c730f1ac327348c2062c562325b034cc"></a><!-- doxytag: member="FilterEntryDlg::slotEditRegExp1" ref="c730f1ac327348c2062c562325b034cc" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#c730f1ac327348c2062c562325b034cc">slotEditRegExp1</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="50acb364bd9a5fb31aaa5811794925f4"></a><!-- doxytag: member="FilterEntryDlg::slotEditRegExp2" ref="50acb364bd9a5fb31aaa5811794925f4" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#50acb364bd9a5fb31aaa5811794925f4">slotEditRegExp2</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8ec3aa42606455c31727af7a1a2c45a8"></a><!-- doxytag: member="FilterEntryDlg::slotToggleRegExp1" ref="8ec3aa42606455c31727af7a1a2c45a8" args="(bool)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#8ec3aa42606455c31727af7a1a2c45a8">slotToggleRegExp1</a> (bool)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="077268601f80f5394ca7133b834709ed"></a><!-- doxytag: member="FilterEntryDlg::slotToggleRegExp2" ref="077268601f80f5394ca7133b834709ed" args="(bool)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#077268601f80f5394ca7133b834709ed">slotToggleRegExp2</a> (bool)</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1004374888df731e496fa55652f85cc8"></a><!-- doxytag: member="FilterEntryDlg::FilterEntryDlg" ref="1004374888df731e496fa55652f85cc8" args="(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#1004374888df731e496fa55652f85cc8">FilterEntryDlg</a> (QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4ae287b415afeba0a50ea57eb4fe83e2"></a><!-- doxytag: member="FilterEntryDlg::~FilterEntryDlg" ref="4ae287b415afeba0a50ea57eb4fe83e2" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#4ae287b415afeba0a50ea57eb4fe83e2">~FilterEntryDlg</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b53212305f82709bdcb7a0b89109067b"></a><!-- doxytag: member="FilterEntryDlg::_editName" ref="b53212305f82709bdcb7a0b89109067b" args="" -->
+QLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9754a074eab995074ea0b2b031367fad"></a><!-- doxytag: member="FilterEntryDlg::QGroupBox_1" ref="9754a074eab995074ea0b2b031367fad" args="" -->
+QGroupBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#9754a074eab995074ea0b2b031367fad">QGroupBox_1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b628cb3487c2c507b0362c5a4d9354f1"></a><!-- doxytag: member="FilterEntryDlg::_comboItem1" ref="b628cb3487c2c507b0362c5a4d9354f1" args="" -->
+QComboBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="74a26ce520b1e93127fba8720b6a6ab5"></a><!-- doxytag: member="FilterEntryDlg::_comboExpression1" ref="74a26ce520b1e93127fba8720b6a6ab5" args="" -->
+QComboBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c123c8dc1c93f960ee8eb5bcda9c7d10"></a><!-- doxytag: member="FilterEntryDlg::_editMatch1" ref="c123c8dc1c93f960ee8eb5bcda9c7d10" args="" -->
+QLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c6204e4ab3214c1eb1a9296c49264b57"></a><!-- doxytag: member="FilterEntryDlg::_comboSecondCondition" ref="c6204e4ab3214c1eb1a9296c49264b57" args="" -->
+QComboBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="21d063a47d1c8dc6d2f1387e36dc0e29"></a><!-- doxytag: member="FilterEntryDlg::_checkCaseSensitive1" ref="21d063a47d1c8dc6d2f1387e36dc0e29" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#21d063a47d1c8dc6d2f1387e36dc0e29">_checkCaseSensitive1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d1f54136c4b3a91a01de4715f8eba058"></a><!-- doxytag: member="FilterEntryDlg::_buttonEditRegExp1" ref="d1f54136c4b3a91a01de4715f8eba058" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">_buttonEditRegExp1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b484e56fe6fd6fa210ac549e17dac0c3"></a><!-- doxytag: member="FilterEntryDlg::_checkRegExp1" ref="b484e56fe6fd6fa210ac549e17dac0c3" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#b484e56fe6fd6fa210ac549e17dac0c3">_checkRegExp1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c58a17294df3e20dbd8c45800557a556"></a><!-- doxytag: member="FilterEntryDlg::_groupBox2" ref="c58a17294df3e20dbd8c45800557a556" args="" -->
+QGroupBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fc6a944b6a9cd41f717fa3c63bfc61cc"></a><!-- doxytag: member="FilterEntryDlg::_comboItem2" ref="fc6a944b6a9cd41f717fa3c63bfc61cc" args="" -->
+QComboBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f5a5b18bc147e4d78d1c8f62ec82b316"></a><!-- doxytag: member="FilterEntryDlg::_comboExpression2" ref="f5a5b18bc147e4d78d1c8f62ec82b316" args="" -->
+QComboBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="125f104edaa77af22c802d1d5c4ead27"></a><!-- doxytag: member="FilterEntryDlg::_editMatch2" ref="125f104edaa77af22c802d1d5c4ead27" args="" -->
+QLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7bb75b57a7e6026de7a729d3c3e00eb5"></a><!-- doxytag: member="FilterEntryDlg::_checkCaseSensitive2" ref="7bb75b57a7e6026de7a729d3c3e00eb5" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#7bb75b57a7e6026de7a729d3c3e00eb5">_checkCaseSensitive2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b9f3d81d53edd0c0dbae49810b8a70cb"></a><!-- doxytag: member="FilterEntryDlg::_checkRegExp2" ref="b9f3d81d53edd0c0dbae49810b8a70cb" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#b9f3d81d53edd0c0dbae49810b8a70cb">_checkRegExp2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="607041668b5763bd8d64c51dc46e2b18"></a><!-- doxytag: member="FilterEntryDlg::_buttonEditRegExp2" ref="607041668b5763bd8d64c51dc46e2b18" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">_buttonEditRegExp2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="02b245962b1424e9294d6bf8442a4b38"></a><!-- doxytag: member="FilterEntryDlg::m_ButtonOk" ref="02b245962b1424e9294d6bf8442a4b38" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#02b245962b1424e9294d6bf8442a4b38">m_ButtonOk</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fcec9c8c312b2830616c2de12f0c8355"></a><!-- doxytag: member="FilterEntryDlg::m_ButtonCancel" ref="fcec9c8c312b2830616c2de12f0c8355" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#fcec9c8c312b2830616c2de12f0c8355">m_ButtonCancel</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d84e87704cade0cb2e0a299af1f1f0e8"></a><!-- doxytag: member="FilterEntryDlg::groupBox3" ref="d84e87704cade0cb2e0a299af1f1f0e8" args="" -->
+QGroupBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#d84e87704cade0cb2e0a299af1f1f0e8">groupBox3</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="efe66d0f49d6a04c504811c048317195"></a><!-- doxytag: member="FilterEntryDlg::_spinCounter" ref="efe66d0f49d6a04c504811c048317195" args="" -->
+QSpinBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#efe66d0f49d6a04c504811c048317195">_spinCounter</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d798b24cd1ba45d07060cd195913975b"></a><!-- doxytag: member="FilterEntryDlg::_buttonResetCounter" ref="d798b24cd1ba45d07060cd195913975b" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#d798b24cd1ba45d07060cd195913975b">_buttonResetCounter</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5724b2b390362ebab6b38d3f99ac689c"></a><!-- doxytag: member="FilterEntryDlg::languageChange" ref="5724b2b390362ebab6b38d3f99ac689c" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#5724b2b390362ebab6b38d3f99ac689c">languageChange</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2b727644e2fcbecf1b0242531d13d8e2"></a><!-- doxytag: member="FilterEntryDlg::FilterEntryDlgLayout" ref="2b727644e2fcbecf1b0242531d13d8e2" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#2b727644e2fcbecf1b0242531d13d8e2">FilterEntryDlgLayout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8eb928f8d6c49a507fb0d04ceb0f8b03"></a><!-- doxytag: member="FilterEntryDlg::QGroupBox_1Layout" ref="8eb928f8d6c49a507fb0d04ceb0f8b03" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#8eb928f8d6c49a507fb0d04ceb0f8b03">QGroupBox_1Layout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c3575c94fc0110ad322996f9106adfbd"></a><!-- doxytag: member="FilterEntryDlg::spacer2" ref="c3575c94fc0110ad322996f9106adfbd" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#c3575c94fc0110ad322996f9106adfbd">spacer2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="536464a92836517d91f31f61b60307d9"></a><!-- doxytag: member="FilterEntryDlg::_groupBox2Layout" ref="536464a92836517d91f31f61b60307d9" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#536464a92836517d91f31f61b60307d9">_groupBox2Layout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="af5dc4eb354581e010c723e889d3853b"></a><!-- doxytag: member="FilterEntryDlg::spacer3" ref="af5dc4eb354581e010c723e889d3853b" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#af5dc4eb354581e010c723e889d3853b">spacer3</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="63750302bdc8c80e1c5a39502d51231d"></a><!-- doxytag: member="FilterEntryDlg::Layout11" ref="63750302bdc8c80e1c5a39502d51231d" args="" -->
+QHBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#63750302bdc8c80e1c5a39502d51231d">Layout11</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cb2a000ac6cfa82b1761b18a659381a7"></a><!-- doxytag: member="FilterEntryDlg::Spacer17" ref="cb2a000ac6cfa82b1761b18a659381a7" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#cb2a000ac6cfa82b1761b18a659381a7">Spacer17</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3c133eaa09b66636dd31b18d5f66e699"></a><!-- doxytag: member="FilterEntryDlg::groupBox3Layout" ref="3c133eaa09b66636dd31b18d5f66e699" args="" -->
+QHBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterEntryDlg.html#3c133eaa09b66636dd31b18d5f66e699">groupBox3Layout</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="FilterEntryDlg_8h-source.html#l00027">27</a> of file <a class="el" href="FilterEntryDlg_8h-source.html">FilterEntryDlg.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="FilterEntryDlg_8h-source.html">FilterEntryDlg.h</a><li>kshowmail/<a class="el" href="FilterEntryDlg_8cpp-source.html">FilterEntryDlg.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterEntryDlg.png b/doc/html/classFilterEntryDlg.png
new file mode 100644
index 0000000..21fe538
--- /dev/null
+++ b/doc/html/classFilterEntryDlg.png
Binary files differ
diff --git a/doc/html/classFilterList-members.html b/doc/html/classFilterList-members.html
new file mode 100644
index 0000000..c6849cf
--- /dev/null
+++ b/doc/html/classFilterList-members.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterList Member List</h1>This is the complete list of members for <a class="el" href="classFilterList.html">FilterList</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classFilterList.html#578eee835eb5a319f7aba6e4b3aab2a3">compareItems</a>(QCollection::Item item1, QCollection::Item item2)</td><td><a class="el" href="classFilterList.html">FilterList</a></td><td><code> [protected, virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterList.html#6740dd4bfc659afb2791c0e5fcc3fdf2">FilterList</a>()</td><td><a class="el" href="classFilterList.html">FilterList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterList.html#54e537cdc4fcd618107f6337f8734aeb">newItem</a>(QCollection::Item d)</td><td><a class="el" href="classFilterList.html">FilterList</a></td><td><code> [protected, virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterList.html#9a557c994d14156b2bfad410e525da83">operator=</a>(FilterList &amp;right)</td><td><a class="el" href="classFilterList.html">FilterList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterList.html#edae5c6d93981d1f4cee91d333492497">readOptions</a>(KConfig *config)</td><td><a class="el" href="classFilterList.html">FilterList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterList.html#03c7e453e6d4cd54863d2ab38dad684c">saveOptions</a>(KConfig *config)</td><td><a class="el" href="classFilterList.html">FilterList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterList.html#ad9f3ddd25a111eaacf9b688e4f619ad">setCombo</a>(QComboBox *combo, int nIndex)</td><td><a class="el" href="classFilterList.html">FilterList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterList.html#946c89364770443052dfa2c4b56524ab">~FilterList</a>()</td><td><a class="el" href="classFilterList.html">FilterList</a></td><td><code> [virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterList.html b/doc/html/classFilterList.html
new file mode 100644
index 0000000..6021ffe
--- /dev/null
+++ b/doc/html/classFilterList.html
@@ -0,0 +1,92 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: FilterList Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterList Class Reference</h1><!-- doxytag: class="FilterList" --><a href="classFilterList-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6740dd4bfc659afb2791c0e5fcc3fdf2"></a><!-- doxytag: member="FilterList::FilterList" ref="6740dd4bfc659afb2791c0e5fcc3fdf2" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterList.html#6740dd4bfc659afb2791c0e5fcc3fdf2">FilterList</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="946c89364770443052dfa2c4b56524ab"></a><!-- doxytag: member="FilterList::~FilterList" ref="946c89364770443052dfa2c4b56524ab" args="()" -->
+virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterList.html#946c89364770443052dfa2c4b56524ab">~FilterList</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9a557c994d14156b2bfad410e525da83"></a><!-- doxytag: member="FilterList::operator=" ref="9a557c994d14156b2bfad410e525da83" args="(FilterList &amp;right)" -->
+<a class="el" href="classFilterList.html">FilterList</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterList.html#9a557c994d14156b2bfad410e525da83">operator=</a> (<a class="el" href="classFilterList.html">FilterList</a> &amp;right)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ad9f3ddd25a111eaacf9b688e4f619ad"></a><!-- doxytag: member="FilterList::setCombo" ref="ad9f3ddd25a111eaacf9b688e4f619ad" args="(QComboBox *combo, int nIndex)" -->
+void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterList.html#ad9f3ddd25a111eaacf9b688e4f619ad">setCombo</a> (QComboBox *combo, int nIndex)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="edae5c6d93981d1f4cee91d333492497"></a><!-- doxytag: member="FilterList::readOptions" ref="edae5c6d93981d1f4cee91d333492497" args="(KConfig *config)" -->
+void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterList.html#edae5c6d93981d1f4cee91d333492497">readOptions</a> (KConfig *config)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterList.html#03c7e453e6d4cd54863d2ab38dad684c">saveOptions</a> (KConfig *config)</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="578eee835eb5a319f7aba6e4b3aab2a3"></a><!-- doxytag: member="FilterList::compareItems" ref="578eee835eb5a319f7aba6e4b3aab2a3" args="(QCollection::Item item1, QCollection::Item item2)" -->
+virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterList.html#578eee835eb5a319f7aba6e4b3aab2a3">compareItems</a> (QCollection::Item item1, QCollection::Item item2)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="54e537cdc4fcd618107f6337f8734aeb"></a><!-- doxytag: member="FilterList::newItem" ref="54e537cdc4fcd618107f6337f8734aeb" args="(QCollection::Item d)" -->
+virtual QCollection::Item&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterList.html#54e537cdc4fcd618107f6337f8734aeb">newItem</a> (QCollection::Item d)</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="filterlist_8h-source.html#l00037">37</a> of file <a class="el" href="filterlist_8h-source.html">filterlist.h</a>.<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="03c7e453e6d4cd54863d2ab38dad684c"></a><!-- doxytag: member="FilterList::saveOptions" ref="03c7e453e6d4cd54863d2ab38dad684c" args="(KConfig *config)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void FilterList::saveOptions </td>
+ <td>(</td>
+ <td class="paramtype">KConfig *&nbsp;</td>
+ <td class="paramname"> <em>config</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Saves the filter setup into the application config file (kshowmailrc). <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>config</em>&nbsp;</td><td>application config </td></tr>
+ </table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="filterlist_8cpp-source.html#l00122">122</a> of file <a class="el" href="filterlist_8cpp-source.html">filterlist.cpp</a>.
+<p>
+Referenced by <a class="el" href="filter_8cpp-source.html#l00048">Filter::saveOptions()</a>.
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="filterlist_8h-source.html">filterlist.h</a><li>kshowmail/<a class="el" href="filterlist_8cpp-source.html">filterlist.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterRecord-members.html b/doc/html/classFilterRecord-members.html
new file mode 100644
index 0000000..0781472
--- /dev/null
+++ b/doc/html/classFilterRecord-members.html
@@ -0,0 +1,50 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterRecord Member List</h1>This is the complete list of members for <a class="el" href="classFilterRecord.html">FilterRecord</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a></td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterRecord.html#1ec80257bc94ce8fdcbbb2d5de64f612">_expression</a></td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a></td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">_RegExp</a></td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterRecord.html#a9ca58948529c51e27397ef9b105c6d2">_type</a></td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>contains</b> enum value (defined in <a class="el" href="classFilterRecord.html">FilterRecord</a>)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>contains_not</b> enum value (defined in <a class="el" href="classFilterRecord.html">FilterRecord</a>)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>equals</b> enum value (defined in <a class="el" href="classFilterRecord.html">FilterRecord</a>)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>equals_not</b> enum value (defined in <a class="el" href="classFilterRecord.html">FilterRecord</a>)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">expressionType</a> enum name</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterRecord.html#21d096b6ce737e5550e3d767fa6d2ae3">FilterRecord</a>()</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterRecord.html#3829e87c1a6e284017cd2e1f4434a76a">FilterRecord</a>(filterType type, expressionType expression, const QString &amp;match, bool CaseSensitive, bool regExp)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">filterType</a> enum name</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>from</b> enum value (defined in <a class="el" href="classFilterRecord.html">FilterRecord</a>)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>greater</b> enum value (defined in <a class="el" href="classFilterRecord.html">FilterRecord</a>)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>header</b> enum value (defined in <a class="el" href="classFilterRecord.html">FilterRecord</a>)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>less</b> enum value (defined in <a class="el" href="classFilterRecord.html">FilterRecord</a>)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterRecord.html#ce4bf661b49a342242d9c2bd578720c3">matches</a>(ShowRecordElem *)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>size</b> enum value (defined in <a class="el" href="classFilterRecord.html">FilterRecord</a>)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>subject</b> enum value (defined in <a class="el" href="classFilterRecord.html">FilterRecord</a>)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><b>to</b> enum value (defined in <a class="el" href="classFilterRecord.html">FilterRecord</a>)</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFilterRecord.html#aad8e6b767fbcc3f9c214ca1be7db853">toString</a>() const</td><td><a class="el" href="classFilterRecord.html">FilterRecord</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classFilterRecord.html b/doc/html/classFilterRecord.html
new file mode 100644
index 0000000..5819b85
--- /dev/null
+++ b/doc/html/classFilterRecord.html
@@ -0,0 +1,88 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: FilterRecord Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>FilterRecord Class Reference</h1><!-- doxytag: class="FilterRecord" --><a href="classFilterRecord-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">filterType</a> { <br>
+&nbsp;&nbsp;<b>from</b>,
+<b>subject</b>,
+<b>header</b>,
+<b>size</b>,
+<br>
+&nbsp;&nbsp;<b>to</b>
+<br>
+ }</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">expressionType</a> { <br>
+&nbsp;&nbsp;<b>contains</b>,
+<b>contains_not</b>,
+<b>equals</b>,
+<b>equals_not</b>,
+<br>
+&nbsp;&nbsp;<b>greater</b>,
+<b>less</b>
+<br>
+ }</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="21d096b6ce737e5550e3d767fa6d2ae3"></a><!-- doxytag: member="FilterRecord::FilterRecord" ref="21d096b6ce737e5550e3d767fa6d2ae3" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterRecord.html#21d096b6ce737e5550e3d767fa6d2ae3">FilterRecord</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3829e87c1a6e284017cd2e1f4434a76a"></a><!-- doxytag: member="FilterRecord::FilterRecord" ref="3829e87c1a6e284017cd2e1f4434a76a" args="(filterType type, expressionType expression, const QString &amp;match, bool CaseSensitive, bool regExp)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterRecord.html#3829e87c1a6e284017cd2e1f4434a76a">FilterRecord</a> (<a class="el" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">filterType</a> type, <a class="el" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">expressionType</a> expression, const QString &amp;match, bool CaseSensitive, bool regExp)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ce4bf661b49a342242d9c2bd578720c3"></a><!-- doxytag: member="FilterRecord::matches" ref="ce4bf661b49a342242d9c2bd578720c3" args="(ShowRecordElem *)" -->
+bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterRecord.html#ce4bf661b49a342242d9c2bd578720c3">matches</a> (<a class="el" href="classShowRecordElem.html">ShowRecordElem</a> *)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aad8e6b767fbcc3f9c214ca1be7db853"></a><!-- doxytag: member="FilterRecord::toString" ref="aad8e6b767fbcc3f9c214ca1be7db853" args="() const" -->
+QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterRecord.html#aad8e6b767fbcc3f9c214ca1be7db853">toString</a> () const</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a9ca58948529c51e27397ef9b105c6d2"></a><!-- doxytag: member="FilterRecord::_type" ref="a9ca58948529c51e27397ef9b105c6d2" args="" -->
+<a class="el" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">filterType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterRecord.html#a9ca58948529c51e27397ef9b105c6d2">_type</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1ec80257bc94ce8fdcbbb2d5de64f612"></a><!-- doxytag: member="FilterRecord::_expression" ref="1ec80257bc94ce8fdcbbb2d5de64f612" args="" -->
+<a class="el" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">expressionType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterRecord.html#1ec80257bc94ce8fdcbbb2d5de64f612">_expression</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="72d4a650ab06738f169b562e5adbbaaa"></a><!-- doxytag: member="FilterRecord::_match" ref="72d4a650ab06738f169b562e5adbbaaa" args="" -->
+QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="47791227a3cabe9397f5bd1a6c44fd16"></a><!-- doxytag: member="FilterRecord::_CaseSensitive" ref="47791227a3cabe9397f5bd1a6c44fd16" args="" -->
+bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eecf987a35d4f17c91c8fd69f4afb139"></a><!-- doxytag: member="FilterRecord::_RegExp" ref="eecf987a35d4f17c91c8fd69f4afb139" args="" -->
+bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">_RegExp</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="filterelem_8h-source.html#l00029">29</a> of file <a class="el" href="filterelem_8h-source.html">filterelem.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="filterelem_8h-source.html">filterelem.h</a><li>kshowmail/<a class="el" href="filterelem_8cpp-source.html">filterelem.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKFeedbackAnswer-members.html b/doc/html/classKFeedbackAnswer-members.html
new file mode 100644
index 0000000..fc42767
--- /dev/null
+++ b/doc/html/classKFeedbackAnswer-members.html
@@ -0,0 +1,40 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KFeedbackAnswer Member List</h1>This is the complete list of members for <a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackAnswer.html#b2a618699a774f019ce272d6fbd0aeb8">_exclusive</a></td><td><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackAnswer.html#f6c09e6daf51423ec373fc9608486adb">_id</a></td><td><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackAnswer.html#1ddde383928714423714a70a829a0c57">_no</a></td><td><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackAnswer.html#0c38ffb3d84f3ca2204bcd66f605514c">id</a>()</td><td><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackAnswer.html#864fad7f3c6f5f92f262488735799cb7">isChecked</a>()</td><td><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackAnswer.html#5de55655375db66b438b221d63cd0082">isExclusive</a>()</td><td><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackAnswer.html#a643ff4986437b3089dcda86512c4f79">key</a>(int column, bool ascending) const</td><td><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackAnswer.html#7100bf31bf9d49009b8c5a82c1ae5bde">KFeedbackAnswer</a>(KFeedbackQuestion *parent, const QString &amp;text, const QString &amp;id, bool exclusive=true)</td><td><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackAnswer.html#31fe8732bdbda805d1306e5c86fcae91">nextAnswer</a>() const</td><td><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackAnswer.html#c147b9f7c35c83c8a5458a79f6cafed9">question</a>() const</td><td><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackAnswer.html#3812bf11ec42b06397e87a753797bbd8">stateChange</a>(bool newState)</td><td><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackAnswer.html#a177a24369a5dab88d5602f6651275ea">text</a>()</td><td><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKFeedbackAnswer.html b/doc/html/classKFeedbackAnswer.html
new file mode 100644
index 0000000..2e6fab8
--- /dev/null
+++ b/doc/html/classKFeedbackAnswer.html
@@ -0,0 +1,311 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: KFeedbackAnswer Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KFeedbackAnswer Class Reference</h1><!-- doxytag: class="KFeedbackAnswer" --><a href="classKFeedbackAnswer-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackAnswer.html#7100bf31bf9d49009b8c5a82c1ae5bde">KFeedbackAnswer</a> (<a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> *parent, const QString &amp;text, const QString &amp;id, bool exclusive=true)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackAnswer.html#0c38ffb3d84f3ca2204bcd66f605514c">id</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackAnswer.html#a177a24369a5dab88d5602f6651275ea">text</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackAnswer.html#5de55655375db66b438b221d63cd0082">isExclusive</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackAnswer.html#864fad7f3c6f5f92f262488735799cb7">isChecked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackAnswer.html#31fe8732bdbda805d1306e5c86fcae91">nextAnswer</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackAnswer.html#c147b9f7c35c83c8a5458a79f6cafed9">question</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackAnswer.html#a643ff4986437b3089dcda86512c4f79">key</a> (int column, bool ascending) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackAnswer.html#3812bf11ec42b06397e87a753797bbd8">stateChange</a> (bool newState)</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f6c09e6daf51423ec373fc9608486adb"></a><!-- doxytag: member="KFeedbackAnswer::_id" ref="f6c09e6daf51423ec373fc9608486adb" args="" -->
+QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackAnswer.html#f6c09e6daf51423ec373fc9608486adb">_id</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b2a618699a774f019ce272d6fbd0aeb8"></a><!-- doxytag: member="KFeedbackAnswer::_exclusive" ref="b2a618699a774f019ce272d6fbd0aeb8" args="" -->
+bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackAnswer.html#b2a618699a774f019ce272d6fbd0aeb8">_exclusive</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1ddde383928714423714a70a829a0c57"></a><!-- doxytag: member="KFeedbackAnswer::_no" ref="1ddde383928714423714a70a829a0c57" args="" -->
+int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackAnswer.html#1ddde383928714423714a70a829a0c57">_no</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00388">388</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="7100bf31bf9d49009b8c5a82c1ae5bde"></a><!-- doxytag: member="KFeedbackAnswer::KFeedbackAnswer" ref="7100bf31bf9d49009b8c5a82c1ae5bde" args="(KFeedbackQuestion *parent, const QString &amp;text, const QString &amp;id, bool exclusive=true)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KFeedbackAnswer::KFeedbackAnswer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> *&nbsp;</td>
+ <td class="paramname"> <em>parent</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>exclusive</em> = <code>true</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor.<p>
+'exclusive' tells the type of answer: One of many allowed or any number of many.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00458">458</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00455">_no</a>.
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="0c38ffb3d84f3ca2204bcd66f605514c"></a><!-- doxytag: member="KFeedbackAnswer::id" ref="0c38ffb3d84f3ca2204bcd66f605514c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString KFeedbackAnswer::id </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Return this answer's ID.
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00405">405</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00453">_id</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00402">KFeedbackQuestion::result()</a>.
+</div>
+</div><p>
+<a class="anchor" name="a177a24369a5dab88d5602f6651275ea"></a><!-- doxytag: member="KFeedbackAnswer::text" ref="a177a24369a5dab88d5602f6651275ea" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString KFeedbackAnswer::text </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Return this answer's text.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00474">474</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+</div>
+</div><p>
+<a class="anchor" name="5de55655375db66b438b221d63cd0082"></a><!-- doxytag: member="KFeedbackAnswer::isExclusive" ref="5de55655375db66b438b221d63cd0082" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool KFeedbackAnswer::isExclusive </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether or not this is an exclusive answer.
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00415">415</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00454">_exclusive</a>.
+</div>
+</div><p>
+<a class="anchor" name="864fad7f3c6f5f92f262488735799cb7"></a><!-- doxytag: member="KFeedbackAnswer::isChecked" ref="864fad7f3c6f5f92f262488735799cb7" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool KFeedbackAnswer::isChecked </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether or not this answer is checked.
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00420">420</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00368">KFeedbackQuestion::isAnswered()</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00402">KFeedbackQuestion::result()</a>.
+</div>
+</div><p>
+<a class="anchor" name="31fe8732bdbda805d1306e5c86fcae91"></a><!-- doxytag: member="KFeedbackAnswer::nextAnswer" ref="31fe8732bdbda805d1306e5c86fcae91" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a>* KFeedbackAnswer::nextAnswer </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the next possible answer or 0 if there is no more.
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00425">425</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00368">KFeedbackQuestion::isAnswered()</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00402">KFeedbackQuestion::result()</a>.
+</div>
+</div><p>
+<a class="anchor" name="c147b9f7c35c83c8a5458a79f6cafed9"></a><!-- doxytag: member="KFeedbackAnswer::question" ref="c147b9f7c35c83c8a5458a79f6cafed9" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a>* KFeedbackAnswer::question </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the question to this answer.
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00431">431</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00491">stateChange()</a>.
+</div>
+</div><p>
+<a class="anchor" name="a643ff4986437b3089dcda86512c4f79"></a><!-- doxytag: member="KFeedbackAnswer::key" ref="a643ff4986437b3089dcda86512c4f79" args="(int column, bool ascending) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString KFeedbackAnswer::key </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>column</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>ascending</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the sort key.<p>
+Reimplemented from QListViewItem to maintain insertion order.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00481">481</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00455">_no</a>.
+</div>
+</div><p>
+<a class="anchor" name="3812bf11ec42b06397e87a753797bbd8"></a><!-- doxytag: member="KFeedbackAnswer::stateChange" ref="3812bf11ec42b06397e87a753797bbd8" args="(bool newState)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KFeedbackAnswer::stateChange </td>
+ <td>(</td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>newState</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+On/off change.<p>
+Reimplemented from QCheckListItem to monitor answering required questions. This method notifies the <a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> whenever a required question is being answered.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00491">491</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00431">question()</a>, <a class="el" href="kfeedback_8cpp-source.html#l00318">KFeedbackQuestionList::questionAnswered()</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00447">KFeedbackQuestion::questionList()</a>.
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="kfeedback_8h-source.html">kfeedback.h</a><li>kshowmail/<a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKFeedbackDialog-members.html b/doc/html/classKFeedbackDialog-members.html
new file mode 100644
index 0000000..cec50c5
--- /dev/null
+++ b/doc/html/classKFeedbackDialog-members.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KFeedbackDialog Member List</h1>This is the complete list of members for <a class="el" href="classKFeedbackDialog.html">KFeedbackDialog</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">_form</a></td><td><a class="el" href="classKFeedbackDialog.html">KFeedbackDialog</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackDialog.html#34f680000dbe1b4446bd647d51c3738d">checkSendButton</a>()</td><td><a class="el" href="classKFeedbackDialog.html">KFeedbackDialog</a></td><td><code> [slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackDialog.html#1d9dfb5bac160ce16eb8e929f37c31b6">form</a>()</td><td><a class="el" href="classKFeedbackDialog.html">KFeedbackDialog</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackDialog.html#1ae22ffc4cfbabb1b954f2f75c57f8ba">KFeedbackDialog</a>(const QString &amp;feedbackMailAddress, const QString &amp;helpTopic=QString::null)</td><td><a class="el" href="classKFeedbackDialog.html">KFeedbackDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackDialog.html#962b0e6f0813c923c924bb9b81c8ba1b">mailSent</a>()</td><td><a class="el" href="classKFeedbackDialog.html">KFeedbackDialog</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackDialog.html#3db3a02eb0b2a94d8e3bedbd1f5f6d70">~KFeedbackDialog</a>()</td><td><a class="el" href="classKFeedbackDialog.html">KFeedbackDialog</a></td><td><code> [virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKFeedbackDialog.html b/doc/html/classKFeedbackDialog.html
new file mode 100644
index 0000000..655cd8e
--- /dev/null
+++ b/doc/html/classKFeedbackDialog.html
@@ -0,0 +1,185 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: KFeedbackDialog Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KFeedbackDialog Class Reference</h1><!-- doxytag: class="KFeedbackDialog" --><code>#include &lt;<a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>&gt;</code>
+<p>
+<a href="classKFeedbackDialog-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackDialog.html#34f680000dbe1b4446bd647d51c3738d">checkSendButton</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Signals</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackDialog.html#962b0e6f0813c923c924bb9b81c8ba1b">mailSent</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackDialog.html#1ae22ffc4cfbabb1b954f2f75c57f8ba">KFeedbackDialog</a> (const QString &amp;feedbackMailAddress, const QString &amp;helpTopic=QString::null)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackDialog.html#3db3a02eb0b2a94d8e3bedbd1f5f6d70">~KFeedbackDialog</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackDialog.html#1d9dfb5bac160ce16eb8e929f37c31b6">form</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c95533de8e33e87407a06b910f5b6cfa"></a><!-- doxytag: member="KFeedbackDialog::_form" ref="c95533de8e33e87407a06b910f5b6cfa" args="" -->
+<a class="el" href="classKFeedbackForm.html">KFeedbackForm</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">_form</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Dialog containing a <a class="el" href="classKFeedbackForm.html">KFeedbackForm</a> and all the infrastructure for sending a mail etc.
+<p>
+
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00042">42</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="1ae22ffc4cfbabb1b954f2f75c57f8ba"></a><!-- doxytag: member="KFeedbackDialog::KFeedbackDialog" ref="1ae22ffc4cfbabb1b954f2f75c57f8ba" args="(const QString &amp;feedbackMailAddress, const QString &amp;helpTopic=QString::null)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KFeedbackDialog::KFeedbackDialog </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>feedbackMailAddress</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>helpTopic</em> = <code>QString::null</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00034">34</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00088">_form</a>, <a class="el" href="kfeedback_8cpp-source.html#l00071">checkSendButton()</a>, and <a class="el" href="kfeedback_8moc_8cpp-source.html#l00084">mailSent()</a>.
+</div>
+</div><p>
+<a class="anchor" name="3db3a02eb0b2a94d8e3bedbd1f5f6d70"></a><!-- doxytag: member="KFeedbackDialog::~KFeedbackDialog" ref="3db3a02eb0b2a94d8e3bedbd1f5f6d70" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KFeedbackDialog::~KFeedbackDialog </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Destructor.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00064">64</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="1d9dfb5bac160ce16eb8e929f37c31b6"></a><!-- doxytag: member="KFeedbackDialog::form" ref="1d9dfb5bac160ce16eb8e929f37c31b6" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a>* KFeedbackDialog::form </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the internal
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00064">64</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00088">_form</a>.
+<p>
+Referenced by <a class="el" href="kshowmailfeedback_8cpp-source.html#l00023">KShowMailApp::slotSendFeedbackMail()</a>.
+</div>
+</div><p>
+<a class="anchor" name="34f680000dbe1b4446bd647d51c3738d"></a><!-- doxytag: member="KFeedbackDialog::checkSendButton" ref="34f680000dbe1b4446bd647d51c3738d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KFeedbackDialog::checkSendButton </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Check if sufficient information is available to send a mail now and enable / disable the "send mail" button accordingly.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00071">71</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00088">_form</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00229">KFeedbackForm::readyToSend()</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00034">KFeedbackDialog()</a>.
+</div>
+</div><p>
+<a class="anchor" name="962b0e6f0813c923c924bb9b81c8ba1b"></a><!-- doxytag: member="KFeedbackDialog::mailSent" ref="962b0e6f0813c923c924bb9b81c8ba1b" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KFeedbackDialog::mailSent </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Emitted when the user has sent the feedback mail - i.e. when he clicked on the "Send mail" button and the mail has successfully been forwarded to the mailer. He can still choose not to send the mail from within the mailer, though.
+<p>
+Definition at line <a class="el" href="kfeedback_8moc_8cpp-source.html#l00084">84</a> of file <a class="el" href="kfeedback_8moc_8cpp-source.html">kfeedback.moc.cpp</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00034">KFeedbackDialog()</a>.
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="kfeedback_8h-source.html">kfeedback.h</a><li>kshowmail/<a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a><li>kshowmail/<a class="el" href="kfeedback_8moc_8cpp-source.html">kfeedback.moc.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKFeedbackForm-members.html b/doc/html/classKFeedbackForm-members.html
new file mode 100644
index 0000000..2698b3f
--- /dev/null
+++ b/doc/html/classKFeedbackForm-members.html
@@ -0,0 +1,40 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KFeedbackForm Member List</h1>This is the complete list of members for <a class="el" href="classKFeedbackForm.html">KFeedbackForm</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackForm.html#862ae3fd81afe2f61f19d41d927c537b">_comment</a></td><td><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackForm.html#4e667e814dc1de15bf601217c08f077f">_feedbackMailAddress</a></td><td><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackForm.html#e8c28be58b2684f090c396ad52f64ad3">_questionList</a></td><td><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackForm.html#c328809367354cf8ff97e7c78b521345">checkComplete</a>()</td><td><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackForm.html#08ace5fb7dd689ced012aa722b690b71">formatComment</a>()</td><td><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackForm.html#78d888d1554e9403a62d7c9b0c6e4a2e">KFeedbackForm</a>(const QString &amp;feedbackMailAddress, QWidget *parent)</td><td><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackForm.html#ec2b411546d45e31c9b412f1fa6d8897">mailSent</a>()</td><td><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackForm.html#51b1d4e1e48d18c6155203b9f72ada5e">questionList</a>()</td><td><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackForm.html#6840e07fe3245d4e9c11ee0160af6068">readyToSend</a>()</td><td><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackForm.html#72b8b30801614c35e271c5e519f10c8b">sendMail</a>()</td><td><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackForm.html#5ec1c36c978229b6e14e9005b595d69e">slotCheckComplete</a>()</td><td><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackForm.html#b22414a85a37ca217e028bde8a663ac4">~KFeedbackForm</a>()</td><td><a class="el" href="classKFeedbackForm.html">KFeedbackForm</a></td><td><code> [virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKFeedbackForm.html b/doc/html/classKFeedbackForm.html
new file mode 100644
index 0000000..de9f434
--- /dev/null
+++ b/doc/html/classKFeedbackForm.html
@@ -0,0 +1,300 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: KFeedbackForm Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KFeedbackForm Class Reference</h1><!-- doxytag: class="KFeedbackForm" --><code>#include &lt;<a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>&gt;</code>
+<p>
+<a href="classKFeedbackForm-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackForm.html#72b8b30801614c35e271c5e519f10c8b">sendMail</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Signals</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackForm.html#ec2b411546d45e31c9b412f1fa6d8897">mailSent</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackForm.html#c328809367354cf8ff97e7c78b521345">checkComplete</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackForm.html#78d888d1554e9403a62d7c9b0c6e4a2e">KFeedbackForm</a> (const QString &amp;feedbackMailAddress, QWidget *parent)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackForm.html#b22414a85a37ca217e028bde8a663ac4">~KFeedbackForm</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackForm.html#6840e07fe3245d4e9c11ee0160af6068">readyToSend</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackForm.html#51b1d4e1e48d18c6155203b9f72ada5e">questionList</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackForm.html#5ec1c36c978229b6e14e9005b595d69e">slotCheckComplete</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackForm.html#08ace5fb7dd689ced012aa722b690b71">formatComment</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4e667e814dc1de15bf601217c08f077f"></a><!-- doxytag: member="KFeedbackForm::_feedbackMailAddress" ref="4e667e814dc1de15bf601217c08f077f" args="" -->
+QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackForm.html#4e667e814dc1de15bf601217c08f077f">_feedbackMailAddress</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e8c28be58b2684f090c396ad52f64ad3"></a><!-- doxytag: member="KFeedbackForm::_questionList" ref="e8c28be58b2684f090c396ad52f64ad3" args="" -->
+<a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackForm.html#e8c28be58b2684f090c396ad52f64ad3">_questionList</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="862ae3fd81afe2f61f19d41d927c537b"></a><!-- doxytag: member="KFeedbackForm::_comment" ref="862ae3fd81afe2f61f19d41d927c537b" args="" -->
+QMultiLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackForm.html#862ae3fd81afe2f61f19d41d927c537b">_comment</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+User feedback form:<p>
+User is asked a list of questions, the answers of which will be sent via mail back to a feedback mail address.
+<p>
+
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00098">98</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="78d888d1554e9403a62d7c9b0c6e4a2e"></a><!-- doxytag: member="KFeedbackForm::KFeedbackForm" ref="78d888d1554e9403a62d7c9b0c6e4a2e" args="(const QString &amp;feedbackMailAddress, QWidget *parent)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KFeedbackForm::KFeedbackForm </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>feedbackMailAddress</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QWidget *&nbsp;</td>
+ <td class="paramname"> <em>parent</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00080">80</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00179">_comment</a>, <a class="el" href="kfeedback_8h-source.html#l00178">_questionList</a>, <a class="el" href="kfeedback_8moc_8cpp-source.html#l00191">checkComplete()</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00208">slotCheckComplete()</a>.
+</div>
+</div><p>
+<a class="anchor" name="b22414a85a37ca217e028bde8a663ac4"></a><!-- doxytag: member="KFeedbackForm::~KFeedbackForm" ref="b22414a85a37ca217e028bde8a663ac4" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KFeedbackForm::~KFeedbackForm </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Destructor.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00146">146</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="72b8b30801614c35e271c5e519f10c8b"></a><!-- doxytag: member="KFeedbackForm::sendMail" ref="72b8b30801614c35e271c5e519f10c8b" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KFeedbackForm::sendMail </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [virtual, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Compose a mail from the user's answers and send it to the feedback mail address passed to the constructor.<p>
+This method will check with <a class="el" href="classKFeedbackForm.html#6840e07fe3245d4e9c11ee0160af6068">readyToSend()</a> if the mail can be sent with the questions answered until now and prompt the user to answer more questions if not.<p>
+Connect the <a class="el" href="classKFeedbackForm.html#ec2b411546d45e31c9b412f1fa6d8897">mailSent()</a> signal if you are interested when exactly all this was successful.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00153">153</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00177">_feedbackMailAddress</a>, <a class="el" href="kfeedback_8h-source.html#l00178">_questionList</a>, <a class="el" href="kfeedback_8cpp-source.html#l00215">formatComment()</a>, <a class="el" href="kfeedback_8moc_8cpp-source.html#l00185">mailSent()</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00270">KFeedbackQuestionList::result()</a>.
+</div>
+</div><p>
+<a class="anchor" name="6840e07fe3245d4e9c11ee0160af6068"></a><!-- doxytag: member="KFeedbackForm::readyToSend" ref="6840e07fe3245d4e9c11ee0160af6068" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool KFeedbackForm::readyToSend </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Checks if the mail is ready to send, i.e. if all required fields are filled.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00229">229</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00178">_questionList</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00254">KFeedbackQuestionList::isComplete()</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00071">KFeedbackDialog::checkSendButton()</a>.
+</div>
+</div><p>
+<a class="anchor" name="51b1d4e1e48d18c6155203b9f72ada5e"></a><!-- doxytag: member="KFeedbackForm::questionList" ref="51b1d4e1e48d18c6155203b9f72ada5e" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a>* KFeedbackForm::questionList </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the <a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> .
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00142">142</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00178">_questionList</a>.
+<p>
+Referenced by <a class="el" href="kshowmailfeedback_8cpp-source.html#l00023">KShowMailApp::slotSendFeedbackMail()</a>.
+</div>
+</div><p>
+<a class="anchor" name="ec2b411546d45e31c9b412f1fa6d8897"></a><!-- doxytag: member="KFeedbackForm::mailSent" ref="ec2b411546d45e31c9b412f1fa6d8897" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KFeedbackForm::mailSent </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Emitted when the user has sent the feedback mail - i.e. when he clicked on the "Send mail" button and the mail has successfully been forwarded to the mailer. He can still choose not to send the mail from within the mailer, though.
+<p>
+Definition at line <a class="el" href="kfeedback_8moc_8cpp-source.html#l00185">185</a> of file <a class="el" href="kfeedback_8moc_8cpp-source.html">kfeedback.moc.cpp</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00153">sendMail()</a>.
+</div>
+</div><p>
+<a class="anchor" name="c328809367354cf8ff97e7c78b521345"></a><!-- doxytag: member="KFeedbackForm::checkComplete" ref="c328809367354cf8ff97e7c78b521345" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KFeedbackForm::checkComplete </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Emitted when it is time to check for completeness of all information in this form: Either when a new question is added or when a question is answered.
+<p>
+Definition at line <a class="el" href="kfeedback_8moc_8cpp-source.html#l00191">191</a> of file <a class="el" href="kfeedback_8moc_8cpp-source.html">kfeedback.moc.cpp</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00080">KFeedbackForm()</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00208">slotCheckComplete()</a>.
+</div>
+</div><p>
+<a class="anchor" name="5ec1c36c978229b6e14e9005b595d69e"></a><!-- doxytag: member="KFeedbackForm::slotCheckComplete" ref="5ec1c36c978229b6e14e9005b595d69e" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KFeedbackForm::slotCheckComplete </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Check for completeness of this form.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00208">208</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8moc_8cpp-source.html#l00191">checkComplete()</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00080">KFeedbackForm()</a>.
+</div>
+</div><p>
+<a class="anchor" name="08ace5fb7dd689ced012aa722b690b71"></a><!-- doxytag: member="KFeedbackForm::formatComment" ref="08ace5fb7dd689ced012aa722b690b71" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString KFeedbackForm::formatComment </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Format the "personal comments" field for sending mail.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00215">215</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00179">_comment</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00153">sendMail()</a>.
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="kfeedback_8h-source.html">kfeedback.h</a><li>kshowmail/<a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a><li>kshowmail/<a class="el" href="kfeedback_8moc_8cpp-source.html">kfeedback.moc.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKFeedbackQuestion-members.html b/doc/html/classKFeedbackQuestion-members.html
new file mode 100644
index 0000000..14aa262
--- /dev/null
+++ b/doc/html/classKFeedbackQuestion-members.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KFeedbackQuestion Member List</h1>This is the complete list of members for <a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#8d6d302dac4b8dc4973ff7cf8aa5f852">_exclusiveAnswer</a></td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#f0209761e6a1c061b4749f4a0228afc3">_id</a></td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#4b1825caeff106b7a911ac725acdd8d1">_no</a></td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#2c946b672e2c0d163ffc3d4b64c61801">_required</a></td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>(const QString &amp;text, const QString &amp;id)</td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#40333b62b3defe8ebbe27fc8552bffff">exclusiveAnswer</a>()</td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#a8759ac15cc2bec6f1a9e183eb374574">firstAnswer</a>() const</td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#83626cfa4d3235b58028d011a7955add">id</a>()</td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#593b269b00a8da9152a66f31fcdf75f3">isAnswered</a>()</td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#5431a877415afca993aaefea86c0c7ec">isRequired</a>()</td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#72b655cc6c5414023d05669142053a7c">key</a>(int column, bool ascending) const</td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#74f81a22aec4f3969ac05fcef5d8dee4">KFeedbackQuestion</a>(KFeedbackQuestionList *parent, const QString &amp;text, const QString &amp;id, bool exclusiveAnswer=true, bool required=false, bool open=true)</td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#f3731cde03060c91a80ebb5c80f657a1">nextQuestion</a>() const</td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#f879e5220a516c94124130a2d0a1a2dd">questionList</a>() const</td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#51e0a1d351c8f7819f50a6ebf66c193d">result</a>()</td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestion.html#13730ea63a6d8de44866c9134cb88f3c">text</a>()</td><td><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKFeedbackQuestion.html b/doc/html/classKFeedbackQuestion.html
new file mode 100644
index 0000000..37cd13e
--- /dev/null
+++ b/doc/html/classKFeedbackQuestion.html
@@ -0,0 +1,424 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: KFeedbackQuestion Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KFeedbackQuestion Class Reference</h1><!-- doxytag: class="KFeedbackQuestion" --><code>#include &lt;<a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>&gt;</code>
+<p>
+<a href="classKFeedbackQuestion-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#74f81a22aec4f3969ac05fcef5d8dee4">KFeedbackQuestion</a> (<a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> *parent, const QString &amp;text, const QString &amp;id, bool exclusiveAnswer=true, bool required=false, bool open=true)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a> (const QString &amp;text, const QString &amp;id)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#5431a877415afca993aaefea86c0c7ec">isRequired</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#593b269b00a8da9152a66f31fcdf75f3">isAnswered</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#51e0a1d351c8f7819f50a6ebf66c193d">result</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#83626cfa4d3235b58028d011a7955add">id</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#13730ea63a6d8de44866c9134cb88f3c">text</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#40333b62b3defe8ebbe27fc8552bffff">exclusiveAnswer</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#72b655cc6c5414023d05669142053a7c">key</a> (int column, bool ascending) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#f3731cde03060c91a80ebb5c80f657a1">nextQuestion</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#a8759ac15cc2bec6f1a9e183eb374574">firstAnswer</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#f879e5220a516c94124130a2d0a1a2dd">questionList</a> () const</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f0209761e6a1c061b4749f4a0228afc3"></a><!-- doxytag: member="KFeedbackQuestion::_id" ref="f0209761e6a1c061b4749f4a0228afc3" args="" -->
+QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#f0209761e6a1c061b4749f4a0228afc3">_id</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8d6d302dac4b8dc4973ff7cf8aa5f852"></a><!-- doxytag: member="KFeedbackQuestion::_exclusiveAnswer" ref="8d6d302dac4b8dc4973ff7cf8aa5f852" args="" -->
+bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#8d6d302dac4b8dc4973ff7cf8aa5f852">_exclusiveAnswer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2c946b672e2c0d163ffc3d4b64c61801"></a><!-- doxytag: member="KFeedbackQuestion::_required" ref="2c946b672e2c0d163ffc3d4b64c61801" args="" -->
+bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#2c946b672e2c0d163ffc3d4b64c61801">_required</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4b1825caeff106b7a911ac725acdd8d1"></a><!-- doxytag: member="KFeedbackQuestion::_no" ref="4b1825caeff106b7a911ac725acdd8d1" args="" -->
+int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestion.html#4b1825caeff106b7a911ac725acdd8d1">_no</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+A user feedback question to be inserted into a <a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a>.
+<p>
+
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00275">275</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="74f81a22aec4f3969ac05fcef5d8dee4"></a><!-- doxytag: member="KFeedbackQuestion::KFeedbackQuestion" ref="74f81a22aec4f3969ac05fcef5d8dee4" args="(KFeedbackQuestionList *parent, const QString &amp;text, const QString &amp;id, bool exclusiveAnswer=true, bool required=false, bool open=true)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KFeedbackQuestion::KFeedbackQuestion </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> *&nbsp;</td>
+ <td class="paramname"> <em>parent</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>exclusiveAnswer</em> = <code>true</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>required</em> = <code>false</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>open</em> = <code>true</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor.<p>
+The parent <a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> assumes ownership of this object, so don't delete it unless you want to delete it from the question list as well.<p>
+'text' is the text the user will see (in his native language).<p>
+'id' is what will be sent with the feedback mail, thus it should be unique within the application, yet human readable (preferably English) and not contain any weird characters that might confuse scripts that are later used to automatically parse those mails. Examples: "features_not_liked", "stability"<p>
+Set 'required' to 'true' if answering this question is required to successfully complete this form.<p>
+Set 'exclusiveAnswer' to 'true' if only one of all answers may be checked at any one time, to 'false' if multiple answers are allowed.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00336">336</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00384">_no</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00324">KFeedbackQuestionList::questionAdded()</a>.
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="70dfbcfb7699accc62ca3f9c1b2da8b6"></a><!-- doxytag: member="KFeedbackQuestion::addAnswer" ref="70dfbcfb7699accc62ca3f9c1b2da8b6" args="(const QString &amp;text, const QString &amp;id)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KFeedbackQuestion::addAnswer </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>id</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Add an answer to this question. Again, 'text' is what the user will see (translated to his native language), 'id' is what you will get back with the mail. The answer IDs need only be unique for that question; answers to other questions may have the same ID.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00360">360</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00382">_exclusiveAnswer</a>.
+<p>
+Referenced by <a class="el" href="kshowmailfeedback_8cpp-source.html#l00130">KShowMailApp::addFeatureList()</a>, <a class="el" href="kfeedback_8cpp-source.html#l00303">KFeedbackQuestionList::addYesNoQuestion()</a>, and <a class="el" href="kshowmailfeedback_8cpp-source.html#l00023">KShowMailApp::slotSendFeedbackMail()</a>.
+</div>
+</div><p>
+<a class="anchor" name="5431a877415afca993aaefea86c0c7ec"></a><!-- doxytag: member="KFeedbackQuestion::isRequired" ref="5431a877415afca993aaefea86c0c7ec" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool KFeedbackQuestion::isRequired </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns if answering this question is required.
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00319">319</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00383">_required</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00254">KFeedbackQuestionList::isComplete()</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00324">KFeedbackQuestionList::questionAdded()</a>.
+</div>
+</div><p>
+<a class="anchor" name="593b269b00a8da9152a66f31fcdf75f3"></a><!-- doxytag: member="KFeedbackQuestion::isAnswered" ref="593b269b00a8da9152a66f31fcdf75f3" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool KFeedbackQuestion::isAnswered </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns if this question is answered satisfactorily.
+<p>
+If any number of answers is permitted for this question, this question is always considered to be answered.<p>
+If this question requires an exclusive answer, exactly one of them should be checked. We don't need to bother about more than one being checked here - QListView does that for us.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00368">368</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00382">_exclusiveAnswer</a>, <a class="el" href="kfeedback_8h-source.html#l00369">firstAnswer()</a>, <a class="el" href="kfeedback_8h-source.html#l00420">KFeedbackAnswer::isChecked()</a>, and <a class="el" href="kfeedback_8h-source.html#l00425">KFeedbackAnswer::nextAnswer()</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00254">KFeedbackQuestionList::isComplete()</a>.
+</div>
+</div><p>
+<a class="anchor" name="51e0a1d351c8f7819f50a6ebf66c193d"></a><!-- doxytag: member="KFeedbackQuestion::result" ref="51e0a1d351c8f7819f50a6ebf66c193d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString KFeedbackQuestion::result </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The result of this question in ASCII, e.g. recommend="yes" or features_i_like="builtin_tetris" features_i_like="pink_elephant" features_i_like="studlycapslyfier"
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00402">402</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00381">_id</a>, <a class="el" href="kfeedback_8h-source.html#l00369">firstAnswer()</a>, <a class="el" href="kfeedback_8h-source.html#l00405">KFeedbackAnswer::id()</a>, <a class="el" href="kfeedback_8h-source.html#l00420">KFeedbackAnswer::isChecked()</a>, and <a class="el" href="kfeedback_8h-source.html#l00425">KFeedbackAnswer::nextAnswer()</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00270">KFeedbackQuestionList::result()</a>.
+</div>
+</div><p>
+<a class="anchor" name="83626cfa4d3235b58028d011a7955add"></a><!-- doxytag: member="KFeedbackQuestion::id" ref="83626cfa4d3235b58028d011a7955add" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString KFeedbackQuestion::id </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Return this question's ID.
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00339">339</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00381">_id</a>.
+</div>
+</div><p>
+<a class="anchor" name="13730ea63a6d8de44866c9134cb88f3c"></a><!-- doxytag: member="KFeedbackQuestion::text" ref="13730ea63a6d8de44866c9134cb88f3c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString KFeedbackQuestion::text </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Return this question's text.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00430">430</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+</div>
+</div><p>
+<a class="anchor" name="40333b62b3defe8ebbe27fc8552bffff"></a><!-- doxytag: member="KFeedbackQuestion::exclusiveAnswer" ref="40333b62b3defe8ebbe27fc8552bffff" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool KFeedbackQuestion::exclusiveAnswer </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether or not this question requires an exclusive answer.
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00349">349</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00382">_exclusiveAnswer</a>.
+</div>
+</div><p>
+<a class="anchor" name="72b655cc6c5414023d05669142053a7c"></a><!-- doxytag: member="KFeedbackQuestion::key" ref="72b655cc6c5414023d05669142053a7c" args="(int column, bool ascending) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString KFeedbackQuestion::key </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>column</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>ascending</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the sort key.<p>
+Reimplemented from QListViewItem to maintain insertion order.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00437">437</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00384">_no</a>.
+</div>
+</div><p>
+<a class="anchor" name="f3731cde03060c91a80ebb5c80f657a1"></a><!-- doxytag: member="KFeedbackQuestion::nextQuestion" ref="f3731cde03060c91a80ebb5c80f657a1" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a>* KFeedbackQuestion::nextQuestion </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the next question or 0 if there is no more.
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00362">362</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00254">KFeedbackQuestionList::isComplete()</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00270">KFeedbackQuestionList::result()</a>.
+</div>
+</div><p>
+<a class="anchor" name="a8759ac15cc2bec6f1a9e183eb374574"></a><!-- doxytag: member="KFeedbackQuestion::firstAnswer" ref="a8759ac15cc2bec6f1a9e183eb374574" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKFeedbackAnswer.html">KFeedbackAnswer</a>* KFeedbackQuestion::firstAnswer </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the first possible answer to this question. Use <a class="el" href="classKFeedbackAnswer.html#31fe8732bdbda805d1306e5c86fcae91">KFeedbackAnswer::nextAnswer()</a> to get the next one.
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00369">369</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00368">isAnswered()</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00402">result()</a>.
+</div>
+</div><p>
+<a class="anchor" name="f879e5220a516c94124130a2d0a1a2dd"></a><!-- doxytag: member="KFeedbackQuestion::questionList" ref="f879e5220a516c94124130a2d0a1a2dd" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> * KFeedbackQuestion::questionList </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the <a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> this question belongs to or 0 if the parent is no <a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a>.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00447">447</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00491">KFeedbackAnswer::stateChange()</a>.
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="kfeedback_8h-source.html">kfeedback.h</a><li>kshowmail/<a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKFeedbackQuestionList-members.html b/doc/html/classKFeedbackQuestionList-members.html
new file mode 100644
index 0000000..73dc057
--- /dev/null
+++ b/doc/html/classKFeedbackQuestionList-members.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KFeedbackQuestionList Member List</h1>This is the complete list of members for <a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>(const QString &amp;text, const QString &amp;id, bool exclusiveAnswer=true, bool required=false)</td><td><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestionList.html#9408bbc813e69ef33693cffa0ddd7c91">addYesNoQuestion</a>(const QString &amp;text, const QString &amp;id, bool required=false)</td><td><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestionList.html#7eb8b8f5254845e7a559b3da1fa34ba4">checkComplete</a>()</td><td><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestionList.html#37589f00f7f3e9c544780be24e122f21">firstQuestion</a>() const</td><td><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestionList.html#5834cfcbdf74ac1d8762c037dc492291">isComplete</a>()</td><td><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestionList.html#c666871537387a102c9f6372aa8875e8">KFeedbackQuestionList</a>(QWidget *parent)</td><td><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestionList.html#3a0c308081a834c24cdd576a694174dd">questionAdded</a>(KFeedbackQuestion *question)</td><td><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestionList.html#9c8ed9fbb0f64a8748806f3850d2db14">questionAnswered</a>()</td><td><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestionList.html#f31a9d0c7b6f06cfca9f76ccba5743f0">result</a>()</td><td><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKFeedbackQuestionList.html#b467b667cbd906403af3222ab7a3e602">~KFeedbackQuestionList</a>()</td><td><a class="el" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a></td><td><code> [virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKFeedbackQuestionList.html b/doc/html/classKFeedbackQuestionList.html
new file mode 100644
index 0000000..0973549
--- /dev/null
+++ b/doc/html/classKFeedbackQuestionList.html
@@ -0,0 +1,343 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: KFeedbackQuestionList Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KFeedbackQuestionList Class Reference</h1><!-- doxytag: class="KFeedbackQuestionList" --><code>#include &lt;<a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>&gt;</code>
+<p>
+<a href="classKFeedbackQuestionList-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Signals</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestionList.html#7eb8b8f5254845e7a559b3da1fa34ba4">checkComplete</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestionList.html#c666871537387a102c9f6372aa8875e8">KFeedbackQuestionList</a> (QWidget *parent)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestionList.html#b467b667cbd906403af3222ab7a3e602">~KFeedbackQuestionList</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestionList.html#5834cfcbdf74ac1d8762c037dc492291">isComplete</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestionList.html#f31a9d0c7b6f06cfca9f76ccba5743f0">result</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a> (const QString &amp;text, const QString &amp;id, bool exclusiveAnswer=true, bool required=false)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestionList.html#9408bbc813e69ef33693cffa0ddd7c91">addYesNoQuestion</a> (const QString &amp;text, const QString &amp;id, bool required=false)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestionList.html#37589f00f7f3e9c544780be24e122f21">firstQuestion</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestionList.html#9c8ed9fbb0f64a8748806f3850d2db14">questionAnswered</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKFeedbackQuestionList.html#3a0c308081a834c24cdd576a694174dd">questionAdded</a> (<a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> *question)</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+List of feedback questions presented in a QListView widget.
+<p>
+
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00187">187</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="c666871537387a102c9f6372aa8875e8"></a><!-- doxytag: member="KFeedbackQuestionList::KFeedbackQuestionList" ref="c666871537387a102c9f6372aa8875e8" args="(QWidget *parent)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KFeedbackQuestionList::KFeedbackQuestionList </td>
+ <td>(</td>
+ <td class="paramtype">QWidget *&nbsp;</td>
+ <td class="paramname"> <em>parent</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00239">239</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+</div>
+</div><p>
+<a class="anchor" name="b467b667cbd906403af3222ab7a3e602"></a><!-- doxytag: member="KFeedbackQuestionList::~KFeedbackQuestionList" ref="b467b667cbd906403af3222ab7a3e602" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KFeedbackQuestionList::~KFeedbackQuestionList </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Destructor.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00247">247</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="5834cfcbdf74ac1d8762c037dc492291"></a><!-- doxytag: member="KFeedbackQuestionList::isComplete" ref="5834cfcbdf74ac1d8762c037dc492291" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool KFeedbackQuestionList::isComplete </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether or not this question list is answered satisfactorily, i.e. if all questions marked as "required" are answered.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00254">254</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00247">firstQuestion()</a>, <a class="el" href="kfeedback_8cpp-source.html#l00368">KFeedbackQuestion::isAnswered()</a>, <a class="el" href="kfeedback_8h-source.html#l00319">KFeedbackQuestion::isRequired()</a>, and <a class="el" href="kfeedback_8h-source.html#l00362">KFeedbackQuestion::nextQuestion()</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00229">KFeedbackForm::readyToSend()</a>.
+</div>
+</div><p>
+<a class="anchor" name="f31a9d0c7b6f06cfca9f76ccba5743f0"></a><!-- doxytag: member="KFeedbackQuestionList::result" ref="f31a9d0c7b6f06cfca9f76ccba5743f0" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString KFeedbackQuestionList::result </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The result of all answered questions in ASCII.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00270">270</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8h-source.html#l00247">firstQuestion()</a>, <a class="el" href="kfeedback_8h-source.html#l00362">KFeedbackQuestion::nextQuestion()</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00402">KFeedbackQuestion::result()</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00153">KFeedbackForm::sendMail()</a>.
+</div>
+</div><p>
+<a class="anchor" name="7c043c6ca2c63fae277e7b43fcb8d145"></a><!-- doxytag: member="KFeedbackQuestionList::addQuestion" ref="7c043c6ca2c63fae277e7b43fcb8d145" args="(const QString &amp;text, const QString &amp;id, bool exclusiveAnswer=true, bool required=false)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * KFeedbackQuestionList::addQuestion </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>exclusiveAnswer</em> = <code>true</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>required</em> = <code>false</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Add a yes/no question to the list.<p>
+'text' is the text the user will see (in his native language).<p>
+'id' is what will be sent with the feedback mail, thus it should be unique within the application, yet human readable (preferably English) and not contain any weird characters that might confuse scripts that are later used to automatically parse those mails. Examples: "would_recommend_to_a_friend"<p>
+Set 'required' to 'true' if answering this question is required to successfully complete this form.<p>
+Returns a pointer to this question so you can add answers.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00288">288</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+Referenced by <a class="el" href="kshowmailfeedback_8cpp-source.html#l00023">KShowMailApp::slotSendFeedbackMail()</a>.
+</div>
+</div><p>
+<a class="anchor" name="9408bbc813e69ef33693cffa0ddd7c91"></a><!-- doxytag: member="KFeedbackQuestionList::addYesNoQuestion" ref="9408bbc813e69ef33693cffa0ddd7c91" args="(const QString &amp;text, const QString &amp;id, bool required=false)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KFeedbackQuestionList::addYesNoQuestion </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>required</em> = <code>false</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Add a yes/no question to the list.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00303">303</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8cpp-source.html#l00360">KFeedbackQuestion::addAnswer()</a>.
+<p>
+Referenced by <a class="el" href="kshowmailfeedback_8cpp-source.html#l00023">KShowMailApp::slotSendFeedbackMail()</a>.
+</div>
+</div><p>
+<a class="anchor" name="37589f00f7f3e9c544780be24e122f21"></a><!-- doxytag: member="KFeedbackQuestionList::firstQuestion" ref="37589f00f7f3e9c544780be24e122f21" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a>* KFeedbackQuestionList::firstQuestion </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the first question of that list. Use KFeedbackQuestion::next() to get the next one.
+<p>
+Definition at line <a class="el" href="kfeedback_8h-source.html#l00247">247</a> of file <a class="el" href="kfeedback_8h-source.html">kfeedback.h</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00254">isComplete()</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00270">result()</a>.
+</div>
+</div><p>
+<a class="anchor" name="9c8ed9fbb0f64a8748806f3850d2db14"></a><!-- doxytag: member="KFeedbackQuestionList::questionAnswered" ref="9c8ed9fbb0f64a8748806f3850d2db14" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KFeedbackQuestionList::questionAnswered </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Notify the list that another question has been answered. Emits the <a class="el" href="classKFeedbackQuestionList.html#7eb8b8f5254845e7a559b3da1fa34ba4">checkComplete()</a> signal when all required questions are answered.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00318">318</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8moc_8cpp-source.html#l00286">checkComplete()</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00491">KFeedbackAnswer::stateChange()</a>.
+</div>
+</div><p>
+<a class="anchor" name="3a0c308081a834c24cdd576a694174dd"></a><!-- doxytag: member="KFeedbackQuestionList::questionAdded" ref="3a0c308081a834c24cdd576a694174dd" args="(KFeedbackQuestion *question)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KFeedbackQuestionList::questionAdded </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> *&nbsp;</td>
+ <td class="paramname"> <em>question</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Notify the list that another question has been added. Emits the <a class="el" href="classKFeedbackQuestionList.html#7eb8b8f5254845e7a559b3da1fa34ba4">checkComplete()</a> signal when a required question is added.
+<p>
+Definition at line <a class="el" href="kfeedback_8cpp-source.html#l00324">324</a> of file <a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a>.
+<p>
+References <a class="el" href="kfeedback_8moc_8cpp-source.html#l00286">checkComplete()</a>, and <a class="el" href="kfeedback_8h-source.html#l00319">KFeedbackQuestion::isRequired()</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00336">KFeedbackQuestion::KFeedbackQuestion()</a>.
+</div>
+</div><p>
+<a class="anchor" name="7eb8b8f5254845e7a559b3da1fa34ba4"></a><!-- doxytag: member="KFeedbackQuestionList::checkComplete" ref="7eb8b8f5254845e7a559b3da1fa34ba4" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KFeedbackQuestionList::checkComplete </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Emitted when all required questions are answered.
+<p>
+Definition at line <a class="el" href="kfeedback_8moc_8cpp-source.html#l00286">286</a> of file <a class="el" href="kfeedback_8moc_8cpp-source.html">kfeedback.moc.cpp</a>.
+<p>
+Referenced by <a class="el" href="kfeedback_8cpp-source.html#l00324">questionAdded()</a>, and <a class="el" href="kfeedback_8cpp-source.html#l00318">questionAnswered()</a>.
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="kfeedback_8h-source.html">kfeedback.h</a><li>kshowmail/<a class="el" href="kfeedback_8cpp-source.html">kfeedback.cpp</a><li>kshowmail/<a class="el" href="kfeedback_8moc_8cpp-source.html">kfeedback.moc.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKShowMailApp-members.html b/doc/html/classKShowMailApp-members.html
new file mode 100644
index 0000000..96a9e94
--- /dev/null
+++ b/doc/html/classKShowMailApp-members.html
@@ -0,0 +1,85 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KShowMailApp Member List</h1>This is the complete list of members for <a class="el" href="classKShowMailApp.html">KShowMailApp</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#7928ea906a7abe17a5f56f110cdd58d6">addFeatureList</a>(KFeedbackQuestion *question)</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#d93e3467abdad835b02dde5f514c4013">askCloseConfirmation</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#14a17e70bed413c7d4ebffc9f5e87892">delayNextRefresh</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#716d32f4f37dd7b97f0e73a6c124caeb">event</a>(QEvent *e)</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#b1458865e7903295c05c0ffc08fd72fa">fLog</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#4f13d29b34bf4dd08804489ad1f41a82">initActions</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#1187c5d08f904b1e6c7beff58c3e9d53">initDocument</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#18e1fcab0be78c65bf68ba66109a30b6">initFirstRefresh</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#c538f5c093b0c3dae4df29247d075dfc">initNextRefresh</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#daaa25d851b56449b16c942d099fbf86">initStatusBar</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#4b1f509a80c9927f7701005685350a0a">initView</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#e8728a02ab3a7e20cb1d256590788575">KShowMailApp</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#3babed6869c8529c61d0b4719140307f">KshowmailDock</a> class</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [friend]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#95753bb48121b9a00bbbf185d46a5c1b">KshowmailView</a> class</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [friend]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#cdd1b63955d1dd5c9d78d551fc86ef74">m_actionRefresh</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#f211146f325bcca8c7c680ad46c9aab8">m_bForceClose</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">m_pAbout</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#326f322d7f82738efd2399f077fab6e2">m_pDoc</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">m_pDockWindow</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#347ed7817554f0a8c6e078101ce1babb">queryClose</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#2e471542abbac9779cd38a4f63ec5187">queryExit</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">SetupDialog</a></td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#03f1ae7df67069b5a7a9d54c39e94924">slotAccountActivated</a>(QListViewItem *)</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#073b29df0ea7fa4c1a5245dd87bd1b6c">slotAlertDestroyed</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#cb8e7126aec305899d7109863f99d6d4">slotAlertOk</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#7655fe082dfda144367a152c58827c7f">slotConfChanged</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#ad1a25c5c31f911f7c21b3aedc682e8e">slotDelete</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#a77267f88c63edad44b7e82d0b398fc6">slotDeletionReady</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#772f86e96418116ac58943d1bb0c3acb">slotEditToolbars</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#6d18177026c4c8d276e690c405c9fcd7">slotFileQuit</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#f94f8e79fcd9b35eea937b2533912e86">slotForceClose</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#86c54998aa412571f0b471efd32e8ef9">slotNormalCursor</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">slotRefresh</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#911c2c1823421973f97e4ea2cc51e710">slotRefreshReady</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#68bebd7208b03fe4fe1aa23be83f7536">slotRefreshView</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#c97f2ac7f5c12aab46651f818f414109">slotSaveOptions</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#cb6b97d7b759372c2ab7690fc70d1518">slotSendFeedbackMail</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#9d907211db6387cf6e395c22a9642c3b">slotSetup</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#65f99925664c07c6eafa2b375352ad34">slotSetupAccount</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#c9f6636accea83b903904c8767e4e65c">slotShowFilterLog</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#7b9553bf179124f9f1eb56bdd094b901">slotShowHeader</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#34c235044988b2d43c0e43d249831dc1">slotShowMessage</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#3b9805091025c531842807e28e29cc10">slotShowMessageReady</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#1b373417eded77fcd51e23c0dca87467">slotStatusHelpMsg</a>(const QString &amp;text)</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">slotStatusMsg</a>(const QString &amp;text)</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#b9a90ef9062595e4cbebee5851206ec9">slotStop</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#36b54a32e442ec8bab250c3c87f08962">slotWaitingCursor</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#7ab6f6a1037c6d00e1fd0f8cdf966d47">stopRefreshTimer</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#79825417f6967185146c48de3278a80c">timerEvent</a>(QTimerEvent *)</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [protected, virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#d5008f2e1c7aac94129746c60836d338">UniqueApp</a> class</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td><code> [friend]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailApp.html#3b3759d8593576edfa0b3fab62ce26c0">~KShowMailApp</a>()</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKShowMailApp.html b/doc/html/classKShowMailApp.html
new file mode 100644
index 0000000..9d618a8
--- /dev/null
+++ b/doc/html/classKShowMailApp.html
@@ -0,0 +1,1211 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: KShowMailApp Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KShowMailApp Class Reference</h1><!-- doxytag: class="KShowMailApp" --><code>#include &lt;<a class="el" href="kshowmail_8h-source.html">kshowmail.h</a>&gt;</code>
+<p>
+<a href="classKShowMailApp-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#e8728a02ab3a7e20cb1d256590788575">KShowMailApp</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#3b3759d8593576edfa0b3fab62ce26c0">~KShowMailApp</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#14a17e70bed413c7d4ebffc9f5e87892">delayNextRefresh</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static KAboutData *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">m_pAbout</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#1b373417eded77fcd51e23c0dca87467">slotStatusHelpMsg</a> (const QString &amp;text)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">slotStatusMsg</a> (const QString &amp;text)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#7655fe082dfda144367a152c58827c7f">slotConfChanged</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#ad1a25c5c31f911f7c21b3aedc682e8e">slotDelete</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#a77267f88c63edad44b7e82d0b398fc6">slotDeletionReady</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#34c235044988b2d43c0e43d249831dc1">slotShowMessage</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#3b9805091025c531842807e28e29cc10">slotShowMessageReady</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#86c54998aa412571f0b471efd32e8ef9">slotNormalCursor</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#36b54a32e442ec8bab250c3c87f08962">slotWaitingCursor</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">slotRefresh</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#911c2c1823421973f97e4ea2cc51e710">slotRefreshReady</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#073b29df0ea7fa4c1a5245dd87bd1b6c">slotAlertDestroyed</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#cb8e7126aec305899d7109863f99d6d4">slotAlertOk</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#68bebd7208b03fe4fe1aa23be83f7536">slotRefreshView</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#b9a90ef9062595e4cbebee5851206ec9">slotStop</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#7b9553bf179124f9f1eb56bdd094b901">slotShowHeader</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#772f86e96418116ac58943d1bb0c3acb">slotEditToolbars</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#c97f2ac7f5c12aab46651f818f414109">slotSaveOptions</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#6d18177026c4c8d276e690c405c9fcd7">slotFileQuit</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#65f99925664c07c6eafa2b375352ad34">slotSetupAccount</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#9d907211db6387cf6e395c22a9642c3b">slotSetup</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#c9f6636accea83b903904c8767e4e65c">slotShowFilterLog</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#03f1ae7df67069b5a7a9d54c39e94924">slotAccountActivated</a> (QListViewItem *)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#cb6b97d7b759372c2ab7690fc70d1518">slotSendFeedbackMail</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#f94f8e79fcd9b35eea937b2533912e86">slotForceClose</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#daaa25d851b56449b16c942d099fbf86">initStatusBar</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#4f13d29b34bf4dd08804489ad1f41a82">initActions</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#1187c5d08f904b1e6c7beff58c3e9d53">initDocument</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#4b1f509a80c9927f7701005685350a0a">initView</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#347ed7817554f0a8c6e078101ce1babb">queryClose</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#2e471542abbac9779cd38a4f63ec5187">queryExit</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#79825417f6967185146c48de3278a80c">timerEvent</a> (QTimerEvent *)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#716d32f4f37dd7b97f0e73a6c124caeb">event</a> (QEvent *e)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#18e1fcab0be78c65bf68ba66109a30b6">initFirstRefresh</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#7ab6f6a1037c6d00e1fd0f8cdf966d47">stopRefreshTimer</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#c538f5c093b0c3dae4df29247d075dfc">initNextRefresh</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#7928ea906a7abe17a5f56f110cdd58d6">addFeatureList</a> (KFeedbackQuestion *question)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#d93e3467abdad835b02dde5f514c4013">askCloseConfirmation</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#326f322d7f82738efd2399f077fab6e2">m_pDoc</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKshowmailView.html">KshowmailView</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KCMultiDialog *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">SetupDialog</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KAction *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#cdd1b63955d1dd5c9d78d551fc86ef74">m_actionRefresh</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classConfigList.html">ConfigList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classAlertDialog.html">AlertDialog</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKShowMailDock.html">KShowMailDock</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">m_pDockWindow</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QTimer *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565">Types::State_Type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classFilterLog.html">FilterLog</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#b1458865e7903295c05c0ffc08fd72fa">fLog</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#f211146f325bcca8c7c680ad46c9aab8">m_bForceClose</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#95753bb48121b9a00bbbf185d46a5c1b">KshowmailView</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#3babed6869c8529c61d0b4719140307f">KshowmailDock</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailApp.html#d5008f2e1c7aac94129746c60836d338">UniqueApp</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+The base class for Kshowmail application windows. It sets up the main window and reads the config file as well as providing a menubar, toolbar and statusbar. An instance of <a class="el" href="classKshowmailView.html">KshowmailView</a> creates your center view, which is connected to the window's Doc object. <a class="el" href="classKShowMailApp.html">KShowMailApp</a> reimplements the methods that KMainWindow provides for main window handling and supports full session management as well as keyboard accelerator configuration by using KAccel. <dl class="see" compact><dt><b>See also:</b></dt><dd>KMainWindow <p>
+KApplication <p>
+KConfig <p>
+KAccel</dd></dl>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Source Framework Automatically Generated by KDevelop, (c) The KDevelop Team. </dd></dl>
+<dl class="version" compact><dt><b>Version:</b></dt><dd>KDevelop version 0.4 code generation </dd></dl>
+
+<p>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="e8728a02ab3a7e20cb1d256590788575"></a><!-- doxytag: member="KShowMailApp::KShowMailApp" ref="e8728a02ab3a7e20cb1d256590788575" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KShowMailApp::KShowMailApp </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor of <a class="el" href="classKShowMailApp.html">KShowMailApp</a>, calls all init functions to create the application. <dl class="see" compact><dt><b>See also:</b></dt><dd>initMenuBar initToolBar </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="3b3759d8593576edfa0b3fab62ce26c0"></a><!-- doxytag: member="KShowMailApp::~KShowMailApp" ref="3b3759d8593576edfa0b3fab62ce26c0" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KShowMailApp::~KShowMailApp </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Destructor
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="14a17e70bed413c7d4ebffc9f5e87892"></a><!-- doxytag: member="KShowMailApp::delayNextRefresh" ref="14a17e70bed413c7d4ebffc9f5e87892" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::delayNextRefresh </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Delays the next refresh for one minute.
+</div>
+</div><p>
+<a class="anchor" name="daaa25d851b56449b16c942d099fbf86"></a><!-- doxytag: member="KShowMailApp::initStatusBar" ref="daaa25d851b56449b16c942d099fbf86" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::initStatusBar </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+sets up the statusbar for the main window by initialzing a statuslabel.
+</div>
+</div><p>
+<a class="anchor" name="4f13d29b34bf4dd08804489ad1f41a82"></a><!-- doxytag: member="KShowMailApp::initActions" ref="4f13d29b34bf4dd08804489ad1f41a82" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::initActions </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+sets up the actions.
+</div>
+</div><p>
+<a class="anchor" name="1187c5d08f904b1e6c7beff58c3e9d53"></a><!-- doxytag: member="KShowMailApp::initDocument" ref="1187c5d08f904b1e6c7beff58c3e9d53" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::initDocument </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+initializes the document object of the main window that is connected to the view in <a class="el" href="classKShowMailApp.html#4b1f509a80c9927f7701005685350a0a">initView()</a>. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classKShowMailApp.html#4b1f509a80c9927f7701005685350a0a">initView()</a>; </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="4b1f509a80c9927f7701005685350a0a"></a><!-- doxytag: member="KShowMailApp::initView" ref="4b1f509a80c9927f7701005685350a0a" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::initView </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+creates the centerwidget of the KMainWindow instance and sets it as the view
+</div>
+</div><p>
+<a class="anchor" name="347ed7817554f0a8c6e078101ce1babb"></a><!-- doxytag: member="KShowMailApp::queryClose" ref="347ed7817554f0a8c6e078101ce1babb" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool KShowMailApp::queryClose </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+queryClose is called by KMainWindow on each closeEvent of a window. Against the default implementation (only returns true), this calles saveModified() on the document object to ask if the document should be saved if Modified; on cancel the closeEvent is rejected. <dl class="see" compact><dt><b>See also:</b></dt><dd>KMainWindow::queryClose <p>
+KMainWindow::closeEvent </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="2e471542abbac9779cd38a4f63ec5187"></a><!-- doxytag: member="KShowMailApp::queryExit" ref="2e471542abbac9779cd38a4f63ec5187" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool KShowMailApp::queryExit </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+queryExit is called by KMainWindow when the last window of the app is going to be closed during the closeEvent(). Against the default implementation that just returns true, this calls saveOptions() to save the settings of the last window's properties. <dl class="see" compact><dt><b>See also:</b></dt><dd>KMainWindow::queryExit <p>
+KMainWindow::closeEvent </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="79825417f6967185146c48de3278a80c"></a><!-- doxytag: member="KShowMailApp::timerEvent" ref="79825417f6967185146c48de3278a80c" args="(QTimerEvent *)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::timerEvent </td>
+ <td>(</td>
+ <td class="paramtype">QTimerEvent *&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+overwrite method of QObject; will be invoked by the internal QObject-Timer the timer is set to 1 second in the construtor; this method sets the time to the next refresh in the statusbar and animates the "?" in the traybar, when the refresh is working
+</div>
+</div><p>
+<a class="anchor" name="716d32f4f37dd7b97f0e73a6c124caeb"></a><!-- doxytag: member="KShowMailApp::event" ref="716d32f4f37dd7b97f0e73a6c124caeb" args="(QEvent *e)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool KShowMailApp::event </td>
+ <td>(</td>
+ <td class="paramtype">QEvent *&nbsp;</td>
+ <td class="paramname"> <em>e</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+overwrite method of QWidget; to hide the taskbar button
+</div>
+</div><p>
+<a class="anchor" name="18e1fcab0be78c65bf68ba66109a30b6"></a><!-- doxytag: member="KShowMailApp::initFirstRefresh" ref="18e1fcab0be78c65bf68ba66109a30b6" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::initFirstRefresh </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Starts the first refresh or starts the refresh timer with the configured init time.
+</div>
+</div><p>
+<a class="anchor" name="7ab6f6a1037c6d00e1fd0f8cdf966d47"></a><!-- doxytag: member="KShowMailApp::stopRefreshTimer" ref="7ab6f6a1037c6d00e1fd0f8cdf966d47" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::stopRefreshTimer </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Stops the refresh timer.
+</div>
+</div><p>
+<a class="anchor" name="c538f5c093b0c3dae4df29247d075dfc"></a><!-- doxytag: member="KShowMailApp::initNextRefresh" ref="c538f5c093b0c3dae4df29247d075dfc" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::initNextRefresh </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Starts the refresh timer for the next refresh.
+</div>
+</div><p>
+<a class="anchor" name="1b373417eded77fcd51e23c0dca87467"></a><!-- doxytag: member="KShowMailApp::slotStatusHelpMsg" ref="1b373417eded77fcd51e23c0dca87467" args="(const QString &amp;text)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotStatusHelpMsg </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>text</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Changes the status message of the whole statusbar for two seconds, then restores the last status. This is used to display statusbar messages that give information about actions for toolbar icons and menu entries. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>the text that is displayed in the statusbar </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="a56b9b808644dd11577b35e18716615f"></a><!-- doxytag: member="KShowMailApp::slotStatusMsg" ref="a56b9b808644dd11577b35e18716615f" args="(const QString &amp;text)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotStatusMsg </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>text</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Changes the contents in the left status bar item permanently, used to indicate current actions. And sets the current time in the right item. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>the text that is displayed in the statusbar </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="7655fe082dfda144367a152c58827c7f"></a><!-- doxytag: member="KShowMailApp::slotConfChanged" ref="7655fe082dfda144367a152c58827c7f" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotConfChanged </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with the setup dialog. Reloads the configuration, if it was changed from the dialog.
+</div>
+</div><p>
+<a class="anchor" name="ad1a25c5c31f911f7c21b3aedc682e8e"></a><!-- doxytag: member="KShowMailApp::slotDelete" ref="ad1a25c5c31f911f7c21b3aedc682e8e" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotDelete </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with action m_actionDelete. Deletes all selected mails.
+</div>
+</div><p>
+<a class="anchor" name="a77267f88c63edad44b7e82d0b398fc6"></a><!-- doxytag: member="KShowMailApp::slotDeletionReady" ref="a77267f88c63edad44b7e82d0b398fc6" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotDeletionReady </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal sigDeleteReady of m_ConfigList. This signal will be emitted when one or many accounts have ended a deletion. This slot refreshes the view, sets the state to idle and sets a normal cursor.
+</div>
+</div><p>
+<a class="anchor" name="34c235044988b2d43c0e43d249831dc1"></a><!-- doxytag: member="KShowMailApp::slotShowMessage" ref="34c235044988b2d43c0e43d249831dc1" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotShowMessage </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with action m_actionShowMessage. Shows all selected mails.
+</div>
+</div><p>
+<a class="anchor" name="3b9805091025c531842807e28e29cc10"></a><!-- doxytag: member="KShowMailApp::slotShowMessageReady" ref="3b9805091025c531842807e28e29cc10" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotShowMessageReady </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal sigShowBodiesReady of m_ConfigList. This signal will be emitted when all accounts have downloaded and shown the selected messages. This slot sets the state to idle and sets a normal cursor.
+</div>
+</div><p>
+<a class="anchor" name="86c54998aa412571f0b471efd32e8ef9"></a><!-- doxytag: member="KShowMailApp::slotNormalCursor" ref="86c54998aa412571f0b471efd32e8ef9" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotNormalCursor </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal sigMessageWindowOpened of m_ConfigList. This signal will be emitted when a window to show a mail body was opened. Switches the cursor to normal view.
+</div>
+</div><p>
+<a class="anchor" name="36b54a32e442ec8bab250c3c87f08962"></a><!-- doxytag: member="KShowMailApp::slotWaitingCursor" ref="36b54a32e442ec8bab250c3c87f08962" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotWaitingCursor </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal sigAllMessageWindowsClosed of m_ConfigList. This signal will be emitted when all windows to show a mail body have been closed. Switches the cursor to waiting view.
+</div>
+</div><p>
+<a class="anchor" name="8c64c6da0904a063988211fc2e5b5ee7"></a><!-- doxytag: member="KShowMailApp::slotRefresh" ref="8c64c6da0904a063988211fc2e5b5ee7" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotRefresh </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with m_actionRefresh. Refreshes the mail list.
+</div>
+</div><p>
+<a class="anchor" name="911c2c1823421973f97e4ea2cc51e710"></a><!-- doxytag: member="KShowMailApp::slotRefreshReady" ref="911c2c1823421973f97e4ea2cc51e710" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotRefreshReady </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal sigRefreshReady of m_ConfigList. This signal will be emitted when all accounts have refreshed their mail list. This slot refreshes the mail view.
+</div>
+</div><p>
+<a class="anchor" name="073b29df0ea7fa4c1a5245dd87bd1b6c"></a><!-- doxytag: member="KShowMailApp::slotAlertDestroyed" ref="073b29df0ea7fa4c1a5245dd87bd1b6c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotAlertDestroyed </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal destroyed of the alert message dialog. Sets m_pAlertDialog to NULL, if the dialog was destroyed. If m_pAlertDialog == NULL, slotRefreshReady will create a new instance of it. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a> <p>
+<a class="el" href="classKShowMailApp.html#911c2c1823421973f97e4ea2cc51e710">slotRefreshReady()</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="cb8e7126aec305899d7109863f99d6d4"></a><!-- doxytag: member="KShowMailApp::slotAlertOk" ref="cb8e7126aec305899d7109863f99d6d4" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotAlertOk </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal signalOk of the alert message dialog. Switches the main window to normal view. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a>; </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="68bebd7208b03fe4fe1aa23be83f7536"></a><!-- doxytag: member="KShowMailApp::slotRefreshView" ref="68bebd7208b03fe4fe1aa23be83f7536" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotRefreshView </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Refreshes the account and messages list view.
+</div>
+</div><p>
+<a class="anchor" name="b9a90ef9062595e4cbebee5851206ec9"></a><!-- doxytag: member="KShowMailApp::slotStop" ref="b9a90ef9062595e4cbebee5851206ec9" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotStop </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+If the application state is not "idle" it will stop all current running POP3 jobs. Connected with m_actionStop().
+</div>
+</div><p>
+<a class="anchor" name="7b9553bf179124f9f1eb56bdd094b901"></a><!-- doxytag: member="KShowMailApp::slotShowHeader" ref="7b9553bf179124f9f1eb56bdd094b901" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotShowHeader </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Shows the headers of all selected mails. Connected with action m_actionShowHeader.
+</div>
+</div><p>
+<a class="anchor" name="772f86e96418116ac58943d1bb0c3acb"></a><!-- doxytag: member="KShowMailApp::slotEditToolbars" ref="772f86e96418116ac58943d1bb0c3acb" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotEditToolbars </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with standard action configureToolbars. Opens a dialog to configure the icons of the toolbar.
+</div>
+</div><p>
+<a class="anchor" name="c97f2ac7f5c12aab46651f818f414109"></a><!-- doxytag: member="KShowMailApp::slotSaveOptions" ref="c97f2ac7f5c12aab46651f818f414109" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotSaveOptions </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Saves GUI options, account and filter settings to the configuration file.
+</div>
+</div><p>
+<a class="anchor" name="6d18177026c4c8d276e690c405c9fcd7"></a><!-- doxytag: member="KShowMailApp::slotFileQuit" ref="6d18177026c4c8d276e690c405c9fcd7" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotFileQuit </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Calls the close() method of <a class="el" href="classKShowMailApp.html">KShowMailApp</a> to exit the application. Uses <a class="el" href="classKShowMailApp.html#d93e3467abdad835b02dde5f514c4013">askCloseConfirmation()</a> to ask the user (if configured). Sets m_bForceClose to TRUE, therefore <a class="el" href="classKShowMailApp.html#347ed7817554f0a8c6e078101ce1babb">queryClose()</a> will be passed without anything to do. After that in <a class="el" href="classKShowMailApp.html#2e471542abbac9779cd38a4f63ec5187">queryExit()</a> <a class="el" href="classKShowMailApp.html#c97f2ac7f5c12aab46651f818f414109">slotSaveOptions()</a> will be invoked.
+</div>
+</div><p>
+<a class="anchor" name="65f99925664c07c6eafa2b375352ad34"></a><!-- doxytag: member="KShowMailApp::slotSetupAccount" ref="65f99925664c07c6eafa2b375352ad34" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotSetupAccount </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Opens the setup dialog for the highlighted account. Connected with m_actionSetupAccount.
+</div>
+</div><p>
+<a class="anchor" name="9d907211db6387cf6e395c22a9642c3b"></a><!-- doxytag: member="KShowMailApp::slotSetup" ref="9d907211db6387cf6e395c22a9642c3b" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotSetup </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with the standard setup action. If the application state is "idle" (m_state == idle) it will open the configuration dialog.
+</div>
+</div><p>
+<a class="anchor" name="c9f6636accea83b903904c8767e4e65c"></a><!-- doxytag: member="KShowMailApp::slotShowFilterLog" ref="c9f6636accea83b903904c8767e4e65c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotShowFilterLog </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Shows the filter log.
+</div>
+</div><p>
+<a class="anchor" name="03f1ae7df67069b5a7a9d54c39e94924"></a><!-- doxytag: member="KShowMailApp::slotAccountActivated" ref="03f1ae7df67069b5a7a9d54c39e94924" args="(QListViewItem *)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotAccountActivated </td>
+ <td>(</td>
+ <td class="paramtype">QListViewItem *&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="cb6b97d7b759372c2ab7690fc70d1518"></a><!-- doxytag: member="KShowMailApp::slotSendFeedbackMail" ref="cb6b97d7b759372c2ab7690fc70d1518" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotSendFeedbackMail </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="f94f8e79fcd9b35eea937b2533912e86"></a><!-- doxytag: member="KShowMailApp::slotForceClose" ref="f94f8e79fcd9b35eea937b2533912e86" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::slotForceClose </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="7928ea906a7abe17a5f56f110cdd58d6"></a><!-- doxytag: member="KShowMailApp::addFeatureList" ref="7928ea906a7abe17a5f56f110cdd58d6" args="(KFeedbackQuestion *question)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailApp::addFeatureList </td>
+ <td>(</td>
+ <td class="paramtype">KFeedbackQuestion *&nbsp;</td>
+ <td class="paramname"> <em>question</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="d93e3467abdad835b02dde5f514c4013"></a><!-- doxytag: member="KShowMailApp::askCloseConfirmation" ref="d93e3467abdad835b02dde5f514c4013" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool KShowMailApp::askCloseConfirmation </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Friends And Related Function Documentation</h2>
+<a class="anchor" name="95753bb48121b9a00bbbf185d46a5c1b"></a><!-- doxytag: member="KShowMailApp::KshowmailView" ref="95753bb48121b9a00bbbf185d46a5c1b" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classKshowmailView.html">KshowmailView</a><code> [friend]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="3babed6869c8529c61d0b4719140307f"></a><!-- doxytag: member="KShowMailApp::KshowmailDock" ref="3babed6869c8529c61d0b4719140307f" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class KshowmailDock<code> [friend]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="d5008f2e1c7aac94129746c60836d338"></a><!-- doxytag: member="KShowMailApp::UniqueApp" ref="d5008f2e1c7aac94129746c60836d338" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classUniqueApp.html">UniqueApp</a><code> [friend]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="326f322d7f82738efd2399f077fab6e2"></a><!-- doxytag: member="KShowMailApp::m_pDoc" ref="326f322d7f82738efd2399f077fab6e2" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a>* <a class="el" href="classKShowMailApp.html#326f322d7f82738efd2399f077fab6e2">KShowMailApp::m_pDoc</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The central document of our application. Just contains the view (m_pView).
+</div>
+</div><p>
+<a class="anchor" name="c4c5078123779bc87252714ba8bb9a14"></a><!-- doxytag: member="KShowMailApp::m_pView" ref="c4c5078123779bc87252714ba8bb9a14" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKshowmailView.html">KshowmailView</a>* <a class="el" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">KShowMailApp::m_pView</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Contains the account and messages list views.
+</div>
+</div><p>
+<a class="anchor" name="c6cfeedcef8e52b5a407f764fe057433"></a><!-- doxytag: member="KShowMailApp::SetupDialog" ref="c6cfeedcef8e52b5a407f764fe057433" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KCMultiDialog* <a class="el" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">KShowMailApp::SetupDialog</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The setup dialog. Created and used by <a class="el" href="classKShowMailApp.html#9d907211db6387cf6e395c22a9642c3b">slotSetup()</a>.
+</div>
+</div><p>
+<a class="anchor" name="cdd1b63955d1dd5c9d78d551fc86ef74"></a><!-- doxytag: member="KShowMailApp::m_actionRefresh" ref="cdd1b63955d1dd5c9d78d551fc86ef74" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KAction* <a class="el" href="classKShowMailApp.html#cdd1b63955d1dd5c9d78d551fc86ef74">KShowMailApp::m_actionRefresh</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+refresh messages action; connected with <a class="el" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">slotRefresh()</a>
+</div>
+</div><p>
+<a class="anchor" name="5c7aa11169cab91aefb86d4b3cc7a767"></a><!-- doxytag: member="KShowMailApp::m_ConfigList" ref="5c7aa11169cab91aefb86d4b3cc7a767" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classConfigList.html">ConfigList</a> <a class="el" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">KShowMailApp::m_ConfigList</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Contains the application and account settings. The account settings are stored in <a class="el" href="classConfigElem.html">ConfigElem</a> objects.
+</div>
+</div><p>
+<a class="anchor" name="7ef695b9db1672c75b3dea0e839e6fa4"></a><!-- doxytag: member="KShowMailApp::m_pAlertDialog" ref="7ef695b9db1672c75b3dea0e839e6fa4" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classAlertDialog.html">AlertDialog</a>* <a class="el" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">KShowMailApp::m_pAlertDialog</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Message box which will be shown, when new mail has arrived.
+</div>
+</div><p>
+<a class="anchor" name="66bd9b79549afb8aec119ee1706103e1"></a><!-- doxytag: member="KShowMailApp::m_pDockWindow" ref="66bd9b79549afb8aec119ee1706103e1" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKShowMailDock.html">KShowMailDock</a>* <a class="el" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">KShowMailApp::m_pDockWindow</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The window into the system tray.
+</div>
+</div><p>
+<a class="anchor" name="2ebe3eb0660a5f76160b135f7ef22765"></a><!-- doxytag: member="KShowMailApp::m_pTimer" ref="2ebe3eb0660a5f76160b135f7ef22765" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QTimer* <a class="el" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">KShowMailApp::m_pTimer</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The refresh timer. Its timeout signal is connected with <a class="el" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">slotRefresh()</a>.
+</div>
+</div><p>
+<a class="anchor" name="0827ddf85177879f8966a2e13c50ad33"></a><!-- doxytag: member="KShowMailApp::m_state" ref="0827ddf85177879f8966a2e13c50ad33" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565">Types::State_Type</a> <a class="el" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">KShowMailApp::m_state</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Application state during the run time. Shows what KShowMail is doing :-) .
+</div>
+</div><p>
+<a class="anchor" name="17aa6e4f776e8a73a1a38d4fa255ca4f"></a><!-- doxytag: member="KShowMailApp::m_nSecondsToGo" ref="17aa6e4f776e8a73a1a38d4fa255ca4f" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned long <a class="el" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">KShowMailApp::m_nSecondsToGo</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Number of seconds until the next refresh
+</div>
+</div><p>
+<a class="anchor" name="b1458865e7903295c05c0ffc08fd72fa"></a><!-- doxytag: member="KShowMailApp::fLog" ref="b1458865e7903295c05c0ffc08fd72fa" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classFilterLog.html">FilterLog</a> <a class="el" href="classKShowMailApp.html#b1458865e7903295c05c0ffc08fd72fa">KShowMailApp::fLog</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The filter log.
+</div>
+</div><p>
+<a class="anchor" name="8484b7bcffed4f05ce94e1581e44d26a"></a><!-- doxytag: member="KShowMailApp::m_pAbout" ref="8484b7bcffed4f05ce94e1581e44d26a" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KAboutData * <a class="el" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">KShowMailApp::m_pAbout</a><code> [static]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Contains information about KShowMail, including author, license, version etc. This is accessed in <a class="el" href="main_8cpp.html#0ddf1224851353fc92bfbff6f499fa97">main()</a> when calling KShowMailApp::initMenuBar() to create the help menu.
+</div>
+</div><p>
+<a class="anchor" name="f211146f325bcca8c7c680ad46c9aab8"></a><!-- doxytag: member="KShowMailApp::m_bForceClose" ref="f211146f325bcca8c7c680ad46c9aab8" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classKShowMailApp.html#f211146f325bcca8c7c680ad46c9aab8">KShowMailApp::m_bForceClose</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmail_8h-source.html">kshowmail.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmail_8cpp.html">kshowmail.cpp</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmailfeedback_8cpp.html">kshowmailfeedback.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKShowMailDock-members.html b/doc/html/classKShowMailDock-members.html
new file mode 100644
index 0000000..ec8f04f
--- /dev/null
+++ b/doc/html/classKShowMailDock-members.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KShowMailDock Member List</h1>This is the complete list of members for <a class="el" href="classKShowMailDock.html">KShowMailDock</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classKShowMailDock.html#60d63eca3fd1c24df211f88839ab197c">clear</a>()</td><td><a class="el" href="classKShowMailDock.html">KShowMailDock</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailDock.html#c7a2ffc8a1356b33c3a71a8e1dcb08e5">drawNumber</a>(int n, const QColor &amp;color)</td><td><a class="el" href="classKShowMailDock.html">KShowMailDock</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailDock.html#c09e902133a084b547bdd29646a759b4">drawText</a>(const QString str, const QColor &amp;color)</td><td><a class="el" href="classKShowMailDock.html">KShowMailDock</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailDock.html#15d2f2f49e443745b1986d23c1a08df5">KShowMailDock</a>(QWidget *, KAction *actionRefresh)</td><td><a class="el" href="classKShowMailDock.html">KShowMailDock</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailDock.html#3535a9e1ca33dce759bb066463879976">m_background</a></td><td><a class="el" href="classKShowMailDock.html">KShowMailDock</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailDock.html#33e30411ee0935453e742385268f7bc0">sigActivated</a>(int)</td><td><a class="el" href="classKShowMailDock.html">KShowMailDock</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailDock.html#ee1e61dcbf2fb183c309c0637ceb23e2">sigHighlighted</a>(int)</td><td><a class="el" href="classKShowMailDock.html">KShowMailDock</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKShowMailDock.html#56d112429ab3f0d2d67f4b33b47bd683">~KShowMailDock</a>()</td><td><a class="el" href="classKShowMailDock.html">KShowMailDock</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKShowMailDock.html b/doc/html/classKShowMailDock.html
new file mode 100644
index 0000000..c62b9f5
--- /dev/null
+++ b/doc/html/classKShowMailDock.html
@@ -0,0 +1,240 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: KShowMailDock Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KShowMailDock Class Reference</h1><!-- doxytag: class="KShowMailDock" --><code>#include &lt;<a class="el" href="kshowmaildock_8h-source.html">kshowmaildock.h</a>&gt;</code>
+<p>
+<a href="classKShowMailDock-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Signals</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailDock.html#33e30411ee0935453e742385268f7bc0">sigActivated</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailDock.html#ee1e61dcbf2fb183c309c0637ceb23e2">sigHighlighted</a> (int)</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailDock.html#15d2f2f49e443745b1986d23c1a08df5">KShowMailDock</a> (QWidget *, KAction *actionRefresh)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailDock.html#56d112429ab3f0d2d67f4b33b47bd683">~KShowMailDock</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailDock.html#c09e902133a084b547bdd29646a759b4">drawText</a> (const QString str, const QColor &amp;color)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailDock.html#c7a2ffc8a1356b33c3a71a8e1dcb08e5">drawNumber</a> (int n, const QColor &amp;color)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailDock.html#60d63eca3fd1c24df211f88839ab197c">clear</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QPixmap&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKShowMailDock.html#3535a9e1ca33dce759bb066463879976">m_background</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke </dd></dl>
+
+<p>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="15d2f2f49e443745b1986d23c1a08df5"></a><!-- doxytag: member="KShowMailDock::KShowMailDock" ref="15d2f2f49e443745b1986d23c1a08df5" args="(QWidget *, KAction *actionRefresh)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KShowMailDock::KShowMailDock </td>
+ <td>(</td>
+ <td class="paramtype">QWidget *&nbsp;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">KAction *&nbsp;</td>
+ <td class="paramname"> <em>actionRefresh</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="56d112429ab3f0d2d67f4b33b47bd683"></a><!-- doxytag: member="KShowMailDock::~KShowMailDock" ref="56d112429ab3f0d2d67f4b33b47bd683" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KShowMailDock::~KShowMailDock </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="c09e902133a084b547bdd29646a759b4"></a><!-- doxytag: member="KShowMailDock::drawText" ref="c09e902133a084b547bdd29646a759b4" args="(const QString str, const QColor &amp;color)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailDock::drawText </td>
+ <td>(</td>
+ <td class="paramtype">const QString&nbsp;</td>
+ <td class="paramname"> <em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QColor &amp;&nbsp;</td>
+ <td class="paramname"> <em>color</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="c7a2ffc8a1356b33c3a71a8e1dcb08e5"></a><!-- doxytag: member="KShowMailDock::drawNumber" ref="c7a2ffc8a1356b33c3a71a8e1dcb08e5" args="(int n, const QColor &amp;color)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailDock::drawNumber </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>n</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QColor &amp;&nbsp;</td>
+ <td class="paramname"> <em>color</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="60d63eca3fd1c24df211f88839ab197c"></a><!-- doxytag: member="KShowMailDock::clear" ref="60d63eca3fd1c24df211f88839ab197c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailDock::clear </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="33e30411ee0935453e742385268f7bc0"></a><!-- doxytag: member="KShowMailDock::sigActivated" ref="33e30411ee0935453e742385268f7bc0" args="(int)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailDock::sigActivated </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="ee1e61dcbf2fb183c309c0637ceb23e2"></a><!-- doxytag: member="KShowMailDock::sigHighlighted" ref="ee1e61dcbf2fb183c309c0637ceb23e2" args="(int)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KShowMailDock::sigHighlighted </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="3535a9e1ca33dce759bb066463879976"></a><!-- doxytag: member="KShowMailDock::m_background" ref="3535a9e1ca33dce759bb066463879976" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QPixmap <a class="el" href="classKShowMailDock.html#3535a9e1ca33dce759bb066463879976">KShowMailDock::m_background</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmaildock_8h-source.html">kshowmaildock.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmaildock_8cpp.html">kshowmaildock.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKshowmailDoc-members.html b/doc/html/classKshowmailDoc-members.html
new file mode 100644
index 0000000..764afc0
--- /dev/null
+++ b/doc/html/classKshowmailDoc-members.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KshowmailDoc Member List</h1>This is the complete list of members for <a class="el" href="classKshowmailDoc.html">KshowmailDoc</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classKshowmailDoc.html#d9c7e004cad6927dd62d7a0d8f1f29b1">addView</a>(KshowmailView *view)</td><td><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailDoc.html#4c93bab9aac95af03ca857ab3e09cf21">doc_url</a></td><td><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailDoc.html#02b11dd19d0c777a043a491d8811a553">KshowmailDoc</a>(QWidget *parent, const char *name=0)</td><td><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailDoc.html#929fdd9ad1f89ed9a000cf8c96d9f711">newDocument</a>()</td><td><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">pView</a></td><td><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailDoc.html#e9cd9ebc0c1bbbdf1d4178bc92fe5f55">removeView</a>(KshowmailView *view)</td><td><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailDoc.html#aad1bfe0342bb8ef8b48e4feae5a4e7c">setURL</a>(const KURL &amp;url)</td><td><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailDoc.html#2feac43fb28fdb4971fb601520d17c54">slotUpdateAllViews</a>(KshowmailView *sender)</td><td><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a></td><td><code> [slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailDoc.html#a498d92a8c3b8a41f2bbf198f593435a">URL</a>() const</td><td><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailDoc.html#fe8d064e8b1d44683fde4e3261333841">~KshowmailDoc</a>()</td><td><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKshowmailDoc.html b/doc/html/classKshowmailDoc.html
new file mode 100644
index 0000000..614bd5c
--- /dev/null
+++ b/doc/html/classKshowmailDoc.html
@@ -0,0 +1,264 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: KshowmailDoc Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KshowmailDoc Class Reference</h1><!-- doxytag: class="KshowmailDoc" --><code>#include &lt;<a class="el" href="kshowmaildoc_8h-source.html">kshowmaildoc.h</a>&gt;</code>
+<p>
+<a href="classKshowmailDoc-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailDoc.html#2feac43fb28fdb4971fb601520d17c54">slotUpdateAllViews</a> (<a class="el" href="classKshowmailView.html">KshowmailView</a> *sender)</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailDoc.html#02b11dd19d0c777a043a491d8811a553">KshowmailDoc</a> (QWidget *parent, const char *name=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailDoc.html#fe8d064e8b1d44683fde4e3261333841">~KshowmailDoc</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailDoc.html#d9c7e004cad6927dd62d7a0d8f1f29b1">addView</a> (<a class="el" href="classKshowmailView.html">KshowmailView</a> *view)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailDoc.html#e9cd9ebc0c1bbbdf1d4178bc92fe5f55">removeView</a> (<a class="el" href="classKshowmailView.html">KshowmailView</a> *view)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailDoc.html#929fdd9ad1f89ed9a000cf8c96d9f711">newDocument</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const KURL &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailDoc.html#a498d92a8c3b8a41f2bbf198f593435a">URL</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailDoc.html#aad1bfe0342bb8ef8b48e4feae5a4e7c">setURL</a> (const KURL &amp;url)</td></tr>
+
+<tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classKshowmailView.html">KshowmailView</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">pView</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KURL&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailDoc.html#4c93bab9aac95af03ca857ab3e09cf21">doc_url</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<a class="el" href="classKshowmailDoc.html">KshowmailDoc</a> provides a document object for a document-view model.<p>
+The <a class="el" href="classKshowmailDoc.html">KshowmailDoc</a> class provides a document object that can be used in conjunction with the classes KshowmailApp and <a class="el" href="classKshowmailView.html">KshowmailView</a> to create a document-view model for standard KDE applications based on KApplication and KMainWindow. Thereby, the document object is created by the KshowmailApp instance and contains the document structure with the according methods for manipulation of the document data by <a class="el" href="classKshowmailView.html">KshowmailView</a> objects. Also, <a class="el" href="classKshowmailDoc.html">KshowmailDoc</a> contains the methods for serialization of the document data from and to files.<p>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Source Framework Automatically Generated by KDevelop, (c) The KDevelop Team. </dd></dl>
+<dl class="version" compact><dt><b>Version:</b></dt><dd>KDevelop version 1.2 code generation </dd></dl>
+
+<p>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="02b11dd19d0c777a043a491d8811a553"></a><!-- doxytag: member="KshowmailDoc::KshowmailDoc" ref="02b11dd19d0c777a043a491d8811a553" args="(QWidget *parent, const char *name=0)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KshowmailDoc::KshowmailDoc </td>
+ <td>(</td>
+ <td class="paramtype">QWidget *&nbsp;</td>
+ <td class="paramname"> <em>parent</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&nbsp;</td>
+ <td class="paramname"> <em>name</em> = <code>0</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor for the fileclass of the application
+</div>
+</div><p>
+<a class="anchor" name="fe8d064e8b1d44683fde4e3261333841"></a><!-- doxytag: member="KshowmailDoc::~KshowmailDoc" ref="fe8d064e8b1d44683fde4e3261333841" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KshowmailDoc::~KshowmailDoc </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Destructor for the fileclass of the application
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="d9c7e004cad6927dd62d7a0d8f1f29b1"></a><!-- doxytag: member="KshowmailDoc::addView" ref="d9c7e004cad6927dd62d7a0d8f1f29b1" args="(KshowmailView *view)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailDoc::addView </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classKshowmailView.html">KshowmailView</a> *&nbsp;</td>
+ <td class="paramname"> <em>view</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+adds a view to the document which represents the document contents. Usually this is your main view.
+</div>
+</div><p>
+<a class="anchor" name="e9cd9ebc0c1bbbdf1d4178bc92fe5f55"></a><!-- doxytag: member="KshowmailDoc::removeView" ref="e9cd9ebc0c1bbbdf1d4178bc92fe5f55" args="(KshowmailView *view)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailDoc::removeView </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classKshowmailView.html">KshowmailView</a> *&nbsp;</td>
+ <td class="paramname"> <em>view</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+removes a view from the list of currently connected views
+</div>
+</div><p>
+<a class="anchor" name="929fdd9ad1f89ed9a000cf8c96d9f711"></a><!-- doxytag: member="KshowmailDoc::newDocument" ref="929fdd9ad1f89ed9a000cf8c96d9f711" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool KshowmailDoc::newDocument </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+initializes the document generally
+</div>
+</div><p>
+<a class="anchor" name="a498d92a8c3b8a41f2bbf198f593435a"></a><!-- doxytag: member="KshowmailDoc::URL" ref="a498d92a8c3b8a41f2bbf198f593435a" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const KURL &amp; KshowmailDoc::URL </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+returns the KURL of the document
+</div>
+</div><p>
+<a class="anchor" name="aad1bfe0342bb8ef8b48e4feae5a4e7c"></a><!-- doxytag: member="KshowmailDoc::setURL" ref="aad1bfe0342bb8ef8b48e4feae5a4e7c" args="(const KURL &amp;url)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailDoc::setURL </td>
+ <td>(</td>
+ <td class="paramtype">const KURL &amp;&nbsp;</td>
+ <td class="paramname"> <em>url</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+sets the URL of the document
+</div>
+</div><p>
+<a class="anchor" name="2feac43fb28fdb4971fb601520d17c54"></a><!-- doxytag: member="KshowmailDoc::slotUpdateAllViews" ref="2feac43fb28fdb4971fb601520d17c54" args="(KshowmailView *sender)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailDoc::slotUpdateAllViews </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classKshowmailView.html">KshowmailView</a> *&nbsp;</td>
+ <td class="paramname"> <em>sender</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+calls repaint() on all views connected to the document object and is called by the view by which the document has been changed. As this view normally repaints itself, it is excluded from the paintEvent.
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="c3f05aa2557d4b0f94392530ea62bbd4"></a><!-- doxytag: member="KshowmailDoc::pView" ref="c3f05aa2557d4b0f94392530ea62bbd4" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKshowmailView.html">KshowmailView</a> * <a class="el" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">KshowmailDoc::pView</a><code> [static]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+the list of the views currently connected to the document
+</div>
+</div><p>
+<a class="anchor" name="4c93bab9aac95af03ca857ab3e09cf21"></a><!-- doxytag: member="KshowmailDoc::doc_url" ref="4c93bab9aac95af03ca857ab3e09cf21" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KURL <a class="el" href="classKshowmailDoc.html#4c93bab9aac95af03ca857ab3e09cf21">KshowmailDoc::doc_url</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+the modified flag of the current document
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmaildoc_8h-source.html">kshowmaildoc.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmaildoc_8cpp.html">kshowmaildoc.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKshowmailView-members.html b/doc/html/classKshowmailView-members.html
new file mode 100644
index 0000000..aa29796
--- /dev/null
+++ b/doc/html/classKshowmailView-members.html
@@ -0,0 +1,45 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KshowmailView Member List</h1>This is the complete list of members for <a class="el" href="classKshowmailView.html">KshowmailView</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#5cc4e2c1caaf6fae6af80b068aada95e">clearMailListView</a>()</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a></td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#8330c6f139457ae5dd1510efb3f665e4">insertMail</a>(QString &amp;number, QString &amp;account, QString &amp;from, QString &amp;to, QString &amp;subject, QString &amp;date, QString &amp;size, QString &amp;content, QString &amp;state, QString &amp;time)</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#6c0f3a139aba59b618178cffec9fdbf4">KshowmailView</a>(QWidget *parent=0, const char *name=0)</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#ac2789d0c2b897f4a9589c21a8eae2eb">m_pixOk</a></td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a></td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a></td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#ff3699740af2b58e299bc4b2326cad20">readOptions</a>()</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#4fde61960c62edd44d8eb88a82360a2a">refreshSetup</a>()</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#53d81f575c855870a8112ec67ade5575">saveOptions</a>(KConfig *config)</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#6fb6da4d1c23d42efe9118748b19b0f8">signalActiveChanged</a>()</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td><code> [signal]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#49db2d15dcecf0ad09fed9565d506138">slotAccountClicked</a>(QListViewItem *, const QPoint &amp;point, int col)</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#8635cb9ee8e7859f9b78ced5378c668d">slotAccountContext</a>(QListViewItem *, const QPoint &amp;, int)</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#2fc28b0734bd9b2af83a7a9a23875ed3">slotMessageClicked</a>(QListViewItem *)</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#877ac2a28b5a126946199642842a8039">slotMessageContext</a>(QListViewItem *, const QPoint &amp;, int)</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#5d39dff853dab5efb5eecba7e8237d9a">slotMessageDoubleClicked</a>(QListViewItem *)</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td><code> [private, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKshowmailView.html#208c56da5fe95348bd13435ff44c8aae">~KshowmailView</a>()</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classKshowmailView.html b/doc/html/classKshowmailView.html
new file mode 100644
index 0000000..0831a68
--- /dev/null
+++ b/doc/html/classKshowmailView.html
@@ -0,0 +1,525 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: KshowmailView Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>KshowmailView Class Reference</h1><!-- doxytag: class="KshowmailView" --><code>#include &lt;<a class="el" href="kshowmailview_8h-source.html">kshowmailview.h</a>&gt;</code>
+<p>
+<a href="classKshowmailView-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Signals</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#6fb6da4d1c23d42efe9118748b19b0f8">signalActiveChanged</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#6c0f3a139aba59b618178cffec9fdbf4">KshowmailView</a> (QWidget *parent=0, const char *name=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#208c56da5fe95348bd13435ff44c8aae">~KshowmailView</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#53d81f575c855870a8112ec67ade5575">saveOptions</a> (KConfig *<a class="el" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#5cc4e2c1caaf6fae6af80b068aada95e">clearMailListView</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShowListViewItem.html">ShowListViewItem</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#8330c6f139457ae5dd1510efb3f665e4">insertMail</a> (QString &amp;number, QString &amp;account, QString &amp;from, QString &amp;to, QString &amp;subject, QString &amp;date, QString &amp;size, QString &amp;content, QString &amp;state, QString &amp;time)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#4fde61960c62edd44d8eb88a82360a2a">refreshSetup</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KListView *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KListView *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Private Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#877ac2a28b5a126946199642842a8039">slotMessageContext</a> (QListViewItem *, const QPoint &amp;, int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#5d39dff853dab5efb5eecba7e8237d9a">slotMessageDoubleClicked</a> (QListViewItem *)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#2fc28b0734bd9b2af83a7a9a23875ed3">slotMessageClicked</a> (QListViewItem *)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#8635cb9ee8e7859f9b78ced5378c668d">slotAccountContext</a> (QListViewItem *, const QPoint &amp;, int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#49db2d15dcecf0ad09fed9565d506138">slotAccountClicked</a> (QListViewItem *, const QPoint &amp;point, int col)</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#ff3699740af2b58e299bc4b2326cad20">readOptions</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QPixmap *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#ac2789d0c2b897f4a9589c21a8eae2eb">m_pixOk</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KConfig *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+The <a class="el" href="classKshowmailView.html">KshowmailView</a> class provides the view widget for the <a class="el" href="classKShowMailApp.html">KShowMailApp</a> instance. The View instance inherits QWidget as a base class and represents the view object of a KMainWindow. As <a class="el" href="classKshowmailView.html">KshowmailView</a> is part of the document-view model, it needs a reference to the document object connected with it by the <a class="el" href="classKShowMailApp.html">KShowMailApp</a> class to manipulate and display the document structure provided by the <a class="el" href="classKshowmailDoc.html">KshowmailDoc</a> class.<p>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Source Framework Automatically Generated by KDevelop, (c) The KDevelop Team. <p>
+Ulrich Weigelt &lt;<a href="mailto:ulrich.weigelt@gmx.de">ulrich.weigelt@gmx.de</a>&gt; </dd></dl>
+<dl class="version" compact><dt><b>Version:</b></dt><dd>KDevelop version 0.4 code generation </dd></dl>
+
+<p>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="6c0f3a139aba59b618178cffec9fdbf4"></a><!-- doxytag: member="KshowmailView::KshowmailView" ref="6c0f3a139aba59b618178cffec9fdbf4" args="(QWidget *parent=0, const char *name=0)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KshowmailView::KshowmailView </td>
+ <td>(</td>
+ <td class="paramtype">QWidget *&nbsp;</td>
+ <td class="paramname"> <em>parent</em> = <code>0</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&nbsp;</td>
+ <td class="paramname"> <em>name</em> = <code>0</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor for the main view
+</div>
+</div><p>
+<a class="anchor" name="208c56da5fe95348bd13435ff44c8aae"></a><!-- doxytag: member="KshowmailView::~KshowmailView" ref="208c56da5fe95348bd13435ff44c8aae" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KshowmailView::~KshowmailView </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Destructor for the main view
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="53d81f575c855870a8112ec67ade5575"></a><!-- doxytag: member="KshowmailView::saveOptions" ref="53d81f575c855870a8112ec67ade5575" args="(KConfig *config)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailView::saveOptions </td>
+ <td>(</td>
+ <td class="paramtype">KConfig *&nbsp;</td>
+ <td class="paramname"> <em>config</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="5cc4e2c1caaf6fae6af80b068aada95e"></a><!-- doxytag: member="KshowmailView::clearMailListView" ref="5cc4e2c1caaf6fae6af80b068aada95e" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailView::clearMailListView </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Clears the mail list view.
+</div>
+</div><p>
+<a class="anchor" name="8330c6f139457ae5dd1510efb3f665e4"></a><!-- doxytag: member="KshowmailView::insertMail" ref="8330c6f139457ae5dd1510efb3f665e4" args="(QString &amp;number, QString &amp;account, QString &amp;from, QString &amp;to, QString &amp;subject, QString &amp;date, QString &amp;size, QString &amp;content, QString &amp;state, QString &amp;time)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classShowListViewItem.html">ShowListViewItem</a> * KshowmailView::insertMail </td>
+ <td>(</td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>number</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>account</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>from</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>to</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>subject</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>date</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>content</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>time</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Creates a mail list view item with the given content and inserts it into the mail list view. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>mail number </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>account name </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>from</em>&nbsp;</td><td>sender of the mail </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>to</em>&nbsp;</td><td>recipient of the mail </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>subject</em>&nbsp;</td><td>mail subject </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>date</em>&nbsp;</td><td>date on which the mail was sent, formated to the current locale's conventions. </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td>size of the mail </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>content</em>&nbsp;</td><td>content type </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>state</em>&nbsp;</td><td>new or old </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>time</em>&nbsp;</td><td>send date, formated to the ISO 8601 extended specification (YYYY-MM-DDTHH:MM:SS) </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>pointer to the created list view item </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="4fde61960c62edd44d8eb88a82360a2a"></a><!-- doxytag: member="KshowmailView::refreshSetup" ref="4fde61960c62edd44d8eb88a82360a2a" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailView::refreshSetup </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Refreshes the geometry. Reads from the config file the properties about show or hide columns. If a shown column should be hidden, the current width will be saved and the column will be hidden. If a hidden column should be shown, it will be set to the old saved width.
+</div>
+</div><p>
+<a class="anchor" name="ff3699740af2b58e299bc4b2326cad20"></a><!-- doxytag: member="KshowmailView::readOptions" ref="ff3699740af2b58e299bc4b2326cad20" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailView::readOptions </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Reads the some geometry options from the application config file.
+</div>
+</div><p>
+<a class="anchor" name="877ac2a28b5a126946199642842a8039"></a><!-- doxytag: member="KshowmailView::slotMessageContext" ref="877ac2a28b5a126946199642842a8039" args="(QListViewItem *, const QPoint &amp;, int)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailView::slotMessageContext </td>
+ <td>(</td>
+ <td class="paramtype">QListViewItem *&nbsp;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QPoint &amp;&nbsp;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal rightButtonClicked of m_pListMessages. Invoked, when the user has clicked on a list item with the right mouse button. Selects the clicked item and shows the popup menu mail_context_popup defined in kshowmailui.rc.
+</div>
+</div><p>
+<a class="anchor" name="5d39dff853dab5efb5eecba7e8237d9a"></a><!-- doxytag: member="KshowmailView::slotMessageDoubleClicked" ref="5d39dff853dab5efb5eecba7e8237d9a" args="(QListViewItem *)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailView::slotMessageDoubleClicked </td>
+ <td>(</td>
+ <td class="paramtype">QListViewItem *&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="2fc28b0734bd9b2af83a7a9a23875ed3"></a><!-- doxytag: member="KshowmailView::slotMessageClicked" ref="2fc28b0734bd9b2af83a7a9a23875ed3" args="(QListViewItem *)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailView::slotMessageClicked </td>
+ <td>(</td>
+ <td class="paramtype">QListViewItem *&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="8635cb9ee8e7859f9b78ced5378c668d"></a><!-- doxytag: member="KshowmailView::slotAccountContext" ref="8635cb9ee8e7859f9b78ced5378c668d" args="(QListViewItem *, const QPoint &amp;, int)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailView::slotAccountContext </td>
+ <td>(</td>
+ <td class="paramtype">QListViewItem *&nbsp;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QPoint &amp;&nbsp;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal rightButtonClicked of m_pListAccounts. Invoked, when the user has clicked on a list item with the right mouse button. Selects the clicked item and shows the popup menu account_context_popup defined in kshowmailui.rc.
+</div>
+</div><p>
+<a class="anchor" name="49db2d15dcecf0ad09fed9565d506138"></a><!-- doxytag: member="KshowmailView::slotAccountClicked" ref="49db2d15dcecf0ad09fed9565d506138" args="(QListViewItem *, const QPoint &amp;point, int col)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailView::slotAccountClicked </td>
+ <td>(</td>
+ <td class="paramtype">QListViewItem *&nbsp;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const QPoint &amp;&nbsp;</td>
+ <td class="paramname"> <em>point</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>col</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"><code> [private, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with signal clicked of the account list. Activate or deactivate the account, if the user has clicked in the first column
+</div>
+</div><p>
+<a class="anchor" name="6fb6da4d1c23d42efe9118748b19b0f8"></a><!-- doxytag: member="KshowmailView::signalActiveChanged" ref="6fb6da4d1c23d42efe9118748b19b0f8" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void KshowmailView::signalActiveChanged </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [signal]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="2ba6c19f2ac544b028934170d6443aad"></a><!-- doxytag: member="KshowmailView::m_pListAccounts" ref="2ba6c19f2ac544b028934170d6443aad" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KListView* <a class="el" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">KshowmailView::m_pListAccounts</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="a319aa36e7f38a92d8691742ad52be6b"></a><!-- doxytag: member="KshowmailView::m_pListMessages" ref="a319aa36e7f38a92d8691742ad52be6b" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KListView* <a class="el" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">KshowmailView::m_pListMessages</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="ac2789d0c2b897f4a9589c21a8eae2eb"></a><!-- doxytag: member="KshowmailView::m_pixOk" ref="ac2789d0c2b897f4a9589c21a8eae2eb" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QPixmap* <a class="el" href="classKshowmailView.html#ac2789d0c2b897f4a9589c21a8eae2eb">KshowmailView::m_pixOk</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="232c0c7b5295a864e22bd5365044b21d"></a><!-- doxytag: member="KshowmailView::config" ref="232c0c7b5295a864e22bd5365044b21d" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KConfig* <a class="el" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">KshowmailView::config</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connector to the configuration file
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmailview_8h-source.html">kshowmailview.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmailview_8cpp.html">kshowmailview.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classLogger-members.html b/doc/html/classLogger-members.html
new file mode 100644
index 0000000..73880ee
--- /dev/null
+++ b/doc/html/classLogger-members.html
@@ -0,0 +1,33 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>Logger Member List</h1>This is the complete list of members for <a class="el" href="classLogger.html">Logger</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classLogger.html#5cc08473729523bb4bde48459f2ac468">flush</a>()</td><td><a class="el" href="classLogger.html">Logger</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classLogger.html#eb5105d72017f5c8ce07d4074f5e1d37">logfile</a></td><td><a class="el" href="classLogger.html">Logger</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classLogger.html#bc41bfb031d896170c7675fa96a6b30c">Logger</a>()</td><td><a class="el" href="classLogger.html">Logger</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classLogger.html#47a8e9cb2143530a93993f288674ffaa">logstream</a></td><td><a class="el" href="classLogger.html">Logger</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classLogger.html#cb668a9e186a25fbaad2e4af6d1ed00a">~Logger</a>()</td><td><a class="el" href="classLogger.html">Logger</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classLogger.html b/doc/html/classLogger.html
new file mode 100644
index 0000000..a647303
--- /dev/null
+++ b/doc/html/classLogger.html
@@ -0,0 +1,58 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Logger Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>Logger Class Reference</h1><!-- doxytag: class="Logger" --><code>#include &lt;<a class="el" href="logger_8h-source.html">logger.h</a>&gt;</code>
+<p>
+<a href="classLogger-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bc41bfb031d896170c7675fa96a6b30c"></a><!-- doxytag: member="Logger::Logger" ref="bc41bfb031d896170c7675fa96a6b30c" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLogger.html#bc41bfb031d896170c7675fa96a6b30c">Logger</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cb668a9e186a25fbaad2e4af6d1ed00a"></a><!-- doxytag: member="Logger::~Logger" ref="cb668a9e186a25fbaad2e4af6d1ed00a" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLogger.html#cb668a9e186a25fbaad2e4af6d1ed00a">~Logger</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5cc08473729523bb4bde48459f2ac468"></a><!-- doxytag: member="Logger::flush" ref="5cc08473729523bb4bde48459f2ac468" args="()" -->
+static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLogger.html#5cc08473729523bb4bde48459f2ac468">flush</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="47a8e9cb2143530a93993f288674ffaa"></a><!-- doxytag: member="Logger::logstream" ref="47a8e9cb2143530a93993f288674ffaa" args="" -->
+static QTextStream *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLogger.html#47a8e9cb2143530a93993f288674ffaa">logstream</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eb5105d72017f5c8ce07d4074f5e1d37"></a><!-- doxytag: member="Logger::logfile" ref="eb5105d72017f5c8ce07d4074f5e1d37" args="" -->
+static QFile&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLogger.html#eb5105d72017f5c8ce07d4074f5e1d37">logfile</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke </dd></dl>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="logger_8h-source.html#l00029">29</a> of file <a class="el" href="logger_8h-source.html">logger.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="logger_8h-source.html">logger.h</a><li>kshowmail/<a class="el" href="logger_8cpp-source.html">logger.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:09 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classOptionDialog-members.html b/doc/html/classOptionDialog-members.html
new file mode 100644
index 0000000..1b78f79
--- /dev/null
+++ b/doc/html/classOptionDialog-members.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>OptionDialog Member List</h1>This is the complete list of members for <a class="el" href="classOptionDialog.html">OptionDialog</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#8fc4bdd8d230a0f5d6ed01cde33e9278">_checkConfirmClose</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">GroupBox3Layout</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">groupBox4</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#a8ef8d42b1fc85a6f37423ad0bcefcae">groupBox4Layout</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#faff39abb53603d21e94af1bcbc04a9c">languageChange</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#a96e74ece6336c05e03376af33f5269c">layout2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#57faa9421d4b06b179ad02cd84f77a12">layout3</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#f5351545a58dc835af0f6b73f63ca155">m_ButtonAdd</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e1d3b44701644711f98f32b4bae8db92">m_ButtonCancel</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#5827d094ba37dc02388af25cefc1d58a">m_ButtonCopy</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#dcfa5019bacd8a4c7b2a192eed57e973">m_ButtonDelete</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#b062f6eafa19f35357e4aed5e050257d">m_ButtonEdit</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#8ceb133b8b4ccd071329112b7fa9181a">m_ButtonOk</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#1fdb0d9cfac85bbef22d749e40dd9376">m_CheckAccount1</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">m_CheckAccount2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#6379a589358b6110cfa48798a30951ab">m_CheckActive</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">m_CheckBeep</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#5553bc799edbadb53b00f8c26342cc0e">m_CheckCloseMinimizes</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">m_CheckConfirmDelete</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">m_CheckContent</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">m_CheckDate</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">m_CheckFrom</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#822eac789cfdbe481591d6a14b250571">m_checkHTML</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#d20b2cce97a72b706dfb29ddc93f1766">m_CheckMessages</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ae8aaaee5cd4a83d5f7f09d16cb4cdcd">m_CheckMinimizeToTray</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">m_CheckNumber</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#b1e0581d2cf52c0337d42bbc898a2fc2">m_CheckServer</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">m_CheckShowMainWindow</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">m_CheckShowMessagebox</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#bbd14d7cfd0662a8089e83be0809d46f">m_CheckSize1</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">m_CheckSize2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">m_CheckStartMinimized</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">m_CheckState</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">m_CheckSubject</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">m_CheckTo</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e7595a79588cccd851e00714b0b47d94">m_CheckUser</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a></td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#88bc7fc86cc13a701d216bd8b9bf3f5b">m_pCmdList</a></td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a></td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#798615cd9184797821f151a4465c1e2f">OptionDialog</a>(QWidget *parent, const char *name, ConfigList *config, CommandList *cmd)</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#05e56abcb224cbcb9c3bae64ba76175a">OptionDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#f2a78d5c1e7ebdd2074d1cfc2f553cb1">OptionDlgLayout</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#f2b08f1c9e6b69a9ab60f884da54f89d">QLabel_1</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e41bbc238ca8e91941442bb711517fe3">QLabel_2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#d57e8e6ba21c3cbe7f31f68635f1c856">QLabel_3</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#65ee72e62bd25ed5ac2d1e6b1ae46e50">QLabel_4</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#5adabd2b563e6c382e0f578ca2cfd113">QLabel_5</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#97584503ba9983d1f0556189a5de3dac">QLabel_6</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#4ab5e6416920a2e8a10b29fc4dd3ccd2">slotAccountActivated</a>(int index)</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#2a8b4de35b26856ddc9211d5cf56eeb7">slotButtonAddClicked</a>()</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#5950f796be046ef5a1f24226ce7b093b">slotButtonCopyClicked</a>()</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#5323f330c13ae96774c90d5e4a5524eb">slotButtonDeleteClicked</a>()</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#7dfcbdf6d27c3069abb292e205d2edbb">slotButtonEditClicked</a>()</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#18a6f8a046b2e75133d334e5e8f76929">slotButtonOkClicked</a>()</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#c21a2228b16965afd70357f74332a7af">slotButtonSelectSoundFile</a>()</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#d5656fc80b53615620c3c79094a165d1">slotExternalProgTest</a>()</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#34cd468ac9649244cf0032e4dc2ed3c4">slotMinimizeNoMailClicked</a>()</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#ae1017761ec53be60d79f5f59a5c6fea">slotSavePasswordToggled</a>()</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#8f429f6d8f28f63a30b9e63f2c6f9203">slotSoundTest</a>()</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#8b256eea31352478043228994a6b0856">slotTerminateNoMailClicked</a>()</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e2a13e9c7b92aaac9bdbe44be32090d9">spacer2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#169a7100c7f2da97421eb57882e6cdce">spacer4</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#f6170350191d444f72418d6484f4ea19">Spacer70</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#0526dec363ca38aa071b6d205af2971c">tab_2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e5718ae6060503e26fe6ddc1dbb9d080">tab_3</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#6702f780899bc9461d21c29cfb7b4757">tabLayout_2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#61664d27d32355fab76184bb47adf86a">tabLayout_3</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDialog.html#640a1faddda44f2567cf386de0085ec7">~OptionDialog</a>()</td><td><a class="el" href="classOptionDialog.html">OptionDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#cc442307e009b470032fe689ee31ef7e">~OptionDlg</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:20 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classOptionDialog.html b/doc/html/classOptionDialog.html
new file mode 100644
index 0000000..9d1d98d
--- /dev/null
+++ b/doc/html/classOptionDialog.html
@@ -0,0 +1,99 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: OptionDialog Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>OptionDialog Class Reference</h1><!-- doxytag: class="OptionDialog" --><!-- doxytag: inherits="OptionDlg" --><code>#include &lt;<a class="el" href="optiondialog_8h-source.html">optiondialog.h</a>&gt;</code>
+<p>
+<p>Inheritance diagram for OptionDialog:
+<p><center><img src="classOptionDialog.png" usemap="#OptionDialog_map" border="0" alt=""></center>
+<map name="OptionDialog_map">
+<area href="classOptionDlg.html" alt="OptionDlg" shape="rect" coords="0,0,85,24">
+</map>
+<a href="classOptionDialog-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2a8b4de35b26856ddc9211d5cf56eeb7"></a><!-- doxytag: member="OptionDialog::slotButtonAddClicked" ref="2a8b4de35b26856ddc9211d5cf56eeb7" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#2a8b4de35b26856ddc9211d5cf56eeb7">slotButtonAddClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7dfcbdf6d27c3069abb292e205d2edbb"></a><!-- doxytag: member="OptionDialog::slotButtonEditClicked" ref="7dfcbdf6d27c3069abb292e205d2edbb" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#7dfcbdf6d27c3069abb292e205d2edbb">slotButtonEditClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5950f796be046ef5a1f24226ce7b093b"></a><!-- doxytag: member="OptionDialog::slotButtonCopyClicked" ref="5950f796be046ef5a1f24226ce7b093b" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#5950f796be046ef5a1f24226ce7b093b">slotButtonCopyClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5323f330c13ae96774c90d5e4a5524eb"></a><!-- doxytag: member="OptionDialog::slotButtonDeleteClicked" ref="5323f330c13ae96774c90d5e4a5524eb" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#5323f330c13ae96774c90d5e4a5524eb">slotButtonDeleteClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="18a6f8a046b2e75133d334e5e8f76929"></a><!-- doxytag: member="OptionDialog::slotButtonOkClicked" ref="18a6f8a046b2e75133d334e5e8f76929" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#18a6f8a046b2e75133d334e5e8f76929">slotButtonOkClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4ab5e6416920a2e8a10b29fc4dd3ccd2"></a><!-- doxytag: member="OptionDialog::slotAccountActivated" ref="4ab5e6416920a2e8a10b29fc4dd3ccd2" args="(int index)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#4ab5e6416920a2e8a10b29fc4dd3ccd2">slotAccountActivated</a> (int index)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ae1017761ec53be60d79f5f59a5c6fea"></a><!-- doxytag: member="OptionDialog::slotSavePasswordToggled" ref="ae1017761ec53be60d79f5f59a5c6fea" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#ae1017761ec53be60d79f5f59a5c6fea">slotSavePasswordToggled</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c21a2228b16965afd70357f74332a7af"></a><!-- doxytag: member="OptionDialog::slotButtonSelectSoundFile" ref="c21a2228b16965afd70357f74332a7af" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#c21a2228b16965afd70357f74332a7af">slotButtonSelectSoundFile</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="34cd468ac9649244cf0032e4dc2ed3c4"></a><!-- doxytag: member="OptionDialog::slotMinimizeNoMailClicked" ref="34cd468ac9649244cf0032e4dc2ed3c4" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#34cd468ac9649244cf0032e4dc2ed3c4">slotMinimizeNoMailClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8b256eea31352478043228994a6b0856"></a><!-- doxytag: member="OptionDialog::slotTerminateNoMailClicked" ref="8b256eea31352478043228994a6b0856" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#8b256eea31352478043228994a6b0856">slotTerminateNoMailClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8f429f6d8f28f63a30b9e63f2c6f9203"></a><!-- doxytag: member="OptionDialog::slotSoundTest" ref="8f429f6d8f28f63a30b9e63f2c6f9203" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#8f429f6d8f28f63a30b9e63f2c6f9203">slotSoundTest</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d5656fc80b53615620c3c79094a165d1"></a><!-- doxytag: member="OptionDialog::slotExternalProgTest" ref="d5656fc80b53615620c3c79094a165d1" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#d5656fc80b53615620c3c79094a165d1">slotExternalProgTest</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="798615cd9184797821f151a4465c1e2f"></a><!-- doxytag: member="OptionDialog::OptionDialog" ref="798615cd9184797821f151a4465c1e2f" args="(QWidget *parent, const char *name, ConfigList *config, CommandList *cmd)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#798615cd9184797821f151a4465c1e2f">OptionDialog</a> (QWidget *parent, const char *name, <a class="el" href="classConfigList.html">ConfigList</a> *config, <a class="el" href="classCommandList.html">CommandList</a> *cmd)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="640a1faddda44f2567cf386de0085ec7"></a><!-- doxytag: member="OptionDialog::~OptionDialog" ref="640a1faddda44f2567cf386de0085ec7" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#640a1faddda44f2567cf386de0085ec7">~OptionDialog</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e9a1f0964b9205f483a483cc6a9a4aa8"></a><!-- doxytag: member="OptionDialog::m_ConfigList" ref="e9a1f0964b9205f483a483cc6a9a4aa8" args="" -->
+<a class="el" href="classConfigList.html">ConfigList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="32e10dd017b5499d290283af638f3de7"></a><!-- doxytag: member="OptionDialog::m_pConfigList" ref="32e10dd017b5499d290283af638f3de7" args="" -->
+<a class="el" href="classConfigList.html">ConfigList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="88bc7fc86cc13a701d216bd8b9bf3f5b"></a><!-- doxytag: member="OptionDialog::m_pCmdList" ref="88bc7fc86cc13a701d216bd8b9bf3f5b" args="" -->
+<a class="el" href="classCommandList.html">CommandList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDialog.html#88bc7fc86cc13a701d216bd8b9bf3f5b">m_pCmdList</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke </dd></dl>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="optiondialog_8h-source.html#l00030">30</a> of file <a class="el" href="optiondialog_8h-source.html">optiondialog.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="optiondialog_8h-source.html">optiondialog.h</a><li>kshowmail/<a class="el" href="optiondialog_8cpp-source.html">optiondialog.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:20 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classOptionDialog.png b/doc/html/classOptionDialog.png
new file mode 100644
index 0000000..3e9b5d8
--- /dev/null
+++ b/doc/html/classOptionDialog.png
Binary files differ
diff --git a/doc/html/classOptionDlg-members.html b/doc/html/classOptionDlg-members.html
new file mode 100644
index 0000000..1f204b6
--- /dev/null
+++ b/doc/html/classOptionDlg-members.html
@@ -0,0 +1,118 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>OptionDlg Member List</h1>This is the complete list of members for <a class="el" href="classOptionDlg.html">OptionDlg</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#8fc4bdd8d230a0f5d6ed01cde33e9278">_checkConfirmClose</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">GroupBox3Layout</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">groupBox4</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#a8ef8d42b1fc85a6f37423ad0bcefcae">groupBox4Layout</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#faff39abb53603d21e94af1bcbc04a9c">languageChange</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#a96e74ece6336c05e03376af33f5269c">layout2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#57faa9421d4b06b179ad02cd84f77a12">layout3</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#f5351545a58dc835af0f6b73f63ca155">m_ButtonAdd</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e1d3b44701644711f98f32b4bae8db92">m_ButtonCancel</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#5827d094ba37dc02388af25cefc1d58a">m_ButtonCopy</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#dcfa5019bacd8a4c7b2a192eed57e973">m_ButtonDelete</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#b062f6eafa19f35357e4aed5e050257d">m_ButtonEdit</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#8ceb133b8b4ccd071329112b7fa9181a">m_ButtonOk</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#1fdb0d9cfac85bbef22d749e40dd9376">m_CheckAccount1</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">m_CheckAccount2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#6379a589358b6110cfa48798a30951ab">m_CheckActive</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">m_CheckBeep</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#5553bc799edbadb53b00f8c26342cc0e">m_CheckCloseMinimizes</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">m_CheckConfirmDelete</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">m_CheckContent</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">m_CheckDate</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">m_CheckFrom</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#822eac789cfdbe481591d6a14b250571">m_checkHTML</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#d20b2cce97a72b706dfb29ddc93f1766">m_CheckMessages</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ae8aaaee5cd4a83d5f7f09d16cb4cdcd">m_CheckMinimizeToTray</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">m_CheckNumber</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#b1e0581d2cf52c0337d42bbc898a2fc2">m_CheckServer</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">m_CheckShowMainWindow</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">m_CheckShowMessagebox</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#bbd14d7cfd0662a8089e83be0809d46f">m_CheckSize1</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">m_CheckSize2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">m_CheckStartMinimized</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">m_CheckState</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">m_CheckSubject</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">m_CheckTo</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e7595a79588cccd851e00714b0b47d94">m_CheckUser</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#05e56abcb224cbcb9c3bae64ba76175a">OptionDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#f2a78d5c1e7ebdd2074d1cfc2f553cb1">OptionDlgLayout</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#f2b08f1c9e6b69a9ab60f884da54f89d">QLabel_1</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e41bbc238ca8e91941442bb711517fe3">QLabel_2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#d57e8e6ba21c3cbe7f31f68635f1c856">QLabel_3</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#65ee72e62bd25ed5ac2d1e6b1ae46e50">QLabel_4</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#5adabd2b563e6c382e0f578ca2cfd113">QLabel_5</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#97584503ba9983d1f0556189a5de3dac">QLabel_6</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#8435e876b83edc8727adf3c9522c990d">slotAccountActivated</a>(int)</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#ddbabac04a2faf257ef1000a817b6dfd">slotButtonAddClicked</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#a308d66d94a9e8f7bb01f95d8d170340">slotButtonCopyClicked</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#f34d904632a999f09525e4a84a4f4bba">slotButtonDeleteClicked</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#79f5f5a3cfe82b2ab728db889571f790">slotButtonEditClicked</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e0ceefbabae4b3a3a27cfb109d613f4d">slotButtonOkClicked</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#a5c107a0ebaffc5d55a19f15e453f016">slotButtonSelectSoundFile</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#6d1e4f6d6bcba2be67cc6d96cf7dce78">slotExternalProgTest</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#d68c949ba426c9e99c3667133e14410b">slotMinimizeNoMailClicked</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#fe059a79c1b5adad4c4b65a54ea7e588">slotSavePasswordToggled</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#68ea03d004a5e8dee71731d004765efa">slotSoundTest</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#356d143dceae572edfe25c4895d42e99">slotTerminateNoMailClicked</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e2a13e9c7b92aaac9bdbe44be32090d9">spacer2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#169a7100c7f2da97421eb57882e6cdce">spacer4</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#f6170350191d444f72418d6484f4ea19">Spacer70</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#0526dec363ca38aa071b6d205af2971c">tab_2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#e5718ae6060503e26fe6ddc1dbb9d080">tab_3</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#6702f780899bc9461d21c29cfb7b4757">tabLayout_2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#61664d27d32355fab76184bb47adf86a">tabLayout_3</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a></td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classOptionDlg.html#cc442307e009b470032fe689ee31ef7e">~OptionDlg</a>()</td><td><a class="el" href="classOptionDlg.html">OptionDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:21 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classOptionDlg.html b/doc/html/classOptionDlg.html
new file mode 100644
index 0000000..b21d2ad
--- /dev/null
+++ b/doc/html/classOptionDlg.html
@@ -0,0 +1,317 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: OptionDlg Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>OptionDlg Class Reference</h1><!-- doxytag: class="OptionDlg" --><p>Inheritance diagram for OptionDlg:
+<p><center><img src="classOptionDlg.png" usemap="#OptionDlg_map" border="0" alt=""></center>
+<map name="OptionDlg_map">
+<area href="classOptionDialog.html" alt="OptionDialog" shape="rect" coords="0,56,85,80">
+</map>
+<a href="classOptionDlg-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6d1e4f6d6bcba2be67cc6d96cf7dce78"></a><!-- doxytag: member="OptionDlg::slotExternalProgTest" ref="6d1e4f6d6bcba2be67cc6d96cf7dce78" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#6d1e4f6d6bcba2be67cc6d96cf7dce78">slotExternalProgTest</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8435e876b83edc8727adf3c9522c990d"></a><!-- doxytag: member="OptionDlg::slotAccountActivated" ref="8435e876b83edc8727adf3c9522c990d" args="(int)" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#8435e876b83edc8727adf3c9522c990d">slotAccountActivated</a> (int)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ddbabac04a2faf257ef1000a817b6dfd"></a><!-- doxytag: member="OptionDlg::slotButtonAddClicked" ref="ddbabac04a2faf257ef1000a817b6dfd" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#ddbabac04a2faf257ef1000a817b6dfd">slotButtonAddClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a308d66d94a9e8f7bb01f95d8d170340"></a><!-- doxytag: member="OptionDlg::slotButtonCopyClicked" ref="a308d66d94a9e8f7bb01f95d8d170340" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#a308d66d94a9e8f7bb01f95d8d170340">slotButtonCopyClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f34d904632a999f09525e4a84a4f4bba"></a><!-- doxytag: member="OptionDlg::slotButtonDeleteClicked" ref="f34d904632a999f09525e4a84a4f4bba" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#f34d904632a999f09525e4a84a4f4bba">slotButtonDeleteClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="79f5f5a3cfe82b2ab728db889571f790"></a><!-- doxytag: member="OptionDlg::slotButtonEditClicked" ref="79f5f5a3cfe82b2ab728db889571f790" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#79f5f5a3cfe82b2ab728db889571f790">slotButtonEditClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e0ceefbabae4b3a3a27cfb109d613f4d"></a><!-- doxytag: member="OptionDlg::slotButtonOkClicked" ref="e0ceefbabae4b3a3a27cfb109d613f4d" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#e0ceefbabae4b3a3a27cfb109d613f4d">slotButtonOkClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a5c107a0ebaffc5d55a19f15e453f016"></a><!-- doxytag: member="OptionDlg::slotButtonSelectSoundFile" ref="a5c107a0ebaffc5d55a19f15e453f016" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#a5c107a0ebaffc5d55a19f15e453f016">slotButtonSelectSoundFile</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d68c949ba426c9e99c3667133e14410b"></a><!-- doxytag: member="OptionDlg::slotMinimizeNoMailClicked" ref="d68c949ba426c9e99c3667133e14410b" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#d68c949ba426c9e99c3667133e14410b">slotMinimizeNoMailClicked</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fe059a79c1b5adad4c4b65a54ea7e588"></a><!-- doxytag: member="OptionDlg::slotSavePasswordToggled" ref="fe059a79c1b5adad4c4b65a54ea7e588" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#fe059a79c1b5adad4c4b65a54ea7e588">slotSavePasswordToggled</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="68ea03d004a5e8dee71731d004765efa"></a><!-- doxytag: member="OptionDlg::slotSoundTest" ref="68ea03d004a5e8dee71731d004765efa" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#68ea03d004a5e8dee71731d004765efa">slotSoundTest</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="356d143dceae572edfe25c4895d42e99"></a><!-- doxytag: member="OptionDlg::slotTerminateNoMailClicked" ref="356d143dceae572edfe25c4895d42e99" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#356d143dceae572edfe25c4895d42e99">slotTerminateNoMailClicked</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="05e56abcb224cbcb9c3bae64ba76175a"></a><!-- doxytag: member="OptionDlg::OptionDlg" ref="05e56abcb224cbcb9c3bae64ba76175a" args="(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#05e56abcb224cbcb9c3bae64ba76175a">OptionDlg</a> (QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cc442307e009b470032fe689ee31ef7e"></a><!-- doxytag: member="OptionDlg::~OptionDlg" ref="cc442307e009b470032fe689ee31ef7e" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#cc442307e009b470032fe689ee31ef7e">~OptionDlg</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e1726cfcdf38d53e958fbd6fc5267ea6"></a><!-- doxytag: member="OptionDlg::QGroupBox_1" ref="e1726cfcdf38d53e958fbd6fc5267ea6" args="" -->
+QGroupBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#e1726cfcdf38d53e958fbd6fc5267ea6">QGroupBox_1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f2b08f1c9e6b69a9ab60f884da54f89d"></a><!-- doxytag: member="OptionDlg::QLabel_1" ref="f2b08f1c9e6b69a9ab60f884da54f89d" args="" -->
+QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#f2b08f1c9e6b69a9ab60f884da54f89d">QLabel_1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dcfa5019bacd8a4c7b2a192eed57e973"></a><!-- doxytag: member="OptionDlg::m_ButtonDelete" ref="dcfa5019bacd8a4c7b2a192eed57e973" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#dcfa5019bacd8a4c7b2a192eed57e973">m_ButtonDelete</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5827d094ba37dc02388af25cefc1d58a"></a><!-- doxytag: member="OptionDlg::m_ButtonCopy" ref="5827d094ba37dc02388af25cefc1d58a" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#5827d094ba37dc02388af25cefc1d58a">m_ButtonCopy</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b062f6eafa19f35357e4aed5e050257d"></a><!-- doxytag: member="OptionDlg::m_ButtonEdit" ref="b062f6eafa19f35357e4aed5e050257d" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#b062f6eafa19f35357e4aed5e050257d">m_ButtonEdit</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f5351545a58dc835af0f6b73f63ca155"></a><!-- doxytag: member="OptionDlg::m_ButtonAdd" ref="f5351545a58dc835af0f6b73f63ca155" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#f5351545a58dc835af0f6b73f63ca155">m_ButtonAdd</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dda3f84fb59db208ce6d71ff1500b679"></a><!-- doxytag: member="OptionDlg::m_ComboAccount" ref="dda3f84fb59db208ce6d71ff1500b679" args="" -->
+QComboBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1cf3b785c0052037ba26740799c77b0a"></a><!-- doxytag: member="OptionDlg::TabWidget2" ref="1cf3b785c0052037ba26740799c77b0a" args="" -->
+QTabWidget *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#1cf3b785c0052037ba26740799c77b0a">TabWidget2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c4375613aa106b60fc026aa006b0f39d"></a><!-- doxytag: member="OptionDlg::tab" ref="c4375613aa106b60fc026aa006b0f39d" args="" -->
+QWidget *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#c4375613aa106b60fc026aa006b0f39d">tab</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="893feee616d6ae1eb502abf350b7335c"></a><!-- doxytag: member="OptionDlg::m_CheckSavePassword" ref="893feee616d6ae1eb502abf350b7335c" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="423a46c1515c3cc3d84a9c80b770119c"></a><!-- doxytag: member="OptionDlg::m_CheckStartMinimized" ref="423a46c1515c3cc3d84a9c80b770119c" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">m_CheckStartMinimized</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b87c903f5579c7731282344dc5377eab"></a><!-- doxytag: member="OptionDlg::m_CheckConfirmDelete" ref="b87c903f5579c7731282344dc5377eab" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">m_CheckConfirmDelete</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e41bbc238ca8e91941442bb711517fe3"></a><!-- doxytag: member="OptionDlg::QLabel_2" ref="e41bbc238ca8e91941442bb711517fe3" args="" -->
+QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#e41bbc238ca8e91941442bb711517fe3">QLabel_2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d57e8e6ba21c3cbe7f31f68635f1c856"></a><!-- doxytag: member="OptionDlg::QLabel_3" ref="d57e8e6ba21c3cbe7f31f68635f1c856" args="" -->
+QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#d57e8e6ba21c3cbe7f31f68635f1c856">QLabel_3</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="97584503ba9983d1f0556189a5de3dac"></a><!-- doxytag: member="OptionDlg::QLabel_6" ref="97584503ba9983d1f0556189a5de3dac" args="" -->
+QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#97584503ba9983d1f0556189a5de3dac">QLabel_6</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="65ee72e62bd25ed5ac2d1e6b1ae46e50"></a><!-- doxytag: member="OptionDlg::QLabel_4" ref="65ee72e62bd25ed5ac2d1e6b1ae46e50" args="" -->
+QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#65ee72e62bd25ed5ac2d1e6b1ae46e50">QLabel_4</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fec35e84e60d7114d8dc21d3accf5c26"></a><!-- doxytag: member="OptionDlg::m_SpinPop3Timer" ref="fec35e84e60d7114d8dc21d3accf5c26" args="" -->
+QSpinBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="32bf82b48c612df1755a61fd96171b9c"></a><!-- doxytag: member="OptionDlg::m_SpinInitTimer" ref="32bf82b48c612df1755a61fd96171b9c" args="" -->
+QSpinBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="073728fdc69ab0cf6f7755e38c28a13b"></a><!-- doxytag: member="OptionDlg::m_SpinIntervalTimer" ref="073728fdc69ab0cf6f7755e38c28a13b" args="" -->
+QSpinBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="22d76af0ad75e30b878c1412da3f84a0"></a><!-- doxytag: member="OptionDlg::m_SpinMaxSize" ref="22d76af0ad75e30b878c1412da3f84a0" args="" -->
+QSpinBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8fc4bdd8d230a0f5d6ed01cde33e9278"></a><!-- doxytag: member="OptionDlg::_checkConfirmClose" ref="8fc4bdd8d230a0f5d6ed01cde33e9278" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#8fc4bdd8d230a0f5d6ed01cde33e9278">_checkConfirmClose</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ed09462ee6cdb999c42c142cfb023db6"></a><!-- doxytag: member="OptionDlg::m_CheckKeepNewMail" ref="ed09462ee6cdb999c42c142cfb023db6" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5553bc799edbadb53b00f8c26342cc0e"></a><!-- doxytag: member="OptionDlg::m_CheckCloseMinimizes" ref="5553bc799edbadb53b00f8c26342cc0e" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#5553bc799edbadb53b00f8c26342cc0e">m_CheckCloseMinimizes</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ae8aaaee5cd4a83d5f7f09d16cb4cdcd"></a><!-- doxytag: member="OptionDlg::m_CheckMinimizeToTray" ref="ae8aaaee5cd4a83d5f7f09d16cb4cdcd" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#ae8aaaee5cd4a83d5f7f09d16cb4cdcd">m_CheckMinimizeToTray</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0526dec363ca38aa071b6d205af2971c"></a><!-- doxytag: member="OptionDlg::tab_2" ref="0526dec363ca38aa071b6d205af2971c" args="" -->
+QWidget *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#0526dec363ca38aa071b6d205af2971c">tab_2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ce0fb5a41c2702f3a3f37d390c54fd0e"></a><!-- doxytag: member="OptionDlg::GroupBox3" ref="ce0fb5a41c2702f3a3f37d390c54fd0e" args="" -->
+QGroupBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#ce0fb5a41c2702f3a3f37d390c54fd0e">GroupBox3</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6379a589358b6110cfa48798a30951ab"></a><!-- doxytag: member="OptionDlg::m_CheckActive" ref="6379a589358b6110cfa48798a30951ab" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#6379a589358b6110cfa48798a30951ab">m_CheckActive</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1fdb0d9cfac85bbef22d749e40dd9376"></a><!-- doxytag: member="OptionDlg::m_CheckAccount1" ref="1fdb0d9cfac85bbef22d749e40dd9376" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#1fdb0d9cfac85bbef22d749e40dd9376">m_CheckAccount1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b1e0581d2cf52c0337d42bbc898a2fc2"></a><!-- doxytag: member="OptionDlg::m_CheckServer" ref="b1e0581d2cf52c0337d42bbc898a2fc2" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#b1e0581d2cf52c0337d42bbc898a2fc2">m_CheckServer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e7595a79588cccd851e00714b0b47d94"></a><!-- doxytag: member="OptionDlg::m_CheckUser" ref="e7595a79588cccd851e00714b0b47d94" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#e7595a79588cccd851e00714b0b47d94">m_CheckUser</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d20b2cce97a72b706dfb29ddc93f1766"></a><!-- doxytag: member="OptionDlg::m_CheckMessages" ref="d20b2cce97a72b706dfb29ddc93f1766" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#d20b2cce97a72b706dfb29ddc93f1766">m_CheckMessages</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bbd14d7cfd0662a8089e83be0809d46f"></a><!-- doxytag: member="OptionDlg::m_CheckSize1" ref="bbd14d7cfd0662a8089e83be0809d46f" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#bbd14d7cfd0662a8089e83be0809d46f">m_CheckSize1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2118ff2ffbe9047193b4e7db7c5cf3e4"></a><!-- doxytag: member="OptionDlg::GroupBox2" ref="2118ff2ffbe9047193b4e7db7c5cf3e4" args="" -->
+QGroupBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#2118ff2ffbe9047193b4e7db7c5cf3e4">GroupBox2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c24185842afb01977653ac479eb88b1a"></a><!-- doxytag: member="OptionDlg::m_CheckNumber" ref="c24185842afb01977653ac479eb88b1a" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">m_CheckNumber</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="445e189070032f170afbdfc945e304d2"></a><!-- doxytag: member="OptionDlg::m_CheckAccount2" ref="445e189070032f170afbdfc945e304d2" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">m_CheckAccount2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5f20a2cdfc1bb8be22fb4c8480ffd727"></a><!-- doxytag: member="OptionDlg::m_CheckFrom" ref="5f20a2cdfc1bb8be22fb4c8480ffd727" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">m_CheckFrom</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3a9edd5103bdf56db01a979aa930d30a"></a><!-- doxytag: member="OptionDlg::m_CheckTo" ref="3a9edd5103bdf56db01a979aa930d30a" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">m_CheckTo</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f92fbbd7d979799bd4c6b61a733c99cf"></a><!-- doxytag: member="OptionDlg::m_CheckSubject" ref="f92fbbd7d979799bd4c6b61a733c99cf" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">m_CheckSubject</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="428705f2ded0cf3981eea054903729e3"></a><!-- doxytag: member="OptionDlg::m_CheckDate" ref="428705f2ded0cf3981eea054903729e3" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">m_CheckDate</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ffcca9b555e6fd49b0b98df4f1e95390"></a><!-- doxytag: member="OptionDlg::m_CheckSize2" ref="ffcca9b555e6fd49b0b98df4f1e95390" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">m_CheckSize2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="29a9e036f6fec07d149814c96a5c5d6d"></a><!-- doxytag: member="OptionDlg::m_CheckContent" ref="29a9e036f6fec07d149814c96a5c5d6d" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">m_CheckContent</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="882382906f749f464e23b7d68e354060"></a><!-- doxytag: member="OptionDlg::m_CheckState" ref="882382906f749f464e23b7d68e354060" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">m_CheckState</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="39539f366d1c2335eb76ea90bb47ee1e"></a><!-- doxytag: member="OptionDlg::groupBox4" ref="39539f366d1c2335eb76ea90bb47ee1e" args="" -->
+QGroupBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#39539f366d1c2335eb76ea90bb47ee1e">groupBox4</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="822eac789cfdbe481591d6a14b250571"></a><!-- doxytag: member="OptionDlg::m_checkHTML" ref="822eac789cfdbe481591d6a14b250571" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#822eac789cfdbe481591d6a14b250571">m_checkHTML</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e5718ae6060503e26fe6ddc1dbb9d080"></a><!-- doxytag: member="OptionDlg::tab_3" ref="e5718ae6060503e26fe6ddc1dbb9d080" args="" -->
+QWidget *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#e5718ae6060503e26fe6ddc1dbb9d080">tab_3</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="15e7929ac669b9e82939047d06497488"></a><!-- doxytag: member="OptionDlg::m_CheckMinimizeNoMail" ref="15e7929ac669b9e82939047d06497488" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d630c0373296051e08a03ba0385137b2"></a><!-- doxytag: member="OptionDlg::m_CheckTerminateNoMail" ref="d630c0373296051e08a03ba0385137b2" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0efccb17955dd1a33bb61176517c57af"></a><!-- doxytag: member="OptionDlg::tab_4" ref="0efccb17955dd1a33bb61176517c57af" args="" -->
+QWidget *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#0efccb17955dd1a33bb61176517c57af">tab_4</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a7a81fcbeb3e6d9a97ea8e84ff82248e"></a><!-- doxytag: member="OptionDlg::m_CheckBeep" ref="a7a81fcbeb3e6d9a97ea8e84ff82248e" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">m_CheckBeep</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="755cd3fc655abf4e5835bccd03cf9c39"></a><!-- doxytag: member="OptionDlg::m_CheckShowMainWindow" ref="755cd3fc655abf4e5835bccd03cf9c39" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">m_CheckShowMainWindow</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1b2f26bc2ecf8563c40623ebf5d9e817"></a><!-- doxytag: member="OptionDlg::m_CheckSound" ref="1b2f26bc2ecf8563c40623ebf5d9e817" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="613b7eb6be9c441040100dd69c4314db"></a><!-- doxytag: member="OptionDlg::m_CheckExternalProg" ref="613b7eb6be9c441040100dd69c4314db" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="15c1be3d6561f4a0bbfdacba6830ef51"></a><!-- doxytag: member="OptionDlg::m_ButtonSelectSoundFile" ref="15c1be3d6561f4a0bbfdacba6830ef51" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="01a59a3d9e52b6e2ccf55d9c910ebb85"></a><!-- doxytag: member="OptionDlg::m_ButtonSoundTest" ref="01a59a3d9e52b6e2ccf55d9c910ebb85" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5adabd2b563e6c382e0f578ca2cfd113"></a><!-- doxytag: member="OptionDlg::QLabel_5" ref="5adabd2b563e6c382e0f578ca2cfd113" args="" -->
+QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#5adabd2b563e6c382e0f578ca2cfd113">QLabel_5</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="464fd65b203b450828c95e273c17ecc0"></a><!-- doxytag: member="OptionDlg::m_ComboExternalProg" ref="464fd65b203b450828c95e273c17ecc0" args="" -->
+QComboBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6044d14d1929890f3dd9e309f9cac091"></a><!-- doxytag: member="OptionDlg::m_ButtonExternalProgTest" ref="6044d14d1929890f3dd9e309f9cac091" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9254f6d43feea0d85b590d0feb394cb3"></a><!-- doxytag: member="OptionDlg::m_EditSoundFile" ref="9254f6d43feea0d85b590d0feb394cb3" args="" -->
+QLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="86990595eb7bb5191dee0dca630e5041"></a><!-- doxytag: member="OptionDlg::m_CheckShowMessagebox" ref="86990595eb7bb5191dee0dca630e5041" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">m_CheckShowMessagebox</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8ceb133b8b4ccd071329112b7fa9181a"></a><!-- doxytag: member="OptionDlg::m_ButtonOk" ref="8ceb133b8b4ccd071329112b7fa9181a" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#8ceb133b8b4ccd071329112b7fa9181a">m_ButtonOk</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e1d3b44701644711f98f32b4bae8db92"></a><!-- doxytag: member="OptionDlg::m_ButtonCancel" ref="e1d3b44701644711f98f32b4bae8db92" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#e1d3b44701644711f98f32b4bae8db92">m_ButtonCancel</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="faff39abb53603d21e94af1bcbc04a9c"></a><!-- doxytag: member="OptionDlg::languageChange" ref="faff39abb53603d21e94af1bcbc04a9c" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#faff39abb53603d21e94af1bcbc04a9c">languageChange</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f2a78d5c1e7ebdd2074d1cfc2f553cb1"></a><!-- doxytag: member="OptionDlg::OptionDlgLayout" ref="f2a78d5c1e7ebdd2074d1cfc2f553cb1" args="" -->
+QVBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#f2a78d5c1e7ebdd2074d1cfc2f553cb1">OptionDlgLayout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ee0fdccec7e23ca2b31bcb556215f9d9"></a><!-- doxytag: member="OptionDlg::QGroupBox_1Layout" ref="ee0fdccec7e23ca2b31bcb556215f9d9" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#ee0fdccec7e23ca2b31bcb556215f9d9">QGroupBox_1Layout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="169a7100c7f2da97421eb57882e6cdce"></a><!-- doxytag: member="OptionDlg::spacer4" ref="169a7100c7f2da97421eb57882e6cdce" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#169a7100c7f2da97421eb57882e6cdce">spacer4</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e2a13e9c7b92aaac9bdbe44be32090d9"></a><!-- doxytag: member="OptionDlg::spacer2" ref="e2a13e9c7b92aaac9bdbe44be32090d9" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#e2a13e9c7b92aaac9bdbe44be32090d9">spacer2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="57faa9421d4b06b179ad02cd84f77a12"></a><!-- doxytag: member="OptionDlg::layout3" ref="57faa9421d4b06b179ad02cd84f77a12" args="" -->
+QVBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#57faa9421d4b06b179ad02cd84f77a12">layout3</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="882ee3747dbf7b9ee57341152bc7ab29"></a><!-- doxytag: member="OptionDlg::tabLayout" ref="882ee3747dbf7b9ee57341152bc7ab29" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#882ee3747dbf7b9ee57341152bc7ab29">tabLayout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6702f780899bc9461d21c29cfb7b4757"></a><!-- doxytag: member="OptionDlg::tabLayout_2" ref="6702f780899bc9461d21c29cfb7b4757" args="" -->
+QHBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#6702f780899bc9461d21c29cfb7b4757">tabLayout_2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c6b96b8af4e30c921bd2c381fccebfbe"></a><!-- doxytag: member="OptionDlg::GroupBox3Layout" ref="c6b96b8af4e30c921bd2c381fccebfbe" args="" -->
+QVBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#c6b96b8af4e30c921bd2c381fccebfbe">GroupBox3Layout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ff1d366304c7718769b465292708ddf2"></a><!-- doxytag: member="OptionDlg::GroupBox2Layout" ref="ff1d366304c7718769b465292708ddf2" args="" -->
+QVBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#ff1d366304c7718769b465292708ddf2">GroupBox2Layout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a8ef8d42b1fc85a6f37423ad0bcefcae"></a><!-- doxytag: member="OptionDlg::groupBox4Layout" ref="a8ef8d42b1fc85a6f37423ad0bcefcae" args="" -->
+QVBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#a8ef8d42b1fc85a6f37423ad0bcefcae">groupBox4Layout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="61664d27d32355fab76184bb47adf86a"></a><!-- doxytag: member="OptionDlg::tabLayout_3" ref="61664d27d32355fab76184bb47adf86a" args="" -->
+QVBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#61664d27d32355fab76184bb47adf86a">tabLayout_3</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="646f82b85a37c31e2f93c8cf420b45c2"></a><!-- doxytag: member="OptionDlg::tabLayout_4" ref="646f82b85a37c31e2f93c8cf420b45c2" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#646f82b85a37c31e2f93c8cf420b45c2">tabLayout_4</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a96e74ece6336c05e03376af33f5269c"></a><!-- doxytag: member="OptionDlg::layout2" ref="a96e74ece6336c05e03376af33f5269c" args="" -->
+QHBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#a96e74ece6336c05e03376af33f5269c">layout2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f6170350191d444f72418d6484f4ea19"></a><!-- doxytag: member="OptionDlg::Spacer70" ref="f6170350191d444f72418d6484f4ea19" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classOptionDlg.html#f6170350191d444f72418d6484f4ea19">Spacer70</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="OptionDlg_8h-source.html#l00030">30</a> of file <a class="el" href="OptionDlg_8h-source.html">OptionDlg.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="OptionDlg_8h-source.html">OptionDlg.h</a><li>kshowmail/<a class="el" href="OptionDlg_8cpp-source.html">OptionDlg.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:21 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classOptionDlg.png b/doc/html/classOptionDlg.png
new file mode 100644
index 0000000..c787b90
--- /dev/null
+++ b/doc/html/classOptionDlg.png
Binary files differ
diff --git a/doc/html/classServerDialog-members.html b/doc/html/classServerDialog-members.html
new file mode 100644
index 0000000..b084b24
--- /dev/null
+++ b/doc/html/classServerDialog-members.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ServerDialog Member List</h1>This is the complete list of members for <a class="el" href="classServerDialog.html">ServerDialog</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a></td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">cboProtocol</a></td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">chkActive</a></td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#9ed57b703b9fb63d8ce406f36e6c66ba">fillDialog</a>()</td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a></td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#05f46d98c337ab7a8afc2325aef9e8e7">grpSecureTransfer</a></td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#2083bd1376173f7229267c77b00e0250">ServerDialog</a>(QWidget *parent, ConfigElem *item=NULL)</td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#05a288f0b2bf3fb3b129cf8e6ea210fb">slotOk</a>()</td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#3b3962b56ecaaa225953601d37228cb3">slotPasswordStorageChanged</a>(int id)</td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#43e0a3f2e4975f8b196bc3dbfd606eb0">slotSecureTransferChanged</a>(int id)</td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [protected, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">spbPort</a></td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">txtAccount</a></td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a></td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">txtServer</a></td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">txtUser</a></td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDialog.html#05ac011efd88d4ae6f0965f7b6d3606d">~ServerDialog</a>()</td><td><a class="el" href="classServerDialog.html">ServerDialog</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classServerDialog.html b/doc/html/classServerDialog.html
new file mode 100644
index 0000000..c7c70ea
--- /dev/null
+++ b/doc/html/classServerDialog.html
@@ -0,0 +1,375 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: ServerDialog Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ServerDialog Class Reference</h1><!-- doxytag: class="ServerDialog" -->Dialog to edit account options. You can not create a new account or edit the account name.
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="serverdialog_8h-source.html">serverdialog.h</a>&gt;</code>
+<p>
+<a href="classServerDialog-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#2083bd1376173f7229267c77b00e0250">ServerDialog</a> (QWidget *parent, <a class="el" href="classConfigElem.html">ConfigElem</a> *item=NULL)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#05ac011efd88d4ae6f0965f7b6d3606d">~ServerDialog</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#3b3962b56ecaaa225953601d37228cb3">slotPasswordStorageChanged</a> (int id)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#43e0a3f2e4975f8b196bc3dbfd606eb0">slotSecureTransferChanged</a> (int id)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#05a288f0b2bf3fb3b129cf8e6ea210fb">slotOk</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#9ed57b703b9fb63d8ce406f36e6c66ba">fillDialog</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classConfigElem.html">ConfigElem</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">txtAccount</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">txtServer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KComboBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">cboProtocol</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QSpinBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">spbPort</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">txtUser</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">KPasswordEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">chkActive</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QButtonGroup *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QButtonGroup *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDialog.html#05f46d98c337ab7a8afc2325aef9e8e7">grpSecureTransfer</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Dialog to edit account options. You can not create a new account or edit the account name.
+<p>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke <p>
+Ulrich Weigelt &lt;<a href="mailto:ulrich.weigelt@gmx.de">ulrich.weigelt@gmx.de</a>&gt; </dd></dl>
+
+<p>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="2083bd1376173f7229267c77b00e0250"></a><!-- doxytag: member="ServerDialog::ServerDialog" ref="2083bd1376173f7229267c77b00e0250" args="(QWidget *parent, ConfigElem *item=NULL)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ServerDialog::ServerDialog </td>
+ <td>(</td>
+ <td class="paramtype">QWidget *&nbsp;</td>
+ <td class="paramname"> <em>parent</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classConfigElem.html">ConfigElem</a> *&nbsp;</td>
+ <td class="paramname"> <em>item</em> = <code>NULL</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+General constructor <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>parent</em>&nbsp;</td><td>parent of the dialog </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>item</em>&nbsp;</td><td>account to setup </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="05ac011efd88d4ae6f0965f7b6d3606d"></a><!-- doxytag: member="ServerDialog::~ServerDialog" ref="05ac011efd88d4ae6f0965f7b6d3606d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ServerDialog::~ServerDialog </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Destructor
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="3b3962b56ecaaa225953601d37228cb3"></a><!-- doxytag: member="ServerDialog::slotPasswordStorageChanged" ref="3b3962b56ecaaa225953601d37228cb3" args="(int id)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ServerDialog::slotPasswordStorageChanged </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>id</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with the password button group. Enabled or disabled the password edit line. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>id</em>&nbsp;</td><td>button identifier </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="43e0a3f2e4975f8b196bc3dbfd606eb0"></a><!-- doxytag: member="ServerDialog::slotSecureTransferChanged" ref="43e0a3f2e4975f8b196bc3dbfd606eb0" args="(int id)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ServerDialog::slotSecureTransferChanged </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>id</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Connected with the secure transfer button group. Changes the port number. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>id</em>&nbsp;</td><td>button identifier </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="05a288f0b2bf3fb3b129cf8e6ea210fb"></a><!-- doxytag: member="ServerDialog::slotOk" ref="05a288f0b2bf3fb3b129cf8e6ea210fb" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ServerDialog::slotOk </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected, slot]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Overwritten methode of KDialogBase. Called if OK was clicked. Stores the entered values into the given account item. If no item was given, it creates a new one. After then it invokes <a class="el" href="classServerDialog.html#05a288f0b2bf3fb3b129cf8e6ea210fb">slotOk()</a> of KDialogBase.
+</div>
+</div><p>
+<a class="anchor" name="9ed57b703b9fb63d8ce406f36e6c66ba"></a><!-- doxytag: member="ServerDialog::fillDialog" ref="9ed57b703b9fb63d8ce406f36e6c66ba" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ServerDialog::fillDialog </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [protected]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Writes the values of the account into the dialog items.
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="c361b2cc2165a11e38e83cea29e39185"></a><!-- doxytag: member="ServerDialog::account" ref="c361b2cc2165a11e38e83cea29e39185" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classConfigElem.html">ConfigElem</a>* <a class="el" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">ServerDialog::account</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+account to setup
+</div>
+</div><p>
+<a class="anchor" name="690681b24cfd21ebdc4d5543bee5b4a3"></a><!-- doxytag: member="ServerDialog::txtAccount" ref="690681b24cfd21ebdc4d5543bee5b4a3" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KLineEdit* <a class="el" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">ServerDialog::txtAccount</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Edit line which contains the unique account name.
+</div>
+</div><p>
+<a class="anchor" name="4779a9cb8e86f39ea43f8db6e7c0b0ad"></a><!-- doxytag: member="ServerDialog::txtServer" ref="4779a9cb8e86f39ea43f8db6e7c0b0ad" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KLineEdit* <a class="el" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">ServerDialog::txtServer</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Edit line which contains the server name.
+</div>
+</div><p>
+<a class="anchor" name="2634e6da37697f6a6a1a2020118bfd59"></a><!-- doxytag: member="ServerDialog::cboProtocol" ref="2634e6da37697f6a6a1a2020118bfd59" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KComboBox* <a class="el" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">ServerDialog::cboProtocol</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Combo box to choose the protocol.
+</div>
+</div><p>
+<a class="anchor" name="1ac6a0a7f23a08ab62450991412627d6"></a><!-- doxytag: member="ServerDialog::spbPort" ref="1ac6a0a7f23a08ab62450991412627d6" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QSpinBox* <a class="el" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">ServerDialog::spbPort</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Spinbox to choose the tcp port.
+</div>
+</div><p>
+<a class="anchor" name="0df9d91a225a5426d198286987f5b1b2"></a><!-- doxytag: member="ServerDialog::txtUser" ref="0df9d91a225a5426d198286987f5b1b2" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KLineEdit* <a class="el" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">ServerDialog::txtUser</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Edit line which contains the user name.
+</div>
+</div><p>
+<a class="anchor" name="8630fd27107213fd88fbaf0db02793d6"></a><!-- doxytag: member="ServerDialog::txtPassword" ref="8630fd27107213fd88fbaf0db02793d6" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">KPasswordEdit* <a class="el" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">ServerDialog::txtPassword</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Edit line which contains the password.
+</div>
+</div><p>
+<a class="anchor" name="b433e8128211c96fe08015cc45083ca6"></a><!-- doxytag: member="ServerDialog::chkActive" ref="b433e8128211c96fe08015cc45083ca6" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QCheckBox* <a class="el" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">ServerDialog::chkActive</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Check box to select whether the account is active or not.
+</div>
+</div><p>
+<a class="anchor" name="63a7dda4a3c7da5a4b7979dcd13f96ce"></a><!-- doxytag: member="ServerDialog::grpPasswordStorage" ref="63a7dda4a3c7da5a4b7979dcd13f96ce" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QButtonGroup* <a class="el" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">ServerDialog::grpPasswordStorage</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Combines the radio buttons of password storage.
+</div>
+</div><p>
+<a class="anchor" name="05f46d98c337ab7a8afc2325aef9e8e7"></a><!-- doxytag: member="ServerDialog::grpSecureTransfer" ref="05f46d98c337ab7a8afc2325aef9e8e7" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QButtonGroup* <a class="el" href="classServerDialog.html#05f46d98c337ab7a8afc2325aef9e8e7">ServerDialog::grpSecureTransfer</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Combines the radio buttons of secure transfer.
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="serverdialog_8h-source.html">serverdialog.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="serverdialog_8cpp.html">serverdialog.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classServerDialog.png b/doc/html/classServerDialog.png
new file mode 100644
index 0000000..86fb286
--- /dev/null
+++ b/doc/html/classServerDialog.png
Binary files differ
diff --git a/doc/html/classServerDlg-members.html b/doc/html/classServerDlg-members.html
new file mode 100644
index 0000000..03e0ee4
--- /dev/null
+++ b/doc/html/classServerDlg-members.html
@@ -0,0 +1,54 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ServerDlg Member List</h1>This is the complete list of members for <a class="el" href="classServerDlg.html">ServerDlg</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#2e1762f00479244febf47837bc95d14e">CheckActive</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#ca4f288c6200a66a56825e748292ad97">languageChange</a>()</td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td><code> [protected, virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#5ffa85e8d10a2186ee9674261bbfd98b">Layout13</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#db4ed9643452314bb65d230557549069">Layout14</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#50988c2d6da00d7aac9153c3502e971c">Layout15</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#890621d9388729ada4c7a3e46aa4ca88">m_ButtonCancel</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#edd4686af6bac8a9b6801240595a350d">m_ButtonOk</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#249ee8e0562af6bfb41423158ad54ba3">m_ComboProtocol</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#7a6943617bfa890cdc3b9fea25d5a217">m_EditAccount</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#fde33b5549863278ffd58f1bda3c8a70">m_EditPassword</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#8995a72a3416f8b38780cae0285ee300">m_EditServer</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#e30637c768ca6fcd772f0e3c4bad516d">m_EditUser</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#e113c681047f355e626560156070d58d">m_SpinPort</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#4ee5b1f6981fba44c45c2dcc15340aae">QLabel_1</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#a5df67905ccbe9d66768589a9e4e6cc2">QLabel_2</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#2a451082a9b41a3c368d2239802d4340">QLabel_3</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#e08739ab911ad22f1baef6a47f478155">QLabel_4</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#9a4f7dd7a820b166cfcf8fe9efd7bd17">QLabel_5</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#e85121e9293307b93f4a88cdbed7f07f">QLabel_6</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#c58b59def2e66e6c5bbd227152f06ff1">ServerDlg</a>(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#a8fd268743a6699149f86dfd25055d05">slotButtonOkClicked</a>()</td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td><code> [virtual, slot]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#a13106ba1ce57124aa233a152b7ed1a0">Spacer1</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#ffa09ac5f6428a6486eab425b849f629">Spacer10</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#fbc4e3111d287c9cf11f738e988b0c37">Spacer11</a></td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServerDlg.html#517c785a1d8f364cd3d6bd044f88e07e">~ServerDlg</a>()</td><td><a class="el" href="classServerDlg.html">ServerDlg</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:21 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classServerDlg.html b/doc/html/classServerDlg.html
new file mode 100644
index 0000000..d786310
--- /dev/null
+++ b/doc/html/classServerDlg.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: ServerDlg Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ServerDlg Class Reference</h1><!-- doxytag: class="ServerDlg" --><p>Inheritance diagram for ServerDlg:
+<p><center><img src="classServerDlg.png" usemap="#ServerDlg_map" border="0" alt=""></center>
+<map name="ServerDlg_map">
+<area href="classServerDialog.html" alt="ServerDialog" shape="rect" coords="0,56,87,80">
+</map>
+<a href="classServerDlg-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a8fd268743a6699149f86dfd25055d05"></a><!-- doxytag: member="ServerDlg::slotButtonOkClicked" ref="a8fd268743a6699149f86dfd25055d05" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#a8fd268743a6699149f86dfd25055d05">slotButtonOkClicked</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c58b59def2e66e6c5bbd227152f06ff1"></a><!-- doxytag: member="ServerDlg::ServerDlg" ref="c58b59def2e66e6c5bbd227152f06ff1" args="(QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#c58b59def2e66e6c5bbd227152f06ff1">ServerDlg</a> (QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags fl=0)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="517c785a1d8f364cd3d6bd044f88e07e"></a><!-- doxytag: member="ServerDlg::~ServerDlg" ref="517c785a1d8f364cd3d6bd044f88e07e" args="()" -->
+&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#517c785a1d8f364cd3d6bd044f88e07e">~ServerDlg</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e08739ab911ad22f1baef6a47f478155"></a><!-- doxytag: member="ServerDlg::QLabel_4" ref="e08739ab911ad22f1baef6a47f478155" args="" -->
+QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#e08739ab911ad22f1baef6a47f478155">QLabel_4</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7a6943617bfa890cdc3b9fea25d5a217"></a><!-- doxytag: member="ServerDlg::m_EditAccount" ref="7a6943617bfa890cdc3b9fea25d5a217" args="" -->
+QLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#7a6943617bfa890cdc3b9fea25d5a217">m_EditAccount</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8995a72a3416f8b38780cae0285ee300"></a><!-- doxytag: member="ServerDlg::m_EditServer" ref="8995a72a3416f8b38780cae0285ee300" args="" -->
+QLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#8995a72a3416f8b38780cae0285ee300">m_EditServer</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2a451082a9b41a3c368d2239802d4340"></a><!-- doxytag: member="ServerDlg::QLabel_3" ref="2a451082a9b41a3c368d2239802d4340" args="" -->
+QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#2a451082a9b41a3c368d2239802d4340">QLabel_3</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2e1762f00479244febf47837bc95d14e"></a><!-- doxytag: member="ServerDlg::CheckActive" ref="2e1762f00479244febf47837bc95d14e" args="" -->
+QCheckBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#2e1762f00479244febf47837bc95d14e">CheckActive</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="edd4686af6bac8a9b6801240595a350d"></a><!-- doxytag: member="ServerDlg::m_ButtonOk" ref="edd4686af6bac8a9b6801240595a350d" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#edd4686af6bac8a9b6801240595a350d">m_ButtonOk</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="890621d9388729ada4c7a3e46aa4ca88"></a><!-- doxytag: member="ServerDlg::m_ButtonCancel" ref="890621d9388729ada4c7a3e46aa4ca88" args="" -->
+QPushButton *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#890621d9388729ada4c7a3e46aa4ca88">m_ButtonCancel</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4ee5b1f6981fba44c45c2dcc15340aae"></a><!-- doxytag: member="ServerDlg::QLabel_1" ref="4ee5b1f6981fba44c45c2dcc15340aae" args="" -->
+QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#4ee5b1f6981fba44c45c2dcc15340aae">QLabel_1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a5df67905ccbe9d66768589a9e4e6cc2"></a><!-- doxytag: member="ServerDlg::QLabel_2" ref="a5df67905ccbe9d66768589a9e4e6cc2" args="" -->
+QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#a5df67905ccbe9d66768589a9e4e6cc2">QLabel_2</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9a4f7dd7a820b166cfcf8fe9efd7bd17"></a><!-- doxytag: member="ServerDlg::QLabel_5" ref="9a4f7dd7a820b166cfcf8fe9efd7bd17" args="" -->
+QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#9a4f7dd7a820b166cfcf8fe9efd7bd17">QLabel_5</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e85121e9293307b93f4a88cdbed7f07f"></a><!-- doxytag: member="ServerDlg::QLabel_6" ref="e85121e9293307b93f4a88cdbed7f07f" args="" -->
+QLabel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#e85121e9293307b93f4a88cdbed7f07f">QLabel_6</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="249ee8e0562af6bfb41423158ad54ba3"></a><!-- doxytag: member="ServerDlg::m_ComboProtocol" ref="249ee8e0562af6bfb41423158ad54ba3" args="" -->
+QComboBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#249ee8e0562af6bfb41423158ad54ba3">m_ComboProtocol</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e113c681047f355e626560156070d58d"></a><!-- doxytag: member="ServerDlg::m_SpinPort" ref="e113c681047f355e626560156070d58d" args="" -->
+QSpinBox *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#e113c681047f355e626560156070d58d">m_SpinPort</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e30637c768ca6fcd772f0e3c4bad516d"></a><!-- doxytag: member="ServerDlg::m_EditUser" ref="e30637c768ca6fcd772f0e3c4bad516d" args="" -->
+QLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#e30637c768ca6fcd772f0e3c4bad516d">m_EditUser</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fde33b5549863278ffd58f1bda3c8a70"></a><!-- doxytag: member="ServerDlg::m_EditPassword" ref="fde33b5549863278ffd58f1bda3c8a70" args="" -->
+QLineEdit *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#fde33b5549863278ffd58f1bda3c8a70">m_EditPassword</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Slots</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ca4f288c6200a66a56825e748292ad97"></a><!-- doxytag: member="ServerDlg::languageChange" ref="ca4f288c6200a66a56825e748292ad97" args="()" -->
+virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#ca4f288c6200a66a56825e748292ad97">languageChange</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2de3b2eb3b34b593fc63c1931489c6a1"></a><!-- doxytag: member="ServerDlg::ServerDlgLayout" ref="2de3b2eb3b34b593fc63c1931489c6a1" args="" -->
+QGridLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#2de3b2eb3b34b593fc63c1931489c6a1">ServerDlgLayout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5ffa85e8d10a2186ee9674261bbfd98b"></a><!-- doxytag: member="ServerDlg::Layout13" ref="5ffa85e8d10a2186ee9674261bbfd98b" args="" -->
+QHBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#5ffa85e8d10a2186ee9674261bbfd98b">Layout13</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a13106ba1ce57124aa233a152b7ed1a0"></a><!-- doxytag: member="ServerDlg::Spacer1" ref="a13106ba1ce57124aa233a152b7ed1a0" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#a13106ba1ce57124aa233a152b7ed1a0">Spacer1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="50988c2d6da00d7aac9153c3502e971c"></a><!-- doxytag: member="ServerDlg::Layout15" ref="50988c2d6da00d7aac9153c3502e971c" args="" -->
+QHBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#50988c2d6da00d7aac9153c3502e971c">Layout15</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fbc4e3111d287c9cf11f738e988b0c37"></a><!-- doxytag: member="ServerDlg::Spacer11" ref="fbc4e3111d287c9cf11f738e988b0c37" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#fbc4e3111d287c9cf11f738e988b0c37">Spacer11</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="db4ed9643452314bb65d230557549069"></a><!-- doxytag: member="ServerDlg::Layout14" ref="db4ed9643452314bb65d230557549069" args="" -->
+QHBoxLayout *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#db4ed9643452314bb65d230557549069">Layout14</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ffa09ac5f6428a6486eab425b849f629"></a><!-- doxytag: member="ServerDlg::Spacer10" ref="ffa09ac5f6428a6486eab425b849f629" args="" -->
+QSpacerItem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServerDlg.html#ffa09ac5f6428a6486eab425b849f629">Spacer10</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="ServerDlg_8h-source.html#l00028">28</a> of file <a class="el" href="ServerDlg_8h-source.html">ServerDlg.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
+<li>kshowmail/<a class="el" href="ServerDlg_8h-source.html">ServerDlg.h</a><li>kshowmail/<a class="el" href="ServerDlg_8cpp-source.html">ServerDlg.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:21 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classServerDlg.png b/doc/html/classServerDlg.png
new file mode 100644
index 0000000..076105f
--- /dev/null
+++ b/doc/html/classServerDlg.png
Binary files differ
diff --git a/doc/html/classShowListViewItem-members.html b/doc/html/classShowListViewItem-members.html
new file mode 100644
index 0000000..9e8ea3a
--- /dev/null
+++ b/doc/html/classShowListViewItem-members.html
@@ -0,0 +1,53 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ShowListViewItem Member List</h1>This is the complete list of members for <a class="el" href="classShowListViewItem.html">ShowListViewItem</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075813c78adafbe56de880d99357e659832">_colAccount</a> enum value</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d07564802e43724f98301b74055e164e8e46">_colContent</a> enum value</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075783ffd9ee58a24ab0f850b9a02af6178">_colDate</a> enum value</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d0750c73c4f727d2ef0a095d76df9fadc5ea">_colFrom</a> enum value</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075ce177d8abde0abb4153cdf4a5d4ef8ee">_colNumber</a> enum value</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075d9a6583b5b7e2a25f0678985afa45950">_colSize</a> enum value</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075d33223c37563c4e7c517e8428d272c42">_colState</a> enum value</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075c0d8dc86f4421edd8c8e7327f0729737">_colSubject</a> enum value</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075c3cae478dcb1fd7ef007ffd09e2576e0">_colTo</a> enum value</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#80e56b65e05d1bbded4716d258be499a">compare</a>(QListViewItem *i, int col, bool ascending) const</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#5dba88e00c43a0911fa70f6c41173fe3">key</a>(int column, bool ascending) const</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#9d582aea8cd197406cd8ba103e3df25b">m_time</a></td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#d757b7cadf50f4b7e8af5f1f7fe09b02">setAccount</a>(const QString &amp;)</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#2b5c115276821d6137cf14940d264606">setContent</a>(const QString &amp;)</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#b96fe5949709d9ccd3d414ac81671577">setDate</a>(const QString &amp;)</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#9ff7a14853167240196c9289924a39d6">setFrom</a>(const QString &amp;)</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#2f82fc18123a144ec93f94384c936172">setNumber</a>(const QString &amp;)</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#0bb549ead9f623377fa2a240e76e3e90">setSize</a>(const QString &amp;)</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#120d8cdc825924cf408ba99c6667cf34">setState</a>(const QString &amp;)</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#c20d53f3d7d4c60bb054c958531f5d92">setSubject</a>(const QString &amp;)</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#0d78b8e18cae5e309719b498f40f2f89">setTime</a>(const QString &amp;)</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#633d447c919be4b754def3ae9b03c9f6">setTo</a>(const QString &amp;)</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#4d3f0f8ab32067485f83d3bf93fff6c6">ShowListViewItem</a>(QListView *parent, ShowListViewItem *after)</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#8ad5e105eb0fb3275af6cc55ce52a63d">ShowListViewItem</a>(QListView *parent)</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowListViewItem.html#1d417b96d9e99eb7a7f284386cb00f91">~ShowListViewItem</a>()</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a></td><td><code> [virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classShowListViewItem.html b/doc/html/classShowListViewItem.html
new file mode 100644
index 0000000..fde173f
--- /dev/null
+++ b/doc/html/classShowListViewItem.html
@@ -0,0 +1,487 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: ShowListViewItem Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ShowListViewItem Class Reference</h1><!-- doxytag: class="ShowListViewItem" --><code>#include &lt;<a class="el" href="showlistviewitem_8h-source.html">showlistviewitem.h</a>&gt;</code>
+<p>
+<a href="classShowListViewItem-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom">{ <br>
+&nbsp;&nbsp;<a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075ce177d8abde0abb4153cdf4a5d4ef8ee">_colNumber</a>,
+<a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075813c78adafbe56de880d99357e659832">_colAccount</a>,
+<a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d0750c73c4f727d2ef0a095d76df9fadc5ea">_colFrom</a>,
+<a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075c3cae478dcb1fd7ef007ffd09e2576e0">_colTo</a>,
+<br>
+&nbsp;&nbsp;<a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075c0d8dc86f4421edd8c8e7327f0729737">_colSubject</a>,
+<a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075783ffd9ee58a24ab0f850b9a02af6178">_colDate</a>,
+<a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075d9a6583b5b7e2a25f0678985afa45950">_colSize</a>,
+<a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d07564802e43724f98301b74055e164e8e46">_colContent</a>,
+<br>
+&nbsp;&nbsp;<a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075d33223c37563c4e7c517e8428d272c42">_colState</a>
+<br>
+ }</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#4d3f0f8ab32067485f83d3bf93fff6c6">ShowListViewItem</a> (QListView *parent, <a class="el" href="classShowListViewItem.html">ShowListViewItem</a> *after)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#8ad5e105eb0fb3275af6cc55ce52a63d">ShowListViewItem</a> (QListView *parent)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#1d417b96d9e99eb7a7f284386cb00f91">~ShowListViewItem</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#5dba88e00c43a0911fa70f6c41173fe3">key</a> (int column, bool ascending) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#80e56b65e05d1bbded4716d258be499a">compare</a> (QListViewItem *i, int col, bool ascending) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#2f82fc18123a144ec93f94384c936172">setNumber</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#d757b7cadf50f4b7e8af5f1f7fe09b02">setAccount</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#9ff7a14853167240196c9289924a39d6">setFrom</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#633d447c919be4b754def3ae9b03c9f6">setTo</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#c20d53f3d7d4c60bb054c958531f5d92">setSubject</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#b96fe5949709d9ccd3d414ac81671577">setDate</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#0bb549ead9f623377fa2a240e76e3e90">setSize</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#2b5c115276821d6137cf14940d264606">setContent</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#120d8cdc825924cf408ba99c6667cf34">setState</a> (const QString &amp;)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#0d78b8e18cae5e309719b498f40f2f89">setTime</a> (const QString &amp;)</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowListViewItem.html#9d582aea8cd197406cd8ba103e3df25b">m_time</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke </dd></dl>
+
+<p>
+<hr><h2>Member Enumeration Documentation</h2>
+<a class="anchor" name="afb45ba9f76d1f5fa2c9e47f19a8d075"></a><!-- doxytag: member="ShowListViewItem::@1" ref="afb45ba9f76d1f5fa2c9e47f19a8d075" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+<dl compact><dt><b>Enumerator: </b></dt><dd>
+<table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" name="afb45ba9f76d1f5fa2c9e47f19a8d075ce177d8abde0abb4153cdf4a5d4ef8ee"></a><!-- doxytag: member="_colNumber" ref="afb45ba9f76d1f5fa2c9e47f19a8d075ce177d8abde0abb4153cdf4a5d4ef8ee" args="" -->_colNumber</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="afb45ba9f76d1f5fa2c9e47f19a8d075813c78adafbe56de880d99357e659832"></a><!-- doxytag: member="_colAccount" ref="afb45ba9f76d1f5fa2c9e47f19a8d075813c78adafbe56de880d99357e659832" args="" -->_colAccount</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="afb45ba9f76d1f5fa2c9e47f19a8d0750c73c4f727d2ef0a095d76df9fadc5ea"></a><!-- doxytag: member="_colFrom" ref="afb45ba9f76d1f5fa2c9e47f19a8d0750c73c4f727d2ef0a095d76df9fadc5ea" args="" -->_colFrom</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="afb45ba9f76d1f5fa2c9e47f19a8d075c3cae478dcb1fd7ef007ffd09e2576e0"></a><!-- doxytag: member="_colTo" ref="afb45ba9f76d1f5fa2c9e47f19a8d075c3cae478dcb1fd7ef007ffd09e2576e0" args="" -->_colTo</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="afb45ba9f76d1f5fa2c9e47f19a8d075c0d8dc86f4421edd8c8e7327f0729737"></a><!-- doxytag: member="_colSubject" ref="afb45ba9f76d1f5fa2c9e47f19a8d075c0d8dc86f4421edd8c8e7327f0729737" args="" -->_colSubject</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="afb45ba9f76d1f5fa2c9e47f19a8d075783ffd9ee58a24ab0f850b9a02af6178"></a><!-- doxytag: member="_colDate" ref="afb45ba9f76d1f5fa2c9e47f19a8d075783ffd9ee58a24ab0f850b9a02af6178" args="" -->_colDate</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="afb45ba9f76d1f5fa2c9e47f19a8d075d9a6583b5b7e2a25f0678985afa45950"></a><!-- doxytag: member="_colSize" ref="afb45ba9f76d1f5fa2c9e47f19a8d075d9a6583b5b7e2a25f0678985afa45950" args="" -->_colSize</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="afb45ba9f76d1f5fa2c9e47f19a8d07564802e43724f98301b74055e164e8e46"></a><!-- doxytag: member="_colContent" ref="afb45ba9f76d1f5fa2c9e47f19a8d07564802e43724f98301b74055e164e8e46" args="" -->_colContent</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="afb45ba9f76d1f5fa2c9e47f19a8d075d33223c37563c4e7c517e8428d272c42"></a><!-- doxytag: member="_colState" ref="afb45ba9f76d1f5fa2c9e47f19a8d075d33223c37563c4e7c517e8428d272c42" args="" -->_colState</em>&nbsp;</td><td>
+</td></tr>
+</table>
+</dl>
+
+</div>
+</div><p>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="4d3f0f8ab32067485f83d3bf93fff6c6"></a><!-- doxytag: member="ShowListViewItem::ShowListViewItem" ref="4d3f0f8ab32067485f83d3bf93fff6c6" args="(QListView *parent, ShowListViewItem *after)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ShowListViewItem::ShowListViewItem </td>
+ <td>(</td>
+ <td class="paramtype">QListView *&nbsp;</td>
+ <td class="paramname"> <em>parent</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classShowListViewItem.html">ShowListViewItem</a> *&nbsp;</td>
+ <td class="paramname"> <em>after</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>parent</em>&nbsp;</td><td>mail list view </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>after</em>&nbsp;</td><td>insert the new item after this item </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="8ad5e105eb0fb3275af6cc55ce52a63d"></a><!-- doxytag: member="ShowListViewItem::ShowListViewItem" ref="8ad5e105eb0fb3275af6cc55ce52a63d" args="(QListView *parent)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ShowListViewItem::ShowListViewItem </td>
+ <td>(</td>
+ <td class="paramtype">QListView *&nbsp;</td>
+ <td class="paramname"> <em>parent</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>parent</em>&nbsp;</td><td>mail list view </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="1d417b96d9e99eb7a7f284386cb00f91"></a><!-- doxytag: member="ShowListViewItem::~ShowListViewItem" ref="1d417b96d9e99eb7a7f284386cb00f91" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ShowListViewItem::~ShowListViewItem </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="5dba88e00c43a0911fa70f6c41173fe3"></a><!-- doxytag: member="ShowListViewItem::key" ref="5dba88e00c43a0911fa70f6c41173fe3" args="(int column, bool ascending) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowListViewItem::key </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>column</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>ascending</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="80e56b65e05d1bbded4716d258be499a"></a><!-- doxytag: member="ShowListViewItem::compare" ref="80e56b65e05d1bbded4716d258be499a" args="(QListViewItem *i, int col, bool ascending) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ShowListViewItem::compare </td>
+ <td>(</td>
+ <td class="paramtype">QListViewItem *&nbsp;</td>
+ <td class="paramname"> <em>i</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>col</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>ascending</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"> const<code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+reimplement compare to solve bug #856005 standard compare is locale dependant
+</div>
+</div><p>
+<a class="anchor" name="2f82fc18123a144ec93f94384c936172"></a><!-- doxytag: member="ShowListViewItem::setNumber" ref="2f82fc18123a144ec93f94384c936172" args="(const QString &amp;)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowListViewItem::setNumber </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="d757b7cadf50f4b7e8af5f1f7fe09b02"></a><!-- doxytag: member="ShowListViewItem::setAccount" ref="d757b7cadf50f4b7e8af5f1f7fe09b02" args="(const QString &amp;)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowListViewItem::setAccount </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="9ff7a14853167240196c9289924a39d6"></a><!-- doxytag: member="ShowListViewItem::setFrom" ref="9ff7a14853167240196c9289924a39d6" args="(const QString &amp;)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowListViewItem::setFrom </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="633d447c919be4b754def3ae9b03c9f6"></a><!-- doxytag: member="ShowListViewItem::setTo" ref="633d447c919be4b754def3ae9b03c9f6" args="(const QString &amp;)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowListViewItem::setTo </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="c20d53f3d7d4c60bb054c958531f5d92"></a><!-- doxytag: member="ShowListViewItem::setSubject" ref="c20d53f3d7d4c60bb054c958531f5d92" args="(const QString &amp;)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowListViewItem::setSubject </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="b96fe5949709d9ccd3d414ac81671577"></a><!-- doxytag: member="ShowListViewItem::setDate" ref="b96fe5949709d9ccd3d414ac81671577" args="(const QString &amp;)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowListViewItem::setDate </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="0bb549ead9f623377fa2a240e76e3e90"></a><!-- doxytag: member="ShowListViewItem::setSize" ref="0bb549ead9f623377fa2a240e76e3e90" args="(const QString &amp;)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowListViewItem::setSize </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="2b5c115276821d6137cf14940d264606"></a><!-- doxytag: member="ShowListViewItem::setContent" ref="2b5c115276821d6137cf14940d264606" args="(const QString &amp;)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowListViewItem::setContent </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="120d8cdc825924cf408ba99c6667cf34"></a><!-- doxytag: member="ShowListViewItem::setState" ref="120d8cdc825924cf408ba99c6667cf34" args="(const QString &amp;)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowListViewItem::setState </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="0d78b8e18cae5e309719b498f40f2f89"></a><!-- doxytag: member="ShowListViewItem::setTime" ref="0d78b8e18cae5e309719b498f40f2f89" args="(const QString &amp;)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowListViewItem::setTime </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="9d582aea8cd197406cd8ba103e3df25b"></a><!-- doxytag: member="ShowListViewItem::m_time" ref="9d582aea8cd197406cd8ba103e3df25b" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString <a class="el" href="classShowListViewItem.html#9d582aea8cd197406cd8ba103e3df25b">ShowListViewItem::m_time</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showlistviewitem_8h-source.html">showlistviewitem.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showlistviewitem_8cpp.html">showlistviewitem.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classShowRecord-members.html b/doc/html/classShowRecord-members.html
new file mode 100644
index 0000000..bc37347
--- /dev/null
+++ b/doc/html/classShowRecord-members.html
@@ -0,0 +1,62 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ShowRecord Member List</h1>This is the complete list of members for <a class="el" href="classShowRecord.html">ShowRecord</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#97b16a09a5a51b68f7d2b3efb95c80ea">appendNewMail</a>(int number, QString uid, bool isNew)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#a2c3ad37ee0eb7eb41d7820e05352502">applyHeaderFilter</a>(HeaderFilter *filter, QString account, MailNumberList_Type &amp;deleteList, MailToDownloadMap_Type &amp;downloadList, FilterLog *log=NULL)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#8f9c8ce1f77c014cd4efcbf65c9b11f5">cancelShowHeaders</a></td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#24f3968b9bd526deb987f3e21f264404">continueShowHeaders</a></td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#dde4ccc3e28c0d7e233ace3810a28814">decodeMailBody</a>(QByteArray body, int number, bool preferHTML) const</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#7124760f6dffce82cf267276f4c0d015">fillMailListView</a>(KshowmailView *view, QString &amp;account)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#93c44ad805a67e955b3cfa2518291613">getDateOf</a>(int number) const</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#15ef001ed312f642b8cd8cf2619ecfb4">getHeaderOf</a>(QString uid)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#89fd7edc8c324e8b0ebe6b32f2d30b9d">getNewMails</a>()</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#5fc0413079f9cfc5b32c36812f643c0a">getNumberMails</a>()</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#fb2d493f52927c18ccc35352d2d2b115">getNumberNewMails</a>()</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#417a26f1eea8a1311362633e43ac8bab">getSelectedMails</a>()</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#c78c6981b92a2546d4ee75320aba380d">getSelectedSubjects</a>() const</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#51a8d0c91d32e6fdc20cb8f5f2350cac">getSenderOf</a>(int number) const</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#b1a6f1fee65db84e5496619c14035539">getSizeOf</a>(int number) const</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#38d282950be6217d1488efc720a5f415">getSubjectOf</a>(int number) const</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#c6c9d9e7e23f57006d2d573442a144b5">getTotalSize</a>()</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#ae03febb272198c00851b4e46be68b83">getUIDsOfOldMails</a>()</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#1fca27c3d569bbd1b1d673f2ac847791">hasMail</a>(QString uid)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#e0aeb91afa1bd2ea566ff4dd4dd299d5">hasSelectedMails</a>()</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#89b22dcaa5ff6f47121150b7d25939d0">isNew</a>(QString uid) const </td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#1705c73921184eda80bd63f979ef34bc">printMailList</a>()</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#87bd29245b100a9d291856fd0784662f">readStoredMails</a>(QDomElement &amp;parent)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#d9075f4c8de5af4b0b5870d1ff71f4ea">removeMail</a>(int number)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#2b0757f2678223ca4e51257766dd64a3">saveOptions</a>(QDomDocument &amp;doc, QDomElement &amp;parent)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#29fe412b8ef3eb2b71bbd93268baaf9a">setHeader</a>(int number, QString header)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#230b5d25e61a0aa76a9adf852bf73d98">setHeader</a>(QString uid, QString header)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#b19cb729ff18ab77d85a1e7c4fb61cb9">setMarkAtNextViewRefresh</a>(int number)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#f3ae42223f76c35b2273119916a82a24">setSize</a>(int number, long size)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#c3088d9306ad23138dcc1212b975f596">ShowRecord</a>()</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#89005d433c577ed0e412c6314400cc31">showSelectedHeaders</a>(QString &amp;account)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#5edc420144eaa626babd3ff0fc78e1f4">writeToDeleteLog</a>(FilterLog *log, int number, QString account)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#7a658ec498ade20524e565698a47d04f">writeToMoveLog</a>(FilterLog *log, int number, QString account, QString mailbox)</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecord.html#bda8f21edf9dbfa07741e37e6f06beeb">~ShowRecord</a>()</td><td><a class="el" href="classShowRecord.html">ShowRecord</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classShowRecord.html b/doc/html/classShowRecord.html
new file mode 100644
index 0000000..9e972ec
--- /dev/null
+++ b/doc/html/classShowRecord.html
@@ -0,0 +1,1060 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: ShowRecord Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ShowRecord Class Reference</h1><!-- doxytag: class="ShowRecord" -->List which contains all mails of an account.
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="showrecord_8h-source.html">showrecord.h</a>&gt;</code>
+<p>
+<a href="classShowRecord-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#c3088d9306ad23138dcc1212b975f596">ShowRecord</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#bda8f21edf9dbfa07741e37e6f06beeb">~ShowRecord</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#2b0757f2678223ca4e51257766dd64a3">saveOptions</a> (QDomDocument &amp;doc, QDomElement &amp;parent)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#87bd29245b100a9d291856fd0784662f">readStoredMails</a> (QDomElement &amp;parent)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#a2c3ad37ee0eb7eb41d7820e05352502">applyHeaderFilter</a> (<a class="el" href="classHeaderFilter.html">HeaderFilter</a> *filter, QString account, MailNumberList_Type &amp;deleteList, MailToDownloadMap_Type &amp;downloadList, <a class="el" href="classFilterLog.html">FilterLog</a> *log=NULL)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#e0aeb91afa1bd2ea566ff4dd4dd299d5">hasSelectedMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">Types::MailNumberList_Type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#417a26f1eea8a1311362633e43ac8bab">getSelectedMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#d9075f4c8de5af4b0b5870d1ff71f4ea">removeMail</a> (int number)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QStringList&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#c78c6981b92a2546d4ee75320aba380d">getSelectedSubjects</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#51a8d0c91d32e6fdc20cb8f5f2350cac">getSenderOf</a> (int number) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#93c44ad805a67e955b3cfa2518291613">getDateOf</a> (int number) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#b1a6f1fee65db84e5496619c14035539">getSizeOf</a> (int number) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#38d282950be6217d1488efc720a5f415">getSubjectOf</a> (int number) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#dde4ccc3e28c0d7e233ace3810a28814">decodeMailBody</a> (QByteArray body, int number, bool preferHTML) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#1fca27c3d569bbd1b1d673f2ac847791">hasMail</a> (QString uid)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#89b22dcaa5ff6f47121150b7d25939d0">isNew</a> (QString uid) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#97b16a09a5a51b68f7d2b3efb95c80ea">appendNewMail</a> (int number, QString uid, bool isNew)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#1705c73921184eda80bd63f979ef34bc">printMailList</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#f3ae42223f76c35b2273119916a82a24">setSize</a> (int number, long size)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">Types::MailNumberList_Type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#89fd7edc8c324e8b0ebe6b32f2d30b9d">getNewMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#29fe412b8ef3eb2b71bbd93268baaf9a">setHeader</a> (int number, QString header)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QStringList&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#ae03febb272198c00851b4e46be68b83">getUIDsOfOldMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#15ef001ed312f642b8cd8cf2619ecfb4">getHeaderOf</a> (QString uid)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#230b5d25e61a0aa76a9adf852bf73d98">setHeader</a> (QString uid, QString header)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#fb2d493f52927c18ccc35352d2d2b115">getNumberNewMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#5fc0413079f9cfc5b32c36812f643c0a">getNumberMails</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#c6c9d9e7e23f57006d2d573442a144b5">getTotalSize</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#7124760f6dffce82cf267276f4c0d015">fillMailListView</a> (<a class="el" href="classKshowmailView.html">KshowmailView</a> *view, QString &amp;account)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#89005d433c577ed0e412c6314400cc31">showSelectedHeaders</a> (QString &amp;account)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#7a658ec498ade20524e565698a47d04f">writeToMoveLog</a> (<a class="el" href="classFilterLog.html">FilterLog</a> *log, int number, QString account, QString mailbox)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#5edc420144eaa626babd3ff0fc78e1f4">writeToDeleteLog</a> (<a class="el" href="classFilterLog.html">FilterLog</a> *log, int number, QString account)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#b19cb729ff18ab77d85a1e7c4fb61cb9">setMarkAtNextViewRefresh</a> (int number)</td></tr>
+
+<tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#24f3968b9bd526deb987f3e21f264404">continueShowHeaders</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecord.html#8f9c8ce1f77c014cd4efcbf65c9b11f5">cancelShowHeaders</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+List which contains all mails of an account.
+<p>
+The mails are objects of <a class="el" href="classShowRecordElem.html">ShowRecordElem</a>. Inherits QPtrList.<p>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classShowRecordElem.html">ShowRecordElem</a> </dd></dl>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke <p>
+Ulrich Weigelt </dd></dl>
+
+<p>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="c3088d9306ad23138dcc1212b975f596"></a><!-- doxytag: member="ShowRecord::ShowRecord" ref="c3088d9306ad23138dcc1212b975f596" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ShowRecord::ShowRecord </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor
+</div>
+</div><p>
+<a class="anchor" name="bda8f21edf9dbfa07741e37e6f06beeb"></a><!-- doxytag: member="ShowRecord::~ShowRecord" ref="bda8f21edf9dbfa07741e37e6f06beeb" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ShowRecord::~ShowRecord </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Destructor Does nothing.
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="2b0757f2678223ca4e51257766dd64a3"></a><!-- doxytag: member="ShowRecord::saveOptions" ref="2b0757f2678223ca4e51257766dd64a3" args="(QDomDocument &amp;doc, QDomElement &amp;parent)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::saveOptions </td>
+ <td>(</td>
+ <td class="paramtype">QDomDocument &amp;&nbsp;</td>
+ <td class="paramname"> <em>doc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QDomElement &amp;&nbsp;</td>
+ <td class="paramname"> <em>parent</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Saves all stored mails into the given DOM document inside the given account element. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>doc</em>&nbsp;</td><td>DOM document in that all options are stored </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>parent</em>&nbsp;</td><td>account element </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="87bd29245b100a9d291856fd0784662f"></a><!-- doxytag: member="ShowRecord::readStoredMails" ref="87bd29245b100a9d291856fd0784662f" args="(QDomElement &amp;parent)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::readStoredMails </td>
+ <td>(</td>
+ <td class="paramtype">QDomElement &amp;&nbsp;</td>
+ <td class="paramname"> <em>parent</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Reads out all mails stored inside the given account element, creates objects from class <a class="el" href="classShowRecordElem.html">ShowRecordElem</a> and stores them in this list. All old items will be removed. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>parent</em>&nbsp;</td><td>account element (DOM element) </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="a2c3ad37ee0eb7eb41d7820e05352502"></a><!-- doxytag: member="ShowRecord::applyHeaderFilter" ref="a2c3ad37ee0eb7eb41d7820e05352502" args="(HeaderFilter *filter, QString account, MailNumberList_Type &amp;deleteList, MailToDownloadMap_Type &amp;downloadList, FilterLog *log=NULL)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::applyHeaderFilter </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classHeaderFilter.html">HeaderFilter</a> *&nbsp;</td>
+ <td class="paramname"> <em>filter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>account</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">MailNumberList_Type &amp;&nbsp;</td>
+ <td class="paramname"> <em>deleteList</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">MailToDownloadMap_Type &amp;&nbsp;</td>
+ <td class="paramname"> <em>downloadList</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classFilterLog.html">FilterLog</a> *&nbsp;</td>
+ <td class="paramname"> <em>log</em> = <code>NULL</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Apply the filters to the mails in this list. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>filter</em>&nbsp;</td><td>pointer to the header filter </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of this account </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>deleteList</em>&nbsp;</td><td>reference to a list in which this methode writes the numbers of mails to delete </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>downloadList</em>&nbsp;</td><td>reference to a list in which this methode writes the number of mails to download </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>log</em>&nbsp;</td><td>pointer to the filter log </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="e0aeb91afa1bd2ea566ff4dd4dd299d5"></a><!-- doxytag: member="ShowRecord::hasSelectedMails" ref="e0aeb91afa1bd2ea566ff4dd4dd299d5" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ShowRecord::hasSelectedMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether there are mails in this list which are selected in the list view. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - there are selected mails <p>
+FALSE - there aren't selected mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="417a26f1eea8a1311362633e43ac8bab"></a><!-- doxytag: member="ShowRecord::getSelectedMails" ref="417a26f1eea8a1311362633e43ac8bab" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">MailNumberList_Type ShowRecord::getSelectedMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the numbers of all selected mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>numbers of selected mails. </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="d9075f4c8de5af4b0b5870d1ff71f4ea"></a><!-- doxytag: member="ShowRecord::removeMail" ref="d9075f4c8de5af4b0b5870d1ff71f4ea" args="(int number)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::removeMail </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Removes the mail which has the given number. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>number of the mail which will be removed </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="c78c6981b92a2546d4ee75320aba380d"></a><!-- doxytag: member="ShowRecord::getSelectedSubjects" ref="c78c6981b92a2546d4ee75320aba380d" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QStringList ShowRecord::getSelectedSubjects </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the subjects of the selected mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>subjects of selected mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="51a8d0c91d32e6fdc20cb8f5f2350cac"></a><!-- doxytag: member="ShowRecord::getSenderOf" ref="51a8d0c91d32e6fdc20cb8f5f2350cac" args="(int number) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecord::getSenderOf </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the sender of the mail with the given number. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>mail number </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>sender </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="93c44ad805a67e955b3cfa2518291613"></a><!-- doxytag: member="ShowRecord::getDateOf" ref="93c44ad805a67e955b3cfa2518291613" args="(int number) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecord::getDateOf </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the date of sent of the mail with the given number. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>mail number </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>date </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="b1a6f1fee65db84e5496619c14035539"></a><!-- doxytag: member="ShowRecord::getSizeOf" ref="b1a6f1fee65db84e5496619c14035539" args="(int number) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecord::getSizeOf </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the size of the mail with the given number. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>mail number </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>size </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="38d282950be6217d1488efc720a5f415"></a><!-- doxytag: member="ShowRecord::getSubjectOf" ref="38d282950be6217d1488efc720a5f415" args="(int number) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecord::getSubjectOf </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the subject of the mail with the given number. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>mail number </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>subject </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="dde4ccc3e28c0d7e233ace3810a28814"></a><!-- doxytag: member="ShowRecord::decodeMailBody" ref="dde4ccc3e28c0d7e233ace3810a28814" args="(QByteArray body, int number, bool preferHTML) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecord::decodeMailBody </td>
+ <td>(</td>
+ <td class="paramtype">QByteArray&nbsp;</td>
+ <td class="paramname"> <em>body</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>preferHTML</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Decodes the given mail body by the appropriate mail object. The mail object (<a class="el" href="classShowRecordElem.html">ShowRecordElem</a>) has to do this job, because it has stored the mail header and therefore it knows the content type and encoding of the mail. It decodes just the text or html part of the body. The rest of it will be rejected. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>body</em>&nbsp;</td><td>the encoded mail (including header) </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>number of the downloaded mail </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>preferHTML</em>&nbsp;</td><td>decode HTML part if present </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>decoded mail body </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="1fca27c3d569bbd1b1d673f2ac847791"></a><!-- doxytag: member="ShowRecord::hasMail" ref="1fca27c3d569bbd1b1d673f2ac847791" args="(QString uid)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ShowRecord::hasMail </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>uid</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether there is mail with the given uid in the list. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>uid</em>&nbsp;</td><td>UID of the mail </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - mail is in the list <p>
+FALSE - mail is not in the list </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="89b22dcaa5ff6f47121150b7d25939d0"></a><!-- doxytag: member="ShowRecord::isNew" ref="89b22dcaa5ff6f47121150b7d25939d0" args="(QString uid) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ShowRecord::isNew </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>uid</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the given mail is new. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>uid</em>&nbsp;</td><td>UID of the mail </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - mail is new <p>
+FALSE - mail is not new or mail doesn't exist </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="97b16a09a5a51b68f7d2b3efb95c80ea"></a><!-- doxytag: member="ShowRecord::appendNewMail" ref="97b16a09a5a51b68f7d2b3efb95c80ea" args="(int number, QString uid, bool isNew)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::appendNewMail </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>uid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>isNew</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Appends a new mail to the list. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>number of the mail on the server </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>uid</em>&nbsp;</td><td>Unique ID of the mail </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>isNew</em>&nbsp;</td><td>TRUE - mail is new; FALSE - mail is not new </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="1705c73921184eda80bd63f979ef34bc"></a><!-- doxytag: member="ShowRecord::printMailList" ref="1705c73921184eda80bd63f979ef34bc" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::printMailList </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Just for debugging. Prints a list of all contained mails to stdout.
+</div>
+</div><p>
+<a class="anchor" name="f3ae42223f76c35b2273119916a82a24"></a><!-- doxytag: member="ShowRecord::setSize" ref="f3ae42223f76c35b2273119916a82a24" args="(int number, long size)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::setSize </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">long&nbsp;</td>
+ <td class="paramname"> <em>size</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the size of a mail. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>number of the mail </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td>mail size </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="89fd7edc8c324e8b0ebe6b32f2d30b9d"></a><!-- doxytag: member="ShowRecord::getNewMails" ref="89fd7edc8c324e8b0ebe6b32f2d30b9d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">Types::MailNumberList_Type</a> ShowRecord::getNewMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the numbers of mails which are marked as new. <dl class="return" compact><dt><b>Returns:</b></dt><dd>numbers of the new mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="29fe412b8ef3eb2b71bbd93268baaf9a"></a><!-- doxytag: member="ShowRecord::setHeader" ref="29fe412b8ef3eb2b71bbd93268baaf9a" args="(int number, QString header)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::setHeader </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>header</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the header of the given mail. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>number of the mail </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>header</em>&nbsp;</td><td>the header </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="ae03febb272198c00851b4e46be68b83"></a><!-- doxytag: member="ShowRecord::getUIDsOfOldMails" ref="ae03febb272198c00851b4e46be68b83" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QStringList ShowRecord::getUIDsOfOldMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns a list of the UIDs of all old mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>UIDs of all old mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="15ef001ed312f642b8cd8cf2619ecfb4"></a><!-- doxytag: member="ShowRecord::getHeaderOf" ref="15ef001ed312f642b8cd8cf2619ecfb4" args="(QString uid)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecord::getHeaderOf </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>uid</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the header of the mail with the given UID. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>uid</em>&nbsp;</td><td>UID </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>mail header </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="230b5d25e61a0aa76a9adf852bf73d98"></a><!-- doxytag: member="ShowRecord::setHeader" ref="230b5d25e61a0aa76a9adf852bf73d98" args="(QString uid, QString header)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::setHeader </td>
+ <td>(</td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>uid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>header</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the header of the mail with the given UID. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>uid</em>&nbsp;</td><td>UID </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>header</em>&nbsp;</td><td>mail header </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="fb2d493f52927c18ccc35352d2d2b115"></a><!-- doxytag: member="ShowRecord::getNumberNewMails" ref="fb2d493f52927c18ccc35352d2d2b115" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ShowRecord::getNumberNewMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the number of new mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>number of new mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="5fc0413079f9cfc5b32c36812f643c0a"></a><!-- doxytag: member="ShowRecord::getNumberMails" ref="5fc0413079f9cfc5b32c36812f643c0a" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ShowRecord::getNumberMails </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the number of mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>number of mails </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="c6c9d9e7e23f57006d2d573442a144b5"></a><!-- doxytag: member="ShowRecord::getTotalSize" ref="c6c9d9e7e23f57006d2d573442a144b5" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">long ShowRecord::getTotalSize </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the total size of all mails. <dl class="return" compact><dt><b>Returns:</b></dt><dd>total size </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="7124760f6dffce82cf267276f4c0d015"></a><!-- doxytag: member="ShowRecord::fillMailListView" ref="7124760f6dffce82cf267276f4c0d015" args="(KshowmailView *view, QString &amp;account)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::fillMailListView </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classKshowmailView.html">KshowmailView</a> *&nbsp;</td>
+ <td class="paramname"> <em>view</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>account</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Creates for every mail a list view item and insert it into the mail list view. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>view</em>&nbsp;</td><td>pointer to the application view </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>account name </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="89005d433c577ed0e412c6314400cc31"></a><!-- doxytag: member="ShowRecord::showSelectedHeaders" ref="89005d433c577ed0e412c6314400cc31" args="(QString &amp;account)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ShowRecord::showSelectedHeaders </td>
+ <td>(</td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>account</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Shows the headers of all selected mails. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>account name </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>continueShowHeaders - the user has always clicked OK. The invoking function will show the next header <p>
+cancelShowHeaders - the user has clicked Cancel. The invoking function will not show the next header. </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="7a658ec498ade20524e565698a47d04f"></a><!-- doxytag: member="ShowRecord::writeToMoveLog" ref="7a658ec498ade20524e565698a47d04f" args="(FilterLog *log, int number, QString account, QString mailbox)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::writeToMoveLog </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classFilterLog.html">FilterLog</a> *&nbsp;</td>
+ <td class="paramname"> <em>log</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>account</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>mailbox</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Writes the mail into the Move Log. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>log</em>&nbsp;</td><td>pointer to the log </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>number of the mail </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of the account </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>mailbox</em>&nbsp;</td><td>name of the mailbox </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="5edc420144eaa626babd3ff0fc78e1f4"></a><!-- doxytag: member="ShowRecord::writeToDeleteLog" ref="5edc420144eaa626babd3ff0fc78e1f4" args="(FilterLog *log, int number, QString account)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::writeToDeleteLog </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classFilterLog.html">FilterLog</a> *&nbsp;</td>
+ <td class="paramname"> <em>log</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>account</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Writes the mail into the Delete Log. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>log</em>&nbsp;</td><td>pointer to the log </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>number of the mail </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of the account </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="b19cb729ff18ab77d85a1e7c4fb61cb9"></a><!-- doxytag: member="ShowRecord::setMarkAtNextViewRefresh" ref="b19cb729ff18ab77d85a1e7c4fb61cb9" args="(int number)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecord::setMarkAtNextViewRefresh </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The given mail will be marked at the next view refresh. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>number of the mail </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="24f3968b9bd526deb987f3e21f264404"></a><!-- doxytag: member="ShowRecord::continueShowHeaders" ref="24f3968b9bd526deb987f3e21f264404" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int const <a class="el" href="classShowRecord.html#24f3968b9bd526deb987f3e21f264404">ShowRecord::continueShowHeaders</a><code> [static]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returned by <a class="el" href="classShowRecord.html#89005d433c577ed0e412c6314400cc31">showSelectedHeaders()</a> if the user has always clicked OK.
+</div>
+</div><p>
+<a class="anchor" name="8f9c8ce1f77c014cd4efcbf65c9b11f5"></a><!-- doxytag: member="ShowRecord::cancelShowHeaders" ref="8f9c8ce1f77c014cd4efcbf65c9b11f5" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int const <a class="el" href="classShowRecord.html#8f9c8ce1f77c014cd4efcbf65c9b11f5">ShowRecord::cancelShowHeaders</a><code> [static]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returned by <a class="el" href="classShowRecord.html#89005d433c577ed0e412c6314400cc31">showSelectedHeaders()</a> if the user has clicked Cancel.
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showrecord_8h-source.html">showrecord.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showrecord_8cpp.html">showrecord.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classShowRecordElem-members.html b/doc/html/classShowRecordElem-members.html
new file mode 100644
index 0000000..a130b5c
--- /dev/null
+++ b/doc/html/classShowRecordElem-members.html
@@ -0,0 +1,86 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ShowRecordElem Member List</h1>This is the complete list of members for <a class="el" href="classShowRecordElem.html">ShowRecordElem</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#09ca2f0d70bdf8ed2bb7d75ef13bec12">applyHeaderFilter</a>(HeaderFilter *filter, QString account, QString &amp;mailbox, FilterLog *log=NULL)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#b6aceead6b70f3e3f5e6af530c5ac1af">cancelShowHeaders</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#8d655afdb7350fd4a27b551da7a8a797">content</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#2b5bdb3ed3f940614135b9c9f1f13eb6">continueShowHeaders</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#412ad2a7452c1f5390f2679f1d443292">date</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#27af244fc090ac05fabde1becb7bf60d">decodeMailBody</a>(QByteArray body, bool preferHTML) const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#a4d48b3072adb4f87f56ed2b5e35dbba">from</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#9c49db9d3ce2495c477c783dd5e5da7d">getBoundary</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#4919b572763cc228320420059e29b0a7">getCharset</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#9f0dcc62d28fbcec89b0af33c7e0c446">getTransferEncoding</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#dd5d842c1abdd13fa03ac4a3f2f11150">header</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#48485d7a0dfef669b6597c865a515290">isNew</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#6987a0066f420f62b5c9ec9d82ed7fb3">isSelected</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#c70dec4d7ff63aa1acffcc7229776990">m_content</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#260019ad5471ede61b2a1958b8c31375">m_from</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#f9f2112f8e2b1c3dfef0286581a892b4">m_new</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#8583bafac2418ddd8c7d881926851f05">m_nNumber</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#cf1207160bae1cd017c282b808e44e02">m_pFilter</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">m_pItem</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#1c83a6d029a73795076161efd3842893">m_subject</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#02de09b7b36dfcce893a1e79ff8ba34c">m_to</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#7da2621d1de438c9118fbcead3c23506">m_uid</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#b3f665656a06d88cea46345bcb1a51a9">m_unixDate</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#c3f6d14162aafdedf141489ad5d5307a">markAtViewRefresh</a></td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#97952e1293b679abc1891a240bd9e4f1">readOptions</a>(QDomElement &amp;elem)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#fcabf6ba9c5b68ae2923bb70bf9f45b0">saveOptions</a>(QDomDocument &amp;doc, QDomElement &amp;parent)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#8070b0cbba2b2281a78bfdae3334a981">scanHeader</a>(const QString &amp;item) const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#4c32fe918f4d6b65dc684c1604757c72">sentDateTime</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#8ab7746aad762c2c2e0fe80c4a496f9a">setContent</a>(const QCString &amp;content)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#7fe7272db1f8f38f6fa404611acf7b8d">setDate</a>(const QCString &amp;date)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#fe3536020ed0f47f0ec4c97839068cc1">setFilter</a>(FilterElem *filter)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#373e98f7a94fd659ff1174ef7346de08">setFrom</a>(const QCString &amp;from)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#28e7072cd68f18e1e07176b9c1bd5f72">setHeader</a>(const QString &amp;header)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#8c138e5d2c33ec03231b8bf6ee719f7f">setMarkAtNextViewRefresh</a>()</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#4c6d52d5a2df4b7bb743128184ced8f4">setNew</a>(bool isnew)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#1c31fc69dfe9794c6c77970192d455a5">setNumber</a>(int n)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#dd22d1f50be46bd9ecbbacec7606b3ed">setSize</a>(int size)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#bad7c7440195e0284b42c79d281bfbf2">setSubject</a>(const QCString &amp;subject)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#fe4b012dfc137770f35879ea2264ba19">setTo</a>(const QCString &amp;to)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#6d24c13e7de2fad247fff5549a96767d">setUIDL</a>(const QString &amp;uid)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#e7f2ca5eb9a9bc95266a4f83f78cd76e">setViewItem</a>(ShowListViewItem *item)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#62792e6386e65ac0050f2e02963254b0">showHeader</a>(QString &amp;account)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#aa3cd64818bfb990d5e37720cd29546c">ShowRecordElem</a>()</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#7a29155aba2fc36f16986b1abed9ceda">ShowRecordElem</a>(int number, QString &amp;uid, bool isNew)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#4b4077ca5d47226ccb44b6d8373a4fbd">size</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#f00398057086a7fbee1205c5d0f605a2">state</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#f5e3c42a0be5b06f414b5936d6a64056">strSize</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#233ccd75f668ec868ec726120d8c71d9">strSizePrefix</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#0e554cd8f1e67b3e448054e8c6fdc91c">strUnixTime</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">subject</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#759a16f3424defc71b4cfd762b156fd1">to</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#835e045bf24090c4d6a6a9049c60e94c">uidl</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#e176bc1074c050afc56540849bc3664c">viewItem</a>() const</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#d015c9a856acf5ee5c5a942d3cdc39bc">writeToDeleteLog</a>(FilterLog *log, QString account)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classShowRecordElem.html#c467986ac8ce3c2219463028574a22c6">writeToMoveLog</a>(FilterLog *log, QString account, QString mailbox)</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classShowRecordElem.html b/doc/html/classShowRecordElem.html
new file mode 100644
index 0000000..64055a4
--- /dev/null
+++ b/doc/html/classShowRecordElem.html
@@ -0,0 +1,1459 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: ShowRecordElem Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>ShowRecordElem Class Reference</h1><!-- doxytag: class="ShowRecordElem" -->Represents a mail.
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="showrecordelem_8h-source.html">showrecordelem.h</a>&gt;</code>
+<p>
+<a href="classShowRecordElem-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#aa3cd64818bfb990d5e37720cd29546c">ShowRecordElem</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#7a29155aba2fc36f16986b1abed9ceda">ShowRecordElem</a> (int number, QString &amp;uid, bool isNew)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#28e7072cd68f18e1e07176b9c1bd5f72">setHeader</a> (const QString &amp;header)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#dd5d842c1abdd13fa03ac4a3f2f11150">header</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#a4d48b3072adb4f87f56ed2b5e35dbba">from</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#759a16f3424defc71b4cfd762b156fd1">to</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">subject</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#8d655afdb7350fd4a27b551da7a8a797">content</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#412ad2a7452c1f5390f2679f1d443292">date</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#0e554cd8f1e67b3e448054e8c6fdc91c">strUnixTime</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QDateTime&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#4c32fe918f4d6b65dc684c1604757c72">sentDateTime</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#6d24c13e7de2fad247fff5549a96767d">setUIDL</a> (const QString &amp;uid)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#835e045bf24090c4d6a6a9049c60e94c">uidl</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#dd22d1f50be46bd9ecbbacec7606b3ed">setSize</a> (int size)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#4b4077ca5d47226ccb44b6d8373a4fbd">size</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#f5e3c42a0be5b06f414b5936d6a64056">strSize</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#233ccd75f668ec868ec726120d8c71d9">strSizePrefix</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#4c6d52d5a2df4b7bb743128184ced8f4">setNew</a> (bool isnew)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#48485d7a0dfef669b6597c865a515290">isNew</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#f00398057086a7fbee1205c5d0f605a2">state</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#1c31fc69dfe9794c6c77970192d455a5">setNumber</a> (int n)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#e7f2ca5eb9a9bc95266a4f83f78cd76e">setViewItem</a> (<a class="el" href="classShowListViewItem.html">ShowListViewItem</a> *item)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShowListViewItem.html">ShowListViewItem</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#e176bc1074c050afc56540849bc3664c">viewItem</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">FilterAction_Type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#09ca2f0d70bdf8ed2bb7d75ef13bec12">applyHeaderFilter</a> (<a class="el" href="classHeaderFilter.html">HeaderFilter</a> *filter, QString account, QString &amp;mailbox, <a class="el" href="classFilterLog.html">FilterLog</a> *log=NULL)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#97952e1293b679abc1891a240bd9e4f1">readOptions</a> (QDomElement &amp;elem)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#fcabf6ba9c5b68ae2923bb70bf9f45b0">saveOptions</a> (QDomDocument &amp;doc, QDomElement &amp;parent)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#6987a0066f420f62b5c9ec9d82ed7fb3">isSelected</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#27af244fc090ac05fabde1becb7bf60d">decodeMailBody</a> (QByteArray body, bool preferHTML) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#62792e6386e65ac0050f2e02963254b0">showHeader</a> (QString &amp;account)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#c467986ac8ce3c2219463028574a22c6">writeToMoveLog</a> (<a class="el" href="classFilterLog.html">FilterLog</a> *log, QString account, QString mailbox)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#d015c9a856acf5ee5c5a942d3cdc39bc">writeToDeleteLog</a> (<a class="el" href="classFilterLog.html">FilterLog</a> *log, QString account)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#8c138e5d2c33ec03231b8bf6ee719f7f">setMarkAtNextViewRefresh</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#2b5bdb3ed3f940614135b9c9f1f13eb6">continueShowHeaders</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#b6aceead6b70f3e3f5e6af530c5ac1af">cancelShowHeaders</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QCString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#8070b0cbba2b2281a78bfdae3334a981">scanHeader</a> (const QString &amp;item) const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#373e98f7a94fd659ff1174ef7346de08">setFrom</a> (const QCString &amp;from)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#fe4b012dfc137770f35879ea2264ba19">setTo</a> (const QCString &amp;to)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#bad7c7440195e0284b42c79d281bfbf2">setSubject</a> (const QCString &amp;subject)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#7fe7272db1f8f38f6fa404611acf7b8d">setDate</a> (const QCString &amp;date)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#8ab7746aad762c2c2e0fe80c4a496f9a">setContent</a> (const QCString &amp;content)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#fe3536020ed0f47f0ec4c97839068cc1">setFilter</a> (FilterElem *filter)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#9c49db9d3ce2495c477c783dd5e5da7d">getBoundary</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#4919b572763cc228320420059e29b0a7">getCharset</a> () const</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#9f0dcc62d28fbcec89b0af33c7e0c446">getTransferEncoding</a> () const</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QCString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QCString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#260019ad5471ede61b2a1958b8c31375">m_from</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QCString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#02de09b7b36dfcce893a1e79ff8ba34c">m_to</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QCString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#1c83a6d029a73795076161efd3842893">m_subject</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QDateTime&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#b3f665656a06d88cea46345bcb1a51a9">m_unixDate</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QCString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#c70dec4d7ff63aa1acffcc7229776990">m_content</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#7da2621d1de438c9118fbcead3c23506">m_uid</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#f9f2112f8e2b1c3dfef0286581a892b4">m_new</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#8583bafac2418ddd8c7d881926851f05">m_nNumber</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#c3f6d14162aafdedf141489ad5d5307a">markAtViewRefresh</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShowListViewItem.html">ShowListViewItem</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">m_pItem</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">FilterElem *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShowRecordElem.html#cf1207160bae1cd017c282b808e44e02">m_pFilter</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Represents a mail.
+<p>
+It contains UID, Subject, From, To and date of the mail. Subject, From and To will be read out from the given header. It also contains pointer to the corresponding list view entry and maybe to a matching filter. All mail objects are held by <a class="el" href="classShowRecord.html">ShowRecord</a>. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classShowRecord.html">ShowRecord</a> <p>
+<a class="el" href="classConfigElem.html">ConfigElem</a> </dd></dl>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke </dd></dl>
+
+<p>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="aa3cd64818bfb990d5e37720cd29546c"></a><!-- doxytag: member="ShowRecordElem::ShowRecordElem" ref="aa3cd64818bfb990d5e37720cd29546c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ShowRecordElem::ShowRecordElem </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor
+</div>
+</div><p>
+<a class="anchor" name="7a29155aba2fc36f16986b1abed9ceda"></a><!-- doxytag: member="ShowRecordElem::ShowRecordElem" ref="7a29155aba2fc36f16986b1abed9ceda" args="(int number, QString &amp;uid, bool isNew)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ShowRecordElem::ShowRecordElem </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>number</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>uid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>isNew</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>number of the mail on the server </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>uid</em>&nbsp;</td><td>Unique ID of the mail </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>isNew</em>&nbsp;</td><td>TRUE - mail is new; FALSE - mail is not new </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="28e7072cd68f18e1e07176b9c1bd5f72"></a><!-- doxytag: member="ShowRecordElem::setHeader" ref="28e7072cd68f18e1e07176b9c1bd5f72" args="(const QString &amp;header)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setHeader </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>header</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the mail header and extracts From, To, Subject, Date and Content Type. All parts of the header are coded according RFC 2047. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>header</em>&nbsp;</td><td>the mail header </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="dd5d842c1abdd13fa03ac4a3f2f11150"></a><!-- doxytag: member="ShowRecordElem::header" ref="dd5d842c1abdd13fa03ac4a3f2f11150" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::header </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the whole header. <dl class="return" compact><dt><b>Returns:</b></dt><dd>the mail header </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="a4d48b3072adb4f87f56ed2b5e35dbba"></a><!-- doxytag: member="ShowRecordElem::from" ref="a4d48b3072adb4f87f56ed2b5e35dbba" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::from </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the sender address. <dl class="return" compact><dt><b>Returns:</b></dt><dd>sender address </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="759a16f3424defc71b4cfd762b156fd1"></a><!-- doxytag: member="ShowRecordElem::to" ref="759a16f3424defc71b4cfd762b156fd1" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::to </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the addressee. <dl class="return" compact><dt><b>Returns:</b></dt><dd>the addressee </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="b3b6657b842bbd5e4759fe7f55534416"></a><!-- doxytag: member="ShowRecordElem::subject" ref="b3b6657b842bbd5e4759fe7f55534416" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::subject </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the subject. <dl class="return" compact><dt><b>Returns:</b></dt><dd>mail subject </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="8d655afdb7350fd4a27b551da7a8a797"></a><!-- doxytag: member="ShowRecordElem::content" ref="8d655afdb7350fd4a27b551da7a8a797" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::content </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the stored content type. <dl class="return" compact><dt><b>Returns:</b></dt><dd>content type </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="412ad2a7452c1f5390f2679f1d443292"></a><!-- doxytag: member="ShowRecordElem::date" ref="412ad2a7452c1f5390f2679f1d443292" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::date </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the date on which the mail was sent, formated to the current locale's conventions. <dl class="return" compact><dt><b>Returns:</b></dt><dd>the date </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="0e554cd8f1e67b3e448054e8c6fdc91c"></a><!-- doxytag: member="ShowRecordElem::strUnixTime" ref="0e554cd8f1e67b3e448054e8c6fdc91c" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::strUnixTime </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the date on which the mail was sent. The format corresponds to the ISO 8601 extended specification for representations of dates and times, which is YYYY-MM-DDTHH:MM:SS <dl class="return" compact><dt><b>Returns:</b></dt><dd>the date </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="4c32fe918f4d6b65dc684c1604757c72"></a><!-- doxytag: member="ShowRecordElem::sentDateTime" ref="4c32fe918f4d6b65dc684c1604757c72" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QDateTime ShowRecordElem::sentDateTime </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the date and time on which the mail was sent. <dl class="return" compact><dt><b>Returns:</b></dt><dd>the date </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="6d24c13e7de2fad247fff5549a96767d"></a><!-- doxytag: member="ShowRecordElem::setUIDL" ref="6d24c13e7de2fad247fff5549a96767d" args="(const QString &amp;uid)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setUIDL </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>uid</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the unique mail ID. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>uid</em>&nbsp;</td><td>the ID </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="835e045bf24090c4d6a6a9049c60e94c"></a><!-- doxytag: member="ShowRecordElem::uidl" ref="835e045bf24090c4d6a6a9049c60e94c" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::uidl </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the unique ID of this mail. <dl class="return" compact><dt><b>Returns:</b></dt><dd>UID </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="dd22d1f50be46bd9ecbbacec7606b3ed"></a><!-- doxytag: member="ShowRecordElem::setSize" ref="dd22d1f50be46bd9ecbbacec7606b3ed" args="(int size)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setSize </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>size</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the size of the mail. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td>Size </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="4b4077ca5d47226ccb44b6d8373a4fbd"></a><!-- doxytag: member="ShowRecordElem::size" ref="4b4077ca5d47226ccb44b6d8373a4fbd" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ShowRecordElem::size </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the mail size as numeric value. <dl class="return" compact><dt><b>Returns:</b></dt><dd>size of the mail </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="f5e3c42a0be5b06f414b5936d6a64056"></a><!-- doxytag: member="ShowRecordElem::strSize" ref="f5e3c42a0be5b06f414b5936d6a64056" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::strSize </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the mail size as string. The String has a length of 8 and the number is right-aligned to allow sorting.
+</div>
+</div><p>
+<a class="anchor" name="233ccd75f668ec868ec726120d8c71d9"></a><!-- doxytag: member="ShowRecordElem::strSizePrefix" ref="233ccd75f668ec868ec726120d8c71d9" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::strSizePrefix </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the mails size as string with prefix
+</div>
+</div><p>
+<a class="anchor" name="4c6d52d5a2df4b7bb743128184ced8f4"></a><!-- doxytag: member="ShowRecordElem::setNew" ref="4c6d52d5a2df4b7bb743128184ced8f4" args="(bool isnew)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setNew </td>
+ <td>(</td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>isnew</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets whether the mail is new or not. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>isnew</em>&nbsp;</td><td>TRUE - mail is new; FALSE - mail is not new </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="48485d7a0dfef669b6597c865a515290"></a><!-- doxytag: member="ShowRecordElem::isNew" ref="48485d7a0dfef669b6597c865a515290" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ShowRecordElem::isNew </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the mail is new or not. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - mail is new <p>
+FALSE - mail is not new </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="f00398057086a7fbee1205c5d0f605a2"></a><!-- doxytag: member="ShowRecordElem::state" ref="f00398057086a7fbee1205c5d0f605a2" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::state </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the mail is new or not. <dl class="return" compact><dt><b>Returns:</b></dt><dd>localized String "new", if the mail is new <p>
+localized String "old", if the mail is not new </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="1c31fc69dfe9794c6c77970192d455a5"></a><!-- doxytag: member="ShowRecordElem::setNumber" ref="1c31fc69dfe9794c6c77970192d455a5" args="(int n)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setNumber </td>
+ <td>(</td>
+ <td class="paramtype">int&nbsp;</td>
+ <td class="paramname"> <em>n</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the number of this mail. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>mail number </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="62999d75baf9a6bff999c8621a419926"></a><!-- doxytag: member="ShowRecordElem::number" ref="62999d75baf9a6bff999c8621a419926" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ShowRecordElem::number </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the number of this mail. <dl class="return" compact><dt><b>Returns:</b></dt><dd>mail number </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="e7f2ca5eb9a9bc95266a4f83f78cd76e"></a><!-- doxytag: member="ShowRecordElem::setViewItem" ref="e7f2ca5eb9a9bc95266a4f83f78cd76e" args="(ShowListViewItem *item)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setViewItem </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classShowListViewItem.html">ShowListViewItem</a> *&nbsp;</td>
+ <td class="paramname"> <em>item</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the pointer to the corresponding list view item. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">m_pItem</a> <p>
+<a class="el" href="classShowListViewItem.html">ShowListViewItem</a> </dd></dl>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>item</em>&nbsp;</td><td>pointer to the corresponding item </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="e176bc1074c050afc56540849bc3664c"></a><!-- doxytag: member="ShowRecordElem::viewItem" ref="e176bc1074c050afc56540849bc3664c" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classShowListViewItem.html">ShowListViewItem</a> * ShowRecordElem::viewItem </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the pointer to the corresponding list view item. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">m_pItem</a> <p>
+<a class="el" href="classShowListViewItem.html">ShowListViewItem</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>pointer to the item </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="09ca2f0d70bdf8ed2bb7d75ef13bec12"></a><!-- doxytag: member="ShowRecordElem::applyHeaderFilter" ref="09ca2f0d70bdf8ed2bb7d75ef13bec12" args="(HeaderFilter *filter, QString account, QString &amp;mailbox, FilterLog *log=NULL)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">FilterAction_Type</a> ShowRecordElem::applyHeaderFilter </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classHeaderFilter.html">HeaderFilter</a> *&nbsp;</td>
+ <td class="paramname"> <em>filter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>account</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>mailbox</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classFilterLog.html">FilterLog</a> *&nbsp;</td>
+ <td class="paramname"> <em>log</em> = <code>NULL</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Looks for a filter matching the mail header and returns the action recommend by this filter. If the action is MARK, it set markAtViewRefresh to True so the related view entry will be marked at the next view refresh. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>filter</em>&nbsp;</td><td>pointer to the header filter </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of the account </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>mailbox</em>&nbsp;</td><td>reference to a QString object in which the mailbox name shall be written if the action is MOVE </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>log</em>&nbsp;</td><td>pointer to the filter log </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>recommend action </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd>FilterAction_Type <p>
+<a class="el" href="classHeaderFilter.html">HeaderFilter</a> <p>
+<a class="el" href="classShowRecordElem.html#c3f6d14162aafdedf141489ad5d5307a">markAtViewRefresh</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="97952e1293b679abc1891a240bd9e4f1"></a><!-- doxytag: member="ShowRecordElem::readOptions" ref="97952e1293b679abc1891a240bd9e4f1" args="(QDomElement &amp;elem)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::readOptions </td>
+ <td>(</td>
+ <td class="paramtype">QDomElement &amp;&nbsp;</td>
+ <td class="paramname"> <em>elem</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Read a mail (header, size, uid and number) from the given DOM element and store it in this mail object. The element has to contains the attributes "uidl", "size", "number" and a child node called "header". <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>elem</em>&nbsp;</td><td>a DOM element which contains a mail </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="fcabf6ba9c5b68ae2923bb70bf9f45b0"></a><!-- doxytag: member="ShowRecordElem::saveOptions" ref="fcabf6ba9c5b68ae2923bb70bf9f45b0" args="(QDomDocument &amp;doc, QDomElement &amp;parent)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::saveOptions </td>
+ <td>(</td>
+ <td class="paramtype">QDomDocument &amp;&nbsp;</td>
+ <td class="paramname"> <em>doc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QDomElement &amp;&nbsp;</td>
+ <td class="paramname"> <em>parent</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Creates a new DOM element in the given DOM document and add it to given DOM parent element <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>doc</em>&nbsp;</td><td>the DOM document in that all options are stored </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>parent</em>&nbsp;</td><td>the parent element (account) of the mail </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="6987a0066f420f62b5c9ec9d82ed7fb3"></a><!-- doxytag: member="ShowRecordElem::isSelected" ref="6987a0066f420f62b5c9ec9d82ed7fb3" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool ShowRecordElem::isSelected </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns whether the mail is selected in the list view. <dl class="return" compact><dt><b>Returns:</b></dt><dd>TRUE - mail is selected <p>
+FALSE - mail is not selected </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="27af244fc090ac05fabde1becb7bf60d"></a><!-- doxytag: member="ShowRecordElem::decodeMailBody" ref="27af244fc090ac05fabde1becb7bf60d" args="(QByteArray body, bool preferHTML) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::decodeMailBody </td>
+ <td>(</td>
+ <td class="paramtype">QByteArray&nbsp;</td>
+ <td class="paramname"> <em>body</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>preferHTML</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"> const</td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Decodes the given mail body. The mail object has to do this job, because it has stored the mail header and therefore it knows the content type and encoding of the mail. It decodes just the text or html part of the body. The rest of it will be rejected. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>body</em>&nbsp;</td><td>the encoded mail (including header) </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>preferHTML</em>&nbsp;</td><td>decode HTML part if present </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>decoded mail body </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="62792e6386e65ac0050f2e02963254b0"></a><!-- doxytag: member="ShowRecordElem::showHeader" ref="62792e6386e65ac0050f2e02963254b0" args="(QString &amp;account)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int ShowRecordElem::showHeader </td>
+ <td>(</td>
+ <td class="paramtype">QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>account</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Shows the header in a dialog box. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>account name </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>continueShowHeaders - the user has OK clicked. The invoking function will show the next header <p>
+cancelShowHeaders - the user has Cancel clicked. The invoking function will not show the next header. </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="c467986ac8ce3c2219463028574a22c6"></a><!-- doxytag: member="ShowRecordElem::writeToMoveLog" ref="c467986ac8ce3c2219463028574a22c6" args="(FilterLog *log, QString account, QString mailbox)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::writeToMoveLog </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classFilterLog.html">FilterLog</a> *&nbsp;</td>
+ <td class="paramname"> <em>log</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>account</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>mailbox</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Writes this mail into the Move Log. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>log</em>&nbsp;</td><td>pointer to the log </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of the account </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>mailbox</em>&nbsp;</td><td>name of the mailbox </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="d015c9a856acf5ee5c5a942d3cdc39bc"></a><!-- doxytag: member="ShowRecordElem::writeToDeleteLog" ref="d015c9a856acf5ee5c5a942d3cdc39bc" args="(FilterLog *log, QString account)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::writeToDeleteLog </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classFilterLog.html">FilterLog</a> *&nbsp;</td>
+ <td class="paramname"> <em>log</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">QString&nbsp;</td>
+ <td class="paramname"> <em>account</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Writes this mail into the Delete Log. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>log</em>&nbsp;</td><td>pointer to the log </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>account</em>&nbsp;</td><td>name of the account </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="8c138e5d2c33ec03231b8bf6ee719f7f"></a><!-- doxytag: member="ShowRecordElem::setMarkAtNextViewRefresh" ref="8c138e5d2c33ec03231b8bf6ee719f7f" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setMarkAtNextViewRefresh </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The mail will be marked at the next view refresh.
+</div>
+</div><p>
+<a class="anchor" name="8070b0cbba2b2281a78bfdae3334a981"></a><!-- doxytag: member="ShowRecordElem::scanHeader" ref="8070b0cbba2b2281a78bfdae3334a981" args="(const QString &amp;item) const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QCString ShowRecordElem::scanHeader </td>
+ <td>(</td>
+ <td class="paramtype">const QString &amp;&nbsp;</td>
+ <td class="paramname"> <em>item</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Searches in the header for a line which starts with the given item. For example: scanHeader( "From") will find the line "From: Ulrich Weigelt &lt;ulrich.weigelt@gmx.de&gt;" and returns "Ulrich Weigelt &lt;ulrich.weigelt@gmx.de&gt;" Returns an empty string (""), if nothing was found. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>item</em>&nbsp;</td><td>the search item </td></tr>
+ </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>the content of the found line </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="373e98f7a94fd659ff1174ef7346de08"></a><!-- doxytag: member="ShowRecordElem::setFrom" ref="373e98f7a94fd659ff1174ef7346de08" args="(const QCString &amp;from)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setFrom </td>
+ <td>(</td>
+ <td class="paramtype">const QCString &amp;&nbsp;</td>
+ <td class="paramname"> <em>from</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the given string as sender address <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>from</em>&nbsp;</td><td>sender address </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="fe4b012dfc137770f35879ea2264ba19"></a><!-- doxytag: member="ShowRecordElem::setTo" ref="fe4b012dfc137770f35879ea2264ba19" args="(const QCString &amp;to)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setTo </td>
+ <td>(</td>
+ <td class="paramtype">const QCString &amp;&nbsp;</td>
+ <td class="paramname"> <em>to</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the given string as recipient address <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>to</em>&nbsp;</td><td>recipient address </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="bad7c7440195e0284b42c79d281bfbf2"></a><!-- doxytag: member="ShowRecordElem::setSubject" ref="bad7c7440195e0284b42c79d281bfbf2" args="(const QCString &amp;subject)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setSubject </td>
+ <td>(</td>
+ <td class="paramtype">const QCString &amp;&nbsp;</td>
+ <td class="paramname"> <em>subject</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the given string as subject <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>subject</em>&nbsp;</td><td>the mail subject </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="7fe7272db1f8f38f6fa404611acf7b8d"></a><!-- doxytag: member="ShowRecordElem::setDate" ref="7fe7272db1f8f38f6fa404611acf7b8d" args="(const QCString &amp;date)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setDate </td>
+ <td>(</td>
+ <td class="paramtype">const QCString &amp;&nbsp;</td>
+ <td class="paramname"> <em>date</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Converts the given string to a date-time value and stores it. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>date</em>&nbsp;</td><td>the date </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="8ab7746aad762c2c2e0fe80c4a496f9a"></a><!-- doxytag: member="ShowRecordElem::setContent" ref="8ab7746aad762c2c2e0fe80c4a496f9a" args="(const QCString &amp;content)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setContent </td>
+ <td>(</td>
+ <td class="paramtype">const QCString &amp;&nbsp;</td>
+ <td class="paramname"> <em>content</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the given string as content type. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>content</em>&nbsp;</td><td>the content type </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="fe3536020ed0f47f0ec4c97839068cc1"></a><!-- doxytag: member="ShowRecordElem::setFilter" ref="fe3536020ed0f47f0ec4c97839068cc1" args="(FilterElem *filter)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void ShowRecordElem::setFilter </td>
+ <td>(</td>
+ <td class="paramtype">FilterElem *&nbsp;</td>
+ <td class="paramname"> <em>filter</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Sets the pointer to a matching filter. Used by applyFilters(). <dl class="see" compact><dt><b>See also:</b></dt><dd>applyFilters </dd></dl>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>filter</em>&nbsp;</td><td>pointer to the filter </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="9c49db9d3ce2495c477c783dd5e5da7d"></a><!-- doxytag: member="ShowRecordElem::getBoundary" ref="9c49db9d3ce2495c477c783dd5e5da7d" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::getBoundary </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the boundary, if the mail has a multi part body. Otherwise it returns an empty string. <dl class="return" compact><dt><b>Returns:</b></dt><dd>boundary </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="4919b572763cc228320420059e29b0a7"></a><!-- doxytag: member="ShowRecordElem::getCharset" ref="4919b572763cc228320420059e29b0a7" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::getCharset </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the char set of the content (e.g. iso-8859-1). If no char set is denoted, it will returns an empty string. <dl class="return" compact><dt><b>Returns:</b></dt><dd>charset </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="9f0dcc62d28fbcec89b0af33c7e0c446"></a><!-- doxytag: member="ShowRecordElem::getTransferEncoding" ref="9f0dcc62d28fbcec89b0af33c7e0c446" args="() const" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString ShowRecordElem::getTransferEncoding </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"> const<code> [private]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returns the content transfer encoding of the content (e.g. quoted-printable). If no encoding is denoted, it will returns an empty string. <dl class="return" compact><dt><b>Returns:</b></dt><dd>content transfer encoding </dd></dl>
+
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="2b5bdb3ed3f940614135b9c9f1f13eb6"></a><!-- doxytag: member="ShowRecordElem::continueShowHeaders" ref="2b5bdb3ed3f940614135b9c9f1f13eb6" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int const <a class="el" href="classShowRecordElem.html#2b5bdb3ed3f940614135b9c9f1f13eb6">ShowRecordElem::continueShowHeaders</a><code> [static]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returned by <a class="el" href="classShowRecordElem.html#62792e6386e65ac0050f2e02963254b0">showHeader()</a>, if the user has clicked OK.
+</div>
+</div><p>
+<a class="anchor" name="b6aceead6b70f3e3f5e6af530c5ac1af"></a><!-- doxytag: member="ShowRecordElem::cancelShowHeaders" ref="b6aceead6b70f3e3f5e6af530c5ac1af" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int const <a class="el" href="classShowRecordElem.html#b6aceead6b70f3e3f5e6af530c5ac1af">ShowRecordElem::cancelShowHeaders</a><code> [static]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Returned by <a class="el" href="classShowRecordElem.html#62792e6386e65ac0050f2e02963254b0">showHeader()</a>, if the user has clicked Cancel.
+</div>
+</div><p>
+<a class="anchor" name="ca732c6667cb0424aab679785d24256a"></a><!-- doxytag: member="ShowRecordElem::m_header" ref="ca732c6667cb0424aab679785d24256a" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QCString <a class="el" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">ShowRecordElem::m_header</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Mail header; coded according RFC 2047
+</div>
+</div><p>
+<a class="anchor" name="260019ad5471ede61b2a1958b8c31375"></a><!-- doxytag: member="ShowRecordElem::m_from" ref="260019ad5471ede61b2a1958b8c31375" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QCString <a class="el" href="classShowRecordElem.html#260019ad5471ede61b2a1958b8c31375">ShowRecordElem::m_from</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The sender address; coded according RFC 2047
+</div>
+</div><p>
+<a class="anchor" name="02de09b7b36dfcce893a1e79ff8ba34c"></a><!-- doxytag: member="ShowRecordElem::m_to" ref="02de09b7b36dfcce893a1e79ff8ba34c" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QCString <a class="el" href="classShowRecordElem.html#02de09b7b36dfcce893a1e79ff8ba34c">ShowRecordElem::m_to</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The addressee; coded according RFC 2047
+</div>
+</div><p>
+<a class="anchor" name="1c83a6d029a73795076161efd3842893"></a><!-- doxytag: member="ShowRecordElem::m_subject" ref="1c83a6d029a73795076161efd3842893" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QCString <a class="el" href="classShowRecordElem.html#1c83a6d029a73795076161efd3842893">ShowRecordElem::m_subject</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The subject; coded according RFC 2047
+</div>
+</div><p>
+<a class="anchor" name="b3f665656a06d88cea46345bcb1a51a9"></a><!-- doxytag: member="ShowRecordElem::m_unixDate" ref="b3f665656a06d88cea46345bcb1a51a9" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QDateTime <a class="el" href="classShowRecordElem.html#b3f665656a06d88cea46345bcb1a51a9">ShowRecordElem::m_unixDate</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The date on which the mail was sent
+</div>
+</div><p>
+<a class="anchor" name="c70dec4d7ff63aa1acffcc7229776990"></a><!-- doxytag: member="ShowRecordElem::m_content" ref="c70dec4d7ff63aa1acffcc7229776990" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QCString <a class="el" href="classShowRecordElem.html#c70dec4d7ff63aa1acffcc7229776990">ShowRecordElem::m_content</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The content type
+</div>
+</div><p>
+<a class="anchor" name="7da2621d1de438c9118fbcead3c23506"></a><!-- doxytag: member="ShowRecordElem::m_uid" ref="7da2621d1de438c9118fbcead3c23506" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">QString <a class="el" href="classShowRecordElem.html#7da2621d1de438c9118fbcead3c23506">ShowRecordElem::m_uid</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The unique ID of the mail.
+</div>
+</div><p>
+<a class="anchor" name="3ef7da0fb8e84e7e672888aa349de622"></a><!-- doxytag: member="ShowRecordElem::m_size" ref="3ef7da0fb8e84e7e672888aa349de622" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int <a class="el" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">ShowRecordElem::m_size</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Size of the mail
+</div>
+</div><p>
+<a class="anchor" name="f9f2112f8e2b1c3dfef0286581a892b4"></a><!-- doxytag: member="ShowRecordElem::m_new" ref="f9f2112f8e2b1c3dfef0286581a892b4" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classShowRecordElem.html#f9f2112f8e2b1c3dfef0286581a892b4">ShowRecordElem::m_new</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+It is set to TRUE when the mail is new.
+</div>
+</div><p>
+<a class="anchor" name="8583bafac2418ddd8c7d881926851f05"></a><!-- doxytag: member="ShowRecordElem::m_nNumber" ref="8583bafac2418ddd8c7d881926851f05" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int <a class="el" href="classShowRecordElem.html#8583bafac2418ddd8c7d881926851f05">ShowRecordElem::m_nNumber</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+The mail number of the account
+</div>
+</div><p>
+<a class="anchor" name="c3f6d14162aafdedf141489ad5d5307a"></a><!-- doxytag: member="ShowRecordElem::markAtViewRefresh" ref="c3f6d14162aafdedf141489ad5d5307a" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classShowRecordElem.html#c3f6d14162aafdedf141489ad5d5307a">ShowRecordElem::markAtViewRefresh</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+TRUE - the mail shall be marked at the next mail view refresh. It will be set to True by <a class="el" href="classShowRecordElem.html#09ca2f0d70bdf8ed2bb7d75ef13bec12">applyHeaderFilter()</a> if the recommend filter action is MARK. It is used by <a class="el" href="classShowRecordElem.html#e7f2ca5eb9a9bc95266a4f83f78cd76e">setViewItem()</a>. This methode marks the related list entry and after then it set this variable to False.
+</div>
+</div><p>
+<a class="anchor" name="bf60523f76dbfb970f40d078b089aed3"></a><!-- doxytag: member="ShowRecordElem::m_pItem" ref="bf60523f76dbfb970f40d078b089aed3" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classShowListViewItem.html">ShowListViewItem</a>* <a class="el" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">ShowRecordElem::m_pItem</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Pointer to the corresponding list view entry. Used to check whether the entry is highlighted and we have to process this mail. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classShowListViewItem.html">ShowListViewItem</a> </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="cf1207160bae1cd017c282b808e44e02"></a><!-- doxytag: member="ShowRecordElem::m_pFilter" ref="cf1207160bae1cd017c282b808e44e02" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">FilterElem* <a class="el" href="classShowRecordElem.html#cf1207160bae1cd017c282b808e44e02">ShowRecordElem::m_pFilter</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+This is a pointer to the filter, which matches this mail. If it is NULL, no filter matches. Will be set by applyFilters(). This pointer will just be used to count the deleted mails by this filter( see implementation of setDeleted() ).
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showrecordelem_8h-source.html">showrecordelem.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showrecordelem_8cpp.html">showrecordelem.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classUniqueApp-members.html b/doc/html/classUniqueApp-members.html
new file mode 100644
index 0000000..83f4d8a
--- /dev/null
+++ b/doc/html/classUniqueApp-members.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Member List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>UniqueApp Member List</h1>This is the complete list of members for <a class="el" href="classUniqueApp.html">UniqueApp</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a></td><td><a class="el" href="classUniqueApp.html">UniqueApp</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classUniqueApp.html#41127093415c53fea5560a51a83d0dde">newInstance</a>()</td><td><a class="el" href="classUniqueApp.html">UniqueApp</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classUniqueApp.html#ecfa67080f62f6ec776089de43e920ba">UniqueApp</a>()</td><td><a class="el" href="classUniqueApp.html">UniqueApp</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classUniqueApp.html#c0f5a87150f0c1a09ada9996fba1ffa2">~UniqueApp</a>()</td><td><a class="el" href="classUniqueApp.html">UniqueApp</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classUniqueApp.html b/doc/html/classUniqueApp.html
new file mode 100644
index 0000000..9efe314
--- /dev/null
+++ b/doc/html/classUniqueApp.html
@@ -0,0 +1,128 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: UniqueApp Class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>UniqueApp Class Reference</h1><!-- doxytag: class="UniqueApp" -->Creates a unique instance of kshowmail.
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="uniqueapp_8h-source.html">uniqueapp.h</a>&gt;</code>
+<p>
+<a href="classUniqueApp-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUniqueApp.html#ecfa67080f62f6ec776089de43e920ba">UniqueApp</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUniqueApp.html#c0f5a87150f0c1a09ada9996fba1ffa2">~UniqueApp</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUniqueApp.html#41127093415c53fea5560a51a83d0dde">newInstance</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classKShowMailApp.html">KShowMailApp</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Creates a unique instance of kshowmail.
+<p>
+<dl class="author" compact><dt><b>Author:</b></dt><dd>Eggert Ehmke </dd></dl>
+
+<p>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="ecfa67080f62f6ec776089de43e920ba"></a><!-- doxytag: member="UniqueApp::UniqueApp" ref="ecfa67080f62f6ec776089de43e920ba" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">UniqueApp::UniqueApp </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor
+</div>
+</div><p>
+<a class="anchor" name="c0f5a87150f0c1a09ada9996fba1ffa2"></a><!-- doxytag: member="UniqueApp::~UniqueApp" ref="c0f5a87150f0c1a09ada9996fba1ffa2" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">UniqueApp::~UniqueApp </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Destructor
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="41127093415c53fea5560a51a83d0dde"></a><!-- doxytag: member="UniqueApp::newInstance" ref="41127093415c53fea5560a51a83d0dde" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int UniqueApp::newInstance </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td width="100%"><code> [virtual]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+overloaded method of KUniqueApplication. Creates a new instance of kshowmail.
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="e886ded882ebbd15b4224780392a0e22"></a><!-- doxytag: member="UniqueApp::m_pApp" ref="e886ded882ebbd15b4224780392a0e22" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classKShowMailApp.html">KShowMailApp</a>* <a class="el" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">UniqueApp::m_pApp</a><code> [private]</code> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+the kshowmail instance
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="uniqueapp_8h-source.html">uniqueapp.h</a><li>Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="uniqueapp_8cpp.html">uniqueapp.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/classes.html b/doc/html/classes.html
new file mode 100644
index 0000000..6831214
--- /dev/null
+++ b/doc/html/classes.html
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Alphabetical List</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>kshowmail.kdevelop Class Index</h1><p><div class="qindex"><a class="qindex" href="#letter_A">A</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_C">C</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_D">D</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_F">F</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_H">H</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_K">K</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_M">M</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_S">S</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_U">U</a></div><p>
+<table align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
+<tr><td><a name="letter_A"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;A&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classConfigFilter.html">ConfigFilter</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classFilterItem.html">FilterItem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classHeaderFilter.html">HeaderFilter</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classSenderListDialog.html">SenderListDialog</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classAccountSetupDialog.html">AccountSetupDialog</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classConfigGeneral.html">ConfigGeneral</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classFilterItemCriteria.html">FilterItemCriteria</a>&nbsp;&nbsp;&nbsp;</td><td><a name="letter_K"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;K&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classSenderListFilter.html">SenderListFilter</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classAccountSetupItem.html">AccountSetupItem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classConfigList.html">ConfigList</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classFilterLog.html">FilterLog</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classKShowMailApp.html">KShowMailApp</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classServerDialog.html">ServerDialog</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classAlertDialog.html">AlertDialog</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classConfigLog.html">ConfigLog</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classFilterLogEntry.html">FilterLogEntry</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classShowHeaderDialog.html">ShowHeaderDialog</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classAlertDlg.html">AlertDlg</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classConfigSpamcheck.html">ConfigSpamcheck</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classFilterLogView.html">FilterLogView</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classKShowMailDock.html">KShowMailDock</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classShowListViewItem.html">ShowListViewItem</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a name="letter_C"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;C&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_D"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;D&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classFilterLogViewDeletedItem.html">FilterLogViewDeletedItem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classKshowmailView.html">KshowmailView</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classShowMailDialog.html">ShowMailDialog</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classConfigAccounts.html">ConfigAccounts</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structTypes_1_1DownloadActionParams__Type.html">DownloadActionParams_Type</a> (<a class="el" href="namespaceTypes.html">Types</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classFilterLogViewMovedItem.html">FilterLogViewMovedItem</a>&nbsp;&nbsp;&nbsp;</td><td><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;M&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classShowRecord.html">ShowRecord</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classConfigActions.html">ConfigActions</a>&nbsp;&nbsp;&nbsp;</td><td><a name="letter_F"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;F&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classFilterSetupDialog.html">FilterSetupDialog</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classMailBoxWizard.html">MailBoxWizard</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classShowRecordElem.html">ShowRecordElem</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classConfigDisplay.html">ConfigDisplay</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structTypes_1_1FilterCriteria__Type.html">FilterCriteria_Type</a> (<a class="el" href="namespaceTypes.html">Types</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classFilterSetupItem.html">FilterSetupItem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classMailBoxWizardListItem.html">MailBoxWizardListItem</a>&nbsp;&nbsp;&nbsp;</td><td><a name="letter_U"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;U&nbsp;&nbsp;</div></td></tr></table>
+</td></tr><tr><td><a class="el" href="classConfigElem.html">ConfigElem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classFilterCriteriaWidget.html">FilterCriteriaWidget</a>&nbsp;&nbsp;&nbsp;</td><td><a name="letter_H"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;H&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;S&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classUniqueApp.html">UniqueApp</a>&nbsp;&nbsp;&nbsp;</td></tr></table><p><div class="qindex"><a class="qindex" href="#letter_A">A</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_C">C</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_D">D</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_F">F</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_H">H</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_K">K</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_M">M</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_S">S</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_U">U</a></div><p>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/commanddialog_8cpp-source.html b/doc/html/commanddialog_8cpp-source.html
new file mode 100644
index 0000000..bdd3432
--- /dev/null
+++ b/doc/html/commanddialog_8cpp-source.html
@@ -0,0 +1,150 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/commanddialog.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>commanddialog.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> commanddialog.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Wed Oct 31 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;kmessagebox.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include "kshowmail.h"</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include "commanddialog.h"</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "commandentrydialog.h"</span>
+<a name="l00023"></a>00023
+<a name="l00024"></a><a class="code" href="classCommandDialog.html#bd38a3e65b0dce5805404012f0613cff">00024</a> <a class="code" href="classCommandDialog.html#bd38a3e65b0dce5805404012f0613cff">CommandDialog::CommandDialog</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="classCommandList.html">CommandList</a>* list, <a class="code" href="classConfigElem.html">ConfigElem</a>* pConfig, <a class="code" href="classConfigList.html">ConfigList</a>* pConfigList):
+<a name="l00025"></a>00025 <a class="code" href="classCommandDlg.html">CommandDlg</a>(parent,name,true),
+<a name="l00026"></a>00026 <span class="comment">// m_locallist (*list), we don't have a proper copy contructor</span>
+<a name="l00027"></a>00027 m_plist (list),
+<a name="l00028"></a>00028 m_pConfigList (pConfigList),
+<a name="l00029"></a>00029 m_pConfig (pConfig)
+<a name="l00030"></a>00030 {
+<a name="l00031"></a>00031 <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a> = *list;
+<a name="l00032"></a>00032 <span class="keywordtype">int</span> index = list-&gt;at ();
+<a name="l00033"></a>00033 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; list-&gt;count(); i ++)
+<a name="l00034"></a>00034 {
+<a name="l00035"></a>00035 <a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>-&gt;insertItem (<a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.at (i)-&gt;m_name);
+<a name="l00036"></a>00036 }
+<a name="l00037"></a>00037 <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.at (index);
+<a name="l00038"></a>00038 <a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>-&gt;setCurrentItem (index);
+<a name="l00039"></a>00039 }
+<a name="l00040"></a>00040
+<a name="l00041"></a><a class="code" href="classCommandDialog.html#192de72c165b17b2881c0ba8f60745c1">00041</a> <a class="code" href="classCommandDialog.html#192de72c165b17b2881c0ba8f60745c1">CommandDialog::~CommandDialog</a>()
+<a name="l00042"></a>00042 {
+<a name="l00043"></a>00043 }
+<a name="l00044"></a>00044
+<a name="l00045"></a><a class="code" href="classCommandDialog.html#dda22468a397da253b53f5e6fb355e51">00045</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDialog.html#dda22468a397da253b53f5e6fb355e51">CommandDialog::slotAdd</a> ()
+<a name="l00046"></a>00046 {
+<a name="l00047"></a>00047 <a class="code" href="classCommandEntry.html">CommandEntry</a>* entry = <span class="keyword">new</span> <a class="code" href="classCommandEntry.html">CommandEntry</a> ();
+<a name="l00048"></a>00048 <a class="code" href="classCommandEntryDialog.html">CommandEntryDialog</a> dlg (<span class="keyword">this</span>, <span class="stringliteral">"New command"</span>, entry, <a class="code" href="classCommandDialog.html#df9a5022f1021b82ba4426edd688bc26">m_pConfig</a>);
+<a name="l00049"></a>00049 <span class="keywordflow">if</span> (dlg.exec () == QDialog::Accepted)
+<a name="l00050"></a>00050 {
+<a name="l00051"></a>00051 <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.append (entry);
+<a name="l00052"></a>00052 <span class="keywordtype">int</span> pos = <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.at ();
+<a name="l00053"></a>00053 <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.<a class="code" href="classCommandList.html#e5a8632fb53943a8ec5b8edfa268e668">setCombo</a> (<a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>, pos);
+<a name="l00054"></a>00054 }
+<a name="l00055"></a>00055 <span class="keywordflow">else</span>
+<a name="l00056"></a>00056 <span class="keyword">delete</span> entry;
+<a name="l00057"></a>00057 }
+<a name="l00058"></a>00058
+<a name="l00059"></a><a class="code" href="classCommandDialog.html#fb379bb2e58af29cb4a41192d09baa5c">00059</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDialog.html#fb379bb2e58af29cb4a41192d09baa5c">CommandDialog::slotEdit</a> ()
+<a name="l00060"></a>00060 {
+<a name="l00061"></a>00061 <span class="keywordflow">if</span> (<a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.current ())
+<a name="l00062"></a>00062 {
+<a name="l00063"></a>00063 <a class="code" href="classCommandEntryDialog.html">CommandEntryDialog</a> dlg (<span class="keyword">this</span>, <span class="stringliteral">"Edit command"</span>, <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.current (), <a class="code" href="classCommandDialog.html#df9a5022f1021b82ba4426edd688bc26">m_pConfig</a>);
+<a name="l00064"></a>00064 <span class="keywordflow">if</span> (dlg.exec () == QDialog::Accepted)
+<a name="l00065"></a>00065 {
+<a name="l00066"></a>00066 <span class="comment">// the command name may have changed. Update the combo box.</span>
+<a name="l00067"></a>00067 <span class="keywordtype">int</span> pos = <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.at ();
+<a name="l00068"></a>00068 <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.<a class="code" href="classCommandList.html#e5a8632fb53943a8ec5b8edfa268e668">setCombo</a> (<a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>, pos);
+<a name="l00069"></a>00069 }
+<a name="l00070"></a>00070 }
+<a name="l00071"></a>00071 }
+<a name="l00072"></a>00072
+<a name="l00073"></a><a class="code" href="classCommandDialog.html#8677e258307ae6388b27cb904657c544">00073</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDialog.html#8677e258307ae6388b27cb904657c544">CommandDialog::slotCopy</a> ()
+<a name="l00074"></a>00074 {
+<a name="l00075"></a>00075 <span class="keywordflow">if</span> (<a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.current ())
+<a name="l00076"></a>00076 {
+<a name="l00077"></a>00077 <a class="code" href="classCommandEntry.html">CommandEntry</a>* entry = <span class="keyword">new</span> <a class="code" href="classCommandEntry.html">CommandEntry</a> (<a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.current ());
+<a name="l00078"></a>00078 <a class="code" href="classCommandEntryDialog.html">CommandEntryDialog</a> dlg (<span class="keyword">this</span>, <span class="stringliteral">"Copy command"</span>, entry, <a class="code" href="classCommandDialog.html#df9a5022f1021b82ba4426edd688bc26">m_pConfig</a>);
+<a name="l00079"></a>00079 <span class="keywordflow">if</span> (dlg.exec () == QDialog::Accepted)
+<a name="l00080"></a>00080 {
+<a name="l00081"></a>00081 <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.append (entry);
+<a name="l00082"></a>00082 <span class="keywordtype">int</span> pos = <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.at ();
+<a name="l00083"></a>00083 <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.<a class="code" href="classCommandList.html#e5a8632fb53943a8ec5b8edfa268e668">setCombo</a> (<a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>, pos);
+<a name="l00084"></a>00084 }
+<a name="l00085"></a>00085 <span class="keywordflow">else</span>
+<a name="l00086"></a>00086 <span class="keyword">delete</span> entry;
+<a name="l00087"></a>00087 }
+<a name="l00088"></a>00088 }
+<a name="l00089"></a>00089
+<a name="l00090"></a><a class="code" href="classCommandDialog.html#cab1d5db08aac54c1adf59462a3c2ecb">00090</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDialog.html#cab1d5db08aac54c1adf59462a3c2ecb">CommandDialog::slotDelete</a> ()
+<a name="l00091"></a>00091 {
+<a name="l00092"></a>00092 <span class="keywordflow">if</span> (<a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.current())
+<a name="l00093"></a>00093 {
+<a name="l00094"></a>00094 <span class="keywordflow">if</span> (KMessageBox::warningYesNo (<span class="keyword">this</span>, i18n(<span class="stringliteral">"Command %1 will be deleted.\nAre you sure ?"</span>).arg(<a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.current()-&gt;m_name)) == KMessageBox::Yes)
+<a name="l00095"></a>00095 {
+<a name="l00096"></a>00096 <span class="keywordtype">int</span> pos = <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.at ();
+<a name="l00097"></a>00097 <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.remove (pos);
+<a name="l00098"></a>00098 <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.<a class="code" href="classCommandList.html#e5a8632fb53943a8ec5b8edfa268e668">setCombo</a> (<a class="code" href="classCommandDlg.html#96835ee0557e2288d0254beefc2469de">m_ComboCommand</a>, pos);
+<a name="l00099"></a>00099 }
+<a name="l00100"></a>00100 }
+<a name="l00101"></a>00101 }
+<a name="l00102"></a>00102
+<a name="l00103"></a><a class="code" href="classCommandDialog.html#0dafa016ff6fd4f2273274c0c90f309c">00103</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDialog.html#0dafa016ff6fd4f2273274c0c90f309c">CommandDialog::slotOk</a> ()
+<a name="l00104"></a>00104 {
+<a name="l00105"></a>00105 *<a class="code" href="classCommandDialog.html#40534ab21fbace3c1a1a04ebeb7a8d02">m_plist</a> = <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>;
+<a name="l00106"></a>00106 <span class="keywordtype">int</span> index = <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.at ();
+<a name="l00107"></a>00107 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classCommandDialog.html#40534ab21fbace3c1a1a04ebeb7a8d02">m_plist</a>-&gt;count (); i++)
+<a name="l00108"></a>00108 {
+<a name="l00109"></a>00109 <span class="keywordflow">if</span> (<a class="code" href="classCommandDialog.html#40534ab21fbace3c1a1a04ebeb7a8d02">m_plist</a>-&gt;at (i)-&gt;m_name == <span class="stringliteral">"complain"</span>)
+<a name="l00110"></a>00110 <a class="code" href="classCommandDialog.html#40534ab21fbace3c1a1a04ebeb7a8d02">m_plist</a>-&gt;at (i)-&gt;m_id = ID_OPTION_COMPLAIN;
+<a name="l00111"></a>00111 <span class="keywordflow">else</span>
+<a name="l00112"></a>00112 <a class="code" href="classCommandDialog.html#40534ab21fbace3c1a1a04ebeb7a8d02">m_plist</a>-&gt;at (i)-&gt;m_id = ID_OPTION_COMPLAIN + 1 + i;
+<a name="l00113"></a>00113 }
+<a name="l00114"></a>00114 <span class="keywordflow">if</span> (<a class="code" href="classCommandDialog.html#ed633f71695d6a861d71c2811a51d2af">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#e53957ef0d235a05cffaf699d0572bdc">m_bExternalProg</a> &amp;&amp; (<a class="code" href="classCommandDialog.html#ed633f71695d6a861d71c2811a51d2af">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#44ce4ad71c954f0df6043740a7bcd80c">m_nExternalProg</a> &gt;= <a class="code" href="classCommandDialog.html#40534ab21fbace3c1a1a04ebeb7a8d02">m_plist</a>-&gt;count ()))
+<a name="l00115"></a>00115 {
+<a name="l00116"></a>00116 <a class="code" href="classCommandDialog.html#ed633f71695d6a861d71c2811a51d2af">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#e53957ef0d235a05cffaf699d0572bdc">m_bExternalProg</a> = <span class="keyword">false</span>;
+<a name="l00117"></a>00117 <a class="code" href="classCommandDialog.html#ed633f71695d6a861d71c2811a51d2af">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#44ce4ad71c954f0df6043740a7bcd80c">m_nExternalProg</a> = -1;
+<a name="l00118"></a>00118 }
+<a name="l00119"></a>00119 <a class="code" href="classCommandDialog.html#40534ab21fbace3c1a1a04ebeb7a8d02">m_plist</a>-&gt;at (index);
+<a name="l00120"></a>00120 accept ();
+<a name="l00121"></a>00121 }
+<a name="l00122"></a>00122
+<a name="l00123"></a><a class="code" href="classCommandDialog.html#cd99b824ab0b9db86f17ec4292665251">00123</a> <span class="keywordtype">void</span> <a class="code" href="classCommandDialog.html#cd99b824ab0b9db86f17ec4292665251">CommandDialog::slotCommandActivated</a> (<span class="keywordtype">int</span> index)
+<a name="l00124"></a>00124 {
+<a name="l00125"></a>00125 <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>.at (index); <span class="comment">// will set current item</span>
+<a name="l00126"></a>00126 }
+<a name="l00127"></a>00127
+<a name="l00128"></a>00128
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/commanddialog_8h-source.html b/doc/html/commanddialog_8h-source.html
new file mode 100644
index 0000000..fabeb32
--- /dev/null
+++ b/doc/html/commanddialog_8h-source.html
@@ -0,0 +1,73 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/commanddialog.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>commanddialog.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> commanddialog.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Wed Oct 31 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef COMMANDDIALOG_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define COMMANDDIALOG_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qwidget.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "CommandDlg.h"</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include "commandlist.h"</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include "configelem.h"</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include "configlist.h"</span>
+<a name="l00026"></a>00026
+<a name="l00031"></a>00031 <span class="preprocessor">#define ID_OPTION_COMPLAIN 13000</span>
+<a name="l00032"></a>00032 <span class="preprocessor"></span>
+<a name="l00033"></a>00033 <span class="keyword">class </span><a class="code" href="classConfigList.html">ConfigList</a>;
+<a name="l00034"></a>00034
+<a name="l00035"></a><a class="code" href="classCommandDialog.html">00035</a> <span class="keyword">class </span><a class="code" href="classCommandDialog.html">CommandDialog</a> : <span class="keyword">public</span> <a class="code" href="classCommandDlg.html">CommandDlg</a>
+<a name="l00036"></a>00036 {
+<a name="l00037"></a>00037 Q_OBJECT
+<a name="l00038"></a>00038 <span class="keyword">public</span>:
+<a name="l00039"></a>00039 <a class="code" href="classCommandDialog.html#bd38a3e65b0dce5805404012f0613cff">CommandDialog</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="classCommandList.html">CommandList</a>* list, <a class="code" href="classConfigElem.html">ConfigElem</a>* pConfig, <a class="code" href="classConfigList.html">ConfigList</a>* pConfigList);
+<a name="l00040"></a>00040 <a class="code" href="classCommandDialog.html#192de72c165b17b2881c0ba8f60745c1">~CommandDialog</a>();
+<a name="l00041"></a>00041 <span class="keyword">private</span> slots:
+<a name="l00042"></a>00042 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDialog.html#dda22468a397da253b53f5e6fb355e51">slotAdd</a> ();
+<a name="l00043"></a>00043 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDialog.html#fb379bb2e58af29cb4a41192d09baa5c">slotEdit</a> ();
+<a name="l00044"></a>00044 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDialog.html#8677e258307ae6388b27cb904657c544">slotCopy</a>();
+<a name="l00045"></a>00045 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDialog.html#cab1d5db08aac54c1adf59462a3c2ecb">slotDelete</a> ();
+<a name="l00046"></a>00046 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDialog.html#0dafa016ff6fd4f2273274c0c90f309c">slotOk</a> ();
+<a name="l00047"></a>00047 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCommandDialog.html#cd99b824ab0b9db86f17ec4292665251">slotCommandActivated</a> (<span class="keywordtype">int</span>);
+<a name="l00048"></a>00048 <span class="keyword">private</span>:
+<a name="l00049"></a><a class="code" href="classCommandDialog.html#40534ab21fbace3c1a1a04ebeb7a8d02">00049</a> <a class="code" href="classCommandList.html">CommandList</a>* <a class="code" href="classCommandDialog.html#40534ab21fbace3c1a1a04ebeb7a8d02">m_plist</a>;
+<a name="l00050"></a><a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">00050</a> <a class="code" href="classCommandList.html">CommandList</a> <a class="code" href="classCommandDialog.html#cc18c807ba3c9c1d6fc8000b0c4729b9">m_locallist</a>;
+<a name="l00051"></a><a class="code" href="classCommandDialog.html#ed633f71695d6a861d71c2811a51d2af">00051</a> <a class="code" href="classConfigList.html">ConfigList</a>* <a class="code" href="classCommandDialog.html#ed633f71695d6a861d71c2811a51d2af">m_pConfigList</a>;
+<a name="l00052"></a><a class="code" href="classCommandDialog.html#df9a5022f1021b82ba4426edd688bc26">00052</a> <a class="code" href="classConfigElem.html">ConfigElem</a>* <a class="code" href="classCommandDialog.html#df9a5022f1021b82ba4426edd688bc26">m_pConfig</a>;
+<a name="l00053"></a>00053 };
+<a name="l00054"></a>00054
+<a name="l00055"></a>00055 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/commanddialog_8moc_8cpp-source.html b/doc/html/commanddialog_8moc_8cpp-source.html
new file mode 100644
index 0000000..1a54c91
--- /dev/null
+++ b/doc/html/commanddialog_8moc_8cpp-source.html
@@ -0,0 +1,141 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/commanddialog.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>commanddialog.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** CommandDialog meta object code from reading C++ file 'commanddialog.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Tue May 15 19:57:53 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: commanddialog_8moc_8cpp-source.html,v 1.8 2007/05/16 20:12:00 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "commanddialog.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *CommandDialog::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"CommandDialog"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *CommandDialog::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_CommandDialog( <span class="stringliteral">"CommandDialog"</span>, &amp;CommandDialog::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString CommandDialog::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"CommandDialog"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString CommandDialog::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"CommandDialog"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* CommandDialog::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = CommandDlg::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotAdd"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotEdit"</span>, 0, 0 };
+<a name="l00057"></a>00057 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_2 = {<span class="stringliteral">"slotCopy"</span>, 0, 0 };
+<a name="l00058"></a>00058 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_3 = {<span class="stringliteral">"slotDelete"</span>, 0, 0 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_4 = {<span class="stringliteral">"slotOk"</span>, 0, 0 };
+<a name="l00060"></a>00060 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_5[] = {
+<a name="l00061"></a>00061 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00062"></a>00062 };
+<a name="l00063"></a>00063 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_5 = {<span class="stringliteral">"slotCommandActivated"</span>, 1, param_slot_5 };
+<a name="l00064"></a>00064 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00065"></a>00065 { <span class="stringliteral">"slotAdd()"</span>, &amp;slot_0, QMetaData::Private },
+<a name="l00066"></a>00066 { <span class="stringliteral">"slotEdit()"</span>, &amp;slot_1, QMetaData::Private },
+<a name="l00067"></a>00067 { <span class="stringliteral">"slotCopy()"</span>, &amp;slot_2, QMetaData::Private },
+<a name="l00068"></a>00068 { <span class="stringliteral">"slotDelete()"</span>, &amp;slot_3, QMetaData::Private },
+<a name="l00069"></a>00069 { <span class="stringliteral">"slotOk()"</span>, &amp;slot_4, QMetaData::Private },
+<a name="l00070"></a>00070 { <span class="stringliteral">"slotCommandActivated(int)"</span>, &amp;slot_5, QMetaData::Private }
+<a name="l00071"></a>00071 };
+<a name="l00072"></a>00072 metaObj = QMetaObject::new_metaobject(
+<a name="l00073"></a>00073 <span class="stringliteral">"CommandDialog"</span>, parentObject,
+<a name="l00074"></a>00074 slot_tbl, 6,
+<a name="l00075"></a>00075 0, 0,
+<a name="l00076"></a>00076 #ifndef QT_NO_PROPERTIES
+<a name="l00077"></a>00077 0, 0,
+<a name="l00078"></a>00078 0, 0,
+<a name="l00079"></a>00079 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00080"></a>00080 0, 0 );
+<a name="l00081"></a>00081 cleanUp_CommandDialog.setMetaObject( metaObj );
+<a name="l00082"></a>00082 <span class="keywordflow">return</span> metaObj;
+<a name="l00083"></a>00083 }
+<a name="l00084"></a>00084
+<a name="l00085"></a>00085 <span class="keywordtype">void</span>* CommandDialog::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00086"></a>00086 {
+<a name="l00087"></a>00087 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"CommandDialog"</span> ) )
+<a name="l00088"></a>00088 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00089"></a>00089 <span class="keywordflow">return</span> CommandDlg::qt_cast( clname );
+<a name="l00090"></a>00090 }
+<a name="l00091"></a>00091
+<a name="l00092"></a>00092 <span class="keywordtype">bool</span> CommandDialog::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00093"></a>00093 {
+<a name="l00094"></a>00094 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00095"></a>00095 <span class="keywordflow">case</span> 0: <a class="code" href="classCommandDialog.html#dda22468a397da253b53f5e6fb355e51">slotAdd</a>(); <span class="keywordflow">break</span>;
+<a name="l00096"></a>00096 <span class="keywordflow">case</span> 1: <a class="code" href="classCommandDialog.html#fb379bb2e58af29cb4a41192d09baa5c">slotEdit</a>(); <span class="keywordflow">break</span>;
+<a name="l00097"></a>00097 <span class="keywordflow">case</span> 2: <a class="code" href="classCommandDialog.html#8677e258307ae6388b27cb904657c544">slotCopy</a>(); <span class="keywordflow">break</span>;
+<a name="l00098"></a>00098 <span class="keywordflow">case</span> 3: <a class="code" href="classCommandDialog.html#cab1d5db08aac54c1adf59462a3c2ecb">slotDelete</a>(); <span class="keywordflow">break</span>;
+<a name="l00099"></a>00099 <span class="keywordflow">case</span> 4: <a class="code" href="classCommandDialog.html#0dafa016ff6fd4f2273274c0c90f309c">slotOk</a>(); <span class="keywordflow">break</span>;
+<a name="l00100"></a>00100 <span class="keywordflow">case</span> 5: <a class="code" href="classCommandDialog.html#cd99b824ab0b9db86f17ec4292665251">slotCommandActivated</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00101"></a>00101 <span class="keywordflow">default</span>:
+<a name="l00102"></a>00102 <span class="keywordflow">return</span> CommandDlg::qt_invoke( _id, _o );
+<a name="l00103"></a>00103 }
+<a name="l00104"></a>00104 <span class="keywordflow">return</span> TRUE;
+<a name="l00105"></a>00105 }
+<a name="l00106"></a>00106
+<a name="l00107"></a>00107 <span class="keywordtype">bool</span> CommandDialog::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00108"></a>00108 {
+<a name="l00109"></a>00109 <span class="keywordflow">return</span> CommandDlg::qt_emit(_id,_o);
+<a name="l00110"></a>00110 }
+<a name="l00111"></a>00111 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00112"></a>00112 <span class="preprocessor"></span>
+<a name="l00113"></a>00113 <span class="keywordtype">bool</span> CommandDialog::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00114"></a>00114 {
+<a name="l00115"></a>00115 <span class="keywordflow">return</span> CommandDlg::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00116"></a>00116 }
+<a name="l00117"></a>00117
+<a name="l00118"></a>00118 <span class="keywordtype">bool</span> CommandDialog::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00119"></a>00119 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/commandentry_8cpp-source.html b/doc/html/commandentry_8cpp-source.html
new file mode 100644
index 0000000..94ad5c7
--- /dev/null
+++ b/doc/html/commandentry_8cpp-source.html
@@ -0,0 +1,143 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/commandentry.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>commandentry.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> commandentry.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Thu Jul 20 2000</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2000-2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;unistd.h&gt;</span>
+<a name="l00020"></a>00020
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;kapplication.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;kaction.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;qmessagebox.h&gt;</span>
+<a name="l00025"></a>00025
+<a name="l00026"></a>00026 <span class="preprocessor">#include "commandentry.h"</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include "editdialog.h"</span>
+<a name="l00028"></a>00028
+<a name="l00029"></a><a class="code" href="classCommandEntry.html#199c7f73a993b784a15eb3fc5f893956">00029</a> <a class="code" href="classCommandEntry.html">CommandEntry</a>&amp; <a class="code" href="classCommandEntry.html#199c7f73a993b784a15eb3fc5f893956">CommandEntry::operator = </a>(<span class="keyword">const</span> <a class="code" href="classCommandEntry.html">CommandEntry</a>&amp; entry)
+<a name="l00030"></a>00030 {
+<a name="l00031"></a>00031 <a class="code" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">m_id</a> = entry.<a class="code" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">m_id</a>;
+<a name="l00032"></a>00032 <a class="code" href="classCommandEntry.html#12d3b1efa2768340e1b90b565a52edc6">m_name</a> = entry.<a class="code" href="classCommandEntry.html#12d3b1efa2768340e1b90b565a52edc6">m_name</a>;
+<a name="l00033"></a>00033 <a class="code" href="classCommandEntry.html#b2824de79b051470cd00b1d2b51a0ce1">m_path</a> = entry.<a class="code" href="classCommandEntry.html#b2824de79b051470cd00b1d2b51a0ce1">m_path</a>;
+<a name="l00034"></a>00034 <a class="code" href="classCommandEntry.html#ff7231796097759987dfcd3fe631bdff">m_waitForCommand</a> = entry.<a class="code" href="classCommandEntry.html#ff7231796097759987dfcd3fe631bdff">m_waitForCommand</a>;
+<a name="l00035"></a>00035 <span class="keywordflow">return</span> *<span class="keyword">this</span>;
+<a name="l00036"></a>00036 }
+<a name="l00037"></a>00037
+<a name="l00038"></a><a class="code" href="classCommandEntry.html#371ab20c14d238960b5e2054ac98a548">00038</a> <span class="keywordtype">bool</span> <a class="code" href="classCommandEntry.html#371ab20c14d238960b5e2054ac98a548">CommandEntry::exec</a> (<a class="code" href="classConfigElem.html">ConfigElem</a>* pelem, <span class="keyword">const</span> <span class="keywordtype">char</span>* header, <span class="keyword">const</span> <span class="keywordtype">char</span>* body)
+<a name="l00039"></a>00039 {
+<a name="l00040"></a>00040 kdDebug () &lt;&lt; <span class="stringliteral">"CommandEntry::exec ();"</span> &lt;&lt; endl;
+<a name="l00041"></a>00041 <span class="keywordflow">return</span> <a class="code" href="classCommandEntry.html#371ab20c14d238960b5e2054ac98a548">exec</a> (<a class="code" href="classCommandEntry.html#b2824de79b051470cd00b1d2b51a0ce1">m_path</a>, pelem, header, body);
+<a name="l00042"></a>00042 }
+<a name="l00043"></a>00043
+<a name="l00044"></a><a class="code" href="classCommandEntry.html#cd2d8c4b1d560d214e0dcbdabefe168f">00044</a> <span class="keywordtype">bool</span> <a class="code" href="classCommandEntry.html#371ab20c14d238960b5e2054ac98a548">CommandEntry::exec</a> (<span class="keyword">const</span> QString&amp; path, <a class="code" href="classConfigElem.html">ConfigElem</a>* pelem, <span class="keyword">const</span> <span class="keywordtype">char</span>* header, <span class="keyword">const</span> <span class="keywordtype">char</span>* body)
+<a name="l00045"></a>00045 {
+<a name="l00046"></a>00046 kdDebug () &lt;&lt; <span class="stringliteral">"CommandEntry::exec ("</span> &lt;&lt; path &lt;&lt; <span class="stringliteral">");"</span> &lt;&lt; endl;
+<a name="l00047"></a>00047 QString cmd = path;
+<a name="l00048"></a>00048 <span class="keywordtype">int</span> pos;
+<a name="l00049"></a>00049 <span class="keywordflow">if</span> (pelem)
+<a name="l00050"></a>00050 {
+<a name="l00051"></a>00051 <span class="keywordflow">if</span> ((pos = cmd.find (<span class="stringliteral">"&lt;user&gt;"</span>)) &gt;= 0)
+<a name="l00052"></a>00052 cmd.replace (pos, strlen (<span class="stringliteral">"&lt;user&gt;"</span>), pelem-&gt;<a class="code" href="classConfigElem.html#19f5621cac8e71c1088995bcef75596a">getUser</a>() );
+<a name="l00053"></a>00053 <span class="keywordflow">if</span> ((pos = cmd.find (<span class="stringliteral">"&lt;server&gt;"</span>)) &gt;= 0)
+<a name="l00054"></a>00054 cmd.replace (pos, strlen (<span class="stringliteral">"&lt;server&gt;"</span>), pelem-&gt;<a class="code" href="classConfigElem.html#6a7f0888c77882eda05bcc22a27947c1">getHost</a>());
+<a name="l00055"></a>00055 <span class="keywordflow">if</span> ((pos = cmd.find (<span class="stringliteral">"&lt;passwd&gt;"</span>)) &gt;= 0)
+<a name="l00056"></a>00056 cmd.replace (pos, strlen (<span class="stringliteral">"&lt;passwd&gt;"</span>), pelem-&gt;<a class="code" href="classConfigElem.html#7ea9a96f400284acce0999639659c461">getPassword</a>());
+<a name="l00057"></a>00057 }
+<a name="l00058"></a>00058 <span class="keywordflow">else</span>
+<a name="l00059"></a>00059 {
+<a name="l00060"></a>00060 <span class="keywordflow">if</span> ((pos = cmd.find (<span class="stringliteral">"&lt;user&gt;"</span>)) &gt;= 0)
+<a name="l00061"></a>00061 cmd.remove (pos, strlen (<span class="stringliteral">"&lt;user&gt;"</span>));
+<a name="l00062"></a>00062 <span class="keywordflow">if</span> ((pos = cmd.find (<span class="stringliteral">"&lt;server&gt;"</span>)) &gt;= 0)
+<a name="l00063"></a>00063 cmd.remove (pos, strlen (<span class="stringliteral">"&lt;server&gt;"</span>));
+<a name="l00064"></a>00064 <span class="keywordflow">if</span> ((pos = cmd.find (<span class="stringliteral">"&lt;passwd&gt;"</span>)) &gt;= 0)
+<a name="l00065"></a>00065 cmd.remove (pos, strlen (<span class="stringliteral">"&lt;passwd&gt;"</span>));
+<a name="l00066"></a>00066 }
+<a name="l00067"></a>00067 <span class="keywordflow">if</span> (header &amp;&amp; (pos = cmd.find (<span class="stringliteral">"&lt;header&gt;"</span>)) &gt;= 0)
+<a name="l00068"></a>00068 {
+<a name="l00069"></a>00069 FILE* tmp = fopen (<span class="stringliteral">"/tmp/spamheader"</span>, <span class="stringliteral">"w"</span>);
+<a name="l00070"></a>00070 fputs (header, tmp);
+<a name="l00071"></a>00071 fclose (tmp);
+<a name="l00072"></a>00072 cmd.replace (pos, strlen (<span class="stringliteral">"&lt;header&gt;"</span>), <span class="stringliteral">"/tmp/spamheader"</span>);
+<a name="l00073"></a>00073 }
+<a name="l00074"></a>00074 <span class="keywordflow">if</span> (body &amp;&amp; (pos = cmd.find (<span class="stringliteral">"&lt;body&gt;"</span>)) &gt;= 0)
+<a name="l00075"></a>00075 {
+<a name="l00076"></a>00076 FILE* tmp = fopen (<span class="stringliteral">"/tmp/spambody"</span>, <span class="stringliteral">"w"</span>);
+<a name="l00077"></a>00077 fputs (body, tmp);
+<a name="l00078"></a>00078 fclose (tmp);
+<a name="l00079"></a>00079 cmd.replace (pos, strlen (<span class="stringliteral">"&lt;body&gt;"</span>), <span class="stringliteral">"/tmp/spambody"</span>);
+<a name="l00080"></a>00080 }
+<a name="l00081"></a>00081 <span class="keywordtype">int</span> result = 0;
+<a name="l00082"></a>00082 <span class="keywordflow">if</span> (<a class="code" href="classCommandEntry.html#ff7231796097759987dfcd3fe631bdff">m_waitForCommand</a>) {
+<a name="l00083"></a>00083 <span class="comment">//execute the command and wait for it to return</span>
+<a name="l00084"></a>00084 FILE* output = popen (cmd, <span class="stringliteral">"r"</span>);
+<a name="l00085"></a>00085 <span class="keywordtype">char</span> buffer [81];
+<a name="l00086"></a>00086 QString str;
+<a name="l00087"></a>00087 <span class="keywordflow">while</span> (fgets (buffer, 80, output))
+<a name="l00088"></a>00088 {
+<a name="l00089"></a>00089 str += buffer;
+<a name="l00090"></a>00090 }
+<a name="l00091"></a>00091 KApplication::setOverrideCursor (Qt::arrowCursor);
+<a name="l00092"></a>00092 result = pclose (output);
+<a name="l00093"></a>00093 <span class="keywordflow">if</span> (!str.isEmpty ())
+<a name="l00094"></a>00094 {
+<a name="l00095"></a>00095 <a class="code" href="classEditDialog.html">EditDialog</a> dlg (NULL, cmd, str, <span class="keyword">false</span>);
+<a name="l00096"></a>00096 dlg.exec ();
+<a name="l00097"></a>00097 }
+<a name="l00098"></a>00098 kdDebug () &lt;&lt; cmd &lt;&lt; <span class="stringliteral">" returned "</span> &lt;&lt; result &lt;&lt; endl;
+<a name="l00099"></a>00099 }
+<a name="l00100"></a>00100 <span class="keywordflow">else</span>
+<a name="l00101"></a>00101 {
+<a name="l00102"></a>00102 <span class="comment">//execute the command and don't wait for it to return</span>
+<a name="l00103"></a>00103 <span class="keywordtype">int</span> pid;
+<a name="l00104"></a>00104 <span class="keywordflow">if</span> ((pid = fork()) == 0)
+<a name="l00105"></a>00105 {
+<a name="l00106"></a>00106 <span class="comment">// child processing; don't do any gui stuff here !</span>
+<a name="l00107"></a>00107 system (cmd);
+<a name="l00108"></a>00108 <span class="comment">// we must terminate the child process</span>
+<a name="l00109"></a>00109 exit (0);
+<a name="l00110"></a>00110 <span class="comment">// the bad thing is, we never know if the command failed. We would need some pipe.</span>
+<a name="l00111"></a>00111 }
+<a name="l00112"></a>00112 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (pid == -1)
+<a name="l00113"></a>00113 {
+<a name="l00114"></a>00114 <a class="code" href="classEditDialog.html">EditDialog</a> dlg (NULL, cmd, <span class="stringliteral">"The command failed to execute"</span>, <span class="keyword">false</span>);
+<a name="l00115"></a>00115 dlg.exec ();
+<a name="l00116"></a>00116 }
+<a name="l00117"></a>00117 }
+<a name="l00118"></a>00118 KApplication::restoreOverrideCursor ();
+<a name="l00119"></a>00119 <span class="keywordflow">return</span> (result == 0);
+<a name="l00120"></a>00120 }
+<a name="l00121"></a>00121
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/commandentry_8h-source.html b/doc/html/commandentry_8h-source.html
new file mode 100644
index 0000000..9e53f18
--- /dev/null
+++ b/doc/html/commandentry_8h-source.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/commandentry.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>commandentry.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> commandentry.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Thu Jul 20 2000</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2000-2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef COMMANDENTRY_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define COMMANDENTRY_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qdialog.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qpopupmenu.h&gt;</span>
+<a name="l00023"></a>00023
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;ktoolbar.h&gt;</span>
+<a name="l00025"></a>00025
+<a name="l00026"></a>00026 <span class="preprocessor">#include "configelem.h"</span>
+<a name="l00027"></a>00027
+<a name="l00031"></a>00031 <span class="keyword">class </span><a class="code" href="classConfigElem.html">ConfigElem</a>;
+<a name="l00032"></a>00032
+<a name="l00033"></a><a class="code" href="classCommandEntry.html">00033</a> <span class="keyword">class </span><a class="code" href="classCommandEntry.html">CommandEntry</a>
+<a name="l00034"></a>00034 {
+<a name="l00035"></a>00035 <span class="keyword">public</span>:
+<a name="l00036"></a><a class="code" href="classCommandEntry.html#37d1d204b27f43a7585419910f427ef6">00036</a> <a class="code" href="classCommandEntry.html#37d1d204b27f43a7585419910f427ef6">CommandEntry</a> () {};
+<a name="l00037"></a><a class="code" href="classCommandEntry.html#3e849f75a242e963cd2a2ea10f24add9">00037</a> <a class="code" href="classCommandEntry.html#37d1d204b27f43a7585419910f427ef6">CommandEntry</a> (<span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keyword">const</span> <span class="keywordtype">char</span>* path, <span class="keyword">const</span> <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keyword">const</span> <span class="keywordtype">bool</span> modal)
+<a name="l00038"></a>00038 : <a class="code" href="classCommandEntry.html#12d3b1efa2768340e1b90b565a52edc6">m_name</a> (name), <a class="code" href="classCommandEntry.html#b2824de79b051470cd00b1d2b51a0ce1">m_path</a> (path), <a class="code" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">m_id</a> (id), <a class="code" href="classCommandEntry.html#ff7231796097759987dfcd3fe631bdff">m_waitForCommand</a> (modal) {};
+<a name="l00039"></a><a class="code" href="classCommandEntry.html#cad226ce36530384dcf7cbe58c25fa8c">00039</a> <a class="code" href="classCommandEntry.html#37d1d204b27f43a7585419910f427ef6">CommandEntry</a> (<span class="keyword">const</span> <a class="code" href="classCommandEntry.html">CommandEntry</a>* copy)
+<a name="l00040"></a>00040 : <a class="code" href="classCommandEntry.html#12d3b1efa2768340e1b90b565a52edc6">m_name</a> (copy-&gt;<a class="code" href="classCommandEntry.html#12d3b1efa2768340e1b90b565a52edc6">m_name</a>), <a class="code" href="classCommandEntry.html#b2824de79b051470cd00b1d2b51a0ce1">m_path</a> (copy-&gt;<a class="code" href="classCommandEntry.html#b2824de79b051470cd00b1d2b51a0ce1">m_path</a>), <a class="code" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">m_id</a> (copy-&gt;<a class="code" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">m_id</a>), <a class="code" href="classCommandEntry.html#ff7231796097759987dfcd3fe631bdff">m_waitForCommand</a> (copy-&gt;<a class="code" href="classCommandEntry.html#ff7231796097759987dfcd3fe631bdff">m_waitForCommand</a>) {};
+<a name="l00041"></a>00041 <a class="code" href="classCommandEntry.html">CommandEntry</a>&amp; <a class="code" href="classCommandEntry.html#199c7f73a993b784a15eb3fc5f893956">operator = </a>(<span class="keyword">const</span> <a class="code" href="classCommandEntry.html">CommandEntry</a>&amp; entry);
+<a name="l00042"></a>00042 <span class="keywordtype">bool</span> <a class="code" href="classCommandEntry.html#371ab20c14d238960b5e2054ac98a548">exec</a> (<a class="code" href="classConfigElem.html">ConfigElem</a>* pelem = NULL, <span class="keyword">const</span> <span class="keywordtype">char</span>* header = NULL, <span class="keyword">const</span> <span class="keywordtype">char</span>* body = NULL);
+<a name="l00043"></a>00043 <span class="keywordtype">bool</span> <a class="code" href="classCommandEntry.html#371ab20c14d238960b5e2054ac98a548">exec</a> (<span class="keyword">const</span> QString&amp; path, <a class="code" href="classConfigElem.html">ConfigElem</a>* pelem, <span class="keyword">const</span> <span class="keywordtype">char</span>* header = NULL, <span class="keyword">const</span> <span class="keywordtype">char</span>* body = NULL);
+<a name="l00044"></a><a class="code" href="classCommandEntry.html#12d3b1efa2768340e1b90b565a52edc6">00044</a> QString <a class="code" href="classCommandEntry.html#12d3b1efa2768340e1b90b565a52edc6">m_name</a>;
+<a name="l00045"></a><a class="code" href="classCommandEntry.html#b2824de79b051470cd00b1d2b51a0ce1">00045</a> QString <a class="code" href="classCommandEntry.html#b2824de79b051470cd00b1d2b51a0ce1">m_path</a>;
+<a name="l00046"></a><a class="code" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">00046</a> <span class="keywordtype">int</span> <a class="code" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">m_id</a>;
+<a name="l00047"></a><a class="code" href="classCommandEntry.html#ff7231796097759987dfcd3fe631bdff">00047</a> <span class="keywordtype">bool</span> <a class="code" href="classCommandEntry.html#ff7231796097759987dfcd3fe631bdff">m_waitForCommand</a>;
+<a name="l00048"></a>00048 };
+<a name="l00049"></a>00049
+<a name="l00050"></a>00050 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/commandentrydialog_8cpp-source.html b/doc/html/commandentrydialog_8cpp-source.html
new file mode 100644
index 0000000..fae9542
--- /dev/null
+++ b/doc/html/commandentrydialog_8cpp-source.html
@@ -0,0 +1,91 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/commandentrydialog.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>commandentrydialog.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> commandentrydialog.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Wed Oct 31 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qwidget.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qlineedit.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qfileinfo.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qfiledialog.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qcheckbox.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include "commandentry.h"</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include "commandentrydialog.h"</span>
+<a name="l00026"></a>00026
+<a name="l00027"></a><a class="code" href="classCommandEntryDialog.html#eb206b2dc7ed4061415c836beb462c94">00027</a> <a class="code" href="classCommandEntryDialog.html#eb206b2dc7ed4061415c836beb462c94">CommandEntryDialog::CommandEntryDialog</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="classCommandEntry.html">CommandEntry</a>* entry, <a class="code" href="classConfigElem.html">ConfigElem</a>* pConfigElem):
+<a name="l00028"></a>00028 <a class="code" href="classCommandEntryDlg.html">CommandEntryDlg</a>(parent,name,true),
+<a name="l00029"></a>00029 m_pentry (entry),
+<a name="l00030"></a>00030 m_pConfigElem (pConfigElem)
+<a name="l00031"></a>00031 {
+<a name="l00032"></a>00032 <a class="code" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">m_EditName</a>-&gt;setText (entry-&gt;<a class="code" href="classCommandEntry.html#12d3b1efa2768340e1b90b565a52edc6">m_name</a>);
+<a name="l00033"></a>00033 <a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a>-&gt;setText (entry-&gt;<a class="code" href="classCommandEntry.html#b2824de79b051470cd00b1d2b51a0ce1">m_path</a>);
+<a name="l00034"></a>00034 <a class="code" href="classCommandEntryDlg.html#49ab519895b715e68dd255587718b641">m_checkModal</a>-&gt;setChecked(entry-&gt;<a class="code" href="classCommandEntry.html#ff7231796097759987dfcd3fe631bdff">m_waitForCommand</a>);
+<a name="l00035"></a>00035 <a class="code" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">m_EditName</a>-&gt;setFocus ();
+<a name="l00036"></a>00036 }
+<a name="l00037"></a>00037
+<a name="l00038"></a><a class="code" href="classCommandEntryDialog.html#6f23e608879e8835078176de5d48756f">00038</a> <a class="code" href="classCommandEntryDialog.html#6f23e608879e8835078176de5d48756f">CommandEntryDialog::~CommandEntryDialog</a>(){
+<a name="l00039"></a>00039 }
+<a name="l00040"></a>00040
+<a name="l00041"></a><a class="code" href="classCommandEntryDialog.html#faba9a230098cd59984d36ba723c7015">00041</a> <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDialog.html#faba9a230098cd59984d36ba723c7015">CommandEntryDialog::slotPath</a> ()
+<a name="l00042"></a>00042 {
+<a name="l00043"></a>00043 QFileInfo info (<a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a>-&gt;text ());
+<a name="l00044"></a>00044 QString dir = info.dirPath ();
+<a name="l00045"></a>00045 QFileDialog dlg (<span class="keyword">this</span>, <span class="stringliteral">"Command"</span>, TRUE);
+<a name="l00046"></a>00046 dlg.setCaption (i18n(<span class="stringliteral">"Select Command"</span>));
+<a name="l00047"></a>00047 dlg.setDir (dir);
+<a name="l00048"></a>00048 dlg.setMode (QFileDialog::ExistingFile);
+<a name="l00049"></a>00049 <span class="keywordflow">if</span> (dlg.exec () == QDialog::Accepted)
+<a name="l00050"></a>00050 <a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a>-&gt;setText (dlg.selectedFile());
+<a name="l00051"></a>00051 }
+<a name="l00052"></a>00052
+<a name="l00053"></a><a class="code" href="classCommandEntryDialog.html#8187f0d92fcd9aae910cfb882bf8745e">00053</a> <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDialog.html#8187f0d92fcd9aae910cfb882bf8745e">CommandEntryDialog::slotOk</a> ()
+<a name="l00054"></a>00054 {
+<a name="l00055"></a>00055 QString name = <a class="code" href="classCommandEntryDlg.html#ad145bf81ac6c124364a9f37990e1736">m_EditName</a>-&gt;text();
+<a name="l00056"></a>00056 QString path = <a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a>-&gt;text();
+<a name="l00057"></a>00057 <span class="keywordflow">if</span> (!name.isEmpty() &amp;&amp; !path.isEmpty())
+<a name="l00058"></a>00058 {
+<a name="l00059"></a>00059 <a class="code" href="classCommandEntryDialog.html#a9cc8cd62488ed8553a10629efd05493">m_pentry</a>-&gt;<a class="code" href="classCommandEntry.html#12d3b1efa2768340e1b90b565a52edc6">m_name</a> = name;
+<a name="l00060"></a>00060 <a class="code" href="classCommandEntryDialog.html#a9cc8cd62488ed8553a10629efd05493">m_pentry</a>-&gt;<a class="code" href="classCommandEntry.html#b2824de79b051470cd00b1d2b51a0ce1">m_path</a> = path;
+<a name="l00061"></a>00061 <a class="code" href="classCommandEntryDialog.html#a9cc8cd62488ed8553a10629efd05493">m_pentry</a>-&gt;<a class="code" href="classCommandEntry.html#ff7231796097759987dfcd3fe631bdff">m_waitForCommand</a> = <a class="code" href="classCommandEntryDlg.html#49ab519895b715e68dd255587718b641">m_checkModal</a>-&gt;isChecked();
+<a name="l00062"></a>00062 accept ();
+<a name="l00063"></a>00063 }
+<a name="l00064"></a>00064 }
+<a name="l00065"></a>00065
+<a name="l00066"></a><a class="code" href="classCommandEntryDialog.html#875065ff0abfde7cf8a673de0423b3e2">00066</a> <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDialog.html#875065ff0abfde7cf8a673de0423b3e2">CommandEntryDialog::slotTest</a> ()
+<a name="l00067"></a>00067 {
+<a name="l00068"></a>00068 <a class="code" href="classCommandEntryDialog.html#a9cc8cd62488ed8553a10629efd05493">m_pentry</a>-&gt;<a class="code" href="classCommandEntry.html#371ab20c14d238960b5e2054ac98a548">exec</a> (<a class="code" href="classCommandEntryDlg.html#5075918262a60e47f82fbd07e7f20e28">m_EditPath</a>-&gt;text(), <a class="code" href="classCommandEntryDialog.html#a7e4e602a8d726fdb9cb2b65f86a5831">m_pConfigElem</a>);
+<a name="l00069"></a>00069 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/commandentrydialog_8h-source.html b/doc/html/commandentrydialog_8h-source.html
new file mode 100644
index 0000000..b091588
--- /dev/null
+++ b/doc/html/commandentrydialog_8h-source.html
@@ -0,0 +1,63 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/commandentrydialog.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>commandentrydialog.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> commandentrydialog.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Wed Oct 31 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef COMMANDENTRYDIALOG_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define COMMANDENTRYDIALOG_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qwidget.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "commandentry.h"</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include "CommandEntryDlg.h"</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include "configelem.h"</span>
+<a name="l00025"></a>00025
+<a name="l00030"></a><a class="code" href="classCommandEntryDialog.html">00030</a> <span class="keyword">class </span><a class="code" href="classCommandEntryDialog.html">CommandEntryDialog</a> : <span class="keyword">public</span> <a class="code" href="classCommandEntryDlg.html">CommandEntryDlg</a>
+<a name="l00031"></a>00031 {
+<a name="l00032"></a>00032 Q_OBJECT
+<a name="l00033"></a>00033 <span class="keyword">public</span>:
+<a name="l00034"></a>00034 <a class="code" href="classCommandEntryDialog.html#eb206b2dc7ed4061415c836beb462c94">CommandEntryDialog</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="classCommandEntry.html">CommandEntry</a>* entry, <a class="code" href="classConfigElem.html">ConfigElem</a>* pConfigElem);
+<a name="l00035"></a>00035 <a class="code" href="classCommandEntryDialog.html#6f23e608879e8835078176de5d48756f">~CommandEntryDialog</a>();
+<a name="l00036"></a>00036 <span class="keyword">private</span> slots:
+<a name="l00037"></a>00037 <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDialog.html#faba9a230098cd59984d36ba723c7015">slotPath</a> ();
+<a name="l00038"></a>00038 <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDialog.html#875065ff0abfde7cf8a673de0423b3e2">slotTest</a> ();
+<a name="l00039"></a>00039 <span class="keywordtype">void</span> <a class="code" href="classCommandEntryDialog.html#8187f0d92fcd9aae910cfb882bf8745e">slotOk</a> ();
+<a name="l00040"></a>00040 <span class="keyword">private</span>:
+<a name="l00041"></a><a class="code" href="classCommandEntryDialog.html#a9cc8cd62488ed8553a10629efd05493">00041</a> <a class="code" href="classCommandEntry.html">CommandEntry</a>* <a class="code" href="classCommandEntryDialog.html#a9cc8cd62488ed8553a10629efd05493">m_pentry</a>;
+<a name="l00042"></a><a class="code" href="classCommandEntryDialog.html#a7e4e602a8d726fdb9cb2b65f86a5831">00042</a> <a class="code" href="classConfigElem.html">ConfigElem</a>* <a class="code" href="classCommandEntryDialog.html#a7e4e602a8d726fdb9cb2b65f86a5831">m_pConfigElem</a>;
+<a name="l00043"></a>00043 };
+<a name="l00044"></a>00044
+<a name="l00045"></a>00045 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/commandentrydialog_8moc_8cpp-source.html b/doc/html/commandentrydialog_8moc_8cpp-source.html
new file mode 100644
index 0000000..d6439ed
--- /dev/null
+++ b/doc/html/commandentrydialog_8moc_8cpp-source.html
@@ -0,0 +1,129 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/commandentrydialog.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>commandentrydialog.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** CommandEntryDialog meta object code from reading C++ file 'commandentrydialog.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Tue May 15 19:57:53 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: commandentrydialog_8moc_8cpp-source.html,v 1.8 2007/05/16 20:12:00 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "commandentrydialog.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *CommandEntryDialog::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"CommandEntryDialog"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *CommandEntryDialog::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_CommandEntryDialog( <span class="stringliteral">"CommandEntryDialog"</span>, &amp;CommandEntryDialog::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString CommandEntryDialog::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"CommandEntryDialog"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString CommandEntryDialog::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"CommandEntryDialog"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* CommandEntryDialog::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = CommandEntryDlg::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotPath"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotTest"</span>, 0, 0 };
+<a name="l00057"></a>00057 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_2 = {<span class="stringliteral">"slotOk"</span>, 0, 0 };
+<a name="l00058"></a>00058 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00059"></a>00059 { <span class="stringliteral">"slotPath()"</span>, &amp;slot_0, QMetaData::Private },
+<a name="l00060"></a>00060 { <span class="stringliteral">"slotTest()"</span>, &amp;slot_1, QMetaData::Private },
+<a name="l00061"></a>00061 { <span class="stringliteral">"slotOk()"</span>, &amp;slot_2, QMetaData::Private }
+<a name="l00062"></a>00062 };
+<a name="l00063"></a>00063 metaObj = QMetaObject::new_metaobject(
+<a name="l00064"></a>00064 <span class="stringliteral">"CommandEntryDialog"</span>, parentObject,
+<a name="l00065"></a>00065 slot_tbl, 3,
+<a name="l00066"></a>00066 0, 0,
+<a name="l00067"></a>00067 #ifndef QT_NO_PROPERTIES
+<a name="l00068"></a>00068 0, 0,
+<a name="l00069"></a>00069 0, 0,
+<a name="l00070"></a>00070 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00071"></a>00071 0, 0 );
+<a name="l00072"></a>00072 cleanUp_CommandEntryDialog.setMetaObject( metaObj );
+<a name="l00073"></a>00073 <span class="keywordflow">return</span> metaObj;
+<a name="l00074"></a>00074 }
+<a name="l00075"></a>00075
+<a name="l00076"></a>00076 <span class="keywordtype">void</span>* CommandEntryDialog::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00077"></a>00077 {
+<a name="l00078"></a>00078 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"CommandEntryDialog"</span> ) )
+<a name="l00079"></a>00079 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00080"></a>00080 <span class="keywordflow">return</span> CommandEntryDlg::qt_cast( clname );
+<a name="l00081"></a>00081 }
+<a name="l00082"></a>00082
+<a name="l00083"></a>00083 <span class="keywordtype">bool</span> CommandEntryDialog::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00084"></a>00084 {
+<a name="l00085"></a>00085 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00086"></a>00086 <span class="keywordflow">case</span> 0: <a class="code" href="classCommandEntryDialog.html#faba9a230098cd59984d36ba723c7015">slotPath</a>(); <span class="keywordflow">break</span>;
+<a name="l00087"></a>00087 <span class="keywordflow">case</span> 1: <a class="code" href="classCommandEntryDialog.html#875065ff0abfde7cf8a673de0423b3e2">slotTest</a>(); <span class="keywordflow">break</span>;
+<a name="l00088"></a>00088 <span class="keywordflow">case</span> 2: <a class="code" href="classCommandEntryDialog.html#8187f0d92fcd9aae910cfb882bf8745e">slotOk</a>(); <span class="keywordflow">break</span>;
+<a name="l00089"></a>00089 <span class="keywordflow">default</span>:
+<a name="l00090"></a>00090 <span class="keywordflow">return</span> CommandEntryDlg::qt_invoke( _id, _o );
+<a name="l00091"></a>00091 }
+<a name="l00092"></a>00092 <span class="keywordflow">return</span> TRUE;
+<a name="l00093"></a>00093 }
+<a name="l00094"></a>00094
+<a name="l00095"></a>00095 <span class="keywordtype">bool</span> CommandEntryDialog::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00096"></a>00096 {
+<a name="l00097"></a>00097 <span class="keywordflow">return</span> CommandEntryDlg::qt_emit(_id,_o);
+<a name="l00098"></a>00098 }
+<a name="l00099"></a>00099 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00100"></a>00100 <span class="preprocessor"></span>
+<a name="l00101"></a>00101 <span class="keywordtype">bool</span> CommandEntryDialog::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00102"></a>00102 {
+<a name="l00103"></a>00103 <span class="keywordflow">return</span> CommandEntryDlg::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00104"></a>00104 }
+<a name="l00105"></a>00105
+<a name="l00106"></a>00106 <span class="keywordtype">bool</span> CommandEntryDialog::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00107"></a>00107 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/commandlist_8cpp-source.html b/doc/html/commandlist_8cpp-source.html
new file mode 100644
index 0000000..913d2df
--- /dev/null
+++ b/doc/html/commandlist_8cpp-source.html
@@ -0,0 +1,153 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/commandlist.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>commandlist.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> commandlist.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Wed Oct 31 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include "commandentry.h"</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include "commandlist.h"</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a><a class="code" href="classCommandList.html#a5cc72c5c68da1d3e18f808da93025c6">00022</a> <a class="code" href="classCommandList.html#a5cc72c5c68da1d3e18f808da93025c6">CommandList::CommandList</a>()
+<a name="l00023"></a>00023 {
+<a name="l00024"></a>00024 setAutoDelete (<span class="keyword">true</span>);
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a><a class="code" href="classCommandList.html#ada18ff9b6162b3ca25b9e4c28a05031">00027</a> <a class="code" href="classCommandList.html#ada18ff9b6162b3ca25b9e4c28a05031">CommandList::~CommandList</a>()
+<a name="l00028"></a>00028 {
+<a name="l00029"></a>00029 }
+<a name="l00030"></a>00030
+<a name="l00031"></a><a class="code" href="classCommandList.html#e5a8632fb53943a8ec5b8edfa268e668">00031</a> <span class="keywordtype">void</span> <a class="code" href="classCommandList.html#e5a8632fb53943a8ec5b8edfa268e668">CommandList::setCombo</a> (QComboBox* combo, <span class="keywordtype">int</span> nIndex)
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 combo-&gt;clear ();
+<a name="l00034"></a>00034 <span class="keywordflow">for</span> (<a class="code" href="classCommandEntry.html">CommandEntry</a>* pElem = first(); pElem; pElem = next())
+<a name="l00035"></a>00035 {
+<a name="l00036"></a>00036 combo-&gt;insertItem (pElem-&gt;m_name);
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="keywordflow">if</span> (nIndex &gt;= 0)
+<a name="l00039"></a>00039 {
+<a name="l00040"></a>00040 at (nIndex);
+<a name="l00041"></a>00041 combo-&gt;setCurrentItem (nIndex);
+<a name="l00042"></a>00042 }
+<a name="l00043"></a>00043 }
+<a name="l00044"></a>00044
+<a name="l00045"></a><a class="code" href="classCommandList.html#5db2a340101b2c274fa4691e4a90caa9">00045</a> <a class="code" href="classCommandList.html">CommandList</a>&amp; <a class="code" href="classCommandList.html#5db2a340101b2c274fa4691e4a90caa9">CommandList::operator = </a>(<a class="code" href="classCommandList.html">CommandList</a>&amp; list)
+<a name="l00046"></a>00046 {
+<a name="l00047"></a>00047 clear ();
+<a name="l00048"></a>00048 <span class="keywordtype">int</span> nIndex = list.at ();
+<a name="l00049"></a>00049 <span class="keywordflow">for</span> (<a class="code" href="classCommandEntry.html">CommandEntry</a>* item = list.first (); item; item = list.next ())
+<a name="l00050"></a>00050 {
+<a name="l00051"></a>00051 append (<span class="keyword">new</span> <a class="code" href="classCommandEntry.html">CommandEntry</a> (item));
+<a name="l00052"></a>00052 }
+<a name="l00053"></a>00053 at (nIndex);
+<a name="l00054"></a>00054 <span class="keywordflow">return</span> *<span class="keyword">this</span>;
+<a name="l00055"></a>00055 }
+<a name="l00056"></a>00056
+<a name="l00057"></a><a class="code" href="classCommandList.html#99f8a7c87e09a186bd5664638b704619">00057</a> <span class="keywordtype">bool</span> <a class="code" href="classCommandList.html#99f8a7c87e09a186bd5664638b704619">CommandList::exec</a> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <a class="code" href="classConfigElem.html">ConfigElem</a>* pelem, <span class="keyword">const</span> <span class="keywordtype">char</span>* header, <span class="keyword">const</span> <span class="keywordtype">char</span>* body)
+<a name="l00058"></a>00058 {
+<a name="l00059"></a>00059 <span class="keywordtype">bool</span> result = <span class="keyword">false</span>;
+<a name="l00060"></a>00060 <a class="code" href="classCommandEntry.html">CommandEntry</a>* test = <span class="keyword">new</span> <a class="code" href="classCommandEntry.html">CommandEntry</a> (NULL, NULL, <span class="keywordtype">id</span>, <span class="keyword">true</span>);
+<a name="l00061"></a>00061 <span class="keywordtype">int</span> pos = find (test);
+<a name="l00062"></a>00062 <span class="keywordflow">if</span> (pos &gt;= 0)
+<a name="l00063"></a>00063 {
+<a name="l00064"></a>00064 result = at (pos)-&gt;exec (pelem, header, body);
+<a name="l00065"></a>00065 }
+<a name="l00066"></a>00066 <span class="keywordflow">else</span>
+<a name="l00067"></a>00067 kdError () &lt;&lt; <span class="stringliteral">"No ID "</span> &lt;&lt; <span class="keywordtype">id</span> &lt;&lt; <span class="stringliteral">" found in commandlist."</span> &lt;&lt; endl;
+<a name="l00068"></a>00068 <span class="keyword">delete</span> test;
+<a name="l00069"></a>00069 <span class="keywordflow">return</span> result;
+<a name="l00070"></a>00070 }
+<a name="l00071"></a>00071
+<a name="l00072"></a><a class="code" href="classCommandList.html#7450f5fc2f7d1fafd3b490f5d39a72e3">00072</a> <span class="keywordtype">bool</span> <a class="code" href="classCommandList.html#99f8a7c87e09a186bd5664638b704619">CommandList::exec</a> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pos, <a class="code" href="classConfigElem.html">ConfigElem</a>* pelem)
+<a name="l00073"></a>00073 {
+<a name="l00074"></a>00074 <span class="comment">// command may have bee deleted</span>
+<a name="l00075"></a>00075 <span class="keywordflow">if</span> (pos &lt; count ())
+<a name="l00076"></a>00076 <span class="keywordflow">return</span> at (pos)-&gt;exec (pelem);
+<a name="l00077"></a>00077 <span class="keywordflow">else</span>
+<a name="l00078"></a>00078 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00079"></a>00079 }
+<a name="l00080"></a>00080
+<a name="l00081"></a><a class="code" href="classCommandList.html#75139c46235d0453af653bfaf9018a11">00081</a> <span class="keywordtype">int</span> <a class="code" href="classCommandList.html#75139c46235d0453af653bfaf9018a11">CommandList::compareItems</a> (QCollection::Item item1, QCollection::Item item2 )
+<a name="l00082"></a>00082 {
+<a name="l00083"></a>00083 <a class="code" href="classCommandEntry.html">CommandEntry</a>* entry1 = (<a class="code" href="classCommandEntry.html">CommandEntry</a>*) item1;
+<a name="l00084"></a>00084 <a class="code" href="classCommandEntry.html">CommandEntry</a>* entry2 = (<a class="code" href="classCommandEntry.html">CommandEntry</a>*) item2;
+<a name="l00085"></a>00085 <span class="keywordflow">if</span> (entry1-&gt;<a class="code" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">m_id</a> &gt; entry2-&gt;<a class="code" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">m_id</a>)
+<a name="l00086"></a>00086 <span class="keywordflow">return</span> 1;
+<a name="l00087"></a>00087 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (entry1-&gt;<a class="code" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">m_id</a> == entry2-&gt;<a class="code" href="classCommandEntry.html#5f1098dd21df36fae20591ba0fc9a5fa">m_id</a>)
+<a name="l00088"></a>00088 <span class="keywordflow">return</span> 0;
+<a name="l00089"></a>00089 <span class="keywordflow">else</span> <span class="keywordflow">return</span> -1;
+<a name="l00090"></a>00090 }
+<a name="l00091"></a>00091
+<a name="l00092"></a><a class="code" href="classCommandList.html#5037135701a78aadeebc9520df6abf2b">00092</a> QCollection::Item <a class="code" href="classCommandList.html#5037135701a78aadeebc9520df6abf2b">CommandList::newItem</a> (QCollection::Item d)
+<a name="l00093"></a>00093 {
+<a name="l00094"></a>00094 <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classCommandEntry.html">CommandEntry</a> ((<a class="code" href="classCommandEntry.html">CommandEntry</a>*)d);
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096
+<a name="l00097"></a><a class="code" href="classCommandList.html#154b13cfab656e47790f1f12f92401a4">00097</a> <span class="keywordtype">void</span> <a class="code" href="classCommandList.html#154b13cfab656e47790f1f12f92401a4">CommandList::readOptions</a> (KConfig* config)
+<a name="l00098"></a>00098 {
+<a name="l00099"></a>00099 config-&gt;setGroup (<span class="stringliteral">"usercommands"</span>);
+<a name="l00100"></a>00100 <span class="keywordtype">bool</span> goon = <span class="keyword">true</span>;
+<a name="l00101"></a>00101 <span class="keywordtype">int</span> i = 0;
+<a name="l00102"></a>00102 <span class="keywordflow">while</span> (goon)
+<a name="l00103"></a>00103 {
+<a name="l00104"></a>00104 QString cmd (config-&gt;readEntry (QString (<span class="stringliteral">"cmd%1"</span>).arg(i)));
+<a name="l00105"></a>00105 <span class="keywordflow">if</span> (!cmd.isEmpty ())
+<a name="l00106"></a>00106 {
+<a name="l00107"></a>00107 QString path = config-&gt;readEntry (QString(<span class="stringliteral">"path%1"</span>).arg(i));
+<a name="l00108"></a>00108 <span class="keywordtype">int</span> <span class="keywordtype">id</span> = config-&gt;readNumEntry (QString(<span class="stringliteral">"id%1"</span>).arg(i));
+<a name="l00109"></a>00109 <span class="keywordtype">bool</span> modal = config-&gt;readBoolEntry (QString(<span class="stringliteral">"modal%1"</span>).arg(i), <span class="keyword">true</span>);
+<a name="l00110"></a>00110 append (<span class="keyword">new</span> <a class="code" href="classCommandEntry.html">CommandEntry</a> (cmd, path, <span class="keywordtype">id</span>, modal));
+<a name="l00111"></a>00111 i++;
+<a name="l00112"></a>00112 }
+<a name="l00113"></a>00113 <span class="keywordflow">else</span>
+<a name="l00114"></a>00114 goon = <span class="keyword">false</span>;
+<a name="l00115"></a>00115 }
+<a name="l00116"></a>00116 <span class="keywordflow">if</span> (i &gt; 0)
+<a name="l00117"></a>00117 at (0);
+<a name="l00118"></a>00118 }
+<a name="l00119"></a>00119
+<a name="l00120"></a><a class="code" href="classCommandList.html#49d6d504715977b9d20fbc931ab62641">00120</a> <span class="keywordtype">void</span> <a class="code" href="classCommandList.html#49d6d504715977b9d20fbc931ab62641">CommandList::saveOptions</a> (KConfig* config)
+<a name="l00121"></a>00121 {
+<a name="l00122"></a>00122 kdDebug () &lt;&lt; <span class="stringliteral">"CommandList::saveOptions"</span> &lt;&lt; endl;
+<a name="l00123"></a>00123 config-&gt;setGroup (<span class="stringliteral">"usercommands"</span>);
+<a name="l00124"></a>00124 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; count (); i++)
+<a name="l00125"></a>00125 {
+<a name="l00126"></a>00126 config-&gt;writeEntry (QString(<span class="stringliteral">"cmd%1"</span>).arg(i), at(i)-&gt;m_name);
+<a name="l00127"></a>00127 config-&gt;writeEntry (QString(<span class="stringliteral">"path%1"</span>).arg(i), at(i)-&gt;m_path);
+<a name="l00128"></a>00128 config-&gt;writeEntry (QString(<span class="stringliteral">"id%1"</span>).arg(i), at(i)-&gt;m_id);
+<a name="l00129"></a>00129 config-&gt;writeEntry (QString(<span class="stringliteral">"modal%1"</span>).arg(i), at(i)-&gt;m_waitForCommand);
+<a name="l00130"></a>00130 }
+<a name="l00131"></a>00131 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/commandlist_8h-source.html b/doc/html/commandlist_8h-source.html
new file mode 100644
index 0000000..651391b
--- /dev/null
+++ b/doc/html/commandlist_8h-source.html
@@ -0,0 +1,66 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/commandlist.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>commandlist.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> commandlist.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Wed Oct 31 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef COMMANDLIST_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define COMMANDLIST_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qptrlist.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "configelem.h"</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include "commandentry.h"</span>
+<a name="l00024"></a>00024
+<a name="l00028"></a>00028 <span class="keyword">class </span><a class="code" href="classCommandEntry.html">CommandEntry</a>;
+<a name="l00029"></a>00029 <span class="keyword">class </span><a class="code" href="classConfigElem.html">ConfigElem</a>;
+<a name="l00030"></a>00030
+<a name="l00031"></a><a class="code" href="classCommandList.html">00031</a> <span class="keyword">class </span><a class="code" href="classCommandList.html">CommandList</a> : <span class="keyword">public</span> QPtrList&lt;CommandEntry&gt;
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keyword">public</span>:
+<a name="l00034"></a>00034 <a class="code" href="classCommandList.html#a5cc72c5c68da1d3e18f808da93025c6">CommandList</a> ();
+<a name="l00035"></a>00035 <span class="keyword">virtual</span> <a class="code" href="classCommandList.html#ada18ff9b6162b3ca25b9e4c28a05031">~CommandList</a>();
+<a name="l00036"></a>00036 <span class="keywordtype">void</span> <a class="code" href="classCommandList.html#e5a8632fb53943a8ec5b8edfa268e668">setCombo</a> (QComboBox* combo, <span class="keywordtype">int</span> nIndex);
+<a name="l00037"></a>00037 <a class="code" href="classCommandList.html">CommandList</a>&amp; <a class="code" href="classCommandList.html#5db2a340101b2c274fa4691e4a90caa9">operator = </a>(<a class="code" href="classCommandList.html">CommandList</a>&amp; right);
+<a name="l00038"></a>00038 <span class="keywordtype">bool</span> <a class="code" href="classCommandList.html#99f8a7c87e09a186bd5664638b704619">exec</a> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <a class="code" href="classConfigElem.html">ConfigElem</a>* pelem, <span class="keyword">const</span> <span class="keywordtype">char</span>* header, <span class="keyword">const</span> <span class="keywordtype">char</span>* body);
+<a name="l00039"></a>00039 <span class="keywordtype">bool</span> <a class="code" href="classCommandList.html#99f8a7c87e09a186bd5664638b704619">exec</a> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pos, <a class="code" href="classConfigElem.html">ConfigElem</a>* pelem);
+<a name="l00040"></a>00040 <span class="keywordtype">void</span> <a class="code" href="classCommandList.html#154b13cfab656e47790f1f12f92401a4">readOptions</a> (KConfig* config);
+<a name="l00041"></a>00041 <span class="keywordtype">void</span> <a class="code" href="classCommandList.html#49d6d504715977b9d20fbc931ab62641">saveOptions</a> (KConfig* config);
+<a name="l00042"></a>00042 <span class="keyword">protected</span>:
+<a name="l00043"></a>00043 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classCommandList.html#75139c46235d0453af653bfaf9018a11">compareItems</a> (QCollection::Item item1, QCollection::Item item2);
+<a name="l00044"></a>00044 <span class="keyword">virtual</span> QCollection::Item <a class="code" href="classCommandList.html#5037135701a78aadeebc9520df6abf2b">newItem</a> (QCollection::Item d);
+<a name="l00045"></a>00045 };
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/config_8h-source.html b/doc/html/config_8h-source.html
new file mode 100644
index 0000000..1f431a6
--- /dev/null
+++ b/doc/html/config_8h-source.html
@@ -0,0 +1,265 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/config.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a></div>
+<h1>config.h</h1><a href="config_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* config.h. Generated from config.h.in by configure. */</span>
+<a name="l00002"></a>00002 <span class="comment">/* config.h.in. Generated from configure.in by autoheader. */</span>
+<a name="l00003"></a>00003
+<a name="l00004"></a>00004 <span class="comment">/* Define to 1 if you have the &lt;Carbon/Carbon.h&gt; header file. */</span>
+<a name="l00005"></a>00005 <span class="comment">/* #undef HAVE_CARBON_CARBON_H */</span>
+<a name="l00006"></a>00006
+<a name="l00007"></a>00007 <span class="comment">/* Define if you have the CoreAudio API */</span>
+<a name="l00008"></a>00008 <span class="comment">/* #undef HAVE_COREAUDIO */</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="comment">/* Define to 1 if you have the &lt;crt_externs.h&gt; header file. */</span>
+<a name="l00011"></a>00011 <span class="comment">/* #undef HAVE_CRT_EXTERNS_H */</span>
+<a name="l00012"></a>00012
+<a name="l00013"></a>00013 <span class="comment">/* Defines if your system has the crypt function */</span>
+<a name="l00014"></a><a class="code" href="config_8h.html#cba86befdbaa214237a79fe6272ea219">00014</a> <span class="preprocessor">#define HAVE_CRYPT 1</span>
+<a name="l00015"></a>00015 <span class="preprocessor"></span>
+<a name="l00016"></a>00016 <span class="comment">/* Define to 1 if you have the &lt;dlfcn.h&gt; header file. */</span>
+<a name="l00017"></a><a class="code" href="config_8h.html#0ee1617ff2f6885ef384a3dd46f9b9d7">00017</a> <span class="preprocessor">#define HAVE_DLFCN_H 1</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span>
+<a name="l00019"></a>00019 <span class="comment">/* Define to 1 if you have the &lt;inttypes.h&gt; header file. */</span>
+<a name="l00020"></a><a class="code" href="config_8h.html#b90a030ff2790ebdc176660a6dd2a478">00020</a> <span class="preprocessor">#define HAVE_INTTYPES_H 1</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="comment">/* Define if you have libjpeg */</span>
+<a name="l00023"></a><a class="code" href="config_8h.html#538da5552d4d4982205e0b4a44e712e5">00023</a> <span class="preprocessor">#define HAVE_LIBJPEG 1</span>
+<a name="l00024"></a>00024 <span class="preprocessor"></span>
+<a name="l00025"></a>00025 <span class="comment">/* Define if you have libpng */</span>
+<a name="l00026"></a><a class="code" href="config_8h.html#ba4526f4e610f633e575fd23d7cf1208">00026</a> <span class="preprocessor">#define HAVE_LIBPNG 1</span>
+<a name="l00027"></a>00027 <span class="preprocessor"></span>
+<a name="l00028"></a>00028 <span class="comment">/* Define if you have a working libpthread (will enable threaded code) */</span>
+<a name="l00029"></a><a class="code" href="config_8h.html#1e55aaa6b69400645b6b23359e860751">00029</a> <span class="preprocessor">#define HAVE_LIBPTHREAD 1</span>
+<a name="l00030"></a>00030 <span class="preprocessor"></span>
+<a name="l00031"></a>00031 <span class="comment">/* Define if you have libz */</span>
+<a name="l00032"></a><a class="code" href="config_8h.html#b52774670674c949e48837976b331e33">00032</a> <span class="preprocessor">#define HAVE_LIBZ 1</span>
+<a name="l00033"></a>00033 <span class="preprocessor"></span>
+<a name="l00034"></a>00034 <span class="comment">/* Define to 1 if you have the &lt;memory.h&gt; header file. */</span>
+<a name="l00035"></a><a class="code" href="config_8h.html#e93a78f9d076138897af441c9f86f285">00035</a> <span class="preprocessor">#define HAVE_MEMORY_H 1</span>
+<a name="l00036"></a>00036 <span class="preprocessor"></span>
+<a name="l00037"></a>00037 <span class="comment">/* Define if your system needs _NSGetEnviron to set up the environment */</span>
+<a name="l00038"></a>00038 <span class="comment">/* #undef HAVE_NSGETENVIRON */</span>
+<a name="l00039"></a>00039
+<a name="l00040"></a>00040 <span class="comment">/* Define if you have res_init */</span>
+<a name="l00041"></a><a class="code" href="config_8h.html#8d185aeec741b71aa701fdb6016e7a41">00041</a> <span class="preprocessor">#define HAVE_RES_INIT 1</span>
+<a name="l00042"></a>00042 <span class="preprocessor"></span>
+<a name="l00043"></a>00043 <span class="comment">/* Define if you have the res_init prototype */</span>
+<a name="l00044"></a><a class="code" href="config_8h.html#72c5f90be7d7f1bb2dd3e66ed9ab727e">00044</a> <span class="preprocessor">#define HAVE_RES_INIT_PROTO 1</span>
+<a name="l00045"></a>00045 <span class="preprocessor"></span>
+<a name="l00046"></a>00046 <span class="comment">/* Define if you have a STL implementation by SGI */</span>
+<a name="l00047"></a><a class="code" href="config_8h.html#6887c6e29ea8ec742139ec9e2749a2a6">00047</a> <span class="preprocessor">#define HAVE_SGI_STL 1</span>
+<a name="l00048"></a>00048 <span class="preprocessor"></span>
+<a name="l00049"></a>00049 <span class="comment">/* Define to 1 if you have the `snprintf' function. */</span>
+<a name="l00050"></a><a class="code" href="config_8h.html#040bd9182ad5ba7261448993c38565ea">00050</a> <span class="preprocessor">#define HAVE_SNPRINTF 1</span>
+<a name="l00051"></a>00051 <span class="preprocessor"></span>
+<a name="l00052"></a>00052 <span class="comment">/* Define to 1 if you have the &lt;stdint.h&gt; header file. */</span>
+<a name="l00053"></a><a class="code" href="config_8h.html#b6cd6d1c63c1e26ea2d4537b77148354">00053</a> <span class="preprocessor">#define HAVE_STDINT_H 1</span>
+<a name="l00054"></a>00054 <span class="preprocessor"></span>
+<a name="l00055"></a>00055 <span class="comment">/* Define to 1 if you have the &lt;stdlib.h&gt; header file. */</span>
+<a name="l00056"></a><a class="code" href="config_8h.html#9e0e434ec1a6ddbd97db12b5a32905e0">00056</a> <span class="preprocessor">#define HAVE_STDLIB_H 1</span>
+<a name="l00057"></a>00057 <span class="preprocessor"></span>
+<a name="l00058"></a>00058 <span class="comment">/* Define to 1 if you have the &lt;strings.h&gt; header file. */</span>
+<a name="l00059"></a><a class="code" href="config_8h.html#405d10d46190bcb0320524c54eafc850">00059</a> <span class="preprocessor">#define HAVE_STRINGS_H 1</span>
+<a name="l00060"></a>00060 <span class="preprocessor"></span>
+<a name="l00061"></a>00061 <span class="comment">/* Define to 1 if you have the &lt;string.h&gt; header file. */</span>
+<a name="l00062"></a><a class="code" href="config_8h.html#d4c234dd1625255dc626a15886306e7d">00062</a> <span class="preprocessor">#define HAVE_STRING_H 1</span>
+<a name="l00063"></a>00063 <span class="preprocessor"></span>
+<a name="l00064"></a>00064 <span class="comment">/* Define if you have strlcat */</span>
+<a name="l00065"></a>00065 <span class="comment">/* #undef HAVE_STRLCAT */</span>
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 <span class="comment">/* Define if you have the strlcat prototype */</span>
+<a name="l00068"></a>00068 <span class="comment">/* #undef HAVE_STRLCAT_PROTO */</span>
+<a name="l00069"></a>00069
+<a name="l00070"></a>00070 <span class="comment">/* Define if you have strlcpy */</span>
+<a name="l00071"></a>00071 <span class="comment">/* #undef HAVE_STRLCPY */</span>
+<a name="l00072"></a>00072
+<a name="l00073"></a>00073 <span class="comment">/* Define if you have the strlcpy prototype */</span>
+<a name="l00074"></a>00074 <span class="comment">/* #undef HAVE_STRLCPY_PROTO */</span>
+<a name="l00075"></a>00075
+<a name="l00076"></a>00076 <span class="comment">/* Define to 1 if you have the &lt;sys/bitypes.h&gt; header file. */</span>
+<a name="l00077"></a><a class="code" href="config_8h.html#228b2a184bbed5a42c16481a57e29456">00077</a> <span class="preprocessor">#define HAVE_SYS_BITYPES_H 1</span>
+<a name="l00078"></a>00078 <span class="preprocessor"></span>
+<a name="l00079"></a>00079 <span class="comment">/* Define to 1 if you have the &lt;sys/stat.h&gt; header file. */</span>
+<a name="l00080"></a><a class="code" href="config_8h.html#ce156430ba007d19b4348a950d0c692b">00080</a> <span class="preprocessor">#define HAVE_SYS_STAT_H 1</span>
+<a name="l00081"></a>00081 <span class="preprocessor"></span>
+<a name="l00082"></a>00082 <span class="comment">/* Define to 1 if you have the &lt;sys/types.h&gt; header file. */</span>
+<a name="l00083"></a><a class="code" href="config_8h.html#69dc70bea5d1f8bd2be9740e974fa666">00083</a> <span class="preprocessor">#define HAVE_SYS_TYPES_H 1</span>
+<a name="l00084"></a>00084 <span class="preprocessor"></span>
+<a name="l00085"></a>00085 <span class="comment">/* Define to 1 if you have the &lt;unistd.h&gt; header file. */</span>
+<a name="l00086"></a><a class="code" href="config_8h.html#219b06937831d0da94d801ab13987639">00086</a> <span class="preprocessor">#define HAVE_UNISTD_H 1</span>
+<a name="l00087"></a>00087 <span class="preprocessor"></span>
+<a name="l00088"></a>00088 <span class="comment">/* Define to 1 if you have the `vsnprintf' function. */</span>
+<a name="l00089"></a><a class="code" href="config_8h.html#4ac6a60cb19181437136206238f16497">00089</a> <span class="preprocessor">#define HAVE_VSNPRINTF 1</span>
+<a name="l00090"></a>00090 <span class="preprocessor"></span>
+<a name="l00091"></a>00091 <span class="comment">/* Suffix for lib directories */</span>
+<a name="l00092"></a><a class="code" href="config_8h.html#9fa8c0f3c2dc6b33948463cddf9d461c">00092</a> <span class="preprocessor">#define KDELIBSUFF ""</span>
+<a name="l00093"></a>00093 <span class="preprocessor"></span>
+<a name="l00094"></a>00094 <span class="comment">/* Name of package */</span>
+<a name="l00095"></a><a class="code" href="config_8h.html#ca8570fb706c81df371b7f9bc454ae03">00095</a> <span class="preprocessor">#define PACKAGE "kshowmail"</span>
+<a name="l00096"></a>00096 <span class="preprocessor"></span>
+<a name="l00097"></a>00097 <span class="comment">/* Define to the address where bug reports for this package should be sent. */</span>
+<a name="l00098"></a><a class="code" href="config_8h.html#1d1d2d7f8d2f95b376954d649ab03233">00098</a> <span class="preprocessor">#define PACKAGE_BUGREPORT ""</span>
+<a name="l00099"></a>00099 <span class="preprocessor"></span>
+<a name="l00100"></a>00100 <span class="comment">/* Define to the full name of this package. */</span>
+<a name="l00101"></a><a class="code" href="config_8h.html#1c0439e4355794c09b64274849eb0279">00101</a> <span class="preprocessor">#define PACKAGE_NAME ""</span>
+<a name="l00102"></a>00102 <span class="preprocessor"></span>
+<a name="l00103"></a>00103 <span class="comment">/* Define to the full name and version of this package. */</span>
+<a name="l00104"></a><a class="code" href="config_8h.html#c73e6f903c16eca7710f92e36e1c6fbf">00104</a> <span class="preprocessor">#define PACKAGE_STRING ""</span>
+<a name="l00105"></a>00105 <span class="preprocessor"></span>
+<a name="l00106"></a>00106 <span class="comment">/* Define to the one symbol short name of this package. */</span>
+<a name="l00107"></a><a class="code" href="config_8h.html#f415af6bfede0e8d5453708afe68651c">00107</a> <span class="preprocessor">#define PACKAGE_TARNAME ""</span>
+<a name="l00108"></a>00108 <span class="preprocessor"></span>
+<a name="l00109"></a>00109 <span class="comment">/* Define to the version of this package. */</span>
+<a name="l00110"></a><a class="code" href="config_8h.html#a326a05d5e30f9e9a4bb0b4469d5d0c0">00110</a> <span class="preprocessor">#define PACKAGE_VERSION ""</span>
+<a name="l00111"></a>00111 <span class="preprocessor"></span>
+<a name="l00112"></a>00112 <span class="comment">/* The size of `char *', as computed by sizeof. */</span>
+<a name="l00113"></a><a class="code" href="config_8h.html#58e512576a8aeebaef86046d3e5d7d36">00113</a> <span class="preprocessor">#define SIZEOF_CHAR_P 4</span>
+<a name="l00114"></a>00114 <span class="preprocessor"></span>
+<a name="l00115"></a>00115 <span class="comment">/* The size of `int', as computed by sizeof. */</span>
+<a name="l00116"></a><a class="code" href="config_8h.html#44184cf844a916eee78598ab35fc966b">00116</a> <span class="preprocessor">#define SIZEOF_INT 4</span>
+<a name="l00117"></a>00117 <span class="preprocessor"></span>
+<a name="l00118"></a>00118 <span class="comment">/* The size of `long', as computed by sizeof. */</span>
+<a name="l00119"></a><a class="code" href="config_8h.html#22aece5d034fd9040a3d01c3797fdfe7">00119</a> <span class="preprocessor">#define SIZEOF_LONG 4</span>
+<a name="l00120"></a>00120 <span class="preprocessor"></span>
+<a name="l00121"></a>00121 <span class="comment">/* The size of `short', as computed by sizeof. */</span>
+<a name="l00122"></a><a class="code" href="config_8h.html#391756f658c0bdad5fa65c4cd3410ad6">00122</a> <span class="preprocessor">#define SIZEOF_SHORT 2</span>
+<a name="l00123"></a>00123 <span class="preprocessor"></span>
+<a name="l00124"></a>00124 <span class="comment">/* The size of `size_t', as computed by sizeof. */</span>
+<a name="l00125"></a><a class="code" href="config_8h.html#8e6961033aca338f7141cd18d6f378c8">00125</a> <span class="preprocessor">#define SIZEOF_SIZE_T 4</span>
+<a name="l00126"></a>00126 <span class="preprocessor"></span>
+<a name="l00127"></a>00127 <span class="comment">/* The size of `unsigned long', as computed by sizeof. */</span>
+<a name="l00128"></a><a class="code" href="config_8h.html#86390082a988863857054199f4d0878a">00128</a> <span class="preprocessor">#define SIZEOF_UNSIGNED_LONG 4</span>
+<a name="l00129"></a>00129 <span class="preprocessor"></span>
+<a name="l00130"></a>00130 <span class="comment">/* Define to 1 if you have the ANSI C header files. */</span>
+<a name="l00131"></a><a class="code" href="config_8h.html#550e5c272cc3cf3814651721167dcd23">00131</a> <span class="preprocessor">#define STDC_HEADERS 1</span>
+<a name="l00132"></a>00132 <span class="preprocessor"></span>
+<a name="l00133"></a>00133 <span class="comment">/* Version number of package */</span>
+<a name="l00134"></a><a class="code" href="config_8h.html#1c6d5de492ac61ad29aec7aa9a436bbf">00134</a> <span class="preprocessor">#define VERSION "3.3"</span>
+<a name="l00135"></a>00135 <span class="preprocessor"></span>
+<a name="l00136"></a>00136 <span class="comment">/* Defined if compiling without arts */</span>
+<a name="l00137"></a>00137 <span class="comment">/* #undef WITHOUT_ARTS */</span>
+<a name="l00138"></a>00138
+<a name="l00139"></a>00139 <span class="comment">/*</span>
+<a name="l00140"></a>00140 <span class="comment"> * jpeg.h needs HAVE_BOOLEAN, when the system uses boolean in system</span>
+<a name="l00141"></a>00141 <span class="comment"> * headers and I'm too lazy to write a configure test as long as only</span>
+<a name="l00142"></a>00142 <span class="comment"> * unixware is related</span>
+<a name="l00143"></a>00143 <span class="comment"> */</span>
+<a name="l00144"></a>00144 <span class="preprocessor">#ifdef _UNIXWARE</span>
+<a name="l00145"></a>00145 <span class="preprocessor"></span><span class="preprocessor">#define HAVE_BOOLEAN</span>
+<a name="l00146"></a>00146 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00147"></a>00147 <span class="preprocessor"></span>
+<a name="l00148"></a>00148
+<a name="l00149"></a>00149
+<a name="l00150"></a>00150 <span class="comment">/*</span>
+<a name="l00151"></a>00151 <span class="comment"> * AIX defines FD_SET in terms of bzero, but fails to include &lt;strings.h&gt;</span>
+<a name="l00152"></a>00152 <span class="comment"> * that defines bzero.</span>
+<a name="l00153"></a>00153 <span class="comment"> */</span>
+<a name="l00154"></a>00154
+<a name="l00155"></a>00155 <span class="preprocessor">#if defined(_AIX)</span>
+<a name="l00156"></a>00156 <span class="preprocessor"></span><span class="preprocessor">#include &lt;strings.h&gt;</span>
+<a name="l00157"></a>00157 <span class="preprocessor">#endif</span>
+<a name="l00158"></a>00158 <span class="preprocessor"></span>
+<a name="l00159"></a>00159
+<a name="l00160"></a>00160
+<a name="l00161"></a>00161 <span class="preprocessor">#if defined(HAVE_NSGETENVIRON) &amp;&amp; defined(HAVE_CRT_EXTERNS_H)</span>
+<a name="l00162"></a>00162 <span class="preprocessor"></span><span class="preprocessor"># include &lt;sys/time.h&gt;</span>
+<a name="l00163"></a>00163 <span class="preprocessor"># include &lt;crt_externs.h&gt;</span>
+<a name="l00164"></a>00164 <span class="preprocessor"># define environ (*_NSGetEnviron())</span>
+<a name="l00165"></a>00165 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00166"></a>00166 <span class="preprocessor"></span>
+<a name="l00167"></a>00167
+<a name="l00168"></a>00168
+<a name="l00169"></a>00169 <span class="preprocessor">#if !defined(HAVE_RES_INIT_PROTO)</span>
+<a name="l00170"></a>00170 <span class="preprocessor"></span><span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00171"></a>00171 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
+<a name="l00172"></a>00172 <span class="preprocessor">#endif</span>
+<a name="l00173"></a>00173 <span class="preprocessor"></span><span class="keywordtype">int</span> res_init(<span class="keywordtype">void</span>);
+<a name="l00174"></a>00174 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00175"></a>00175 <span class="preprocessor"></span>}
+<a name="l00176"></a>00176 <span class="preprocessor">#endif</span>
+<a name="l00177"></a>00177 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00178"></a>00178 <span class="preprocessor"></span>
+<a name="l00179"></a>00179
+<a name="l00180"></a>00180
+<a name="l00181"></a>00181 <span class="preprocessor">#if !defined(HAVE_STRLCAT_PROTO)</span>
+<a name="l00182"></a>00182 <span class="preprocessor"></span><span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00183"></a>00183 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
+<a name="l00184"></a>00184 <span class="preprocessor">#endif</span>
+<a name="l00185"></a>00185 <span class="preprocessor"></span><span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="config_8h.html#2268fc266249bca72a79b9f967178aa4">strlcat</a>(<span class="keywordtype">char</span>*, <span class="keyword">const</span> <span class="keywordtype">char</span>*, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>);
+<a name="l00186"></a>00186 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00187"></a>00187 <span class="preprocessor"></span>}
+<a name="l00188"></a>00188 <span class="preprocessor">#endif</span>
+<a name="l00189"></a>00189 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00190"></a>00190 <span class="preprocessor"></span>
+<a name="l00191"></a>00191
+<a name="l00192"></a>00192
+<a name="l00193"></a>00193 <span class="preprocessor">#if !defined(HAVE_STRLCPY_PROTO)</span>
+<a name="l00194"></a>00194 <span class="preprocessor"></span><span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00195"></a>00195 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
+<a name="l00196"></a>00196 <span class="preprocessor">#endif</span>
+<a name="l00197"></a>00197 <span class="preprocessor"></span><span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="config_8h.html#e7856d1508f3fbf4239b99cffe41ac93">strlcpy</a>(<span class="keywordtype">char</span>*, <span class="keyword">const</span> <span class="keywordtype">char</span>*, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>);
+<a name="l00198"></a>00198 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00199"></a>00199 <span class="preprocessor"></span>}
+<a name="l00200"></a>00200 <span class="preprocessor">#endif</span>
+<a name="l00201"></a>00201 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00202"></a>00202 <span class="preprocessor"></span>
+<a name="l00203"></a>00203
+<a name="l00204"></a>00204
+<a name="l00205"></a>00205 <span class="comment">/*</span>
+<a name="l00206"></a>00206 <span class="comment"> * On HP-UX, the declaration of vsnprintf() is needed every time !</span>
+<a name="l00207"></a>00207 <span class="comment"> */</span>
+<a name="l00208"></a>00208
+<a name="l00209"></a>00209 <span class="preprocessor">#if !defined(HAVE_VSNPRINTF) || defined(hpux)</span>
+<a name="l00210"></a>00210 <span class="preprocessor"></span><span class="preprocessor">#if __STDC__</span>
+<a name="l00211"></a>00211 <span class="preprocessor"></span><span class="preprocessor">#include &lt;stdarg.h&gt;</span>
+<a name="l00212"></a>00212 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
+<a name="l00213"></a>00213 <span class="preprocessor">#else</span>
+<a name="l00214"></a>00214 <span class="preprocessor"></span><span class="preprocessor">#include &lt;varargs.h&gt;</span>
+<a name="l00215"></a>00215 <span class="preprocessor">#endif</span>
+<a name="l00216"></a>00216 <span class="preprocessor"></span><span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00217"></a>00217 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span>
+<a name="l00218"></a>00218 <span class="preprocessor">#endif</span>
+<a name="l00219"></a>00219 <span class="preprocessor"></span><span class="keywordtype">int</span> vsnprintf(<span class="keywordtype">char</span> *str, size_t n, <span class="keywordtype">char</span> <span class="keyword">const</span> *fmt, va_list ap);
+<a name="l00220"></a>00220 <span class="preprocessor">#ifdef __cplusplus</span>
+<a name="l00221"></a>00221 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span>
+<a name="l00222"></a>00222 <span class="preprocessor">#endif</span>
+<a name="l00223"></a>00223 <span class="preprocessor"></span><span class="keywordtype">int</span> snprintf(<span class="keywordtype">char</span> *str, size_t n, <span class="keywordtype">char</span> <span class="keyword">const</span> *fmt, ...);
+<a name="l00224"></a>00224 <span class="preprocessor">#endif</span>
+<a name="l00225"></a>00225 <span class="preprocessor"></span>
+<a name="l00226"></a>00226
+<a name="l00227"></a>00227
+<a name="l00228"></a>00228 <span class="preprocessor">#if defined(__SVR4) &amp;&amp; !defined(__svr4__)</span>
+<a name="l00229"></a>00229 <span class="preprocessor"></span><span class="preprocessor">#define __svr4__ 1</span>
+<a name="l00230"></a>00230 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00231"></a>00231 <span class="preprocessor"></span>
+<a name="l00232"></a>00232
+<a name="l00233"></a>00233 <span class="comment">/* type to use in place of socklen_t if not defined */</span>
+<a name="l00234"></a><a class="code" href="config_8h.html#811b95ec2c2b4679cf7f3ee3f026d5e6">00234</a> <span class="preprocessor">#define kde_socklen_t socklen_t</span>
+<a name="l00235"></a>00235 <span class="preprocessor"></span>
+<a name="l00236"></a>00236 <span class="comment">/* type to use in place of socklen_t if not defined (deprecated, use</span>
+<a name="l00237"></a>00237 <span class="comment"> kde_socklen_t) */</span>
+<a name="l00238"></a><a class="code" href="config_8h.html#11e391dd78ddfe458fb621f8c8dcac61">00238</a> <span class="preprocessor">#define ksize_t socklen_t</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/configelem_8cpp-source.html b/doc/html/configelem_8cpp-source.html
new file mode 100644
index 0000000..e8e1e2a
--- /dev/null
+++ b/doc/html/configelem_8cpp-source.html
@@ -0,0 +1,1223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/configelem.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>configelem.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> ConfigElem.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Tue May 9 2000</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2000-2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include "configelem.h"</span>
+<a name="l00019"></a>00019
+<a name="l00020"></a>00020 <span class="keywordtype">int</span> <span class="keyword">const</span> <a class="code" href="classConfigElem.html#8dc234323fe966a322ae8649bc2cd76e">ConfigElem::continueShowHeaders</a>( 0 );
+<a name="l00021"></a>00021 <span class="keywordtype">int</span> <span class="keyword">const</span> <a class="code" href="classConfigElem.html#85fb09c9cdc92ae5e8663bf8c6c4a615">ConfigElem::cancelShowHeaders</a>( 1 );
+<a name="l00022"></a>00022
+<a name="l00023"></a>00023
+<a name="l00024"></a><a class="code" href="classConfigElem.html#dbbb95e2595abd6e9b0f593e7edfa283">00024</a> <a class="code" href="classConfigElem.html#dbbb95e2595abd6e9b0f593e7edfa283">ConfigElem::ConfigElem</a>( ) : QObject()
+<a name="l00025"></a>00025 {
+<a name="l00026"></a>00026 <span class="comment">//initialize account</span>
+<a name="l00027"></a>00027 <a class="code" href="classConfigElem.html#e5e1c7ae0734cb85654d7c6f2b073ef0">init</a>();
+<a name="l00028"></a>00028
+<a name="l00029"></a>00029 <span class="comment">//set default values</span>
+<a name="l00030"></a>00030 <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.setProtocol( <span class="stringliteral">"pop3"</span> );
+<a name="l00031"></a>00031 <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.setPort( 110 );
+<a name="l00032"></a>00032 <a class="code" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">m_bActive</a> = <span class="keyword">false</span>;
+<a name="l00033"></a>00033 <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a> = NULL;
+<a name="l00034"></a>00034 <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> = <span class="stringliteral">""</span>;
+<a name="l00035"></a>00035 }
+<a name="l00036"></a>00036
+<a name="l00037"></a><a class="code" href="classConfigElem.html#74aa827d61789b2c19b3efbc5f374c82">00037</a> <a class="code" href="classConfigElem.html#dbbb95e2595abd6e9b0f593e7edfa283">ConfigElem::ConfigElem</a>( <a class="code" href="classConfigList.html">ConfigList</a>* config ) : QObject()
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039 <span class="comment">//initialize account</span>
+<a name="l00040"></a>00040 <a class="code" href="classConfigElem.html#e5e1c7ae0734cb85654d7c6f2b073ef0">init</a>();
+<a name="l00041"></a>00041
+<a name="l00042"></a>00042 <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.setProtocol( <span class="stringliteral">"pop3"</span> );
+<a name="l00043"></a>00043 <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.setPort (110);
+<a name="l00044"></a>00044
+<a name="l00045"></a>00045 <a class="code" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">m_bActive</a> = <span class="keyword">false</span>;
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a> = config;
+<a name="l00048"></a>00048
+<a name="l00049"></a>00049 }
+<a name="l00050"></a>00050
+<a name="l00051"></a><a class="code" href="classConfigElem.html#2c7a292764612fed972279e181c897d5">00051</a> <a class="code" href="classConfigElem.html#dbbb95e2595abd6e9b0f593e7edfa283">ConfigElem::ConfigElem</a>( <a class="code" href="classConfigElem.html">ConfigElem</a>* pElem ) : QObject()
+<a name="l00052"></a>00052 {
+<a name="l00053"></a>00053 <span class="comment">//initialize account</span>
+<a name="l00054"></a>00054 <a class="code" href="classConfigElem.html#e5e1c7ae0734cb85654d7c6f2b073ef0">init</a>();
+<a name="l00055"></a>00055
+<a name="l00056"></a>00056 <span class="comment">//set active by default</span>
+<a name="l00057"></a>00057 <a class="code" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">m_bActive</a> = pElem-&gt;<a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a>();
+<a name="l00058"></a>00058
+<a name="l00059"></a>00059 <span class="comment">//copy some interesting stuff from the sample</span>
+<a name="l00060"></a>00060 <span class="comment">//the url object contains all necessary information about the server</span>
+<a name="l00061"></a>00061 <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> = pElem-&gt;<a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>();
+<a name="l00062"></a>00062 <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a> = pElem-&gt;<a class="code" href="classConfigElem.html#a4b9669aff68ef45c260c2d485d8a405">getURL</a>();
+<a name="l00063"></a>00063 <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a> = pElem-&gt;<a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a>;
+<a name="l00064"></a>00064
+<a name="l00065"></a>00065 }
+<a name="l00066"></a>00066
+<a name="l00067"></a><a class="code" href="classConfigElem.html#3a6a88209785cd551bc5dd901840288c">00067</a> <a class="code" href="classConfigElem.html#dbbb95e2595abd6e9b0f593e7edfa283">ConfigElem::ConfigElem</a>( <a class="code" href="classConfigList.html">ConfigList</a>* config, <span class="keyword">const</span> QString&amp; account ) : QObject()
+<a name="l00068"></a>00068 {
+<a name="l00069"></a>00069 <span class="comment">//initialize account</span>
+<a name="l00070"></a>00070 <a class="code" href="classConfigElem.html#e5e1c7ae0734cb85654d7c6f2b073ef0">init</a>();
+<a name="l00071"></a>00071
+<a name="l00072"></a>00072 <span class="comment">//set account name</span>
+<a name="l00073"></a>00073 <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> = account;
+<a name="l00074"></a>00074
+<a name="l00075"></a>00075 <span class="comment">//deactivate it by default</span>
+<a name="l00076"></a>00076 <a class="code" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">m_bActive</a> = <span class="keyword">false</span>;
+<a name="l00077"></a>00077
+<a name="l00078"></a>00078 <span class="comment">//set the pointer to the general app configuration</span>
+<a name="l00079"></a>00079 <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a> = config;
+<a name="l00080"></a>00080 }
+<a name="l00081"></a>00081
+<a name="l00082"></a><a class="code" href="classConfigElem.html#e5e1c7ae0734cb85654d7c6f2b073ef0">00082</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#e5e1c7ae0734cb85654d7c6f2b073ef0">ConfigElem::init</a>( )
+<a name="l00083"></a>00083 {
+<a name="l00084"></a>00084 <span class="comment">//initialize timeout timer</span>
+<a name="l00085"></a>00085 <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a> = <span class="keyword">new</span> QTimer( <span class="keyword">this</span> );
+<a name="l00086"></a>00086 connect( <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a>, SIGNAL( timeout() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigElem.html#9771cc6111fae208e8ca92d9c162096d">slotTimeout</a>() ) );
+<a name="l00087"></a>00087
+<a name="l00088"></a>00088 <span class="comment">//state is idle</span>
+<a name="l00089"></a>00089 <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> = <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">AccountIdle</a>;
+<a name="l00090"></a>00090
+<a name="l00091"></a>00091 <span class="comment">//create new empty mail list</span>
+<a name="l00092"></a>00092 <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a> = <span class="keyword">new</span> <a class="code" href="classShowRecord.html">ShowRecord</a>();
+<a name="l00093"></a>00093
+<a name="l00094"></a>00094 <span class="comment">//the account has no appropriate account list view item yet</span>
+<a name="l00095"></a>00095 <a class="code" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a> = NULL;
+<a name="l00096"></a>00096
+<a name="l00097"></a>00097 <span class="comment">//set default values</span>
+<a name="l00098"></a>00098 <a class="code" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">PasswordStorage</a> = DEFAULT_ACCOUNT_PASSWORD_STORAGE;
+<a name="l00099"></a>00099 }
+<a name="l00100"></a>00100
+<a name="l00101"></a>00101
+<a name="l00102"></a><a class="code" href="classConfigElem.html#d14d9c03f757691f198efd14104a3ce8">00102</a> <a class="code" href="classConfigElem.html#d14d9c03f757691f198efd14104a3ce8">ConfigElem::~ConfigElem</a>()
+<a name="l00103"></a>00103 {
+<a name="l00104"></a>00104 <span class="comment">// do not delete m_pshowrecord here</span>
+<a name="l00105"></a>00105 }
+<a name="l00106"></a>00106
+<a name="l00107"></a><a class="code" href="classConfigElem.html#bda433f60b1eed0d4b8d207707d5005c">00107</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#bda433f60b1eed0d4b8d207707d5005c">ConfigElem::saveOptions</a>( QDomDocument&amp; doc, QDomElement&amp; parent )
+<a name="l00108"></a>00108 {
+<a name="l00109"></a>00109 <span class="comment">//get application config</span>
+<a name="l00110"></a>00110 KConfig* config = KApplication::kApplication()-&gt;config();
+<a name="l00111"></a>00111
+<a name="l00112"></a>00112 <span class="comment">//save the active state</span>
+<a name="l00113"></a>00113 config-&gt;setGroup( <a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>() );
+<a name="l00114"></a>00114 config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_ACTIVE, <a class="code" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">m_bActive</a> );
+<a name="l00115"></a>00115 config-&gt;sync();
+<a name="l00116"></a>00116
+<a name="l00117"></a>00117 <span class="comment">//save the stored mails inside this account</span>
+<a name="l00118"></a>00118 parent.setAttribute( ATTRIBUTE_ACCOUNT_NAME, <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00119"></a>00119 <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#2b0757f2678223ca4e51257766dd64a3">saveOptions</a>( doc, parent );
+<a name="l00120"></a>00120 }
+<a name="l00121"></a>00121
+<a name="l00122"></a><a class="code" href="classConfigElem.html#dee46100623211279e37f498ac43c4e4">00122</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#dee46100623211279e37f498ac43c4e4">ConfigElem::readStoredMails</a>( QDomElement&amp; parent )
+<a name="l00123"></a>00123 {
+<a name="l00124"></a>00124 <span class="comment">//get mails</span>
+<a name="l00125"></a>00125 <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#87bd29245b100a9d291856fd0784662f">readStoredMails</a>( parent );
+<a name="l00126"></a>00126 }
+<a name="l00127"></a>00127
+<a name="l00128"></a>00128
+<a name="l00129"></a><a class="code" href="classConfigElem.html#300f2eab6d5d210b64b595b1a6048a5f">00129</a> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#300f2eab6d5d210b64b595b1a6048a5f">ConfigElem::count</a>()
+<a name="l00130"></a>00130 {
+<a name="l00131"></a>00131 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;count();
+<a name="l00132"></a>00132 }
+<a name="l00133"></a>00133
+<a name="l00134"></a><a class="code" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">00134</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">ConfigElem::applyFilters</a>()
+<a name="l00135"></a>00135 {
+<a name="l00136"></a>00136 <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#781cfc15d342cef7ffea393737636065">applyFilters</a>();
+<a name="l00137"></a>00137 }
+<a name="l00138"></a>00138
+<a name="l00139"></a><a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">00139</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">ConfigElem::isActive</a>( )<span class="keyword"> const</span>
+<a name="l00140"></a>00140 <span class="keyword"></span>{
+<a name="l00141"></a>00141 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">m_bActive</a>;
+<a name="l00142"></a>00142 }
+<a name="l00143"></a>00143
+<a name="l00144"></a><a class="code" href="classConfigElem.html#4a5aa6b86e56403fa453c9d642b71812">00144</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#4a5aa6b86e56403fa453c9d642b71812">ConfigElem::setActive</a>( <span class="keywordtype">bool</span> active )
+<a name="l00145"></a>00145 {
+<a name="l00146"></a>00146 <a class="code" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">m_bActive</a> = active;
+<a name="l00147"></a>00147 }
+<a name="l00148"></a>00148
+<a name="l00149"></a><a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">00149</a> QString <a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">ConfigElem::getAccountName</a>( )<span class="keyword"> const</span>
+<a name="l00150"></a>00150 <span class="keyword"></span>{
+<a name="l00151"></a>00151 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a>;
+<a name="l00152"></a>00152 }
+<a name="l00153"></a>00153
+<a name="l00154"></a><a class="code" href="classConfigElem.html#8248ddc45de2d7d924e59e7c591da98f">00154</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#8248ddc45de2d7d924e59e7c591da98f">ConfigElem::setAccountName</a>( QString name )
+<a name="l00155"></a>00155 {
+<a name="l00156"></a>00156 <span class="keywordflow">if</span>( name != NULL )
+<a name="l00157"></a>00157 <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> = name;
+<a name="l00158"></a>00158 }
+<a name="l00159"></a>00159
+<a name="l00160"></a><a class="code" href="classConfigElem.html#7ea9a96f400284acce0999639659c461">00160</a> QString <a class="code" href="classConfigElem.html#7ea9a96f400284acce0999639659c461">ConfigElem::getPassword</a>( )<span class="keyword"> const</span>
+<a name="l00161"></a>00161 <span class="keyword"></span>{
+<a name="l00162"></a>00162 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.pass();
+<a name="l00163"></a>00163 }
+<a name="l00164"></a>00164
+<a name="l00165"></a><a class="code" href="classConfigElem.html#6edf15369f3e906a04dff0b92f5b3c2d">00165</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#6edf15369f3e906a04dff0b92f5b3c2d">ConfigElem::setPassword</a>( <span class="keyword">const</span> QString&amp; password )
+<a name="l00166"></a>00166 {
+<a name="l00167"></a>00167 <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.setPass( password );
+<a name="l00168"></a>00168 }
+<a name="l00169"></a>00169
+<a name="l00170"></a><a class="code" href="classConfigElem.html#a4b9669aff68ef45c260c2d485d8a405">00170</a> KURL <a class="code" href="classConfigElem.html#a4b9669aff68ef45c260c2d485d8a405">ConfigElem::getURL</a>( )<span class="keyword"> const</span>
+<a name="l00171"></a>00171 <span class="keyword"></span>{
+<a name="l00172"></a>00172 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>;
+<a name="l00173"></a>00173 }
+<a name="l00174"></a>00174
+<a name="l00175"></a><a class="code" href="classConfigElem.html#371db6ec6023c72fbfac6b765b0de08b">00175</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#371db6ec6023c72fbfac6b765b0de08b">ConfigElem::hasPassword</a>( )<span class="keyword"> const</span>
+<a name="l00176"></a>00176 <span class="keyword"></span>{
+<a name="l00177"></a>00177 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.hasPass();
+<a name="l00178"></a>00178 }
+<a name="l00179"></a>00179
+<a name="l00180"></a><a class="code" href="classConfigElem.html#a58326995659da378bc160ed90ad578b">00180</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#a58326995659da378bc160ed90ad578b">ConfigElem::setListViewItem</a>( QListViewItem* item )
+<a name="l00181"></a>00181 {
+<a name="l00182"></a>00182 <a class="code" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a> = item;
+<a name="l00183"></a>00183 }
+<a name="l00184"></a>00184
+<a name="l00185"></a><a class="code" href="classConfigElem.html#b5b2ecee68626b7ff80219cdb3f3bed2">00185</a> QListViewItem * <a class="code" href="classConfigElem.html#b5b2ecee68626b7ff80219cdb3f3bed2">ConfigElem::getListViewItem</a>( )
+<a name="l00186"></a>00186 {
+<a name="l00187"></a>00187 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a>;
+<a name="l00188"></a>00188 }
+<a name="l00189"></a>00189
+<a name="l00190"></a><a class="code" href="classConfigElem.html#8e8e1f32420d051a8c6d4df4a3ad4b93">00190</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#8e8e1f32420d051a8c6d4df4a3ad4b93">ConfigElem::isSelected</a>( )<span class="keyword"> const</span>
+<a name="l00191"></a>00191 <span class="keyword"></span>{
+<a name="l00192"></a>00192 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a> == NULL )
+<a name="l00193"></a>00193
+<a name="l00194"></a>00194 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00195"></a>00195
+<a name="l00196"></a>00196 <span class="keywordflow">else</span>
+<a name="l00197"></a>00197
+<a name="l00198"></a>00198 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a>-&gt;isSelected();
+<a name="l00199"></a>00199 }
+<a name="l00200"></a>00200
+<a name="l00201"></a><a class="code" href="classConfigElem.html#5fc7f4f73b17bb27faef10d96b80a77c">00201</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#5fc7f4f73b17bb27faef10d96b80a77c">ConfigElem::clearMailList</a>( )
+<a name="l00202"></a>00202 {
+<a name="l00203"></a>00203 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a> == NULL )
+<a name="l00204"></a>00204 <span class="comment">//there is no mail list yet, create a one</span>
+<a name="l00205"></a>00205 <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a> = <span class="keyword">new</span> <a class="code" href="classShowRecord.html">ShowRecord</a>;
+<a name="l00206"></a>00206 <span class="keywordflow">else</span>
+<a name="l00207"></a>00207 <span class="comment">//clear the existing mail list</span>
+<a name="l00208"></a>00208 <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;clear();
+<a name="l00209"></a>00209 }
+<a name="l00210"></a>00210
+<a name="l00211"></a><a class="code" href="classConfigElem.html#cf56636bf7537e7f5dbc1a762b4670d2">00211</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#cf56636bf7537e7f5dbc1a762b4670d2">ConfigElem::setHost</a>( <span class="keyword">const</span> QString&amp; host )
+<a name="l00212"></a>00212 {
+<a name="l00213"></a>00213 <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.setHost( host );
+<a name="l00214"></a>00214 }
+<a name="l00215"></a>00215
+<a name="l00216"></a><a class="code" href="classConfigElem.html#103236b06a88a8d14b629170df1a7ca9">00216</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#103236b06a88a8d14b629170df1a7ca9">ConfigElem::setProtocol</a>( <span class="keyword">const</span> QString&amp; protocol )
+<a name="l00217"></a>00217 {
+<a name="l00218"></a>00218 <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.setProtocol( protocol );
+<a name="l00219"></a>00219 }
+<a name="l00220"></a>00220
+<a name="l00221"></a><a class="code" href="classConfigElem.html#cc66eba0b4fbf308cddad0478f20ef0f">00221</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#cc66eba0b4fbf308cddad0478f20ef0f">ConfigElem::setPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> <span class="keywordtype">int</span> port )
+<a name="l00222"></a>00222 {
+<a name="l00223"></a>00223 <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.setPort( port );
+<a name="l00224"></a>00224 }
+<a name="l00225"></a>00225
+<a name="l00226"></a><a class="code" href="classConfigElem.html#856ca37e391329be6b06f8be2f0a1f74">00226</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#856ca37e391329be6b06f8be2f0a1f74">ConfigElem::setUser</a>( <span class="keyword">const</span> QString &amp; user )
+<a name="l00227"></a>00227 {
+<a name="l00228"></a>00228 <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.setUser( user );
+<a name="l00229"></a>00229 }
+<a name="l00230"></a>00230
+<a name="l00231"></a><a class="code" href="classConfigElem.html#19f5621cac8e71c1088995bcef75596a">00231</a> QString <a class="code" href="classConfigElem.html#19f5621cac8e71c1088995bcef75596a">ConfigElem::getUser</a>( )<span class="keyword"> const</span>
+<a name="l00232"></a>00232 <span class="keyword"></span>{
+<a name="l00233"></a>00233 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.user();
+<a name="l00234"></a>00234 }
+<a name="l00235"></a>00235
+<a name="l00236"></a><a class="code" href="classConfigElem.html#6a7f0888c77882eda05bcc22a27947c1">00236</a> QString <a class="code" href="classConfigElem.html#6a7f0888c77882eda05bcc22a27947c1">ConfigElem::getHost</a>( )<span class="keyword"> const</span>
+<a name="l00237"></a>00237 <span class="keyword"></span>{
+<a name="l00238"></a>00238 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.host();
+<a name="l00239"></a>00239 }
+<a name="l00240"></a>00240
+<a name="l00241"></a><a class="code" href="classConfigElem.html#750ccb3fb3f7d1857b79f7218f5a0767">00241</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#750ccb3fb3f7d1857b79f7218f5a0767">ConfigElem::deleteSelectedMails</a>( )
+<a name="l00242"></a>00242 {
+<a name="l00243"></a>00243 <span class="comment">//return if this account has no selected mails or</span>
+<a name="l00244"></a>00244 <span class="comment">//the account is not idle or the account is not active</span>
+<a name="l00245"></a>00245 <span class="keywordflow">if</span>( !<a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#e0aeb91afa1bd2ea566ff4dd4dd299d5">hasSelectedMails</a>() || <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> != <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">AccountIdle</a> || !<a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a>() )
+<a name="l00246"></a>00246 {
+<a name="l00247"></a>00247 emit <a class="code" href="classConfigElem.html#93838eda4c71ad66360ee5a27f630d8e">sigDeleteReady</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00248"></a>00248 <span class="keywordflow">return</span>;
+<a name="l00249"></a>00249 }
+<a name="l00250"></a>00250
+<a name="l00251"></a>00251 <span class="comment">//check whether we have a password for this account</span>
+<a name="l00252"></a>00252 <span class="comment">//if not, ask for it</span>
+<a name="l00253"></a>00253 <span class="comment">//return when no password is available</span>
+<a name="l00254"></a>00254 <span class="keywordflow">if</span>( !<a class="code" href="classConfigElem.html#973328114a20a798887ab040aba33141">assertPassword</a>() )
+<a name="l00255"></a>00255 {
+<a name="l00256"></a>00256 emit <a class="code" href="classConfigElem.html#93838eda4c71ad66360ee5a27f630d8e">sigDeleteReady</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00257"></a>00257 <span class="keywordflow">return</span>;
+<a name="l00258"></a>00258 }
+<a name="l00259"></a>00259
+<a name="l00260"></a>00260 <span class="comment">//get the numbers of all selected mails</span>
+<a name="l00261"></a>00261 <a class="code" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a> = <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#417a26f1eea8a1311362633e43ac8bab">getSelectedMails</a>();
+<a name="l00262"></a>00262 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a>.empty() )
+<a name="l00263"></a>00263 {
+<a name="l00264"></a>00264 kdError() &lt;&lt; <span class="stringliteral">"ConfigElem::deleteSelectedMails (Account "</span> &lt;&lt; <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> &lt;&lt; <span class="stringliteral">"): The account has selected mails to delete but ShowRecord::getSelectedMails has returned an empty list."</span> &lt;&lt; endl;
+<a name="l00265"></a>00265 emit <a class="code" href="classConfigElem.html#93838eda4c71ad66360ee5a27f630d8e">sigDeleteReady</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00266"></a>00266 <span class="keywordflow">return</span>;
+<a name="l00267"></a>00267 }
+<a name="l00268"></a>00268
+<a name="l00269"></a>00269 <span class="comment">//set account state</span>
+<a name="l00270"></a>00270 <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> = <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6c13599f1c51b33a59b319794917ccff5">AccountDeleting</a>;
+<a name="l00271"></a>00271
+<a name="l00272"></a>00272 <span class="comment">//start the deleting of all mails in MailsToDelete</span>
+<a name="l00273"></a>00273 <a class="code" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">deleteNextMail</a>();
+<a name="l00274"></a>00274 }
+<a name="l00275"></a>00275
+<a name="l00276"></a><a class="code" href="classConfigElem.html#973328114a20a798887ab040aba33141">00276</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#973328114a20a798887ab040aba33141">ConfigElem::assertPassword</a>( <span class="keywordtype">bool</span> force )
+<a name="l00277"></a>00277 {
+<a name="l00278"></a>00278 <span class="comment">//is a password stored?</span>
+<a name="l00279"></a>00279 <span class="keywordflow">if</span> ( !<a class="code" href="classConfigElem.html#371db6ec6023c72fbfac6b765b0de08b">hasPassword</a>() || force )
+<a name="l00280"></a>00280 {
+<a name="l00281"></a>00281 <span class="comment">//no password found, we will ask the user!</span>
+<a name="l00282"></a>00282 <span class="comment">//set normal cursor</span>
+<a name="l00283"></a>00283 <span class="keywordflow">while</span>( QApplication::overrideCursor() )
+<a name="l00284"></a>00284 QApplication::restoreOverrideCursor();
+<a name="l00285"></a>00285
+<a name="l00286"></a>00286 QCString password; <span class="comment">//for the password dialog to store the password</span>
+<a name="l00287"></a>00287 <span class="keywordtype">int</span> result = KPasswordDialog::getPassword( password, i18n( <span class="stringliteral">"Please type in the password for %1"</span> ).arg( <a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>() ) );
+<a name="l00288"></a>00288
+<a name="l00289"></a>00289 <span class="comment">//set waiting cursor</span>
+<a name="l00290"></a>00290 QApplication::setOverrideCursor( Qt::waitCursor );
+<a name="l00291"></a>00291
+<a name="l00292"></a>00292 <span class="comment">//let's look, what the user has done :o)</span>
+<a name="l00293"></a>00293 <span class="keywordflow">if</span>( result == KPasswordDialog::Accepted )
+<a name="l00294"></a>00294 {
+<a name="l00295"></a>00295 <span class="comment">//the user has clicked OK in the password dialog</span>
+<a name="l00296"></a>00296 <span class="comment">//store the password</span>
+<a name="l00297"></a>00297 <a class="code" href="classConfigElem.html#6edf15369f3e906a04dff0b92f5b3c2d">setPassword</a>( password );
+<a name="l00298"></a>00298
+<a name="l00299"></a>00299 <span class="comment">//save password in file or KWallet</span>
+<a name="l00300"></a>00300 KConfig* config = KApplication::kApplication()-&gt;config();
+<a name="l00301"></a>00301 config-&gt;setGroup( <a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>() );
+<a name="l00302"></a>00302
+<a name="l00303"></a>00303 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">PasswordStorage</a> == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE )
+<a name="l00304"></a>00304 config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, <a class="code" href="namespaceEncryption.html#83f630d4dba4cf3a5f6b03a25e43f6c8">crypt</a>( <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a> ) );
+<a name="l00305"></a>00305 <span class="keywordflow">else</span>
+<a name="l00306"></a>00306 config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, QString::null );
+<a name="l00307"></a>00307
+<a name="l00308"></a>00308 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">PasswordStorage</a> == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET )
+<a name="l00309"></a>00309 <a class="code" href="namespaceKWalletAccess.html#0687cd1465352be5b3572cdfd2411219">KWalletAccess::savePassword</a>( <a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>(), <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.pass() );
+<a name="l00310"></a>00310
+<a name="l00311"></a>00311 config-&gt;sync();
+<a name="l00312"></a>00312
+<a name="l00313"></a>00313 <span class="comment">//emit configuration changed signal</span>
+<a name="l00314"></a>00314 emit <a class="code" href="classConfigElem.html#c04e111468d52ed1ca964569188c96e5">sigConfigChanged</a>();
+<a name="l00315"></a>00315
+<a name="l00316"></a>00316 <span class="comment">//tell we have a password</span>
+<a name="l00317"></a>00317 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00318"></a>00318 }
+<a name="l00319"></a>00319 <span class="keywordflow">else</span>
+<a name="l00320"></a>00320 <span class="comment">//the user has clicked Cancel in the password dialog; we don't have a password</span>
+<a name="l00321"></a>00321 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00322"></a>00322 }
+<a name="l00323"></a>00323 <span class="keywordflow">else</span>
+<a name="l00324"></a>00324 <span class="comment">//we have already a password for this account</span>
+<a name="l00325"></a>00325 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00326"></a>00326
+<a name="l00327"></a>00327 }
+<a name="l00328"></a>00328
+<a name="l00329"></a><a class="code" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">00329</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">ConfigElem::deleteNextMail</a>( )
+<a name="l00330"></a>00330 {
+<a name="l00331"></a>00331 <span class="comment">//if the list of mails to delete is empty, finalize the deletion and return</span>
+<a name="l00332"></a>00332 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a>.empty() )
+<a name="l00333"></a>00333 {
+<a name="l00334"></a>00334 <a class="code" href="classConfigElem.html#f4e51ff42a86a9d5a6ed0f361069d242">commitDeletion</a>();
+<a name="l00335"></a>00335 <span class="keywordflow">return</span>;
+<a name="l00336"></a>00336 }
+<a name="l00337"></a>00337
+<a name="l00338"></a>00338 <span class="comment">//start job</span>
+<a name="l00339"></a>00339 <a class="code" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">startKIOJob</a>( QString( <span class="stringliteral">"/remove/%1"</span> ).arg( *<a class="code" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a>.begin() ) );
+<a name="l00340"></a>00340 connect( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>, SIGNAL( result( KIO::Job* ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigElem.html#f2f44d27824ca6c4caf9c472f5c980b4">slotMailDeleted</a>( KIO::Job* ) ) );
+<a name="l00341"></a>00341 }
+<a name="l00342"></a>00342
+<a name="l00343"></a><a class="code" href="classConfigElem.html#f2f44d27824ca6c4caf9c472f5c980b4">00343</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#f2f44d27824ca6c4caf9c472f5c980b4">ConfigElem::slotMailDeleted</a>( KIO::Job* job )
+<a name="l00344"></a>00344 {
+<a name="l00345"></a>00345 <span class="comment">//stop timeout timer</span>
+<a name="l00346"></a>00346 <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a>-&gt;stop();
+<a name="l00347"></a>00347
+<a name="l00348"></a>00348 <span class="comment">//check for errors</span>
+<a name="l00349"></a>00349 <span class="comment">//if an error is occured, the deletion will be canceled</span>
+<a name="l00350"></a>00350 <span class="comment">//or will ask for a new password</span>
+<a name="l00351"></a>00351 <span class="keywordflow">if</span>( job-&gt;error() == KIO::ERR_COULD_NOT_LOGIN )
+<a name="l00352"></a>00352 {
+<a name="l00353"></a>00353 <span class="comment">//login failed, ask for a new password</span>
+<a name="l00354"></a>00354 job-&gt;showErrorDialog();
+<a name="l00355"></a>00355 <span class="keywordtype">bool</span> res = <a class="code" href="classConfigElem.html#973328114a20a798887ab040aba33141">assertPassword</a>( <span class="keyword">true</span> );
+<a name="l00356"></a>00356 <span class="keywordflow">if</span>( res == <span class="keyword">false</span> )
+<a name="l00357"></a>00357 {
+<a name="l00358"></a>00358 <span class="comment">//we have not got a new password; cancel delete</span>
+<a name="l00359"></a>00359 <a class="code" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">slotFinalizeDeletion</a>( NULL );
+<a name="l00360"></a>00360 <span class="keywordflow">return</span>;
+<a name="l00361"></a>00361 }
+<a name="l00362"></a>00362 <span class="comment">//if we have got a new password, it jumps to the end of the if-statement</span>
+<a name="l00363"></a>00363 }
+<a name="l00364"></a>00364 <span class="keywordflow">else</span> <span class="keywordflow">if</span>( job-&gt;error() != 0 )
+<a name="l00365"></a>00365 {
+<a name="l00366"></a>00366 <span class="comment">//unknown error, show message and cancel delete</span>
+<a name="l00367"></a>00367 job-&gt;showErrorDialog();
+<a name="l00368"></a>00368 <a class="code" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">slotFinalizeDeletion</a>( NULL );
+<a name="l00369"></a>00369 <span class="keywordflow">return</span>;
+<a name="l00370"></a>00370 }
+<a name="l00371"></a>00371 <span class="keywordflow">else</span>
+<a name="l00372"></a>00372 {
+<a name="l00373"></a>00373 <span class="comment">//operation was successful</span>
+<a name="l00374"></a>00374 <span class="comment">//remove the deleted mail from the internal mail list</span>
+<a name="l00375"></a>00375 <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#d9075f4c8de5af4b0b5870d1ff71f4ea">removeMail</a>( *<a class="code" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a>.begin() );
+<a name="l00376"></a>00376
+<a name="l00377"></a>00377 <span class="comment">//remove the first item of the list of mails to delete</span>
+<a name="l00378"></a>00378 <a class="code" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a>.remove( <a class="code" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a>.begin() );
+<a name="l00379"></a>00379
+<a name="l00380"></a>00380 <span class="comment">//if the list of mails to delete is empty, finalize the deletion and return</span>
+<a name="l00381"></a>00381 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a>.empty() )
+<a name="l00382"></a>00382 {
+<a name="l00383"></a>00383 <a class="code" href="classConfigElem.html#f4e51ff42a86a9d5a6ed0f361069d242">commitDeletion</a>();
+<a name="l00384"></a>00384 <span class="keywordflow">return</span>;
+<a name="l00385"></a>00385 }
+<a name="l00386"></a>00386 }
+<a name="l00387"></a>00387
+<a name="l00388"></a>00388 <span class="comment">//delete next mail in list</span>
+<a name="l00389"></a>00389 <a class="code" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">deleteNextMail</a>();
+<a name="l00390"></a>00390
+<a name="l00391"></a>00391
+<a name="l00392"></a>00392 }
+<a name="l00393"></a>00393
+<a name="l00394"></a><a class="code" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">00394</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">ConfigElem::slotFinalizeDeletion</a>( KIO::Job* )
+<a name="l00395"></a>00395 {
+<a name="l00396"></a>00396 <span class="comment">//stop timeout time</span>
+<a name="l00397"></a>00397 <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a>-&gt;stop();
+<a name="l00398"></a>00398
+<a name="l00399"></a>00399 <span class="comment">//set account state to idle</span>
+<a name="l00400"></a>00400 <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> = <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">AccountIdle</a>;
+<a name="l00401"></a>00401
+<a name="l00402"></a>00402 <span class="comment">//emit signal to report the deletion is ready</span>
+<a name="l00403"></a>00403 emit <a class="code" href="classConfigElem.html#93838eda4c71ad66360ee5a27f630d8e">sigDeleteReady</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00404"></a>00404 }
+<a name="l00405"></a>00405
+<a name="l00406"></a><a class="code" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">00406</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">ConfigElem::startKIOJob</a>( <span class="keyword">const</span> QString &amp; path )
+<a name="l00407"></a>00407 {
+<a name="l00408"></a>00408 KIO::MetaData options; <span class="comment">//options for the pop3 job</span>
+<a name="l00409"></a>00409
+<a name="l00410"></a>00410 <span class="comment">//set options</span>
+<a name="l00411"></a>00411 options.insert( <span class="stringliteral">"progress"</span>, <span class="stringliteral">"off"</span> );
+<a name="l00412"></a>00412 options.insert( <span class="stringliteral">"pipelining"</span>, <span class="stringliteral">"off"</span> );
+<a name="l00413"></a>00413 options.insert( <span class="stringliteral">"auth"</span>, <span class="stringliteral">"TEXT"</span> );
+<a name="l00414"></a>00414 options.insert( <span class="stringliteral">"tls"</span>, <span class="stringliteral">"off"</span> );
+<a name="l00415"></a>00415
+<a name="l00416"></a>00416 <span class="comment">//set the given command and parameters</span>
+<a name="l00417"></a>00417 <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.setPath( path );
+<a name="l00418"></a>00418
+<a name="l00419"></a>00419 <span class="comment">//print debug message</span>
+<a name="l00420"></a>00420 kdDebug() &lt;&lt; <span class="stringliteral">"ConfigElem::startKIOJob: start KIO job on URL "</span> &lt;&lt; <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.url() &lt;&lt; endl;
+<a name="l00421"></a>00421
+<a name="l00422"></a>00422 <span class="comment">//start the job and get handle to it</span>
+<a name="l00423"></a>00423 <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a> = KIO::get( <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>, <span class="keyword">false</span>, <span class="keyword">false</span> );
+<a name="l00424"></a>00424
+<a name="l00425"></a>00425 <span class="comment">//put options to the job</span>
+<a name="l00426"></a>00426 <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>-&gt;addMetaData( options );
+<a name="l00427"></a>00427
+<a name="l00428"></a>00428 <span class="comment">//start timeout timer</span>
+<a name="l00429"></a>00429 <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a>-&gt;start( <a class="code" href="classConfigElem.html#3cb6757a426072724df1b1ea930da796">getTimeoutTime</a>() * 1000, <span class="keyword">true</span> );
+<a name="l00430"></a>00430 }
+<a name="l00431"></a>00431
+<a name="l00432"></a><a class="code" href="classConfigElem.html#1b2187ece7367694776f17c6cad6571c">00432</a> <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">Types::AccountState_Type</a> <a class="code" href="classConfigElem.html#1b2187ece7367694776f17c6cad6571c">ConfigElem::getState</a>( )
+<a name="l00433"></a>00433 {
+<a name="l00434"></a>00434 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a>;
+<a name="l00435"></a>00435 }
+<a name="l00436"></a>00436
+<a name="l00437"></a><a class="code" href="classConfigElem.html#f4e51ff42a86a9d5a6ed0f361069d242">00437</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#f4e51ff42a86a9d5a6ed0f361069d242">ConfigElem::commitDeletion</a>( )
+<a name="l00438"></a>00438 {
+<a name="l00439"></a>00439 <span class="comment">//start job to commit</span>
+<a name="l00440"></a>00440 <a class="code" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">startKIOJob</a>( QString( <span class="stringliteral">"/commit"</span> ) );
+<a name="l00441"></a>00441 connect( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>, SIGNAL( result( KIO::Job* ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">slotFinalizeDeletion</a>( KIO::Job* ) ) );
+<a name="l00442"></a>00442 }
+<a name="l00443"></a>00443
+<a name="l00444"></a><a class="code" href="classConfigElem.html#3cb6757a426072724df1b1ea930da796">00444</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#3cb6757a426072724df1b1ea930da796">ConfigElem::getTimeoutTime</a>( )
+<a name="l00445"></a>00445 {
+<a name="l00446"></a>00446 <span class="comment">//return default time, if the configuration is not accessable</span>
+<a name="l00447"></a>00447 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a> == NULL )
+<a name="l00448"></a>00448 <span class="keywordflow">return</span> DEFAULT_TIMEOUT_TIME;
+<a name="l00449"></a>00449
+<a name="l00450"></a>00450 <span class="comment">//get time from configuration</span>
+<a name="l00451"></a>00451 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> time = <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a>-&gt;<a class="code" href="classConfigList.html#80a368db22ca3a29c668a544611d16f4">getTimeoutTime</a>();
+<a name="l00452"></a>00452
+<a name="l00453"></a>00453 <span class="comment">//take minimum time, if get time is less</span>
+<a name="l00454"></a>00454 <span class="keywordflow">if</span>( time &lt; MINIMUM_TIMEOUT_TIME )
+<a name="l00455"></a>00455 time = MINIMUM_TIMEOUT_TIME;
+<a name="l00456"></a>00456
+<a name="l00457"></a>00457 <span class="keywordflow">return</span> time;
+<a name="l00458"></a>00458 }
+<a name="l00459"></a>00459
+<a name="l00460"></a><a class="code" href="classConfigElem.html#9771cc6111fae208e8ca92d9c162096d">00460</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#9771cc6111fae208e8ca92d9c162096d">ConfigElem::slotTimeout</a>( )
+<a name="l00461"></a>00461 {
+<a name="l00462"></a>00462 <span class="comment">//kill a running job</span>
+<a name="l00463"></a>00463 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a> != NULL )
+<a name="l00464"></a>00464 <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>-&gt;kill( <span class="keyword">true</span> );
+<a name="l00465"></a>00465
+<a name="l00466"></a>00466 <span class="comment">//show error message (during refresh if desired only)</span>
+<a name="l00467"></a>00467 kdError() &lt;&lt; <span class="stringliteral">"Timeout error!"</span> &lt;&lt; endl;
+<a name="l00468"></a>00468
+<a name="l00469"></a>00469 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> != <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6ba5316f9cbdb41a05f75ebe4976865b9">AccountRefreshing</a> || <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a>-&gt;<a class="code" href="classConfigList.html#04033fd5903daf6b1286891a2c7a228c">showConnectionErrors</a>() )
+<a name="l00470"></a>00470 KMessageBox::error( NULL, QString( i18n( <span class="stringliteral">"Time out on %1. The operation could not be finished on time"</span> ) ).arg( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> ), i18n( <span class="stringliteral">"Time Out"</span> ) );
+<a name="l00471"></a>00471
+<a name="l00472"></a>00472 <span class="comment">//call the appropriate finalize methode</span>
+<a name="l00473"></a>00473 <span class="keywordflow">switch</span>( <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> )
+<a name="l00474"></a>00474 {
+<a name="l00475"></a>00475 <span class="keywordflow">case</span> <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">AccountIdle</a> : <span class="keywordflow">break</span>;
+<a name="l00476"></a>00476 <span class="keywordflow">case</span> <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6c13599f1c51b33a59b319794917ccff5">AccountDeleting</a> : <a class="code" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">slotFinalizeDeletion</a>( NULL ); <span class="keywordflow">break</span>;
+<a name="l00477"></a>00477 <span class="keywordflow">case</span> <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b63accada2afa1ad270e3b25c14cae5fd9">AccountDownloading</a> : <a class="code" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail</a>( NULL ); <span class="keywordflow">break</span>;
+<a name="l00478"></a>00478 <span class="keywordflow">case</span> <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6ba5316f9cbdb41a05f75ebe4976865b9">AccountRefreshing</a> : <a class="code" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh</a>(); <span class="keywordflow">break</span>;
+<a name="l00479"></a>00479
+<a name="l00480"></a>00480 <span class="keywordflow">default</span> : <span class="keywordflow">break</span>;
+<a name="l00481"></a>00481 }
+<a name="l00482"></a>00482 }
+<a name="l00483"></a>00483
+<a name="l00484"></a><a class="code" href="classConfigElem.html#93c5c182878b9809188933046e04a998">00484</a> QStringList <a class="code" href="classConfigElem.html#93c5c182878b9809188933046e04a998">ConfigElem::getSelectedSubjects</a>( )<span class="keyword"> const</span>
+<a name="l00485"></a>00485 <span class="keyword"></span>{
+<a name="l00486"></a>00486 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#c78c6981b92a2546d4ee75320aba380d">getSelectedSubjects</a>();
+<a name="l00487"></a>00487 }
+<a name="l00488"></a>00488
+<a name="l00489"></a><a class="code" href="classConfigElem.html#748ec06f6ad44f36143389bb9501a1f7">00489</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#748ec06f6ad44f36143389bb9501a1f7">ConfigElem::hasSelectedMails</a>( )
+<a name="l00490"></a>00490 {
+<a name="l00491"></a>00491 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#e0aeb91afa1bd2ea566ff4dd4dd299d5">hasSelectedMails</a>();
+<a name="l00492"></a>00492 }
+<a name="l00493"></a>00493
+<a name="l00494"></a><a class="code" href="classConfigElem.html#01e5735260c23f43480d807e7e9070c9">00494</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#01e5735260c23f43480d807e7e9070c9">ConfigElem::showSelectedMails</a>( )
+<a name="l00495"></a>00495 {
+<a name="l00496"></a>00496 <span class="comment">//return if this account has no selected mails or</span>
+<a name="l00497"></a>00497 <span class="comment">//the account is not idle or the account is not active</span>
+<a name="l00498"></a>00498 <span class="keywordflow">if</span>( !<a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#e0aeb91afa1bd2ea566ff4dd4dd299d5">hasSelectedMails</a>() || <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> != <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">AccountIdle</a> || !<a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a>() )
+<a name="l00499"></a>00499 {
+<a name="l00500"></a>00500 emit <a class="code" href="classConfigElem.html#bd3b61aa04ce3bd6ce507cb555c360d4">sigShowBodiesReady</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00501"></a>00501 <span class="keywordflow">return</span>;
+<a name="l00502"></a>00502 }
+<a name="l00503"></a>00503
+<a name="l00504"></a>00504 <span class="comment">//check whether we have a password for this account</span>
+<a name="l00505"></a>00505 <span class="comment">//if not, ask for it</span>
+<a name="l00506"></a>00506 <span class="comment">//return when no password is available</span>
+<a name="l00507"></a>00507 <span class="keywordflow">if</span>( !<a class="code" href="classConfigElem.html#973328114a20a798887ab040aba33141">assertPassword</a>() )
+<a name="l00508"></a>00508 {
+<a name="l00509"></a>00509 emit <a class="code" href="classConfigElem.html#bd3b61aa04ce3bd6ce507cb555c360d4">sigShowBodiesReady</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00510"></a>00510 <span class="keywordflow">return</span>;
+<a name="l00511"></a>00511 }
+<a name="l00512"></a>00512
+<a name="l00513"></a>00513 <span class="comment">//get the numbers of all selected mails</span>
+<a name="l00514"></a>00514 <a class="code" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a> = <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#417a26f1eea8a1311362633e43ac8bab">getSelectedMails</a>();
+<a name="l00515"></a>00515 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a>.empty() )
+<a name="l00516"></a>00516 {
+<a name="l00517"></a>00517 kdError() &lt;&lt; <span class="stringliteral">"ConfigElem::showSelectedMails (Account "</span> &lt;&lt; <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> &lt;&lt; <span class="stringliteral">"): The account has selected mails to show but ShowRecord::getSelectedMails has returned an empty list."</span> &lt;&lt; endl;
+<a name="l00518"></a>00518 emit <a class="code" href="classConfigElem.html#bd3b61aa04ce3bd6ce507cb555c360d4">sigShowBodiesReady</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00519"></a>00519 <span class="keywordflow">return</span>;
+<a name="l00520"></a>00520 }
+<a name="l00521"></a>00521
+<a name="l00522"></a>00522 <span class="comment">//set account state</span>
+<a name="l00523"></a>00523 <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> = <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b63accada2afa1ad270e3b25c14cae5fd9">AccountDownloading</a>;
+<a name="l00524"></a>00524
+<a name="l00525"></a>00525 <span class="comment">//start the deleting of all mails in MailsToDelete</span>
+<a name="l00526"></a>00526 <a class="code" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">showNextMail</a>();
+<a name="l00527"></a>00527
+<a name="l00528"></a>00528 }
+<a name="l00529"></a>00529
+<a name="l00530"></a><a class="code" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">00530</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">ConfigElem::showNextMail</a>( )
+<a name="l00531"></a>00531 {
+<a name="l00532"></a>00532 <span class="comment">//if the list of mails to show is empty, finalize it and return</span>
+<a name="l00533"></a>00533 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a>.empty() )
+<a name="l00534"></a>00534 {
+<a name="l00535"></a>00535 <a class="code" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail</a>( NULL );
+<a name="l00536"></a>00536 <span class="keywordflow">return</span>;
+<a name="l00537"></a>00537 }
+<a name="l00538"></a>00538
+<a name="l00539"></a>00539 <span class="comment">//clear the class variable mailbody, which contains the downloaded mail body</span>
+<a name="l00540"></a>00540 <a class="code" href="classConfigElem.html#ac5a5ecf9c70a0c94c2cf7181a1989dd">mailbody</a>.resize( 0 );
+<a name="l00541"></a>00541
+<a name="l00542"></a>00542 <span class="comment">//start job</span>
+<a name="l00543"></a>00543 <a class="code" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">startKIOJob</a>( QString( <span class="stringliteral">"/download/%1"</span> ).arg( *<a class="code" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a>.begin() ) );
+<a name="l00544"></a>00544 connect( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>, SIGNAL( data( KIO::Job*, <span class="keyword">const</span> QByteArray &amp; ) ), SLOT( <a class="code" href="classConfigElem.html#ab068855931a06371d27ec03695121a7">slotDataMailBody</a>( KIO::Job*, <span class="keyword">const</span> QByteArray &amp; ) ) );
+<a name="l00545"></a>00545 connect( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>, SIGNAL( result( KIO::Job* ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigElem.html#a63d81fad1dc2f9f8f015effabb8b6d9">slotBodyDownloaded</a>( KIO::Job* ) ) );
+<a name="l00546"></a>00546
+<a name="l00547"></a>00547 }
+<a name="l00548"></a>00548
+<a name="l00549"></a><a class="code" href="classConfigElem.html#a63d81fad1dc2f9f8f015effabb8b6d9">00549</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#a63d81fad1dc2f9f8f015effabb8b6d9">ConfigElem::slotBodyDownloaded</a>( KIO::Job * job )
+<a name="l00550"></a>00550 {
+<a name="l00551"></a>00551 <span class="comment">//stop timeout timer</span>
+<a name="l00552"></a>00552 <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a>-&gt;stop();
+<a name="l00553"></a>00553
+<a name="l00554"></a>00554 <span class="comment">//check for errors</span>
+<a name="l00555"></a>00555 <span class="comment">//if an error has occured, the download will be canceled</span>
+<a name="l00556"></a>00556 <span class="comment">//or will ask for a new password</span>
+<a name="l00557"></a>00557 <span class="keywordflow">if</span>( job-&gt;error() == KIO::ERR_COULD_NOT_LOGIN )
+<a name="l00558"></a>00558 {
+<a name="l00559"></a>00559 <span class="comment">//login failed, ask for a new password</span>
+<a name="l00560"></a>00560 job-&gt;showErrorDialog();
+<a name="l00561"></a>00561 <span class="keywordtype">bool</span> res = <a class="code" href="classConfigElem.html#973328114a20a798887ab040aba33141">assertPassword</a>( <span class="keyword">true</span> );
+<a name="l00562"></a>00562 <span class="keywordflow">if</span>( res == <span class="keyword">false</span> )
+<a name="l00563"></a>00563 {
+<a name="l00564"></a>00564 <span class="comment">//we have not got a new password; cancel delete</span>
+<a name="l00565"></a>00565 <a class="code" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail</a>( NULL );
+<a name="l00566"></a>00566 <span class="keywordflow">return</span>;
+<a name="l00567"></a>00567 }
+<a name="l00568"></a>00568 <span class="comment">//if we have got a new password, jump to the end of the if-statement</span>
+<a name="l00569"></a>00569 }
+<a name="l00570"></a>00570 <span class="keywordflow">else</span> <span class="keywordflow">if</span>( job-&gt;error() != 0 )
+<a name="l00571"></a>00571 {
+<a name="l00572"></a>00572 job-&gt;showErrorDialog();
+<a name="l00573"></a>00573 <a class="code" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail</a>( NULL );
+<a name="l00574"></a>00574 <span class="keywordflow">return</span>;
+<a name="l00575"></a>00575 }
+<a name="l00576"></a>00576 <span class="keywordflow">else</span>
+<a name="l00577"></a>00577 {
+<a name="l00578"></a>00578 <span class="comment">//succesful download</span>
+<a name="l00579"></a>00579 <span class="comment">//show mail</span>
+<a name="l00580"></a>00580 <span class="keywordtype">int</span> currentMail = *<a class="code" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a>.begin();
+<a name="l00581"></a>00581 QString tsender = <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#51a8d0c91d32e6fdc20cb8f5f2350cac">getSenderOf</a>( currentMail );
+<a name="l00582"></a>00582 QString tdate = <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#93c44ad805a67e955b3cfa2518291613">getDateOf</a>( currentMail );
+<a name="l00583"></a>00583 QString tsize = <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#b1a6f1fee65db84e5496619c14035539">getSizeOf</a>( currentMail );
+<a name="l00584"></a>00584 QString tsubject = <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#38d282950be6217d1488efc720a5f415">getSubjectOf</a>( currentMail );
+<a name="l00585"></a>00585 QString tmailbody( <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#dde4ccc3e28c0d7e233ace3810a28814">decodeMailBody</a>( <a class="code" href="classConfigElem.html#ac5a5ecf9c70a0c94c2cf7181a1989dd">mailbody</a>, currentMail, <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a>-&gt;<a class="code" href="classConfigList.html#4cd09107151c848fafe17db0c8e9a4a6">allowHTML</a>() ) );
+<a name="l00586"></a>00586
+<a name="l00587"></a>00587 <span class="comment">//emit signal to notify the opening of a window</span>
+<a name="l00588"></a>00588 emit <a class="code" href="classConfigElem.html#14267b997f50ad3069115e8b976d89bb">sigMessageWindowOpened</a>();
+<a name="l00589"></a>00589
+<a name="l00590"></a>00590 <span class="comment">//create and open the window</span>
+<a name="l00591"></a>00591 <a class="code" href="classShowMailDialog.html">ShowMailDialog</a> dlg( kapp-&gt;mainWidget(), <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a>, <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a>-&gt;<a class="code" href="classConfigList.html#4cd09107151c848fafe17db0c8e9a4a6">allowHTML</a>(), tsender, tdate, tsize, tsubject, tmailbody );
+<a name="l00592"></a>00592 <span class="keywordtype">int</span> ret = dlg.exec();
+<a name="l00593"></a>00593
+<a name="l00594"></a>00594 <span class="comment">//emit signal to notify the closing of a window</span>
+<a name="l00595"></a>00595 emit <a class="code" href="classConfigElem.html#e328a1ef29ab8784bf9fd36de34d8bc0">sigMessageWindowClosed</a>();
+<a name="l00596"></a>00596
+<a name="l00597"></a>00597 <span class="comment">//cancel the download if desired</span>
+<a name="l00598"></a>00598 <span class="keywordflow">if</span>( ret == KDialogBase::Rejected )
+<a name="l00599"></a>00599 {
+<a name="l00600"></a>00600 <a class="code" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a>.clear();
+<a name="l00601"></a>00601 <a class="code" href="classConfigElem.html#7a53693e1ca3b30406efb6c8a68ce851">commitDownloading</a>();
+<a name="l00602"></a>00602 <span class="keywordflow">return</span>;
+<a name="l00603"></a>00603 }
+<a name="l00604"></a>00604
+<a name="l00605"></a>00605 <span class="comment">//remove the first item of the list of mails to show</span>
+<a name="l00606"></a>00606 <a class="code" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a>.remove( <a class="code" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a>.begin() );
+<a name="l00607"></a>00607
+<a name="l00608"></a>00608 <span class="comment">//if the list of mails is empty, finalize the showing and return</span>
+<a name="l00609"></a>00609 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a>.empty() )
+<a name="l00610"></a>00610 {
+<a name="l00611"></a>00611 <a class="code" href="classConfigElem.html#7a53693e1ca3b30406efb6c8a68ce851">commitDownloading</a>();
+<a name="l00612"></a>00612 <span class="keywordflow">return</span>;
+<a name="l00613"></a>00613 }
+<a name="l00614"></a>00614 }
+<a name="l00615"></a>00615
+<a name="l00616"></a>00616
+<a name="l00617"></a>00617 <span class="comment">//show next mail in list</span>
+<a name="l00618"></a>00618 <a class="code" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">showNextMail</a>();
+<a name="l00619"></a>00619 }
+<a name="l00620"></a>00620
+<a name="l00621"></a><a class="code" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">00621</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">ConfigElem::slotFinalizeShowMail</a>( KIO::Job* )
+<a name="l00622"></a>00622 {
+<a name="l00623"></a>00623 <span class="comment">//stop timeout time</span>
+<a name="l00624"></a>00624 <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a>-&gt;stop();
+<a name="l00625"></a>00625
+<a name="l00626"></a>00626 <span class="comment">//set account state to idle</span>
+<a name="l00627"></a>00627 <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> = <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">AccountIdle</a>;
+<a name="l00628"></a>00628
+<a name="l00629"></a>00629 <span class="comment">//emit signal to report the download is ready</span>
+<a name="l00630"></a>00630 emit <a class="code" href="classConfigElem.html#bd3b61aa04ce3bd6ce507cb555c360d4">sigShowBodiesReady</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00631"></a>00631 }
+<a name="l00632"></a>00632
+<a name="l00633"></a><a class="code" href="classConfigElem.html#ab068855931a06371d27ec03695121a7">00633</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#ab068855931a06371d27ec03695121a7">ConfigElem::slotDataMailBody</a>( KIO::Job *, <span class="keyword">const</span> QByteArray &amp; datas )
+<a name="l00634"></a>00634 {
+<a name="l00635"></a>00635 <span class="keywordflow">if</span>( !datas.isEmpty() )
+<a name="l00636"></a>00636 {
+<a name="l00637"></a>00637 <span class="comment">//we get the next part of the mail</span>
+<a name="l00638"></a>00638 <span class="comment">//append it</span>
+<a name="l00639"></a>00639 uint lastSize = <a class="code" href="classConfigElem.html#ac5a5ecf9c70a0c94c2cf7181a1989dd">mailbody</a>.size();
+<a name="l00640"></a>00640 <a class="code" href="classConfigElem.html#ac5a5ecf9c70a0c94c2cf7181a1989dd">mailbody</a>.resize( lastSize + datas.size() );
+<a name="l00641"></a>00641 <span class="keywordflow">for</span>( uint i = 0; i &lt; datas.size(); i++ )
+<a name="l00642"></a>00642 <a class="code" href="classConfigElem.html#ac5a5ecf9c70a0c94c2cf7181a1989dd">mailbody</a>[ lastSize + i ] = datas[ i ];
+<a name="l00643"></a>00643 }
+<a name="l00644"></a>00644 }
+<a name="l00645"></a>00645
+<a name="l00646"></a><a class="code" href="classConfigElem.html#7a53693e1ca3b30406efb6c8a68ce851">00646</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#7a53693e1ca3b30406efb6c8a68ce851">ConfigElem::commitDownloading</a>( )
+<a name="l00647"></a>00647 {
+<a name="l00648"></a>00648 <span class="comment">//start job to commit</span>
+<a name="l00649"></a>00649 <a class="code" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">startKIOJob</a>( QString( <span class="stringliteral">"/commit"</span> ) );
+<a name="l00650"></a>00650 connect( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>, SIGNAL( result( KIO::Job* ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail</a>( KIO::Job* ) ) );
+<a name="l00651"></a>00651 }
+<a name="l00652"></a>00652
+<a name="l00653"></a><a class="code" href="classConfigElem.html#5a687317c6470c06111b176056c2a81e">00653</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#5a687317c6470c06111b176056c2a81e">ConfigElem::refreshMailList</a>( )
+<a name="l00654"></a>00654 {
+<a name="l00655"></a>00655 <span class="comment">//return, if account is not active</span>
+<a name="l00656"></a>00656 <span class="keywordflow">if</span>( !<a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a>() )
+<a name="l00657"></a>00657 {
+<a name="l00658"></a>00658 emit <a class="code" href="classConfigElem.html#d57456d967920820080dc13d6fb5a8ff">sigRefreshReady</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00659"></a>00659 <span class="keywordflow">return</span>;
+<a name="l00660"></a>00660 }
+<a name="l00661"></a>00661
+<a name="l00662"></a>00662 <span class="comment">//check whether we have a password for this account</span>
+<a name="l00663"></a>00663 <span class="comment">//if not, ask for it</span>
+<a name="l00664"></a>00664 <span class="comment">//return when no password is available</span>
+<a name="l00665"></a>00665 <span class="keywordflow">if</span>( !<a class="code" href="classConfigElem.html#973328114a20a798887ab040aba33141">assertPassword</a>() )
+<a name="l00666"></a>00666 {
+<a name="l00667"></a>00667 emit <a class="code" href="classConfigElem.html#d57456d967920820080dc13d6fb5a8ff">sigRefreshReady</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00668"></a>00668 <span class="keywordflow">return</span>;
+<a name="l00669"></a>00669 }
+<a name="l00670"></a>00670
+<a name="l00671"></a>00671 <span class="comment">//create a new ShowRecord instance</span>
+<a name="l00672"></a>00672 <span class="comment">//When the refresh has finished successfully, this will</span>
+<a name="l00673"></a>00673 <span class="comment">//replace the old mail list</span>
+<a name="l00674"></a>00674 <a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a> = <span class="keyword">new</span> <a class="code" href="classShowRecord.html">ShowRecord</a>();
+<a name="l00675"></a>00675
+<a name="l00676"></a>00676 <span class="comment">//set account state</span>
+<a name="l00677"></a>00677 <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> = <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6ba5316f9cbdb41a05f75ebe4976865b9">AccountRefreshing</a>;
+<a name="l00678"></a>00678
+<a name="l00679"></a>00679 <span class="comment">//the first step is to get the UIDs</span>
+<a name="l00680"></a>00680 <a class="code" href="classConfigElem.html#38ba64f20fe31a6e59d6c58775672922">getUIDs</a>();
+<a name="l00681"></a>00681 }
+<a name="l00682"></a>00682
+<a name="l00683"></a><a class="code" href="classConfigElem.html#38ba64f20fe31a6e59d6c58775672922">00683</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#38ba64f20fe31a6e59d6c58775672922">ConfigElem::getUIDs</a>( )
+<a name="l00684"></a>00684 {
+<a name="l00685"></a>00685 <span class="comment">//clears the QString list, which contains all received UIDs</span>
+<a name="l00686"></a>00686 <a class="code" href="classConfigElem.html#80f016779bdc8774cc7822a839b2c796">receivedUIDs</a>.clear();
+<a name="l00687"></a>00687
+<a name="l00688"></a>00688 <span class="comment">//start job</span>
+<a name="l00689"></a>00689 <a class="code" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">startKIOJob</a>( QString( <span class="stringliteral">"/uidl"</span> ) );
+<a name="l00690"></a>00690 connect( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>, SIGNAL( data( KIO::Job*, <span class="keyword">const</span> QByteArray &amp; ) ), SLOT( <a class="code" href="classConfigElem.html#11db8a853a253b81a16ecd199c441911">slotReceiveUID</a>( KIO::Job*, <span class="keyword">const</span> QByteArray &amp; ) ) );
+<a name="l00691"></a>00691 connect( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>, SIGNAL( result( KIO::Job* ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigElem.html#5ba4833fd4b897bb21fa31dff2cf5750">slotUIDsReceived</a>( KIO::Job* ) ) );
+<a name="l00692"></a>00692
+<a name="l00693"></a>00693 }
+<a name="l00694"></a>00694
+<a name="l00695"></a><a class="code" href="classConfigElem.html#11db8a853a253b81a16ecd199c441911">00695</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#11db8a853a253b81a16ecd199c441911">ConfigElem::slotReceiveUID</a>( KIO::Job*, <span class="keyword">const</span> QByteArray&amp; data )
+<a name="l00696"></a>00696 {
+<a name="l00697"></a>00697 <span class="comment">//return, when data is empty</span>
+<a name="l00698"></a>00698 <span class="keywordflow">if</span>( data.isEmpty() ) <span class="keywordflow">return</span>;
+<a name="l00699"></a>00699
+<a name="l00700"></a>00700 <span class="comment">//cast the data to QString</span>
+<a name="l00701"></a>00701 QString uid( data );
+<a name="l00702"></a>00702
+<a name="l00703"></a>00703 <span class="comment">//insert the uid at the end of the UID list</span>
+<a name="l00704"></a>00704 <a class="code" href="classConfigElem.html#80f016779bdc8774cc7822a839b2c796">receivedUIDs</a>.append( uid );
+<a name="l00705"></a>00705 }
+<a name="l00706"></a>00706
+<a name="l00707"></a><a class="code" href="classConfigElem.html#5ba4833fd4b897bb21fa31dff2cf5750">00707</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#5ba4833fd4b897bb21fa31dff2cf5750">ConfigElem::slotUIDsReceived</a>( KIO::Job * job )
+<a name="l00708"></a>00708 {
+<a name="l00709"></a>00709 <span class="keywordtype">int</span> number; <span class="comment">//an extracted mail number</span>
+<a name="l00710"></a>00710 QString uid; <span class="comment">//an extracted uid</span>
+<a name="l00711"></a>00711 <span class="keywordtype">bool</span> corruptData = <span class="keyword">false</span>; <span class="comment">//set to TRUE, if a data is corrupt</span>
+<a name="l00712"></a>00712 <span class="keywordtype">bool</span> isNew = <span class="keyword">false</span>; <span class="comment">//state of the received mail</span>
+<a name="l00713"></a>00713
+<a name="l00714"></a>00714 <span class="comment">//stop timeout timer</span>
+<a name="l00715"></a>00715 <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a>-&gt;stop();
+<a name="l00716"></a>00716
+<a name="l00717"></a>00717 <span class="comment">//check for errors</span>
+<a name="l00718"></a>00718 <span class="comment">//if an error has occured, the refresh will be canceled</span>
+<a name="l00719"></a>00719 <span class="comment">//or will ask for a new password</span>
+<a name="l00720"></a>00720 <span class="keywordflow">if</span>( job-&gt;error() == KIO::ERR_COULD_NOT_LOGIN )
+<a name="l00721"></a>00721 {
+<a name="l00722"></a>00722 <span class="comment">//login failed, ask for a new password</span>
+<a name="l00723"></a>00723 job-&gt;showErrorDialog();
+<a name="l00724"></a>00724 <span class="keywordtype">bool</span> res = <a class="code" href="classConfigElem.html#973328114a20a798887ab040aba33141">assertPassword</a>( <span class="keyword">true</span> );
+<a name="l00725"></a>00725 <span class="keywordflow">if</span>( res == <span class="keyword">true</span> )
+<a name="l00726"></a>00726 {
+<a name="l00727"></a>00727 <span class="comment">//we have got a new password, try again</span>
+<a name="l00728"></a>00728 <span class="keyword">delete</span> <a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a>;
+<a name="l00729"></a>00729 <a class="code" href="classConfigElem.html#5a687317c6470c06111b176056c2a81e">refreshMailList</a>();
+<a name="l00730"></a>00730 }
+<a name="l00731"></a>00731 <span class="keywordflow">else</span>
+<a name="l00732"></a>00732 <span class="comment">//we have not got a new password; cancel refresh</span>
+<a name="l00733"></a>00733 <a class="code" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh</a>();
+<a name="l00734"></a>00734
+<a name="l00735"></a>00735 <span class="keywordflow">return</span>;
+<a name="l00736"></a>00736 }
+<a name="l00737"></a>00737 <span class="keywordflow">else</span> <span class="keywordflow">if</span>( job-&gt;error() != 0 )
+<a name="l00738"></a>00738 {
+<a name="l00739"></a>00739 <span class="comment">//show error message if desired</span>
+<a name="l00740"></a>00740 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a>-&gt;<a class="code" href="classConfigList.html#04033fd5903daf6b1286891a2c7a228c">showConnectionErrors</a>() )
+<a name="l00741"></a>00741 job-&gt;showErrorDialog();
+<a name="l00742"></a>00742
+<a name="l00743"></a>00743 <a class="code" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh</a>();
+<a name="l00744"></a>00744 <span class="keywordflow">return</span>;
+<a name="l00745"></a>00745 }
+<a name="l00746"></a>00746
+<a name="l00747"></a>00747 <span class="comment">//analyze UIDs</span>
+<a name="l00748"></a>00748 <span class="keywordflow">if</span>( !<a class="code" href="classConfigElem.html#80f016779bdc8774cc7822a839b2c796">receivedUIDs</a>.isEmpty() )
+<a name="l00749"></a>00749 {
+<a name="l00750"></a>00750 <span class="comment">//iterate over all UIDs in the list</span>
+<a name="l00751"></a>00751 <span class="keywordflow">for</span> ( QStringList::Iterator it = <a class="code" href="classConfigElem.html#80f016779bdc8774cc7822a839b2c796">receivedUIDs</a>.begin(); it != <a class="code" href="classConfigElem.html#80f016779bdc8774cc7822a839b2c796">receivedUIDs</a>.end(); ++it )
+<a name="l00752"></a>00752 {
+<a name="l00753"></a>00753 QString line = *it;
+<a name="l00754"></a>00754
+<a name="l00755"></a>00755 <span class="comment">//every line has the format "number UID", e.g.: 1 bf10d38018de7c1d628d65288d722f6a</span>
+<a name="l00756"></a>00756 <span class="comment">//get the position of the separating space</span>
+<a name="l00757"></a>00757 <span class="keywordtype">int</span> positionOfSpace = line.find( <span class="stringliteral">" "</span> );
+<a name="l00758"></a>00758
+<a name="l00759"></a>00759 <span class="comment">//if no space was found, the line is corrupt</span>
+<a name="l00760"></a>00760 <span class="keywordflow">if</span>( positionOfSpace == -1 )
+<a name="l00761"></a>00761 {
+<a name="l00762"></a>00762 kdError() &lt;&lt; <span class="stringliteral">"ConfigElem::slotUIDsReceived: get a corrupt UID from "</span> &lt;&lt; dynamic_cast&lt;KIO::SimpleJob*&gt;(job)-&gt;url().host() &lt;&lt; <span class="stringliteral">". No space. : "</span> &lt;&lt; line &lt;&lt; endl;
+<a name="l00763"></a>00763 corruptData = <span class="keyword">true</span>;
+<a name="l00764"></a>00764 }
+<a name="l00765"></a>00765 <span class="keywordflow">else</span>
+<a name="l00766"></a>00766 {
+<a name="l00767"></a>00767 <span class="comment">//extract mail number and uid</span>
+<a name="l00768"></a>00768 <span class="keywordtype">bool</span> isNumber;
+<a name="l00769"></a>00769 number = line.left( positionOfSpace ).toInt( &amp;isNumber );
+<a name="l00770"></a>00770 <span class="comment">//check number</span>
+<a name="l00771"></a>00771 <span class="keywordflow">if</span>( !isNumber )
+<a name="l00772"></a>00772 {
+<a name="l00773"></a>00773 <span class="comment">//the first part is not a number</span>
+<a name="l00774"></a>00774 kdError() &lt;&lt; <span class="stringliteral">"ConfigElem::slotUIDsReceived: get a corrupt UID from "</span> &lt;&lt; dynamic_cast&lt;KIO::SimpleJob*&gt;(job)-&gt;url().host() &lt;&lt; <span class="stringliteral">". No number found at begin. : "</span> &lt;&lt; line &lt;&lt; endl;
+<a name="l00775"></a>00775 corruptData = <span class="keyword">true</span>;
+<a name="l00776"></a>00776 }
+<a name="l00777"></a>00777 <span class="keywordflow">else</span>
+<a name="l00778"></a>00778 {
+<a name="l00779"></a>00779 <span class="comment">//number is ok; extract uid</span>
+<a name="l00780"></a>00780 uid = line.mid( positionOfSpace + 1 );
+<a name="l00781"></a>00781
+<a name="l00782"></a>00782 <span class="comment">//determine about new mail or not</span>
+<a name="l00783"></a>00783 <span class="keywordflow">if</span>( !<a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#1fca27c3d569bbd1b1d673f2ac847791">hasMail</a>( uid ) )
+<a name="l00784"></a>00784 {
+<a name="l00785"></a>00785 <span class="comment">//the old list doesn't contain a mail with this uid</span>
+<a name="l00786"></a>00786 <span class="comment">//the mail is new</span>
+<a name="l00787"></a>00787 isNew = <span class="keyword">true</span>;
+<a name="l00788"></a>00788 }
+<a name="l00789"></a>00789 <span class="keywordflow">else</span> <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a>-&gt;<a class="code" href="classConfigList.html#49a20af219bc1a4f20e50b59b6f2310c">keepNew</a>() &amp;&amp; <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#89b22dcaa5ff6f47121150b7d25939d0">isNew</a>( uid ) )
+<a name="l00790"></a>00790 {
+<a name="l00791"></a>00791 <span class="comment">//the mail is already in the old list</span>
+<a name="l00792"></a>00792 <span class="comment">//but we will leave the state of formerly new mails, because the user wants it</span>
+<a name="l00793"></a>00793 isNew = <span class="keyword">true</span>;
+<a name="l00794"></a>00794 }
+<a name="l00795"></a>00795 <span class="keywordflow">else</span>
+<a name="l00796"></a>00796 isNew = <span class="keyword">false</span>;
+<a name="l00797"></a>00797
+<a name="l00798"></a>00798 <span class="comment">//append mail to the list</span>
+<a name="l00799"></a>00799 <a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a>-&gt;<a class="code" href="classShowRecord.html#97b16a09a5a51b68f7d2b3efb95c80ea">appendNewMail</a>( number, uid, isNew );
+<a name="l00800"></a>00800
+<a name="l00801"></a>00801 }
+<a name="l00802"></a>00802 }
+<a name="l00803"></a>00803 }
+<a name="l00804"></a>00804
+<a name="l00805"></a>00805 <span class="comment">//if the data are ok, start the second step: get sizes</span>
+<a name="l00806"></a>00806 <span class="comment">//otherwise cancel the refresh</span>
+<a name="l00807"></a>00807 <span class="keywordflow">if</span>( !corruptData )
+<a name="l00808"></a>00808 <a class="code" href="classConfigElem.html#ab836ffc3b068d052ea3486f8cdac74d">getSizes</a>();
+<a name="l00809"></a>00809 <span class="keywordflow">else</span>
+<a name="l00810"></a>00810 <a class="code" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh</a>();
+<a name="l00811"></a>00811 }
+<a name="l00812"></a>00812 <span class="keywordflow">else</span>
+<a name="l00813"></a>00813 {
+<a name="l00814"></a>00814 <span class="comment">//we haven't received any UIDs. The account has no mails.</span>
+<a name="l00815"></a>00815 <span class="comment">//Commit refresh.</span>
+<a name="l00816"></a>00816 <a class="code" href="classConfigElem.html#3691ecff2aab23143072b434fd304c45">commitRefresh</a>();
+<a name="l00817"></a>00817 }
+<a name="l00818"></a>00818
+<a name="l00819"></a>00819 }
+<a name="l00820"></a>00820
+<a name="l00821"></a><a class="code" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">00821</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">ConfigElem::cancelRefresh</a>()
+<a name="l00822"></a>00822 {
+<a name="l00823"></a>00823 <span class="comment">//print error message</span>
+<a name="l00824"></a>00824 kdError() &lt;&lt; <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> &lt;&lt; <span class="stringliteral">": "</span> &lt;&lt; <span class="stringliteral">"Refresh canceled"</span> &lt;&lt; endl;
+<a name="l00825"></a>00825
+<a name="l00826"></a>00826 <span class="comment">//delete the new mail list</span>
+<a name="l00827"></a>00827 <span class="keyword">delete</span> <a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a>;
+<a name="l00828"></a>00828
+<a name="l00829"></a>00829 <span class="comment">//delete old mail list and create a new empty one</span>
+<a name="l00830"></a>00830 <span class="keyword">delete</span> <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>;
+<a name="l00831"></a>00831 <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a> = <span class="keyword">new</span> <a class="code" href="classShowRecord.html">ShowRecord</a>();
+<a name="l00832"></a>00832
+<a name="l00833"></a>00833 <span class="comment">//emit signal</span>
+<a name="l00834"></a>00834 emit <a class="code" href="classConfigElem.html#d57456d967920820080dc13d6fb5a8ff">sigRefreshReady</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00835"></a>00835
+<a name="l00836"></a>00836 <span class="comment">//set account state to idle</span>
+<a name="l00837"></a>00837 <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> = <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">AccountIdle</a>;
+<a name="l00838"></a>00838
+<a name="l00839"></a>00839 <span class="comment">//we don't need an error message, because the KIO job has shown one</span>
+<a name="l00840"></a>00840 }
+<a name="l00841"></a>00841
+<a name="l00842"></a><a class="code" href="classConfigElem.html#6470facb8041787fc48707ece1dfc364">00842</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#6470facb8041787fc48707ece1dfc364">ConfigElem::slotFinalizeRefresh</a>( KIO::Job* )
+<a name="l00843"></a>00843 {
+<a name="l00844"></a>00844 <span class="comment">//stop timeout time</span>
+<a name="l00845"></a>00845 <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a>-&gt;stop();
+<a name="l00846"></a>00846
+<a name="l00847"></a>00847 <span class="comment">//delete old mail list</span>
+<a name="l00848"></a>00848 <span class="keyword">delete</span> <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>;
+<a name="l00849"></a>00849
+<a name="l00850"></a>00850 <span class="comment">//assign the new list</span>
+<a name="l00851"></a>00851 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a> != NULL )
+<a name="l00852"></a>00852 <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a> = <a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a>;
+<a name="l00853"></a>00853 <span class="keywordflow">else</span>
+<a name="l00854"></a>00854 <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a> = <span class="keyword">new</span> <a class="code" href="classShowRecord.html">ShowRecord</a>();
+<a name="l00855"></a>00855
+<a name="l00856"></a>00856 <span class="comment">//emit signal</span>
+<a name="l00857"></a>00857 emit <a class="code" href="classConfigElem.html#d57456d967920820080dc13d6fb5a8ff">sigRefreshReady</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l00858"></a>00858
+<a name="l00859"></a>00859 <span class="comment">//set account state to idle</span>
+<a name="l00860"></a>00860 <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> = <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">AccountIdle</a>;
+<a name="l00861"></a>00861 }
+<a name="l00862"></a>00862
+<a name="l00863"></a><a class="code" href="classConfigElem.html#3691ecff2aab23143072b434fd304c45">00863</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#3691ecff2aab23143072b434fd304c45">ConfigElem::commitRefresh</a>( )
+<a name="l00864"></a>00864 {
+<a name="l00865"></a>00865 <span class="comment">//start job to commit</span>
+<a name="l00866"></a>00866 <a class="code" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">startKIOJob</a>( QString( <span class="stringliteral">"/commit"</span> ) );
+<a name="l00867"></a>00867 connect( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>, SIGNAL( result( KIO::Job* ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigElem.html#6470facb8041787fc48707ece1dfc364">slotFinalizeRefresh</a>( KIO::Job* ) ) );
+<a name="l00868"></a>00868 }
+<a name="l00869"></a>00869
+<a name="l00870"></a><a class="code" href="classConfigElem.html#ab836ffc3b068d052ea3486f8cdac74d">00870</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#ab836ffc3b068d052ea3486f8cdac74d">ConfigElem::getSizes</a>( )
+<a name="l00871"></a>00871 {
+<a name="l00872"></a>00872 <span class="comment">//clears the QString list, which contains all received UIDs</span>
+<a name="l00873"></a>00873 <a class="code" href="classConfigElem.html#fc6f21ff722d537d2e59ee42e57cd337">receivedSizes</a>.clear();
+<a name="l00874"></a>00874
+<a name="l00875"></a>00875 <span class="comment">//start job</span>
+<a name="l00876"></a>00876 <a class="code" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">startKIOJob</a>( QString( <span class="stringliteral">"/index"</span> ) );
+<a name="l00877"></a>00877 connect( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>, SIGNAL( data( KIO::Job*, <span class="keyword">const</span> QByteArray &amp; ) ), SLOT( <a class="code" href="classConfigElem.html#b3e0a075b84fed2a1e156de17cdefbad">slotReceiveSize</a>( KIO::Job*, <span class="keyword">const</span> QByteArray &amp; ) ) );
+<a name="l00878"></a>00878 connect( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>, SIGNAL( result( KIO::Job* ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigElem.html#685be03ba48ad2e1cfb9a0cc04a81559">slotSizesReceived</a>( KIO::Job* ) ) );
+<a name="l00879"></a>00879
+<a name="l00880"></a>00880 }
+<a name="l00881"></a>00881
+<a name="l00882"></a><a class="code" href="classConfigElem.html#685be03ba48ad2e1cfb9a0cc04a81559">00882</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#685be03ba48ad2e1cfb9a0cc04a81559">ConfigElem::slotSizesReceived</a>( KIO::Job * job )
+<a name="l00883"></a>00883 {
+<a name="l00884"></a>00884 <span class="keywordtype">int</span> number; <span class="comment">//an extracted mail number</span>
+<a name="l00885"></a>00885 <span class="keywordtype">long</span> size; <span class="comment">//an extracted size</span>
+<a name="l00886"></a>00886 <span class="keywordtype">bool</span> corruptData = <span class="keyword">false</span>; <span class="comment">//set to TRUE, if a data is corrupt</span>
+<a name="l00887"></a>00887
+<a name="l00888"></a>00888 <span class="comment">//stop timeout timer</span>
+<a name="l00889"></a>00889 <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a>-&gt;stop();
+<a name="l00890"></a>00890
+<a name="l00891"></a>00891 <span class="comment">//check for errors</span>
+<a name="l00892"></a>00892 <span class="comment">//if an error has occured, the refresh will be canceled</span>
+<a name="l00893"></a>00893 <span class="keywordflow">if</span>( job-&gt;error() != 0 )
+<a name="l00894"></a>00894 {
+<a name="l00895"></a>00895 <span class="comment">//show error message if desired</span>
+<a name="l00896"></a>00896 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a>-&gt;<a class="code" href="classConfigList.html#04033fd5903daf6b1286891a2c7a228c">showConnectionErrors</a>() )
+<a name="l00897"></a>00897 job-&gt;showErrorDialog();
+<a name="l00898"></a>00898 <a class="code" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh</a>();
+<a name="l00899"></a>00899 <span class="keywordflow">return</span>;
+<a name="l00900"></a>00900 }
+<a name="l00901"></a>00901
+<a name="l00902"></a>00902 <span class="comment">//analyze UIDs</span>
+<a name="l00903"></a>00903 <span class="keywordflow">if</span>( !<a class="code" href="classConfigElem.html#fc6f21ff722d537d2e59ee42e57cd337">receivedSizes</a>.isEmpty() )
+<a name="l00904"></a>00904 {
+<a name="l00905"></a>00905 <span class="comment">//iterate over all sizes in the list</span>
+<a name="l00906"></a>00906 <span class="keywordflow">for</span> ( QStringList::Iterator it = <a class="code" href="classConfigElem.html#fc6f21ff722d537d2e59ee42e57cd337">receivedSizes</a>.begin(); it != <a class="code" href="classConfigElem.html#fc6f21ff722d537d2e59ee42e57cd337">receivedSizes</a>.end(); ++it )
+<a name="l00907"></a>00907 {
+<a name="l00908"></a>00908 QString line = *it;
+<a name="l00909"></a>00909
+<a name="l00910"></a>00910 <span class="comment">//every line has the format "number size", e.g.: 1 1234</span>
+<a name="l00911"></a>00911 <span class="comment">//get the position of the separating space</span>
+<a name="l00912"></a>00912 <span class="keywordtype">int</span> positionOfSpace = line.find( <span class="stringliteral">" "</span> );
+<a name="l00913"></a>00913
+<a name="l00914"></a>00914 <span class="comment">//if no space was found, the line is corrupt</span>
+<a name="l00915"></a>00915 <span class="keywordflow">if</span>( positionOfSpace == -1 )
+<a name="l00916"></a>00916 {
+<a name="l00917"></a>00917 kdError() &lt;&lt; <span class="stringliteral">"ConfigElem::slotSizesReceived: get a corrupt size from "</span> &lt;&lt; dynamic_cast&lt;KIO::SimpleJob*&gt;(job)-&gt;url().host() &lt;&lt; <span class="stringliteral">". No space. : "</span> &lt;&lt; line &lt;&lt; endl;
+<a name="l00918"></a>00918 corruptData = <span class="keyword">true</span>;
+<a name="l00919"></a>00919 }
+<a name="l00920"></a>00920 <span class="keywordflow">else</span>
+<a name="l00921"></a>00921 {
+<a name="l00922"></a>00922 <span class="comment">//extract mail number and size</span>
+<a name="l00923"></a>00923 <span class="keywordtype">bool</span> isNumber;
+<a name="l00924"></a>00924 number = line.left( positionOfSpace ).toInt( &amp;isNumber );
+<a name="l00925"></a>00925 <span class="comment">//check number</span>
+<a name="l00926"></a>00926 <span class="keywordflow">if</span>( !isNumber )
+<a name="l00927"></a>00927 {
+<a name="l00928"></a>00928 <span class="comment">//the first part is not a number</span>
+<a name="l00929"></a>00929 kdError() &lt;&lt; <span class="stringliteral">"ConfigElem::slotSizesReceived: get a corrupt size from "</span> &lt;&lt; dynamic_cast&lt;KIO::SimpleJob*&gt;(job)-&gt;url().host() &lt;&lt; <span class="stringliteral">". No number found at begin. : "</span> &lt;&lt; line &lt;&lt; endl;
+<a name="l00930"></a>00930 corruptData = <span class="keyword">true</span>;
+<a name="l00931"></a>00931 }
+<a name="l00932"></a>00932 <span class="keywordflow">else</span>
+<a name="l00933"></a>00933 {
+<a name="l00934"></a>00934 <span class="comment">//number is ok; extract size</span>
+<a name="l00935"></a>00935 size = line.mid( positionOfSpace + 1 ).toLong( &amp;isNumber );
+<a name="l00936"></a>00936
+<a name="l00937"></a>00937 <span class="comment">//check size</span>
+<a name="l00938"></a>00938 <span class="keywordflow">if</span>( !isNumber )
+<a name="l00939"></a>00939 {
+<a name="l00940"></a>00940 <span class="comment">//the second part of the string is not a number</span>
+<a name="l00941"></a>00941 kdError() &lt;&lt; <span class="stringliteral">"ConfigElem::slotSizesReceived: get a corrupt size from "</span> &lt;&lt; dynamic_cast&lt;KIO::SimpleJob*&gt;(job)-&gt;url().host() &lt;&lt; <span class="stringliteral">". No size found at end. : "</span> &lt;&lt; line &lt;&lt; endl;
+<a name="l00942"></a>00942 corruptData = <span class="keyword">true</span>;
+<a name="l00943"></a>00943 }
+<a name="l00944"></a>00944 <span class="keywordflow">else</span>
+<a name="l00945"></a>00945 {
+<a name="l00946"></a>00946 <span class="comment">//size is ok</span>
+<a name="l00947"></a>00947 <span class="comment">//set it</span>
+<a name="l00948"></a>00948 <a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a>-&gt;<a class="code" href="classShowRecord.html#f3ae42223f76c35b2273119916a82a24">setSize</a>( number, size );
+<a name="l00949"></a>00949 }
+<a name="l00950"></a>00950 }
+<a name="l00951"></a>00951 }
+<a name="l00952"></a>00952 }
+<a name="l00953"></a>00953
+<a name="l00954"></a>00954 <span class="comment">//if the data are ok, start the third step: get headers</span>
+<a name="l00955"></a>00955 <span class="comment">//otherwise cancel the refresh</span>
+<a name="l00956"></a>00956 <span class="keywordflow">if</span>( !corruptData )
+<a name="l00957"></a>00957 <a class="code" href="classConfigElem.html#f7202b10df7e27303315d754b25b6d6c">getHeaders</a>();
+<a name="l00958"></a>00958 <span class="keywordflow">else</span>
+<a name="l00959"></a>00959 <a class="code" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh</a>();
+<a name="l00960"></a>00960 }
+<a name="l00961"></a>00961 }
+<a name="l00962"></a>00962
+<a name="l00963"></a><a class="code" href="classConfigElem.html#b3e0a075b84fed2a1e156de17cdefbad">00963</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#b3e0a075b84fed2a1e156de17cdefbad">ConfigElem::slotReceiveSize</a>( KIO::Job *, <span class="keyword">const</span> QByteArray &amp; data )
+<a name="l00964"></a>00964 {
+<a name="l00965"></a>00965 <span class="comment">//return, when data is empty</span>
+<a name="l00966"></a>00966 <span class="keywordflow">if</span>( data.isEmpty() ) <span class="keywordflow">return</span>;
+<a name="l00967"></a>00967
+<a name="l00968"></a>00968 <span class="comment">//cast the data to QString</span>
+<a name="l00969"></a>00969 QString size( data );
+<a name="l00970"></a>00970
+<a name="l00971"></a>00971 <span class="comment">//insert the uid at the end of the sizes list</span>
+<a name="l00972"></a>00972 <a class="code" href="classConfigElem.html#fc6f21ff722d537d2e59ee42e57cd337">receivedSizes</a>.append( size );
+<a name="l00973"></a>00973
+<a name="l00974"></a>00974 }
+<a name="l00975"></a>00975
+<a name="l00976"></a><a class="code" href="classConfigElem.html#f7202b10df7e27303315d754b25b6d6c">00976</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#f7202b10df7e27303315d754b25b6d6c">ConfigElem::getHeaders</a>( )
+<a name="l00977"></a>00977 {
+<a name="l00978"></a>00978 <span class="comment">//get the numbers of all new mails</span>
+<a name="l00979"></a>00979 <a class="code" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">newMails</a> = <a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a>-&gt;<a class="code" href="classShowRecord.html#89fd7edc8c324e8b0ebe6b32f2d30b9d">getNewMails</a>();
+<a name="l00980"></a>00980 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">newMails</a>.empty() )
+<a name="l00981"></a>00981 {
+<a name="l00982"></a>00982 <span class="comment">//no new mails available; copy the known headers from the old mail list</span>
+<a name="l00983"></a>00983 <a class="code" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders</a>();
+<a name="l00984"></a>00984 <span class="keywordflow">return</span>;
+<a name="l00985"></a>00985 }
+<a name="l00986"></a>00986
+<a name="l00987"></a>00987 <span class="comment">//get the headers</span>
+<a name="l00988"></a>00988 <a class="code" href="classConfigElem.html#599f2dc026bd3d759d9e2ada3d4ff3ea">getNextHeader</a>();
+<a name="l00989"></a>00989 }
+<a name="l00990"></a>00990
+<a name="l00991"></a><a class="code" href="classConfigElem.html#599f2dc026bd3d759d9e2ada3d4ff3ea">00991</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#599f2dc026bd3d759d9e2ada3d4ff3ea">ConfigElem::getNextHeader</a>( )
+<a name="l00992"></a>00992 {
+<a name="l00993"></a>00993 <span class="comment">//if the list of mails empty, copy the known headers from the old mail list</span>
+<a name="l00994"></a>00994 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">newMails</a>.empty() )
+<a name="l00995"></a>00995 {
+<a name="l00996"></a>00996 <a class="code" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders</a>();
+<a name="l00997"></a>00997 <span class="keywordflow">return</span>;
+<a name="l00998"></a>00998 }
+<a name="l00999"></a>00999
+<a name="l01000"></a>01000 <span class="comment">//clear temporary header store</span>
+<a name="l01001"></a>01001 <a class="code" href="classConfigElem.html#23ed166f77355117fa99dcbc3d5b7d12">receivedHeader</a>.resize( 0 );
+<a name="l01002"></a>01002
+<a name="l01003"></a>01003 <span class="comment">//start job</span>
+<a name="l01004"></a>01004 <a class="code" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">startKIOJob</a>( QString( <span class="stringliteral">"/headers/%1"</span> ).arg( *<a class="code" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">newMails</a>.begin() ) );
+<a name="l01005"></a>01005 connect( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>, SIGNAL( data( KIO::Job*, <span class="keyword">const</span> QByteArray &amp; ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigElem.html#52b690b870d814bf6017500edc731aae">slotReceiveHeader</a>( KIO::Job*, <span class="keyword">const</span> QByteArray &amp; ) ) );
+<a name="l01006"></a>01006 connect( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>, SIGNAL( result( KIO::Job* ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigElem.html#2220bd2656a5e87cfb2582ae8854f71c">slotHeaderDownloaded</a>( KIO::Job* ) ) );
+<a name="l01007"></a>01007
+<a name="l01008"></a>01008 }
+<a name="l01009"></a>01009
+<a name="l01010"></a><a class="code" href="classConfigElem.html#2220bd2656a5e87cfb2582ae8854f71c">01010</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#2220bd2656a5e87cfb2582ae8854f71c">ConfigElem::slotHeaderDownloaded</a>( KIO::Job * job )
+<a name="l01011"></a>01011 {
+<a name="l01012"></a>01012 <span class="comment">//stop timeout timer</span>
+<a name="l01013"></a>01013 <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a>-&gt;stop();
+<a name="l01014"></a>01014
+<a name="l01015"></a>01015 <span class="comment">//check for errors</span>
+<a name="l01016"></a>01016 <span class="comment">//if an error is occured, the download will be canceled</span>
+<a name="l01017"></a>01017 <span class="keywordflow">if</span>( job-&gt;error() != 0 )
+<a name="l01018"></a>01018 {
+<a name="l01019"></a>01019 <span class="comment">//show error message if desired</span>
+<a name="l01020"></a>01020 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a>-&gt;<a class="code" href="classConfigList.html#04033fd5903daf6b1286891a2c7a228c">showConnectionErrors</a>() )
+<a name="l01021"></a>01021 job-&gt;showErrorDialog();
+<a name="l01022"></a>01022
+<a name="l01023"></a>01023 <a class="code" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh</a>();
+<a name="l01024"></a>01024 <span class="keywordflow">return</span>;
+<a name="l01025"></a>01025 }
+<a name="l01026"></a>01026
+<a name="l01027"></a>01027 <span class="comment">//store header</span>
+<a name="l01028"></a>01028 <a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a>-&gt;<a class="code" href="classShowRecord.html#29fe412b8ef3eb2b71bbd93268baaf9a">setHeader</a>( *<a class="code" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">newMails</a>.begin(), QString( <a class="code" href="classConfigElem.html#23ed166f77355117fa99dcbc3d5b7d12">receivedHeader</a> ) );
+<a name="l01029"></a>01029
+<a name="l01030"></a>01030 <span class="comment">//remove the first item of the list of new mails</span>
+<a name="l01031"></a>01031 <a class="code" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">newMails</a>.remove( <a class="code" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">newMails</a>.begin() );
+<a name="l01032"></a>01032
+<a name="l01033"></a>01033 <span class="comment">//if the list of new mails is empty, copy the headers of old mails to the new list</span>
+<a name="l01034"></a>01034 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">newMails</a>.empty() )
+<a name="l01035"></a>01035 {
+<a name="l01036"></a>01036 <a class="code" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders</a>();
+<a name="l01037"></a>01037 <span class="keywordflow">return</span>;
+<a name="l01038"></a>01038 }
+<a name="l01039"></a>01039
+<a name="l01040"></a>01040 <span class="comment">//get next header</span>
+<a name="l01041"></a>01041 <a class="code" href="classConfigElem.html#599f2dc026bd3d759d9e2ada3d4ff3ea">getNextHeader</a>();
+<a name="l01042"></a>01042 }
+<a name="l01043"></a>01043
+<a name="l01044"></a><a class="code" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">01044</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">ConfigElem::copyHeaders</a>( )
+<a name="l01045"></a>01045 {
+<a name="l01046"></a>01046 <span class="comment">//get the UIDs of the old mails in the temporary mail list</span>
+<a name="l01047"></a>01047 QStringList UIDs = <a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a>-&gt;<a class="code" href="classShowRecord.html#ae03febb272198c00851b4e46be68b83">getUIDsOfOldMails</a>();
+<a name="l01048"></a>01048
+<a name="l01049"></a>01049 <span class="comment">//iterate over all members of the list,</span>
+<a name="l01050"></a>01050 <span class="comment">//get the header from the old list and store it in the new one</span>
+<a name="l01051"></a>01051 QStringList::iterator it;
+<a name="l01052"></a>01052 <span class="keywordflow">for</span> ( it = UIDs.begin(); it != UIDs.end(); ++it )
+<a name="l01053"></a>01053 {
+<a name="l01054"></a>01054 QString header = <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#15ef001ed312f642b8cd8cf2619ecfb4">getHeaderOf</a>( *it );
+<a name="l01055"></a>01055 <a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a>-&gt;<a class="code" href="classShowRecord.html#29fe412b8ef3eb2b71bbd93268baaf9a">setHeader</a>( *it, header );
+<a name="l01056"></a>01056 }
+<a name="l01057"></a>01057
+<a name="l01058"></a>01058 <span class="comment">//commit refresh</span>
+<a name="l01059"></a>01059 <a class="code" href="classConfigElem.html#3691ecff2aab23143072b434fd304c45">commitRefresh</a>();
+<a name="l01060"></a>01060 }
+<a name="l01061"></a>01061
+<a name="l01062"></a><a class="code" href="classConfigElem.html#52b690b870d814bf6017500edc731aae">01062</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#52b690b870d814bf6017500edc731aae">ConfigElem::slotReceiveHeader</a>( KIO::Job *, <span class="keyword">const</span> QByteArray &amp; data )
+<a name="l01063"></a>01063 {
+<a name="l01064"></a>01064 <span class="keywordflow">if</span>( !data.isEmpty() )
+<a name="l01065"></a>01065 {
+<a name="l01066"></a>01066 <span class="comment">//we get the next part of the mail</span>
+<a name="l01067"></a>01067 <span class="comment">//append it</span>
+<a name="l01068"></a>01068 uint lastSize = <a class="code" href="classConfigElem.html#23ed166f77355117fa99dcbc3d5b7d12">receivedHeader</a>.size();
+<a name="l01069"></a>01069 <a class="code" href="classConfigElem.html#23ed166f77355117fa99dcbc3d5b7d12">receivedHeader</a>.resize( lastSize + data.size() );
+<a name="l01070"></a>01070 <span class="keywordflow">for</span>( uint i = 0; i &lt; data.size(); i++ )
+<a name="l01071"></a>01071 <a class="code" href="classConfigElem.html#23ed166f77355117fa99dcbc3d5b7d12">receivedHeader</a>[ lastSize + i ] = data[ i ];
+<a name="l01072"></a>01072 }
+<a name="l01073"></a>01073 }
+<a name="l01074"></a>01074
+<a name="l01075"></a><a class="code" href="classConfigElem.html#2725f96acd936fd8a9008d6ddf04ba76">01075</a> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#2725f96acd936fd8a9008d6ddf04ba76">ConfigElem::getNumberNewMails</a>( )
+<a name="l01076"></a>01076 {
+<a name="l01077"></a>01077 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#fb2d493f52927c18ccc35352d2d2b115">getNumberNewMails</a>();
+<a name="l01078"></a>01078 }
+<a name="l01079"></a>01079
+<a name="l01080"></a><a class="code" href="classConfigElem.html#c072d6241f981b1e0ffffb63a0a52250">01080</a> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#c072d6241f981b1e0ffffb63a0a52250">ConfigElem::getNumberMails</a>( )
+<a name="l01081"></a>01081 {
+<a name="l01082"></a>01082 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#5fc0413079f9cfc5b32c36812f643c0a">getNumberMails</a>();
+<a name="l01083"></a>01083 }
+<a name="l01084"></a>01084
+<a name="l01085"></a><a class="code" href="classConfigElem.html#bb71d58016499cd57784e60efee37b0f">01085</a> <span class="keywordtype">long</span> <a class="code" href="classConfigElem.html#bb71d58016499cd57784e60efee37b0f">ConfigElem::getTotalSize</a>( )
+<a name="l01086"></a>01086 {
+<a name="l01087"></a>01087 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#c6c9d9e7e23f57006d2d573442a144b5">getTotalSize</a>();
+<a name="l01088"></a>01088 }
+<a name="l01089"></a>01089
+<a name="l01090"></a><a class="code" href="classConfigElem.html#365bd67f2ec657beaf98ded2463b61a2">01090</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#365bd67f2ec657beaf98ded2463b61a2">ConfigElem::fillMailListView</a>( <a class="code" href="classKshowmailView.html">KshowmailView</a>* view )
+<a name="l01091"></a>01091 {
+<a name="l01092"></a>01092 <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#7124760f6dffce82cf267276f4c0d015">fillMailListView</a>( view, <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l01093"></a>01093 }
+<a name="l01094"></a>01094
+<a name="l01095"></a><a class="code" href="classConfigElem.html#3a709da00728e100343bfde8aac61491">01095</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#3a709da00728e100343bfde8aac61491">ConfigElem::refreshAccountListItem</a>( )
+<a name="l01096"></a>01096 {
+<a name="l01097"></a>01097 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a> != NULL )
+<a name="l01098"></a>01098 {
+<a name="l01099"></a>01099 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a>() )
+<a name="l01100"></a>01100 {
+<a name="l01101"></a>01101 <a class="code" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a>-&gt;setText( 4, QString( <span class="stringliteral">"%1"</span> ).arg( <a class="code" href="classConfigElem.html#c072d6241f981b1e0ffffb63a0a52250">getNumberMails</a>(), 3 ) );
+<a name="l01102"></a>01102 <a class="code" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a>-&gt;setText( 5, QString( <span class="stringliteral">"%1"</span> ).arg( <a class="code" href="classConfigElem.html#bb71d58016499cd57784e60efee37b0f">getTotalSize</a>(), 8 ) );
+<a name="l01103"></a>01103 }
+<a name="l01104"></a>01104 <span class="keywordflow">else</span>
+<a name="l01105"></a>01105 {
+<a name="l01106"></a>01106 <a class="code" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a>-&gt;setText( 4, QString( <span class="stringliteral">"???"</span> ) );
+<a name="l01107"></a>01107 <a class="code" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a>-&gt;setText( 5, QString( <span class="stringliteral">"???"</span> ) );
+<a name="l01108"></a>01108 }
+<a name="l01109"></a>01109 }
+<a name="l01110"></a>01110 }
+<a name="l01111"></a>01111
+<a name="l01112"></a><a class="code" href="classConfigElem.html#be79ff49926793b27e8af8b5101c7b70">01112</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#be79ff49926793b27e8af8b5101c7b70">ConfigElem::killPOP3Job</a>( )
+<a name="l01113"></a>01113 {
+<a name="l01114"></a>01114 <span class="comment">//just try to kill, if it is not idle</span>
+<a name="l01115"></a>01115 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> != <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">AccountIdle</a> )
+<a name="l01116"></a>01116 {
+<a name="l01117"></a>01117 <span class="comment">//kill a running job</span>
+<a name="l01118"></a>01118 <span class="keywordflow">if</span>( <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a> != NULL )
+<a name="l01119"></a>01119 <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>-&gt;kill( <span class="keyword">true</span> );
+<a name="l01120"></a>01120
+<a name="l01121"></a>01121 <span class="comment">//stop timeout timer</span>
+<a name="l01122"></a>01122 <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a>-&gt;stop();
+<a name="l01123"></a>01123
+<a name="l01124"></a>01124 <span class="comment">//call the appropriate finalize method</span>
+<a name="l01125"></a>01125 <span class="keywordflow">switch</span>( <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a> )
+<a name="l01126"></a>01126 {
+<a name="l01127"></a>01127 <span class="keywordflow">case</span> <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6c13599f1c51b33a59b319794917ccff5">AccountDeleting</a> : <a class="code" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">slotFinalizeDeletion</a>( NULL ); <span class="keywordflow">break</span>;
+<a name="l01128"></a>01128 <span class="keywordflow">case</span> <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b63accada2afa1ad270e3b25c14cae5fd9">AccountDownloading</a> : <a class="code" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail</a>( NULL ); <span class="keywordflow">break</span>;
+<a name="l01129"></a>01129 <span class="keywordflow">case</span> <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6ba5316f9cbdb41a05f75ebe4976865b9">AccountRefreshing</a> : <a class="code" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh</a>(); <span class="keywordflow">break</span>;
+<a name="l01130"></a>01130
+<a name="l01131"></a>01131 <span class="keywordflow">default</span> : <span class="keywordflow">break</span>;
+<a name="l01132"></a>01132 }
+<a name="l01133"></a>01133 }
+<a name="l01134"></a>01134 }
+<a name="l01135"></a>01135
+<a name="l01136"></a><a class="code" href="classConfigElem.html#0725bb36943ca6fd1ca82af5ef6913a3">01136</a> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#0725bb36943ca6fd1ca82af5ef6913a3">ConfigElem::showSelectedHeaders</a>( )
+<a name="l01137"></a>01137 {
+<a name="l01138"></a>01138 <span class="comment">//return, if no mails are selected</span>
+<a name="l01139"></a>01139 <span class="keywordflow">if</span>( !<a class="code" href="classConfigElem.html#748ec06f6ad44f36143389bb9501a1f7">hasSelectedMails</a>() )
+<a name="l01140"></a>01140 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#8dc234323fe966a322ae8649bc2cd76e">ConfigElem::continueShowHeaders</a>;
+<a name="l01141"></a>01141
+<a name="l01142"></a>01142 <span class="comment">//order the mail list to show the headers of the selected mails</span>
+<a name="l01143"></a>01143 <span class="keywordtype">int</span> ret = <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>-&gt;<a class="code" href="classShowRecord.html#89005d433c577ed0e412c6314400cc31">showSelectedHeaders</a>( <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> );
+<a name="l01144"></a>01144
+<a name="l01145"></a>01145 <span class="keywordflow">return</span> ret == <a class="code" href="classShowRecord.html#24f3968b9bd526deb987f3e21f264404">ShowRecord::continueShowHeaders</a> ? <a class="code" href="classConfigElem.html#8dc234323fe966a322ae8649bc2cd76e">ConfigElem::continueShowHeaders</a> : <a class="code" href="classConfigElem.html#85fb09c9cdc92ae5e8663bf8c6c4a615">ConfigElem::cancelShowHeaders</a>;
+<a name="l01146"></a>01146 }
+<a name="l01147"></a>01147
+<a name="l01148"></a><a class="code" href="classConfigElem.html#46e0d578a0c537e8d13ad689044f1fe7">01148</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#46e0d578a0c537e8d13ad689044f1fe7">ConfigElem::printSetup</a>( )<span class="keyword"> const</span>
+<a name="l01149"></a>01149 <span class="keyword"></span>{
+<a name="l01150"></a>01150 kdDebug() &lt;&lt; <span class="stringliteral">"Setup of "</span> &lt;&lt; <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a> &lt;&lt; <span class="stringliteral">":"</span> &lt;&lt; endl;
+<a name="l01151"></a>01151 kdDebug() &lt;&lt; <span class="stringliteral">"Host: "</span> &lt;&lt; <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.host() &lt;&lt; endl;
+<a name="l01152"></a>01152 kdDebug() &lt;&lt; <span class="stringliteral">"Protocol: "</span> &lt;&lt; <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.protocol() &lt;&lt; endl;
+<a name="l01153"></a>01153 kdDebug() &lt;&lt; <span class="stringliteral">"Port: "</span> &lt;&lt; <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.port() &lt;&lt; endl;
+<a name="l01154"></a>01154 kdDebug() &lt;&lt; <span class="stringliteral">"User: "</span> &lt;&lt; <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.user() &lt;&lt; endl;
+<a name="l01155"></a>01155 kdDebug() &lt;&lt; <span class="stringliteral">"Password: "</span> &lt;&lt; <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.pass() &lt;&lt; endl;
+<a name="l01156"></a>01156
+<a name="l01157"></a>01157 <span class="keywordflow">switch</span>( <a class="code" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">PasswordStorage</a> )
+<a name="l01158"></a>01158 {
+<a name="l01159"></a>01159 <span class="keywordflow">case</span> CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE : kdDebug() &lt;&lt; <span class="stringliteral">"Password Storage: don't save"</span> &lt;&lt; endl; <span class="keywordflow">break</span>;
+<a name="l01160"></a>01160 <span class="keywordflow">case</span> CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE : kdDebug() &lt;&lt; <span class="stringliteral">"Password Storage: save in file"</span> &lt;&lt; endl; <span class="keywordflow">break</span>;
+<a name="l01161"></a>01161 <span class="keywordflow">case</span> CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET : kdDebug() &lt;&lt; <span class="stringliteral">"Password Storage: use KWallet"</span> &lt;&lt; endl; <span class="keywordflow">break</span>;
+<a name="l01162"></a>01162 <span class="keywordflow">default</span> : kdDebug() &lt;&lt; <span class="stringliteral">"Password Storage: invalid value"</span> &lt;&lt; endl;
+<a name="l01163"></a>01163
+<a name="l01164"></a>01164 }
+<a name="l01165"></a>01165
+<a name="l01166"></a>01166 kdDebug() &lt;&lt; <span class="stringliteral">"active: "</span> &lt;&lt; <a class="code" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">m_bActive</a> &lt;&lt; endl &lt;&lt; endl;
+<a name="l01167"></a>01167
+<a name="l01168"></a>01168
+<a name="l01169"></a>01169 }
+<a name="l01170"></a>01170
+<a name="l01171"></a><a class="code" href="classConfigElem.html#58f9d269bd389c52718d78d7615c4431">01171</a> <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#58f9d269bd389c52718d78d7615c4431">ConfigElem::setPasswordStorage</a>( <span class="keywordtype">int</span> storage )
+<a name="l01172"></a>01172 {
+<a name="l01173"></a>01173 <span class="keywordflow">if</span>( storage == CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE ||
+<a name="l01174"></a>01174 storage == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE ||
+<a name="l01175"></a>01175 storage == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET )
+<a name="l01176"></a>01176
+<a name="l01177"></a>01177 <a class="code" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">PasswordStorage</a> = storage;
+<a name="l01178"></a>01178
+<a name="l01179"></a>01179 <span class="keywordflow">else</span>
+<a name="l01180"></a>01180
+<a name="l01181"></a>01181 <a class="code" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">PasswordStorage</a> = DEFAULT_ACCOUNT_PASSWORD_STORAGE;
+<a name="l01182"></a>01182 }
+<a name="l01183"></a>01183
+<a name="l01184"></a><a class="code" href="classConfigElem.html#34bc68f7bbdc296d18460f303f479450">01184</a> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#34bc68f7bbdc296d18460f303f479450">ConfigElem::getPasswordStorage</a>( )<span class="keyword"> const</span>
+<a name="l01185"></a>01185 <span class="keyword"></span>{
+<a name="l01186"></a>01186 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">PasswordStorage</a>;
+<a name="l01187"></a>01187 }
+<a name="l01188"></a>01188
+<a name="l01189"></a><a class="code" href="classConfigElem.html#562620c4141a744725d384309a9e55f1">01189</a> QString <a class="code" href="classConfigElem.html#562620c4141a744725d384309a9e55f1">ConfigElem::getProtocol</a>( <span class="keywordtype">bool</span> upperCase )<span class="keyword"> const</span>
+<a name="l01190"></a>01190 <span class="keyword"></span>{
+<a name="l01191"></a>01191 <span class="keywordflow">if</span>( upperCase )
+<a name="l01192"></a>01192 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.protocol().upper();
+<a name="l01193"></a>01193 <span class="keywordflow">else</span>
+<a name="l01194"></a>01194 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.protocol();
+<a name="l01195"></a>01195 }
+<a name="l01196"></a>01196
+<a name="l01197"></a><a class="code" href="classConfigElem.html#2b3366a9ebc43549491bd003578a0bc8">01197</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#2b3366a9ebc43549491bd003578a0bc8">ConfigElem::getPort</a>( )<span class="keyword"> const</span>
+<a name="l01198"></a>01198 <span class="keyword"></span>{
+<a name="l01199"></a>01199 <span class="keywordflow">return</span> <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>.port();
+<a name="l01200"></a>01200 }
+<a name="l01201"></a>01201
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/configelem_8h-source.html b/doc/html/configelem_8h-source.html
new file mode 100644
index 0000000..697d9ce
--- /dev/null
+++ b/doc/html/configelem_8h-source.html
@@ -0,0 +1,363 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/configelem.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>configelem.h</h1><a href="configelem_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> configelem.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Tue May 9 2000</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2000-2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef CONFIGELEM_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define CONFIGELEM_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="comment">//C headers</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;time.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;unistd.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 <span class="comment">//QT headers</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;qstring.h&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;qlistview.h&gt;</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;qdom.h&gt;</span>
+<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;qobject.h&gt;</span>
+<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;qtimer.h&gt;</span>
+<a name="l00033"></a>00033 <span class="preprocessor">#include &lt;qregexp.h&gt;</span>
+<a name="l00034"></a>00034 <span class="preprocessor">#include &lt;qdir.h&gt;</span>
+<a name="l00035"></a>00035 <span class="preprocessor">#include &lt;qfile.h&gt;</span>
+<a name="l00036"></a>00036 <span class="preprocessor">#include &lt;qtextstream.h&gt;</span>
+<a name="l00037"></a>00037
+<a name="l00038"></a>00038 <span class="comment">//KDE headers</span>
+<a name="l00039"></a>00039 <span class="preprocessor">#include &lt;kurl.h&gt;</span>
+<a name="l00040"></a>00040 <span class="preprocessor">#include &lt;kconfig.h&gt;</span>
+<a name="l00041"></a>00041 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00042"></a>00042 <span class="preprocessor">#include &lt;kpassdlg.h&gt;</span>
+<a name="l00043"></a>00043 <span class="preprocessor">#include &lt;kio/job.h&gt;</span>
+<a name="l00044"></a>00044 <span class="preprocessor">#include &lt;kio/global.h&gt;</span>
+<a name="l00045"></a>00045 <span class="preprocessor">#include &lt;kmessagebox.h&gt;</span>
+<a name="l00046"></a>00046 <span class="preprocessor">#include &lt;kapplication.h&gt;</span>
+<a name="l00047"></a>00047
+<a name="l00048"></a>00048 <span class="comment">//KShowmail headers</span>
+<a name="l00049"></a>00049 <span class="preprocessor">#include "<a class="code" href="showrecord_8h.html">showrecord.h</a>"</span>
+<a name="l00050"></a>00050 <span class="preprocessor">#include "<a class="code" href="constants_8h.html">constants.h</a>"</span>
+<a name="l00051"></a>00051 <span class="preprocessor">#include "<a class="code" href="types_8h.html">types.h</a>"</span>
+<a name="l00052"></a>00052 <span class="preprocessor">#include "<a class="code" href="configlist_8h.html">configlist.h</a>"</span>
+<a name="l00053"></a>00053 <span class="preprocessor">#include "<a class="code" href="showmaildialog_8h.html">showmaildialog.h</a>"</span>
+<a name="l00054"></a>00054 <span class="preprocessor">#include "<a class="code" href="decodeRFC2047_8h.html">decodeRFC2047.h</a>"</span>
+<a name="l00055"></a>00055 <span class="preprocessor">#include "<a class="code" href="kshowmailview_8h.html">kshowmailview.h</a>"</span>
+<a name="l00056"></a>00056 <span class="preprocessor">#include "<a class="code" href="encryption_8h.html">encryption.h</a>"</span>
+<a name="l00057"></a>00057 <span class="preprocessor">#include "<a class="code" href="kwalletaccess_8h.html">kwalletaccess.h</a>"</span>
+<a name="l00058"></a>00058 <span class="preprocessor">#include "<a class="code" href="headerfilter_8h.html">headerfilter.h</a>"</span>
+<a name="l00059"></a>00059 <span class="preprocessor">#include "<a class="code" href="filterlog_8h.html">filterlog.h</a>"</span>
+<a name="l00060"></a>00060
+<a name="l00061"></a>00061
+<a name="l00062"></a>00062
+<a name="l00063"></a>00063 <span class="keyword">using namespace </span>Constants;
+<a name="l00064"></a>00064 <span class="keyword">using namespace </span>Types;
+<a name="l00065"></a>00065 <span class="keyword">using namespace </span>Encryption;
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 <span class="comment">//forward class declarations</span>
+<a name="l00068"></a>00068 <span class="keyword">class </span><a class="code" href="classKshowmailView.html">KshowmailView</a>;
+<a name="l00069"></a>00069 <span class="keyword">class </span><a class="code" href="classConfigList.html">ConfigList</a>;
+<a name="l00070"></a>00070 <span class="keyword">class </span><a class="code" href="classShowRecordElem.html">ShowRecordElem</a>;
+<a name="l00071"></a>00071 <span class="keyword">class </span><a class="code" href="classShowRecord.html">ShowRecord</a>;
+<a name="l00072"></a>00072
+<a name="l00086"></a><a class="code" href="classConfigElem.html">00086</a> <span class="keyword">class </span><a class="code" href="classConfigElem.html">ConfigElem</a> : <span class="keyword">public</span> QObject {
+<a name="l00087"></a>00087
+<a name="l00088"></a>00088 Q_OBJECT
+<a name="l00089"></a>00089
+<a name="l00090"></a>00090 <span class="keyword">public</span>:
+<a name="l00091"></a>00091
+<a name="l00096"></a><a class="code" href="classConfigElem.html#8dc234323fe966a322ae8649bc2cd76e">00096</a> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#8dc234323fe966a322ae8649bc2cd76e">continueShowHeaders</a>;
+<a name="l00097"></a>00097
+<a name="l00102"></a><a class="code" href="classConfigElem.html#85fb09c9cdc92ae5e8663bf8c6c4a615">00102</a> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#85fb09c9cdc92ae5e8663bf8c6c4a615">cancelShowHeaders</a>;
+<a name="l00103"></a>00103
+<a name="l00109"></a>00109 <a class="code" href="classConfigElem.html#dbbb95e2595abd6e9b0f593e7edfa283">ConfigElem</a>();
+<a name="l00110"></a>00110
+<a name="l00115"></a>00115 <a class="code" href="classConfigElem.html#dbbb95e2595abd6e9b0f593e7edfa283">ConfigElem</a> ( <a class="code" href="classConfigList.html">ConfigList</a>* config );
+<a name="l00116"></a>00116
+<a name="l00124"></a>00124 <a class="code" href="classConfigElem.html#dbbb95e2595abd6e9b0f593e7edfa283">ConfigElem</a>( <a class="code" href="classConfigElem.html">ConfigElem</a>* pElem );
+<a name="l00125"></a>00125
+<a name="l00134"></a>00134 <a class="code" href="classConfigElem.html#dbbb95e2595abd6e9b0f593e7edfa283">ConfigElem</a>( <a class="code" href="classConfigList.html">ConfigList</a>* config, <span class="keyword">const</span> QString&amp; account );
+<a name="l00135"></a>00135
+<a name="l00140"></a>00140 <a class="code" href="classConfigElem.html#d14d9c03f757691f198efd14104a3ce8">~ConfigElem</a>();
+<a name="l00141"></a>00141
+<a name="l00146"></a>00146 <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a>() <span class="keyword">const</span>;
+<a name="l00147"></a>00147
+<a name="l00152"></a>00152 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#4a5aa6b86e56403fa453c9d642b71812">setActive</a>( <span class="keywordtype">bool</span> active );
+<a name="l00153"></a>00153
+<a name="l00158"></a>00158 QString <a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>() <span class="keyword">const</span>;
+<a name="l00159"></a>00159
+<a name="l00164"></a>00164 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#8248ddc45de2d7d924e59e7c591da98f">setAccountName</a>( QString name );
+<a name="l00165"></a>00165
+<a name="l00170"></a>00170 QString <a class="code" href="classConfigElem.html#7ea9a96f400284acce0999639659c461">getPassword</a>() <span class="keyword">const</span>;
+<a name="l00171"></a>00171
+<a name="l00177"></a>00177 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#6edf15369f3e906a04dff0b92f5b3c2d">setPassword</a>( <span class="keyword">const</span> QString&amp; password );
+<a name="l00178"></a>00178
+<a name="l00183"></a>00183 <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#371db6ec6023c72fbfac6b765b0de08b">hasPassword</a>() <span class="keyword">const</span>;
+<a name="l00184"></a>00184
+<a name="l00189"></a>00189 KURL <a class="code" href="classConfigElem.html#a4b9669aff68ef45c260c2d485d8a405">getURL</a>() <span class="keyword">const</span>;
+<a name="l00190"></a>00190
+<a name="l00196"></a>00196 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#a58326995659da378bc160ed90ad578b">setListViewItem</a>( QListViewItem* item );
+<a name="l00197"></a>00197
+<a name="l00203"></a>00203 QListViewItem* <a class="code" href="classConfigElem.html#b5b2ecee68626b7ff80219cdb3f3bed2">getListViewItem</a>();
+<a name="l00204"></a>00204
+<a name="l00210"></a>00210 <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#8e8e1f32420d051a8c6d4df4a3ad4b93">isSelected</a>() <span class="keyword">const</span>;
+<a name="l00211"></a>00211
+<a name="l00215"></a>00215 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#5fc7f4f73b17bb27faef10d96b80a77c">clearMailList</a>();
+<a name="l00216"></a>00216
+<a name="l00221"></a>00221 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#cf56636bf7537e7f5dbc1a762b4670d2">setHost</a>( <span class="keyword">const</span> QString&amp; host );
+<a name="l00222"></a>00222
+<a name="l00227"></a>00227 QString <a class="code" href="classConfigElem.html#6a7f0888c77882eda05bcc22a27947c1">getHost</a>() <span class="keyword">const</span>;
+<a name="l00228"></a>00228
+<a name="l00233"></a>00233 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#103236b06a88a8d14b629170df1a7ca9">setProtocol</a>( <span class="keyword">const</span> QString&amp; protocol );
+<a name="l00234"></a>00234
+<a name="l00240"></a>00240 QString <a class="code" href="classConfigElem.html#562620c4141a744725d384309a9e55f1">getProtocol</a>( <span class="keywordtype">bool</span> upperCase = <span class="keyword">false</span> ) <span class="keyword">const</span>;
+<a name="l00241"></a>00241
+<a name="l00246"></a>00246 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#67f45e40b98d20d7d26e1e244f42b208">setTLS</a>( <span class="keywordtype">bool</span> tls );
+<a name="l00247"></a>00247
+<a name="l00253"></a>00253 <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#fdc03b7cd5b73cca18f0787509e32edc">getTLS</a>() <span class="keyword">const</span>;
+<a name="l00254"></a>00254
+<a name="l00259"></a>00259 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#cc66eba0b4fbf308cddad0478f20ef0f">setPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> <span class="keywordtype">int</span> port );
+<a name="l00260"></a>00260
+<a name="l00265"></a>00265 <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#2b3366a9ebc43549491bd003578a0bc8">getPort</a>() <span class="keyword">const</span>;
+<a name="l00266"></a>00266
+<a name="l00271"></a>00271 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#856ca37e391329be6b06f8be2f0a1f74">setUser</a>( <span class="keyword">const</span> QString&amp; user );
+<a name="l00272"></a>00272
+<a name="l00277"></a>00277 QString <a class="code" href="classConfigElem.html#19f5621cac8e71c1088995bcef75596a">getUser</a>() <span class="keyword">const</span>;
+<a name="l00278"></a>00278
+<a name="l00284"></a>00284 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#58f9d269bd389c52718d78d7615c4431">setPasswordStorage</a>( <span class="keywordtype">int</span> storage );
+<a name="l00285"></a>00285
+<a name="l00291"></a>00291 <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#34bc68f7bbdc296d18460f303f479450">getPasswordStorage</a>() <span class="keyword">const</span>;
+<a name="l00292"></a>00292
+<a name="l00293"></a>00293
+<a name="l00301"></a>00301 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#bda433f60b1eed0d4b8d207707d5005c">saveOptions</a>( QDomDocument&amp; doc, QDomElement&amp; parent );
+<a name="l00302"></a>00302
+<a name="l00307"></a>00307 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#dee46100623211279e37f498ac43c4e4">readStoredMails</a>( QDomElement&amp; parent );
+<a name="l00308"></a>00308
+<a name="l00313"></a>00313 <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#300f2eab6d5d210b64b595b1a6048a5f">count</a>();
+<a name="l00314"></a>00314
+<a name="l00320"></a>00320 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#750ccb3fb3f7d1857b79f7218f5a0767">deleteSelectedMails</a>();
+<a name="l00321"></a>00321
+<a name="l00328"></a>00328 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#01e5735260c23f43480d807e7e9070c9">showSelectedMails</a>();
+<a name="l00329"></a>00329
+<a name="l00338"></a>00338 <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#973328114a20a798887ab040aba33141">assertPassword</a>( <span class="keywordtype">bool</span> force = <span class="keyword">false</span> );
+<a name="l00339"></a>00339
+<a name="l00344"></a>00344 <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">Types::AccountState_Type</a> <a class="code" href="classConfigElem.html#1b2187ece7367694776f17c6cad6571c">getState</a>();
+<a name="l00345"></a>00345
+<a name="l00350"></a>00350 QStringList <a class="code" href="classConfigElem.html#93c5c182878b9809188933046e04a998">getSelectedSubjects</a>() <span class="keyword">const</span>;
+<a name="l00351"></a>00351
+<a name="l00358"></a>00358 <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#748ec06f6ad44f36143389bb9501a1f7">hasSelectedMails</a>();
+<a name="l00359"></a>00359
+<a name="l00368"></a>00368 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#83af8872b7e83279750434e7ef376e5b">refreshMailList</a>( <a class="code" href="classFilterLog.html">FilterLog</a>* log = NULL );
+<a name="l00369"></a>00369
+<a name="l00374"></a>00374 <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#2725f96acd936fd8a9008d6ddf04ba76">getNumberNewMails</a>();
+<a name="l00375"></a>00375
+<a name="l00380"></a>00380 <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#c072d6241f981b1e0ffffb63a0a52250">getNumberMails</a>();
+<a name="l00381"></a>00381
+<a name="l00386"></a>00386 <span class="keywordtype">long</span> <a class="code" href="classConfigElem.html#bb71d58016499cd57784e60efee37b0f">getTotalSize</a>();
+<a name="l00387"></a>00387
+<a name="l00393"></a>00393 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#365bd67f2ec657beaf98ded2463b61a2">fillMailListView</a>( <a class="code" href="classKshowmailView.html">KshowmailView</a>* view );
+<a name="l00394"></a>00394
+<a name="l00400"></a>00400 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#3a709da00728e100343bfde8aac61491">refreshAccountListItem</a>();
+<a name="l00401"></a>00401
+<a name="l00405"></a>00405 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#be79ff49926793b27e8af8b5101c7b70">killPOP3Job</a>();
+<a name="l00406"></a>00406
+<a name="l00413"></a>00413 <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#0725bb36943ca6fd1ca82af5ef6913a3">showSelectedHeaders</a>();
+<a name="l00414"></a>00414
+<a name="l00418"></a>00418 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#46e0d578a0c537e8d13ad689044f1fe7">printSetup</a>() <span class="keyword">const</span>;
+<a name="l00419"></a>00419
+<a name="l00424"></a>00424 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#f0c46e80c8300ab141a759042d4f38b5">reloadFilterSettings</a>();
+<a name="l00425"></a>00425
+<a name="l00426"></a>00426
+<a name="l00427"></a>00427 <span class="keyword">private</span>:
+<a name="l00428"></a>00428
+<a name="l00433"></a><a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">00433</a> <a class="code" href="classConfigList.html">ConfigList</a>* <a class="code" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">appConfig</a>;
+<a name="l00434"></a>00434
+<a name="l00439"></a><a class="code" href="classConfigElem.html#e3f2a5c6b03dd756f474255247461b02">00439</a> <a class="code" href="classFilterLog.html">FilterLog</a>* <a class="code" href="classConfigElem.html#e3f2a5c6b03dd756f474255247461b02">FLog</a>;
+<a name="l00440"></a>00440
+<a name="l00444"></a><a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">00444</a> <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">Types::AccountState_Type</a> <a class="code" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">state</a>;
+<a name="l00445"></a>00445
+<a name="l00453"></a><a class="code" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">00453</a> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">PasswordStorage</a>;
+<a name="l00454"></a>00454
+<a name="l00458"></a><a class="code" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">00458</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">m_bActive</a>;
+<a name="l00459"></a>00459
+<a name="l00463"></a><a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">00463</a> QString <a class="code" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">m_strAccount</a>;
+<a name="l00464"></a>00464
+<a name="l00468"></a><a class="code" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">00468</a> QListViewItem* <a class="code" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">m_pViewItem</a>;
+<a name="l00469"></a>00469
+<a name="l00473"></a><a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">00473</a> <a class="code" href="classShowRecord.html">ShowRecord</a>* <a class="code" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">m_pshowrecord</a>;
+<a name="l00474"></a>00474
+<a name="l00478"></a><a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">00478</a> KURL <a class="code" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">m_url</a>;
+<a name="l00479"></a>00479
+<a name="l00484"></a><a class="code" href="classConfigElem.html#b8a7341e3db3e69b8e661c89ff08b7f4">00484</a> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#b8a7341e3db3e69b8e661c89ff08b7f4">secureLoginType</a>;
+<a name="l00485"></a>00485
+<a name="l00489"></a><a class="code" href="classConfigElem.html#b13600ffaaae88a8e0baf030ffd926a1">00489</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#b13600ffaaae88a8e0baf030ffd926a1">useTLS</a>;
+<a name="l00490"></a>00490
+<a name="l00495"></a><a class="code" href="classConfigElem.html#ac5a5ecf9c70a0c94c2cf7181a1989dd">00495</a> QByteArray <a class="code" href="classConfigElem.html#ac5a5ecf9c70a0c94c2cf7181a1989dd">mailbody</a>;
+<a name="l00496"></a>00496
+<a name="l00505"></a><a class="code" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">00505</a> <a class="code" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">MailNumberList_Type</a> <a class="code" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">MailsToDelete</a>;
+<a name="l00506"></a>00506
+<a name="l00513"></a><a class="code" href="classConfigElem.html#dc3d4a8f849b476ff72d2c485a3ffa36">00513</a> <a class="code" href="namespaceTypes.html#28b7da8de2bbe1b7a098d41242e78ab7">MailToDownloadMap_Type</a> <a class="code" href="classConfigElem.html#dc3d4a8f849b476ff72d2c485a3ffa36">MailsToDownload</a>;
+<a name="l00514"></a>00514
+<a name="l00522"></a><a class="code" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">00522</a> <a class="code" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">MailNumberList_Type</a> <a class="code" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">MailsToShow</a>;
+<a name="l00523"></a>00523
+<a name="l00531"></a><a class="code" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">00531</a> <a class="code" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">MailNumberList_Type</a> <a class="code" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">newMails</a>;
+<a name="l00532"></a>00532
+<a name="l00536"></a><a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">00536</a> KIO::TransferJob* <a class="code" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">pop3Job</a>;
+<a name="l00537"></a>00537
+<a name="l00542"></a><a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">00542</a> QTimer* <a class="code" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">pop3Timer</a>;
+<a name="l00543"></a>00543
+<a name="l00549"></a><a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">00549</a> <a class="code" href="classShowRecord.html">ShowRecord</a>* <a class="code" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">tempMailList</a>;
+<a name="l00550"></a>00550
+<a name="l00555"></a><a class="code" href="classConfigElem.html#80f016779bdc8774cc7822a839b2c796">00555</a> QStringList <a class="code" href="classConfigElem.html#80f016779bdc8774cc7822a839b2c796">receivedUIDs</a>;
+<a name="l00556"></a>00556
+<a name="l00561"></a><a class="code" href="classConfigElem.html#fc6f21ff722d537d2e59ee42e57cd337">00561</a> QStringList <a class="code" href="classConfigElem.html#fc6f21ff722d537d2e59ee42e57cd337">receivedSizes</a>;
+<a name="l00562"></a>00562
+<a name="l00567"></a><a class="code" href="classConfigElem.html#23ed166f77355117fa99dcbc3d5b7d12">00567</a> QByteArray <a class="code" href="classConfigElem.html#23ed166f77355117fa99dcbc3d5b7d12">receivedHeader</a>;
+<a name="l00568"></a>00568
+<a name="l00572"></a><a class="code" href="classConfigElem.html#85b505610abbe0c01921a6e385a7548e">00572</a> <a class="code" href="classHeaderFilter.html">HeaderFilter</a> <a class="code" href="classConfigElem.html#85b505610abbe0c01921a6e385a7548e">headerFilter</a>;
+<a name="l00573"></a>00573
+<a name="l00581"></a><a class="code" href="classConfigElem.html#1c5b6fd53a5dfbe13c8d9ef2f3b97608">00581</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#1c5b6fd53a5dfbe13c8d9ef2f3b97608">filterApplied</a>;
+<a name="l00582"></a>00582
+<a name="l00587"></a><a class="code" href="classConfigElem.html#c3a6aea2718324eba83d02f6e5828fa5">00587</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#c3a6aea2718324eba83d02f6e5828fa5">deletionPerformedByFilters</a>;
+<a name="l00588"></a>00588
+<a name="l00593"></a><a class="code" href="classConfigElem.html#b842ac987bd40656b334c4e8c3a75103">00593</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#b842ac987bd40656b334c4e8c3a75103">refreshPerformedByFilters</a>;
+<a name="l00594"></a>00594
+<a name="l00599"></a><a class="code" href="classConfigElem.html#f96a3bda830dcfbe7aa579c3e64cfed4">00599</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#f96a3bda830dcfbe7aa579c3e64cfed4">downloadActionsInvoked</a>;
+<a name="l00600"></a>00600
+<a name="l00604"></a><a class="code" href="classConfigElem.html#30203c10e9c6b563ee9c454269cad8d1">00604</a> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#30203c10e9c6b563ee9c454269cad8d1">moveCounter</a>;
+<a name="l00605"></a>00605
+<a name="l00609"></a>00609 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#e5e1c7ae0734cb85654d7c6f2b073ef0">init</a>();
+<a name="l00610"></a>00610
+<a name="l00619"></a>00619 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">deleteNextMail</a>();
+<a name="l00620"></a>00620
+<a name="l00627"></a>00627 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#f4e51ff42a86a9d5a6ed0f361069d242">commitDeletion</a>();
+<a name="l00628"></a>00628
+<a name="l00638"></a>00638 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">showNextMail</a>();
+<a name="l00639"></a>00639
+<a name="l00646"></a>00646 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#7a53693e1ca3b30406efb6c8a68ce851">commitDownloading</a>();
+<a name="l00647"></a>00647
+<a name="l00652"></a>00652 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">startKIOJob</a>( <span class="keyword">const</span> QString&amp; path );
+<a name="l00653"></a>00653
+<a name="l00663"></a>00663 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classConfigElem.html#3cb6757a426072724df1b1ea930da796">getTimeoutTime</a>();
+<a name="l00664"></a>00664
+<a name="l00672"></a>00672 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#38ba64f20fe31a6e59d6c58775672922">getUIDs</a>();
+<a name="l00673"></a>00673
+<a name="l00681"></a>00681 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#ab836ffc3b068d052ea3486f8cdac74d">getSizes</a>();
+<a name="l00682"></a>00682
+<a name="l00687"></a>00687 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#f7202b10df7e27303315d754b25b6d6c">getHeaders</a>();
+<a name="l00688"></a>00688
+<a name="l00699"></a>00699 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#599f2dc026bd3d759d9e2ada3d4ff3ea">getNextHeader</a>();
+<a name="l00700"></a>00700
+<a name="l00707"></a>00707 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">copyHeaders</a>();
+<a name="l00708"></a>00708
+<a name="l00720"></a>00720 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">applyFilters</a>();
+<a name="l00721"></a>00721
+<a name="l00730"></a>00730 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#6a1f1cb81c4bcca055e0b98bd9fb0cf7">applyFiltersDeleted</a>();
+<a name="l00731"></a>00731
+<a name="l00736"></a>00736 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">cancelRefresh</a>();
+<a name="l00737"></a>00737
+<a name="l00747"></a>00747 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#3691ecff2aab23143072b434fd304c45">commitRefresh</a>();
+<a name="l00748"></a>00748
+<a name="l00764"></a>00764 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#91365e361149fd5d564b99a4b7182fc3">swapMailLists</a>();
+<a name="l00765"></a>00765
+<a name="l00772"></a>00772 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#e638826fe97d9aded3d3dadde320103e">doDownloadActions</a>();
+<a name="l00773"></a>00773
+<a name="l00783"></a>00783 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#1fd7ddefdce76a3da2bf3eda7ff28942">getNextMailForDownloadActions</a>();
+<a name="l00784"></a>00784
+<a name="l00790"></a>00790 <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#807e183296b04a86035a17a6f2fa0392">isMailDir</a>( <span class="keyword">const</span> QDir&amp; path );
+<a name="l00791"></a>00791
+<a name="l00798"></a>00798 <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#4289e9e88062857964798c71cbc496ef">writeToMailBox</a>( <span class="keyword">const</span> QString&amp; mail, <span class="keyword">const</span> QString&amp; box );
+<a name="l00799"></a>00799
+<a name="l00800"></a>00800 <span class="keyword">private</span> slots:
+<a name="l00801"></a>00801
+<a name="l00816"></a>00816 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#f2f44d27824ca6c4caf9c472f5c980b4">slotMailDeleted</a>( KIO::Job* job );
+<a name="l00817"></a>00817
+<a name="l00826"></a>00826 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">slotFinalizeDeletion</a>( KIO::Job* );
+<a name="l00827"></a>00827
+<a name="l00845"></a>00845 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#a63d81fad1dc2f9f8f015effabb8b6d9">slotBodyDownloaded</a>( KIO::Job* job );
+<a name="l00846"></a>00846
+<a name="l00862"></a>00862 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#53d209d56cb8ba5ce9f2f1d781d40e4f">slotMailDownloadedForAction</a>( KIO::Job* job );
+<a name="l00863"></a>00863
+<a name="l00872"></a>00872 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#ab068855931a06371d27ec03695121a7">slotDataMailBody</a>( KIO::Job*, <span class="keyword">const</span> QByteArray &amp; datas );
+<a name="l00873"></a>00873
+<a name="l00883"></a>00883 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">slotFinalizeShowMail</a>( KIO::Job* );
+<a name="l00884"></a>00884
+<a name="l00892"></a>00892 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#9771cc6111fae208e8ca92d9c162096d">slotTimeout</a>();
+<a name="l00893"></a>00893
+<a name="l00902"></a>00902 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#11db8a853a253b81a16ecd199c441911">slotReceiveUID</a>( KIO::Job*, <span class="keyword">const</span> QByteArray&amp; data );
+<a name="l00903"></a>00903
+<a name="l00911"></a>00911 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#5ba4833fd4b897bb21fa31dff2cf5750">slotUIDsReceived</a>( KIO::Job* job );
+<a name="l00912"></a>00912
+<a name="l00921"></a>00921 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#b3e0a075b84fed2a1e156de17cdefbad">slotReceiveSize</a>( KIO::Job*, <span class="keyword">const</span> QByteArray&amp; data );
+<a name="l00922"></a>00922
+<a name="l00929"></a>00929 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#685be03ba48ad2e1cfb9a0cc04a81559">slotSizesReceived</a>( KIO::Job* job );
+<a name="l00930"></a>00930
+<a name="l00931"></a>00931
+<a name="l00937"></a>00937 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#6470facb8041787fc48707ece1dfc364">slotFinalizeRefresh</a>( KIO::Job* );
+<a name="l00938"></a>00938
+<a name="l00954"></a>00954 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#2220bd2656a5e87cfb2582ae8854f71c">slotHeaderDownloaded</a>( KIO::Job* job );
+<a name="l00955"></a>00955
+<a name="l00964"></a>00964 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#52b690b870d814bf6017500edc731aae">slotReceiveHeader</a>( KIO::Job*, <span class="keyword">const</span> QByteArray&amp; data );
+<a name="l00965"></a>00965
+<a name="l00966"></a>00966
+<a name="l00967"></a>00967 signals:
+<a name="l00968"></a>00968
+<a name="l00973"></a>00973 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#93838eda4c71ad66360ee5a27f630d8e">sigDeleteReady</a>( QString account );
+<a name="l00974"></a>00974
+<a name="l00980"></a>00980 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#bd3b61aa04ce3bd6ce507cb555c360d4">sigShowBodiesReady</a>( QString account );
+<a name="l00981"></a>00981
+<a name="l00985"></a>00985 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#c04e111468d52ed1ca964569188c96e5">sigConfigChanged</a>();
+<a name="l00986"></a>00986
+<a name="l00990"></a>00990 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#14267b997f50ad3069115e8b976d89bb">sigMessageWindowOpened</a>();
+<a name="l00991"></a>00991
+<a name="l00995"></a>00995 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#e328a1ef29ab8784bf9fd36de34d8bc0">sigMessageWindowClosed</a>();
+<a name="l00996"></a>00996
+<a name="l01001"></a>01001 <span class="keywordtype">void</span> <a class="code" href="classConfigElem.html#d57456d967920820080dc13d6fb5a8ff">sigRefreshReady</a>( QString account );
+<a name="l01002"></a>01002
+<a name="l01003"></a>01003 <span class="keyword">protected</span>:
+<a name="l01004"></a>01004
+<a name="l01010"></a>01010 <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#261c27647b7d842799e94ae149212ad5">isSpam</a>( QByteArray mail ) <span class="keyword">const</span>;
+<a name="l01011"></a>01011
+<a name="l01016"></a>01016 <span class="keywordtype">bool</span> <a class="code" href="classConfigElem.html#ef9bf08b5313d9b0d5983f5a9459cf3a">isSpamAssassinRunning</a>() <span class="keyword">const</span>;
+<a name="l01017"></a>01017
+<a name="l01018"></a>01018
+<a name="l01019"></a>01019
+<a name="l01020"></a>01020 };
+<a name="l01021"></a>01021 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/configlist_8cpp-source.html b/doc/html/configlist_8cpp-source.html
new file mode 100644
index 0000000..2564682
--- /dev/null
+++ b/doc/html/configlist_8cpp-source.html
@@ -0,0 +1,1055 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/configlist.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>configlist.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> configlist.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Tue May 9 2000</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2000-2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"></span>
+<a name="l00008"></a>00008 <span class="comment"> 26 Sep 2002 - Allow for columns to be hidden. Allistar Melville</span>
+<a name="l00009"></a>00009 <span class="comment"> ***************************************************************************/</span>
+<a name="l00010"></a>00010
+<a name="l00011"></a>00011 <span class="comment">/***************************************************************************</span>
+<a name="l00012"></a>00012 <span class="comment"> * *</span>
+<a name="l00013"></a>00013 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00014"></a>00014 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00015"></a>00015 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00016"></a>00016 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00017"></a>00017 <span class="comment"> * *</span>
+<a name="l00018"></a>00018 <span class="comment"> ***************************************************************************/</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qfile.h&gt;</span>
+<a name="l00023"></a>00023
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;kconfig.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;ksavefile.h&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;kapplication.h&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;kstandarddirs.h&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;kaudioplayer.h&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031 <span class="preprocessor">#include "configlist.h"</span>
+<a name="l00032"></a>00032 <span class="preprocessor">#include "filter.h"</span>
+<a name="l00033"></a>00033
+<a name="l00034"></a><a class="code" href="classConfigList.html#457897bbe5bd27799e6f920d4cea2173">00034</a> <a class="code" href="classConfigList.html#457897bbe5bd27799e6f920d4cea2173">ConfigList::ConfigList</a>() : QObject()
+<a name="l00035"></a>00035 {
+<a name="l00036"></a>00036 setAutoDelete (<span class="keyword">true</span>);
+<a name="l00037"></a>00037
+<a name="l00038"></a>00038 <span class="comment">//assume, no window to show a mail is open at beginning</span>
+<a name="l00039"></a>00039 <a class="code" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a> = 0;
+<a name="l00040"></a>00040
+<a name="l00041"></a>00041 <span class="comment">//set default values</span>
+<a name="l00042"></a>00042 <a class="code" href="classConfigList.html#35d80df8b80f34868140a2163d207490">m_bShowMessage</a> = DEFAULT_ACTION_NEW_MAIL_ALERTWINDOW;
+<a name="l00043"></a>00043 <a class="code" href="classConfigList.html#b9613ab5f07edb0ef04383867674a5ce">m_bShowMainWindow</a> = DEFAULT_ACTION_NEW_MAIL_MAINWINDOW;
+<a name="l00044"></a>00044 <a class="code" href="classConfigList.html#a866f2fd4fb32d49ab99306150d79c50">m_bBeep</a> = DEFAULT_ACTION_NEW_MAIL_BEEP;
+<a name="l00045"></a>00045 <a class="code" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">m_bSound</a> = DEFAULT_ACTION_NEW_MAIL_SOUND;
+<a name="l00046"></a>00046 <a class="code" href="classConfigList.html#ae8d4084a4b83a09722015793afb974c">m_bCommand</a> = DEFAULT_ACTION_NEW_MAIL_COMMAND;
+<a name="l00047"></a>00047 <a class="code" href="classConfigList.html#f22fd0f8854795662a444bc2b4f8a9b9">m_bMinimize</a> = DEFAULT_ACTION_NO_NEW_MAIL_MINIMIZE;
+<a name="l00048"></a>00048 <a class="code" href="classConfigList.html#cdf78356d632253ac463907e526eb26a">m_bTerminate</a> = DEFAULT_ACTION_NO_NEW_MAIL_TERMINATE;
+<a name="l00049"></a>00049
+<a name="l00050"></a>00050 <a class="code" href="classConfigList.html#80b1f5a036cdaf9054ba57831a0c013e">m_bConfirmClose</a> = DEFAULT_CONFIRM_CLOSE;
+<a name="l00051"></a>00051 <a class="code" href="classConfigList.html#8b8d0d0a2d78c9f3ede1db0a9e77f8be">m_bConfirmDelete</a> = DEFAULT_CONFIRM_DELETE;
+<a name="l00052"></a>00052 <a class="code" href="classConfigList.html#fb4f1f200303a7e94114a8c4c85eb47e">m_bStartMinimized</a> = DEFAULT_START_MINIMIZED;
+<a name="l00053"></a>00053 <a class="code" href="classConfigList.html#da6c14776958a3b28f68797c7feb6c5b">m_bCloseMinimizes</a> = DEFAULT_CLOSE_TO_TRAY;
+<a name="l00054"></a>00054 <a class="code" href="classConfigList.html#af4cc3801f229ae974131ef1e000a8cf">m_bMinimizeToTray</a> = DEFAULT_MINIMIZE_TO_TRAY;
+<a name="l00055"></a>00055 <a class="code" href="classConfigList.html#1bd48d8596694d5b39e0ead274689010">m_bShowConnectionErrors</a> = DEFAULT_SHOW_CONNECTION_ERRORS;
+<a name="l00056"></a>00056 <a class="code" href="classConfigList.html#54c7671d25847b7b16cf71ec61c640d0">m_bKeepNew</a> = DEFAULT_KEEP_NEW;
+<a name="l00057"></a>00057 <a class="code" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">m_nInitTimer</a> = DEFAULT_INITIAL_TIME;
+<a name="l00058"></a>00058 <a class="code" href="classConfigList.html#b15e5bd9334e36428c5d44b9ee2a97d5">m_nIntervalTimer</a> = DEFAULT_INTERVAL_TIME;
+<a name="l00059"></a>00059 <a class="code" href="classConfigList.html#f4a428e650cf89e8ae0df0a2983f96f4">m_nPop3Timer</a> = DEFAULT_TIMEOUT_TIME;
+<a name="l00060"></a>00060 }
+<a name="l00061"></a>00061
+<a name="l00062"></a><a class="code" href="classConfigList.html#8bf1aaa71ff8971369466e5c2a36d27f">00062</a> <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#8bf1aaa71ff8971369466e5c2a36d27f">ConfigList::compareItems</a>( QCollection::Item item1, QCollection::Item item2 )
+<a name="l00063"></a>00063 {
+<a name="l00064"></a>00064 <a class="code" href="classConfigElem.html">ConfigElem</a>* p1 = (<a class="code" href="classConfigElem.html">ConfigElem</a>*)item1;
+<a name="l00065"></a>00065 <a class="code" href="classConfigElem.html">ConfigElem</a>* p2 = (<a class="code" href="classConfigElem.html">ConfigElem</a>*)item2;
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 <span class="keywordflow">return</span> strcmp( p1-&gt;<a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>(), p2-&gt;<a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>() );
+<a name="l00068"></a>00068 }
+<a name="l00069"></a>00069
+<a name="l00070"></a><a class="code" href="classConfigList.html#24464fe479402405ee9b849ddcc9c567">00070</a> QCollection::Item <a class="code" href="classConfigList.html#24464fe479402405ee9b849ddcc9c567">ConfigList::newItem</a>( QCollection::Item item )
+<a name="l00071"></a>00071 {
+<a name="l00072"></a>00072 <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classConfigElem.html">ConfigElem</a>( (<a class="code" href="classConfigElem.html">ConfigElem</a>*)item );
+<a name="l00073"></a>00073 }
+<a name="l00074"></a>00074
+<a name="l00075"></a><a class="code" href="classConfigList.html#f4faa44af3bbe318a2623b3146dc2c2d">00075</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#f4faa44af3bbe318a2623b3146dc2c2d">ConfigList::saveOptions</a> ()
+<a name="l00076"></a>00076 {
+<a name="l00077"></a>00077 kdDebug () &lt;&lt; <span class="stringliteral">"ConfigList::saveOptions"</span> &lt;&lt; endl;
+<a name="l00078"></a>00078
+<a name="l00079"></a>00079 <span class="comment">//create XML document</span>
+<a name="l00080"></a>00080 QDomDocument doc( <span class="stringliteral">"KShowmail"</span> );
+<a name="l00081"></a>00081
+<a name="l00082"></a>00082 <span class="comment">//create root element</span>
+<a name="l00083"></a>00083 QDomElement accounts = doc.createElement( ROOT_ELEMENT );
+<a name="l00084"></a>00084
+<a name="l00085"></a>00085 <span class="comment">//create for every account an element</span>
+<a name="l00086"></a>00086 <span class="comment">//the account saves its mails into this element</span>
+<a name="l00087"></a>00087 <span class="comment">//after that the element will be appended to the root element</span>
+<a name="l00088"></a>00088 <span class="keywordtype">int</span> i = 0;
+<a name="l00089"></a>00089 <a class="code" href="classConfigElem.html">ConfigElem</a>* account = NULL; <span class="comment">//current processed account</span>
+<a name="l00090"></a>00090 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the account list</span>
+<a name="l00091"></a>00091
+<a name="l00092"></a>00092 <span class="comment">//iterate over all accounts</span>
+<a name="l00093"></a>00093 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00094"></a>00094 {
+<a name="l00095"></a>00095 <span class="comment">//increment iterator to next account</span>
+<a name="l00096"></a>00096 ++it;
+<a name="l00097"></a>00097
+<a name="l00098"></a>00098 <span class="comment">//save mails</span>
+<a name="l00099"></a>00099 QDomElement accElem = doc.createElement( QString( ACCOUNT_ELEMENT ) + QString( <span class="stringliteral">"%1"</span> ).arg( i++ ) );
+<a name="l00100"></a>00100 account-&gt;<a class="code" href="classConfigElem.html#bda433f60b1eed0d4b8d207707d5005c">saveOptions</a>( doc, accElem ); <span class="comment">//account saves the mails into given XML document and the setup into the application config file</span>
+<a name="l00101"></a>00101 accounts.appendChild( accElem );
+<a name="l00102"></a>00102
+<a name="l00103"></a>00103 }
+<a name="l00104"></a>00104
+<a name="l00105"></a>00105 <span class="comment">//append root element to XML document</span>
+<a name="l00106"></a>00106 doc.appendChild( accounts );
+<a name="l00107"></a>00107
+<a name="l00108"></a>00108 <span class="comment">//save XML document</span>
+<a name="l00109"></a>00109 QCString str = doc.toCString(); <span class="comment">//convert XML document to a string</span>
+<a name="l00110"></a>00110 QString cachefilename = locateLocal( <span class="stringliteral">"config"</span>, <span class="stringliteral">"kshowmail.xml"</span> ); <span class="comment">//get file path</span>
+<a name="l00111"></a>00111 KSaveFile file( cachefilename, 0600 ); <span class="comment">//create file</span>
+<a name="l00112"></a>00112
+<a name="l00113"></a>00113 <span class="keywordflow">if</span>( file.status() != 0 )
+<a name="l00114"></a>00114 {
+<a name="l00115"></a>00115 kdError() &lt;&lt; <span class="stringliteral">"Couldn't save mail cache. "</span> &lt;&lt; strerror( file.status() );
+<a name="l00116"></a>00116 <span class="keywordflow">return</span>;
+<a name="l00117"></a>00117 }
+<a name="l00118"></a>00118
+<a name="l00119"></a>00119 <span class="comment">//write data</span>
+<a name="l00120"></a>00120 file.file()-&gt;writeBlock( str.data(), str.length() );
+<a name="l00121"></a>00121
+<a name="l00122"></a>00122 <span class="comment">//close file</span>
+<a name="l00123"></a>00123 <span class="keywordflow">if</span>( !file.close() )
+<a name="l00124"></a>00124 {
+<a name="l00125"></a>00125 kdError () &lt;&lt; <span class="stringliteral">"Couldn't save mail cache. "</span> &lt;&lt; strerror(file.status());
+<a name="l00126"></a>00126 <span class="keywordflow">return</span>;
+<a name="l00127"></a>00127 }
+<a name="l00128"></a>00128 }
+<a name="l00129"></a>00129
+<a name="l00130"></a>00130
+<a name="l00131"></a><a class="code" href="classConfigList.html#e595f764ea9b38f0634137438bdd4d70">00131</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#e595f764ea9b38f0634137438bdd4d70">ConfigList::setList</a> (QListView* list)
+<a name="l00132"></a>00132 {
+<a name="l00133"></a>00133 QPixmap pix (::locate (<span class="stringliteral">"data"</span>, <span class="stringliteral">"kshowmail/pics/ok.png"</span>));
+<a name="l00134"></a>00134 list-&gt;clear ();
+<a name="l00135"></a>00135 <span class="keywordtype">int</span> nIndex = at ();
+<a name="l00136"></a>00136 QListViewItem* last = NULL;
+<a name="l00137"></a>00137 <span class="keywordflow">for</span> (<a class="code" href="classConfigElem.html">ConfigElem</a>* pElem = first(); pElem; pElem = next())
+<a name="l00138"></a>00138 {
+<a name="l00139"></a>00139 last = <span class="keyword">new</span> QListViewItem (list, last, <span class="stringliteral">""</span>, pElem-&gt;getAccountName(), pElem-&gt;getURL().host(), pElem-&gt;getURL().user(), <span class="stringliteral">"?"</span>);
+<a name="l00140"></a>00140 pElem-&gt;setListViewItem( last );
+<a name="l00141"></a>00141 <span class="keywordflow">if</span> (pElem-&gt;isActive())
+<a name="l00142"></a>00142 pElem-&gt;getListViewItem()-&gt;setPixmap (0, pix);
+<a name="l00143"></a>00143 }
+<a name="l00144"></a>00144
+<a name="l00145"></a>00145 <span class="keywordflow">if</span> (nIndex &gt;= 0)
+<a name="l00146"></a>00146 {
+<a name="l00147"></a>00147 at (nIndex);
+<a name="l00148"></a>00148 <span class="comment">// list-&gt;setCurrentItem (nIndex);</span>
+<a name="l00149"></a>00149 }
+<a name="l00150"></a>00150 }
+<a name="l00151"></a>00151
+<a name="l00152"></a>00152
+<a name="l00153"></a><a class="code" href="classConfigList.html#633c6c07518ecf2405ad472ab843790f">00153</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#633c6c07518ecf2405ad472ab843790f">ConfigList::setItem</a> (<span class="keyword">const</span> <span class="keywordtype">char</span>* item)
+<a name="l00154"></a>00154 {
+<a name="l00155"></a>00155 <span class="keywordtype">int</span> nPos = at ();
+<a name="l00156"></a>00156 <a class="code" href="classConfigElem.html">ConfigElem</a>* pActive = <span class="keyword">new</span> <a class="code" href="classConfigElem.html">ConfigElem</a> (<span class="keyword">this</span>, item);
+<a name="l00157"></a>00157 <span class="keywordtype">bool</span> result = (find (pActive) &gt;= 0);
+<a name="l00158"></a>00158 <span class="keyword">delete</span> pActive;
+<a name="l00159"></a>00159 <span class="keywordflow">if</span> (result)
+<a name="l00160"></a>00160 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00161"></a>00161 <span class="keywordflow">else</span>
+<a name="l00162"></a>00162 {
+<a name="l00163"></a>00163 at (nPos);
+<a name="l00164"></a>00164 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00165"></a>00165 }
+<a name="l00166"></a>00166 }
+<a name="l00167"></a>00167
+<a name="l00168"></a><a class="code" href="classConfigList.html#28739bc3cd7ce87dbd7f994081375a41">00168</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#28739bc3cd7ce87dbd7f994081375a41">ConfigList::beep</a> ()
+<a name="l00169"></a>00169 {
+<a name="l00170"></a>00170 <span class="keywordflow">if</span> (<a class="code" href="classConfigList.html#a866f2fd4fb32d49ab99306150d79c50">m_bBeep</a>)
+<a name="l00171"></a>00171 kapp-&gt;beep ();
+<a name="l00172"></a>00172 }
+<a name="l00173"></a>00173
+<a name="l00174"></a><a class="code" href="classConfigList.html#5e7a5e2323ebbbad7d960bae9814ce5d">00174</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#5e7a5e2323ebbbad7d960bae9814ce5d">ConfigList::playSound</a> ()
+<a name="l00175"></a>00175 {
+<a name="l00176"></a>00176 <span class="keywordflow">if</span> (<a class="code" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">m_bSound</a>)
+<a name="l00177"></a>00177 <a class="code" href="classConfigList.html#5e7a5e2323ebbbad7d960bae9814ce5d">playSound</a> (<a class="code" href="classConfigList.html#be34e6084394fa6fa99422a7cc50d8f0">m_strSoundFile</a>);
+<a name="l00178"></a>00178 }
+<a name="l00179"></a>00179
+<a name="l00180"></a><a class="code" href="classConfigList.html#77c53c4e4120961c2647d4081486aeda">00180</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#5e7a5e2323ebbbad7d960bae9814ce5d">ConfigList::playSound</a> (<span class="keyword">const</span> <span class="keywordtype">char</span>* file)
+<a name="l00181"></a>00181 {
+<a name="l00182"></a>00182 KAudioPlayer::play(file);
+<a name="l00183"></a>00183 }
+<a name="l00184"></a>00184
+<a name="l00185"></a>00185
+<a name="l00186"></a><a class="code" href="classConfigList.html#439057b64856d457b9d9a4d9d381509f">00186</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#439057b64856d457b9d9a4d9d381509f">ConfigList::applyFilters</a> ()
+<a name="l00187"></a>00187 {
+<a name="l00188"></a>00188 <span class="keywordflow">if</span> (<a class="code" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">Filter::_status</a> != Filter::off)
+<a name="l00189"></a>00189 {
+<a name="l00190"></a>00190 <span class="keywordflow">for</span> (<a class="code" href="classConfigElem.html">ConfigElem</a>* pElem = first(); pElem; pElem = next())
+<a name="l00191"></a>00191 {
+<a name="l00192"></a>00192 <span class="keywordflow">if</span> (pElem-&gt;isActive() )
+<a name="l00193"></a>00193 {
+<a name="l00194"></a>00194 pElem-&gt;applyFilters ();
+<a name="l00195"></a>00195 }
+<a name="l00196"></a>00196 }
+<a name="l00197"></a>00197 }
+<a name="l00198"></a>00198 }
+<a name="l00199"></a>00199
+<a name="l00200"></a><a class="code" href="classConfigList.html#3e41f463a87fbc8523bbd731cf36b473">00200</a> <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#3e41f463a87fbc8523bbd731cf36b473">ConfigList::getRefreshTimeInterval</a>( )<span class="keyword"> const</span>
+<a name="l00201"></a>00201 <span class="keyword"></span>{
+<a name="l00202"></a>00202 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#b15e5bd9334e36428c5d44b9ee2a97d5">m_nIntervalTimer</a>;
+<a name="l00203"></a>00203 }
+<a name="l00204"></a>00204
+<a name="l00205"></a><a class="code" href="classConfigList.html#1676756c27b3578802dba1ce47b39dcd">00205</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#1676756c27b3578802dba1ce47b39dcd">ConfigList::setRefreshTimeInterval</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> interval )
+<a name="l00206"></a>00206 {
+<a name="l00207"></a>00207 <a class="code" href="classConfigList.html#b15e5bd9334e36428c5d44b9ee2a97d5">m_nIntervalTimer</a> = interval;
+<a name="l00208"></a>00208 }
+<a name="l00209"></a>00209
+<a name="l00210"></a><a class="code" href="classConfigList.html#cae6685097cd8e5e63cee28e17d92d41">00210</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#cae6685097cd8e5e63cee28e17d92d41">ConfigList::AutoRefreshOn</a>( )<span class="keyword"> const</span>
+<a name="l00211"></a>00211 <span class="keyword"></span>{
+<a name="l00212"></a>00212 <span class="keywordflow">return</span> ( <a class="code" href="classConfigList.html#b15e5bd9334e36428c5d44b9ee2a97d5">m_nIntervalTimer</a> &gt; 0 );
+<a name="l00213"></a>00213 }
+<a name="l00214"></a>00214
+<a name="l00215"></a><a class="code" href="classConfigList.html#14b38a4e600859c0b6f3ef38afffc037">00215</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#14b38a4e600859c0b6f3ef38afffc037">ConfigList::hasActiveAccounts</a>( )
+<a name="l00216"></a>00216 {
+<a name="l00217"></a>00217 <span class="keywordtype">bool</span> activeAccountFound = <span class="keyword">false</span>; <span class="comment">//when a active account was found, this will be set to TRUE</span>
+<a name="l00218"></a>00218 <a class="code" href="classConfigElem.html">ConfigElem</a>* currentAccount; <span class="comment">//saved current account</span>
+<a name="l00219"></a>00219 <a class="code" href="classConfigElem.html">ConfigElem</a>* Account; <span class="comment">//used by the search</span>
+<a name="l00220"></a>00220
+<a name="l00221"></a>00221 <span class="comment">//save the current account</span>
+<a name="l00222"></a>00222 currentAccount = current();
+<a name="l00223"></a>00223
+<a name="l00224"></a>00224 <span class="comment">//get the first account</span>
+<a name="l00225"></a>00225 Account = first();
+<a name="l00226"></a>00226
+<a name="l00227"></a>00227 <span class="comment">//looking for an active account</span>
+<a name="l00228"></a>00228 <span class="keywordflow">while</span>( Account != NULL &amp;&amp; !activeAccountFound )
+<a name="l00229"></a>00229 {
+<a name="l00230"></a>00230 <span class="comment">//have we found one?</span>
+<a name="l00231"></a>00231 activeAccountFound = Account-&gt;<a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a>();
+<a name="l00232"></a>00232
+<a name="l00233"></a>00233 <span class="comment">//get next account</span>
+<a name="l00234"></a>00234 Account = next();
+<a name="l00235"></a>00235 }
+<a name="l00236"></a>00236
+<a name="l00237"></a>00237 <span class="comment">//set the saved account to current</span>
+<a name="l00238"></a>00238 <span class="keywordflow">if</span>( currentAccount != NULL )
+<a name="l00239"></a>00239 findRef( currentAccount );
+<a name="l00240"></a>00240
+<a name="l00241"></a>00241 <span class="comment">//return the result</span>
+<a name="l00242"></a>00242 <span class="keywordflow">return</span> activeAccountFound;
+<a name="l00243"></a>00243 }
+<a name="l00244"></a>00244
+<a name="l00245"></a>00245
+<a name="l00246"></a><a class="code" href="classConfigList.html#80a368db22ca3a29c668a544611d16f4">00246</a> uint <a class="code" href="classConfigList.html#80a368db22ca3a29c668a544611d16f4">ConfigList::getTimeoutTime</a>( )<span class="keyword"> const</span>
+<a name="l00247"></a>00247 <span class="keyword"></span>{
+<a name="l00248"></a>00248 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#f4a428e650cf89e8ae0df0a2983f96f4">m_nPop3Timer</a>;
+<a name="l00249"></a>00249 }
+<a name="l00250"></a>00250
+<a name="l00251"></a><a class="code" href="classConfigList.html#2470bfe4948ada050b08b93cef51b969">00251</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#2470bfe4948ada050b08b93cef51b969">ConfigList::setTimeoutTime</a>( uint time )
+<a name="l00252"></a>00252 {
+<a name="l00253"></a>00253 <span class="keywordflow">if</span>( time &lt; MINIMUM_TIMEOUT_TIME )
+<a name="l00254"></a>00254 <a class="code" href="classConfigList.html#f4a428e650cf89e8ae0df0a2983f96f4">m_nPop3Timer</a> = MINIMUM_TIMEOUT_TIME;
+<a name="l00255"></a>00255 <span class="keywordflow">else</span>
+<a name="l00256"></a>00256 <a class="code" href="classConfigList.html#f4a428e650cf89e8ae0df0a2983f96f4">m_nPop3Timer</a> = time;
+<a name="l00257"></a>00257 }
+<a name="l00258"></a>00258
+<a name="l00259"></a><a class="code" href="classConfigList.html#83776f91a264d92cea2b6f7ef0c02765">00259</a> <a class="code" href="classConfigElem.html">ConfigElem</a>* <a class="code" href="classConfigList.html#83776f91a264d92cea2b6f7ef0c02765">ConfigList::getSelectedAccount</a>( )
+<a name="l00260"></a>00260 {
+<a name="l00261"></a>00261 <span class="comment">//get the first account in the list</span>
+<a name="l00262"></a>00262 <a class="code" href="classConfigElem.html">ConfigElem</a>* account = first();
+<a name="l00263"></a>00263
+<a name="l00264"></a>00264 <span class="comment">//return NULL if there are no accounts</span>
+<a name="l00265"></a>00265 <span class="keywordflow">if</span>( account == NULL )
+<a name="l00266"></a>00266 <span class="keywordflow">return</span> NULL;
+<a name="l00267"></a>00267
+<a name="l00268"></a>00268 <span class="comment">//return the account, if it is selected</span>
+<a name="l00269"></a>00269 <span class="keywordflow">if</span>( account-&gt;<a class="code" href="classConfigElem.html#8e8e1f32420d051a8c6d4df4a3ad4b93">isSelected</a>() )
+<a name="l00270"></a>00270 <span class="keywordflow">return</span> account;
+<a name="l00271"></a>00271
+<a name="l00272"></a>00272 <span class="comment">//iterate over all accounts</span>
+<a name="l00273"></a>00273 <span class="keywordtype">bool</span> selectedAccountFound = <span class="keyword">false</span>; <span class="comment">//is TRUE, if a selected account was found</span>
+<a name="l00274"></a>00274 <span class="keywordflow">while</span>( account != NULL &amp;&amp; !selectedAccountFound )
+<a name="l00275"></a>00275 {
+<a name="l00276"></a>00276 <span class="comment">//get next account</span>
+<a name="l00277"></a>00277 account = next();
+<a name="l00278"></a>00278
+<a name="l00279"></a>00279 <span class="comment">//is the account selected?</span>
+<a name="l00280"></a>00280 <span class="keywordflow">if</span>( account != NULL )
+<a name="l00281"></a>00281 selectedAccountFound = account-&gt;<a class="code" href="classConfigElem.html#8e8e1f32420d051a8c6d4df4a3ad4b93">isSelected</a>();
+<a name="l00282"></a>00282 <span class="keywordflow">else</span>
+<a name="l00283"></a>00283 selectedAccountFound = <span class="keyword">false</span>;
+<a name="l00284"></a>00284 }
+<a name="l00285"></a>00285
+<a name="l00286"></a>00286 <span class="comment">//return the current account if we have found a selected account</span>
+<a name="l00287"></a>00287 <span class="comment">//otherwise return FALSE</span>
+<a name="l00288"></a>00288 <span class="keywordflow">if</span>( selectedAccountFound )
+<a name="l00289"></a>00289 <span class="keywordflow">return</span> account;
+<a name="l00290"></a>00290 <span class="keywordflow">else</span>
+<a name="l00291"></a>00291 <span class="keywordflow">return</span> NULL;
+<a name="l00292"></a>00292 }
+<a name="l00293"></a>00293
+<a name="l00294"></a><a class="code" href="classConfigList.html#ac13c19975a07aa87da0047cc66b4ce1">00294</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#ac13c19975a07aa87da0047cc66b4ce1">ConfigList::deleteSelectedMails</a>( )
+<a name="l00295"></a>00295 {
+<a name="l00296"></a>00296 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00297"></a>00297 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//account to process</span>
+<a name="l00298"></a>00298
+<a name="l00299"></a>00299 <span class="comment">//clear the map, which contains the names of the accounts,</span>
+<a name="l00300"></a>00300 <span class="comment">//which have gotten an order to delete</span>
+<a name="l00301"></a>00301 <a class="code" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">AccountDeletionMap</a>.clear();
+<a name="l00302"></a>00302
+<a name="l00303"></a>00303 <span class="comment">//refresh connects</span>
+<a name="l00304"></a>00304 <a class="code" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">connectAccounts</a>();
+<a name="l00305"></a>00305
+<a name="l00306"></a>00306 <span class="comment">//inserts an item for every account which will get an order to delete</span>
+<a name="l00307"></a>00307 <span class="comment">//its selected mails. The key is the account name and the data is TRUE.</span>
+<a name="l00308"></a>00308 <span class="comment">//it is important to do this in a seperate iteration because this avoids</span>
+<a name="l00309"></a>00309 <span class="comment">//race conditions</span>
+<a name="l00310"></a>00310 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00311"></a>00311 {
+<a name="l00312"></a>00312 <span class="comment">//insert item</span>
+<a name="l00313"></a>00313 <a class="code" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">AccountDeletionMap</a>.insert( account-&gt;<a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>(), true );
+<a name="l00314"></a>00314
+<a name="l00315"></a>00315 <span class="comment">//get next account</span>
+<a name="l00316"></a>00316 ++it;
+<a name="l00317"></a>00317 }
+<a name="l00318"></a>00318
+<a name="l00319"></a>00319 <span class="comment">//order all accounts to delete its selected mail</span>
+<a name="l00320"></a>00320 it.toFirst();
+<a name="l00321"></a>00321 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00322"></a>00322 {
+<a name="l00323"></a>00323 account-&gt;<a class="code" href="classConfigElem.html#750ccb3fb3f7d1857b79f7218f5a0767">deleteSelectedMails</a>();
+<a name="l00324"></a>00324
+<a name="l00325"></a>00325 <span class="comment">//get next account</span>
+<a name="l00326"></a>00326 ++it;
+<a name="l00327"></a>00327 }
+<a name="l00328"></a>00328 }
+<a name="l00329"></a>00329
+<a name="l00330"></a><a class="code" href="classConfigList.html#f8495aff41becdac4998b0c2881cccde">00330</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#f8495aff41becdac4998b0c2881cccde">ConfigList::slotAccountConfigChanged</a>( )
+<a name="l00331"></a>00331 {
+<a name="l00332"></a>00332 emit <a class="code" href="classConfigList.html#9b5c13b885ba99acefb6bcb81f54b563">sigConfigChanged</a>();
+<a name="l00333"></a>00333 }
+<a name="l00334"></a>00334
+<a name="l00335"></a><a class="code" href="classConfigList.html#640d6202cfb38c449e95906e7581693b">00335</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#640d6202cfb38c449e95906e7581693b">ConfigList::slotCheckDeletionState</a>( QString account )
+<a name="l00336"></a>00336 {
+<a name="l00337"></a>00337 <span class="keywordtype">bool</span> accountDeleting = <span class="keyword">false</span>; <span class="comment">//set to TRUE if an account is still deleting</span>
+<a name="l00338"></a>00338 AccountTaskMap_Type::Iterator it; <span class="comment">//iterator over the account deletion map</span>
+<a name="l00339"></a>00339
+<a name="l00340"></a>00340 <span class="comment">//set the appropriate item in AccountDeletionMap to FALSE</span>
+<a name="l00341"></a>00341 <a class="code" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">AccountDeletionMap</a>[ account ] = <span class="keyword">false</span>;
+<a name="l00342"></a>00342
+<a name="l00343"></a>00343 <span class="comment">//iterate over the account deletion map to check, whether all accounts</span>
+<a name="l00344"></a>00344 <span class="comment">//are ready</span>
+<a name="l00345"></a>00345 <span class="keywordflow">for</span> ( it = <a class="code" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">AccountDeletionMap</a>.begin(); it != <a class="code" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">AccountDeletionMap</a>.end(); ++it )
+<a name="l00346"></a>00346 {
+<a name="l00347"></a>00347 <span class="keywordflow">if</span>( *it == <span class="keyword">true</span> )
+<a name="l00348"></a>00348 accountDeleting = <span class="keyword">true</span>;
+<a name="l00349"></a>00349 }
+<a name="l00350"></a>00350
+<a name="l00351"></a>00351 <span class="comment">//emit sigDeleteReady if all accounts are ready</span>
+<a name="l00352"></a>00352 <span class="keywordflow">if</span>( !accountDeleting )
+<a name="l00353"></a>00353 emit <a class="code" href="classConfigList.html#6d5f55c7447fc52efd5800daeb8302dc">sigDeleteReady</a>();
+<a name="l00354"></a>00354 }
+<a name="l00355"></a>00355
+<a name="l00356"></a><a class="code" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">00356</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">ConfigList::connectAccounts</a>( )
+<a name="l00357"></a>00357 {
+<a name="l00358"></a>00358 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00359"></a>00359 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//account to connect</span>
+<a name="l00360"></a>00360
+<a name="l00361"></a>00361 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00362"></a>00362 {
+<a name="l00363"></a>00363 <span class="comment">//disconnect old connections</span>
+<a name="l00364"></a>00364 account-&gt;disconnect();
+<a name="l00365"></a>00365
+<a name="l00366"></a>00366 <span class="comment">//connect</span>
+<a name="l00367"></a>00367 connect( account, SIGNAL( <a class="code" href="classConfigList.html#9b5c13b885ba99acefb6bcb81f54b563">sigConfigChanged</a>() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigList.html#f8495aff41becdac4998b0c2881cccde">slotAccountConfigChanged</a>() ) );
+<a name="l00368"></a>00368 connect( account, SIGNAL( <a class="code" href="classConfigList.html#6d5f55c7447fc52efd5800daeb8302dc">sigDeleteReady</a>( QString ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigList.html#640d6202cfb38c449e95906e7581693b">slotCheckDeletionState</a>( QString ) ) );
+<a name="l00369"></a>00369 connect( account, SIGNAL( <a class="code" href="classConfigList.html#4df89bc3cd1da72c4404cbe6fe1f10d1">sigShowBodiesReady</a>( QString ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigList.html#bdbf21b25f8e963e5c32d167aff1fe16">slotCheckShowBodiesState</a>( QString ) ) );
+<a name="l00370"></a>00370 connect( account, SIGNAL( <a class="code" href="classConfigList.html#4e33dcc16368960e9a41dca3bb878360">sigMessageWindowOpened</a>() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigList.html#1ffbc4bf4ef66872162065b80a248b7a">slotMessageWindowOpened</a>() ) );
+<a name="l00371"></a>00371 connect( account, SIGNAL( sigMessageWindowClosed() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigList.html#6a9cc47ba150c0923b558752f118ec6c">slotMessageWindowClosed</a>() ) );
+<a name="l00372"></a>00372 connect( account, SIGNAL( <a class="code" href="classConfigList.html#cd0d056e66a4c054306dca9936b9d5da">sigRefreshReady</a>( QString ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classConfigList.html#beaa15863a4aae563a8539d176067f79">slotCheckRefreshState</a>( QString ) ) );
+<a name="l00373"></a>00373
+<a name="l00374"></a>00374 <span class="comment">//get next account</span>
+<a name="l00375"></a>00375 ++it;
+<a name="l00376"></a>00376 }
+<a name="l00377"></a>00377 }
+<a name="l00378"></a>00378
+<a name="l00379"></a><a class="code" href="classConfigList.html#5f798d2e62d3d8d013e3b2f54d51e94e">00379</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#5f798d2e62d3d8d013e3b2f54d51e94e">ConfigList::setConfirmDeletion</a>( <span class="keywordtype">bool</span> confirm )
+<a name="l00380"></a>00380 {
+<a name="l00381"></a>00381 <a class="code" href="classConfigList.html#8b8d0d0a2d78c9f3ede1db0a9e77f8be">m_bConfirmDelete</a> = confirm;
+<a name="l00382"></a>00382 }
+<a name="l00383"></a>00383
+<a name="l00384"></a><a class="code" href="classConfigList.html#a466577c54fec821ff484a378ce32e98">00384</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#a466577c54fec821ff484a378ce32e98">ConfigList::confirmDeletion</a>( )
+<a name="l00385"></a>00385 {
+<a name="l00386"></a>00386 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#8b8d0d0a2d78c9f3ede1db0a9e77f8be">m_bConfirmDelete</a>;
+<a name="l00387"></a>00387 }
+<a name="l00388"></a>00388
+<a name="l00389"></a><a class="code" href="classConfigList.html#d489b548662d865fe34686507dc801ef">00389</a> QStringList <a class="code" href="classConfigList.html#d489b548662d865fe34686507dc801ef">ConfigList::getSelectedSubjects</a>( )<span class="keyword"> const</span>
+<a name="l00390"></a>00390 <span class="keyword"></span>{
+<a name="l00391"></a>00391 QStringList subjects; <span class="comment">//contains all subjects</span>
+<a name="l00392"></a>00392 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00393"></a>00393 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//current account</span>
+<a name="l00394"></a>00394
+<a name="l00395"></a>00395 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00396"></a>00396 {
+<a name="l00397"></a>00397 <span class="comment">//get subjects of the current account and append them to the list</span>
+<a name="l00398"></a>00398 subjects += account-&gt;<a class="code" href="classConfigElem.html#93c5c182878b9809188933046e04a998">getSelectedSubjects</a>();
+<a name="l00399"></a>00399
+<a name="l00400"></a>00400 <span class="comment">//get next account</span>
+<a name="l00401"></a>00401 ++it;
+<a name="l00402"></a>00402 }
+<a name="l00403"></a>00403
+<a name="l00404"></a>00404 <span class="keywordflow">return</span> subjects;
+<a name="l00405"></a>00405 }
+<a name="l00406"></a>00406
+<a name="l00407"></a><a class="code" href="classConfigList.html#d80765bfadbd675b9b89ebdec0cf3566">00407</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#d80765bfadbd675b9b89ebdec0cf3566">ConfigList::hasSelectedMails</a>( )
+<a name="l00408"></a>00408 {
+<a name="l00409"></a>00409 <span class="keywordtype">bool</span> foundSelected = <span class="keyword">false</span>; <span class="comment">//set to TRUE, when an account with selected mails was found</span>
+<a name="l00410"></a>00410 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00411"></a>00411 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//current account</span>
+<a name="l00412"></a>00412
+<a name="l00413"></a>00413 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL &amp;&amp; !foundSelected )
+<a name="l00414"></a>00414 {
+<a name="l00415"></a>00415 foundSelected = account-&gt;<a class="code" href="classConfigElem.html#748ec06f6ad44f36143389bb9501a1f7">hasSelectedMails</a>();
+<a name="l00416"></a>00416
+<a name="l00417"></a>00417 <span class="comment">//get next account</span>
+<a name="l00418"></a>00418 ++it;
+<a name="l00419"></a>00419 }
+<a name="l00420"></a>00420
+<a name="l00421"></a>00421 <span class="keywordflow">return</span> foundSelected;
+<a name="l00422"></a>00422
+<a name="l00423"></a>00423 }
+<a name="l00424"></a>00424
+<a name="l00425"></a><a class="code" href="classConfigList.html#69be8d63f8363fe9c727ebdaeb9eb7fa">00425</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#69be8d63f8363fe9c727ebdaeb9eb7fa">ConfigList::showSelectedMails</a>( )
+<a name="l00426"></a>00426 {
+<a name="l00427"></a>00427 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00428"></a>00428 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//account to process</span>
+<a name="l00429"></a>00429
+<a name="l00430"></a>00430 <span class="comment">//clear the map, which contains the names of the accounts,</span>
+<a name="l00431"></a>00431 <span class="comment">//which have gotten an order to show mails</span>
+<a name="l00432"></a>00432 <a class="code" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">AccountShowBodiesMap</a>.clear();
+<a name="l00433"></a>00433
+<a name="l00434"></a>00434 <span class="comment">//refresh connects</span>
+<a name="l00435"></a>00435 <a class="code" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">connectAccounts</a>();
+<a name="l00436"></a>00436
+<a name="l00437"></a>00437 <span class="comment">//inserts an item for every account which will get an order to show</span>
+<a name="l00438"></a>00438 <span class="comment">//its selected mails. The key is the account name and the data is TRUE.</span>
+<a name="l00439"></a>00439 <span class="comment">//it is important to do this in a seperate iteration because this avoids</span>
+<a name="l00440"></a>00440 <span class="comment">//race conditions</span>
+<a name="l00441"></a>00441 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00442"></a>00442 {
+<a name="l00443"></a>00443 <span class="comment">//insert item</span>
+<a name="l00444"></a>00444 <a class="code" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">AccountShowBodiesMap</a>.insert( account-&gt;<a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>(), true );
+<a name="l00445"></a>00445
+<a name="l00446"></a>00446 <span class="comment">//get next account</span>
+<a name="l00447"></a>00447 ++it;
+<a name="l00448"></a>00448 }
+<a name="l00449"></a>00449
+<a name="l00450"></a>00450 <span class="comment">//order all accounts to show its selected mail</span>
+<a name="l00451"></a>00451 it.toFirst();
+<a name="l00452"></a>00452 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00453"></a>00453 {
+<a name="l00454"></a>00454 account-&gt;<a class="code" href="classConfigElem.html#01e5735260c23f43480d807e7e9070c9">showSelectedMails</a>();
+<a name="l00455"></a>00455
+<a name="l00456"></a>00456 <span class="comment">//get next account</span>
+<a name="l00457"></a>00457 ++it;
+<a name="l00458"></a>00458 }
+<a name="l00459"></a>00459
+<a name="l00460"></a>00460 }
+<a name="l00461"></a>00461
+<a name="l00462"></a><a class="code" href="classConfigList.html#bdbf21b25f8e963e5c32d167aff1fe16">00462</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#bdbf21b25f8e963e5c32d167aff1fe16">ConfigList::slotCheckShowBodiesState</a>( QString account )
+<a name="l00463"></a>00463 {
+<a name="l00464"></a>00464 <span class="keywordtype">bool</span> accountDownloading = <span class="keyword">false</span>; <span class="comment">//set to TRUE if an account is downloading mail body yet</span>
+<a name="l00465"></a>00465 AccountTaskMap_Type::Iterator it; <span class="comment">//iterator over the account map</span>
+<a name="l00466"></a>00466
+<a name="l00467"></a>00467 <span class="comment">//set the appropriate item in AccountShowBodiesMap to FALSE</span>
+<a name="l00468"></a>00468 <a class="code" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">AccountShowBodiesMap</a>[ account ] = <span class="keyword">false</span>;
+<a name="l00469"></a>00469
+<a name="l00470"></a>00470 <span class="comment">//iterate over the account map to check, whether all accounts</span>
+<a name="l00471"></a>00471 <span class="comment">//are ready</span>
+<a name="l00472"></a>00472 <span class="keywordflow">for</span> ( it = <a class="code" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">AccountShowBodiesMap</a>.begin(); it != <a class="code" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">AccountShowBodiesMap</a>.end(); ++it )
+<a name="l00473"></a>00473 {
+<a name="l00474"></a>00474 <span class="keywordflow">if</span>( *it == <span class="keyword">true</span> )
+<a name="l00475"></a>00475 accountDownloading = <span class="keyword">true</span>;
+<a name="l00476"></a>00476 }
+<a name="l00477"></a>00477
+<a name="l00478"></a>00478 <span class="comment">//emit sigShowBodiesReady if all accounts are ready</span>
+<a name="l00479"></a>00479 <span class="comment">//and assume all windows to show the mails are closed</span>
+<a name="l00480"></a>00480 <span class="keywordflow">if</span>( !accountDownloading )
+<a name="l00481"></a>00481 {
+<a name="l00482"></a>00482 emit <a class="code" href="classConfigList.html#4df89bc3cd1da72c4404cbe6fe1f10d1">sigShowBodiesReady</a>();
+<a name="l00483"></a>00483 <a class="code" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a> = 0;
+<a name="l00484"></a>00484 }
+<a name="l00485"></a>00485 }
+<a name="l00486"></a>00486
+<a name="l00487"></a><a class="code" href="classConfigList.html#9f3341f60b7f800b58f50e67c1f872b4">00487</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#9f3341f60b7f800b58f50e67c1f872b4">ConfigList::setAllowHTML</a>( <span class="keywordtype">bool</span> allowHTML )
+<a name="l00488"></a>00488 {
+<a name="l00489"></a>00489 <a class="code" href="classConfigList.html#017597159dc4b62d147aade09140e942">m_bAllowHTML</a> = allowHTML;
+<a name="l00490"></a>00490 }
+<a name="l00491"></a>00491
+<a name="l00492"></a><a class="code" href="classConfigList.html#4cd09107151c848fafe17db0c8e9a4a6">00492</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#4cd09107151c848fafe17db0c8e9a4a6">ConfigList::allowHTML</a>( )<span class="keyword"> const</span>
+<a name="l00493"></a>00493 <span class="keyword"></span>{
+<a name="l00494"></a>00494 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#017597159dc4b62d147aade09140e942">m_bAllowHTML</a>;
+<a name="l00495"></a>00495 }
+<a name="l00496"></a>00496
+<a name="l00497"></a><a class="code" href="classConfigList.html#1ffbc4bf4ef66872162065b80a248b7a">00497</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#1ffbc4bf4ef66872162065b80a248b7a">ConfigList::slotMessageWindowOpened</a>( )
+<a name="l00498"></a>00498 {
+<a name="l00499"></a>00499 <span class="comment">//increment the window counter</span>
+<a name="l00500"></a>00500 <a class="code" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a>++;
+<a name="l00501"></a>00501
+<a name="l00502"></a>00502 <span class="comment">//if the counter was incremented from zero</span>
+<a name="l00503"></a>00503 <span class="comment">//(the first window was opened), emit the</span>
+<a name="l00504"></a>00504 <span class="comment">//signal</span>
+<a name="l00505"></a>00505 <span class="keywordflow">if</span>( <a class="code" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a> == 1 )
+<a name="l00506"></a>00506 emit <a class="code" href="classConfigList.html#4e33dcc16368960e9a41dca3bb878360">sigMessageWindowOpened</a>();
+<a name="l00507"></a>00507 }
+<a name="l00508"></a>00508
+<a name="l00509"></a><a class="code" href="classConfigList.html#6a9cc47ba150c0923b558752f118ec6c">00509</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#6a9cc47ba150c0923b558752f118ec6c">ConfigList::slotMessageWindowClosed</a>( )
+<a name="l00510"></a>00510 {
+<a name="l00511"></a>00511 <span class="comment">//decrement the window counter</span>
+<a name="l00512"></a>00512 <a class="code" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a>--;
+<a name="l00513"></a>00513 <span class="keywordflow">if</span>( <a class="code" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a> &lt; 0 )
+<a name="l00514"></a>00514 <a class="code" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a> = 0;
+<a name="l00515"></a>00515
+<a name="l00516"></a>00516 <span class="comment">//if counter is zero (all windows was closed),</span>
+<a name="l00517"></a>00517 <span class="comment">//emit signal</span>
+<a name="l00518"></a>00518 <span class="keywordflow">if</span>( <a class="code" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a> == 0 )
+<a name="l00519"></a>00519 emit <a class="code" href="classConfigList.html#6cc47a8e403bad408356604c0888c292">sigAllMessageWindowsClosed</a>();
+<a name="l00520"></a>00520 }
+<a name="l00521"></a>00521
+<a name="l00522"></a><a class="code" href="classConfigList.html#563ce9fd520ec23325c3b7797ed6d0f1">00522</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#563ce9fd520ec23325c3b7797ed6d0f1">ConfigList::refreshMailLists</a>( )
+<a name="l00523"></a>00523 {
+<a name="l00524"></a>00524 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00525"></a>00525 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//account to process</span>
+<a name="l00526"></a>00526
+<a name="l00527"></a>00527 <span class="comment">//return, if no accounts available</span>
+<a name="l00528"></a>00528 <span class="keywordflow">if</span>( count() == 0 )
+<a name="l00529"></a>00529 {
+<a name="l00530"></a>00530 emit <a class="code" href="classConfigList.html#cd0d056e66a4c054306dca9936b9d5da">sigRefreshReady</a>();
+<a name="l00531"></a>00531 <span class="keywordflow">return</span>;
+<a name="l00532"></a>00532 }
+<a name="l00533"></a>00533
+<a name="l00534"></a>00534 <span class="comment">//clear the map, which contains the names of the accounts,</span>
+<a name="l00535"></a>00535 <span class="comment">//which have gotten an order to show mails</span>
+<a name="l00536"></a>00536 <a class="code" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">AccountRefreshMap</a>.clear();
+<a name="l00537"></a>00537
+<a name="l00538"></a>00538 <span class="comment">//refresh connects</span>
+<a name="l00539"></a>00539 <a class="code" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">connectAccounts</a>();
+<a name="l00540"></a>00540
+<a name="l00541"></a>00541 <span class="comment">//inserts an item for every account which will get an order to refresh</span>
+<a name="l00542"></a>00542 <span class="comment">//its mail list. The key is the account name and the data is TRUE.</span>
+<a name="l00543"></a>00543 <span class="comment">//it is important to do this in a seperate iteration because this avoids</span>
+<a name="l00544"></a>00544 <span class="comment">//race conditions</span>
+<a name="l00545"></a>00545 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00546"></a>00546 {
+<a name="l00547"></a>00547 <span class="comment">//insert item</span>
+<a name="l00548"></a>00548 <a class="code" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">AccountRefreshMap</a>.insert( account-&gt;<a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>(), true );
+<a name="l00549"></a>00549
+<a name="l00550"></a>00550 <span class="comment">//get next account</span>
+<a name="l00551"></a>00551 ++it;
+<a name="l00552"></a>00552 }
+<a name="l00553"></a>00553
+<a name="l00554"></a>00554 <span class="comment">//order all accounts to refresh their mail lists</span>
+<a name="l00555"></a>00555 it.toFirst();
+<a name="l00556"></a>00556 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00557"></a>00557 {
+<a name="l00558"></a>00558 account-&gt;<a class="code" href="classConfigElem.html#5a687317c6470c06111b176056c2a81e">refreshMailList</a>();
+<a name="l00559"></a>00559
+<a name="l00560"></a>00560 <span class="comment">//get next account</span>
+<a name="l00561"></a>00561 ++it;
+<a name="l00562"></a>00562 }
+<a name="l00563"></a>00563
+<a name="l00564"></a>00564 }
+<a name="l00565"></a>00565
+<a name="l00566"></a><a class="code" href="classConfigList.html#beaa15863a4aae563a8539d176067f79">00566</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#beaa15863a4aae563a8539d176067f79">ConfigList::slotCheckRefreshState</a>( QString account )
+<a name="l00567"></a>00567 {
+<a name="l00568"></a>00568 <span class="keywordtype">bool</span> accountRefreshing = <span class="keyword">false</span>; <span class="comment">//set to TRUE if an account is still refreshing</span>
+<a name="l00569"></a>00569 AccountTaskMap_Type::Iterator it; <span class="comment">//iterator over the account map</span>
+<a name="l00570"></a>00570
+<a name="l00571"></a>00571 <span class="comment">//set the appropriate item in AccountRefreshMap to FALSE</span>
+<a name="l00572"></a>00572 <a class="code" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">AccountRefreshMap</a>[ account ] = <span class="keyword">false</span>;
+<a name="l00573"></a>00573
+<a name="l00574"></a>00574 <span class="comment">//iterate over the account map to check whether all accounts</span>
+<a name="l00575"></a>00575 <span class="comment">//are ready</span>
+<a name="l00576"></a>00576 <span class="keywordflow">for</span> ( it = <a class="code" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">AccountRefreshMap</a>.begin(); it != <a class="code" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">AccountRefreshMap</a>.end(); ++it )
+<a name="l00577"></a>00577 {
+<a name="l00578"></a>00578 <span class="keywordflow">if</span>( *it == <span class="keyword">true</span> )
+<a name="l00579"></a>00579 accountRefreshing = <span class="keyword">true</span>;
+<a name="l00580"></a>00580 }
+<a name="l00581"></a>00581
+<a name="l00582"></a>00582 <span class="comment">//emit sigRefreshReady if all accounts are ready</span>
+<a name="l00583"></a>00583 <span class="keywordflow">if</span>( !accountRefreshing )
+<a name="l00584"></a>00584 {
+<a name="l00585"></a>00585 emit <a class="code" href="classConfigList.html#cd0d056e66a4c054306dca9936b9d5da">sigRefreshReady</a>();
+<a name="l00586"></a>00586 }
+<a name="l00587"></a>00587
+<a name="l00588"></a>00588 }
+<a name="l00589"></a>00589
+<a name="l00590"></a><a class="code" href="classConfigList.html#c68944845fe63749fc073947fbdd44d6">00590</a> <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#c68944845fe63749fc073947fbdd44d6">ConfigList::getNumberNewMails</a>( )
+<a name="l00591"></a>00591 {
+<a name="l00592"></a>00592 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00593"></a>00593 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//account to process</span>
+<a name="l00594"></a>00594 <span class="keywordtype">int</span> number = 0; <span class="comment">//number of new mails</span>
+<a name="l00595"></a>00595
+<a name="l00596"></a>00596 <span class="comment">//iterate over all accounts and sum up the number of new mails</span>
+<a name="l00597"></a>00597 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00598"></a>00598 {
+<a name="l00599"></a>00599 number += account-&gt;<a class="code" href="classConfigElem.html#2725f96acd936fd8a9008d6ddf04ba76">getNumberNewMails</a>();
+<a name="l00600"></a>00600
+<a name="l00601"></a>00601 <span class="comment">//get next account</span>
+<a name="l00602"></a>00602 ++it;
+<a name="l00603"></a>00603 }
+<a name="l00604"></a>00604
+<a name="l00605"></a>00605 <span class="keywordflow">return</span> number;
+<a name="l00606"></a>00606 }
+<a name="l00607"></a>00607
+<a name="l00608"></a><a class="code" href="classConfigList.html#493eec8637f0f34fb25e13d07b6d838a">00608</a> <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#493eec8637f0f34fb25e13d07b6d838a">ConfigList::getNumberMails</a>( )
+<a name="l00609"></a>00609 {
+<a name="l00610"></a>00610 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00611"></a>00611 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//account to process</span>
+<a name="l00612"></a>00612 <span class="keywordtype">int</span> number = 0; <span class="comment">//number of mails</span>
+<a name="l00613"></a>00613
+<a name="l00614"></a>00614 <span class="comment">//iterate over all accounts and sum up the number of mails</span>
+<a name="l00615"></a>00615 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00616"></a>00616 {
+<a name="l00617"></a>00617 number += account-&gt;<a class="code" href="classConfigElem.html#c072d6241f981b1e0ffffb63a0a52250">getNumberMails</a>();
+<a name="l00618"></a>00618
+<a name="l00619"></a>00619 <span class="comment">//get next account</span>
+<a name="l00620"></a>00620 ++it;
+<a name="l00621"></a>00621 }
+<a name="l00622"></a>00622
+<a name="l00623"></a>00623 <span class="keywordflow">return</span> number;
+<a name="l00624"></a>00624 }
+<a name="l00625"></a>00625
+<a name="l00626"></a><a class="code" href="classConfigList.html#2e6d8a00456ca4b61ddba18ab419dd38">00626</a> <span class="keywordtype">long</span> <a class="code" href="classConfigList.html#2e6d8a00456ca4b61ddba18ab419dd38">ConfigList::getTotalSize</a>( )
+<a name="l00627"></a>00627 {
+<a name="l00628"></a>00628 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00629"></a>00629 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//account to process</span>
+<a name="l00630"></a>00630 <span class="keywordtype">long</span> size = 0; <span class="comment">//total size of all mails</span>
+<a name="l00631"></a>00631
+<a name="l00632"></a>00632 <span class="comment">//iterate over all accounts and sum up the size of all mails</span>
+<a name="l00633"></a>00633 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00634"></a>00634 {
+<a name="l00635"></a>00635 size += account-&gt;<a class="code" href="classConfigElem.html#bb71d58016499cd57784e60efee37b0f">getTotalSize</a>();
+<a name="l00636"></a>00636
+<a name="l00637"></a>00637 <span class="comment">//get next account</span>
+<a name="l00638"></a>00638 ++it;
+<a name="l00639"></a>00639 }
+<a name="l00640"></a>00640
+<a name="l00641"></a>00641 <span class="keywordflow">return</span> size;
+<a name="l00642"></a>00642 }
+<a name="l00643"></a>00643
+<a name="l00644"></a><a class="code" href="classConfigList.html#1db2530c553952aef3c23483dd6b6567">00644</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#1db2530c553952aef3c23483dd6b6567">ConfigList::fillMailListView</a>( <a class="code" href="classKshowmailView.html">KshowmailView</a> * view )
+<a name="l00645"></a>00645 {
+<a name="l00646"></a>00646 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00647"></a>00647 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//account to process</span>
+<a name="l00648"></a>00648
+<a name="l00649"></a>00649 <span class="comment">//iterate over all accounts and order the active accounts to fill their mails</span>
+<a name="l00650"></a>00650 <span class="comment">//into the list view</span>
+<a name="l00651"></a>00651 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00652"></a>00652 {
+<a name="l00653"></a>00653 <span class="keywordflow">if</span>( account-&gt;<a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a>() )
+<a name="l00654"></a>00654 account-&gt;<a class="code" href="classConfigElem.html#365bd67f2ec657beaf98ded2463b61a2">fillMailListView</a>( view );
+<a name="l00655"></a>00655
+<a name="l00656"></a>00656 <span class="comment">//get next account</span>
+<a name="l00657"></a>00657 ++it;
+<a name="l00658"></a>00658 }
+<a name="l00659"></a>00659
+<a name="l00660"></a>00660 }
+<a name="l00661"></a>00661
+<a name="l00662"></a><a class="code" href="classConfigList.html#b4021a1f9087d447649a362d8779ec34">00662</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#b4021a1f9087d447649a362d8779ec34">ConfigList::showMainWindowForNewMails</a>( )
+<a name="l00663"></a>00663 {
+<a name="l00664"></a>00664 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#b9613ab5f07edb0ef04383867674a5ce">m_bShowMainWindow</a>;
+<a name="l00665"></a>00665 }
+<a name="l00666"></a>00666
+<a name="l00667"></a><a class="code" href="classConfigList.html#2270af8a5ce1740958f0f0b39359051f">00667</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#2270af8a5ce1740958f0f0b39359051f">ConfigList::showAlertMessageForNewMails</a>( )
+<a name="l00668"></a>00668 {
+<a name="l00669"></a>00669 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#35d80df8b80f34868140a2163d207490">m_bShowMessage</a>;
+<a name="l00670"></a>00670 }
+<a name="l00671"></a>00671
+<a name="l00672"></a><a class="code" href="classConfigList.html#e24d2fa3175996ba24faa1ed1efcf35a">00672</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#e24d2fa3175996ba24faa1ed1efcf35a">ConfigList::quitNoNewMails</a>( )
+<a name="l00673"></a>00673 {
+<a name="l00674"></a>00674 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#cdf78356d632253ac463907e526eb26a">m_bTerminate</a>;
+<a name="l00675"></a>00675 }
+<a name="l00676"></a>00676
+<a name="l00677"></a><a class="code" href="classConfigList.html#94f99e48dfcc902ef18ea7310f395beb">00677</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#94f99e48dfcc902ef18ea7310f395beb">ConfigList::minimizeMainWindowNoNewMails</a>( )
+<a name="l00678"></a>00678 {
+<a name="l00679"></a>00679 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#f22fd0f8854795662a444bc2b4f8a9b9">m_bMinimize</a>;
+<a name="l00680"></a>00680 }
+<a name="l00681"></a>00681
+<a name="l00682"></a><a class="code" href="classConfigList.html#3b74518a8dc0aff55be667276bc4597b">00682</a> <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#3b74518a8dc0aff55be667276bc4597b">ConfigList::getInitTime</a>( )
+<a name="l00683"></a>00683 {
+<a name="l00684"></a>00684 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">m_nInitTimer</a>;
+<a name="l00685"></a>00685 }
+<a name="l00686"></a>00686
+<a name="l00687"></a><a class="code" href="classConfigList.html#c40250ce119d3e6f75b32b296ffaa36c">00687</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#c40250ce119d3e6f75b32b296ffaa36c">ConfigList::setInitTime</a>( <span class="keywordtype">int</span> time )
+<a name="l00688"></a>00688 {
+<a name="l00689"></a>00689 <span class="keywordflow">if</span>( time &gt;= 0 )
+<a name="l00690"></a>00690 <a class="code" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">m_nInitTimer</a> = time;
+<a name="l00691"></a>00691 <span class="keywordflow">else</span>
+<a name="l00692"></a>00692 <a class="code" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">m_nInitTimer</a> = 0;
+<a name="l00693"></a>00693 }
+<a name="l00694"></a>00694
+<a name="l00695"></a><a class="code" href="classConfigList.html#ed405d97a4a1d20cac93bf2a23cf40bf">00695</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#ed405d97a4a1d20cac93bf2a23cf40bf">ConfigList::hasInitTime</a>( )
+<a name="l00696"></a>00696 {
+<a name="l00697"></a>00697 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">m_nInitTimer</a> &gt; 0;
+<a name="l00698"></a>00698 }
+<a name="l00699"></a>00699
+<a name="l00700"></a><a class="code" href="classConfigList.html#b3d5530c7419f6aa4b43e4247f3036a5">00700</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#b3d5530c7419f6aa4b43e4247f3036a5">ConfigList::refreshAccountList</a>( )
+<a name="l00701"></a>00701 {
+<a name="l00702"></a>00702 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00703"></a>00703 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//account to process</span>
+<a name="l00704"></a>00704
+<a name="l00705"></a>00705 <span class="comment">//iterate over all accounts and order the account to refresh its</span>
+<a name="l00706"></a>00706 <span class="comment">//account list view item</span>
+<a name="l00707"></a>00707 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00708"></a>00708 {
+<a name="l00709"></a>00709 account-&gt;<a class="code" href="classConfigElem.html#3a709da00728e100343bfde8aac61491">refreshAccountListItem</a>();
+<a name="l00710"></a>00710
+<a name="l00711"></a>00711 <span class="comment">//get next account</span>
+<a name="l00712"></a>00712 ++it;
+<a name="l00713"></a>00713 }
+<a name="l00714"></a>00714
+<a name="l00715"></a>00715 }
+<a name="l00716"></a>00716
+<a name="l00717"></a><a class="code" href="classConfigList.html#3c7523934753f98f3087ed4083df3ab2">00717</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#3c7523934753f98f3087ed4083df3ab2">ConfigList::killPOP3Jobs</a>( )
+<a name="l00718"></a>00718 {
+<a name="l00719"></a>00719 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00720"></a>00720 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//account to process</span>
+<a name="l00721"></a>00721
+<a name="l00722"></a>00722 <span class="comment">//iterate over all accounts and order the account to kill</span>
+<a name="l00723"></a>00723 <span class="comment">//a running pop3 job</span>
+<a name="l00724"></a>00724 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00725"></a>00725 {
+<a name="l00726"></a>00726 account-&gt;<a class="code" href="classConfigElem.html#be79ff49926793b27e8af8b5101c7b70">killPOP3Job</a>();
+<a name="l00727"></a>00727
+<a name="l00728"></a>00728 <span class="comment">//get next account</span>
+<a name="l00729"></a>00729 ++it;
+<a name="l00730"></a>00730 }
+<a name="l00731"></a>00731 }
+<a name="l00732"></a>00732
+<a name="l00733"></a><a class="code" href="classConfigList.html#9578f65f771482e727dfb3e1da861aa3">00733</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#9578f65f771482e727dfb3e1da861aa3">ConfigList::showSelectedHeaders</a>( )
+<a name="l00734"></a>00734 {
+<a name="l00735"></a>00735 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//to iterate over all accounts</span>
+<a name="l00736"></a>00736 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//account to process</span>
+<a name="l00737"></a>00737 <span class="keywordtype">int</span> showNextHeader = <a class="code" href="classConfigElem.html#8dc234323fe966a322ae8649bc2cd76e">ConfigElem::continueShowHeaders</a>; <span class="comment">//return value of ConfigElem::showSelectedHeaders</span>
+<a name="l00738"></a>00738
+<a name="l00739"></a>00739 <span class="comment">//iterate over all accounts and order the account to show</span>
+<a name="l00740"></a>00740 <span class="comment">//the headers of all selected mails.</span>
+<a name="l00741"></a>00741 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL &amp;&amp; showNextHeader == <a class="code" href="classConfigElem.html#8dc234323fe966a322ae8649bc2cd76e">ConfigElem::continueShowHeaders</a> )
+<a name="l00742"></a>00742 {
+<a name="l00743"></a>00743 <span class="keywordflow">if</span>( account-&gt;<a class="code" href="classConfigElem.html#748ec06f6ad44f36143389bb9501a1f7">hasSelectedMails</a>() )
+<a name="l00744"></a>00744 showNextHeader = account-&gt;<a class="code" href="classConfigElem.html#0725bb36943ca6fd1ca82af5ef6913a3">showSelectedHeaders</a>();
+<a name="l00745"></a>00745
+<a name="l00746"></a>00746 <span class="comment">//get next account</span>
+<a name="l00747"></a>00747 ++it;
+<a name="l00748"></a>00748 }
+<a name="l00749"></a>00749 }
+<a name="l00750"></a>00750
+<a name="l00751"></a><a class="code" href="classConfigList.html#8ab66c254c66635f97df7e17882b4ab2">00751</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#8ab66c254c66635f97df7e17882b4ab2">ConfigList::refreshSetup</a>( KListView* view )
+<a name="l00752"></a>00752 {
+<a name="l00753"></a>00753 <span class="comment">//get application config object (kshowmailrc)</span>
+<a name="l00754"></a>00754 <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a> = KApplication::kApplication()-&gt;config();
+<a name="l00755"></a>00755
+<a name="l00756"></a>00756 <span class="comment">//read actions group</span>
+<a name="l00757"></a>00757 <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;setGroup( CONFIG_GROUP_ACTIONS );
+<a name="l00758"></a>00758
+<a name="l00759"></a>00759 <a class="code" href="classConfigList.html#35d80df8b80f34868140a2163d207490">m_bShowMessage</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_NEW_MAIL_ALERTWINDOW, DEFAULT_ACTION_NEW_MAIL_ALERTWINDOW );
+<a name="l00760"></a>00760 <a class="code" href="classConfigList.html#b9613ab5f07edb0ef04383867674a5ce">m_bShowMainWindow</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_NEW_MAIL_MAINWINDOW, DEFAULT_ACTION_NEW_MAIL_MAINWINDOW );
+<a name="l00761"></a>00761 <a class="code" href="classConfigList.html#a866f2fd4fb32d49ab99306150d79c50">m_bBeep</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_NEW_MAIL_BEEP, DEFAULT_ACTION_NEW_MAIL_BEEP );
+<a name="l00762"></a>00762 <a class="code" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">m_bSound</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_NEW_MAIL_SOUND, DEFAULT_ACTION_NEW_MAIL_SOUND );
+<a name="l00763"></a>00763 <a class="code" href="classConfigList.html#be34e6084394fa6fa99422a7cc50d8f0">m_strSoundFile</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readEntry( CONFIG_ENTRY_NEW_MAIL_SOUNDPATH );
+<a name="l00764"></a>00764 <a class="code" href="classConfigList.html#ae8d4084a4b83a09722015793afb974c">m_bCommand</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_NEW_MAIL_COMMAND, DEFAULT_ACTION_NEW_MAIL_COMMAND );
+<a name="l00765"></a>00765 <a class="code" href="classConfigList.html#ea53a55a83d06cb76e3e686dd29ca034">m_strCommandPath</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readEntry( CONFIG_ENTRY_NEW_MAIL_COMMANDPATH );
+<a name="l00766"></a>00766 <a class="code" href="classConfigList.html#f22fd0f8854795662a444bc2b4f8a9b9">m_bMinimize</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_NO_NEW_MAIL_MINIMIZE, DEFAULT_ACTION_NO_NEW_MAIL_MINIMIZE );
+<a name="l00767"></a>00767 <a class="code" href="classConfigList.html#cdf78356d632253ac463907e526eb26a">m_bTerminate</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_NO_NEW_MAIL_TERMINATE, DEFAULT_ACTION_NO_NEW_MAIL_TERMINATE );
+<a name="l00768"></a>00768
+<a name="l00769"></a>00769 <span class="comment">//read general group</span>
+<a name="l00770"></a>00770 <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;setGroup( CONFIG_GROUP_GENERAL );
+<a name="l00771"></a>00771 <a class="code" href="classConfigList.html#80b1f5a036cdaf9054ba57831a0c013e">m_bConfirmClose</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_CONFIRM_CLOSE, DEFAULT_CONFIRM_CLOSE );
+<a name="l00772"></a>00772 <a class="code" href="classConfigList.html#8b8d0d0a2d78c9f3ede1db0a9e77f8be">m_bConfirmDelete</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_CONFIRM_DELETE, DEFAULT_CONFIRM_DELETE );
+<a name="l00773"></a>00773 <a class="code" href="classConfigList.html#fb4f1f200303a7e94114a8c4c85eb47e">m_bStartMinimized</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_START_MINIMIZED, DEFAULT_START_MINIMIZED );
+<a name="l00774"></a>00774 <a class="code" href="classConfigList.html#da6c14776958a3b28f68797c7feb6c5b">m_bCloseMinimizes</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_CLOSE_TO_TRAY, DEFAULT_CLOSE_TO_TRAY );
+<a name="l00775"></a>00775 <a class="code" href="classConfigList.html#af4cc3801f229ae974131ef1e000a8cf">m_bMinimizeToTray</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_MINIMIZE_TO_TRAY, DEFAULT_MINIMIZE_TO_TRAY );
+<a name="l00776"></a>00776 <a class="code" href="classConfigList.html#1bd48d8596694d5b39e0ead274689010">m_bShowConnectionErrors</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_SHOW_CONNECTION_ERRORS, DEFAULT_SHOW_CONNECTION_ERRORS );
+<a name="l00777"></a>00777 <a class="code" href="classConfigList.html#54c7671d25847b7b16cf71ec61c640d0">m_bKeepNew</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_KEEP_NEW, DEFAULT_KEEP_NEW );
+<a name="l00778"></a>00778
+<a name="l00779"></a>00779 <a class="code" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">m_nInitTimer</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readNumEntry( CONFIG_ENTRY_INITIAL_TIME, DEFAULT_INITIAL_TIME );
+<a name="l00780"></a>00780 <a class="code" href="classConfigList.html#b15e5bd9334e36428c5d44b9ee2a97d5">m_nIntervalTimer</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readNumEntry( CONFIG_ENTRY_INTERVAL_TIME, DEFAULT_INTERVAL_TIME);
+<a name="l00781"></a>00781 <a class="code" href="classConfigList.html#f4a428e650cf89e8ae0df0a2983f96f4">m_nPop3Timer</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readNumEntry( CONFIG_ENTRY_TIMEOUT_TIME, DEFAULT_TIMEOUT_TIME );
+<a name="l00782"></a>00782
+<a name="l00783"></a>00783 <span class="comment">//read display group</span>
+<a name="l00784"></a>00784 <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;setGroup( CONFIG_GROUP_VIEW );
+<a name="l00785"></a>00785 <a class="code" href="classConfigList.html#017597159dc4b62d147aade09140e942">m_bAllowHTML</a> = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_VIEW_USE_HTML, DEFAULT_VIEW_USE_HTML );
+<a name="l00786"></a>00786
+<a name="l00787"></a>00787 <span class="comment">//read account configuration and setup accounts</span>
+<a name="l00788"></a>00788 <span class="comment">//---------------------------------------------</span>
+<a name="l00789"></a>00789
+<a name="l00790"></a>00790 <span class="comment">//get account names from the config file</span>
+<a name="l00791"></a>00791 <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;setGroup( CONFIG_GROUP_ACCOUNTS );
+<a name="l00792"></a>00792 QStringList accounts = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readListEntry( CONFIG_ENTRY_ACCOUNTS_LIST, QStringList() );
+<a name="l00793"></a>00793
+<a name="l00794"></a>00794 <span class="comment">//remove deleted accounts from the account list</span>
+<a name="l00795"></a>00795 <span class="comment">//accounts are deleted, if the are in ConfigList yet, but not in the list of the config file (accounts)</span>
+<a name="l00796"></a>00796 <a class="code" href="classConfigElem.html">ConfigElem</a>* accountDel = NULL; <span class="comment">//current processed account</span>
+<a name="l00797"></a>00797 QPtrListIterator&lt;ConfigElem&gt; iter( *<span class="keyword">this</span> ); <span class="comment">//iterator for the account list (ConfigList)</span>
+<a name="l00798"></a>00798
+<a name="l00799"></a>00799 <span class="comment">//iterate over all accounts (ConfigList)</span>
+<a name="l00800"></a>00800 <span class="keywordflow">while</span>( ( accountDel = iter.current() ) != NULL )
+<a name="l00801"></a>00801 {
+<a name="l00802"></a>00802 <span class="comment">//increment iterator to get next account</span>
+<a name="l00803"></a>00803 ++iter;
+<a name="l00804"></a>00804
+<a name="l00805"></a>00805 <span class="comment">//search for the current account in the account list of the config file</span>
+<a name="l00806"></a>00806 QStringList::Iterator foundAccount = accounts.find( accountDel-&gt;<a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>() );
+<a name="l00807"></a>00807
+<a name="l00808"></a>00808 <span class="comment">//remove account from ConfigList, if it is not in the list of the config file</span>
+<a name="l00809"></a>00809 <span class="keywordflow">if</span>( foundAccount == accounts.end() )
+<a name="l00810"></a>00810 remove( accountDel );
+<a name="l00811"></a>00811 }
+<a name="l00812"></a>00812
+<a name="l00813"></a>00813 <span class="comment">//add or edit accounts</span>
+<a name="l00814"></a>00814 <a class="code" href="classConfigElem.html">ConfigElem</a>* acc;
+<a name="l00815"></a>00815 <span class="comment">//iterate over all items of the account list of the config file</span>
+<a name="l00816"></a>00816 <span class="keywordflow">for</span>( QStringList::Iterator it = accounts.begin(); it != accounts.end(); ++it )
+<a name="l00817"></a>00817 {
+<a name="l00818"></a>00818 <span class="comment">//create a new account, if it is not in the list yet (ConfigList)</span>
+<a name="l00819"></a>00819 <span class="comment">//or get the account</span>
+<a name="l00820"></a>00820 <span class="keywordflow">if</span>( !<a class="code" href="classConfigList.html#47d7852e47d047dc7c00ad76715aa4df">hasAccount</a>( *it ) )
+<a name="l00821"></a>00821 {
+<a name="l00822"></a>00822 <span class="comment">//create new account</span>
+<a name="l00823"></a>00823 acc = <span class="keyword">new</span> <a class="code" href="classConfigElem.html">ConfigElem</a>( <span class="keyword">this</span>, *it );
+<a name="l00824"></a>00824 inSort( acc );
+<a name="l00825"></a>00825
+<a name="l00826"></a>00826 <span class="comment">//the pointer list inserts a copy of the new account object</span>
+<a name="l00827"></a>00827 <span class="comment">//we have to delete the original</span>
+<a name="l00828"></a>00828 <span class="keyword">delete</span> acc;
+<a name="l00829"></a>00829 }
+<a name="l00830"></a>00830
+<a name="l00831"></a>00831 <span class="comment">//get account from ConfigList</span>
+<a name="l00832"></a>00832 acc = <a class="code" href="classConfigList.html#f5155dad83daf4956ebfb09f6ebd50c6">getAccount</a>( *it );
+<a name="l00833"></a>00833
+<a name="l00834"></a>00834 <span class="comment">//get the setup of the account from the config file and setup the account</span>
+<a name="l00835"></a>00835 <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;setGroup( *it );
+<a name="l00836"></a>00836
+<a name="l00837"></a>00837 acc-&gt;<a class="code" href="classConfigElem.html#cf56636bf7537e7f5dbc1a762b4670d2">setHost</a>( <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readEntry( CONFIG_ENTRY_ACCOUNT_SERVER, DEFAULT_ACCOUNT_SERVER ) );
+<a name="l00838"></a>00838 acc-&gt;<a class="code" href="classConfigElem.html#103236b06a88a8d14b629170df1a7ca9">setProtocol</a>( <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readEntry( CONFIG_ENTRY_ACCOUNT_PROTOCOL, DEFAULT_ACCOUNT_PROTOCOL ).lower() );
+<a name="l00839"></a>00839 acc-&gt;<a class="code" href="classConfigElem.html#cc66eba0b4fbf308cddad0478f20ef0f">setPort</a>( <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readNumEntry( CONFIG_ENTRY_ACCOUNT_PORT, DEFAULT_ACCOUNT_PORT_POP3 ) );
+<a name="l00840"></a>00840 acc-&gt;<a class="code" href="classConfigElem.html#856ca37e391329be6b06f8be2f0a1f74">setUser</a>( <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readEntry( CONFIG_ENTRY_ACCOUNT_USER, DEFAULT_ACCOUNT_USER ) );
+<a name="l00841"></a>00841 acc-&gt;<a class="code" href="classConfigElem.html#4a5aa6b86e56403fa453c9d642b71812">setActive</a>( <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readBoolEntry( CONFIG_ENTRY_ACCOUNT_ACTIVE, DEFAULT_ACCOUNT_ACTIVE ) );
+<a name="l00842"></a>00842 <span class="keywordtype">int</span> StorageType = <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readNumEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, DEFAULT_ACCOUNT_PASSWORD_STORAGE );
+<a name="l00843"></a>00843
+<a name="l00844"></a>00844 <span class="keywordflow">switch</span>( StorageType )
+<a name="l00845"></a>00845 {
+<a name="l00846"></a>00846 <span class="keywordflow">case</span> CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE:
+<a name="l00847"></a>00847 acc-&gt;<a class="code" href="classConfigElem.html#58f9d269bd389c52718d78d7615c4431">setPasswordStorage</a>( CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE );
+<a name="l00848"></a>00848 acc-&gt;<a class="code" href="classConfigElem.html#6edf15369f3e906a04dff0b92f5b3c2d">setPassword</a>( QString::null );
+<a name="l00849"></a>00849 <span class="keywordflow">break</span>;
+<a name="l00850"></a>00850
+<a name="l00851"></a>00851 <span class="keywordflow">case</span> CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE:
+<a name="l00852"></a>00852 acc-&gt;<a class="code" href="classConfigElem.html#58f9d269bd389c52718d78d7615c4431">setPasswordStorage</a>( CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE );
+<a name="l00853"></a>00853 acc-&gt;<a class="code" href="classConfigElem.html#6edf15369f3e906a04dff0b92f5b3c2d">setPassword</a>( <a class="code" href="namespaceEncryption.html#df6ae41daa3eebed6cc7a74a37936981">Encryption::decrypt</a>( <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>-&gt;readEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, DEFAULT_ACCOUNT_PASSWORD ) ) );
+<a name="l00854"></a>00854 <span class="keywordflow">break</span>;
+<a name="l00855"></a>00855
+<a name="l00856"></a>00856 <span class="keywordflow">case</span> CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET:
+<a name="l00857"></a>00857 acc-&gt;<a class="code" href="classConfigElem.html#58f9d269bd389c52718d78d7615c4431">setPasswordStorage</a>( CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET );
+<a name="l00858"></a>00858 acc-&gt;<a class="code" href="classConfigElem.html#6edf15369f3e906a04dff0b92f5b3c2d">setPassword</a>( <a class="code" href="namespaceKWalletAccess.html#2ce179e4ef9e2a06990252aca555b2fa">KWalletAccess::getPassword</a>( *it ) );
+<a name="l00859"></a>00859 <span class="keywordflow">break</span>;
+<a name="l00860"></a>00860
+<a name="l00861"></a>00861 <span class="keywordflow">default</span>:
+<a name="l00862"></a>00862 acc-&gt;<a class="code" href="classConfigElem.html#58f9d269bd389c52718d78d7615c4431">setPasswordStorage</a>( DEFAULT_ACCOUNT_PASSWORD_STORAGE );
+<a name="l00863"></a>00863 acc-&gt;<a class="code" href="classConfigElem.html#6edf15369f3e906a04dff0b92f5b3c2d">setPassword</a>( QString::null );
+<a name="l00864"></a>00864 }
+<a name="l00865"></a>00865
+<a name="l00866"></a>00866 }
+<a name="l00867"></a>00867
+<a name="l00868"></a>00868 <span class="comment">//connect the signals of the accounts with ConfigList</span>
+<a name="l00869"></a>00869 <a class="code" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">connectAccounts</a>();
+<a name="l00870"></a>00870
+<a name="l00871"></a>00871 <span class="comment">//refresh account list view</span>
+<a name="l00872"></a>00872 <a class="code" href="classConfigList.html#e595f764ea9b38f0634137438bdd4d70">setList</a>( view );
+<a name="l00873"></a>00873 }
+<a name="l00874"></a>00874
+<a name="l00875"></a><a class="code" href="classConfigList.html#01cf49eac83ba56d1f9b3fbaa6bf4648">00875</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#01cf49eac83ba56d1f9b3fbaa6bf4648">ConfigList::executeNewMailCommand</a>( )
+<a name="l00876"></a>00876 {
+<a name="l00877"></a>00877 <span class="keywordflow">if</span>( <a class="code" href="classConfigList.html#ae8d4084a4b83a09722015793afb974c">m_bCommand</a> )
+<a name="l00878"></a>00878 {
+<a name="l00879"></a>00879 <span class="keywordflow">if</span>( <a class="code" href="classConfigList.html#ea53a55a83d06cb76e3e686dd29ca034">m_strCommandPath</a> != QString::null &amp;&amp; <a class="code" href="classConfigList.html#ea53a55a83d06cb76e3e686dd29ca034">m_strCommandPath</a> != <span class="stringliteral">""</span> )
+<a name="l00880"></a>00880 {
+<a name="l00881"></a>00881 KShellProcess proc; <span class="comment">//process handler to execute the binary</span>
+<a name="l00882"></a>00882
+<a name="l00883"></a>00883 proc &lt;&lt; <a class="code" href="classConfigList.html#ea53a55a83d06cb76e3e686dd29ca034">m_strCommandPath</a>;
+<a name="l00884"></a>00884
+<a name="l00885"></a>00885 proc.start( KShellProcess::DontCare );
+<a name="l00886"></a>00886 }
+<a name="l00887"></a>00887 }
+<a name="l00888"></a>00888 }
+<a name="l00889"></a>00889
+<a name="l00890"></a><a class="code" href="classConfigList.html#49a20af219bc1a4f20e50b59b6f2310c">00890</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#49a20af219bc1a4f20e50b59b6f2310c">ConfigList::keepNew</a>( )
+<a name="l00891"></a>00891 {
+<a name="l00892"></a>00892 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#54c7671d25847b7b16cf71ec61c640d0">m_bKeepNew</a>;
+<a name="l00893"></a>00893 }
+<a name="l00894"></a>00894
+<a name="l00895"></a><a class="code" href="classConfigList.html#4886c3988fef0e227cd03af094b21415">00895</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#4886c3988fef0e227cd03af094b21415">ConfigList::confirmClose</a>( )<span class="keyword"> const</span>
+<a name="l00896"></a>00896 <span class="keyword"></span>{
+<a name="l00897"></a>00897 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#80b1f5a036cdaf9054ba57831a0c013e">m_bConfirmClose</a>;
+<a name="l00898"></a>00898 }
+<a name="l00899"></a>00899
+<a name="l00900"></a><a class="code" href="classConfigList.html#6b5567437e81508f071d31acb4509994">00900</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#6b5567437e81508f071d31acb4509994">ConfigList::startMinimized</a>( )<span class="keyword"> const</span>
+<a name="l00901"></a>00901 <span class="keyword"></span>{
+<a name="l00902"></a>00902 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#fb4f1f200303a7e94114a8c4c85eb47e">m_bStartMinimized</a>;
+<a name="l00903"></a>00903 }
+<a name="l00904"></a>00904
+<a name="l00905"></a><a class="code" href="classConfigList.html#fa610dea65deb4e7e26c01926e740e84">00905</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#fa610dea65deb4e7e26c01926e740e84">ConfigList::closeToTray</a>( )<span class="keyword"> const</span>
+<a name="l00906"></a>00906 <span class="keyword"></span>{
+<a name="l00907"></a>00907 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#da6c14776958a3b28f68797c7feb6c5b">m_bCloseMinimizes</a>;
+<a name="l00908"></a>00908 }
+<a name="l00909"></a>00909
+<a name="l00910"></a><a class="code" href="classConfigList.html#c64e08e3c1469622763dd462612a83ca">00910</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#c64e08e3c1469622763dd462612a83ca">ConfigList::minimizesToTray</a>( )<span class="keyword"> const</span>
+<a name="l00911"></a>00911 <span class="keyword"></span>{
+<a name="l00912"></a>00912 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#af4cc3801f229ae974131ef1e000a8cf">m_bMinimizeToTray</a>;
+<a name="l00913"></a>00913 }
+<a name="l00914"></a>00914
+<a name="l00915"></a><a class="code" href="classConfigList.html#04033fd5903daf6b1286891a2c7a228c">00915</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#04033fd5903daf6b1286891a2c7a228c">ConfigList::showConnectionErrors</a>( )<span class="keyword"> const</span>
+<a name="l00916"></a>00916 <span class="keyword"></span>{
+<a name="l00917"></a>00917 <span class="keywordflow">return</span> <a class="code" href="classConfigList.html#1bd48d8596694d5b39e0ead274689010">m_bShowConnectionErrors</a>;
+<a name="l00918"></a>00918 }
+<a name="l00919"></a>00919
+<a name="l00920"></a><a class="code" href="classConfigList.html#47d7852e47d047dc7c00ad76715aa4df">00920</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#47d7852e47d047dc7c00ad76715aa4df">ConfigList::hasAccount</a>( <span class="keyword">const</span> QString &amp; name )<span class="keyword"> const</span>
+<a name="l00921"></a>00921 <span class="keyword"></span>{
+<a name="l00922"></a>00922 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//TRUE if we have found the given account</span>
+<a name="l00923"></a>00923 <a class="code" href="classConfigElem.html">ConfigElem</a>* account; <span class="comment">//account from which we want to get its name</span>
+<a name="l00924"></a>00924 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the account list</span>
+<a name="l00925"></a>00925
+<a name="l00926"></a>00926 <span class="comment">//iterate over all accounts</span>
+<a name="l00927"></a>00927 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00928"></a>00928 {
+<a name="l00929"></a>00929 <span class="comment">//increment iterator to next account</span>
+<a name="l00930"></a>00930 ++it;
+<a name="l00931"></a>00931
+<a name="l00932"></a>00932 <span class="comment">//if current account is the searched one set found to TRUE</span>
+<a name="l00933"></a>00933 <span class="keywordflow">if</span>( account-&gt;<a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>() == name )
+<a name="l00934"></a>00934 found = <span class="keyword">true</span>;
+<a name="l00935"></a>00935 }
+<a name="l00936"></a>00936
+<a name="l00937"></a>00937 <span class="keywordflow">return</span> found;
+<a name="l00938"></a>00938 }
+<a name="l00939"></a>00939
+<a name="l00940"></a><a class="code" href="classConfigList.html#f5155dad83daf4956ebfb09f6ebd50c6">00940</a> <a class="code" href="classConfigElem.html">ConfigElem</a> * <a class="code" href="classConfigList.html#f5155dad83daf4956ebfb09f6ebd50c6">ConfigList::getAccount</a>( <span class="keyword">const</span> QString &amp; name )<span class="keyword"> const</span>
+<a name="l00941"></a>00941 <span class="keyword"></span>{
+<a name="l00942"></a>00942 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//TRUE if we have found the given account</span>
+<a name="l00943"></a>00943 <a class="code" href="classConfigElem.html">ConfigElem</a>* account = NULL; <span class="comment">//account from which we want to get its name</span>
+<a name="l00944"></a>00944 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the account list</span>
+<a name="l00945"></a>00945 <a class="code" href="classConfigElem.html">ConfigElem</a>* returnValue = NULL;
+<a name="l00946"></a>00946
+<a name="l00947"></a>00947 <span class="comment">//iterate over all accounts</span>
+<a name="l00948"></a>00948 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00949"></a>00949 {
+<a name="l00950"></a>00950 <span class="comment">//increment iterator to next account</span>
+<a name="l00951"></a>00951 ++it;
+<a name="l00952"></a>00952
+<a name="l00953"></a>00953 <span class="comment">//if current account is the searched one set found to TRUE</span>
+<a name="l00954"></a>00954 <span class="keywordflow">if</span>( account-&gt;<a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>() == name )
+<a name="l00955"></a>00955 {
+<a name="l00956"></a>00956 found = <span class="keyword">true</span>;
+<a name="l00957"></a>00957 returnValue = account;
+<a name="l00958"></a>00958 }
+<a name="l00959"></a>00959 }
+<a name="l00960"></a>00960
+<a name="l00961"></a>00961 <span class="keywordflow">return</span> returnValue;
+<a name="l00962"></a>00962 }
+<a name="l00963"></a>00963
+<a name="l00964"></a><a class="code" href="classConfigList.html#ac706ab3763709422de0ccfa91db7776">00964</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#ac706ab3763709422de0ccfa91db7776">ConfigList::printSetup</a>( )
+<a name="l00965"></a>00965 {
+<a name="l00966"></a>00966 <a class="code" href="classConfigElem.html">ConfigElem</a>* account = NULL; <span class="comment">//account from which we want to print the setup</span>
+<a name="l00967"></a>00967 QPtrListIterator&lt;ConfigElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the account list</span>
+<a name="l00968"></a>00968
+<a name="l00969"></a>00969 <span class="comment">//iterate over all accounts</span>
+<a name="l00970"></a>00970 <span class="keywordflow">while</span>( ( account = it.current() ) != NULL )
+<a name="l00971"></a>00971 {
+<a name="l00972"></a>00972 <span class="comment">//increment iterator to next account</span>
+<a name="l00973"></a>00973 ++it;
+<a name="l00974"></a>00974
+<a name="l00975"></a>00975 <span class="comment">//print setup</span>
+<a name="l00976"></a>00976 account-&gt;<a class="code" href="classConfigElem.html#46e0d578a0c537e8d13ad689044f1fe7">printSetup</a>();
+<a name="l00977"></a>00977 }
+<a name="l00978"></a>00978 }
+<a name="l00979"></a>00979
+<a name="l00980"></a><a class="code" href="classConfigList.html#18b093749b6a474b68a4c2bfe952d65c">00980</a> <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#18b093749b6a474b68a4c2bfe952d65c">ConfigList::readStoredMails</a>( )
+<a name="l00981"></a>00981 {
+<a name="l00982"></a>00982 <span class="comment">//open file</span>
+<a name="l00983"></a>00983 QString MailFileName = locateLocal( <span class="stringliteral">"config"</span>, MAIL_FILE );
+<a name="l00984"></a>00984 QFile file( MailFileName );
+<a name="l00985"></a>00985 <span class="keywordtype">bool</span> fileOpen = file.open( IO_ReadOnly );
+<a name="l00986"></a>00986
+<a name="l00987"></a>00987 <span class="comment">//return, if the file could not be opened</span>
+<a name="l00988"></a>00988 <span class="keywordflow">if</span>( !fileOpen )
+<a name="l00989"></a>00989 {
+<a name="l00990"></a>00990 kdError() &lt;&lt; <span class="stringliteral">"ConfigList::readStoredMails: File "</span> &lt;&lt; MailFileName &lt;&lt; <span class="stringliteral">" could not be opened."</span> &lt;&lt; endl;
+<a name="l00991"></a>00991 <span class="keywordflow">return</span>;
+<a name="l00992"></a>00992 }
+<a name="l00993"></a>00993
+<a name="l00994"></a>00994 <span class="comment">//create DOM document with the content read from the file</span>
+<a name="l00995"></a>00995 QDomDocument doc( MAIL_FILE_DOCTYPE );
+<a name="l00996"></a>00996 QString* errorMsg = <span class="keyword">new</span> QString();
+<a name="l00997"></a>00997
+<a name="l00998"></a>00998 <span class="keywordtype">bool</span> success = doc.setContent( &amp;file );
+<a name="l00999"></a>00999 <span class="keywordflow">if</span>( !success )
+<a name="l01000"></a>01000 {
+<a name="l01001"></a>01001 kdError() &lt;&lt; <span class="stringliteral">"ConfigList::readStoredMails: Invalid content in "</span> &lt;&lt; MAIL_FILE &lt;&lt; <span class="stringliteral">". "</span> &lt;&lt; *errorMsg &lt;&lt; endl;
+<a name="l01002"></a>01002 }
+<a name="l01003"></a>01003
+<a name="l01004"></a>01004 <span class="comment">//get the root element</span>
+<a name="l01005"></a>01005 QDomElement accounts = doc.namedItem ( ROOT_ELEMENT ).toElement();
+<a name="l01006"></a>01006
+<a name="l01007"></a>01007 <span class="comment">//get the first account element</span>
+<a name="l01008"></a>01008 QDomNode accNode = accounts.firstChild();
+<a name="l01009"></a>01009
+<a name="l01010"></a>01010 <span class="comment">//get all account elements</span>
+<a name="l01011"></a>01011 <span class="keywordflow">while</span>( !accNode.isNull() )
+<a name="l01012"></a>01012 {
+<a name="l01013"></a>01013 <span class="comment">//convert account node to DOM element</span>
+<a name="l01014"></a>01014 QDomElement accElem = accNode.toElement();
+<a name="l01015"></a>01015
+<a name="l01016"></a>01016 <span class="comment">//get the account name</span>
+<a name="l01017"></a>01017 QString accName = accElem.attribute( ATTRIBUTE_ACCOUNT_NAME );
+<a name="l01018"></a>01018
+<a name="l01019"></a>01019 <span class="comment">//get the proper account object</span>
+<a name="l01020"></a>01020 <a class="code" href="classConfigElem.html">ConfigElem</a>* account = <a class="code" href="classConfigList.html#f5155dad83daf4956ebfb09f6ebd50c6">getAccount</a>( accName );
+<a name="l01021"></a>01021
+<a name="l01022"></a>01022 <span class="comment">//order the account to read its stored mails</span>
+<a name="l01023"></a>01023 account-&gt;<a class="code" href="classConfigElem.html#dee46100623211279e37f498ac43c4e4">readStoredMails</a>( accElem );
+<a name="l01024"></a>01024
+<a name="l01025"></a>01025 <span class="comment">//get next account node</span>
+<a name="l01026"></a>01026 accNode = accNode.nextSibling();
+<a name="l01027"></a>01027 }
+<a name="l01028"></a>01028
+<a name="l01029"></a>01029 <span class="comment">//close file</span>
+<a name="l01030"></a>01030 file.close();
+<a name="l01031"></a>01031 }
+<a name="l01032"></a>01032
+<a name="l01033"></a>01033
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/configlist_8h-source.html b/doc/html/configlist_8h-source.html
new file mode 100644
index 0000000..56a1f27
--- /dev/null
+++ b/doc/html/configlist_8h-source.html
@@ -0,0 +1,283 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/configlist.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>configlist.h</h1><a href="configlist_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> configlist.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Tue May 9 2000</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2000-2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> (C) 2007 by Ulrich Weigelt</span>
+<a name="l00007"></a>00007 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00008"></a>00008 <span class="comment"> ulrich.weigelt@gmx.de</span>
+<a name="l00009"></a>00009 <span class="comment"></span>
+<a name="l00010"></a>00010 <span class="comment"> 26 Sep 2002 - Allow for columns to be hidden. Allistar Melville</span>
+<a name="l00011"></a>00011 <span class="comment"> ***************************************************************************/</span>
+<a name="l00012"></a>00012
+<a name="l00013"></a>00013 <span class="comment">/***************************************************************************</span>
+<a name="l00014"></a>00014 <span class="comment"> * *</span>
+<a name="l00015"></a>00015 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00016"></a>00016 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00017"></a>00017 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00018"></a>00018 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00019"></a>00019 <span class="comment"> * *</span>
+<a name="l00020"></a>00020 <span class="comment"> ***************************************************************************/</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="preprocessor">#ifndef CONFIGLIST_H</span>
+<a name="l00023"></a>00023 <span class="preprocessor"></span><span class="preprocessor">#define CONFIGLIST_H</span>
+<a name="l00024"></a>00024 <span class="preprocessor"></span>
+<a name="l00025"></a>00025 <span class="comment">//Qt header</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;qptrlist.h&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;qlistview.h&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;qobject.h&gt;</span>
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="comment">//KDE headers</span>
+<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;kcombobox.h&gt;</span>
+<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;kprocess.h&gt;</span>
+<a name="l00033"></a>00033 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00034"></a>00034
+<a name="l00035"></a>00035 <span class="comment">//KShowmail headers</span>
+<a name="l00036"></a>00036 <span class="preprocessor">#include "<a class="code" href="configelem_8h.html">configelem.h</a>"</span>
+<a name="l00037"></a>00037 <span class="preprocessor">#include "<a class="code" href="constants_8h.html">constants.h</a>"</span>
+<a name="l00038"></a>00038 <span class="preprocessor">#include "<a class="code" href="kshowmailview_8h.html">kshowmailview.h</a>"</span>
+<a name="l00039"></a>00039 <span class="preprocessor">#include "<a class="code" href="types_8h.html">types.h</a>"</span>
+<a name="l00040"></a>00040 <span class="preprocessor">#include "<a class="code" href="encryption_8h.html">encryption.h</a>"</span>
+<a name="l00041"></a>00041 <span class="preprocessor">#include "<a class="code" href="kwalletaccess_8h.html">kwalletaccess.h</a>"</span>
+<a name="l00042"></a>00042 <span class="preprocessor">#include "<a class="code" href="filteritem_8h.html">filteritem.h</a>"</span>
+<a name="l00043"></a>00043 <span class="preprocessor">#include "<a class="code" href="headerfilter_8h.html">headerfilter.h</a>"</span>
+<a name="l00044"></a>00044 <span class="preprocessor">#include "<a class="code" href="filterlog_8h.html">filterlog.h</a>"</span>
+<a name="l00045"></a>00045
+<a name="l00046"></a>00046 <span class="keyword">using namespace </span>Constants;
+<a name="l00047"></a>00047 <span class="keyword">using namespace </span>Types;
+<a name="l00048"></a>00048 <span class="keyword">using namespace </span>Encryption;
+<a name="l00049"></a>00049
+<a name="l00050"></a>00050 <span class="keyword">class </span><a class="code" href="classConfigElem.html">ConfigElem</a>;
+<a name="l00051"></a>00051 <span class="keyword">class </span><a class="code" href="classKshowmailView.html">KshowmailView</a>;
+<a name="l00052"></a>00052
+<a name="l00059"></a><a class="code" href="classConfigList.html">00059</a> <span class="keyword">class </span><a class="code" href="classConfigList.html">ConfigList</a> : <span class="keyword">public</span> QObject, <span class="keyword">public</span> QPtrList&lt;ConfigElem&gt;
+<a name="l00060"></a>00060 {
+<a name="l00061"></a>00061
+<a name="l00062"></a>00062 Q_OBJECT
+<a name="l00063"></a>00063
+<a name="l00064"></a>00064 <span class="keyword">public</span>:
+<a name="l00065"></a>00065
+<a name="l00069"></a>00069 <a class="code" href="classConfigList.html#457897bbe5bd27799e6f920d4cea2173">ConfigList</a> ();
+<a name="l00070"></a>00070
+<a name="l00074"></a><a class="code" href="classConfigList.html#1b6a054d7671b4f57d7fe77f123179ea">00074</a> <span class="keyword">virtual</span> <a class="code" href="classConfigList.html#1b6a054d7671b4f57d7fe77f123179ea">~ConfigList</a> () {};
+<a name="l00075"></a>00075
+<a name="l00081"></a>00081 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#8ab66c254c66635f97df7e17882b4ab2">refreshSetup</a>( KListView* view );
+<a name="l00082"></a>00082
+<a name="l00087"></a>00087 <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#3e41f463a87fbc8523bbd731cf36b473">getRefreshTimeInterval</a>() <span class="keyword">const</span>;
+<a name="l00088"></a>00088
+<a name="l00093"></a>00093 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#1676756c27b3578802dba1ce47b39dcd">setRefreshTimeInterval</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> interval );
+<a name="l00094"></a>00094
+<a name="l00099"></a>00099 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#cae6685097cd8e5e63cee28e17d92d41">AutoRefreshOn</a>() <span class="keyword">const</span>;
+<a name="l00100"></a>00100
+<a name="l00105"></a>00105 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#5f798d2e62d3d8d013e3b2f54d51e94e">setConfirmDeletion</a>( <span class="keywordtype">bool</span> confirm );
+<a name="l00106"></a>00106
+<a name="l00112"></a>00112 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#a466577c54fec821ff484a378ce32e98">confirmDeletion</a>();
+<a name="l00113"></a>00113
+<a name="l00119"></a>00119 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#4886c3988fef0e227cd03af094b21415">confirmClose</a>() <span class="keyword">const</span>;
+<a name="l00120"></a>00120
+<a name="l00126"></a>00126 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#6b5567437e81508f071d31acb4509994">startMinimized</a>() <span class="keyword">const</span>;
+<a name="l00127"></a>00127
+<a name="l00133"></a>00133 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#fa610dea65deb4e7e26c01926e740e84">closeToTray</a>() <span class="keyword">const</span>;
+<a name="l00134"></a>00134
+<a name="l00140"></a>00140 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#c64e08e3c1469622763dd462612a83ca">minimizesToTray</a>() <span class="keyword">const</span>;
+<a name="l00141"></a>00141
+<a name="l00147"></a>00147 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#04033fd5903daf6b1286891a2c7a228c">showConnectionErrors</a>() <span class="keyword">const</span>;
+<a name="l00148"></a>00148
+<a name="l00154"></a>00154 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#9f3341f60b7f800b58f50e67c1f872b4">setAllowHTML</a>( <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#4cd09107151c848fafe17db0c8e9a4a6">allowHTML</a> );
+<a name="l00155"></a>00155
+<a name="l00162"></a>00162 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#4cd09107151c848fafe17db0c8e9a4a6">allowHTML</a>() <span class="keyword">const</span>;
+<a name="l00163"></a>00163
+<a name="l00169"></a>00169 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#14b38a4e600859c0b6f3ef38afffc037">hasActiveAccounts</a>();
+<a name="l00170"></a>00170
+<a name="l00175"></a>00175 uint <a class="code" href="classConfigList.html#80a368db22ca3a29c668a544611d16f4">getTimeoutTime</a>() <span class="keyword">const</span>;
+<a name="l00176"></a>00176
+<a name="l00183"></a>00183 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#2470bfe4948ada050b08b93cef51b969">setTimeoutTime</a>( uint time );
+<a name="l00184"></a>00184
+<a name="l00191"></a>00191 <a class="code" href="classConfigElem.html">ConfigElem</a>* <a class="code" href="classConfigList.html#83776f91a264d92cea2b6f7ef0c02765">getSelectedAccount</a>();
+<a name="l00192"></a>00192
+<a name="l00198"></a>00198 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#ac13c19975a07aa87da0047cc66b4ce1">deleteSelectedMails</a>();
+<a name="l00199"></a>00199
+<a name="l00209"></a>00209 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">connectAccounts</a>();
+<a name="l00210"></a>00210
+<a name="l00215"></a>00215 QStringList <a class="code" href="classConfigList.html#d489b548662d865fe34686507dc801ef">getSelectedSubjects</a>() <span class="keyword">const</span>;
+<a name="l00216"></a>00216
+<a name="l00223"></a>00223 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#d80765bfadbd675b9b89ebdec0cf3566">hasSelectedMails</a>();
+<a name="l00224"></a>00224
+<a name="l00231"></a>00231 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#69be8d63f8363fe9c727ebdaeb9eb7fa">showSelectedMails</a>();
+<a name="l00232"></a>00232
+<a name="l00240"></a>00240 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#8cec55c3631317208f4800408a6e98c8">refreshMailLists</a>( <a class="code" href="classFilterLog.html">FilterLog</a>* log = NULL );
+<a name="l00241"></a>00241
+<a name="l00246"></a>00246 <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#c68944845fe63749fc073947fbdd44d6">getNumberNewMails</a>();
+<a name="l00247"></a>00247
+<a name="l00252"></a>00252 <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#493eec8637f0f34fb25e13d07b6d838a">getNumberMails</a>();
+<a name="l00253"></a>00253
+<a name="l00258"></a>00258 <span class="keywordtype">long</span> <a class="code" href="classConfigList.html#2e6d8a00456ca4b61ddba18ab419dd38">getTotalSize</a>();
+<a name="l00259"></a>00259
+<a name="l00265"></a>00265 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#1db2530c553952aef3c23483dd6b6567">fillMailListView</a>( <a class="code" href="classKshowmailView.html">KshowmailView</a>* view );
+<a name="l00266"></a>00266
+<a name="l00273"></a>00273 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#b4021a1f9087d447649a362d8779ec34">showMainWindowForNewMails</a>();
+<a name="l00274"></a>00274
+<a name="l00281"></a>00281 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#2270af8a5ce1740958f0f0b39359051f">showAlertMessageForNewMails</a>();
+<a name="l00282"></a>00282
+<a name="l00289"></a>00289 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#e24d2fa3175996ba24faa1ed1efcf35a">quitNoNewMails</a>();
+<a name="l00290"></a>00290
+<a name="l00297"></a>00297 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#94f99e48dfcc902ef18ea7310f395beb">minimizeMainWindowNoNewMails</a>();
+<a name="l00298"></a>00298
+<a name="l00303"></a>00303 <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#3b74518a8dc0aff55be667276bc4597b">getInitTime</a>();
+<a name="l00304"></a>00304
+<a name="l00309"></a>00309 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#c40250ce119d3e6f75b32b296ffaa36c">setInitTime</a>( <span class="keywordtype">int</span> time );
+<a name="l00310"></a>00310
+<a name="l00316"></a>00316 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#ed405d97a4a1d20cac93bf2a23cf40bf">hasInitTime</a>();
+<a name="l00317"></a>00317
+<a name="l00321"></a>00321 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#b3d5530c7419f6aa4b43e4247f3036a5">refreshAccountList</a>();
+<a name="l00322"></a>00322
+<a name="l00326"></a>00326 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#3c7523934753f98f3087ed4083df3ab2">killPOP3Jobs</a>();
+<a name="l00327"></a>00327
+<a name="l00331"></a>00331 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#9578f65f771482e727dfb3e1da861aa3">showSelectedHeaders</a>();
+<a name="l00332"></a>00332
+<a name="l00337"></a>00337 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#01cf49eac83ba56d1f9b3fbaa6bf4648">executeNewMailCommand</a>();
+<a name="l00338"></a>00338
+<a name="l00344"></a>00344 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#49a20af219bc1a4f20e50b59b6f2310c">keepNew</a>();
+<a name="l00345"></a>00345
+<a name="l00349"></a>00349 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#ac706ab3763709422de0ccfa91db7776">printSetup</a>();
+<a name="l00350"></a>00350
+<a name="l00356"></a>00356 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#f4faa44af3bbe318a2623b3146dc2c2d">saveOptions</a>();
+<a name="l00357"></a>00357
+<a name="l00363"></a>00363 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#18b093749b6a474b68a4c2bfe952d65c">readStoredMails</a>();
+<a name="l00364"></a>00364
+<a name="l00369"></a>00369 <a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">FilterAction_Type</a> <a class="code" href="classConfigList.html#2a997667f702e9416a9006a481c7d848">getSpamAction</a>();
+<a name="l00370"></a>00370
+<a name="l00375"></a>00375 QString <a class="code" href="classConfigList.html#18994e01d2362c49cd428e3b77c0a32a">getSpamMailbox</a>();
+<a name="l00376"></a>00376
+<a name="l00377"></a>00377
+<a name="l00378"></a>00378 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#633c6c07518ecf2405ad472ab843790f">setItem</a> (<span class="keyword">const</span> <span class="keywordtype">char</span>* item);
+<a name="l00379"></a>00379 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#e595f764ea9b38f0634137438bdd4d70">setList</a> (QListView* list);
+<a name="l00380"></a>00380 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#28739bc3cd7ce87dbd7f994081375a41">beep</a> ();
+<a name="l00381"></a>00381 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#5e7a5e2323ebbbad7d960bae9814ce5d">playSound</a> ();
+<a name="l00382"></a>00382 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#5e7a5e2323ebbbad7d960bae9814ce5d">playSound</a> (<span class="keyword">const</span> <span class="keywordtype">char</span>* file);
+<a name="l00383"></a>00383
+<a name="l00384"></a>00384
+<a name="l00385"></a>00385 <span class="keyword">private</span>:
+<a name="l00386"></a>00386
+<a name="l00390"></a><a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">00390</a> KConfig* <a class="code" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">config</a>;
+<a name="l00391"></a>00391
+<a name="l00395"></a><a class="code" href="classConfigList.html#b15e5bd9334e36428c5d44b9ee2a97d5">00395</a> <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#b15e5bd9334e36428c5d44b9ee2a97d5">m_nIntervalTimer</a>;
+<a name="l00396"></a>00396
+<a name="l00400"></a><a class="code" href="classConfigList.html#f4a428e650cf89e8ae0df0a2983f96f4">00400</a> uint <a class="code" href="classConfigList.html#f4a428e650cf89e8ae0df0a2983f96f4">m_nPop3Timer</a>;
+<a name="l00401"></a>00401
+<a name="l00413"></a><a class="code" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">00413</a> <a class="code" href="namespaceTypes.html#ca963e9ff87e4dfc99a0123af22c0346">AccountTaskMap_Type</a> <a class="code" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">AccountDeletionMap</a>;
+<a name="l00414"></a>00414
+<a name="l00426"></a><a class="code" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">00426</a> <a class="code" href="namespaceTypes.html#ca963e9ff87e4dfc99a0123af22c0346">AccountTaskMap_Type</a> <a class="code" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">AccountShowBodiesMap</a>;
+<a name="l00427"></a>00427
+<a name="l00439"></a><a class="code" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">00439</a> <a class="code" href="namespaceTypes.html#ca963e9ff87e4dfc99a0123af22c0346">AccountTaskMap_Type</a> <a class="code" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">AccountRefreshMap</a>;
+<a name="l00440"></a>00440
+<a name="l00445"></a><a class="code" href="classConfigList.html#8b8d0d0a2d78c9f3ede1db0a9e77f8be">00445</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#8b8d0d0a2d78c9f3ede1db0a9e77f8be">m_bConfirmDelete</a>;
+<a name="l00446"></a>00446
+<a name="l00453"></a><a class="code" href="classConfigList.html#017597159dc4b62d147aade09140e942">00453</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#017597159dc4b62d147aade09140e942">m_bAllowHTML</a>;
+<a name="l00454"></a>00454
+<a name="l00461"></a><a class="code" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">00461</a> <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ctrOpenMessageWindows</a>;
+<a name="l00462"></a>00462
+<a name="l00468"></a><a class="code" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">00468</a> <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">m_nInitTimer</a>;
+<a name="l00469"></a>00469
+<a name="l00473"></a><a class="code" href="classConfigList.html#35d80df8b80f34868140a2163d207490">00473</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#35d80df8b80f34868140a2163d207490">m_bShowMessage</a>;
+<a name="l00474"></a>00474
+<a name="l00478"></a><a class="code" href="classConfigList.html#b9613ab5f07edb0ef04383867674a5ce">00478</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#b9613ab5f07edb0ef04383867674a5ce">m_bShowMainWindow</a>;
+<a name="l00479"></a>00479
+<a name="l00483"></a><a class="code" href="classConfigList.html#a866f2fd4fb32d49ab99306150d79c50">00483</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#a866f2fd4fb32d49ab99306150d79c50">m_bBeep</a>;
+<a name="l00484"></a>00484
+<a name="l00488"></a><a class="code" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">00488</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">m_bSound</a>;
+<a name="l00489"></a>00489
+<a name="l00493"></a><a class="code" href="classConfigList.html#be34e6084394fa6fa99422a7cc50d8f0">00493</a> QString <a class="code" href="classConfigList.html#be34e6084394fa6fa99422a7cc50d8f0">m_strSoundFile</a>;
+<a name="l00494"></a>00494
+<a name="l00498"></a><a class="code" href="classConfigList.html#ae8d4084a4b83a09722015793afb974c">00498</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#ae8d4084a4b83a09722015793afb974c">m_bCommand</a>;
+<a name="l00499"></a>00499
+<a name="l00503"></a><a class="code" href="classConfigList.html#ea53a55a83d06cb76e3e686dd29ca034">00503</a> QString <a class="code" href="classConfigList.html#ea53a55a83d06cb76e3e686dd29ca034">m_strCommandPath</a>;
+<a name="l00504"></a>00504
+<a name="l00508"></a><a class="code" href="classConfigList.html#cdf78356d632253ac463907e526eb26a">00508</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#cdf78356d632253ac463907e526eb26a">m_bTerminate</a>;
+<a name="l00509"></a>00509
+<a name="l00513"></a><a class="code" href="classConfigList.html#f22fd0f8854795662a444bc2b4f8a9b9">00513</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#f22fd0f8854795662a444bc2b4f8a9b9">m_bMinimize</a>;
+<a name="l00514"></a>00514
+<a name="l00518"></a><a class="code" href="classConfigList.html#1bd48d8596694d5b39e0ead274689010">00518</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#1bd48d8596694d5b39e0ead274689010">m_bShowConnectionErrors</a>;
+<a name="l00519"></a>00519
+<a name="l00523"></a><a class="code" href="classConfigList.html#80b1f5a036cdaf9054ba57831a0c013e">00523</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#80b1f5a036cdaf9054ba57831a0c013e">m_bConfirmClose</a>;
+<a name="l00524"></a>00524
+<a name="l00528"></a><a class="code" href="classConfigList.html#fb4f1f200303a7e94114a8c4c85eb47e">00528</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#fb4f1f200303a7e94114a8c4c85eb47e">m_bStartMinimized</a>;
+<a name="l00529"></a>00529
+<a name="l00533"></a><a class="code" href="classConfigList.html#da6c14776958a3b28f68797c7feb6c5b">00533</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#da6c14776958a3b28f68797c7feb6c5b">m_bCloseMinimizes</a>;
+<a name="l00534"></a>00534
+<a name="l00538"></a><a class="code" href="classConfigList.html#af4cc3801f229ae974131ef1e000a8cf">00538</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#af4cc3801f229ae974131ef1e000a8cf">m_bMinimizeToTray</a>;
+<a name="l00539"></a>00539
+<a name="l00543"></a><a class="code" href="classConfigList.html#54c7671d25847b7b16cf71ec61c640d0">00543</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#54c7671d25847b7b16cf71ec61c640d0">m_bKeepNew</a>;
+<a name="l00544"></a>00544
+<a name="l00548"></a><a class="code" href="classConfigList.html#44cf59851c3af0b6f0a1cbdb15688491">00548</a> QString <a class="code" href="classConfigList.html#44cf59851c3af0b6f0a1cbdb15688491">spamMailbox</a>;
+<a name="l00549"></a>00549
+<a name="l00553"></a><a class="code" href="classConfigList.html#9b32c6d646ae58275351208894d7f545">00553</a> <a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">FilterAction_Type</a> <a class="code" href="classConfigList.html#9b32c6d646ae58275351208894d7f545">spamAction</a>;
+<a name="l00554"></a>00554
+<a name="l00555"></a>00555
+<a name="l00556"></a>00556 <span class="keyword">protected</span>:
+<a name="l00557"></a>00557
+<a name="l00565"></a>00565 <span class="keyword">virtual</span> QCollection::Item <a class="code" href="classConfigList.html#24464fe479402405ee9b849ddcc9c567">newItem</a>( QCollection::Item item );
+<a name="l00566"></a>00566
+<a name="l00575"></a>00575 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classConfigList.html#8bf1aaa71ff8971369466e5c2a36d27f">compareItems</a>( QCollection::Item item1, QCollection::Item item2 );
+<a name="l00576"></a>00576
+<a name="l00583"></a>00583 <span class="keywordtype">bool</span> <a class="code" href="classConfigList.html#47d7852e47d047dc7c00ad76715aa4df">hasAccount</a>( <span class="keyword">const</span> QString&amp; name ) <span class="keyword">const</span>;
+<a name="l00584"></a>00584
+<a name="l00590"></a>00590 <a class="code" href="classConfigElem.html">ConfigElem</a>* <a class="code" href="classConfigList.html#f5155dad83daf4956ebfb09f6ebd50c6">getAccount</a>( <span class="keyword">const</span> QString&amp; name ) <span class="keyword">const</span>;
+<a name="l00591"></a>00591
+<a name="l00592"></a>00592 <span class="keyword">protected</span> slots:
+<a name="l00593"></a>00593
+<a name="l00598"></a>00598 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#f8495aff41becdac4998b0c2881cccde">slotAccountConfigChanged</a>();
+<a name="l00599"></a>00599
+<a name="l00609"></a>00609 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#640d6202cfb38c449e95906e7581693b">slotCheckDeletionState</a>( QString account );
+<a name="l00610"></a>00610
+<a name="l00620"></a>00620 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#bdbf21b25f8e963e5c32d167aff1fe16">slotCheckShowBodiesState</a>( QString account );
+<a name="l00621"></a>00621
+<a name="l00631"></a>00631 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#1ffbc4bf4ef66872162065b80a248b7a">slotMessageWindowOpened</a>();
+<a name="l00632"></a>00632
+<a name="l00642"></a>00642 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#6a9cc47ba150c0923b558752f118ec6c">slotMessageWindowClosed</a>();
+<a name="l00643"></a>00643
+<a name="l00653"></a>00653 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#beaa15863a4aae563a8539d176067f79">slotCheckRefreshState</a>( QString account );
+<a name="l00654"></a>00654
+<a name="l00655"></a>00655 signals:
+<a name="l00656"></a>00656
+<a name="l00661"></a>00661 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#9b5c13b885ba99acefb6bcb81f54b563">sigConfigChanged</a>();
+<a name="l00662"></a>00662
+<a name="l00666"></a>00666 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#6d5f55c7447fc52efd5800daeb8302dc">sigDeleteReady</a>();
+<a name="l00667"></a>00667
+<a name="l00671"></a>00671 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#4df89bc3cd1da72c4404cbe6fe1f10d1">sigShowBodiesReady</a>();
+<a name="l00672"></a>00672
+<a name="l00678"></a>00678 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#4e33dcc16368960e9a41dca3bb878360">sigMessageWindowOpened</a>();
+<a name="l00679"></a>00679
+<a name="l00685"></a>00685 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#6cc47a8e403bad408356604c0888c292">sigAllMessageWindowsClosed</a>();
+<a name="l00686"></a>00686
+<a name="l00690"></a>00690 <span class="keywordtype">void</span> <a class="code" href="classConfigList.html#cd0d056e66a4c054306dca9936b9d5da">sigRefreshReady</a>();
+<a name="l00691"></a>00691 };
+<a name="l00692"></a>00692
+<a name="l00693"></a>00693 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/constants_8h-source.html b/doc/html/constants_8h-source.html
new file mode 100644
index 0000000..f7b174c
--- /dev/null
+++ b/doc/html/constants_8h-source.html
@@ -0,0 +1,367 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/constants.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>constants.h</h1><a href="constants_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">//</span>
+<a name="l00002"></a>00002 <span class="comment">// C++ Interface: constants</span>
+<a name="l00003"></a>00003 <span class="comment">//</span>
+<a name="l00004"></a>00004 <span class="comment">// Description:</span>
+<a name="l00005"></a>00005 <span class="comment">// Containts all constants.</span>
+<a name="l00006"></a>00006 <span class="comment">//</span>
+<a name="l00007"></a>00007 <span class="comment">//</span>
+<a name="l00008"></a>00008 <span class="comment">// Author: Ulrich Weigelt &lt;ulrich.weigelt@gmx.de&gt;, (C) 2007</span>
+<a name="l00009"></a>00009 <span class="comment">//</span>
+<a name="l00010"></a>00010 <span class="comment">// Copyright: See COPYING file that comes with this distribution</span>
+<a name="l00011"></a>00011 <span class="comment">//</span>
+<a name="l00012"></a>00012 <span class="comment">//</span>
+<a name="l00013"></a>00013
+<a name="l00014"></a>00014 <span class="preprocessor">#ifndef CONSTANTS_H</span>
+<a name="l00015"></a>00015 <span class="preprocessor"></span><span class="preprocessor">#define CONSTANTS_H</span>
+<a name="l00016"></a>00016 <span class="preprocessor"></span>
+<a name="l00020"></a><a class="code" href="namespaceConstants.html">00020</a> <span class="keyword">namespace </span>Constants
+<a name="l00021"></a>00021 {
+<a name="l00025"></a>00025 <span class="comment">//option for show config dialog at start</span>
+<a name="l00026"></a><a class="code" href="constants_8h.html#52e58a6496825d90bc3fe011511e7b9d">00026</a> <span class="preprocessor"> #define CMDLINE_CONFIG "configure"</span>
+<a name="l00027"></a><a class="code" href="constants_8h.html#622b6aad81255efafb28e52b873da1a4">00027</a> <span class="preprocessor"></span><span class="preprocessor"> #define CMDLINE_CONFIG_SHORT "c"</span>
+<a name="l00028"></a>00028 <span class="preprocessor"></span> <span class="comment">//option for looking for new mails at start</span>
+<a name="l00029"></a><a class="code" href="constants_8h.html#be5a4119f9d7714efe48d26937a86006">00029</a> <span class="preprocessor"> #define CMDLINE_REFRESH "refresh"</span>
+<a name="l00030"></a><a class="code" href="constants_8h.html#9973422b663e1f93a541d5d02c7cf87f">00030</a> <span class="preprocessor"></span><span class="preprocessor"> #define CMDLINE_REFRESH_SHORT "r"</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>
+<a name="l00035"></a>00035 <span class="comment">//general defaults</span>
+<a name="l00036"></a><a class="code" href="constants_8h.html#c584fe51baa7d23c5e64274cc6abaa8c">00036</a> <span class="preprocessor"> #define DEFAULT_CONFIRM_CLOSE false</span>
+<a name="l00037"></a><a class="code" href="constants_8h.html#6413c0af689ceac7732bf65afd9b2188">00037</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_CONFIRM_DELETE true</span>
+<a name="l00038"></a><a class="code" href="constants_8h.html#edbb26e0051412b1bf285ebbe8424509">00038</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_START_MINIMIZED false</span>
+<a name="l00039"></a><a class="code" href="constants_8h.html#8a6b96d4d900ca2ef72d5fc1eddea037">00039</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_CLOSE_TO_TRAY true</span>
+<a name="l00040"></a><a class="code" href="constants_8h.html#bc81c4be7030d571617821b63dc66748">00040</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_MINIMIZE_TO_TRAY true</span>
+<a name="l00041"></a><a class="code" href="constants_8h.html#4b45c3508a1fda257e504f42d0996fec">00041</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_SHOW_CONNECTION_ERRORS true</span>
+<a name="l00042"></a><a class="code" href="constants_8h.html#017295b4c1fc53b8d5b547ac0fbc162e">00042</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_KEEP_NEW false</span>
+<a name="l00043"></a>00043 <span class="preprocessor"></span>
+<a name="l00044"></a><a class="code" href="constants_8h.html#ddd8e94d64373c4e3cb7864035d8811d">00044</a> <span class="preprocessor"> #define DEFAULT_INITIAL_TIME 0</span>
+<a name="l00045"></a><a class="code" href="constants_8h.html#c477e1c5b6276afaa749943b5c87ced0">00045</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_INTERVAL_TIME 0</span>
+<a name="l00046"></a><a class="code" href="constants_8h.html#407639380cd8ba7fd777c118faae444c">00046</a> <span class="preprocessor"></span><span class="preprocessor"> #define MINIMUM_TIMEOUT_TIME 5</span>
+<a name="l00047"></a><a class="code" href="constants_8h.html#b2c58f6d1f1c13d95b3ce0a553a0cc76">00047</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_TIMEOUT_TIME 30</span>
+<a name="l00048"></a>00048 <span class="preprocessor"></span>
+<a name="l00049"></a>00049 <span class="comment">//default actions</span>
+<a name="l00050"></a><a class="code" href="constants_8h.html#455026e692847bb3362ec4580e5f8e97">00050</a> <span class="preprocessor"> #define DEFAULT_ACTION_NEW_MAIL_ALERTWINDOW true</span>
+<a name="l00051"></a><a class="code" href="constants_8h.html#47d90f1808022c49290484612828ffb2">00051</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACTION_NEW_MAIL_MAINWINDOW false</span>
+<a name="l00052"></a><a class="code" href="constants_8h.html#d45cb7900dd6c5b3f91fe752f3d77dff">00052</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACTION_NEW_MAIL_BEEP false</span>
+<a name="l00053"></a><a class="code" href="constants_8h.html#adaba0d0e8e2f4c0fd9baea47166893e">00053</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACTION_NEW_MAIL_SOUND false</span>
+<a name="l00054"></a><a class="code" href="constants_8h.html#3085a9d4b8c650648686a1260b865ca6">00054</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACTION_NEW_MAIL_COMMAND false</span>
+<a name="l00055"></a><a class="code" href="constants_8h.html#be1712b550ab3325f1d9921c278a60ac">00055</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACTION_NO_NEW_MAIL_MINIMIZE false</span>
+<a name="l00056"></a><a class="code" href="constants_8h.html#85048c2044f230c5fa357cf429d1207e">00056</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACTION_NO_NEW_MAIL_TERMINATE false</span>
+<a name="l00057"></a>00057 <span class="preprocessor"></span>
+<a name="l00058"></a>00058 <span class="comment">//default display options</span>
+<a name="l00059"></a><a class="code" href="constants_8h.html#cbc26a52550c2e25c3ebeeabf4fb67c4">00059</a> <span class="preprocessor"> #define DEFAULT_DISPLAY_ACCOUNT_ACTIVE true</span>
+<a name="l00060"></a><a class="code" href="constants_8h.html#2df76108c1c842ec4e5d0011805e3d8c">00060</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_ACCOUNT_ACCOUNT true</span>
+<a name="l00061"></a><a class="code" href="constants_8h.html#09081861a3c47a0352fbdf18348de491">00061</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_ACCOUNT_SERVER true</span>
+<a name="l00062"></a><a class="code" href="constants_8h.html#97daf3b90814aa949679fe9a6d69fd75">00062</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_ACCOUNT_USER true</span>
+<a name="l00063"></a><a class="code" href="constants_8h.html#3c7509a7819bd9dfdc7530f4f003c9ca">00063</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_ACCOUNT_MESSAGES true</span>
+<a name="l00064"></a><a class="code" href="constants_8h.html#3593442b42a27f02c01149283abbaa1d">00064</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_ACCOUNT_SIZE true</span>
+<a name="l00065"></a><a class="code" href="constants_8h.html#5d543885f0ec6ac6c22b1969b72ae036">00065</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_MESSAGE_NUMBER true</span>
+<a name="l00066"></a><a class="code" href="constants_8h.html#3276aba1e613cd57b58a23b3c88f7e55">00066</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_MESSAGE_ACCOUNT true</span>
+<a name="l00067"></a><a class="code" href="constants_8h.html#6d7ef7915439de209dfbb151f6e19386">00067</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_MESSAGE_FROM true</span>
+<a name="l00068"></a><a class="code" href="constants_8h.html#45294df3b1d5449f8c9d59d1808edd03">00068</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_MESSAGE_TO true</span>
+<a name="l00069"></a><a class="code" href="constants_8h.html#a3e9a563492c4e25aebb67db030eb485">00069</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_MESSAGE_SUBJECT true</span>
+<a name="l00070"></a><a class="code" href="constants_8h.html#b8f07165e83dbd8577ac7d9b5c4676da">00070</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_MESSAGE_DATE true</span>
+<a name="l00071"></a><a class="code" href="constants_8h.html#64c7fc157d735ee788fbac67afd41dff">00071</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_MESSAGE_SIZE true</span>
+<a name="l00072"></a><a class="code" href="constants_8h.html#28119a300d6fb8c2e6df968d4ab68fac">00072</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_MESSAGE_CONTENT true</span>
+<a name="l00073"></a><a class="code" href="constants_8h.html#7468fd283482cc953f0d59bbc635fcab">00073</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_DISPLAY_MESSAGE_STATE true</span>
+<a name="l00074"></a>00074 <span class="preprocessor"></span>
+<a name="l00075"></a>00075 <span class="comment">//default view options</span>
+<a name="l00076"></a><a class="code" href="constants_8h.html#115b5af2f36431448ef421d4cb0281b0">00076</a> <span class="preprocessor"> #define DEFAULT_VIEW_USE_HTML false</span>
+<a name="l00077"></a>00077 <span class="preprocessor"></span>
+<a name="l00078"></a>00078 <span class="comment">//default column widthes</span>
+<a name="l00079"></a><a class="code" href="constants_8h.html#4c6076ead8d5cbd0434ba28bc01bb7aa">00079</a> <span class="preprocessor"> #define DEFAULT_WIDTH_ACCOUNT_ACTIVE 50</span>
+<a name="l00080"></a><a class="code" href="constants_8h.html#c0cb0c7e6475d1972f70aa1f7132aee8">00080</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_ACCOUNT_ACCOUNT 100</span>
+<a name="l00081"></a><a class="code" href="constants_8h.html#9881dd465531664f38b6e16d266d4b7b">00081</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_ACCOUNT_SERVER 100</span>
+<a name="l00082"></a><a class="code" href="constants_8h.html#e404ea17c371d01097301687c0b9dd3c">00082</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_ACCOUNT_USER 100</span>
+<a name="l00083"></a><a class="code" href="constants_8h.html#ce964b357175b7739c49870c0a8fa02e">00083</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_ACCOUNT_MESSAGES 80</span>
+<a name="l00084"></a><a class="code" href="constants_8h.html#7ecdc77dcf771ac7d07180eccb1ecf7d">00084</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_ACCOUNT_SIZE 80</span>
+<a name="l00085"></a><a class="code" href="constants_8h.html#968a9439270f189746baeaa21d831a63">00085</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_MESSAGE_NUMBER 50</span>
+<a name="l00086"></a><a class="code" href="constants_8h.html#13307382d3f89a42d15ec5b949d378de">00086</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_MESSAGE_ACCOUNT 100</span>
+<a name="l00087"></a><a class="code" href="constants_8h.html#411a1b03f26567e716f0b66322b6fd98">00087</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_MESSAGE_FROM 200</span>
+<a name="l00088"></a><a class="code" href="constants_8h.html#f81203a95ae0a075263de17504b0051a">00088</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_MESSAGE_TO 200</span>
+<a name="l00089"></a><a class="code" href="constants_8h.html#395a6007d7e79a2f6f87f4259706b781">00089</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_MESSAGE_SUBJECT 350</span>
+<a name="l00090"></a><a class="code" href="constants_8h.html#6e9b93fd7475c2700d2ec8dae2e351ce">00090</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_MESSAGE_DATE 100</span>
+<a name="l00091"></a><a class="code" href="constants_8h.html#b0c5499fa9dd2c66c06dbe28e9644068">00091</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_MESSAGE_SIZE 80</span>
+<a name="l00092"></a><a class="code" href="constants_8h.html#f3e2ff2ba04bd2b603f82354a37a9181">00092</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_MESSAGE_CONTENT 80</span>
+<a name="l00093"></a><a class="code" href="constants_8h.html#d52e233ba0faec10d97ee82b8d7c95b8">00093</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_WIDTH_MESSAGE_STATE 50</span>
+<a name="l00094"></a>00094 <span class="preprocessor"></span>
+<a name="l00095"></a>00095 <span class="comment">//account defaults</span>
+<a name="l00096"></a><a class="code" href="constants_8h.html#d8be896b248c84caac88c8c8c840d231">00096</a> <span class="preprocessor"> #define DEFAULT_ACCOUNT_NAME ""</span>
+<a name="l00097"></a><a class="code" href="constants_8h.html#8ade36df2fa6962e1e5e99d43ab79e16">00097</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACCOUNT_SERVER ""</span>
+<a name="l00098"></a><a class="code" href="constants_8h.html#c9f90addb8f696b290c30e4aa0e6bb5a">00098</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACCOUNT_PROTOCOL "POP3"</span>
+<a name="l00099"></a><a class="code" href="constants_8h.html#1dae846c57004e42b0f587a982fa0055">00099</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACCOUNT_PORT_POP3 110</span>
+<a name="l00100"></a><a class="code" href="constants_8h.html#fd8836c87a1a33812d5d11c2cbecc7bf">00100</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACCOUNT_PORT_POP3SSL 995</span>
+<a name="l00101"></a><a class="code" href="constants_8h.html#5e21dd68f2473ee5d2e91f97bdce2590">00101</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACCOUNT_USER ""</span>
+<a name="l00102"></a><a class="code" href="constants_8h.html#83a0d3aedc09d50d5bbbbd3195e1e62d">00102</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACCOUNT_PASSWORD ""</span>
+<a name="l00103"></a><a class="code" href="constants_8h.html#b05e161c82454b9e74eef575dded73a2">00103</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACCOUNT_PASSWORD_STORAGE 1</span>
+<a name="l00104"></a>00104 <span class="preprocessor"></span> <span class="comment">//1: don't save, 2: save in file, 3: use KWallet</span>
+<a name="l00105"></a><a class="code" href="constants_8h.html#482e80ded9e21ffa630fbd20e1077652">00105</a> <span class="preprocessor"> #define DEFAULT_ACCOUNT_ACTIVE true</span>
+<a name="l00106"></a><a class="code" href="constants_8h.html#7abe72ff514c57f9b2c9ba008ff14578">00106</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_ACCOUNT_SECTRANSFER 1</span>
+<a name="l00107"></a>00107 <span class="preprocessor"></span> <span class="comment">//1: no secure transfer, 2: SSL, 3: TLS</span>
+<a name="l00108"></a>00108
+<a name="l00109"></a>00109 <span class="comment">//filter defaults</span>
+<a name="l00110"></a><a class="code" href="constants_8h.html#df445d98bce82da79d20c8af5ab96c6e">00110</a> <span class="preprocessor"> #define DEFAULT_FILTER_ACTIVE false</span>
+<a name="l00111"></a><a class="code" href="constants_8h.html#a84e950af6ff2928edc68c97e663151e">00111</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_FILTER_OTHERS_ACTION 1</span>
+<a name="l00112"></a>00112 <span class="preprocessor"></span> <span class="comment">//1: Pass, 2: Delete, 3: Mark, 4: Move to Mailbox, 5: Spamcheck, 6: Ignore</span>
+<a name="l00113"></a><a class="code" href="constants_8h.html#5f3887befa8332d70e0a88a075cbdaa0">00113</a> <span class="preprocessor"> #define DEFAULT_FILTER_BLACKLIST_ACTION 1</span>
+<a name="l00114"></a>00114 <span class="preprocessor"></span> <span class="comment">//1: Delete, 2: Mark</span>
+<a name="l00115"></a><a class="code" href="constants_8h.html#ea00f66b6666d05f90ed460d2575461f">00115</a> <span class="preprocessor"> #define DEFAULT_FILTER_NAME "New Filter"</span>
+<a name="l00116"></a><a class="code" href="constants_8h.html#840873a63beffb33754e92905a11b7f6">00116</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_FILTER_CRITERIA_LINKAGE 1</span>
+<a name="l00117"></a>00117 <span class="preprocessor"></span> <span class="comment">//1: Match all (AND); 2: Match any (OR)</span>
+<a name="l00118"></a><a class="code" href="constants_8h.html#49432e7ac56ae1686c7e61e1977d069c">00118</a> <span class="preprocessor"> #define DEFAULT_FILTER_CRITERIA_SOURCE 1</span>
+<a name="l00119"></a>00119 <span class="preprocessor"></span> <span class="comment">//1: From, 2: To, 3: Size (Bytes), 4: Subject, 5: Header, 6: Account</span>
+<a name="l00120"></a><a class="code" href="constants_8h.html#656445c84109ef8b367bd4928b410fa9">00120</a> <span class="preprocessor"> #define DEFAULT_FILTER_CRITERIA_COND_TEXT 1</span>
+<a name="l00121"></a>00121 <span class="preprocessor"></span> <span class="comment">//1: contains, 2: doesn't contains, 3: equals, 4: doesn't equal, 5: matches regular expression, 6: doesn't match regular expression</span>
+<a name="l00122"></a><a class="code" href="constants_8h.html#cb20386e8c04963ef7ca0435fedf807f">00122</a> <span class="preprocessor"> #define DEFAULT_FILTER_CRITERIA_COND_NUM 3</span>
+<a name="l00123"></a>00123 <span class="preprocessor"></span> <span class="comment">//1: is equal to, 2: is not equal to, 3: is greater than, 4: is greater than or equal to, 5: is less than, 6: is less than or equal to</span>
+<a name="l00124"></a><a class="code" href="constants_8h.html#d8231c441b3c19e166745a6b6e5b7382">00124</a> <span class="preprocessor"> #define DEFAULT_FILTER_CRITERIA_SIZE 20000</span>
+<a name="l00125"></a><a class="code" href="constants_8h.html#828e9df6c43e0fae404b24b3f5642cd3">00125</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_FILTER_CRITERIA_CASE_SENSITIVE false</span>
+<a name="l00126"></a><a class="code" href="constants_8h.html#8f34fdcd8c1d7f0f99b8898d62505c97">00126</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_FILTER_ACTION 1</span>
+<a name="l00127"></a>00127 <span class="preprocessor"></span> <span class="comment">//1: Pass, 2: Delete, 3: Mark, 4: Move to Mailbox, 5: Spamcheck, 6: Ignore</span>
+<a name="l00128"></a><a class="code" href="constants_8h.html#4465d4f6dbc0bb78965a2bcc7c37391f">00128</a> <span class="preprocessor"> #define DEFAULT_FILTER_ACTION_MOVE_MAILBOX ""</span>
+<a name="l00129"></a>00129 <span class="preprocessor"></span>
+<a name="l00130"></a>00130 <span class="comment">//Spam check defaults</span>
+<a name="l00131"></a><a class="code" href="constants_8h.html#2fce5c411437b21fbea7f0d6342f15c2">00131</a> <span class="preprocessor"> #define DEFAULT_SPAMCHECK_ACTION 3</span>
+<a name="l00132"></a>00132 <span class="preprocessor"></span> <span class="comment">//2: Delete, 3: Mark, 4: Move to Mailbox</span>
+<a name="l00133"></a><a class="code" href="constants_8h.html#8e0efe14dbbfbb09715ba4f211231954">00133</a> <span class="preprocessor"> #define DEFAULT_SPAMCHECK_ACTION_MOVE_MAILBOX ""</span>
+<a name="l00134"></a>00134 <span class="preprocessor"></span>
+<a name="l00135"></a>00135
+<a name="l00136"></a>00136 <span class="comment">//Log Defaults</span>
+<a name="l00137"></a><a class="code" href="constants_8h.html#89379ad116daac5d9a375710ff0badd3">00137</a> <span class="preprocessor"> #define DEFAULT_LOG_LOG_DELETED_MAILS true</span>
+<a name="l00138"></a><a class="code" href="constants_8h.html#dea67e47c7843c6b507ae36cb6040048">00138</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_LOG_LOG_MOVED_MAILS true</span>
+<a name="l00139"></a>00139 <span class="preprocessor"></span> <span class="comment">//the log entires will be deleted after some days (constant value is "days") or at app exit (value is "exit")</span>
+<a name="l00140"></a><a class="code" href="constants_8h.html#3d6296483e9018026911b8eccfca7719">00140</a> <span class="preprocessor"> #define DEFAULT_LOG_REMOVE_DELETED_MAILS "days"</span>
+<a name="l00141"></a><a class="code" href="constants_8h.html#3d7b2da421f7ad4b567e6856fbb06443">00141</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_LOG_REMOVE_MOVED_MAILS "exit"</span>
+<a name="l00142"></a>00142 <span class="preprocessor"></span> <span class="comment">//number of days the entries will be stored</span>
+<a name="l00143"></a><a class="code" href="constants_8h.html#0315d984bc8ea170e1458e07569c0ca1">00143</a> <span class="preprocessor"> #define DEFAULT_LOG_HOLDDAYS_DELETED_MAILS 7</span>
+<a name="l00144"></a><a class="code" href="constants_8h.html#9fd167cbbd1ba30b657a439e4ec7a815">00144</a> <span class="preprocessor"></span><span class="preprocessor"> #define DEFAULT_LOG_HOLDDAYS_MOVED_MAILS 7</span>
+<a name="l00145"></a>00145 <span class="preprocessor"></span>
+<a name="l00149"></a><a class="code" href="constants_8h.html#48353aafe648f063a6c4bbc4a1a09640">00149</a> <span class="preprocessor"> #define MAIL_FILE "kshowmail.xml"</span>
+<a name="l00150"></a><a class="code" href="constants_8h.html#a9b129bde3a7135323ca3e953526d380">00150</a> <span class="preprocessor"></span><span class="preprocessor"> #define MAIL_FILE_DOCTYPE "KShowmail"</span>
+<a name="l00151"></a><a class="code" href="constants_8h.html#3ff527918fa042a542b995eabcf61f04">00151</a> <span class="preprocessor"></span><span class="preprocessor"> #define ROOT_ELEMENT "accounts"</span>
+<a name="l00152"></a><a class="code" href="constants_8h.html#e36f83e3d61f280774ecd600b0c36e86">00152</a> <span class="preprocessor"></span><span class="preprocessor"> #define ACCOUNT_ELEMENT "account"</span>
+<a name="l00153"></a><a class="code" href="constants_8h.html#daf886f0193f7f0b565a11dd81e34674">00153</a> <span class="preprocessor"></span><span class="preprocessor"> #define ATTRIBUTE_ACCOUNT_NAME "account"</span>
+<a name="l00154"></a><a class="code" href="constants_8h.html#a0aecbc873ab458d15d7fdd9f56294ec">00154</a> <span class="preprocessor"></span><span class="preprocessor"> #define ATTRIBUTE_MAIL_UID "uidl"</span>
+<a name="l00155"></a><a class="code" href="constants_8h.html#d3c4de39258b1cfaff71fc1e1d555e55">00155</a> <span class="preprocessor"></span><span class="preprocessor"> #define ATTRIBUTE_MAIL_SIZE "size"</span>
+<a name="l00156"></a><a class="code" href="constants_8h.html#e457e94a0110e8af42ff430e9c61948f">00156</a> <span class="preprocessor"></span><span class="preprocessor"> #define ATTRIBUTE_MAIL_NUMBER "number"</span>
+<a name="l00157"></a><a class="code" href="constants_8h.html#7bdfb982854036efe20eecfc81b9e05a">00157</a> <span class="preprocessor"></span><span class="preprocessor"> #define ITEM_MAIL_HEADER "header"</span>
+<a name="l00158"></a><a class="code" href="constants_8h.html#d944b825b937778eed4cb48de8a584ba">00158</a> <span class="preprocessor"></span><span class="preprocessor"> #define ITEM_MESSAGE "message"</span>
+<a name="l00159"></a>00159 <span class="preprocessor"></span>
+<a name="l00163"></a><a class="code" href="constants_8h.html#69d4676733f5e850f451942b6d901382">00163</a> <span class="preprocessor"> #define LOG_FILE "kshowmaillog.xml"</span>
+<a name="l00164"></a><a class="code" href="constants_8h.html#486b10942324e9f524e148bfa23c479f">00164</a> <span class="preprocessor"></span><span class="preprocessor"> #define LOG_DOCTYPE "KShowmailLog"</span>
+<a name="l00165"></a><a class="code" href="constants_8h.html#243b0db463fd72ff3757b41b53d1fd67">00165</a> <span class="preprocessor"></span><span class="preprocessor"> #define LOG_ROOT_ELEMENT "DeletedMails"</span>
+<a name="l00166"></a><a class="code" href="constants_8h.html#4955c8cdb4a416c05efa7010f8fbd639">00166</a> <span class="preprocessor"></span><span class="preprocessor"> #define LOG_ENTRY_ELEMENT "LogEntry"</span>
+<a name="l00167"></a><a class="code" href="constants_8h.html#ed683c4499387cd88bde1278d29812aa">00167</a> <span class="preprocessor"></span><span class="preprocessor"> #define LOG_ENTRY_ATTRIBUTE_DATETIME "DateTime"</span>
+<a name="l00168"></a><a class="code" href="constants_8h.html#f1f39e584e3272b572415772578e08a5">00168</a> <span class="preprocessor"></span><span class="preprocessor"> #define LOG_ENTRY_ATTRIBUTE_SENDER "Sender"</span>
+<a name="l00169"></a><a class="code" href="constants_8h.html#04e0ba9fc8cfe3f29e48e8a322eccc82">00169</a> <span class="preprocessor"></span><span class="preprocessor"> #define LOG_ENTRY_ATTRIBUTE_ACCOUNT "Account"</span>
+<a name="l00170"></a><a class="code" href="constants_8h.html#9758c9d4ebd9175e9aeb5c02c11dbe30">00170</a> <span class="preprocessor"></span><span class="preprocessor"> #define LOG_ENTRY_ATTRIBUTE_SUBJECT "Subject"</span>
+<a name="l00171"></a>00171 <span class="preprocessor"></span>
+<a name="l00175"></a>00175 <span class="comment">//Size of the view, which shows the mail text</span>
+<a name="l00176"></a><a class="code" href="constants_8h.html#807ad8f984f27d098fb519e4c72182d4">00176</a> <span class="preprocessor"> #define WIDTH_VIEW_MAILBODY 500</span>
+<a name="l00177"></a><a class="code" href="constants_8h.html#cdc520d1a4f429f2cfb8abd3062348f0">00177</a> <span class="preprocessor"></span><span class="preprocessor"> #define HEIGHT_VIEW_MAILBODY 400</span>
+<a name="l00178"></a>00178 <span class="preprocessor"></span>
+<a name="l00179"></a>00179 <span class="comment">//Size of the view, which shows the mail header</span>
+<a name="l00180"></a><a class="code" href="constants_8h.html#cd277c2438d1ccd370f0fc89e7a55e18">00180</a> <span class="preprocessor"> #define WIDTH_VIEW_MAILHEADER 500</span>
+<a name="l00181"></a><a class="code" href="constants_8h.html#a88303a5fe6da83457314cfa0f927184">00181</a> <span class="preprocessor"></span><span class="preprocessor"> #define HEIGHT_VIEW_MAILHEADER 400</span>
+<a name="l00182"></a>00182 <span class="preprocessor"></span>
+<a name="l00183"></a>00183 <span class="comment">//Size of the text comparative value line of the filter criteria widget</span>
+<a name="l00184"></a><a class="code" href="constants_8h.html#e86a730e52630335c1f0ff44af7dc410">00184</a> <span class="preprocessor"> #define WIDTH_FILTER_TEXT_VALUE_LINE 300</span>
+<a name="l00185"></a>00185 <span class="preprocessor"></span>
+<a name="l00189"></a><a class="code" href="constants_8h.html#481d6f27dee3eeb634a1c3cef466ebb3">00189</a> <span class="preprocessor"> #define CONFIG_GROUP_GENERAL "General"</span>
+<a name="l00190"></a><a class="code" href="constants_8h.html#72d7fea8af809f80ee5a169819f2c74d">00190</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_CONFIRM_CLOSE "confirmClose"</span>
+<a name="l00191"></a><a class="code" href="constants_8h.html#22b4f06a5f1ffc05f24787b057c205c4">00191</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_CONFIRM_DELETE "confirmDelete"</span>
+<a name="l00192"></a><a class="code" href="constants_8h.html#73b1285484a09d7278fd1fb8fcd59ace">00192</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_START_MINIMIZED "startMinimized"</span>
+<a name="l00193"></a><a class="code" href="constants_8h.html#ec7142cf95fe25b1b32d3eea48075970">00193</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_CLOSE_TO_TRAY "closeToTray"</span>
+<a name="l00194"></a><a class="code" href="constants_8h.html#5f77c2f7d049ede288a9c613ff6c3457">00194</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_MINIMIZE_TO_TRAY "minimizeToTray"</span>
+<a name="l00195"></a><a class="code" href="constants_8h.html#e14eae7883fd46432a46a8087f15223c">00195</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_SHOW_CONNECTION_ERRORS "showConnectionErrors"</span>
+<a name="l00196"></a><a class="code" href="constants_8h.html#9383dd5ad4f375a3fdb11a6dfeb98fe3">00196</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_KEEP_NEW "keepMailsNew"</span>
+<a name="l00197"></a><a class="code" href="constants_8h.html#cdb7c4f8fc7eb181c5c47f5b53cd44c3">00197</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_INITIAL_TIME "InitialTime"</span>
+<a name="l00198"></a><a class="code" href="constants_8h.html#1fa4300c34931cf8415380693a67dc35">00198</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_INTERVAL_TIME "IntervalTime"</span>
+<a name="l00199"></a><a class="code" href="constants_8h.html#9fd2e9b4a22275ab810b48689b0853ce">00199</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_TIMEOUT_TIME "TimeoutTime"</span>
+<a name="l00200"></a>00200 <span class="preprocessor"></span>
+<a name="l00201"></a><a class="code" href="constants_8h.html#84c59f1c2ddf13b1de6f811357513337">00201</a> <span class="preprocessor"> #define CONFIG_GROUP_ACTIONS "Actions"</span>
+<a name="l00202"></a><a class="code" href="constants_8h.html#123058d1476928cd31608ad61bd7c4a3">00202</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_NEW_MAIL_ALERTWINDOW "showAlertMessageIfNewMail"</span>
+<a name="l00203"></a><a class="code" href="constants_8h.html#b0dc33abdd1500f438e857b8968d2b97">00203</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_NEW_MAIL_MAINWINDOW "showMainWindowIfNewMail"</span>
+<a name="l00204"></a><a class="code" href="constants_8h.html#8499b9d10814c987d72c72d09e69aa32">00204</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_NEW_MAIL_BEEP "beepIfNewMail"</span>
+<a name="l00205"></a><a class="code" href="constants_8h.html#dcadc7c4963a1b488f63488eead7b25b">00205</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_NEW_MAIL_SOUND "playSoundIfNewMail"</span>
+<a name="l00206"></a><a class="code" href="constants_8h.html#8c9d8d9e263df43320cf5a6df40051aa">00206</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_NEW_MAIL_SOUNDPATH "PathToSoundFile"</span>
+<a name="l00207"></a><a class="code" href="constants_8h.html#254456b6f83bf7dd1dbd5cf40489d8d9">00207</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_NEW_MAIL_COMMAND "executeCommandIfNewMail"</span>
+<a name="l00208"></a><a class="code" href="constants_8h.html#50555fea6005f8a80ec4b79a2f05ff26">00208</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_NEW_MAIL_COMMANDPATH "Command"</span>
+<a name="l00209"></a><a class="code" href="constants_8h.html#b1ccd6adc625225e0c0c47c561797f59">00209</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_NO_NEW_MAIL_TERMINATE "exitIfNoNewMails"</span>
+<a name="l00210"></a><a class="code" href="constants_8h.html#0e24f3790ae250abf6005e06db4f6199">00210</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_NO_NEW_MAIL_MINIMIZE "minimizeMainWindowIfNoNewMails"</span>
+<a name="l00211"></a>00211 <span class="preprocessor"></span>
+<a name="l00212"></a><a class="code" href="constants_8h.html#e9b75aa801aff3243abca49d17b50323">00212</a> <span class="preprocessor"> #define CONFIG_GROUP_VIEW "View"</span>
+<a name="l00213"></a><a class="code" href="constants_8h.html#fe59da7d7b7372aef293ff4fad55dca5">00213</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_VIEW_USE_HTML "useHTML"</span>
+<a name="l00214"></a>00214 <span class="preprocessor"></span>
+<a name="l00215"></a><a class="code" href="constants_8h.html#f11dfdf0f9afb67d5b0b5f57b43ad82f">00215</a> <span class="preprocessor"> #define CONFIG_GROUP_ACCOUNT_LIST "LayoutAccountList"</span>
+<a name="l00216"></a><a class="code" href="constants_8h.html#53e47d2c0a71e0ad2114cf4806901b2a">00216</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_ACCOUNT_ACTIVE "showAccountListActiveColumn"</span>
+<a name="l00217"></a><a class="code" href="constants_8h.html#2ad7cf525896cebf1e43fc4c8a9ec11e">00217</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_ACCOUNT_ACCOUNT "showAccountListAccountColumn"</span>
+<a name="l00218"></a><a class="code" href="constants_8h.html#4df03222e853d2a167297ff5485c07cc">00218</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_ACCOUNT_SERVER "showAccountListServerColumn"</span>
+<a name="l00219"></a><a class="code" href="constants_8h.html#7dd4d800dd309b00dc486b4ee7f3c1c4">00219</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_ACCOUNT_USER "showAccountListUserColumn"</span>
+<a name="l00220"></a><a class="code" href="constants_8h.html#01c3d002694f54bf2e688d2a090389df">00220</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_ACCOUNT_MESSAGES "showAccountListMessagesColumn"</span>
+<a name="l00221"></a><a class="code" href="constants_8h.html#867b45e7f697da6b87ab0a4b365bb628">00221</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_ACCOUNT_SIZE "showAccountListSizeColumn"</span>
+<a name="l00222"></a><a class="code" href="constants_8h.html#0a9aa851f826ecf66ceaa97f5ac1687a">00222</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_ACTIVE "oldWidthAccountListActiveColumn"</span>
+<a name="l00223"></a><a class="code" href="constants_8h.html#adbf406142c09ba2abd28c8a3383c2d1">00223</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_ACCOUNT "oldWidthAccountListAccountColumn"</span>
+<a name="l00224"></a><a class="code" href="constants_8h.html#7fcc16f803a088795a12d09430284e17">00224</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_SERVER "oldWidthAccountListServerColumn"</span>
+<a name="l00225"></a><a class="code" href="constants_8h.html#f002c3f8db9446a4be35d8e819a50da9">00225</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_USER "oldWidthAccountListUserColumn"</span>
+<a name="l00226"></a><a class="code" href="constants_8h.html#c5a9b5bcfdfda6b5db8cd878f936802b">00226</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_MESSAGES "oldWidthAccountListMessagesColumn"</span>
+<a name="l00227"></a><a class="code" href="constants_8h.html#d0d16515dc61ecce30ea41b3913cc1cb">00227</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_SIZE "oldWidthAccountListSizeColumn"</span>
+<a name="l00228"></a>00228 <span class="preprocessor"></span>
+<a name="l00229"></a>00229
+<a name="l00230"></a><a class="code" href="constants_8h.html#b15cd96251c281b1809fe0661a82bb99">00230</a> <span class="preprocessor"> #define CONFIG_GROUP_MESSAGE_LIST "LayoutMessageList"</span>
+<a name="l00231"></a><a class="code" href="constants_8h.html#01935cffc4270b9f1cc2809a8e0895a0">00231</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_MESSAGE_NUMBER "showMessageListNumberColumn"</span>
+<a name="l00232"></a><a class="code" href="constants_8h.html#c40e26ec67d7c5cd306942b9ab96e119">00232</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_MESSAGE_ACCOUNT "showMessageListAccountColumn"</span>
+<a name="l00233"></a><a class="code" href="constants_8h.html#32962b5a07e10f2d5b5417bebe5399fd">00233</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_MESSAGE_FROM "showMessageListFromColumn"</span>
+<a name="l00234"></a><a class="code" href="constants_8h.html#d01cb862c1e945613ebaa7eaaa1c85f2">00234</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_MESSAGE_TO "showMessageListToColumn"</span>
+<a name="l00235"></a><a class="code" href="constants_8h.html#9ede2134827042ed1bca9c34b9062551">00235</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_MESSAGE_SUBJECT "showMessageListSubjectColumn"</span>
+<a name="l00236"></a><a class="code" href="constants_8h.html#6670dc78f009e7bfaaae681a5ca19e1a">00236</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_MESSAGE_DATE "showMessageListDateColumn"</span>
+<a name="l00237"></a><a class="code" href="constants_8h.html#6e9df5dbd955b9ade3b281aa91e73b2b">00237</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_MESSAGE_SIZE "showMessageListSizeColumn"</span>
+<a name="l00238"></a><a class="code" href="constants_8h.html#f4eac6adbf736213920a0e81704c5760">00238</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_MESSAGE_CONTENT "showMessageListContentColumn"</span>
+<a name="l00239"></a><a class="code" href="constants_8h.html#aad31d0274e5edfce1592557faed2f10">00239</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_DISPLAY_MESSAGE_STATE "showMessageListStateColumn"</span>
+<a name="l00240"></a><a class="code" href="constants_8h.html#40a893dd50f530f30d3625a08a6b8855">00240</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_NUMBER "oldWidthMessageListNumberColumn"</span>
+<a name="l00241"></a><a class="code" href="constants_8h.html#bc1b1093b4c8449bb7202d693613f83b">00241</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_ACCOUNT "oldWidthMessageListAccountColumn"</span>
+<a name="l00242"></a><a class="code" href="constants_8h.html#48c81c90d7f4e5fb828f36030b3127ea">00242</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_FROM "oldWidthMessageListFromColumn"</span>
+<a name="l00243"></a><a class="code" href="constants_8h.html#f23572b3c2e839d051d58757bca026ba">00243</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_TO "oldWidthMessageListToColumn"</span>
+<a name="l00244"></a><a class="code" href="constants_8h.html#fb5644c8b837b57fa1324564ddbb9342">00244</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_SUBJECT "oldWidthMessageListSubjectColumn"</span>
+<a name="l00245"></a><a class="code" href="constants_8h.html#b928d1af2c6b49dc7ac16c1a11c2c020">00245</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_DATE "oldWidthMessageListDateColumn"</span>
+<a name="l00246"></a><a class="code" href="constants_8h.html#f1e38b6a4103c6fec713f35563b887b7">00246</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_SIZE "oldWidthMessageListSizeColumn"</span>
+<a name="l00247"></a><a class="code" href="constants_8h.html#cbac7246c36f0d3cb6a6a16c187ed260">00247</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_CONTENT "oldWidthMessageListContentColumn"</span>
+<a name="l00248"></a><a class="code" href="constants_8h.html#409bd035ea411026258ea02d6218979b">00248</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_STATE "oldWidthMessageListStateColumn"</span>
+<a name="l00249"></a>00249 <span class="preprocessor"></span>
+<a name="l00250"></a><a class="code" href="constants_8h.html#f16ef9af8fec6d5ed486b17820d6b9af">00250</a> <span class="preprocessor"> #define CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE 1</span>
+<a name="l00251"></a><a class="code" href="constants_8h.html#ee48acb672fa99a5522570686e40ef4c">00251</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE 2</span>
+<a name="l00252"></a><a class="code" href="constants_8h.html#157cbe3a986bfe2f41c6e3b536cfe69e">00252</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET 3</span>
+<a name="l00253"></a><a class="code" href="constants_8h.html#acbef0d7ea1ec00dbd8fd0a9eed544f7">00253</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_ACCOUNT_SECTRANSFER_NONE 1</span>
+<a name="l00254"></a><a class="code" href="constants_8h.html#772b70735fcf84d1dd22266ddd5c53c9">00254</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_ACCOUNT_SECTRANSFER_SSL 2</span>
+<a name="l00255"></a><a class="code" href="constants_8h.html#052422c4bf668ca3c9adb5beb7f76f95">00255</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_ACCOUNT_SECTRANSFER_TLS 3</span>
+<a name="l00256"></a>00256 <span class="preprocessor"></span>
+<a name="l00257"></a><a class="code" href="constants_8h.html#1257f059843df69036e2dc9d37f3afa8">00257</a> <span class="preprocessor"> #define CONFIG_GROUP_ACCOUNTS "Accounts"</span>
+<a name="l00258"></a><a class="code" href="constants_8h.html#00a3da2f418cdaf3f82529195a7523c0">00258</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_ACCOUNTS_LIST "NamesList"</span>
+<a name="l00259"></a>00259 <span class="preprocessor"></span>
+<a name="l00260"></a><a class="code" href="constants_8h.html#9e02cc7c68fbb562cf303fbe7aa56539">00260</a> <span class="preprocessor"> #define CONFIG_ENTRY_ACCOUNT_NAME "Name"</span>
+<a name="l00261"></a><a class="code" href="constants_8h.html#9690d5808aad4ae40e6eb05123441ed0">00261</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_ACCOUNT_SERVER "Server"</span>
+<a name="l00262"></a><a class="code" href="constants_8h.html#f7efdd07812c362c9f8a859f267e4708">00262</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_ACCOUNT_PROTOCOL "Protocol"</span>
+<a name="l00263"></a><a class="code" href="constants_8h.html#ed07b7fcf89e8429ad97c9ba8299989e">00263</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_ACCOUNT_PORT "Port"</span>
+<a name="l00264"></a><a class="code" href="constants_8h.html#c3efa24c91fc09a001733fb7d1acf89b">00264</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_ACCOUNT_USER "User"</span>
+<a name="l00265"></a><a class="code" href="constants_8h.html#10ffd51e071c8ce834a8eaee2f2c5199">00265</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_ACCOUNT_PASSWORD "Password"</span>
+<a name="l00266"></a><a class="code" href="constants_8h.html#02b0112c7c064c5d22d5866d61f104cf">00266</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE "PasswordStorage"</span>
+<a name="l00267"></a><a class="code" href="constants_8h.html#c930bbf0f5c5dc76bafac5cd0ff17820">00267</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_ACCOUNT_ACTIVE "Active"</span>
+<a name="l00268"></a><a class="code" href="constants_8h.html#2094294727be62aa4e580e3525d168d6">00268</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_ACCOUNT_SECTRANSFER "SecureTransfer"</span>
+<a name="l00269"></a>00269 <span class="preprocessor"></span>
+<a name="l00270"></a>00270
+<a name="l00271"></a>00271 <span class="comment">//general filter</span>
+<a name="l00272"></a><a class="code" href="constants_8h.html#3980b28063773c4ff90dfc5290c40ace">00272</a> <span class="preprocessor"> #define CONFIG_GROUP_FILTER "Filter"</span>
+<a name="l00273"></a>00273 <span class="preprocessor"></span>
+<a name="l00274"></a><a class="code" href="constants_8h.html#198ab466096d823e0f72ca25791eb6fa">00274</a> <span class="preprocessor"> #define CONFIG_ENTRY_FILTER_ACTIVE "Active"</span>
+<a name="l00275"></a>00275 <span class="preprocessor"></span>
+<a name="l00276"></a><a class="code" href="constants_8h.html#dfcac0e0386ce2fa2a4d0c8415b24637">00276</a> <span class="preprocessor"> #define CONFIG_VALUE_FILTER_OTHERS_ACTION_PASS 1</span>
+<a name="l00277"></a><a class="code" href="constants_8h.html#7955f7b2a71296c1ff3daafbc70a5008">00277</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_OTHERS_ACTION_DELETE 2</span>
+<a name="l00278"></a><a class="code" href="constants_8h.html#12aebfcb5e48faa68117d59448617adb">00278</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_OTHERS_ACTION_MARK 3</span>
+<a name="l00279"></a><a class="code" href="constants_8h.html#bd397fff0afb531f9b98da8ccd503b86">00279</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_OTHERS_ACTION_MOVE 4</span>
+<a name="l00280"></a><a class="code" href="constants_8h.html#bbd59519c50cf680c41cdc7c1466e5c0">00280</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_OTHERS_ACTION_SPAMCHECK 5</span>
+<a name="l00281"></a><a class="code" href="constants_8h.html#bdae10b87d330fe70b64b960654afb9d">00281</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_OTHERS_ACTION_IGNORE 6</span>
+<a name="l00282"></a>00282 <span class="preprocessor"></span>
+<a name="l00283"></a><a class="code" href="constants_8h.html#1b7529a1e6338e17b7337068d8d1b4de">00283</a> <span class="preprocessor"> #define CONFIG_ENTRY_FILTER_OTHERS_ACTION "ActionForOthers"</span>
+<a name="l00284"></a><a class="code" href="constants_8h.html#45dcfe5a44d7d91934113fb62dd9e3b4">00284</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_FILTER_OTHERS_MAILBOX "MailboxForOthers"</span>
+<a name="l00285"></a>00285 <span class="preprocessor"></span>
+<a name="l00286"></a><a class="code" href="constants_8h.html#0b12174742efea23c3bb8c20a174bb71">00286</a> <span class="preprocessor"> #define CONFIG_VALUE_FILTER_BLACKLIST_ACTION_DELETE 1</span>
+<a name="l00287"></a><a class="code" href="constants_8h.html#6fda4fb6896ba62599318c30dfcd2b17">00287</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_BLACKLIST_ACTION_MARK 2</span>
+<a name="l00288"></a>00288 <span class="preprocessor"></span>
+<a name="l00289"></a><a class="code" href="constants_8h.html#e1ed7065dc1a236c192be768db91e0c2">00289</a> <span class="preprocessor"> #define CONFIG_ENTRY_FILTER_BLACKLIST_ACTION "ActionBlacklist"</span>
+<a name="l00290"></a><a class="code" href="constants_8h.html#6e7df542c34283265c4fe6a93c9fe7bf">00290</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_FILTER_BLACKLIST "Blacklist"</span>
+<a name="l00291"></a><a class="code" href="constants_8h.html#9d18ebad48590195ecac6314d21cb63e">00291</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_FILTER_WHITELIST "Whitelist"</span>
+<a name="l00292"></a><a class="code" href="constants_8h.html#383046b730ac28466f44cdfaf56542a8">00292</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_FILTER_NUMBER_OF_FILTERS "NumberFilters"</span>
+<a name="l00293"></a>00293 <span class="preprocessor"></span>
+<a name="l00294"></a>00294 <span class="comment">//single filter</span>
+<a name="l00295"></a><a class="code" href="constants_8h.html#6ca733772db0f232be935288e243d608">00295</a> <span class="preprocessor"> #define CONFIG_ENTRY_FILTER_NAME "Name"</span>
+<a name="l00296"></a><a class="code" href="constants_8h.html#ac77da58c388fe64fed6e92bda23ba03">00296</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_FILTER_CRITERIA_LINKAGE "CriteriaLinkage"</span>
+<a name="l00297"></a><a class="code" href="constants_8h.html#12d8c15c10b04f2eab1bce59715310cf">00297</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_FILTER_CRITERIA_NUMBER "CriteriaNumber"</span>
+<a name="l00298"></a><a class="code" href="constants_8h.html#3ff6181c4e85488685f990fb38a6c395">00298</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_FILTER_CRITERIA_SOURCE "CriteriaSource"</span>
+<a name="l00299"></a><a class="code" href="constants_8h.html#8a1e84b6d2d082ec63c4c07291151f17">00299</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_FILTER_CRITERIA_CONDITION "CriteriaCondition"</span>
+<a name="l00300"></a><a class="code" href="constants_8h.html#d5c833e2dea46274dd4e70f2b6bbe6c5">00300</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_FILTER_CRITERIA_VALUE "CriteriaValue"</span>
+<a name="l00301"></a><a class="code" href="constants_8h.html#df889c1b87feae7359262a116a9e8de1">00301</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_FILTER_CRITERIA_CASESENSITIVE "CriteriaCaseSensitive"</span>
+<a name="l00302"></a><a class="code" href="constants_8h.html#357fc2b9d70bc024c39885ca661ebebd">00302</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_FILTER_ACTION "Action"</span>
+<a name="l00303"></a><a class="code" href="constants_8h.html#d8c9098fb91b81ebbd71e329ca587988">00303</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_FILTER_MOVE_MAILBOX "Mailbox"</span>
+<a name="l00304"></a>00304 <span class="preprocessor"></span>
+<a name="l00305"></a><a class="code" href="constants_8h.html#b9605cb7cc171bb2c67520dfc3c1180f">00305</a> <span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL 1</span>
+<a name="l00306"></a><a class="code" href="constants_8h.html#3d34e1342db1085ab1205c53bf9f85b7">00306</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY 2</span>
+<a name="l00307"></a>00307 <span class="preprocessor"></span>
+<a name="l00308"></a><a class="code" href="constants_8h.html#07ec2b9550b81fb0c8d5178a0c8310af">00308</a> <span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_SOURCE_FROM 1</span>
+<a name="l00309"></a><a class="code" href="constants_8h.html#634864651eb3087845890b35daa307a5">00309</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_SOURCE_TO 2</span>
+<a name="l00310"></a><a class="code" href="constants_8h.html#319aea6dde5e028ced09e921914dd16f">00310</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SIZE 3</span>
+<a name="l00311"></a><a class="code" href="constants_8h.html#a3f15bee0b2066a2009fbb2a701b0b01">00311</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SUBJECT 4</span>
+<a name="l00312"></a><a class="code" href="constants_8h.html#ccc149c3618fe09c84023617ea1f3261">00312</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_SOURCE_HEADER 5</span>
+<a name="l00313"></a><a class="code" href="constants_8h.html#60992807765887b7cbd53d6dfa5302e3">00313</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_SOURCE_ACCOUNT 6</span>
+<a name="l00314"></a>00314 <span class="preprocessor"></span>
+<a name="l00315"></a><a class="code" href="constants_8h.html#267d2734621cf8acedb29967859e9290">00315</a> <span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_CONTAINS 1</span>
+<a name="l00316"></a><a class="code" href="constants_8h.html#6acea62e3b02c102d3633b4d22a813ee">00316</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_CONTAINS 2</span>
+<a name="l00317"></a><a class="code" href="constants_8h.html#a18504a90ae646ad38db31ee3c99ac8c">00317</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_EQUALS 3</span>
+<a name="l00318"></a><a class="code" href="constants_8h.html#37aa21515d2250c1467fb39ad4902dc6">00318</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_EQUALS 4</span>
+<a name="l00319"></a><a class="code" href="constants_8h.html#579ab7b1404eb79f9a2044be694e3ed6">00319</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_REGEXPR 5</span>
+<a name="l00320"></a><a class="code" href="constants_8h.html#957e42b9813a543f5a22a9801f9fc409">00320</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_REGEXPR 6</span>
+<a name="l00321"></a>00321 <span class="preprocessor"></span>
+<a name="l00322"></a><a class="code" href="constants_8h.html#76fe82b410658a0bb492316c92a56d85">00322</a> <span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_EQUAL 1</span>
+<a name="l00323"></a><a class="code" href="constants_8h.html#fdb2bf8fe032cef6ae4072495f4f72d9">00323</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_NOT_EQUAL 2</span>
+<a name="l00324"></a><a class="code" href="constants_8h.html#b99914e8f94bb1bf48319b0db24b7250">00324</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER 3</span>
+<a name="l00325"></a><a class="code" href="constants_8h.html#d702d49be58a997e276161f126abf375">00325</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER_EQUAL 4</span>
+<a name="l00326"></a><a class="code" href="constants_8h.html#7b36b049326f59ec6b42bfa2ecfe0eb1">00326</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS 5</span>
+<a name="l00327"></a><a class="code" href="constants_8h.html#a3f70df369d4ccbf44ee6165913b00ef">00327</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS_EQUAL 6</span>
+<a name="l00328"></a>00328 <span class="preprocessor"></span>
+<a name="l00329"></a><a class="code" href="constants_8h.html#295662a0a5141e9abf04cdfe2684609d">00329</a> <span class="preprocessor"> #define CONFIG_VALUE_FILTER_ACTION_PASS 1</span>
+<a name="l00330"></a><a class="code" href="constants_8h.html#905853ac0e6baaf4526da8d333a132f8">00330</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_ACTION_DELETE 2</span>
+<a name="l00331"></a><a class="code" href="constants_8h.html#db74299799c553dee6846bba80408748">00331</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_ACTION_MARK 3</span>
+<a name="l00332"></a><a class="code" href="constants_8h.html#9e8712bf9a9e8312363afdbd049f164c">00332</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_ACTION_MOVE 4</span>
+<a name="l00333"></a><a class="code" href="constants_8h.html#9b4f4c23041080a70c7a5a8cbbd7d2a3">00333</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_ACTION_SPAMCHECK 5</span>
+<a name="l00334"></a><a class="code" href="constants_8h.html#8030cd9308f2403581a9ef186e504226">00334</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_FILTER_ACTION_IGNORE 6</span>
+<a name="l00335"></a>00335 <span class="preprocessor"></span>
+<a name="l00336"></a>00336 <span class="comment">//Spamcheck</span>
+<a name="l00337"></a><a class="code" href="constants_8h.html#1e3bc87e49c3d69a40a870b8d87725c6">00337</a> <span class="preprocessor"> #define CONFIG_GROUP_SPAMCHECK "Spamcheck"</span>
+<a name="l00338"></a>00338 <span class="preprocessor"></span>
+<a name="l00339"></a><a class="code" href="constants_8h.html#dd5927f9840cfddd399cb68b8c026dfb">00339</a> <span class="preprocessor"> #define CONFIG_ENTRY_SPAMCHECK_ACTION "Action"</span>
+<a name="l00340"></a><a class="code" href="constants_8h.html#0785891d94014ff1cc59e1ed1505da63">00340</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_SPAMCHECK_MOVE_MAILBOX "Mailbox"</span>
+<a name="l00341"></a>00341 <span class="preprocessor"></span>
+<a name="l00342"></a><a class="code" href="constants_8h.html#9b0f056e1ef82b3dbc6aa84126da6794">00342</a> <span class="preprocessor"> #define CONFIG_VALUE_SPAMCHECK_ACTION_DELETE 2</span>
+<a name="l00343"></a><a class="code" href="constants_8h.html#2e89a5e12634b948174f8fbefb6e28e3">00343</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_SPAMCHECK_ACTION_MARK 3</span>
+<a name="l00344"></a><a class="code" href="constants_8h.html#15445f36d66d48f04b207a94f95192a0">00344</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_SPAMCHECK_ACTION_MOVE 4</span>
+<a name="l00345"></a>00345 <span class="preprocessor"></span>
+<a name="l00346"></a>00346 <span class="comment">//Log</span>
+<a name="l00347"></a><a class="code" href="constants_8h.html#dc96c31bf7d5a41311f2a7700faebf51">00347</a> <span class="preprocessor"> #define CONFIG_GROUP_LOG "Log"</span>
+<a name="l00348"></a><a class="code" href="constants_8h.html#0259fcef1899e361a0a52715dd1fd6b4">00348</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_LOG_LOG_DELETED_MAILS "LogDeletedMails"</span>
+<a name="l00349"></a><a class="code" href="constants_8h.html#986455e2df505584d10efff10f06c231">00349</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_LOG_LOG_MOVED_MAILS "LogMovedMails"</span>
+<a name="l00350"></a><a class="code" href="constants_8h.html#c6b3e43dc2bd488e96c92c157da646ad">00350</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_LOG_REMOVE_DELETED_MAILS "RemoveEventOfDeletedMails"</span>
+<a name="l00351"></a><a class="code" href="constants_8h.html#4af938af2e93b5e2eb5d79567276b01e">00351</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_LOG_REMOVE_MOVED_MAILS "RemoveEvendOfMovedMails"</span>
+<a name="l00352"></a><a class="code" href="constants_8h.html#3b48c20b5ca71bcb49d9883c917a98df">00352</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_LOG_HOLDDAYS_DELETED_MAILS "HoldDaysOfDeletedMails"</span>
+<a name="l00353"></a><a class="code" href="constants_8h.html#3c38399b35dfcaf842c02e8602d5bbd2">00353</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_ENTRY_LOG_HOLDDAYS_MOVED_MAILS "HoldDaysOfMovedMails"</span>
+<a name="l00354"></a>00354 <span class="preprocessor"></span>
+<a name="l00355"></a><a class="code" href="constants_8h.html#0b296dc4f69b21249de6e433c0104d13">00355</a> <span class="preprocessor"> #define CONFIG_VALUE_LOG_REMOVE_MAILS_AT_EXIT "exit"</span>
+<a name="l00356"></a><a class="code" href="constants_8h.html#5687c26d7f9cd390d03bd9812e5b2360">00356</a> <span class="preprocessor"></span><span class="preprocessor"> #define CONFIG_VALUE_LOG_REMOVE_MAILS_AFTER_DAYS "days"</span>
+<a name="l00357"></a>00357 <span class="preprocessor"></span>
+<a name="l00358"></a>00358 <span class="comment">//Misc</span>
+<a name="l00359"></a><a class="code" href="constants_8h.html#ec8c8d5768db301f9aa3552fd064b0ce">00359</a> <span class="preprocessor"> #define NAME_SPAMASSASSIN_DAEMON "spamd"</span>
+<a name="l00360"></a>00360 <span class="preprocessor"></span>}
+<a name="l00361"></a>00361 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/decodeRFC2047_8cpp-source.html b/doc/html/decodeRFC2047_8cpp-source.html
new file mode 100644
index 0000000..50d2f7b
--- /dev/null
+++ b/doc/html/decodeRFC2047_8cpp-source.html
@@ -0,0 +1,204 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/decodeRFC2047.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>decodeRFC2047.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> decodeRFC2047.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Mon Jan 28 2002</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2002 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018
+<a name="l00019"></a>00019 <span class="preprocessor">#include "decodeRFC2047.h"</span>
+<a name="l00020"></a>00020
+<a name="l00021"></a>00021 <span class="comment">/*</span>
+<a name="l00022"></a>00022 <span class="comment"> * These functions have been adapted from the KMail program</span>
+<a name="l00023"></a>00023 <span class="comment"> */</span>
+<a name="l00024"></a>00024
+<a name="l00025"></a>00025 QCString decodeQuotedPrintable(<span class="keyword">const</span> QCString&amp; aStr)
+<a name="l00026"></a>00026 {
+<a name="l00027"></a>00027 QCString bStr = aStr;
+<a name="l00028"></a>00028 <span class="keywordflow">if</span> (aStr.isNull())
+<a name="l00029"></a>00029 bStr = <span class="stringliteral">""</span>;
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031 DwString dwsrc(bStr.data());
+<a name="l00032"></a>00032 DwString dwdest;
+<a name="l00033"></a>00033
+<a name="l00034"></a>00034 DwDecodeQuotedPrintable(dwsrc, dwdest);
+<a name="l00035"></a>00035 <span class="keywordflow">return</span> dwdest.c_str();
+<a name="l00036"></a>00036 }
+<a name="l00037"></a>00037
+<a name="l00038"></a>00038 QCString decodeBase64(<span class="keyword">const</span> QCString&amp; aStr)
+<a name="l00039"></a>00039 {
+<a name="l00040"></a>00040 QCString bStr = aStr;
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> (aStr.isNull())
+<a name="l00042"></a>00042 bStr = <span class="stringliteral">""</span>;
+<a name="l00043"></a>00043 <span class="keywordflow">while</span> (bStr.length() &lt; 16) bStr += <span class="stringliteral">"="</span>;
+<a name="l00044"></a>00044
+<a name="l00045"></a>00045 DwString dwsrc(bStr.data(), bStr.length());
+<a name="l00046"></a>00046 DwString dwdest;
+<a name="l00047"></a>00047 QCString result;
+<a name="l00048"></a>00048
+<a name="l00049"></a>00049 DwDecodeBase64(dwsrc, dwdest);
+<a name="l00050"></a>00050 result = dwdest.c_str();
+<a name="l00051"></a>00051 <span class="keywordflow">return</span> result;
+<a name="l00052"></a>00052 }
+<a name="l00053"></a>00053
+<a name="l00054"></a>00054 QTextCodec* codecForName(<span class="keyword">const</span> QCString&amp; _str)
+<a name="l00055"></a>00055 {
+<a name="l00056"></a>00056 <span class="keywordflow">if</span> (_str.isEmpty()) <span class="keywordflow">return</span> NULL;
+<a name="l00057"></a>00057 <span class="keywordflow">if</span> (_str.lower() == <span class="stringliteral">"shift_jis"</span> || _str.lower() == <span class="stringliteral">"shift-jis"</span>)
+<a name="l00058"></a>00058 <span class="keywordflow">return</span> QTextCodec::codecForName(<span class="stringliteral">"sjis"</span>);
+<a name="l00059"></a>00059 <span class="keywordflow">return</span> QTextCodec::codecForName(_str.lower().replace(
+<a name="l00060"></a>00060 QRegExp(<span class="stringliteral">"windows"</span>), <span class="stringliteral">"cp"</span>) );
+<a name="l00061"></a>00061 }
+<a name="l00062"></a>00062
+<a name="l00063"></a><a class="code" href="namespaceCodecs.html#a0ef7c083708a464b1f1357ba5470cde">00063</a> QString <a class="code" href="namespaceCodecs.html#a0ef7c083708a464b1f1357ba5470cde">Codecs::decodeRFC2047</a>(<span class="keyword">const</span> QCString&amp; aStr)
+<a name="l00064"></a>00064 {
+<a name="l00065"></a>00065 QString result;
+<a name="l00066"></a>00066 QCString charset;
+<a name="l00067"></a>00067 <span class="keywordtype">char</span> *pos, *beg, *end, *mid;
+<a name="l00068"></a>00068 QCString str, cstr, LWSP_buffer;
+<a name="l00069"></a>00069 <span class="keywordtype">char</span> encoding, ch;
+<a name="l00070"></a>00070 <span class="keywordtype">bool</span> valid, lastWasEncodedWord=FALSE;
+<a name="l00071"></a>00071 <span class="keyword">const</span> <span class="keywordtype">int</span> maxLen=200;
+<a name="l00072"></a>00072 <span class="keywordtype">int</span> i;
+<a name="l00073"></a>00073
+<a name="l00074"></a>00074 <span class="keywordflow">if</span> (aStr.find(<span class="stringliteral">"=?"</span>) &lt; 0)
+<a name="l00075"></a>00075 <span class="keywordflow">return</span> QString::fromLocal8Bit(aStr).replace(QRegExp(<span class="stringliteral">"\n[\t ]"</span>),<span class="stringliteral">" "</span>);
+<a name="l00076"></a>00076
+<a name="l00077"></a>00077 <span class="keywordflow">for</span> (pos=aStr.data(); *pos; pos++)
+<a name="l00078"></a>00078 {
+<a name="l00079"></a>00079 <span class="comment">// line unfolding</span>
+<a name="l00080"></a>00080 <span class="keywordflow">if</span> ( pos[0] == <span class="charliteral">'\r'</span> &amp;&amp; pos[1] == <span class="charliteral">'\n'</span> ) {
+<a name="l00081"></a>00081 pos++;
+<a name="l00082"></a>00082 <span class="keywordflow">continue</span>;
+<a name="l00083"></a>00083 }
+<a name="l00084"></a>00084 <span class="keywordflow">if</span> ( pos[0] == <span class="charliteral">'\n'</span> )
+<a name="l00085"></a>00085 <span class="keywordflow">continue</span>;
+<a name="l00086"></a>00086 <span class="comment">// collect LWSP after encoded-words,</span>
+<a name="l00087"></a>00087 <span class="comment">// because we might need to throw it out</span>
+<a name="l00088"></a>00088 <span class="comment">// (when the next word is an encoded-word)</span>
+<a name="l00089"></a>00089 <span class="keywordflow">if</span> ( lastWasEncodedWord &amp;&amp; ( pos[0] == <span class="charliteral">' '</span> || pos[0] == <span class="charliteral">'\t'</span> ) )
+<a name="l00090"></a>00090 {
+<a name="l00091"></a>00091 LWSP_buffer += pos[0];
+<a name="l00092"></a>00092 <span class="keywordflow">continue</span>;
+<a name="l00093"></a>00093 }
+<a name="l00094"></a>00094 <span class="comment">// verbatimly copy normal text</span>
+<a name="l00095"></a>00095 <span class="keywordflow">if</span> (pos[0]!=<span class="charliteral">'='</span> || pos[1]!=<span class="charliteral">'?'</span>)
+<a name="l00096"></a>00096 {
+<a name="l00097"></a>00097 result += LWSP_buffer + pos[0];
+<a name="l00098"></a>00098 LWSP_buffer = 0;
+<a name="l00099"></a>00099 lastWasEncodedWord = FALSE;
+<a name="l00100"></a>00100 <span class="keywordflow">continue</span>;
+<a name="l00101"></a>00101 }
+<a name="l00102"></a>00102 <span class="comment">// found possible encoded-word</span>
+<a name="l00103"></a>00103 beg = pos+2;
+<a name="l00104"></a>00104 end = beg;
+<a name="l00105"></a>00105 valid = TRUE;
+<a name="l00106"></a>00106 <span class="comment">// parse charset name</span>
+<a name="l00107"></a>00107 charset = <span class="stringliteral">""</span>;
+<a name="l00108"></a>00108 <span class="keywordflow">for</span> (i=2,pos+=2; i&lt;maxLen &amp;&amp; (*pos!=<span class="charliteral">'?'</span>&amp;&amp;(*pos==<span class="charliteral">' '</span>||ispunct(*pos)||isalnum(*pos))); i++)
+<a name="l00109"></a>00109 {
+<a name="l00110"></a>00110 charset += *pos;
+<a name="l00111"></a>00111 pos++;
+<a name="l00112"></a>00112 }
+<a name="l00113"></a>00113 <span class="keywordflow">if</span> (*pos!=<span class="charliteral">'?'</span> || i&lt;4 || i&gt;=maxLen) valid = FALSE;
+<a name="l00114"></a>00114 <span class="keywordflow">else</span>
+<a name="l00115"></a>00115 {
+<a name="l00116"></a>00116 <span class="comment">// get encoding and check delimiting question marks</span>
+<a name="l00117"></a>00117 encoding = toupper(pos[1]);
+<a name="l00118"></a>00118 <span class="keywordflow">if</span> (pos[2]!=<span class="charliteral">'?'</span> || (encoding!=<span class="charliteral">'Q'</span> &amp;&amp; encoding!=<span class="charliteral">'B'</span>))
+<a name="l00119"></a>00119 valid = FALSE;
+<a name="l00120"></a>00120 pos+=3;
+<a name="l00121"></a>00121 i+=3;
+<a name="l00122"></a>00122 }
+<a name="l00123"></a>00123 <span class="keywordflow">if</span> (valid)
+<a name="l00124"></a>00124 {
+<a name="l00125"></a>00125 mid = pos;
+<a name="l00126"></a>00126 <span class="comment">// search for end of encoded part</span>
+<a name="l00127"></a>00127 <span class="keywordflow">while</span> (i&lt;maxLen &amp;&amp; *pos &amp;&amp; !(*pos==<span class="charliteral">'?'</span> &amp;&amp; *(pos+1)==<span class="charliteral">'='</span>))
+<a name="l00128"></a>00128 {
+<a name="l00129"></a>00129 i++;
+<a name="l00130"></a>00130 pos++;
+<a name="l00131"></a>00131 }
+<a name="l00132"></a>00132 end = pos+2;<span class="comment">//end now points to the first char after the encoded string</span>
+<a name="l00133"></a>00133 <span class="keywordflow">if</span> (i&gt;=maxLen || !*pos)
+<a name="l00134"></a>00134 valid = FALSE;
+<a name="l00135"></a>00135 }
+<a name="l00136"></a>00136 <span class="keywordflow">if</span> (valid)
+<a name="l00137"></a>00137 {
+<a name="l00138"></a>00138 <span class="comment">// valid encoding: decode and throw away separating LWSP</span>
+<a name="l00139"></a>00139 ch = *pos;
+<a name="l00140"></a>00140 *pos = <span class="charliteral">'\0'</span>;
+<a name="l00141"></a>00141 str = QCString(mid).left((<span class="keywordtype">int</span>)(mid - pos - 1));
+<a name="l00142"></a>00142 <span class="keywordflow">if</span> (encoding == <span class="charliteral">'Q'</span>)
+<a name="l00143"></a>00143 {
+<a name="l00144"></a>00144 <span class="comment">// decode quoted printable text</span>
+<a name="l00145"></a>00145 <span class="keywordflow">for</span> (i=str.length()-1; i&gt;=0; i--)
+<a name="l00146"></a>00146 <span class="keywordflow">if</span> (str[i]==<span class="charliteral">'_'</span>)
+<a name="l00147"></a>00147 str[i]=<span class="charliteral">' '</span>;
+<a name="l00148"></a>00148 cstr = decodeQuotedPrintable(str);
+<a name="l00149"></a>00149 }
+<a name="l00150"></a>00150 <span class="keywordflow">else</span>
+<a name="l00151"></a>00151 {
+<a name="l00152"></a>00152 <span class="comment">// decode base64 text</span>
+<a name="l00153"></a>00153 cstr = decodeBase64(str);
+<a name="l00154"></a>00154 }
+<a name="l00155"></a>00155 QTextCodec *codec = codecForName(charset);
+<a name="l00156"></a>00156 <span class="keywordflow">if</span> (!codec)
+<a name="l00157"></a>00157 codec = codecForName(KGlobal::locale()-&gt;encoding());
+<a name="l00158"></a>00158 <span class="keywordflow">if</span> (codec)
+<a name="l00159"></a>00159 result += codec-&gt;toUnicode(cstr);
+<a name="l00160"></a>00160 <span class="keywordflow">else</span>
+<a name="l00161"></a>00161 result += QString::fromLocal8Bit(cstr);
+<a name="l00162"></a>00162 lastWasEncodedWord = TRUE;
+<a name="l00163"></a>00163
+<a name="l00164"></a>00164 *pos = ch;
+<a name="l00165"></a>00165 pos = end -1;
+<a name="l00166"></a>00166 }
+<a name="l00167"></a>00167 <span class="keywordflow">else</span>
+<a name="l00168"></a>00168 {
+<a name="l00169"></a>00169 <span class="comment">// invalid encoding, keep separating LWSP.</span>
+<a name="l00170"></a>00170 <span class="comment">//result += "=?";</span>
+<a name="l00171"></a>00171 <span class="comment">//pos = beg -1; // because pos gets increased shortly afterwards</span>
+<a name="l00172"></a>00172 pos = beg - 2;
+<a name="l00173"></a>00173 result += LWSP_buffer;
+<a name="l00174"></a>00174 result += *pos++;
+<a name="l00175"></a>00175 result += *pos;
+<a name="l00176"></a>00176 lastWasEncodedWord = FALSE;
+<a name="l00177"></a>00177 }
+<a name="l00178"></a>00178 LWSP_buffer = 0;
+<a name="l00179"></a>00179 }
+<a name="l00180"></a>00180 <span class="keywordflow">return</span> result;
+<a name="l00181"></a>00181 }
+<a name="l00182"></a>00182
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/decodeRFC2047_8h-source.html b/doc/html/decodeRFC2047_8h-source.html
new file mode 100644
index 0000000..e45ca0f
--- /dev/null
+++ b/doc/html/decodeRFC2047_8h-source.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/decodeRFC2047.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>decodeRFC2047.h</h1><a href="decodeRFC2047_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> decodeRFC2047.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Mon Jan 28 2002</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2002 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017 <span class="preprocessor">#ifndef DECODE_RFC2047_H</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define DECODE_RFC2047_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;ctype.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
+<a name="l00022"></a>00022
+<a name="l00023"></a>00023 <span class="comment">//Qt header</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;qtextcodec.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;qregexp.h&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;qstring.h&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;qcstring.h&gt;</span>
+<a name="l00028"></a>00028
+<a name="l00029"></a>00029 <span class="comment">//KDE header</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;kglobal.h&gt;</span>
+<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;mimelib/mimepp.h&gt;</span>
+<a name="l00033"></a>00033
+<a name="l00034"></a>00034
+<a name="l00038"></a><a class="code" href="namespaceCodecs.html">00038</a> <span class="keyword">namespace </span>Codecs
+<a name="l00039"></a>00039 {
+<a name="l00040"></a>00040
+<a name="l00047"></a>00047 QString <a class="code" href="namespaceCodecs.html#a0ef7c083708a464b1f1357ba5470cde">decodeRFC2047</a>( <span class="keyword">const</span> QCString&amp; aStr );
+<a name="l00048"></a>00048
+<a name="l00049"></a>00049 }
+<a name="l00050"></a>00050
+<a name="l00051"></a>00051 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/dir_656923b733374505e0e2f68ecb68d952.html b/doc/html/dir_656923b733374505e0e2f68ecb68d952.html
new file mode 100644
index 0000000..5754588
--- /dev/null
+++ b/doc/html/dir_656923b733374505e0e2f68ecb68d952.html
@@ -0,0 +1,145 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/ Directory Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmail Directory Reference</h1><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Directories</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">directory &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_7d0707484fc3204ba5712d2819b3f8fd.html">kcmconfigs</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Files</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="alertdialog_8cpp.html">alertdialog.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="alertdialog_8h.html">alertdialog.h</a> <a href="alertdialog_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="AlertDlg_8cpp.html">AlertDlg.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="AlertDlg_8h.html">AlertDlg.h</a> <a href="AlertDlg_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="configelem_8cpp.html">configelem.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="configelem_8h.html">configelem.h</a> <a href="configelem_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="configlist_8cpp.html">configlist.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="configlist_8h.html">configlist.h</a> <a href="configlist_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="constants_8h.html">constants.h</a> <a href="constants_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="decodeRFC2047_8cpp.html">decodeRFC2047.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="decodeRFC2047_8h.html">decodeRFC2047.h</a> <a href="decodeRFC2047_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="encryption_8cpp.html">encryption.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="encryption_8h.html">encryption.h</a> <a href="encryption_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filteritem_8cpp.html">filteritem.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filteritem_8h.html">filteritem.h</a> <a href="filteritem_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filteritemcriteria_8cpp.html">filteritemcriteria.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filteritemcriteria_8h.html">filteritemcriteria.h</a> <a href="filteritemcriteria_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filterlog_8cpp.html">filterlog.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filterlog_8h.html">filterlog.h</a> <a href="filterlog_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filterlogentry_8cpp.html">filterlogentry.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filterlogentry_8h.html">filterlogentry.h</a> <a href="filterlogentry_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filterlogview_8cpp.html">filterlogview.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filterlogview_8h.html">filterlogview.h</a> <a href="filterlogview_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filterlogviewdeleteditem_8cpp.html">filterlogviewdeleteditem.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filterlogviewdeleteditem_8h.html">filterlogviewdeleteditem.h</a> <a href="filterlogviewdeleteditem_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filterlogviewmoveditem_8cpp.html">filterlogviewmoveditem.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="filterlogviewmoveditem_8h.html">filterlogviewmoveditem.h</a> <a href="filterlogviewmoveditem_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="headerfilter_8cpp.html">headerfilter.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="headerfilter_8h.html">headerfilter.h</a> <a href="headerfilter_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="kshowmail_8cpp.html">kshowmail.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="kshowmail_8h.html">kshowmail.h</a> <a href="kshowmail_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="kshowmaildoc_8cpp.html">kshowmaildoc.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="kshowmaildoc_8h.html">kshowmaildoc.h</a> <a href="kshowmaildoc_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="kshowmaildock_8cpp.html">kshowmaildock.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="kshowmaildock_8h.html">kshowmaildock.h</a> <a href="kshowmaildock_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="kshowmailfeedback_8cpp.html">kshowmailfeedback.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="kshowmailview_8cpp.html">kshowmailview.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="kshowmailview_8h.html">kshowmailview.h</a> <a href="kshowmailview_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwalletaccess_8cpp.html">kwalletaccess.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwalletaccess_8h.html">kwalletaccess.h</a> <a href="kwalletaccess_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html">main.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="senderlistfilter_8cpp.html">senderlistfilter.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="senderlistfilter_8h.html">senderlistfilter.h</a> <a href="senderlistfilter_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="serverdialog_8cpp.html">serverdialog.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="serverdialog_8h.html">serverdialog.h</a> <a href="serverdialog_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="showheaderdialog_8cpp.html">showheaderdialog.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="showheaderdialog_8h.html">showheaderdialog.h</a> <a href="showheaderdialog_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="showlistviewitem_8cpp.html">showlistviewitem.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="showlistviewitem_8h.html">showlistviewitem.h</a> <a href="showlistviewitem_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="showmaildialog_8cpp.html">showmaildialog.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="showmaildialog_8h.html">showmaildialog.h</a> <a href="showmaildialog_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="showrecord_8cpp.html">showrecord.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="showrecord_8h.html">showrecord.h</a> <a href="showrecord_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="showrecordelem_8cpp.html">showrecordelem.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="showrecordelem_8h.html">showrecordelem.h</a> <a href="showrecordelem_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html">types.h</a> <a href="types_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uniqueapp_8cpp.html">uniqueapp.cpp</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="uniqueapp_8h.html">uniqueapp.h</a> <a href="uniqueapp_8h-source.html">[code]</a></td></tr>
+
+</table>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/dirs.html b/doc/html/dirs.html
new file mode 100644
index 0000000..568b198
--- /dev/null
+++ b/doc/html/dirs.html
@@ -0,0 +1,41 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Directory Hierarchy</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li id="current"><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<h1>kshowmail.kdevelop Directories</h1>This directory hierarchy is sorted roughly, but not completely, alphabetically:<ul>
+<li><a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>
+<ul>
+<li><a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>
+<ul>
+<li><a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>
+<ul>
+<li><a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>
+<ul>
+<li><a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>
+<ul>
+<li><a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a>
+<ul>
+<li><a class="el" href="dir_7d0707484fc3204ba5712d2819b3f8fd.html">kcmconfigs</a>
+</ul>
+</ul>
+</ul>
+</ul>
+</ul>
+</ul>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/doxygen.css b/doc/html/doxygen.css
new file mode 100644
index 0000000..c7db1a8
--- /dev/null
+++ b/doc/html/doxygen.css
@@ -0,0 +1,358 @@
+BODY,H1,H2,H3,H4,H5,H6,P,CENTER,TD,TH,UL,DL,DIV {
+ font-family: Geneva, Arial, Helvetica, sans-serif;
+}
+BODY,TD {
+ font-size: 90%;
+}
+H1 {
+ text-align: center;
+ font-size: 160%;
+}
+H2 {
+ font-size: 120%;
+}
+H3 {
+ font-size: 100%;
+}
+CAPTION { font-weight: bold }
+DIV.qindex {
+ width: 100%;
+ background-color: #e8eef2;
+ border: 1px solid #84b0c7;
+ text-align: center;
+ margin: 2px;
+ padding: 2px;
+ line-height: 140%;
+}
+DIV.nav {
+ width: 100%;
+ background-color: #e8eef2;
+ border: 1px solid #84b0c7;
+ text-align: center;
+ margin: 2px;
+ padding: 2px;
+ line-height: 140%;
+}
+DIV.navtab {
+ background-color: #e8eef2;
+ border: 1px solid #84b0c7;
+ text-align: center;
+ margin: 2px;
+ margin-right: 15px;
+ padding: 2px;
+}
+TD.navtab {
+ font-size: 70%;
+}
+A.qindex {
+ text-decoration: none;
+ font-weight: bold;
+ color: #1A419D;
+}
+A.qindex:visited {
+ text-decoration: none;
+ font-weight: bold;
+ color: #1A419D
+}
+A.qindex:hover {
+ text-decoration: none;
+ background-color: #ddddff;
+}
+A.qindexHL {
+ text-decoration: none;
+ font-weight: bold;
+ background-color: #6666cc;
+ color: #ffffff;
+ border: 1px double #9295C2;
+}
+A.qindexHL:hover {
+ text-decoration: none;
+ background-color: #6666cc;
+ color: #ffffff;
+}
+A.qindexHL:visited { text-decoration: none; background-color: #6666cc; color: #ffffff }
+A.el { text-decoration: none; font-weight: bold }
+A.elRef { font-weight: bold }
+A.code:link { text-decoration: none; font-weight: normal; color: #0000FF}
+A.code:visited { text-decoration: none; font-weight: normal; color: #0000FF}
+A.codeRef:link { font-weight: normal; color: #0000FF}
+A.codeRef:visited { font-weight: normal; color: #0000FF}
+A:hover { text-decoration: none; background-color: #f2f2ff }
+DL.el { margin-left: -1cm }
+.fragment {
+ font-family: monospace, fixed;
+ font-size: 95%;
+}
+PRE.fragment {
+ border: 1px solid #CCCCCC;
+ background-color: #f5f5f5;
+ margin-top: 4px;
+ margin-bottom: 4px;
+ margin-left: 2px;
+ margin-right: 8px;
+ padding-left: 6px;
+ padding-right: 6px;
+ padding-top: 4px;
+ padding-bottom: 4px;
+}
+DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px }
+
+DIV.groupHeader {
+ margin-left: 16px;
+ margin-top: 12px;
+ margin-bottom: 6px;
+ font-weight: bold;
+}
+DIV.groupText { margin-left: 16px; font-style: italic; font-size: 90% }
+BODY {
+ background: white;
+ color: black;
+ margin-right: 20px;
+ margin-left: 20px;
+}
+TD.indexkey {
+ background-color: #e8eef2;
+ font-weight: bold;
+ padding-right : 10px;
+ padding-top : 2px;
+ padding-left : 10px;
+ padding-bottom : 2px;
+ margin-left : 0px;
+ margin-right : 0px;
+ margin-top : 2px;
+ margin-bottom : 2px;
+ border: 1px solid #CCCCCC;
+}
+TD.indexvalue {
+ background-color: #e8eef2;
+ font-style: italic;
+ padding-right : 10px;
+ padding-top : 2px;
+ padding-left : 10px;
+ padding-bottom : 2px;
+ margin-left : 0px;
+ margin-right : 0px;
+ margin-top : 2px;
+ margin-bottom : 2px;
+ border: 1px solid #CCCCCC;
+}
+TR.memlist {
+ background-color: #f0f0f0;
+}
+P.formulaDsp { text-align: center; }
+IMG.formulaDsp { }
+IMG.formulaInl { vertical-align: middle; }
+SPAN.keyword { color: #008000 }
+SPAN.keywordtype { color: #604020 }
+SPAN.keywordflow { color: #e08000 }
+SPAN.comment { color: #800000 }
+SPAN.preprocessor { color: #806020 }
+SPAN.stringliteral { color: #002080 }
+SPAN.charliteral { color: #008080 }
+.mdescLeft {
+ padding: 0px 8px 4px 8px;
+ font-size: 80%;
+ font-style: italic;
+ background-color: #FAFAFA;
+ border-top: 1px none #E0E0E0;
+ border-right: 1px none #E0E0E0;
+ border-bottom: 1px none #E0E0E0;
+ border-left: 1px none #E0E0E0;
+ margin: 0px;
+}
+.mdescRight {
+ padding: 0px 8px 4px 8px;
+ font-size: 80%;
+ font-style: italic;
+ background-color: #FAFAFA;
+ border-top: 1px none #E0E0E0;
+ border-right: 1px none #E0E0E0;
+ border-bottom: 1px none #E0E0E0;
+ border-left: 1px none #E0E0E0;
+ margin: 0px;
+}
+.memItemLeft {
+ padding: 1px 0px 0px 8px;
+ margin: 4px;
+ border-top-width: 1px;
+ border-right-width: 1px;
+ border-bottom-width: 1px;
+ border-left-width: 1px;
+ border-top-color: #E0E0E0;
+ border-right-color: #E0E0E0;
+ border-bottom-color: #E0E0E0;
+ border-left-color: #E0E0E0;
+ border-top-style: solid;
+ border-right-style: none;
+ border-bottom-style: none;
+ border-left-style: none;
+ background-color: #FAFAFA;
+ font-size: 80%;
+}
+.memItemRight {
+ padding: 1px 8px 0px 8px;
+ margin: 4px;
+ border-top-width: 1px;
+ border-right-width: 1px;
+ border-bottom-width: 1px;
+ border-left-width: 1px;
+ border-top-color: #E0E0E0;
+ border-right-color: #E0E0E0;
+ border-bottom-color: #E0E0E0;
+ border-left-color: #E0E0E0;
+ border-top-style: solid;
+ border-right-style: none;
+ border-bottom-style: none;
+ border-left-style: none;
+ background-color: #FAFAFA;
+ font-size: 80%;
+}
+.memTemplItemLeft {
+ padding: 1px 0px 0px 8px;
+ margin: 4px;
+ border-top-width: 1px;
+ border-right-width: 1px;
+ border-bottom-width: 1px;
+ border-left-width: 1px;
+ border-top-color: #E0E0E0;
+ border-right-color: #E0E0E0;
+ border-bottom-color: #E0E0E0;
+ border-left-color: #E0E0E0;
+ border-top-style: none;
+ border-right-style: none;
+ border-bottom-style: none;
+ border-left-style: none;
+ background-color: #FAFAFA;
+ font-size: 80%;
+}
+.memTemplItemRight {
+ padding: 1px 8px 0px 8px;
+ margin: 4px;
+ border-top-width: 1px;
+ border-right-width: 1px;
+ border-bottom-width: 1px;
+ border-left-width: 1px;
+ border-top-color: #E0E0E0;
+ border-right-color: #E0E0E0;
+ border-bottom-color: #E0E0E0;
+ border-left-color: #E0E0E0;
+ border-top-style: none;
+ border-right-style: none;
+ border-bottom-style: none;
+ border-left-style: none;
+ background-color: #FAFAFA;
+ font-size: 80%;
+}
+.memTemplParams {
+ padding: 1px 0px 0px 8px;
+ margin: 4px;
+ border-top-width: 1px;
+ border-right-width: 1px;
+ border-bottom-width: 1px;
+ border-left-width: 1px;
+ border-top-color: #E0E0E0;
+ border-right-color: #E0E0E0;
+ border-bottom-color: #E0E0E0;
+ border-left-color: #E0E0E0;
+ border-top-style: solid;
+ border-right-style: none;
+ border-bottom-style: none;
+ border-left-style: none;
+ color: #606060;
+ background-color: #FAFAFA;
+ font-size: 80%;
+}
+.search { color: #003399;
+ font-weight: bold;
+}
+FORM.search {
+ margin-bottom: 0px;
+ margin-top: 0px;
+}
+INPUT.search { font-size: 75%;
+ color: #000080;
+ font-weight: normal;
+ background-color: #e8eef2;
+}
+TD.tiny { font-size: 75%;
+}
+a {
+ color: #1A41A8;
+}
+a:visited {
+ color: #2A3798;
+}
+.dirtab { padding: 4px;
+ border-collapse: collapse;
+ border: 1px solid #84b0c7;
+}
+TH.dirtab { background: #e8eef2;
+ font-weight: bold;
+}
+HR { height: 1px;
+ border: none;
+ border-top: 1px solid black;
+}
+
+/* Style for detailed member documentation */
+.memtemplate {
+ font-size: 80%;
+ color: #606060;
+ font-weight: normal;
+}
+.memnav {
+ background-color: #e8eef2;
+ border: 1px solid #84b0c7;
+ text-align: center;
+ margin: 2px;
+ margin-right: 15px;
+ padding: 2px;
+}
+.memitem {
+ padding: 4px;
+ background-color: #eef3f5;
+ border-width: 1px;
+ border-style: solid;
+ border-color: #dedeee;
+ -moz-border-radius: 8px 8px 8px 8px;
+}
+.memname {
+ white-space: nowrap;
+ font-weight: bold;
+}
+.memdoc{
+ padding-left: 10px;
+}
+.memproto {
+ background-color: #d5e1e8;
+ width: 100%;
+ border-width: 1px;
+ border-style: solid;
+ border-color: #84b0c7;
+ font-weight: bold;
+ -moz-border-radius: 8px 8px 8px 8px;
+}
+.paramkey {
+ text-align: right;
+}
+.paramtype {
+ white-space: nowrap;
+}
+.paramname {
+ color: #602020;
+ font-style: italic;
+ white-space: nowrap;
+}
+/* End Styling for detailed member documentation */
+
+/* for the tree view */
+.ftvtree {
+ font-family: sans-serif;
+ margin:0.5em;
+}
+.directory { font-size: 9pt; font-weight: bold; }
+.directory h3 { margin: 0px; margin-top: 1em; font-size: 11pt; }
+.directory > h3 { margin-top: 0; }
+.directory p { margin: 0px; white-space: nowrap; }
+.directory div { display: none; margin: 0px; }
+.directory img { vertical-align: -30%; }
diff --git a/doc/html/doxygen.png b/doc/html/doxygen.png
new file mode 100644
index 0000000..f0a274b
--- /dev/null
+++ b/doc/html/doxygen.png
Binary files differ
diff --git a/doc/html/editdialog_8cpp-source.html b/doc/html/editdialog_8cpp-source.html
new file mode 100644
index 0000000..0b643ba
--- /dev/null
+++ b/doc/html/editdialog_8cpp-source.html
@@ -0,0 +1,74 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/editdialog.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>editdialog.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> editdialog.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Wed Oct 31 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qlayout.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qmultilineedit.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qlabel.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qlineedit.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;ktextbrowser.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include "editdialog.h"</span>
+<a name="l00024"></a>00024
+<a name="l00025"></a><a class="code" href="classEditDialog.html#f04c4d1f7426db3ce7b52afbd47bee3a">00025</a> <a class="code" href="classEditDialog.html#f04c4d1f7426db3ce7b52afbd47bee3a">EditDialog::EditDialog</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keyword">const</span> <span class="keywordtype">char</span>* content, <span class="keywordtype">bool</span> html):
+<a name="l00026"></a>00026 <a class="code" href="classEditDlg.html">EditDlg</a>(parent,name,true), _row(0)
+<a name="l00027"></a>00027 {
+<a name="l00028"></a>00028 setCaption (name);
+<a name="l00029"></a>00029 <span class="keywordflow">if</span> (!html)
+<a name="l00030"></a>00030 <a class="code" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a>-&gt;setTextFormat (Qt::PlainText);
+<a name="l00031"></a>00031 <a class="code" href="classEditDlg.html#e0c63f69593ec302266eb0adde25423c">m_Edit</a>-&gt;setText (content);
+<a name="l00032"></a>00032 }
+<a name="l00033"></a>00033
+<a name="l00034"></a><a class="code" href="classEditDialog.html#60b8b3d2cb57cb5f8a1f12b41cb48925">00034</a> <span class="keywordtype">void</span> <a class="code" href="classEditDialog.html#60b8b3d2cb57cb5f8a1f12b41cb48925">EditDialog::addWidget</a> (<span class="keyword">const</span> QString&amp; lbl, <span class="keyword">const</span> QString&amp; value)
+<a name="l00035"></a>00035 {
+<a name="l00036"></a>00036 QLabel* label = <span class="keyword">new</span> QLabel (lbl, <span class="keyword">this</span>);
+<a name="l00037"></a>00037 QLineEdit* edit = <span class="keyword">new</span> QLineEdit (<span class="keyword">this</span>);
+<a name="l00038"></a>00038 edit-&gt;setReadOnly (<span class="keyword">true</span>);
+<a name="l00039"></a>00039 edit-&gt;setText (value);
+<a name="l00040"></a>00040 <a class="code" href="classEditDlg.html#8e34dcd04a2c8ed5cd2592b971e3d674">headerlayout</a>-&gt;addMultiCellWidget (label, <a class="code" href="classEditDialog.html#2ca1e6e1f1bf299f39bfe42a42d310a0">_row</a>, <a class="code" href="classEditDialog.html#2ca1e6e1f1bf299f39bfe42a42d310a0">_row</a>, 0, 0);
+<a name="l00041"></a>00041 <a class="code" href="classEditDlg.html#8e34dcd04a2c8ed5cd2592b971e3d674">headerlayout</a>-&gt;addMultiCellWidget (edit, <a class="code" href="classEditDialog.html#2ca1e6e1f1bf299f39bfe42a42d310a0">_row</a>++, <a class="code" href="classEditDialog.html#2ca1e6e1f1bf299f39bfe42a42d310a0">_row</a>, 1, 1);
+<a name="l00042"></a>00042 }
+<a name="l00043"></a>00043
+<a name="l00044"></a><a class="code" href="classEditDialog.html#702b03511d3afe4d3a05a588b06d597c">00044</a> <a class="code" href="classEditDialog.html#702b03511d3afe4d3a05a588b06d597c">EditDialog::~EditDialog</a>()
+<a name="l00045"></a>00045 {}
+<a name="l00046"></a>00046
+<a name="l00047"></a><a class="code" href="classEditDialog.html#375c93b954436746caab26f1d2664811">00047</a> <span class="keywordtype">void</span> <a class="code" href="classEditDialog.html#375c93b954436746caab26f1d2664811">EditDialog::slotReplyClicked</a> ()
+<a name="l00048"></a>00048 {
+<a name="l00049"></a>00049 <span class="comment">// the value 10 is returned from exec</span>
+<a name="l00050"></a>00050 <span class="comment">// works, but signal/slot would be nice</span>
+<a name="l00051"></a>00051 done (10);
+<a name="l00052"></a>00052 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/editdialog_8h-source.html b/doc/html/editdialog_8h-source.html
new file mode 100644
index 0000000..a1ff5b0
--- /dev/null
+++ b/doc/html/editdialog_8h-source.html
@@ -0,0 +1,58 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/editdialog.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>editdialog.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> editdialog.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Wed Oct 31 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef EDITDIALOG_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define EDITDIALOG_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qwidget.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "EditDlg.h"</span>
+<a name="l00023"></a>00023
+<a name="l00028"></a><a class="code" href="classEditDialog.html">00028</a> <span class="keyword">class </span><a class="code" href="classEditDialog.html">EditDialog</a> : <span class="keyword">public</span> <a class="code" href="classEditDlg.html">EditDlg</a> {
+<a name="l00029"></a>00029 Q_OBJECT
+<a name="l00030"></a>00030 <span class="keyword">public</span>:
+<a name="l00031"></a>00031 <a class="code" href="classEditDialog.html#f04c4d1f7426db3ce7b52afbd47bee3a">EditDialog</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keyword">const</span> <span class="keywordtype">char</span>* content, <span class="keywordtype">bool</span> html);
+<a name="l00032"></a>00032 <a class="code" href="classEditDialog.html#702b03511d3afe4d3a05a588b06d597c">~EditDialog</a>();
+<a name="l00033"></a>00033 <span class="keywordtype">void</span> <a class="code" href="classEditDialog.html#60b8b3d2cb57cb5f8a1f12b41cb48925">addWidget</a> (<span class="keyword">const</span> QString&amp; label, <span class="keyword">const</span> QString&amp; value);
+<a name="l00034"></a>00034 <span class="keyword">public</span> slots:
+<a name="l00035"></a>00035 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classEditDialog.html#375c93b954436746caab26f1d2664811">slotReplyClicked</a> ();
+<a name="l00036"></a>00036 <span class="keyword">private</span>:
+<a name="l00037"></a><a class="code" href="classEditDialog.html#2ca1e6e1f1bf299f39bfe42a42d310a0">00037</a> <span class="keywordtype">int</span> <a class="code" href="classEditDialog.html#2ca1e6e1f1bf299f39bfe42a42d310a0">_row</a>;
+<a name="l00038"></a>00038 };
+<a name="l00039"></a>00039
+<a name="l00040"></a>00040 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/editdialog_8moc_8cpp-source.html b/doc/html/editdialog_8moc_8cpp-source.html
new file mode 100644
index 0000000..558715e
--- /dev/null
+++ b/doc/html/editdialog_8moc_8cpp-source.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/editdialog.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>editdialog.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** EditDialog meta object code from reading C++ file 'editdialog.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Tue May 15 19:57:53 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: editdialog_8moc_8cpp-source.html,v 1.8 2007/05/16 20:12:00 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "editdialog.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *EditDialog::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"EditDialog"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *EditDialog::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_EditDialog( <span class="stringliteral">"EditDialog"</span>, &amp;EditDialog::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString EditDialog::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"EditDialog"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString EditDialog::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"EditDialog"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* EditDialog::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = EditDlg::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotReplyClicked"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00057"></a>00057 { <span class="stringliteral">"slotReplyClicked()"</span>, &amp;slot_0, QMetaData::Public }
+<a name="l00058"></a>00058 };
+<a name="l00059"></a>00059 metaObj = QMetaObject::new_metaobject(
+<a name="l00060"></a>00060 <span class="stringliteral">"EditDialog"</span>, parentObject,
+<a name="l00061"></a>00061 slot_tbl, 1,
+<a name="l00062"></a>00062 0, 0,
+<a name="l00063"></a>00063 #ifndef QT_NO_PROPERTIES
+<a name="l00064"></a>00064 0, 0,
+<a name="l00065"></a>00065 0, 0,
+<a name="l00066"></a>00066 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00067"></a>00067 0, 0 );
+<a name="l00068"></a>00068 cleanUp_EditDialog.setMetaObject( metaObj );
+<a name="l00069"></a>00069 <span class="keywordflow">return</span> metaObj;
+<a name="l00070"></a>00070 }
+<a name="l00071"></a>00071
+<a name="l00072"></a>00072 <span class="keywordtype">void</span>* EditDialog::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00073"></a>00073 {
+<a name="l00074"></a>00074 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"EditDialog"</span> ) )
+<a name="l00075"></a>00075 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00076"></a>00076 <span class="keywordflow">return</span> EditDlg::qt_cast( clname );
+<a name="l00077"></a>00077 }
+<a name="l00078"></a>00078
+<a name="l00079"></a>00079 <span class="keywordtype">bool</span> EditDialog::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00080"></a>00080 {
+<a name="l00081"></a>00081 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00082"></a>00082 <span class="keywordflow">case</span> 0: <a class="code" href="classEditDialog.html#375c93b954436746caab26f1d2664811">slotReplyClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00083"></a>00083 <span class="keywordflow">default</span>:
+<a name="l00084"></a>00084 <span class="keywordflow">return</span> EditDlg::qt_invoke( _id, _o );
+<a name="l00085"></a>00085 }
+<a name="l00086"></a>00086 <span class="keywordflow">return</span> TRUE;
+<a name="l00087"></a>00087 }
+<a name="l00088"></a>00088
+<a name="l00089"></a>00089 <span class="keywordtype">bool</span> EditDialog::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00090"></a>00090 {
+<a name="l00091"></a>00091 <span class="keywordflow">return</span> EditDlg::qt_emit(_id,_o);
+<a name="l00092"></a>00092 }
+<a name="l00093"></a>00093 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00094"></a>00094 <span class="preprocessor"></span>
+<a name="l00095"></a>00095 <span class="keywordtype">bool</span> EditDialog::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00096"></a>00096 {
+<a name="l00097"></a>00097 <span class="keywordflow">return</span> EditDlg::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00098"></a>00098 }
+<a name="l00099"></a>00099
+<a name="l00100"></a>00100 <span class="keywordtype">bool</span> EditDialog::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00101"></a>00101 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:18 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/files.html b/doc/html/files.html
new file mode 100644
index 0000000..7df35ef
--- /dev/null
+++ b/doc/html/files.html
@@ -0,0 +1,120 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: File Index</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>kshowmail.kdevelop File List</h1>Here is a list of all files with brief descriptions:<table>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/<a class="el" href="config_8h.html">config.h</a> <a href="config_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="alertdialog_8cpp.html">alertdialog.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="alertdialog_8h.html">alertdialog.h</a> <a href="alertdialog_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="AlertDlg_8cpp.html">AlertDlg.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="AlertDlg_8h.html">AlertDlg.h</a> <a href="AlertDlg_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="configelem_8cpp.html">configelem.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="configelem_8h.html">configelem.h</a> <a href="configelem_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="configlist_8cpp.html">configlist.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="configlist_8h.html">configlist.h</a> <a href="configlist_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="constants_8h.html">constants.h</a> <a href="constants_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="decodeRFC2047_8cpp.html">decodeRFC2047.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="decodeRFC2047_8h.html">decodeRFC2047.h</a> <a href="decodeRFC2047_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="encryption_8cpp.html">encryption.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="encryption_8h.html">encryption.h</a> <a href="encryption_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filteritem_8cpp.html">filteritem.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filteritem_8h.html">filteritem.h</a> <a href="filteritem_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filteritemcriteria_8cpp.html">filteritemcriteria.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filteritemcriteria_8h.html">filteritemcriteria.h</a> <a href="filteritemcriteria_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filterlog_8cpp.html">filterlog.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filterlog_8h.html">filterlog.h</a> <a href="filterlog_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filterlogentry_8cpp.html">filterlogentry.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filterlogentry_8h.html">filterlogentry.h</a> <a href="filterlogentry_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filterlogview_8cpp.html">filterlogview.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filterlogview_8h.html">filterlogview.h</a> <a href="filterlogview_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filterlogviewdeleteditem_8cpp.html">filterlogviewdeleteditem.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filterlogviewdeleteditem_8h.html">filterlogviewdeleteditem.h</a> <a href="filterlogviewdeleteditem_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filterlogviewmoveditem_8cpp.html">filterlogviewmoveditem.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="filterlogviewmoveditem_8h.html">filterlogviewmoveditem.h</a> <a href="filterlogviewmoveditem_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="headerfilter_8cpp.html">headerfilter.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="headerfilter_8h.html">headerfilter.h</a> <a href="headerfilter_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmail_8cpp.html">kshowmail.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmail_8h.html">kshowmail.h</a> <a href="kshowmail_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmaildoc_8cpp.html">kshowmaildoc.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmaildoc_8h.html">kshowmaildoc.h</a> <a href="kshowmaildoc_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmaildock_8cpp.html">kshowmaildock.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmaildock_8h.html">kshowmaildock.h</a> <a href="kshowmaildock_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmailfeedback_8cpp.html">kshowmailfeedback.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmailview_8cpp.html">kshowmailview.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kshowmailview_8h.html">kshowmailview.h</a> <a href="kshowmailview_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kwalletaccess_8cpp.html">kwalletaccess.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="kwalletaccess_8h.html">kwalletaccess.h</a> <a href="kwalletaccess_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="main_8cpp.html">main.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="senderlistfilter_8cpp.html">senderlistfilter.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="senderlistfilter_8h.html">senderlistfilter.h</a> <a href="senderlistfilter_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="serverdialog_8cpp.html">serverdialog.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="serverdialog_8h.html">serverdialog.h</a> <a href="serverdialog_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showheaderdialog_8cpp.html">showheaderdialog.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showheaderdialog_8h.html">showheaderdialog.h</a> <a href="showheaderdialog_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showlistviewitem_8cpp.html">showlistviewitem.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showlistviewitem_8h.html">showlistviewitem.h</a> <a href="showlistviewitem_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showmaildialog_8cpp.html">showmaildialog.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showmaildialog_8h.html">showmaildialog.h</a> <a href="showmaildialog_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showrecord_8cpp.html">showrecord.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showrecord_8h.html">showrecord.h</a> <a href="showrecord_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showrecordelem_8cpp.html">showrecordelem.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="showrecordelem_8h.html">showrecordelem.h</a> <a href="showrecordelem_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="types_8h.html">types.h</a> <a href="types_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="uniqueapp_8cpp.html">uniqueapp.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/<a class="el" href="uniqueapp_8h.html">uniqueapp.h</a> <a href="uniqueapp_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="accountsetupdialog_8cpp.html">accountsetupdialog.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="accountsetupdialog_8h.html">accountsetupdialog.h</a> <a href="accountsetupdialog_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="accountsetupitem_8cpp.html">accountsetupitem.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="accountsetupitem_8h.html">accountsetupitem.h</a> <a href="accountsetupitem_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configaccounts_8cpp.html">configaccounts.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configaccounts_8h.html">configaccounts.h</a> <a href="configaccounts_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configactions_8cpp.html">configactions.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configactions_8h.html">configactions.h</a> <a href="configactions_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configdisplay_8cpp.html">configdisplay.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configdisplay_8h.html">configdisplay.h</a> <a href="configdisplay_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configfilter_8cpp.html">configfilter.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configfilter_8h.html">configfilter.h</a> <a href="configfilter_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configgeneral_8cpp.html">configgeneral.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configgeneral_8h.html">configgeneral.h</a> <a href="configgeneral_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configlog_8cpp.html">configlog.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configlog_8h.html">configlog.h</a> <a href="configlog_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configspamcheck_8cpp.html">configspamcheck.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="configspamcheck_8h.html">configspamcheck.h</a> <a href="configspamcheck_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="kcmconfigs_2encryption_8cpp.html">encryption.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="kcmconfigs_2encryption_8h.html">encryption.h</a> <a href="kcmconfigs_2encryption_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="filtercriteriawidget_8cpp.html">filtercriteriawidget.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="filtercriteriawidget_8h.html">filtercriteriawidget.h</a> <a href="filtercriteriawidget_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="filtersetupdialog_8cpp.html">filtersetupdialog.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="filtersetupdialog_8h.html">filtersetupdialog.h</a> <a href="filtersetupdialog_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="filtersetupitem_8cpp.html">filtersetupitem.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="filtersetupitem_8h.html">filtersetupitem.h</a> <a href="filtersetupitem_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="kcmconfigs_2kwalletaccess_8cpp.html">kwalletaccess.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="kcmconfigs_2kwalletaccess_8h.html">kwalletaccess.h</a> <a href="kcmconfigs_2kwalletaccess_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="mailboxwizard_8cpp.html">mailboxwizard.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="mailboxwizard_8h.html">mailboxwizard.h</a> <a href="mailboxwizard_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="mailboxwizardlistitem_8cpp.html">mailboxwizardlistitem.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="mailboxwizardlistitem_8h.html">mailboxwizardlistitem.h</a> <a href="mailboxwizardlistitem_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="senderlistdialog_8cpp.html">senderlistdialog.cpp</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey">Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kcmconfigs/<a class="el" href="senderlistdialog_8h.html">senderlistdialog.h</a> <a href="senderlistdialog_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+</table>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/filter_8cpp-source.html b/doc/html/filter_8cpp-source.html
new file mode 100644
index 0000000..7c24bc6
--- /dev/null
+++ b/doc/html/filter_8cpp-source.html
@@ -0,0 +1,76 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/filter.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>filter.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> filter.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Die Sep 23 2003</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2003 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include "filter.h"</span>
+<a name="l00019"></a>00019
+<a name="l00020"></a>00020 <a class="code" href="classFilterList.html">FilterList</a> <a class="code" href="classFilter.html#4d53518cda0abbbb6ca6badd97bb321a">Filter::_filter</a>;
+<a name="l00021"></a>00021 <a class="code" href="classFilter.html#829a8d1a39c82631bfa096afb6102a6a">Filter::filterStatus</a> <a class="code" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">Filter::_status</a> = Filter::off;
+<a name="l00022"></a>00022
+<a name="l00023"></a><a class="code" href="classFilter.html#d15994c30d497afd567a6445446a249e">00023</a> <a class="code" href="classFilter.html#d15994c30d497afd567a6445446a249e">Filter::Filter</a>()
+<a name="l00024"></a>00024 {
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a><a class="code" href="classFilter.html#502ee334d42eac3edbaf32b599f9c35e">00027</a> <a class="code" href="classFilter.html#502ee334d42eac3edbaf32b599f9c35e">Filter::~Filter</a>()
+<a name="l00028"></a>00028 {
+<a name="l00029"></a>00029 }
+<a name="l00030"></a>00030
+<a name="l00031"></a><a class="code" href="classFilter.html#1092aa06ff29a9c2adceadde9d4891f3">00031</a> <a class="code" href="classFilterElem.html">FilterElem</a>* <a class="code" href="classFilter.html#1092aa06ff29a9c2adceadde9d4891f3">Filter::matches</a> (<a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* pElem)
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">for</span> (<a class="code" href="classFilterElem.html">FilterElem</a>* pFilter = <a class="code" href="classFilter.html#4d53518cda0abbbb6ca6badd97bb321a">_filter</a>.first(); pFilter; pFilter = <a class="code" href="classFilter.html#4d53518cda0abbbb6ca6badd97bb321a">_filter</a>.next())
+<a name="l00034"></a>00034 {
+<a name="l00035"></a>00035 <span class="keywordflow">if</span> (pFilter-&gt;matches (pElem))
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> pFilter;
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="keywordflow">return</span> NULL;
+<a name="l00039"></a>00039 }
+<a name="l00040"></a>00040
+<a name="l00041"></a><a class="code" href="classFilter.html#8a623e7594c98dc82c711b1cf6c7ba3c">00041</a> <span class="keywordtype">void</span> <a class="code" href="classFilter.html#8a623e7594c98dc82c711b1cf6c7ba3c">Filter::readOptions</a> (KConfig* config)
+<a name="l00042"></a>00042 {
+<a name="l00043"></a>00043 config-&gt;setGroup (<span class="stringliteral">"filter_general"</span>);
+<a name="l00044"></a>00044 <a class="code" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">_status</a> = (<a class="code" href="classFilter.html#829a8d1a39c82631bfa096afb6102a6a">Filter::filterStatus</a>)config-&gt;readNumEntry(<span class="stringliteral">"status"</span>, 0);
+<a name="l00045"></a>00045 <a class="code" href="classFilter.html#4d53518cda0abbbb6ca6badd97bb321a">_filter</a>.<a class="code" href="classFilterList.html#edae5c6d93981d1f4cee91d333492497">readOptions</a>(config);
+<a name="l00046"></a>00046 }
+<a name="l00047"></a>00047
+<a name="l00048"></a><a class="code" href="classFilter.html#f7df8eed305a70107437c61ab6a328d6">00048</a> <span class="keywordtype">void</span> <a class="code" href="classFilter.html#f7df8eed305a70107437c61ab6a328d6">Filter::saveOptions</a> (KConfig* config)
+<a name="l00049"></a>00049 {
+<a name="l00050"></a>00050 config-&gt;setGroup (<span class="stringliteral">"filter_general"</span>);
+<a name="l00051"></a>00051 config-&gt;writeEntry (<span class="stringliteral">"status"</span>, <a class="code" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">_status</a>);
+<a name="l00052"></a>00052 <a class="code" href="classFilter.html#4d53518cda0abbbb6ca6badd97bb321a">_filter</a>.<a class="code" href="classFilterList.html#03c7e453e6d4cd54863d2ab38dad684c">saveOptions</a>(config);
+<a name="l00053"></a>00053 config-&gt;sync();
+<a name="l00054"></a>00054 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/filter_8h-source.html b/doc/html/filter_8h-source.html
new file mode 100644
index 0000000..cb1ed84
--- /dev/null
+++ b/doc/html/filter_8h-source.html
@@ -0,0 +1,66 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/filter.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>filter.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> filter.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Die Sep 23 2003</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2003 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef FILTER_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define FILTER_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;kconfig.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include "filterlist.h"</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include "filterelem.h"</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include "showrecordelem.h"</span>
+<a name="l00026"></a>00026
+<a name="l00030"></a>00030 <span class="keyword">class </span><a class="code" href="classShowRecordElem.html">ShowRecordElem</a>;
+<a name="l00031"></a>00031 <span class="keyword">class </span><a class="code" href="classFilterElem.html">FilterElem</a>;
+<a name="l00032"></a>00032 <span class="keyword">class </span><a class="code" href="classFilterList.html">FilterList</a>;
+<a name="l00033"></a>00033
+<a name="l00034"></a><a class="code" href="classFilter.html">00034</a> <span class="keyword">class </span><a class="code" href="classFilter.html">Filter</a> {
+<a name="l00035"></a>00035 <span class="keyword">private</span>:
+<a name="l00036"></a>00036 <a class="code" href="classFilter.html#d15994c30d497afd567a6445446a249e">Filter</a>();
+<a name="l00037"></a>00037 <a class="code" href="classFilter.html#502ee334d42eac3edbaf32b599f9c35e">~Filter</a>();
+<a name="l00038"></a>00038 <span class="keyword">public</span>:
+<a name="l00039"></a><a class="code" href="classFilter.html#829a8d1a39c82631bfa096afb6102a6a">00039</a> <span class="keyword">enum</span> <a class="code" href="classFilter.html#829a8d1a39c82631bfa096afb6102a6a">filterStatus</a> {off, on, automatic};
+<a name="l00040"></a>00040 <span class="keyword">static</span> <a class="code" href="classFilterElem.html">FilterElem</a>* <a class="code" href="classFilter.html#1092aa06ff29a9c2adceadde9d4891f3">matches</a> (<a class="code" href="classShowRecordElem.html">ShowRecordElem</a>*);
+<a name="l00041"></a><a class="code" href="classFilter.html#4d53518cda0abbbb6ca6badd97bb321a">00041</a> <span class="keyword">static</span> <a class="code" href="classFilterList.html">FilterList</a> <a class="code" href="classFilter.html#4d53518cda0abbbb6ca6badd97bb321a">_filter</a>;
+<a name="l00042"></a><a class="code" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">00042</a> <span class="keyword">static</span> <a class="code" href="classFilter.html#829a8d1a39c82631bfa096afb6102a6a">filterStatus</a> <a class="code" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">_status</a>;
+<a name="l00043"></a>00043 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classFilter.html#8a623e7594c98dc82c711b1cf6c7ba3c">readOptions</a> (KConfig* config);
+<a name="l00044"></a>00044 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classFilter.html#f7df8eed305a70107437c61ab6a328d6">saveOptions</a> (KConfig* config);
+<a name="l00045"></a>00045 };
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/filterdialog_8cpp-source.html b/doc/html/filterdialog_8cpp-source.html
new file mode 100644
index 0000000..daf1e0a
--- /dev/null
+++ b/doc/html/filterdialog_8cpp-source.html
@@ -0,0 +1,165 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/filterdialog.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>filterdialog.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> filterdialog.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Die Sep 23 2003</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2003 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qradiobutton.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qcombobox.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;kmessagebox.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00023"></a>00023
+<a name="l00024"></a>00024 <span class="preprocessor">#include "filterdialog.h"</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include "filterentrydialog.h"</span>
+<a name="l00026"></a>00026
+<a name="l00027"></a><a class="code" href="classFilterDialog.html#b18a98f30157bf485fba9af7cc2084e9">00027</a> <a class="code" href="classFilterDialog.html#b18a98f30157bf485fba9af7cc2084e9">FilterDialog::FilterDialog</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name ) :
+<a name="l00028"></a>00028 <a class="code" href="classFilterDlg.html">FilterDlg</a>(parent,name)
+<a name="l00029"></a>00029 {
+<a name="l00030"></a>00030 <span class="keywordflow">switch</span> (<a class="code" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">Filter::_status</a>)
+<a name="l00031"></a>00031 {
+<a name="l00032"></a>00032 <span class="keywordflow">case</span> Filter::off:
+<a name="l00033"></a>00033 <a class="code" href="classFilterDlg.html#581adf266ac543c6859522ebb4c01378">_radioOff</a>-&gt;setChecked(<span class="keyword">true</span>);
+<a name="l00034"></a>00034 <span class="keywordflow">break</span>;
+<a name="l00035"></a>00035 <span class="keywordflow">case</span> Filter::on:
+<a name="l00036"></a>00036 <a class="code" href="classFilterDlg.html#9c5bb9702a4cc705de623898e3328e76">_radioOn</a>-&gt;setChecked(<span class="keyword">true</span>);
+<a name="l00037"></a>00037 <span class="keywordflow">break</span>;
+<a name="l00038"></a>00038 <span class="keywordflow">case</span> Filter::automatic:
+<a name="l00039"></a>00039 <a class="code" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">_radioAuto</a>-&gt;setChecked(<span class="keyword">true</span>);
+<a name="l00040"></a>00040 <span class="keywordflow">break</span>;
+<a name="l00041"></a>00041 }
+<a name="l00042"></a>00042 <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a> = <a class="code" href="classFilter.html#4d53518cda0abbbb6ca6badd97bb321a">Filter::_filter</a>;
+<a name="l00043"></a>00043 <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.<a class="code" href="classFilterList.html#ad9f3ddd25a111eaacf9b688e4f619ad">setCombo</a>(<a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>, 0);
+<a name="l00044"></a>00044 }
+<a name="l00045"></a>00045
+<a name="l00046"></a><a class="code" href="classFilterDialog.html#021f1e42fa83fd2914aace2b3fcbcf62">00046</a> <a class="code" href="classFilterDialog.html#021f1e42fa83fd2914aace2b3fcbcf62">FilterDialog::~FilterDialog</a>()
+<a name="l00047"></a>00047 {
+<a name="l00048"></a>00048 }
+<a name="l00049"></a>00049
+<a name="l00050"></a><a class="code" href="classFilterDialog.html#caeb4cc7992b9859693fe1d00e657b7d">00050</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#caeb4cc7992b9859693fe1d00e657b7d">FilterDialog::slotFilterActivated</a> (<span class="keywordtype">int</span> index)
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.at (index);
+<a name="l00053"></a>00053 }
+<a name="l00054"></a>00054
+<a name="l00055"></a><a class="code" href="classFilterDialog.html#835b1d2b6e96708721781caf207332da">00055</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#835b1d2b6e96708721781caf207332da">FilterDialog::slotAdd</a> ()
+<a name="l00056"></a>00056 {
+<a name="l00057"></a>00057 <a class="code" href="classFilterElem.html">FilterElem</a>* entry = <span class="keyword">new</span> <a class="code" href="classFilterElem.html">FilterElem</a> ();
+<a name="l00058"></a>00058 <a class="code" href="classFilterEntryDialog.html">FilterEntryDialog</a> dlg (<span class="keyword">this</span>, <span class="stringliteral">"New filter"</span>, entry);
+<a name="l00059"></a>00059 <span class="keywordflow">if</span> (dlg.exec () == QDialog::Accepted)
+<a name="l00060"></a>00060 {
+<a name="l00061"></a>00061 <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.inSort (entry);
+<a name="l00062"></a>00062 <span class="keywordtype">int</span> pos = <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.at ();
+<a name="l00063"></a>00063 <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.<a class="code" href="classFilterList.html#ad9f3ddd25a111eaacf9b688e4f619ad">setCombo</a>(<a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>, pos);
+<a name="l00064"></a>00064 }
+<a name="l00065"></a>00065 <span class="keywordflow">else</span>
+<a name="l00066"></a>00066 <span class="keyword">delete</span> entry;
+<a name="l00067"></a>00067 }
+<a name="l00068"></a>00068
+<a name="l00069"></a><a class="code" href="classFilterDialog.html#157304d8ac83796d8e6099575995a417">00069</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#157304d8ac83796d8e6099575995a417">FilterDialog::slotEdit</a> ()
+<a name="l00070"></a>00070 {
+<a name="l00071"></a>00071 <span class="keywordflow">if</span> (<a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.current ())
+<a name="l00072"></a>00072 {
+<a name="l00073"></a>00073 <a class="code" href="classFilterEntryDialog.html">FilterEntryDialog</a> dlg (<span class="keyword">this</span>, <span class="stringliteral">"Edit command"</span>, <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.current ());
+<a name="l00074"></a>00074 <span class="keywordflow">if</span> (dlg.exec () == QDialog::Accepted)
+<a name="l00075"></a>00075 {
+<a name="l00076"></a>00076 <span class="comment">// the command name may have changed. Update the combo box.</span>
+<a name="l00077"></a>00077 <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.sort();
+<a name="l00078"></a>00078 <span class="keywordtype">int</span> pos = <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.at ();
+<a name="l00079"></a>00079 <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.<a class="code" href="classFilterList.html#ad9f3ddd25a111eaacf9b688e4f619ad">setCombo</a>(<a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>, pos);
+<a name="l00080"></a>00080 }
+<a name="l00081"></a>00081 }
+<a name="l00082"></a>00082 }
+<a name="l00083"></a>00083
+<a name="l00084"></a><a class="code" href="classFilterDialog.html#48fa2c908dad65fe5cb851a8b0384af8">00084</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#48fa2c908dad65fe5cb851a8b0384af8">FilterDialog::slotCopy</a> ()
+<a name="l00085"></a>00085 {
+<a name="l00086"></a>00086 <span class="keywordflow">if</span> (<a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.current ())
+<a name="l00087"></a>00087 {
+<a name="l00088"></a>00088 <a class="code" href="classFilterElem.html">FilterElem</a>* entry = <span class="keyword">new</span> <a class="code" href="classFilterElem.html">FilterElem</a> (*<a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.current ());
+<a name="l00089"></a>00089 <a class="code" href="classFilterEntryDialog.html">FilterEntryDialog</a> dlg (<span class="keyword">this</span>, <span class="stringliteral">"Copy command"</span>, entry);
+<a name="l00090"></a>00090 <span class="keywordflow">if</span> (dlg.exec () == QDialog::Accepted)
+<a name="l00091"></a>00091 {
+<a name="l00092"></a>00092 <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.inSort (entry);
+<a name="l00093"></a>00093 <span class="keywordtype">int</span> pos = <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.at ();
+<a name="l00094"></a>00094 <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.<a class="code" href="classFilterList.html#ad9f3ddd25a111eaacf9b688e4f619ad">setCombo</a>(<a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>, pos);
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096 <span class="keywordflow">else</span>
+<a name="l00097"></a>00097 <span class="keyword">delete</span> entry;
+<a name="l00098"></a>00098 }
+<a name="l00099"></a>00099 }
+<a name="l00100"></a>00100
+<a name="l00101"></a><a class="code" href="classFilterDialog.html#304365c7bed8c9311cd9d0fcb956f9e2">00101</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#304365c7bed8c9311cd9d0fcb956f9e2">FilterDialog::slotDelete</a> ()
+<a name="l00102"></a>00102 {
+<a name="l00103"></a>00103 <span class="keywordflow">if</span> (<a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.current())
+<a name="l00104"></a>00104 {
+<a name="l00105"></a>00105 <span class="keywordflow">if</span> (KMessageBox::warningYesNo (<span class="keyword">this</span>, i18n(<span class="stringliteral">"Filter %1 will be deleted.\n"</span>
+<a name="l00106"></a>00106 <span class="stringliteral">"Are you sure ?"</span>).arg(<a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.current()-&gt;toString())) == KMessageBox::Yes)
+<a name="l00107"></a>00107 {
+<a name="l00108"></a>00108 <span class="keywordtype">int</span> pos = <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.at ();
+<a name="l00109"></a>00109 <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.remove (pos);
+<a name="l00110"></a>00110 <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>.<a class="code" href="classFilterList.html#ad9f3ddd25a111eaacf9b688e4f619ad">setCombo</a>(<a class="code" href="classFilterDlg.html#8d14bf57a0a9a0fd6b9993a2e70010de">_comboFilter</a>, pos);
+<a name="l00111"></a>00111 }
+<a name="l00112"></a>00112 }
+<a name="l00113"></a>00113 }
+<a name="l00114"></a>00114
+<a name="l00115"></a><a class="code" href="classFilterDialog.html#037dd38c75aa6a5db083dab42bc9a0b4">00115</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#037dd38c75aa6a5db083dab42bc9a0b4">FilterDialog::slotOk</a> ()
+<a name="l00116"></a>00116 {
+<a name="l00117"></a>00117 <span class="keywordflow">if</span> (<a class="code" href="classFilterDlg.html#581adf266ac543c6859522ebb4c01378">_radioOff</a>-&gt;isChecked())
+<a name="l00118"></a>00118 <a class="code" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">Filter::_status</a> = Filter::off;
+<a name="l00119"></a>00119 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classFilterDlg.html#9c5bb9702a4cc705de623898e3328e76">_radioOn</a>-&gt;isChecked())
+<a name="l00120"></a>00120 <a class="code" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">Filter::_status</a> = Filter::on;
+<a name="l00121"></a>00121 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">_radioAuto</a>-&gt;isChecked())
+<a name="l00122"></a>00122 <a class="code" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">Filter::_status</a> = Filter::automatic;
+<a name="l00123"></a>00123 <span class="keywordflow">else</span>
+<a name="l00124"></a>00124 <a class="code" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">Filter::_status</a> = Filter::off;
+<a name="l00125"></a>00125
+<a name="l00126"></a>00126 <a class="code" href="classFilter.html#4d53518cda0abbbb6ca6badd97bb321a">Filter::_filter</a> = <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>;
+<a name="l00127"></a>00127 accept ();
+<a name="l00128"></a>00128 }
+<a name="l00129"></a>00129
+<a name="l00130"></a><a class="code" href="classFilterDialog.html#ffc657f27a12b95497e85f59bdcbaa4e">00130</a> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#ffc657f27a12b95497e85f59bdcbaa4e">FilterDialog::slotAutomaticActivated</a> ()
+<a name="l00131"></a>00131 {
+<a name="l00132"></a>00132 <span class="keywordflow">if</span> (<a class="code" href="classFilterDlg.html#8abe86382756a03f58267a0b98bb975a">_radioAuto</a>-&gt;isChecked())
+<a name="l00133"></a>00133 {
+<a name="l00134"></a>00134 <span class="keywordflow">if</span> (KMessageBox::warningContinueCancel (<span class="keyword">this</span>, i18n(<span class="stringliteral">"Automatic filters can cause loss of important mails.\n"</span>
+<a name="l00135"></a>00135 <span class="stringliteral">"Please test your filters.\n"</span>
+<a name="l00136"></a>00136 <span class="stringliteral">"Are you sure ?"</span>),
+<a name="l00137"></a>00137 QString::null,
+<a name="l00138"></a>00138 KStdGuiItem::cont(),
+<a name="l00139"></a>00139 <span class="stringliteral">"autofilteraskagain"</span>) == KMessageBox::Cancel)
+<a name="l00140"></a>00140 <a class="code" href="classFilterDlg.html#9c5bb9702a4cc705de623898e3328e76">_radioOn</a>-&gt;setChecked (<span class="keyword">true</span>);
+<a name="l00141"></a>00141 }
+<a name="l00142"></a>00142 }
+<a name="l00143"></a>00143
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/filterdialog_8h-source.html b/doc/html/filterdialog_8h-source.html
new file mode 100644
index 0000000..fae4c33
--- /dev/null
+++ b/doc/html/filterdialog_8h-source.html
@@ -0,0 +1,66 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/filterdialog.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>filterdialog.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> filterdialog.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Die Sep 23 2003</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2003 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef FILTERDIALOG_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define FILTERDIALOG_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qwidget.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "filter.h"</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include "FilterDlg.h"</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include "filterlist.h"</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include "filterelem.h"</span>
+<a name="l00026"></a>00026
+<a name="l00031"></a><a class="code" href="classFilterDialog.html">00031</a> <span class="keyword">class </span><a class="code" href="classFilterDialog.html">FilterDialog</a> : <span class="keyword">public</span> <a class="code" href="classFilterDlg.html">FilterDlg</a> {
+<a name="l00032"></a>00032 Q_OBJECT
+<a name="l00033"></a>00033 <span class="keyword">public</span>:
+<a name="l00034"></a>00034 <a class="code" href="classFilterDialog.html#b18a98f30157bf485fba9af7cc2084e9">FilterDialog</a>(QWidget *parent=0, <span class="keyword">const</span> <span class="keywordtype">char</span> *name=0);
+<a name="l00035"></a>00035 <a class="code" href="classFilterDialog.html#021f1e42fa83fd2914aace2b3fcbcf62">~FilterDialog</a>();
+<a name="l00036"></a>00036 <span class="keyword">public</span> slots:
+<a name="l00037"></a>00037 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#835b1d2b6e96708721781caf207332da">slotAdd</a> ();
+<a name="l00038"></a>00038 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#157304d8ac83796d8e6099575995a417">slotEdit</a> ();
+<a name="l00039"></a>00039 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#48fa2c908dad65fe5cb851a8b0384af8">slotCopy</a>();
+<a name="l00040"></a>00040 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#304365c7bed8c9311cd9d0fcb956f9e2">slotDelete</a> ();
+<a name="l00041"></a>00041 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#037dd38c75aa6a5db083dab42bc9a0b4">slotOk</a> ();
+<a name="l00042"></a>00042 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#caeb4cc7992b9859693fe1d00e657b7d">slotFilterActivated</a> (<span class="keywordtype">int</span>);
+<a name="l00043"></a>00043 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterDialog.html#ffc657f27a12b95497e85f59bdcbaa4e">slotAutomaticActivated</a> ();
+<a name="l00044"></a>00044 <span class="keyword">private</span>:
+<a name="l00045"></a><a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">00045</a> <a class="code" href="classFilterList.html">FilterList</a> <a class="code" href="classFilterDialog.html#f51f93ed33359ba108e81e98ca68ce9f">_filters</a>;
+<a name="l00046"></a>00046 };
+<a name="l00047"></a>00047
+<a name="l00048"></a>00048 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/filterdialog_8moc_8cpp-source.html b/doc/html/filterdialog_8moc_8cpp-source.html
new file mode 100644
index 0000000..7b8487f
--- /dev/null
+++ b/doc/html/filterdialog_8moc_8cpp-source.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/filterdialog.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>filterdialog.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** FilterDialog meta object code from reading C++ file 'filterdialog.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Fri Jun 29 22:09:04 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: filterdialog_8moc_8cpp-source.html,v 1.10 2007/07/05 17:37:50 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "filterdialog.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *FilterDialog::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"FilterDialog"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *FilterDialog::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_FilterDialog( <span class="stringliteral">"FilterDialog"</span>, &amp;FilterDialog::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString FilterDialog::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"FilterDialog"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString FilterDialog::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"FilterDialog"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* FilterDialog::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = FilterDlg::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotAdd"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotEdit"</span>, 0, 0 };
+<a name="l00057"></a>00057 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_2 = {<span class="stringliteral">"slotCopy"</span>, 0, 0 };
+<a name="l00058"></a>00058 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_3 = {<span class="stringliteral">"slotDelete"</span>, 0, 0 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_4 = {<span class="stringliteral">"slotOk"</span>, 0, 0 };
+<a name="l00060"></a>00060 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_5[] = {
+<a name="l00061"></a>00061 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00062"></a>00062 };
+<a name="l00063"></a>00063 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_5 = {<span class="stringliteral">"slotFilterActivated"</span>, 1, param_slot_5 };
+<a name="l00064"></a>00064 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_6 = {<span class="stringliteral">"slotAutomaticActivated"</span>, 0, 0 };
+<a name="l00065"></a>00065 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00066"></a>00066 { <span class="stringliteral">"slotAdd()"</span>, &amp;slot_0, QMetaData::Public },
+<a name="l00067"></a>00067 { <span class="stringliteral">"slotEdit()"</span>, &amp;slot_1, QMetaData::Public },
+<a name="l00068"></a>00068 { <span class="stringliteral">"slotCopy()"</span>, &amp;slot_2, QMetaData::Public },
+<a name="l00069"></a>00069 { <span class="stringliteral">"slotDelete()"</span>, &amp;slot_3, QMetaData::Public },
+<a name="l00070"></a>00070 { <span class="stringliteral">"slotOk()"</span>, &amp;slot_4, QMetaData::Public },
+<a name="l00071"></a>00071 { <span class="stringliteral">"slotFilterActivated(int)"</span>, &amp;slot_5, QMetaData::Public },
+<a name="l00072"></a>00072 { <span class="stringliteral">"slotAutomaticActivated()"</span>, &amp;slot_6, QMetaData::Public }
+<a name="l00073"></a>00073 };
+<a name="l00074"></a>00074 metaObj = QMetaObject::new_metaobject(
+<a name="l00075"></a>00075 <span class="stringliteral">"FilterDialog"</span>, parentObject,
+<a name="l00076"></a>00076 slot_tbl, 7,
+<a name="l00077"></a>00077 0, 0,
+<a name="l00078"></a>00078 #ifndef QT_NO_PROPERTIES
+<a name="l00079"></a>00079 0, 0,
+<a name="l00080"></a>00080 0, 0,
+<a name="l00081"></a>00081 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00082"></a>00082 0, 0 );
+<a name="l00083"></a>00083 cleanUp_FilterDialog.setMetaObject( metaObj );
+<a name="l00084"></a>00084 <span class="keywordflow">return</span> metaObj;
+<a name="l00085"></a>00085 }
+<a name="l00086"></a>00086
+<a name="l00087"></a>00087 <span class="keywordtype">void</span>* FilterDialog::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00088"></a>00088 {
+<a name="l00089"></a>00089 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"FilterDialog"</span> ) )
+<a name="l00090"></a>00090 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00091"></a>00091 <span class="keywordflow">return</span> FilterDlg::qt_cast( clname );
+<a name="l00092"></a>00092 }
+<a name="l00093"></a>00093
+<a name="l00094"></a>00094 <span class="keywordtype">bool</span> FilterDialog::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00095"></a>00095 {
+<a name="l00096"></a>00096 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00097"></a>00097 <span class="keywordflow">case</span> 0: <a class="code" href="classFilterDialog.html#835b1d2b6e96708721781caf207332da">slotAdd</a>(); <span class="keywordflow">break</span>;
+<a name="l00098"></a>00098 <span class="keywordflow">case</span> 1: <a class="code" href="classFilterDialog.html#157304d8ac83796d8e6099575995a417">slotEdit</a>(); <span class="keywordflow">break</span>;
+<a name="l00099"></a>00099 <span class="keywordflow">case</span> 2: <a class="code" href="classFilterDialog.html#48fa2c908dad65fe5cb851a8b0384af8">slotCopy</a>(); <span class="keywordflow">break</span>;
+<a name="l00100"></a>00100 <span class="keywordflow">case</span> 3: <a class="code" href="classFilterDialog.html#304365c7bed8c9311cd9d0fcb956f9e2">slotDelete</a>(); <span class="keywordflow">break</span>;
+<a name="l00101"></a>00101 <span class="keywordflow">case</span> 4: <a class="code" href="classFilterDialog.html#037dd38c75aa6a5db083dab42bc9a0b4">slotOk</a>(); <span class="keywordflow">break</span>;
+<a name="l00102"></a>00102 <span class="keywordflow">case</span> 5: <a class="code" href="classFilterDialog.html#caeb4cc7992b9859693fe1d00e657b7d">slotFilterActivated</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00103"></a>00103 <span class="keywordflow">case</span> 6: <a class="code" href="classFilterDialog.html#ffc657f27a12b95497e85f59bdcbaa4e">slotAutomaticActivated</a>(); <span class="keywordflow">break</span>;
+<a name="l00104"></a>00104 <span class="keywordflow">default</span>:
+<a name="l00105"></a>00105 <span class="keywordflow">return</span> FilterDlg::qt_invoke( _id, _o );
+<a name="l00106"></a>00106 }
+<a name="l00107"></a>00107 <span class="keywordflow">return</span> TRUE;
+<a name="l00108"></a>00108 }
+<a name="l00109"></a>00109
+<a name="l00110"></a>00110 <span class="keywordtype">bool</span> FilterDialog::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00111"></a>00111 {
+<a name="l00112"></a>00112 <span class="keywordflow">return</span> FilterDlg::qt_emit(_id,_o);
+<a name="l00113"></a>00113 }
+<a name="l00114"></a>00114 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00115"></a>00115 <span class="preprocessor"></span>
+<a name="l00116"></a>00116 <span class="keywordtype">bool</span> FilterDialog::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00117"></a>00117 {
+<a name="l00118"></a>00118 <span class="keywordflow">return</span> FilterDlg::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00119"></a>00119 }
+<a name="l00120"></a>00120
+<a name="l00121"></a>00121 <span class="keywordtype">bool</span> FilterDialog::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00122"></a>00122 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/filterelem_8cpp-source.html b/doc/html/filterelem_8cpp-source.html
new file mode 100644
index 0000000..f1d16f9
--- /dev/null
+++ b/doc/html/filterelem_8cpp-source.html
@@ -0,0 +1,324 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/filterelem.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>filterelem.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> filterelem.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Die Sep 23 2003</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2003 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qregexp.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include "filterelem.h"</span>
+<a name="l00022"></a>00022
+<a name="l00023"></a><a class="code" href="classFilterRecord.html#21d096b6ce737e5550e3d767fa6d2ae3">00023</a> <a class="code" href="classFilterRecord.html#21d096b6ce737e5550e3d767fa6d2ae3">FilterRecord::FilterRecord</a> ():
+<a name="l00024"></a>00024 _type (from), _expression (contains), _CaseSensitive (false), _RegExp (false)
+<a name="l00025"></a>00025 {}
+<a name="l00026"></a>00026
+<a name="l00027"></a><a class="code" href="classFilterRecord.html#3829e87c1a6e284017cd2e1f4434a76a">00027</a> <a class="code" href="classFilterRecord.html#21d096b6ce737e5550e3d767fa6d2ae3">FilterRecord::FilterRecord</a> (<a class="code" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">filterType</a> type, <a class="code" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">expressionType</a> expression, <span class="keyword">const</span> QString&amp; match, <span class="keywordtype">bool</span> caseSensitive, <span class="keywordtype">bool</span> regExp):
+<a name="l00028"></a>00028 _type (type),
+<a name="l00029"></a>00029 _expression (expression),
+<a name="l00030"></a>00030 _match (match),
+<a name="l00031"></a>00031 _CaseSensitive (caseSensitive),
+<a name="l00032"></a>00032 _RegExp (regExp)
+<a name="l00033"></a>00033 {}
+<a name="l00034"></a>00034
+<a name="l00035"></a><a class="code" href="classFilterRecord.html#aad8e6b767fbcc3f9c214ca1be7db853">00035</a> QString <a class="code" href="classFilterRecord.html#aad8e6b767fbcc3f9c214ca1be7db853">FilterRecord::toString</a> ()<span class="keyword"> const</span>
+<a name="l00036"></a>00036 <span class="keyword"></span>{
+<a name="l00037"></a>00037 QString name;
+<a name="l00038"></a>00038 <span class="keywordflow">switch</span> (<a class="code" href="classFilterRecord.html#a9ca58948529c51e27397ef9b105c6d2">_type</a>)
+<a name="l00039"></a>00039 {
+<a name="l00040"></a>00040 <span class="keywordflow">case</span> from:
+<a name="l00041"></a>00041 name += i18n (<span class="stringliteral">"From"</span>);
+<a name="l00042"></a>00042 <span class="keywordflow">break</span>;
+<a name="l00043"></a>00043 <span class="keywordflow">case</span> subject:
+<a name="l00044"></a>00044 name += i18n (<span class="stringliteral">"Subject"</span>);
+<a name="l00045"></a>00045 <span class="keywordflow">break</span>;
+<a name="l00046"></a>00046 <span class="keywordflow">case</span> header:
+<a name="l00047"></a>00047 name += i18n (<span class="stringliteral">"Header"</span>);
+<a name="l00048"></a>00048 <span class="keywordflow">break</span>;
+<a name="l00049"></a>00049 <span class="keywordflow">case</span> size:
+<a name="l00050"></a>00050 name += i18n (<span class="stringliteral">"Size"</span>);
+<a name="l00051"></a>00051 <span class="keywordflow">break</span>;
+<a name="l00052"></a>00052 <span class="keywordflow">case</span> to:
+<a name="l00053"></a>00053 name += i18n (<span class="stringliteral">"To"</span>);
+<a name="l00054"></a>00054 <span class="keywordflow">break</span>;
+<a name="l00055"></a>00055 }
+<a name="l00056"></a>00056 name += <span class="stringliteral">" "</span>;
+<a name="l00057"></a>00057 <span class="keywordflow">switch</span> (<a class="code" href="classFilterRecord.html#1ec80257bc94ce8fdcbbb2d5de64f612">_expression</a>)
+<a name="l00058"></a>00058 {
+<a name="l00059"></a>00059 <span class="keywordflow">case</span> contains:
+<a name="l00060"></a>00060 name += i18n (<span class="stringliteral">"Contains"</span>);
+<a name="l00061"></a>00061 <span class="keywordflow">break</span>;
+<a name="l00062"></a>00062 <span class="keywordflow">case</span> contains_not:
+<a name="l00063"></a>00063 name += i18n (<span class="stringliteral">"Doesn't contain"</span>);
+<a name="l00064"></a>00064 <span class="keywordflow">break</span>;
+<a name="l00065"></a>00065 <span class="keywordflow">case</span> equals:
+<a name="l00066"></a>00066 name += i18n (<span class="stringliteral">"Equals"</span>);
+<a name="l00067"></a>00067 <span class="keywordflow">break</span>;
+<a name="l00068"></a>00068 <span class="keywordflow">case</span> equals_not:
+<a name="l00069"></a>00069 name += i18n (<span class="stringliteral">"Doesn't equal"</span>);
+<a name="l00070"></a>00070 <span class="keywordflow">break</span>;
+<a name="l00071"></a>00071 <span class="keywordflow">case</span> greater:
+<a name="l00072"></a>00072 name += i18n (<span class="stringliteral">"Greater"</span>);
+<a name="l00073"></a>00073 <span class="keywordflow">break</span>;
+<a name="l00074"></a>00074 <span class="keywordflow">case</span> less:
+<a name="l00075"></a>00075 name += i18n (<span class="stringliteral">"Less"</span>);
+<a name="l00076"></a>00076 <span class="keywordflow">break</span>;
+<a name="l00077"></a>00077 }
+<a name="l00078"></a>00078 name += <span class="stringliteral">" "</span>;
+<a name="l00079"></a>00079 name += <a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>;
+<a name="l00080"></a>00080 <span class="keywordflow">return</span> name;
+<a name="l00081"></a>00081 }
+<a name="l00082"></a>00082
+<a name="l00083"></a><a class="code" href="classFilterElem.html#698d996b7fd2b6df65b49be93f43d1e6">00083</a> <a class="code" href="classFilterElem.html#698d996b7fd2b6df65b49be93f43d1e6">FilterElem::FilterElem</a>():
+<a name="l00084"></a>00084 _secondCondition (noSecondCondition),
+<a name="l00085"></a>00085 _counter (0)
+<a name="l00086"></a>00086 {
+<a name="l00087"></a>00087 }
+<a name="l00088"></a>00088
+<a name="l00089"></a><a class="code" href="classFilterElem.html#de53fe769758b2eba5c053de670ef14f">00089</a> <a class="code" href="classFilterElem.html#698d996b7fd2b6df65b49be93f43d1e6">FilterElem::FilterElem</a> (<span class="keyword">const</span> <a class="code" href="classFilterRecord.html">FilterRecord</a>&amp; record):
+<a name="l00090"></a>00090 _filter1 (record), _secondCondition (noSecondCondition), _counter (0)
+<a name="l00091"></a>00091 {
+<a name="l00092"></a>00092 }
+<a name="l00093"></a>00093
+<a name="l00094"></a><a class="code" href="classFilterElem.html#95c8db56c3e637ae4b68fa9aa27bdbb3">00094</a> <a class="code" href="classFilterElem.html#698d996b7fd2b6df65b49be93f43d1e6">FilterElem::FilterElem</a> (<span class="keyword">const</span> <a class="code" href="classFilterElem.html">FilterElem</a>&amp; elem):
+<a name="l00095"></a>00095 _filter1 (elem._filter1),
+<a name="l00096"></a>00096 _filter2 (elem._filter2),
+<a name="l00097"></a>00097 _secondCondition (elem._secondCondition),
+<a name="l00098"></a>00098 _counter (elem._counter)
+<a name="l00099"></a>00099 {
+<a name="l00100"></a>00100 }
+<a name="l00101"></a>00101
+<a name="l00102"></a><a class="code" href="classFilterElem.html#c0bb85bbedfcb29b44f6146d7ebf34ec">00102</a> <a class="code" href="classFilterElem.html#c0bb85bbedfcb29b44f6146d7ebf34ec">FilterElem::~FilterElem</a>()
+<a name="l00103"></a>00103 {
+<a name="l00104"></a>00104 }
+<a name="l00105"></a>00105
+<a name="l00106"></a><a class="code" href="classFilterElem.html#e8ee6b5b370ed5c092e43f7090c0d75f">00106</a> <span class="keywordtype">void</span> <a class="code" href="classFilterElem.html#e8ee6b5b370ed5c092e43f7090c0d75f">FilterElem::setSecondCondition</a> (<a class="code" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">secondCondition</a> scnd, <span class="keyword">const</span> <a class="code" href="classFilterRecord.html">FilterRecord</a>&amp; filter)
+<a name="l00107"></a>00107 {
+<a name="l00108"></a>00108 <a class="code" href="classFilterElem.html#91c7d695c13e14fd53b74f01ed082679">_secondCondition</a> = scnd;
+<a name="l00109"></a>00109 <a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a> = filter;
+<a name="l00110"></a>00110 }
+<a name="l00111"></a>00111
+<a name="l00112"></a><a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">00112</a> QString <a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">FilterElem::toString</a> ()<span class="keyword"> const</span>
+<a name="l00113"></a>00113 <span class="keyword"></span>{
+<a name="l00114"></a>00114 QString name;
+<a name="l00115"></a>00115 name.sprintf (<span class="stringliteral">"%06d_"</span>, <a class="code" href="classFilterElem.html#2e417fd43d30ac8ce2d417f818b37a42">_counter</a>);
+<a name="l00116"></a>00116 name += <a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#aad8e6b767fbcc3f9c214ca1be7db853">toString</a>();
+<a name="l00117"></a>00117 <span class="keywordflow">if</span> (<a class="code" href="classFilterElem.html#91c7d695c13e14fd53b74f01ed082679">_secondCondition</a> != FilterElem::noSecondCondition)
+<a name="l00118"></a>00118 {
+<a name="l00119"></a>00119 name += <span class="stringliteral">" "</span>;
+<a name="l00120"></a>00120 <span class="keywordflow">switch</span> (<a class="code" href="classFilterElem.html#91c7d695c13e14fd53b74f01ed082679">_secondCondition</a>)
+<a name="l00121"></a>00121 {
+<a name="l00122"></a>00122 <span class="keywordflow">case</span> condAnd:
+<a name="l00123"></a>00123 name += i18n (<span class="stringliteral">"And"</span>);
+<a name="l00124"></a>00124 <span class="keywordflow">break</span>;
+<a name="l00125"></a>00125 <span class="keywordflow">case</span> condOr:
+<a name="l00126"></a>00126 name += i18n (<span class="stringliteral">"Or"</span>);
+<a name="l00127"></a>00127 <span class="keywordflow">break</span>;
+<a name="l00128"></a>00128 <span class="keywordflow">default</span>:
+<a name="l00129"></a>00129 <span class="keywordflow">break</span>;
+<a name="l00130"></a>00130 }
+<a name="l00131"></a>00131 name += <span class="stringliteral">" "</span> + <a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#aad8e6b767fbcc3f9c214ca1be7db853">toString</a>();
+<a name="l00132"></a>00132 }
+<a name="l00133"></a>00133 <span class="keywordflow">return</span> name;
+<a name="l00134"></a>00134 }
+<a name="l00135"></a>00135
+<a name="l00136"></a><a class="code" href="classFilterRecord.html#ce4bf661b49a342242d9c2bd578720c3">00136</a> <span class="keywordtype">bool</span> <a class="code" href="classFilterRecord.html#ce4bf661b49a342242d9c2bd578720c3">FilterRecord::matches</a> (<a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* pElem)
+<a name="l00137"></a>00137 {
+<a name="l00138"></a>00138 QString text;
+<a name="l00139"></a>00139 <span class="keywordtype">int</span> msgsize = 0;
+<a name="l00140"></a>00140 <span class="keywordflow">switch</span> (<a class="code" href="classFilterRecord.html#a9ca58948529c51e27397ef9b105c6d2">_type</a>)
+<a name="l00141"></a>00141 {
+<a name="l00142"></a>00142 <span class="keywordflow">case</span> subject:
+<a name="l00143"></a>00143 text = pElem-&gt;<a class="code" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">subject</a>();
+<a name="l00144"></a>00144 <span class="keywordflow">break</span>;
+<a name="l00145"></a>00145 <span class="keywordflow">case</span> from:
+<a name="l00146"></a>00146 text = pElem-&gt;<a class="code" href="classShowRecordElem.html#a4d48b3072adb4f87f56ed2b5e35dbba">from</a>();
+<a name="l00147"></a>00147 <span class="keywordflow">break</span>;
+<a name="l00148"></a>00148 <span class="keywordflow">case</span> to:
+<a name="l00149"></a>00149 text = pElem-&gt;<a class="code" href="classShowRecordElem.html#759a16f3424defc71b4cfd762b156fd1">to</a>();
+<a name="l00150"></a>00150 <span class="keywordflow">break</span>;
+<a name="l00151"></a>00151 <span class="keywordflow">case</span> header:
+<a name="l00152"></a>00152 text = pElem-&gt;<a class="code" href="classShowRecordElem.html#dd5d842c1abdd13fa03ac4a3f2f11150">header</a>();
+<a name="l00153"></a>00153 <span class="keywordflow">break</span>;
+<a name="l00154"></a>00154 <span class="keywordflow">case</span> size:
+<a name="l00155"></a>00155 {
+<a name="l00156"></a>00156 msgsize = pElem-&gt;<a class="code" href="classShowRecordElem.html#4b4077ca5d47226ccb44b6d8373a4fbd">size</a>();
+<a name="l00157"></a>00157 <span class="keywordtype">int</span> value = <a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>.toInt();
+<a name="l00158"></a>00158 <span class="keywordflow">switch</span> (<a class="code" href="classFilterRecord.html#1ec80257bc94ce8fdcbbb2d5de64f612">_expression</a>)
+<a name="l00159"></a>00159 {
+<a name="l00160"></a>00160 <span class="keywordflow">case</span> equals:
+<a name="l00161"></a>00161 <span class="keywordflow">return</span> (msgsize == value);
+<a name="l00162"></a>00162 <span class="keywordflow">break</span>;
+<a name="l00163"></a>00163 <span class="keywordflow">case</span> equals_not:
+<a name="l00164"></a>00164 <span class="keywordflow">return</span> (msgsize != value);
+<a name="l00165"></a>00165 <span class="keywordflow">break</span>;
+<a name="l00166"></a>00166 <span class="keywordflow">case</span> greater:
+<a name="l00167"></a>00167 <span class="keywordflow">return</span> (msgsize &gt; value);
+<a name="l00168"></a>00168 <span class="keywordflow">break</span>;
+<a name="l00169"></a>00169 <span class="keywordflow">case</span> less:
+<a name="l00170"></a>00170 <span class="keywordflow">return</span> (msgsize &lt; value);
+<a name="l00171"></a>00171 <span class="keywordflow">break</span>;
+<a name="l00172"></a>00172 <span class="keywordflow">default</span>:
+<a name="l00173"></a>00173 <span class="comment">// contains does not make sense for size</span>
+<a name="l00174"></a>00174 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00175"></a>00175 }
+<a name="l00176"></a>00176 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00177"></a>00177 }
+<a name="l00178"></a>00178 <span class="keywordflow">break</span>;
+<a name="l00179"></a>00179 <span class="keywordflow">default</span>:
+<a name="l00180"></a>00180 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00181"></a>00181 }
+<a name="l00182"></a>00182
+<a name="l00183"></a>00183 <span class="keywordflow">switch</span> (<a class="code" href="classFilterRecord.html#1ec80257bc94ce8fdcbbb2d5de64f612">_expression</a>)
+<a name="l00184"></a>00184 {
+<a name="l00185"></a>00185 <span class="keywordflow">case</span> contains:
+<a name="l00186"></a>00186 <span class="keywordflow">if</span> (<a class="code" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">_RegExp</a>)
+<a name="l00187"></a>00187 {
+<a name="l00188"></a>00188 <span class="keywordflow">return</span> (QRegExp (<a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>, <a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>).search(text) &gt;= 0);
+<a name="l00189"></a>00189 }
+<a name="l00190"></a>00190 <span class="keywordflow">else</span>
+<a name="l00191"></a>00191 {
+<a name="l00192"></a>00192 <span class="keywordflow">return</span> (text.contains (<a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>, <a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>) &gt; 0);
+<a name="l00193"></a>00193 }
+<a name="l00194"></a>00194 <span class="keywordflow">break</span>;
+<a name="l00195"></a>00195 <span class="keywordflow">case</span> contains_not:
+<a name="l00196"></a>00196 <span class="keywordflow">if</span> (_RegExp)
+<a name="l00197"></a>00197 {
+<a name="l00198"></a>00198 <span class="keywordflow">return</span> (QRegExp (<a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>, <a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>).search(text) &lt; 0);
+<a name="l00199"></a>00199 }
+<a name="l00200"></a>00200 <span class="keywordflow">else</span>
+<a name="l00201"></a>00201 {
+<a name="l00202"></a>00202 <span class="keywordflow">return</span> (text.contains (<a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>, <a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>) == 0);
+<a name="l00203"></a>00203 }
+<a name="l00204"></a>00204 <span class="keywordflow">break</span>;
+<a name="l00205"></a>00205 <span class="keywordflow">case</span> equals:
+<a name="l00206"></a>00206 <span class="keywordflow">if</span> (_RegExp)
+<a name="l00207"></a>00207 {
+<a name="l00208"></a>00208 <span class="keywordflow">return</span> (QRegExp (<a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>, <a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>).exactMatch (text));
+<a name="l00209"></a>00209 }
+<a name="l00210"></a>00210 <span class="keywordflow">else</span>
+<a name="l00211"></a>00211 {
+<a name="l00212"></a>00212 <span class="keywordflow">if</span> (<a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>)
+<a name="l00213"></a>00213 {
+<a name="l00214"></a>00214 <span class="keywordflow">return</span> (text == <a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>);
+<a name="l00215"></a>00215 }
+<a name="l00216"></a>00216 <span class="keywordflow">else</span>
+<a name="l00217"></a>00217 {
+<a name="l00218"></a>00218 <span class="keywordflow">return</span> (text.upper() == <a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>.upper());
+<a name="l00219"></a>00219 }
+<a name="l00220"></a>00220 }
+<a name="l00221"></a>00221 <span class="keywordflow">break</span>;
+<a name="l00222"></a>00222 <span class="keywordflow">case</span> equals_not:
+<a name="l00223"></a>00223 <span class="keywordflow">if</span> (_RegExp)
+<a name="l00224"></a>00224 {
+<a name="l00225"></a>00225 <span class="keywordflow">return</span> !(QRegExp (<a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>, <a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>).exactMatch (text));
+<a name="l00226"></a>00226 }
+<a name="l00227"></a>00227 <span class="keywordflow">else</span>
+<a name="l00228"></a>00228 {
+<a name="l00229"></a>00229 <span class="keywordflow">if</span> (<a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>)
+<a name="l00230"></a>00230 {
+<a name="l00231"></a>00231 <span class="keywordflow">return</span> (text != <a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>);
+<a name="l00232"></a>00232 }
+<a name="l00233"></a>00233 <span class="keywordflow">else</span>
+<a name="l00234"></a>00234 {
+<a name="l00235"></a>00235 <span class="keywordflow">return</span> (text.upper() != <a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>.upper());
+<a name="l00236"></a>00236 }
+<a name="l00237"></a>00237 }
+<a name="l00238"></a>00238 <span class="keywordflow">break</span>;
+<a name="l00239"></a>00239 <span class="keywordflow">case</span> greater:
+<a name="l00240"></a>00240 <span class="keywordflow">if</span> (<a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>)
+<a name="l00241"></a>00241 {
+<a name="l00242"></a>00242 <span class="keywordflow">return</span> (text &gt; <a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>);
+<a name="l00243"></a>00243 }
+<a name="l00244"></a>00244 <span class="keywordflow">else</span>
+<a name="l00245"></a>00245 {
+<a name="l00246"></a>00246 <span class="keywordflow">return</span> (text.upper() &gt; <a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>.upper());
+<a name="l00247"></a>00247 }
+<a name="l00248"></a>00248 <span class="keywordflow">break</span>;
+<a name="l00249"></a>00249 <span class="keywordflow">case</span> less:
+<a name="l00250"></a>00250 <span class="keywordflow">if</span> (<a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>)
+<a name="l00251"></a>00251 {
+<a name="l00252"></a>00252 <span class="keywordflow">return</span> (text &lt; <a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>);
+<a name="l00253"></a>00253 }
+<a name="l00254"></a>00254 <span class="keywordflow">else</span>
+<a name="l00255"></a>00255 {
+<a name="l00256"></a>00256 <span class="keywordflow">return</span> (text.upper() &lt; <a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>.upper());
+<a name="l00257"></a>00257 }
+<a name="l00258"></a>00258 <span class="keywordflow">break</span>;
+<a name="l00259"></a>00259 <span class="keywordflow">default</span>:
+<a name="l00260"></a>00260 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00261"></a>00261 }
+<a name="l00262"></a>00262
+<a name="l00263"></a>00263 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00264"></a>00264 }
+<a name="l00265"></a>00265
+<a name="l00266"></a><a class="code" href="classFilterElem.html#23b386b3041ad1acc7069eac6b59203f">00266</a> <span class="keywordtype">bool</span> <a class="code" href="classFilterElem.html#23b386b3041ad1acc7069eac6b59203f">FilterElem::matches</a> (<a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* pElem)
+<a name="l00267"></a>00267 {
+<a name="l00268"></a>00268 <span class="keywordtype">bool</span> result = <a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#ce4bf661b49a342242d9c2bd578720c3">matches</a> (pElem);
+<a name="l00269"></a>00269 <span class="keywordflow">switch</span> (<a class="code" href="classFilterElem.html#91c7d695c13e14fd53b74f01ed082679">_secondCondition</a>)
+<a name="l00270"></a>00270 {
+<a name="l00271"></a>00271 <span class="keywordflow">case</span> noSecondCondition:
+<a name="l00272"></a>00272 <span class="keywordflow">return</span> result;
+<a name="l00273"></a>00273 <span class="keywordflow">break</span>;
+<a name="l00274"></a>00274 <span class="keywordflow">case</span> condAnd:
+<a name="l00275"></a>00275 <span class="keywordflow">if</span> (result)
+<a name="l00276"></a>00276 <span class="keywordflow">return</span> <a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#ce4bf661b49a342242d9c2bd578720c3">matches</a> (pElem);
+<a name="l00277"></a>00277 <span class="keywordflow">else</span>
+<a name="l00278"></a>00278 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00279"></a>00279 <span class="keywordflow">break</span>;
+<a name="l00280"></a>00280 <span class="keywordflow">case</span> condOr:
+<a name="l00281"></a>00281 <span class="keywordflow">if</span> (result)
+<a name="l00282"></a>00282 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00283"></a>00283 <span class="keywordflow">else</span>
+<a name="l00284"></a>00284 <span class="keywordflow">return</span> <a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#ce4bf661b49a342242d9c2bd578720c3">matches</a> (pElem);
+<a name="l00285"></a>00285 }
+<a name="l00286"></a>00286 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00287"></a>00287 }
+<a name="l00288"></a>00288
+<a name="l00289"></a><a class="code" href="classFilterElem.html#911373fc7c641be784ff8d258afb369d">00289</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classFilterElem.html#911373fc7c641be784ff8d258afb369d">FilterElem::getCounter</a>( )
+<a name="l00290"></a>00290 {
+<a name="l00291"></a>00291 <span class="keywordflow">return</span> <a class="code" href="classFilterElem.html#2e417fd43d30ac8ce2d417f818b37a42">_counter</a>;
+<a name="l00292"></a>00292 }
+<a name="l00293"></a>00293
+<a name="l00294"></a><a class="code" href="classFilterElem.html#d33b35168ea3075ecee564c17e39b749">00294</a> <span class="keywordtype">void</span> <a class="code" href="classFilterElem.html#d33b35168ea3075ecee564c17e39b749">FilterElem::incCounter</a>( )
+<a name="l00295"></a>00295 {
+<a name="l00296"></a>00296 <a class="code" href="classFilterElem.html#2e417fd43d30ac8ce2d417f818b37a42">_counter</a>++;
+<a name="l00297"></a>00297 }
+<a name="l00298"></a>00298
+<a name="l00299"></a><a class="code" href="classFilterElem.html#032bde919691a3b2813f0d70b661f98a">00299</a> <span class="keywordtype">void</span> <a class="code" href="classFilterElem.html#032bde919691a3b2813f0d70b661f98a">FilterElem::setCounter</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> number )
+<a name="l00300"></a>00300 {
+<a name="l00301"></a>00301 <a class="code" href="classFilterElem.html#2e417fd43d30ac8ce2d417f818b37a42">_counter</a> = number;
+<a name="l00302"></a>00302 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/filterelem_8h-source.html b/doc/html/filterelem_8h-source.html
new file mode 100644
index 0000000..c38a116
--- /dev/null
+++ b/doc/html/filterelem_8h-source.html
@@ -0,0 +1,97 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/filterelem.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>filterelem.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> filterelem.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Die Sep 23 2003</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2003 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef FILTERELEM_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define FILTERELEM_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include "showrecordelem.h"</span>
+<a name="l00022"></a>00022
+<a name="l00027"></a>00027 <span class="keyword">class </span><a class="code" href="classShowRecordElem.html">ShowRecordElem</a>;
+<a name="l00028"></a>00028
+<a name="l00029"></a><a class="code" href="classFilterRecord.html">00029</a> <span class="keyword">class </span><a class="code" href="classFilterRecord.html">FilterRecord</a>
+<a name="l00030"></a>00030 {
+<a name="l00031"></a>00031 <span class="keyword">public</span>:
+<a name="l00032"></a>00032 <span class="comment">// this sequence must not be changed. See FilterEntryDlg.ui</span>
+<a name="l00033"></a><a class="code" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">00033</a> <span class="keyword">enum</span> <a class="code" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">filterType</a> {from, subject, header, size, to};
+<a name="l00034"></a><a class="code" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">00034</a> <span class="keyword">enum</span> <a class="code" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">expressionType</a> {contains, contains_not, equals, equals_not, greater, less};
+<a name="l00035"></a>00035
+<a name="l00036"></a>00036 <a class="code" href="classFilterRecord.html#21d096b6ce737e5550e3d767fa6d2ae3">FilterRecord</a> ();
+<a name="l00037"></a>00037 <a class="code" href="classFilterRecord.html#21d096b6ce737e5550e3d767fa6d2ae3">FilterRecord</a> (<a class="code" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">filterType</a> type, <a class="code" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">expressionType</a> expression, <span class="keyword">const</span> QString&amp; match, <span class="keywordtype">bool</span> CaseSensitive, <span class="keywordtype">bool</span> regExp);
+<a name="l00038"></a>00038 <span class="keywordtype">bool</span> <a class="code" href="classFilterRecord.html#ce4bf661b49a342242d9c2bd578720c3">matches</a> (<a class="code" href="classShowRecordElem.html">ShowRecordElem</a>*);
+<a name="l00039"></a>00039 QString <a class="code" href="classFilterRecord.html#aad8e6b767fbcc3f9c214ca1be7db853">toString</a> () <span class="keyword">const</span>;
+<a name="l00040"></a>00040
+<a name="l00041"></a><a class="code" href="classFilterRecord.html#a9ca58948529c51e27397ef9b105c6d2">00041</a> <a class="code" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">filterType</a> <a class="code" href="classFilterRecord.html#a9ca58948529c51e27397ef9b105c6d2">_type</a>;
+<a name="l00042"></a><a class="code" href="classFilterRecord.html#1ec80257bc94ce8fdcbbb2d5de64f612">00042</a> <a class="code" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">expressionType</a> <a class="code" href="classFilterRecord.html#1ec80257bc94ce8fdcbbb2d5de64f612">_expression</a>;
+<a name="l00043"></a><a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">00043</a> QString <a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>;
+<a name="l00044"></a><a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">00044</a> <span class="keywordtype">bool</span> <a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>;
+<a name="l00045"></a><a class="code" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">00045</a> <span class="keywordtype">bool</span> <a class="code" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">_RegExp</a>;
+<a name="l00046"></a>00046 };
+<a name="l00047"></a>00047
+<a name="l00048"></a><a class="code" href="classFilterElem.html">00048</a> <span class="keyword">class </span><a class="code" href="classFilterElem.html">FilterElem</a> {
+<a name="l00049"></a>00049 <span class="keyword">public</span>:
+<a name="l00050"></a>00050 <span class="comment">// this sequence must not be changed. See FilterEntryDlg.ui</span>
+<a name="l00051"></a><a class="code" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">00051</a> <span class="keyword">enum</span> <a class="code" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">secondCondition</a> {noSecondCondition, condAnd, condOr};
+<a name="l00052"></a>00052
+<a name="l00053"></a>00053 <a class="code" href="classFilterElem.html#698d996b7fd2b6df65b49be93f43d1e6">FilterElem</a>();
+<a name="l00054"></a>00054 <a class="code" href="classFilterElem.html#698d996b7fd2b6df65b49be93f43d1e6">FilterElem</a> (<span class="keyword">const</span> <a class="code" href="classFilterRecord.html">FilterRecord</a>&amp;);
+<a name="l00055"></a>00055 <a class="code" href="classFilterElem.html#698d996b7fd2b6df65b49be93f43d1e6">FilterElem</a> (<span class="keyword">const</span> <a class="code" href="classFilterElem.html">FilterElem</a>&amp;);
+<a name="l00056"></a>00056 <span class="keywordtype">void</span> <a class="code" href="classFilterElem.html#e8ee6b5b370ed5c092e43f7090c0d75f">setSecondCondition</a> (<a class="code" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">secondCondition</a> scnd, <span class="keyword">const</span> <a class="code" href="classFilterRecord.html">FilterRecord</a>&amp;);
+<a name="l00057"></a>00057
+<a name="l00058"></a>00058 <a class="code" href="classFilterElem.html#c0bb85bbedfcb29b44f6146d7ebf34ec">~FilterElem</a>();
+<a name="l00059"></a>00059 QString <a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a> () <span class="keyword">const</span>;
+<a name="l00060"></a>00060
+<a name="l00061"></a><a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">00061</a> <a class="code" href="classFilterRecord.html">FilterRecord</a> <a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>;
+<a name="l00062"></a><a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">00062</a> <a class="code" href="classFilterRecord.html">FilterRecord</a> <a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>;
+<a name="l00063"></a>00063
+<a name="l00064"></a><a class="code" href="classFilterElem.html#91c7d695c13e14fd53b74f01ed082679">00064</a> <a class="code" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">secondCondition</a> <a class="code" href="classFilterElem.html#91c7d695c13e14fd53b74f01ed082679">_secondCondition</a>;
+<a name="l00065"></a>00065
+<a name="l00066"></a>00066 <span class="keywordtype">bool</span> <a class="code" href="classFilterElem.html#23b386b3041ad1acc7069eac6b59203f">matches</a> (<a class="code" href="classShowRecordElem.html">ShowRecordElem</a>*);
+<a name="l00067"></a>00067
+<a name="l00072"></a>00072 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classFilterElem.html#911373fc7c641be784ff8d258afb369d">getCounter</a>();
+<a name="l00073"></a>00073
+<a name="l00078"></a>00078 <span class="keywordtype">void</span> <a class="code" href="classFilterElem.html#032bde919691a3b2813f0d70b661f98a">setCounter</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> number );
+<a name="l00079"></a>00079
+<a name="l00083"></a>00083 <span class="keywordtype">void</span> <a class="code" href="classFilterElem.html#d33b35168ea3075ecee564c17e39b749">incCounter</a>();
+<a name="l00084"></a>00084
+<a name="l00085"></a>00085 <span class="keyword">private</span>:
+<a name="l00086"></a>00086
+<a name="l00090"></a><a class="code" href="classFilterElem.html#2e417fd43d30ac8ce2d417f818b37a42">00090</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classFilterElem.html#2e417fd43d30ac8ce2d417f818b37a42">_counter</a>;
+<a name="l00091"></a>00091 };
+<a name="l00092"></a>00092
+<a name="l00093"></a>00093 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/filterentrydialog_8cpp-source.html b/doc/html/filterentrydialog_8cpp-source.html
new file mode 100644
index 0000000..bf3a7ce
--- /dev/null
+++ b/doc/html/filterentrydialog_8cpp-source.html
@@ -0,0 +1,272 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/filterentrydialog.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>filterentrydialog.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> filterentrydialog.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Mit Sep 24 2003</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2003 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qvalidator.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qlineedit.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qcombobox.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qcheckbox.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qgroupbox.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;qspinbox.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;qpushbutton.h&gt;</span>
+<a name="l00025"></a>00025
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;kmessagebox.h&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;kregexpeditorinterface.h&gt;</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;kparts/part.h&gt;</span>
+<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;kparts/componentfactory.h&gt;</span>
+<a name="l00032"></a>00032
+<a name="l00033"></a>00033 <span class="preprocessor">#include "filterelem.h"</span>
+<a name="l00034"></a>00034 <span class="preprocessor">#include "filterentrydialog.h"</span>
+<a name="l00035"></a>00035
+<a name="l00036"></a><a class="code" href="classFilterEntryDialog.html#8afdfaa4c1f8c87fe62d0539362d4096">00036</a> <a class="code" href="classFilterEntryDialog.html#8afdfaa4c1f8c87fe62d0539362d4096">FilterEntryDialog::FilterEntryDialog</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="classFilterElem.html">FilterElem</a>* elem ) :
+<a name="l00037"></a>00037 <a class="code" href="classFilterEntryDlg.html">FilterEntryDlg</a>(parent,name), _elem (elem)
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039 <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>-&gt;setText (elem-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>());
+<a name="l00040"></a>00040
+<a name="l00041"></a>00041 <a class="code" href="classFilterEntryDlg.html#b628cb3487c2c507b0362c5a4d9354f1">_comboItem1</a>-&gt;setCurrentItem (elem-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#a9ca58948529c51e27397ef9b105c6d2">_type</a>);
+<a name="l00042"></a>00042 <a class="code" href="classFilterEntryDlg.html#74a26ce520b1e93127fba8720b6a6ab5">_comboExpression1</a>-&gt;setCurrentItem (elem-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#1ec80257bc94ce8fdcbbb2d5de64f612">_expression</a>);
+<a name="l00043"></a>00043 <a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a>-&gt;setText (elem-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>);
+<a name="l00044"></a>00044 <a class="code" href="classFilterEntryDlg.html#21d063a47d1c8dc6d2f1387e36dc0e29">_checkCaseSensitive1</a>-&gt;setChecked (elem-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>);
+<a name="l00045"></a>00045 <a class="code" href="classFilterEntryDlg.html#b484e56fe6fd6fa210ac549e17dac0c3">_checkRegExp1</a>-&gt;setChecked (elem-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">_RegExp</a>);
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 <a class="code" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a>-&gt;setCurrentItem (elem-&gt;<a class="code" href="classFilterElem.html#91c7d695c13e14fd53b74f01ed082679">_secondCondition</a>);
+<a name="l00048"></a>00048
+<a name="l00049"></a>00049 <a class="code" href="classFilterEntryDlg.html#fc6a944b6a9cd41f717fa3c63bfc61cc">_comboItem2</a>-&gt;setCurrentItem (elem-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#a9ca58948529c51e27397ef9b105c6d2">_type</a>);
+<a name="l00050"></a>00050 <a class="code" href="classFilterEntryDlg.html#f5a5b18bc147e4d78d1c8f62ec82b316">_comboExpression2</a>-&gt;setCurrentItem (elem-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#1ec80257bc94ce8fdcbbb2d5de64f612">_expression</a>);
+<a name="l00051"></a>00051 <a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a>-&gt;setText (elem-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>);
+<a name="l00052"></a>00052 <a class="code" href="classFilterEntryDlg.html#7bb75b57a7e6026de7a729d3c3e00eb5">_checkCaseSensitive2</a>-&gt;setChecked (elem-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a>);
+<a name="l00053"></a>00053 <a class="code" href="classFilterEntryDlg.html#b9f3d81d53edd0c0dbae49810b8a70cb">_checkRegExp2</a>-&gt;setChecked (elem-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">_RegExp</a>);
+<a name="l00054"></a>00054 <a class="code" href="classFilterEntryDlg.html#efe66d0f49d6a04c504811c048317195">_spinCounter</a>-&gt;setValue (elem-&gt;<a class="code" href="classFilterElem.html#911373fc7c641be784ff8d258afb369d">getCounter</a>() );
+<a name="l00055"></a>00055
+<a name="l00056"></a>00056 <a class="code" href="classFilterEntryDialog.html#9090b80ae92e98a8e9bbe7286eaba31f">slotItem1Selected</a> (elem-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#a9ca58948529c51e27397ef9b105c6d2">_type</a>);
+<a name="l00057"></a>00057 <a class="code" href="classFilterEntryDialog.html#06db22e10498d15b0522482f64b1bb2e">slotItem2Selected</a> (elem-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#a9ca58948529c51e27397ef9b105c6d2">_type</a>);
+<a name="l00058"></a>00058 <a class="code" href="classFilterEntryDialog.html#cb27cf3391fbaa0c98248029da8c9d85">slotSecondCondition</a> (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#91c7d695c13e14fd53b74f01ed082679">_secondCondition</a>);
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <span class="keywordflow">if</span> (KTrader::self()-&gt;query(<span class="stringliteral">"KRegExpEditor/KRegExpEditor"</span>).isEmpty())
+<a name="l00061"></a>00061 {
+<a name="l00062"></a>00062 <a class="code" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">_buttonEditRegExp1</a>-&gt;hide();
+<a name="l00063"></a>00063 <a class="code" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">_buttonEditRegExp2</a>-&gt;hide();
+<a name="l00064"></a>00064 }
+<a name="l00065"></a>00065 <span class="keywordflow">else</span>
+<a name="l00066"></a>00066 {
+<a name="l00067"></a>00067 <a class="code" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">_buttonEditRegExp1</a>-&gt;setEnabled (elem-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">_RegExp</a>);
+<a name="l00068"></a>00068 <a class="code" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">_buttonEditRegExp2</a>-&gt;setEnabled (elem-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">_RegExp</a>);
+<a name="l00069"></a>00069 }
+<a name="l00070"></a>00070 }
+<a name="l00071"></a>00071
+<a name="l00072"></a><a class="code" href="classFilterEntryDialog.html#4bd7012e9db9522d88b3d608ec8906d1">00072</a> <a class="code" href="classFilterEntryDialog.html#4bd7012e9db9522d88b3d608ec8906d1">FilterEntryDialog::~FilterEntryDialog</a>()
+<a name="l00073"></a>00073 {
+<a name="l00074"></a>00074 }
+<a name="l00075"></a>00075
+<a name="l00076"></a><a class="code" href="classFilterEntryDialog.html#f3998b74a965c468fd402a1fb6a2119a">00076</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#f3998b74a965c468fd402a1fb6a2119a">FilterEntryDialog::slotOk</a> ()
+<a name="l00077"></a>00077 {
+<a name="l00078"></a>00078 <span class="keywordflow">if</span> (<a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a>-&gt;text().isEmpty() ||
+<a name="l00079"></a>00079 (((<a class="code" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">FilterElem::secondCondition</a>)<a class="code" href="classFilterEntryDlg.html#c6204e4ab3214c1eb1a9296c49264b57">_comboSecondCondition</a>-&gt;currentItem() != FilterElem::noSecondCondition) &amp;&amp;
+<a name="l00080"></a>00080 <a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a>-&gt;text().isEmpty()))
+<a name="l00081"></a>00081 {
+<a name="l00082"></a>00082 KMessageBox::sorry (<span class="keyword">this</span>, i18n(<span class="stringliteral">"Your conditions contain empty match strings.\n"</span>
+<a name="l00083"></a>00083 <span class="stringliteral">"This will not work."</span>));
+<a name="l00084"></a>00084 <span class="keywordflow">return</span>;
+<a name="l00085"></a>00085 }
+<a name="l00086"></a>00086
+<a name="l00087"></a>00087 <span class="keywordflow">if</span> (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">_RegExp</a>)
+<a name="l00088"></a>00088 {
+<a name="l00089"></a>00089 QRegExp exp (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>);
+<a name="l00090"></a>00090 <span class="keywordflow">if</span> (!exp.isValid())
+<a name="l00091"></a>00091 {
+<a name="l00092"></a>00092 KMessageBox::sorry (<span class="keyword">this</span>, i18n (<span class="stringliteral">"Condition"</span>) + <span class="stringliteral">":\n"</span> + exp.errorString());
+<a name="l00093"></a>00093 <span class="keywordflow">return</span>;
+<a name="l00094"></a>00094 }
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096 <span class="keywordflow">if</span> (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#91c7d695c13e14fd53b74f01ed082679">_secondCondition</a> &amp;&amp; <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">_RegExp</a>)
+<a name="l00097"></a>00097 {
+<a name="l00098"></a>00098 QRegExp exp (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a>);
+<a name="l00099"></a>00099 <span class="keywordflow">if</span> (!exp.isValid())
+<a name="l00100"></a>00100 {
+<a name="l00101"></a>00101 KMessageBox::sorry (<span class="keyword">this</span>, i18n (<span class="stringliteral">"second Condition"</span>) + <span class="stringliteral">":\n"</span> + exp.errorString());
+<a name="l00102"></a>00102 <span class="keywordflow">return</span>;
+<a name="l00103"></a>00103 }
+<a name="l00104"></a>00104 }
+<a name="l00105"></a>00105
+<a name="l00106"></a>00106 <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a> = <a class="code" href="classFilterEntryDlg.html#21d063a47d1c8dc6d2f1387e36dc0e29">_checkCaseSensitive1</a>-&gt;isChecked();
+<a name="l00107"></a>00107 <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#47791227a3cabe9397f5bd1a6c44fd16">_CaseSensitive</a> = <a class="code" href="classFilterEntryDlg.html#7bb75b57a7e6026de7a729d3c3e00eb5">_checkCaseSensitive2</a>-&gt;isChecked();
+<a name="l00108"></a>00108 <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">_RegExp</a> = <a class="code" href="classFilterEntryDlg.html#b484e56fe6fd6fa210ac549e17dac0c3">_checkRegExp1</a>-&gt;isChecked();
+<a name="l00109"></a>00109 <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#eecf987a35d4f17c91c8fd69f4afb139">_RegExp</a> = <a class="code" href="classFilterEntryDlg.html#b9f3d81d53edd0c0dbae49810b8a70cb">_checkRegExp2</a>-&gt;isChecked();
+<a name="l00110"></a>00110
+<a name="l00111"></a>00111 accept ();
+<a name="l00112"></a>00112 }
+<a name="l00113"></a>00113
+<a name="l00114"></a><a class="code" href="classFilterEntryDialog.html#9090b80ae92e98a8e9bbe7286eaba31f">00114</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#9090b80ae92e98a8e9bbe7286eaba31f">FilterEntryDialog::slotItem1Selected</a> (<span class="keywordtype">int</span> type)
+<a name="l00115"></a>00115 {
+<a name="l00116"></a>00116 <span class="keywordflow">if</span> (type == FilterRecord::size)
+<a name="l00117"></a>00117 {
+<a name="l00118"></a>00118 <span class="keywordtype">int</span> dummy;
+<a name="l00119"></a>00119 QString match (<a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a>-&gt;text());
+<a name="l00120"></a>00120 QIntValidator* validator = <span class="keyword">new</span> QIntValidator (<a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a>);
+<a name="l00121"></a>00121 <span class="keywordflow">if</span> (validator-&gt;validate (match, dummy) == QValidator::Invalid)
+<a name="l00122"></a>00122 <a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a>-&gt;clear();
+<a name="l00123"></a>00123 <a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a>-&gt;setValidator (validator);
+<a name="l00124"></a>00124 <a class="code" href="classFilterEntryDlg.html#21d063a47d1c8dc6d2f1387e36dc0e29">_checkCaseSensitive1</a>-&gt;setEnabled (<span class="keyword">false</span>);
+<a name="l00125"></a>00125 }
+<a name="l00126"></a>00126 <span class="keywordflow">else</span>
+<a name="l00127"></a>00127 {
+<a name="l00128"></a>00128 <a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a>-&gt;setValidator (NULL);
+<a name="l00129"></a>00129 <a class="code" href="classFilterEntryDlg.html#21d063a47d1c8dc6d2f1387e36dc0e29">_checkCaseSensitive1</a>-&gt;setEnabled (<span class="keyword">true</span>);
+<a name="l00130"></a>00130 }
+<a name="l00131"></a>00131
+<a name="l00132"></a>00132 <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#a9ca58948529c51e27397ef9b105c6d2">_type</a> = (<a class="code" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">FilterRecord::filterType</a>)type;
+<a name="l00133"></a>00133 <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>-&gt;setText (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>());
+<a name="l00134"></a>00134 }
+<a name="l00135"></a>00135
+<a name="l00136"></a><a class="code" href="classFilterEntryDialog.html#06db22e10498d15b0522482f64b1bb2e">00136</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#06db22e10498d15b0522482f64b1bb2e">FilterEntryDialog::slotItem2Selected</a> (<span class="keywordtype">int</span> type)
+<a name="l00137"></a>00137 {
+<a name="l00138"></a>00138 <span class="keywordflow">if</span> (type == FilterRecord::size)
+<a name="l00139"></a>00139 {
+<a name="l00140"></a>00140 <span class="keywordtype">int</span> dummy;
+<a name="l00141"></a>00141 QString match (<a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a>-&gt;text());
+<a name="l00142"></a>00142 QIntValidator* validator = <span class="keyword">new</span> QIntValidator (<a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a>);
+<a name="l00143"></a>00143 <span class="keywordflow">if</span> (validator-&gt;validate (match, dummy) == QValidator::Invalid)
+<a name="l00144"></a>00144 <a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a>-&gt;clear();
+<a name="l00145"></a>00145 <a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a>-&gt;setValidator (validator);
+<a name="l00146"></a>00146 <a class="code" href="classFilterEntryDlg.html#7bb75b57a7e6026de7a729d3c3e00eb5">_checkCaseSensitive2</a>-&gt;setEnabled (<span class="keyword">false</span>);
+<a name="l00147"></a>00147 }
+<a name="l00148"></a>00148 <span class="keywordflow">else</span>
+<a name="l00149"></a>00149 {
+<a name="l00150"></a>00150 <a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a>-&gt;setValidator (NULL);
+<a name="l00151"></a>00151 <a class="code" href="classFilterEntryDlg.html#7bb75b57a7e6026de7a729d3c3e00eb5">_checkCaseSensitive2</a>-&gt;setEnabled (<span class="keyword">true</span>);
+<a name="l00152"></a>00152 }
+<a name="l00153"></a>00153
+<a name="l00154"></a>00154 <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#a9ca58948529c51e27397ef9b105c6d2">_type</a> = (<a class="code" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">FilterRecord::filterType</a>)type;
+<a name="l00155"></a>00155 <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>-&gt;setText (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>());
+<a name="l00156"></a>00156 }
+<a name="l00157"></a>00157
+<a name="l00158"></a><a class="code" href="classFilterEntryDialog.html#cb27cf3391fbaa0c98248029da8c9d85">00158</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#cb27cf3391fbaa0c98248029da8c9d85">FilterEntryDialog::slotSecondCondition</a> (<span class="keywordtype">int</span> condition)
+<a name="l00159"></a>00159 {
+<a name="l00160"></a>00160 <span class="keywordflow">if</span> (condition == FilterElem::noSecondCondition)
+<a name="l00161"></a>00161 <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>-&gt;setEnabled(<span class="keyword">false</span>);
+<a name="l00162"></a>00162 <span class="keywordflow">else</span>
+<a name="l00163"></a>00163 <a class="code" href="classFilterEntryDlg.html#c58a17294df3e20dbd8c45800557a556">_groupBox2</a>-&gt;setEnabled(<span class="keyword">true</span>);
+<a name="l00164"></a>00164
+<a name="l00165"></a>00165 <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#91c7d695c13e14fd53b74f01ed082679">_secondCondition</a> = (<a class="code" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">FilterElem::secondCondition</a>)condition;
+<a name="l00166"></a>00166 <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>-&gt;setText (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>());
+<a name="l00167"></a>00167 }
+<a name="l00168"></a>00168
+<a name="l00169"></a><a class="code" href="classFilterEntryDialog.html#d1b8e6ad082b138b40d603600619880e">00169</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#d1b8e6ad082b138b40d603600619880e">FilterEntryDialog::slotCondition1Selected</a>(<span class="keywordtype">int</span> cond)
+<a name="l00170"></a>00170 {
+<a name="l00171"></a>00171 <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#1ec80257bc94ce8fdcbbb2d5de64f612">_expression</a> = (<a class="code" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">FilterRecord::expressionType</a>)cond;
+<a name="l00172"></a>00172 <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>-&gt;setText (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>());
+<a name="l00173"></a>00173 }
+<a name="l00174"></a>00174
+<a name="l00175"></a><a class="code" href="classFilterEntryDialog.html#fef2a5891f1c85fdd64316617475efc4">00175</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#fef2a5891f1c85fdd64316617475efc4">FilterEntryDialog::slotCondition2Selected</a>(<span class="keywordtype">int</span> cond)
+<a name="l00176"></a>00176 {
+<a name="l00177"></a>00177 <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#1ec80257bc94ce8fdcbbb2d5de64f612">_expression</a> = (<a class="code" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">FilterRecord::expressionType</a>)cond;
+<a name="l00178"></a>00178 <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>-&gt;setText (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>());
+<a name="l00179"></a>00179 }
+<a name="l00180"></a>00180
+<a name="l00181"></a><a class="code" href="classFilterEntryDialog.html#598df103af53b46357e7f5b72ca56989">00181</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#598df103af53b46357e7f5b72ca56989">FilterEntryDialog::slotMatch1Changed</a>(<span class="keyword">const</span> QString&amp; match)
+<a name="l00182"></a>00182 {
+<a name="l00183"></a>00183 <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#a0dc9e7d0ab4a85f5426f091eb459565">_filter1</a>.<a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a> = match;
+<a name="l00184"></a>00184 <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>-&gt;setText (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>());
+<a name="l00185"></a>00185 }
+<a name="l00186"></a>00186
+<a name="l00187"></a><a class="code" href="classFilterEntryDialog.html#fa9fdfabc86df022db4359efe31e8d8f">00187</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#fa9fdfabc86df022db4359efe31e8d8f">FilterEntryDialog::slotMatch2Changed</a>(<span class="keyword">const</span> QString&amp; match)
+<a name="l00188"></a>00188 {
+<a name="l00189"></a>00189 <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#e872e95b54e1af0c6773c92cec688020">_filter2</a>.<a class="code" href="classFilterRecord.html#72d4a650ab06738f169b562e5adbbaaa">_match</a> = match;
+<a name="l00190"></a>00190 <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>-&gt;setText (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>());
+<a name="l00191"></a>00191 }
+<a name="l00192"></a>00192
+<a name="l00193"></a><a class="code" href="classFilterEntryDialog.html#9b6e94a93facdc06f6c64ef2590a8160">00193</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#9b6e94a93facdc06f6c64ef2590a8160">FilterEntryDialog::slotResetCounter</a>()
+<a name="l00194"></a>00194 {
+<a name="l00195"></a>00195 <a class="code" href="classFilterEntryDlg.html#efe66d0f49d6a04c504811c048317195">_spinCounter</a>-&gt;setValue(0);
+<a name="l00196"></a>00196 }
+<a name="l00197"></a>00197
+<a name="l00198"></a><a class="code" href="classFilterEntryDialog.html#b18666f342aa81585cfc5a9cfb45eeaf">00198</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#b18666f342aa81585cfc5a9cfb45eeaf">FilterEntryDialog::slotCounterChanged</a> (<span class="keywordtype">int</span> val)
+<a name="l00199"></a>00199 {
+<a name="l00200"></a>00200 <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#032bde919691a3b2813f0d70b661f98a">setCounter</a>( val );
+<a name="l00201"></a>00201 <a class="code" href="classFilterEntryDlg.html#b53212305f82709bdcb7a0b89109067b">_editName</a>-&gt;setText (<a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>());
+<a name="l00202"></a>00202 }
+<a name="l00203"></a>00203
+<a name="l00204"></a><a class="code" href="classFilterEntryDialog.html#fb51ce872b6f69e25d69ae885bdbda35">00204</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#fb51ce872b6f69e25d69ae885bdbda35">FilterEntryDialog::slotEditRegExp1</a>()
+<a name="l00205"></a>00205 {
+<a name="l00206"></a>00206 QDialog *editorDialog = KParts::ComponentFactory::createInstanceFromQuery&lt;QDialog&gt;( <span class="stringliteral">"KRegExpEditor/KRegExpEditor"</span> );
+<a name="l00207"></a>00207 <span class="keywordflow">if</span> ( editorDialog )
+<a name="l00208"></a>00208 {
+<a name="l00209"></a>00209 <span class="comment">// kdeutils was installed, so the dialog was found fetch the editor interface</span>
+<a name="l00210"></a>00210 KRegExpEditorInterface *editor = static_cast&lt;KRegExpEditorInterface *&gt;( editorDialog-&gt;qt_cast( <span class="stringliteral">"KRegExpEditorInterface"</span> ) );
+<a name="l00211"></a>00211 Q_ASSERT( editor ); <span class="comment">// This should not fail!</span>
+<a name="l00212"></a>00212
+<a name="l00213"></a>00213 <span class="comment">// now use the editor.</span>
+<a name="l00214"></a>00214 editor-&gt;setRegExp(<a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a>-&gt;text());
+<a name="l00215"></a>00215
+<a name="l00216"></a>00216 <span class="comment">// Finally exec the dialog</span>
+<a name="l00217"></a>00217 <span class="keywordflow">if</span> (editorDialog-&gt;exec() == QDialog::Accepted)
+<a name="l00218"></a>00218 <a class="code" href="classFilterEntryDlg.html#c123c8dc1c93f960ee8eb5bcda9c7d10">_editMatch1</a>-&gt;setText (editor-&gt;regExp());
+<a name="l00219"></a>00219 }
+<a name="l00220"></a>00220 }
+<a name="l00221"></a>00221
+<a name="l00222"></a><a class="code" href="classFilterEntryDialog.html#cfcf731be60a186c0fe4f9033efee9bc">00222</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#cfcf731be60a186c0fe4f9033efee9bc">FilterEntryDialog::slotEditRegExp2</a>()
+<a name="l00223"></a>00223 {
+<a name="l00224"></a>00224 QDialog *editorDialog = KParts::ComponentFactory::createInstanceFromQuery&lt;QDialog&gt;( <span class="stringliteral">"KRegExpEditor/KRegExpEditor"</span> );
+<a name="l00225"></a>00225 <span class="keywordflow">if</span> ( editorDialog )
+<a name="l00226"></a>00226 {
+<a name="l00227"></a>00227 <span class="comment">// kdeutils was installed, so the dialog was found fetch the editor interface</span>
+<a name="l00228"></a>00228 KRegExpEditorInterface *editor = static_cast&lt;KRegExpEditorInterface *&gt;( editorDialog-&gt;qt_cast( <span class="stringliteral">"KRegExpEditorInterface"</span> ) );
+<a name="l00229"></a>00229 Q_ASSERT( editor ); <span class="comment">// This should not fail!</span>
+<a name="l00230"></a>00230
+<a name="l00231"></a>00231 <span class="comment">// now use the editor.</span>
+<a name="l00232"></a>00232 editor-&gt;setRegExp(<a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a>-&gt;text());
+<a name="l00233"></a>00233
+<a name="l00234"></a>00234 <span class="comment">// Finally exec the dialog</span>
+<a name="l00235"></a>00235 <span class="keywordflow">if</span> (editorDialog-&gt;exec() == QDialog::Accepted)
+<a name="l00236"></a>00236 <a class="code" href="classFilterEntryDlg.html#125f104edaa77af22c802d1d5c4ead27">_editMatch2</a>-&gt;setText (editor-&gt;regExp());
+<a name="l00237"></a>00237 }
+<a name="l00238"></a>00238 }
+<a name="l00239"></a>00239
+<a name="l00240"></a><a class="code" href="classFilterEntryDialog.html#1ff4443376696447597710971eb497bb">00240</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#1ff4443376696447597710971eb497bb">FilterEntryDialog::slotToggleRegExp1</a> (<span class="keywordtype">bool</span> on)
+<a name="l00241"></a>00241 {
+<a name="l00242"></a>00242 <a class="code" href="classFilterEntryDlg.html#d1f54136c4b3a91a01de4715f8eba058">_buttonEditRegExp1</a>-&gt;setEnabled (on);
+<a name="l00243"></a>00243 }
+<a name="l00244"></a>00244
+<a name="l00245"></a><a class="code" href="classFilterEntryDialog.html#8a846edd8d8d1d25c475346ecf747d64">00245</a> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#8a846edd8d8d1d25c475346ecf747d64">FilterEntryDialog::slotToggleRegExp2</a> (<span class="keywordtype">bool</span> on)
+<a name="l00246"></a>00246 {
+<a name="l00247"></a>00247 <a class="code" href="classFilterEntryDlg.html#607041668b5763bd8d64c51dc46e2b18">_buttonEditRegExp2</a>-&gt;setEnabled (on);
+<a name="l00248"></a>00248 }
+<a name="l00249"></a>00249
+<a name="l00250"></a>00250
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/filterentrydialog_8h-source.html b/doc/html/filterentrydialog_8h-source.html
new file mode 100644
index 0000000..542ac05
--- /dev/null
+++ b/doc/html/filterentrydialog_8h-source.html
@@ -0,0 +1,72 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/filterentrydialog.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>filterentrydialog.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> filterentrydialog.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Mit Sep 24 2003</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2003 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef FILTERENTRYDIALOG_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define FILTERENTRYDIALOG_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qwidget.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "filterelem.h"</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include "FilterEntryDlg.h"</span>
+<a name="l00024"></a>00024
+<a name="l00029"></a><a class="code" href="classFilterEntryDialog.html">00029</a> <span class="keyword">class </span><a class="code" href="classFilterEntryDialog.html">FilterEntryDialog</a> : <span class="keyword">public</span> <a class="code" href="classFilterEntryDlg.html">FilterEntryDlg</a> {
+<a name="l00030"></a>00030 Q_OBJECT
+<a name="l00031"></a>00031 <span class="keyword">public</span>:
+<a name="l00032"></a>00032 <a class="code" href="classFilterEntryDialog.html#8afdfaa4c1f8c87fe62d0539362d4096">FilterEntryDialog</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="classFilterElem.html">FilterElem</a>* elem);
+<a name="l00033"></a>00033 <a class="code" href="classFilterEntryDialog.html#4bd7012e9db9522d88b3d608ec8906d1">~FilterEntryDialog</a>();
+<a name="l00034"></a>00034 <span class="keyword">public</span> slots:
+<a name="l00035"></a>00035 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#f3998b74a965c468fd402a1fb6a2119a">slotOk</a> ();
+<a name="l00036"></a>00036 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#9090b80ae92e98a8e9bbe7286eaba31f">slotItem1Selected</a> (<span class="keywordtype">int</span>);
+<a name="l00037"></a>00037 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#06db22e10498d15b0522482f64b1bb2e">slotItem2Selected</a> (<span class="keywordtype">int</span>);
+<a name="l00038"></a>00038 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#cb27cf3391fbaa0c98248029da8c9d85">slotSecondCondition</a> (<span class="keywordtype">int</span>);
+<a name="l00039"></a>00039 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#d1b8e6ad082b138b40d603600619880e">slotCondition1Selected</a>(<span class="keywordtype">int</span>);
+<a name="l00040"></a>00040 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#fef2a5891f1c85fdd64316617475efc4">slotCondition2Selected</a>(<span class="keywordtype">int</span>);
+<a name="l00041"></a>00041 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#598df103af53b46357e7f5b72ca56989">slotMatch1Changed</a>(<span class="keyword">const</span> QString&amp;);
+<a name="l00042"></a>00042 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#fa9fdfabc86df022db4359efe31e8d8f">slotMatch2Changed</a>(<span class="keyword">const</span> QString&amp;);
+<a name="l00043"></a>00043 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#9b6e94a93facdc06f6c64ef2590a8160">slotResetCounter</a>();
+<a name="l00044"></a>00044 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#b18666f342aa81585cfc5a9cfb45eeaf">slotCounterChanged</a>(<span class="keywordtype">int</span>);
+<a name="l00045"></a>00045 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#fb51ce872b6f69e25d69ae885bdbda35">slotEditRegExp1</a>();
+<a name="l00046"></a>00046 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#cfcf731be60a186c0fe4f9033efee9bc">slotEditRegExp2</a>();
+<a name="l00047"></a>00047 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#1ff4443376696447597710971eb497bb">slotToggleRegExp1</a>(<span class="keywordtype">bool</span>);
+<a name="l00048"></a>00048 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFilterEntryDialog.html#8a846edd8d8d1d25c475346ecf747d64">slotToggleRegExp2</a>(<span class="keywordtype">bool</span>);
+<a name="l00049"></a>00049
+<a name="l00050"></a>00050 <span class="keyword">private</span>:
+<a name="l00051"></a><a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">00051</a> <a class="code" href="classFilterElem.html">FilterElem</a>* <a class="code" href="classFilterEntryDialog.html#9d49564214ed9c9c7ee9be3b2983cca8">_elem</a>;
+<a name="l00052"></a>00052 };
+<a name="l00053"></a>00053
+<a name="l00054"></a>00054 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/filterentrydialog_8moc_8cpp-source.html b/doc/html/filterentrydialog_8moc_8cpp-source.html
new file mode 100644
index 0000000..630ecca
--- /dev/null
+++ b/doc/html/filterentrydialog_8moc_8cpp-source.html
@@ -0,0 +1,192 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/filterentrydialog.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>filterentrydialog.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** FilterEntryDialog meta object code from reading C++ file 'filterentrydialog.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Fri Jun 29 22:09:01 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: filterentrydialog_8moc_8cpp-source.html,v 1.10 2007/07/05 17:37:50 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "filterentrydialog.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *FilterEntryDialog::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"FilterEntryDialog"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *FilterEntryDialog::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_FilterEntryDialog( <span class="stringliteral">"FilterEntryDialog"</span>, &amp;FilterEntryDialog::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString FilterEntryDialog::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"FilterEntryDialog"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString FilterEntryDialog::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"FilterEntryDialog"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* FilterEntryDialog::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = FilterEntryDlg::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotOk"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_1[] = {
+<a name="l00057"></a>00057 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00058"></a>00058 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotItem1Selected"</span>, 1, param_slot_1 };
+<a name="l00060"></a>00060 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_2[] = {
+<a name="l00061"></a>00061 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00062"></a>00062 };
+<a name="l00063"></a>00063 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_2 = {<span class="stringliteral">"slotItem2Selected"</span>, 1, param_slot_2 };
+<a name="l00064"></a>00064 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_3[] = {
+<a name="l00065"></a>00065 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00066"></a>00066 };
+<a name="l00067"></a>00067 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_3 = {<span class="stringliteral">"slotSecondCondition"</span>, 1, param_slot_3 };
+<a name="l00068"></a>00068 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_4[] = {
+<a name="l00069"></a>00069 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00070"></a>00070 };
+<a name="l00071"></a>00071 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_4 = {<span class="stringliteral">"slotCondition1Selected"</span>, 1, param_slot_4 };
+<a name="l00072"></a>00072 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_5[] = {
+<a name="l00073"></a>00073 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00074"></a>00074 };
+<a name="l00075"></a>00075 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_5 = {<span class="stringliteral">"slotCondition2Selected"</span>, 1, param_slot_5 };
+<a name="l00076"></a>00076 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_6[] = {
+<a name="l00077"></a>00077 { 0, &amp;static_QUType_QString, 0, QUParameter::In }
+<a name="l00078"></a>00078 };
+<a name="l00079"></a>00079 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_6 = {<span class="stringliteral">"slotMatch1Changed"</span>, 1, param_slot_6 };
+<a name="l00080"></a>00080 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_7[] = {
+<a name="l00081"></a>00081 { 0, &amp;static_QUType_QString, 0, QUParameter::In }
+<a name="l00082"></a>00082 };
+<a name="l00083"></a>00083 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_7 = {<span class="stringliteral">"slotMatch2Changed"</span>, 1, param_slot_7 };
+<a name="l00084"></a>00084 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_8 = {<span class="stringliteral">"slotResetCounter"</span>, 0, 0 };
+<a name="l00085"></a>00085 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_9[] = {
+<a name="l00086"></a>00086 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00087"></a>00087 };
+<a name="l00088"></a>00088 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_9 = {<span class="stringliteral">"slotCounterChanged"</span>, 1, param_slot_9 };
+<a name="l00089"></a>00089 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_10 = {<span class="stringliteral">"slotEditRegExp1"</span>, 0, 0 };
+<a name="l00090"></a>00090 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_11 = {<span class="stringliteral">"slotEditRegExp2"</span>, 0, 0 };
+<a name="l00091"></a>00091 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_12[] = {
+<a name="l00092"></a>00092 { 0, &amp;static_QUType_bool, 0, QUParameter::In }
+<a name="l00093"></a>00093 };
+<a name="l00094"></a>00094 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_12 = {<span class="stringliteral">"slotToggleRegExp1"</span>, 1, param_slot_12 };
+<a name="l00095"></a>00095 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_13[] = {
+<a name="l00096"></a>00096 { 0, &amp;static_QUType_bool, 0, QUParameter::In }
+<a name="l00097"></a>00097 };
+<a name="l00098"></a>00098 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_13 = {<span class="stringliteral">"slotToggleRegExp2"</span>, 1, param_slot_13 };
+<a name="l00099"></a>00099 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00100"></a>00100 { <span class="stringliteral">"slotOk()"</span>, &amp;slot_0, QMetaData::Public },
+<a name="l00101"></a>00101 { <span class="stringliteral">"slotItem1Selected(int)"</span>, &amp;slot_1, QMetaData::Public },
+<a name="l00102"></a>00102 { <span class="stringliteral">"slotItem2Selected(int)"</span>, &amp;slot_2, QMetaData::Public },
+<a name="l00103"></a>00103 { <span class="stringliteral">"slotSecondCondition(int)"</span>, &amp;slot_3, QMetaData::Public },
+<a name="l00104"></a>00104 { <span class="stringliteral">"slotCondition1Selected(int)"</span>, &amp;slot_4, QMetaData::Public },
+<a name="l00105"></a>00105 { <span class="stringliteral">"slotCondition2Selected(int)"</span>, &amp;slot_5, QMetaData::Public },
+<a name="l00106"></a>00106 { <span class="stringliteral">"slotMatch1Changed(const QString&amp;)"</span>, &amp;slot_6, QMetaData::Public },
+<a name="l00107"></a>00107 { <span class="stringliteral">"slotMatch2Changed(const QString&amp;)"</span>, &amp;slot_7, QMetaData::Public },
+<a name="l00108"></a>00108 { <span class="stringliteral">"slotResetCounter()"</span>, &amp;slot_8, QMetaData::Public },
+<a name="l00109"></a>00109 { <span class="stringliteral">"slotCounterChanged(int)"</span>, &amp;slot_9, QMetaData::Public },
+<a name="l00110"></a>00110 { <span class="stringliteral">"slotEditRegExp1()"</span>, &amp;slot_10, QMetaData::Public },
+<a name="l00111"></a>00111 { <span class="stringliteral">"slotEditRegExp2()"</span>, &amp;slot_11, QMetaData::Public },
+<a name="l00112"></a>00112 { <span class="stringliteral">"slotToggleRegExp1(bool)"</span>, &amp;slot_12, QMetaData::Public },
+<a name="l00113"></a>00113 { <span class="stringliteral">"slotToggleRegExp2(bool)"</span>, &amp;slot_13, QMetaData::Public }
+<a name="l00114"></a>00114 };
+<a name="l00115"></a>00115 metaObj = QMetaObject::new_metaobject(
+<a name="l00116"></a>00116 <span class="stringliteral">"FilterEntryDialog"</span>, parentObject,
+<a name="l00117"></a>00117 slot_tbl, 14,
+<a name="l00118"></a>00118 0, 0,
+<a name="l00119"></a>00119 #ifndef QT_NO_PROPERTIES
+<a name="l00120"></a>00120 0, 0,
+<a name="l00121"></a>00121 0, 0,
+<a name="l00122"></a>00122 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00123"></a>00123 0, 0 );
+<a name="l00124"></a>00124 cleanUp_FilterEntryDialog.setMetaObject( metaObj );
+<a name="l00125"></a>00125 <span class="keywordflow">return</span> metaObj;
+<a name="l00126"></a>00126 }
+<a name="l00127"></a>00127
+<a name="l00128"></a>00128 <span class="keywordtype">void</span>* FilterEntryDialog::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00129"></a>00129 {
+<a name="l00130"></a>00130 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"FilterEntryDialog"</span> ) )
+<a name="l00131"></a>00131 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00132"></a>00132 <span class="keywordflow">return</span> FilterEntryDlg::qt_cast( clname );
+<a name="l00133"></a>00133 }
+<a name="l00134"></a>00134
+<a name="l00135"></a>00135 <span class="keywordtype">bool</span> FilterEntryDialog::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00136"></a>00136 {
+<a name="l00137"></a>00137 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00138"></a>00138 <span class="keywordflow">case</span> 0: <a class="code" href="classFilterEntryDialog.html#f3998b74a965c468fd402a1fb6a2119a">slotOk</a>(); <span class="keywordflow">break</span>;
+<a name="l00139"></a>00139 <span class="keywordflow">case</span> 1: <a class="code" href="classFilterEntryDialog.html#9090b80ae92e98a8e9bbe7286eaba31f">slotItem1Selected</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00140"></a>00140 <span class="keywordflow">case</span> 2: <a class="code" href="classFilterEntryDialog.html#06db22e10498d15b0522482f64b1bb2e">slotItem2Selected</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00141"></a>00141 <span class="keywordflow">case</span> 3: <a class="code" href="classFilterEntryDialog.html#cb27cf3391fbaa0c98248029da8c9d85">slotSecondCondition</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00142"></a>00142 <span class="keywordflow">case</span> 4: <a class="code" href="classFilterEntryDialog.html#d1b8e6ad082b138b40d603600619880e">slotCondition1Selected</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00143"></a>00143 <span class="keywordflow">case</span> 5: <a class="code" href="classFilterEntryDialog.html#fef2a5891f1c85fdd64316617475efc4">slotCondition2Selected</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00144"></a>00144 <span class="keywordflow">case</span> 6: <a class="code" href="classFilterEntryDialog.html#598df103af53b46357e7f5b72ca56989">slotMatch1Changed</a>((<span class="keyword">const</span> QString&amp;)static_QUType_QString.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00145"></a>00145 <span class="keywordflow">case</span> 7: <a class="code" href="classFilterEntryDialog.html#fa9fdfabc86df022db4359efe31e8d8f">slotMatch2Changed</a>((<span class="keyword">const</span> QString&amp;)static_QUType_QString.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00146"></a>00146 <span class="keywordflow">case</span> 8: <a class="code" href="classFilterEntryDialog.html#9b6e94a93facdc06f6c64ef2590a8160">slotResetCounter</a>(); <span class="keywordflow">break</span>;
+<a name="l00147"></a>00147 <span class="keywordflow">case</span> 9: <a class="code" href="classFilterEntryDialog.html#b18666f342aa81585cfc5a9cfb45eeaf">slotCounterChanged</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00148"></a>00148 <span class="keywordflow">case</span> 10: <a class="code" href="classFilterEntryDialog.html#fb51ce872b6f69e25d69ae885bdbda35">slotEditRegExp1</a>(); <span class="keywordflow">break</span>;
+<a name="l00149"></a>00149 <span class="keywordflow">case</span> 11: <a class="code" href="classFilterEntryDialog.html#cfcf731be60a186c0fe4f9033efee9bc">slotEditRegExp2</a>(); <span class="keywordflow">break</span>;
+<a name="l00150"></a>00150 <span class="keywordflow">case</span> 12: <a class="code" href="classFilterEntryDialog.html#1ff4443376696447597710971eb497bb">slotToggleRegExp1</a>((<span class="keywordtype">bool</span>)static_QUType_bool.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00151"></a>00151 <span class="keywordflow">case</span> 13: <a class="code" href="classFilterEntryDialog.html#8a846edd8d8d1d25c475346ecf747d64">slotToggleRegExp2</a>((<span class="keywordtype">bool</span>)static_QUType_bool.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00152"></a>00152 <span class="keywordflow">default</span>:
+<a name="l00153"></a>00153 <span class="keywordflow">return</span> FilterEntryDlg::qt_invoke( _id, _o );
+<a name="l00154"></a>00154 }
+<a name="l00155"></a>00155 <span class="keywordflow">return</span> TRUE;
+<a name="l00156"></a>00156 }
+<a name="l00157"></a>00157
+<a name="l00158"></a>00158 <span class="keywordtype">bool</span> FilterEntryDialog::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00159"></a>00159 {
+<a name="l00160"></a>00160 <span class="keywordflow">return</span> FilterEntryDlg::qt_emit(_id,_o);
+<a name="l00161"></a>00161 }
+<a name="l00162"></a>00162 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00163"></a>00163 <span class="preprocessor"></span>
+<a name="l00164"></a>00164 <span class="keywordtype">bool</span> FilterEntryDialog::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00165"></a>00165 {
+<a name="l00166"></a>00166 <span class="keywordflow">return</span> FilterEntryDlg::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00167"></a>00167 }
+<a name="l00168"></a>00168
+<a name="l00169"></a>00169 <span class="keywordtype">bool</span> FilterEntryDialog::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00170"></a>00170 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/filterlist_8cpp-source.html b/doc/html/filterlist_8cpp-source.html
new file mode 100644
index 0000000..9f3a679
--- /dev/null
+++ b/doc/html/filterlist_8cpp-source.html
@@ -0,0 +1,187 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/filterlist.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>filterlist.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> filterlist.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Wed Sep 25 2003</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include "filterlist.h"</span>
+<a name="l00020"></a>00020
+<a name="l00021"></a><a class="code" href="classFilterList.html#6740dd4bfc659afb2791c0e5fcc3fdf2">00021</a> <a class="code" href="classFilterList.html#6740dd4bfc659afb2791c0e5fcc3fdf2">FilterList::FilterList</a>()
+<a name="l00022"></a>00022 {
+<a name="l00023"></a>00023 setAutoDelete (<span class="keyword">true</span>);
+<a name="l00024"></a>00024 }
+<a name="l00025"></a>00025
+<a name="l00026"></a><a class="code" href="classFilterList.html#946c89364770443052dfa2c4b56524ab">00026</a> <a class="code" href="classFilterList.html#946c89364770443052dfa2c4b56524ab">FilterList::~FilterList</a>()
+<a name="l00027"></a>00027 {
+<a name="l00028"></a>00028 }
+<a name="l00029"></a>00029
+<a name="l00030"></a><a class="code" href="classFilterList.html#ad9f3ddd25a111eaacf9b688e4f619ad">00030</a> <span class="keywordtype">void</span> <a class="code" href="classFilterList.html#ad9f3ddd25a111eaacf9b688e4f619ad">FilterList::setCombo</a> (QComboBox* combo, <span class="keywordtype">int</span> nIndex)
+<a name="l00031"></a>00031 {
+<a name="l00032"></a>00032 combo-&gt;clear ();
+<a name="l00033"></a>00033 <span class="keywordflow">for</span> (<a class="code" href="classFilterElem.html">FilterElem</a>* pElem = first(); pElem; pElem = next())
+<a name="l00034"></a>00034 {
+<a name="l00035"></a>00035 combo-&gt;insertItem (pElem-&gt;toString());
+<a name="l00036"></a>00036 }
+<a name="l00037"></a>00037 <span class="keywordflow">if</span> (nIndex &gt;= 0)
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039 at (nIndex);
+<a name="l00040"></a>00040 combo-&gt;setCurrentItem (nIndex);
+<a name="l00041"></a>00041 }
+<a name="l00042"></a>00042 }
+<a name="l00043"></a>00043
+<a name="l00044"></a><a class="code" href="classFilterList.html#9a557c994d14156b2bfad410e525da83">00044</a> <a class="code" href="classFilterList.html">FilterList</a>&amp; <a class="code" href="classFilterList.html#9a557c994d14156b2bfad410e525da83">FilterList::operator = </a>(<a class="code" href="classFilterList.html">FilterList</a>&amp; list)
+<a name="l00045"></a>00045 {
+<a name="l00046"></a>00046 clear ();
+<a name="l00047"></a>00047 <span class="keywordtype">int</span> nIndex = list.at ();
+<a name="l00048"></a>00048 <span class="keywordflow">for</span> (<a class="code" href="classFilterElem.html">FilterElem</a>* item = list.first (); item; item = list.next ())
+<a name="l00049"></a>00049 {
+<a name="l00050"></a>00050 inSort (<span class="keyword">new</span> <a class="code" href="classFilterElem.html">FilterElem</a> (*item));
+<a name="l00051"></a>00051 }
+<a name="l00052"></a>00052 at (nIndex);
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> *<span class="keyword">this</span>;
+<a name="l00054"></a>00054 }
+<a name="l00055"></a>00055
+<a name="l00056"></a><a class="code" href="classFilterList.html#54e537cdc4fcd618107f6337f8734aeb">00056</a> QCollection::Item <a class="code" href="classFilterList.html#54e537cdc4fcd618107f6337f8734aeb">FilterList::newItem</a> (QCollection::Item d)
+<a name="l00057"></a>00057 {
+<a name="l00058"></a>00058 <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classFilterElem.html">FilterElem</a> (*(<a class="code" href="classFilterElem.html">FilterElem</a>*)d);
+<a name="l00059"></a>00059 }
+<a name="l00060"></a>00060
+<a name="l00061"></a><a class="code" href="classFilterList.html#578eee835eb5a319f7aba6e4b3aab2a3">00061</a> <span class="keywordtype">int</span> <a class="code" href="classFilterList.html#578eee835eb5a319f7aba6e4b3aab2a3">FilterList::compareItems</a> (QCollection::Item item1, QCollection::Item item2 )
+<a name="l00062"></a>00062 {
+<a name="l00063"></a>00063 <a class="code" href="classFilterElem.html">FilterElem</a>* entry1 = (<a class="code" href="classFilterElem.html">FilterElem</a>*) item1;
+<a name="l00064"></a>00064 <a class="code" href="classFilterElem.html">FilterElem</a>* entry2 = (<a class="code" href="classFilterElem.html">FilterElem</a>*) item2;
+<a name="l00065"></a>00065
+<a name="l00066"></a>00066 <span class="comment">// we sort the high counters first !</span>
+<a name="l00067"></a>00067 <span class="keywordflow">if</span> (entry1-&gt;<a class="code" href="classFilterElem.html#911373fc7c641be784ff8d258afb369d">getCounter</a>() &lt; entry2-&gt;<a class="code" href="classFilterElem.html#911373fc7c641be784ff8d258afb369d">getCounter</a>())
+<a name="l00068"></a>00068 <span class="keywordflow">return</span> 1;
+<a name="l00069"></a>00069 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (entry1-&gt;<a class="code" href="classFilterElem.html#911373fc7c641be784ff8d258afb369d">getCounter</a>() == entry2-&gt;<a class="code" href="classFilterElem.html#911373fc7c641be784ff8d258afb369d">getCounter</a>())
+<a name="l00070"></a>00070 {
+<a name="l00071"></a>00071 <span class="comment">// for equal counters, we sort alphabetical</span>
+<a name="l00072"></a>00072 <span class="keywordflow">if</span> (entry1-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>() &gt; entry2-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>())
+<a name="l00073"></a>00073 <span class="keywordflow">return</span> 1;
+<a name="l00074"></a>00074 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (entry1-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>() == entry2-&gt;<a class="code" href="classFilterElem.html#252af203fd2bf1784359034c73a7f6c8">toString</a>())
+<a name="l00075"></a>00075 <span class="keywordflow">return</span> 0;
+<a name="l00076"></a>00076 <span class="keywordflow">else</span>
+<a name="l00077"></a>00077 <span class="keywordflow">return</span> -1;
+<a name="l00078"></a>00078 }
+<a name="l00079"></a>00079 <span class="keywordflow">else</span> <span class="keywordflow">return</span> -1;
+<a name="l00080"></a>00080 }
+<a name="l00081"></a>00081
+<a name="l00082"></a><a class="code" href="classFilterList.html#edae5c6d93981d1f4cee91d333492497">00082</a> <span class="keywordtype">void</span> <a class="code" href="classFilterList.html#edae5c6d93981d1f4cee91d333492497">FilterList::readOptions</a> (KConfig* config)
+<a name="l00083"></a>00083 {
+<a name="l00084"></a>00084 <span class="keywordtype">bool</span> goon = <span class="keyword">true</span>;
+<a name="l00085"></a>00085 <span class="keywordtype">int</span> i = 0;
+<a name="l00086"></a>00086 <span class="keywordflow">while</span> (goon)
+<a name="l00087"></a>00087 {
+<a name="l00088"></a>00088 config-&gt;setGroup (QString(<span class="stringliteral">"filter%1"</span>).arg(i));
+<a name="l00089"></a>00089 QString name (config-&gt;readEntry (<span class="stringliteral">"name"</span>));
+<a name="l00090"></a>00090 <span class="keywordflow">if</span> (!name.isEmpty ())
+<a name="l00091"></a>00091 {
+<a name="l00092"></a>00092 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> counter = config-&gt;readNumEntry (<span class="stringliteral">"counter"</span>);
+<a name="l00093"></a>00093 <a class="code" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">FilterRecord::filterType</a> type = (<a class="code" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">FilterRecord::filterType</a>)config-&gt;readNumEntry (<span class="stringliteral">"type1"</span>);
+<a name="l00094"></a>00094 <a class="code" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">FilterRecord::expressionType</a> expr = (<a class="code" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">FilterRecord::expressionType</a>)config-&gt;readNumEntry (<span class="stringliteral">"expression1"</span>);
+<a name="l00095"></a>00095 QString match = config-&gt;readEntry (<span class="stringliteral">"match1"</span>);
+<a name="l00096"></a>00096 <span class="keywordtype">bool</span> caseSensitive = (bool)config-&gt;readNumEntry (<span class="stringliteral">"casesensitive1"</span>, 0);
+<a name="l00097"></a>00097 <span class="keywordtype">bool</span> regExp = (bool)config-&gt;readNumEntry (<span class="stringliteral">"regexp1"</span>, 0);
+<a name="l00098"></a>00098
+<a name="l00099"></a>00099 <a class="code" href="classFilterElem.html">FilterElem</a>* filter = <span class="keyword">new</span> <a class="code" href="classFilterElem.html">FilterElem</a> (<a class="code" href="classFilterRecord.html">FilterRecord</a>(type, expr, match, caseSensitive, regExp));
+<a name="l00100"></a>00100 filter-&gt;<a class="code" href="classFilterElem.html#032bde919691a3b2813f0d70b661f98a">setCounter</a>( counter );
+<a name="l00101"></a>00101
+<a name="l00102"></a>00102 <a class="code" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">FilterElem::secondCondition</a> secondCondition = (<a class="code" href="classFilterElem.html#211ab8f8eebe5e5e3d87d5ca0b71706c">FilterElem::secondCondition</a>)config-&gt;readNumEntry (<span class="stringliteral">"secondcondition"</span>);
+<a name="l00103"></a>00103 type = (<a class="code" href="classFilterRecord.html#2c0c872991f558350b5f4b8030f63fdb">FilterRecord::filterType</a>)config-&gt;readNumEntry (<span class="stringliteral">"type2"</span>);
+<a name="l00104"></a>00104 expr = (<a class="code" href="classFilterRecord.html#4465ee708aed29f373c691ad63560344">FilterRecord::expressionType</a>)config-&gt;readNumEntry (<span class="stringliteral">"expression2"</span>);
+<a name="l00105"></a>00105 match = config-&gt;readEntry (<span class="stringliteral">"match2"</span>);
+<a name="l00106"></a>00106 caseSensitive = (bool)config-&gt;readNumEntry (<span class="stringliteral">"casesensitive2"</span>, 0);
+<a name="l00107"></a>00107 regExp = (bool)config-&gt;readNumEntry (<span class="stringliteral">"regexp2"</span>, 0);
+<a name="l00108"></a>00108
+<a name="l00109"></a>00109 filter-&gt;<a class="code" href="classFilterElem.html#e8ee6b5b370ed5c092e43f7090c0d75f">setSecondCondition</a>(secondCondition, <a class="code" href="classFilterRecord.html">FilterRecord</a> (type, expr, match, caseSensitive, regExp));
+<a name="l00110"></a>00110
+<a name="l00111"></a>00111 inSort (filter);
+<a name="l00112"></a>00112 i++;
+<a name="l00113"></a>00113 }
+<a name="l00114"></a>00114 <span class="keywordflow">else</span>
+<a name="l00115"></a>00115 goon = <span class="keyword">false</span>;
+<a name="l00116"></a>00116 }
+<a name="l00117"></a>00117 <span class="keywordflow">if</span> (i &gt; 0)
+<a name="l00118"></a>00118 at (0);
+<a name="l00119"></a>00119 sort ();
+<a name="l00120"></a>00120 }
+<a name="l00121"></a>00121
+<a name="l00122"></a><a class="code" href="classFilterList.html#03c7e453e6d4cd54863d2ab38dad684c">00122</a> <span class="keywordtype">void</span> <a class="code" href="classFilterList.html#03c7e453e6d4cd54863d2ab38dad684c">FilterList::saveOptions</a> (KConfig* config)
+<a name="l00123"></a>00123 {
+<a name="l00124"></a>00124 <span class="comment">//at first we remove all filter setups from the config</span>
+<a name="l00125"></a>00125 <span class="keywordtype">int</span> filterNumber = 0; <span class="comment">//number of deleted filter</span>
+<a name="l00126"></a>00126 <span class="keywordtype">bool</span> ready = <span class="keyword">false</span>; <span class="comment">//TRUE - all filters are deleted</span>
+<a name="l00127"></a>00127
+<a name="l00128"></a>00128 <span class="keywordflow">while</span>( !ready ) <span class="comment">//loop until the last filter setup was removed (ready == true)</span>
+<a name="l00129"></a>00129 {
+<a name="l00130"></a>00130 <span class="comment">//do we have a setup with the current number (filterNumber) ?</span>
+<a name="l00131"></a>00131 <span class="keywordflow">if</span>( config-&gt;hasGroup( QString( CONFIG_GROUP_FILTER ) + QString( <span class="stringliteral">"%1"</span> ).arg( filterNumber ) ) )
+<a name="l00132"></a>00132 {
+<a name="l00133"></a>00133 <span class="comment">//remove group</span>
+<a name="l00134"></a>00134 config-&gt;deleteGroup( QString( CONFIG_GROUP_FILTER ) + QString( <span class="stringliteral">"%1"</span> ).arg( filterNumber ) );
+<a name="l00135"></a>00135
+<a name="l00136"></a>00136 <span class="comment">//process next filter</span>
+<a name="l00137"></a>00137 filterNumber++;
+<a name="l00138"></a>00138 }
+<a name="l00139"></a>00139 <span class="keywordflow">else</span>
+<a name="l00140"></a>00140 ready = <span class="keyword">true</span>;
+<a name="l00141"></a>00141 }
+<a name="l00142"></a>00142
+<a name="l00143"></a>00143 <span class="comment">//now we write the configured filters into the config</span>
+<a name="l00144"></a>00144 kdDebug () &lt;&lt; <span class="stringliteral">"FilterList::saveOptions"</span> &lt;&lt; endl;
+<a name="l00145"></a>00145 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; count (); i++)
+<a name="l00146"></a>00146 {
+<a name="l00147"></a>00147 config-&gt;setGroup (QString (<span class="stringliteral">"filter%1"</span>).arg(i));
+<a name="l00148"></a>00148 config-&gt;writeEntry (<span class="stringliteral">"name"</span>, at(i)-&gt;toString());
+<a name="l00149"></a>00149 config-&gt;writeEntry (<span class="stringliteral">"counter"</span>, at(i)-&gt;getCounter() );
+<a name="l00150"></a>00150
+<a name="l00151"></a>00151 config-&gt;writeEntry (<span class="stringliteral">"type1"</span>, at(i)-&gt;_filter1._type);
+<a name="l00152"></a>00152 config-&gt;writeEntry (<span class="stringliteral">"expression1"</span>, at(i)-&gt;_filter1._expression);
+<a name="l00153"></a>00153 config-&gt;writeEntry (<span class="stringliteral">"match1"</span>, at(i)-&gt;_filter1._match);
+<a name="l00154"></a>00154 config-&gt;writeEntry (<span class="stringliteral">"casesensitive1"</span>, at(i)-&gt;_filter1._CaseSensitive);
+<a name="l00155"></a>00155 config-&gt;writeEntry (<span class="stringliteral">"regexp1"</span>, at(i)-&gt;_filter1._RegExp);
+<a name="l00156"></a>00156
+<a name="l00157"></a>00157 config-&gt;writeEntry (<span class="stringliteral">"secondcondition"</span>, at(i)-&gt;_secondCondition);
+<a name="l00158"></a>00158
+<a name="l00159"></a>00159 config-&gt;writeEntry (<span class="stringliteral">"type2"</span>, at(i)-&gt;_filter2._type);
+<a name="l00160"></a>00160 config-&gt;writeEntry (<span class="stringliteral">"expression2"</span>, at(i)-&gt;_filter2._expression);
+<a name="l00161"></a>00161 config-&gt;writeEntry (<span class="stringliteral">"match2"</span>, at(i)-&gt;_filter2._match);
+<a name="l00162"></a>00162 config-&gt;writeEntry (<span class="stringliteral">"casesensitive2"</span>, at(i)-&gt;_filter2._CaseSensitive);
+<a name="l00163"></a>00163 config-&gt;writeEntry (<span class="stringliteral">"regexp2"</span>, at(i)-&gt;_filter2._RegExp);
+<a name="l00164"></a>00164 }
+<a name="l00165"></a>00165 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/filterlist_8h-source.html b/doc/html/filterlist_8h-source.html
new file mode 100644
index 0000000..576d7bf
--- /dev/null
+++ b/doc/html/filterlist_8h-source.html
@@ -0,0 +1,74 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/filterlist.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>filterlist.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> filterlist.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Wed Sep 25 2003</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef FILTERLIST_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define FILTERLIST_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="comment">//Qt headers</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qptrlist.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;qcombobox.h&gt;</span>
+<a name="l00024"></a>00024
+<a name="l00025"></a>00025 <span class="comment">//KDE headers</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;kconfig.h&gt;</span>
+<a name="l00027"></a>00027
+<a name="l00028"></a>00028 <span class="comment">//KShowmail headers</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include "filterelem.h"</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include "constants.h"</span>
+<a name="l00031"></a>00031
+<a name="l00035"></a>00035 <span class="keyword">class </span><a class="code" href="classFilterElem.html">FilterElem</a>;
+<a name="l00036"></a>00036
+<a name="l00037"></a><a class="code" href="classFilterList.html">00037</a> <span class="keyword">class </span><a class="code" href="classFilterList.html">FilterList</a> : <span class="keyword">public</span> QPtrList&lt;FilterElem&gt;
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039 <span class="keyword">public</span>:
+<a name="l00040"></a>00040
+<a name="l00041"></a>00041 <a class="code" href="classFilterList.html#6740dd4bfc659afb2791c0e5fcc3fdf2">FilterList</a> ();
+<a name="l00042"></a>00042 <span class="keyword">virtual</span> <a class="code" href="classFilterList.html#946c89364770443052dfa2c4b56524ab">~FilterList</a>();
+<a name="l00043"></a>00043 <a class="code" href="classFilterList.html">FilterList</a>&amp; <a class="code" href="classFilterList.html#9a557c994d14156b2bfad410e525da83">operator = </a>(<a class="code" href="classFilterList.html">FilterList</a>&amp; right);
+<a name="l00044"></a>00044 <span class="keywordtype">void</span> <a class="code" href="classFilterList.html#ad9f3ddd25a111eaacf9b688e4f619ad">setCombo</a> (QComboBox* combo, <span class="keywordtype">int</span> nIndex);
+<a name="l00045"></a>00045 <span class="keywordtype">void</span> <a class="code" href="classFilterList.html#edae5c6d93981d1f4cee91d333492497">readOptions</a> (KConfig* config);
+<a name="l00046"></a>00046
+<a name="l00051"></a>00051 <span class="keywordtype">void</span> <a class="code" href="classFilterList.html#03c7e453e6d4cd54863d2ab38dad684c">saveOptions</a> (KConfig* config);
+<a name="l00052"></a>00052
+<a name="l00053"></a>00053 <span class="keyword">protected</span>:
+<a name="l00054"></a>00054
+<a name="l00055"></a>00055 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classFilterList.html#578eee835eb5a319f7aba6e4b3aab2a3">compareItems</a> (QCollection::Item item1, QCollection::Item item2);
+<a name="l00056"></a>00056 <span class="keyword">virtual</span> QCollection::Item <a class="code" href="classFilterList.html#54e537cdc4fcd618107f6337f8734aeb">newItem</a> (QCollection::Item d);
+<a name="l00057"></a>00057 };
+<a name="l00058"></a>00058
+<a name="l00059"></a>00059 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions.html b/doc/html/functions.html
new file mode 100644
index 0000000..25b17b1
--- /dev/null
+++ b/doc/html/functions.html
@@ -0,0 +1,107 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index__">- _ -</a></h3><ul>
+<li>_account
+: <a class="el" href="classAccountSetupItem.html#6f42afbe7a05c1d431c99fe9de2544cf">AccountSetupItem</a>
+<li>_active
+: <a class="el" href="classAccountSetupItem.html#08984a59b3a03b9ac919da388f9b4d77">AccountSetupItem</a>
+<li>_colAccount
+: <a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075813c78adafbe56de880d99357e659832">ShowListViewItem</a>
+<li>_colContent
+: <a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d07564802e43724f98301b74055e164e8e46">ShowListViewItem</a>
+<li>_colDate
+: <a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075783ffd9ee58a24ab0f850b9a02af6178">ShowListViewItem</a>
+<li>_colFrom
+: <a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d0750c73c4f727d2ef0a095d76df9fadc5ea">ShowListViewItem</a>
+<li>_colNumber
+: <a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075ce177d8abde0abb4153cdf4a5d4ef8ee">ShowListViewItem</a>
+<li>_colSize
+: <a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075d9a6583b5b7e2a25f0678985afa45950">ShowListViewItem</a>
+<li>_colState
+: <a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075d33223c37563c4e7c517e8428d272c42">ShowListViewItem</a>
+<li>_colSubject
+: <a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075c0d8dc86f4421edd8c8e7327f0729737">ShowListViewItem</a>
+<li>_colTo
+: <a class="el" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075c3cae478dcb1fd7ef007ffd09e2576e0">ShowListViewItem</a>
+<li>_password
+: <a class="el" href="classAccountSetupItem.html#8ccb6320dbfbdcc84c9153d44cbc7f53">AccountSetupItem</a>
+<li>_passwordStorage
+: <a class="el" href="classAccountSetupItem.html#cc3d0e67733b2651627ced562a78493d">AccountSetupItem</a>
+<li>_port
+: <a class="el" href="classAccountSetupItem.html#09655b292b183798d38134f6239904a9">AccountSetupItem</a>
+<li>_protocol
+: <a class="el" href="classAccountSetupItem.html#0a8ebdb7e6a0fe7f8d2087e76886e83f">AccountSetupItem</a>
+<li>_server
+: <a class="el" href="classAccountSetupItem.html#63330ee312d151d983c2c6d7599c1f7a">AccountSetupItem</a>
+<li>_transferSecurity
+: <a class="el" href="classAccountSetupItem.html#a2efe33199e3634f32d700331e8c6402">AccountSetupItem</a>
+<li>_user
+: <a class="el" href="classAccountSetupItem.html#a5d1dc044834b57ed6cb965f1b566d18">AccountSetupItem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x61.html b/doc/html/functions_0x61.html
new file mode 100644
index 0000000..643919d
--- /dev/null
+++ b/doc/html/functions_0x61.html
@@ -0,0 +1,136 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li id="current"><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
+<li>account
+: <a class="el" href="classFilterLogEntry.html#712d167a9ba886be14ca9ad1bc8341f7">FilterLogEntry</a>
+, <a class="el" href="classFilterLogViewDeletedItem.html#d36bac5f37a31a7d6b1b3070d0ac89f7">FilterLogViewDeletedItem</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#c101868fd42507b8493b1f514a81fbc2">FilterLogViewMovedItem</a>
+, <a class="el" href="classAccountSetupDialog.html#0585145e7ae4b3e22377c6ed787c9eb0">AccountSetupDialog</a>
+, <a class="el" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">ServerDialog</a>
+<li>AccountDeletionMap
+: <a class="el" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">ConfigList</a>
+<li>AccountListView
+: <a class="el" href="classConfigAccounts.html#ced2eabc665f10450ae950e713e5eba3">ConfigAccounts</a>
+<li>AccountRefreshMap
+: <a class="el" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">ConfigList</a>
+<li>AccountSetupDialog()
+: <a class="el" href="classAccountSetupDialog.html#7759eda115eefba12fb2de58f286edc2">AccountSetupDialog</a>
+<li>AccountSetupItem()
+: <a class="el" href="classAccountSetupItem.html#9c970fc3be4c2d02bb1f194d6ec97d62">AccountSetupItem</a>
+<li>AccountShowBodiesMap
+: <a class="el" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">ConfigList</a>
+<li>act
+: <a class="el" href="classFilterLogEntry.html#491ab294e7c012aaf2ecefbd5a40467a">FilterLogEntry</a>
+<li>action
+: <a class="el" href="structTypes_1_1DownloadActionParams__Type.html#d41d45e85476d483baa76fd209ea4cff">Types::DownloadActionParams_Type</a>
+, <a class="el" href="classFilterSetupItem.html#546a1bdc65a76a246d7d1d5209942b38">FilterSetupItem</a>
+, <a class="el" href="classFilterItem.html#d64fa3d718d8c849dfe6dff9d3e595b3">FilterItem</a>
+<li>active
+: <a class="el" href="classHeaderFilter.html#3c14bb815e8616df14a6c225fd9d4469">HeaderFilter</a>
+<li>addCriteriaWidget()
+: <a class="el" href="classFilterSetupDialog.html#2aa9a08f938a280309bbc11a53ae1356">FilterSetupDialog</a>
+<li>addDeletedMail()
+: <a class="el" href="classFilterLog.html#5211bb97e97e271f56fb29d47ddde90e">FilterLog</a>
+<li>addEntry()
+: <a class="el" href="classFilterLog.html#ae0fa8c9dfa7defe284a24906bfb6894">FilterLog</a>
+<li>addFeatureList()
+: <a class="el" href="classKShowMailApp.html#7928ea906a7abe17a5f56f110cdd58d6">KShowMailApp</a>
+<li>addMailBoxListItem()
+: <a class="el" href="classMailBoxWizard.html#4c159ac204891faf8579cb488f841ca1">MailBoxWizard</a>
+<li>addMovedMail()
+: <a class="el" href="classFilterLog.html#1e98c535579ec9820c427e19f62078b2">FilterLog</a>
+<li>addView()
+: <a class="el" href="classKshowmailDoc.html#d9c7e004cad6927dd62d7a0d8f1f29b1">KshowmailDoc</a>
+<li>AlertDialog()
+: <a class="el" href="classAlertDialog.html#0c3106b439a19f0b5a240b3095595880">AlertDialog</a>
+<li>AlertDlg()
+: <a class="el" href="classAlertDlg.html#b8b7463dbb2a1c27a84f3846db46027b">AlertDlg</a>
+<li>AlertDlgLayout
+: <a class="el" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlg</a>
+<li>allowHTML()
+: <a class="el" href="classConfigList.html#4cd09107151c848fafe17db0c8e9a4a6">ConfigList</a>
+<li>appConfig
+: <a class="el" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">ConfigElem</a>
+<li>appendNewMail()
+: <a class="el" href="classShowRecord.html#97b16a09a5a51b68f7d2b3efb95c80ea">ShowRecord</a>
+<li>applyFilters()
+: <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">ConfigElem</a>
+<li>applyFiltersDeleted()
+: <a class="el" href="classConfigElem.html#6a1f1cb81c4bcca055e0b98bd9fb0cf7">ConfigElem</a>
+<li>applyHeaderFilter()
+: <a class="el" href="classShowRecordElem.html#09ca2f0d70bdf8ed2bb7d75ef13bec12">ShowRecordElem</a>
+, <a class="el" href="classShowRecord.html#a2c3ad37ee0eb7eb41d7820e05352502">ShowRecord</a>
+<li>askCloseConfirmation()
+: <a class="el" href="classKShowMailApp.html#d93e3467abdad835b02dde5f514c4013">KShowMailApp</a>
+<li>assertPassword()
+: <a class="el" href="classConfigElem.html#973328114a20a798887ab040aba33141">ConfigElem</a>
+<li>AutoRefreshOn()
+: <a class="el" href="classConfigList.html#cae6685097cd8e5e63cee28e17d92d41">ConfigList</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x62.html b/doc/html/functions_0x62.html
new file mode 100644
index 0000000..4812c96
--- /dev/null
+++ b/doc/html/functions_0x62.html
@@ -0,0 +1,130 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li id="current"><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
+<li>beep()
+: <a class="el" href="classConfigList.html#28739bc3cd7ce87dbd7f994081375a41">ConfigList</a>
+<li>Black
+: <a class="el" href="classSenderListDialog.html#c9198349954e23bb42c0d5a6c573fbbd0a92a85d0befa7f9346e343c016a187b">SenderListDialog</a>
+<li>blacklist
+: <a class="el" href="classSenderListFilter.html#18cefb81d2ba5d663f3c5d26d098265b">SenderListFilter</a>
+<li>blacklistAction
+: <a class="el" href="classSenderListFilter.html#bbde9560d26d88cd90b7adcdf9622240">SenderListFilter</a>
+<li>btnAdd
+: <a class="el" href="classConfigFilter.html#d82b8fe7bca580c1c86361be2d998a29">ConfigFilter</a>
+, <a class="el" href="classConfigAccounts.html#0c5ebb039f7347640a58c5ee57098779">ConfigAccounts</a>
+<li>btnAddCriteria
+: <a class="el" href="classFilterSetupDialog.html#483e48b31515d4092ff732909d04e70f">FilterSetupDialog</a>
+<li>btnDelMailsRemoveDays
+: <a class="el" href="classConfigLog.html#fce2bf2c6b740bf60db4c1d3eb006689">ConfigLog</a>
+<li>btnDelMailsRemoveExit
+: <a class="el" href="classConfigLog.html#68ebd0dad2255583411429bd5e953d4b">ConfigLog</a>
+<li>btnEdit
+: <a class="el" href="classConfigAccounts.html#95cd2f5c99c1d91560b46ced9d9d1fbf">ConfigAccounts</a>
+, <a class="el" href="classConfigFilter.html#e1763aa712de4ef72f045eeadc8af472">ConfigFilter</a>
+<li>btnMailboxWizard
+: <a class="el" href="classConfigFilter.html#e44fc384a0fa34800b713b726cb67b39">ConfigFilter</a>
+, <a class="el" href="classConfigSpamcheck.html#79c1b7b26c94e7fa9353f478b67aad36">ConfigSpamcheck</a>
+, <a class="el" href="classFilterSetupDialog.html#be7549b4b90d586b05236dd9077703c2">FilterSetupDialog</a>
+<li>btnMailDir
+: <a class="el" href="classMailBoxWizard.html#6d8dfe0d36dd87385738df672446b149">MailBoxWizard</a>
+<li>btnMoveBottom
+: <a class="el" href="classConfigFilter.html#1f56ae436a4df8ae216e19f1b9ecbf95">ConfigFilter</a>
+<li>btnMoveDown
+: <a class="el" href="classConfigFilter.html#6d50c434a5c67d23785cf70a4958f536">ConfigFilter</a>
+<li>btnMoveTop
+: <a class="el" href="classConfigFilter.html#3936c764c0a6152232e13f5a25b55ab6">ConfigFilter</a>
+<li>btnMoveUp
+: <a class="el" href="classConfigFilter.html#f6f460803a19cd2e1b5f56cb9f5a7d0a">ConfigFilter</a>
+<li>btnMovMailsRemoveDays
+: <a class="el" href="classConfigLog.html#84301947e00f41cff17fa0dabdac23da">ConfigLog</a>
+<li>btnMovMailsRemoveExit
+: <a class="el" href="classConfigLog.html#c8a6cb4285aa777d4c6b4207e598f680">ConfigLog</a>
+<li>btnNewMailsChooseCommand
+: <a class="el" href="classConfigActions.html#1b0e5c5712a4c791ace1441190ec44b4">ConfigActions</a>
+<li>btnNewMailsChooseSound
+: <a class="el" href="classConfigActions.html#ba27e4247bca54e550c623e0c0e43e2e">ConfigActions</a>
+<li>btnNewMailsExecCommand
+: <a class="el" href="classConfigActions.html#e44618d32db70130b3d39b1d7bc45acb">ConfigActions</a>
+<li>btnNewMailsPlaySound
+: <a class="el" href="classConfigActions.html#36d655db8bb7763e522adf67df33d747">ConfigActions</a>
+<li>btnOpenBlacklist
+: <a class="el" href="classConfigFilter.html#7174045c4556a9561c4973b9ef939242">ConfigFilter</a>
+<li>btnOpenRegExpEditor
+: <a class="el" href="classFilterCriteriaWidget.html#41299a8b2eca0903834c110ce0b25384">FilterCriteriaWidget</a>
+<li>btnOpenWhitelist
+: <a class="el" href="classConfigFilter.html#5f2657065bc7241093ea3cfc1a8992bc">ConfigFilter</a>
+<li>btnRemove
+: <a class="el" href="classConfigFilter.html#a07c7a7e15ccdf67f08d074e81ba4376">ConfigFilter</a>
+, <a class="el" href="classConfigAccounts.html#52e23250590a8ad13e1992898a23e635">ConfigAccounts</a>
+<li>btnRemoveCriteria
+: <a class="el" href="classFilterSetupDialog.html#dd3a087c23bd8792411f377a0d93f924">FilterSetupDialog</a>
+<li>btnTest
+: <a class="el" href="classConfigSpamcheck.html#d4a40e236a30b5338df427377f6c4c75">ConfigSpamcheck</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x63.html b/doc/html/functions_0x63.html
new file mode 100644
index 0000000..bf354fe
--- /dev/null
+++ b/doc/html/functions_0x63.html
@@ -0,0 +1,285 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li id="current"><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
+<li>cancelRefresh()
+: <a class="el" href="classConfigElem.html#cdba8db3598e2390099294968623abc4">ConfigElem</a>
+<li>cancelShowHeaders
+: <a class="el" href="classShowRecord.html#8f9c8ce1f77c014cd4efcbf65c9b11f5">ShowRecord</a>
+, <a class="el" href="classShowRecordElem.html#b6aceead6b70f3e3f5e6af530c5ac1af">ShowRecordElem</a>
+, <a class="el" href="classConfigElem.html#85fb09c9cdc92ae5e8663bf8c6c4a615">ConfigElem</a>
+<li>cboProtocol
+: <a class="el" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#ad109f88ad94c12be8f6a7f5892f8308">AccountSetupDialog</a>
+<li>check()
+: <a class="el" href="classFilterItem.html#439cff33995713fb341654a1d6f6fffa">FilterItem</a>
+, <a class="el" href="classFilterItemCriteria.html#e375925202f58a23336366bf68c8d1ab">FilterItemCriteria</a>
+, <a class="el" href="classHeaderFilter.html#ebfa41067bf1df5c34ebeb5fb6ea9029">HeaderFilter</a>
+, <a class="el" href="classSenderListFilter.html#03ac4bb843906d784fcbe6ac8bef7b31">SenderListFilter</a>
+<li>checkNum()
+: <a class="el" href="classFilterItemCriteria.html#370357b8a308aaeea0259ac83363f974">FilterItemCriteria</a>
+<li>checkText()
+: <a class="el" href="classFilterItemCriteria.html#afabde4db9b123bfd29b631654d17284">FilterItemCriteria</a>
+<li>chkAccountlistAccount
+: <a class="el" href="classConfigDisplay.html#eed2bda3ddef71cb93551499edcdd7d4">ConfigDisplay</a>
+<li>chkAccountlistActive
+: <a class="el" href="classConfigDisplay.html#02db52720d61f28444a2b8fcacb37797">ConfigDisplay</a>
+<li>chkAccountlistMessages
+: <a class="el" href="classConfigDisplay.html#7957216f75d54b7dbacb495b413fc9d0">ConfigDisplay</a>
+<li>chkAccountlistServer
+: <a class="el" href="classConfigDisplay.html#7ee137ded8f5f0f4277041c45d0d8b9a">ConfigDisplay</a>
+<li>chkAccountlistSize
+: <a class="el" href="classConfigDisplay.html#84d2c8afcd8f9d3bb5115e8d2c270cdf">ConfigDisplay</a>
+<li>chkAccountlistUser
+: <a class="el" href="classConfigDisplay.html#f08e20265d27eea0dee1a849e785e5aa">ConfigDisplay</a>
+<li>chkActivateFilter
+: <a class="el" href="classConfigFilter.html#c2a415bbf59e3e3849a646e2175a14dd">ConfigFilter</a>
+<li>chkActive
+: <a class="el" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#ae0af23b1fed06d16ebb995a4cc881db">AccountSetupDialog</a>
+<li>chkAllowHTML
+: <a class="el" href="classConfigDisplay.html#0604eee5dd84775d044bd149747754e9">ConfigDisplay</a>
+<li>chkCaseSensitive
+: <a class="el" href="classFilterCriteriaWidget.html#464ed7fa31017e93ecb38f4dd86472f5">FilterCriteriaWidget</a>
+<li>chkCloseToTray
+: <a class="el" href="classConfigGeneral.html#3254112303352fc179d917eb3d07ecaa">ConfigGeneral</a>
+<li>chkConfirmClose
+: <a class="el" href="classConfigGeneral.html#1d88b57020db593d5d5dfbad12de0fff">ConfigGeneral</a>
+<li>chkConfirmDelete
+: <a class="el" href="classConfigGeneral.html#8c6c174874a4bb90ba1436e07b87ad80">ConfigGeneral</a>
+<li>chkKeepNew
+: <a class="el" href="classConfigGeneral.html#20f2f3ce054fe6e0b7258e50f4414457">ConfigGeneral</a>
+<li>chkLogDeletedMails
+: <a class="el" href="classConfigLog.html#b8fff5d7cbb30185227c702e1b679be6">ConfigLog</a>
+<li>chkLogMovedMails
+: <a class="el" href="classConfigLog.html#dc2656eee036eb7da225edf63b73f2d1">ConfigLog</a>
+<li>chkMessagelistAccount
+: <a class="el" href="classConfigDisplay.html#f493b7da71ca2d9a77cc5746f76d61b1">ConfigDisplay</a>
+<li>chkMessagelistContent
+: <a class="el" href="classConfigDisplay.html#30f694a335efce99f6872d348cb00dc0">ConfigDisplay</a>
+<li>chkMessagelistDate
+: <a class="el" href="classConfigDisplay.html#a22a37699e555d084931f436b6e59bed">ConfigDisplay</a>
+<li>chkMessagelistFrom
+: <a class="el" href="classConfigDisplay.html#407aaa1e6679678e8548a24e9f60ab34">ConfigDisplay</a>
+<li>chkMessagelistNumber
+: <a class="el" href="classConfigDisplay.html#7cd606b3c05b2681bb7aba6322f084bc">ConfigDisplay</a>
+<li>chkMessagelistSize
+: <a class="el" href="classConfigDisplay.html#7491226de75afc818d742dfb1416401e">ConfigDisplay</a>
+<li>chkMessagelistState
+: <a class="el" href="classConfigDisplay.html#a96647e5836a520a79d0a6a5147eda81">ConfigDisplay</a>
+<li>chkMessagelistSubject
+: <a class="el" href="classConfigDisplay.html#6f988f3e6dcc34a0709b9f997b889488">ConfigDisplay</a>
+<li>chkMessagelistTo
+: <a class="el" href="classConfigDisplay.html#ec3b78b0095f9dacb0ae0a488ecd5113">ConfigDisplay</a>
+<li>chkMinimizeToTray
+: <a class="el" href="classConfigGeneral.html#7397987b9f58654afcbcc35c3b6069fa">ConfigGeneral</a>
+<li>chkNewMailsAlertWindow
+: <a class="el" href="classConfigActions.html#4efebd1c902bf5a2f3a1bb60f9a67c5f">ConfigActions</a>
+<li>chkNewMailsBeep
+: <a class="el" href="classConfigActions.html#cb1d2eed97f240d95881272500d55923">ConfigActions</a>
+<li>chkNewMailsCommand
+: <a class="el" href="classConfigActions.html#3a0cd2fad3a3d03dc4c4227cc511265f">ConfigActions</a>
+<li>chkNewMailsMainWindow
+: <a class="el" href="classConfigActions.html#3a2c278df3742d407c8c85f649131869">ConfigActions</a>
+<li>chkNewMailsSound
+: <a class="el" href="classConfigActions.html#fef65cfb36bbcd44a2ec8c536a7913bd">ConfigActions</a>
+<li>chkNoNewMailsMinimize
+: <a class="el" href="classConfigActions.html#cd4695212a9a586e7a480fde4319970f">ConfigActions</a>
+<li>chkNoNewMailsTerminate
+: <a class="el" href="classConfigActions.html#1714fffad832835ae72a8ab1b72c6e63">ConfigActions</a>
+<li>chkShowConnectionErrors
+: <a class="el" href="classConfigGeneral.html#33232a5c81b81ebf699f128eb74bcc9c">ConfigGeneral</a>
+<li>chkStartMinimized
+: <a class="el" href="classConfigGeneral.html#506f6878bd107dcc0d515236fcb65225">ConfigGeneral</a>
+<li>clear()
+: <a class="el" href="classKShowMailDock.html#60d63eca3fd1c24df211f88839ab197c">KShowMailDock</a>
+<li>clearDeletedMailsLog()
+: <a class="el" href="classFilterLog.html#ce778330869163990b75091ff52eaaed">FilterLog</a>
+<li>clearMailList()
+: <a class="el" href="classConfigElem.html#5fc7f4f73b17bb27faef10d96b80a77c">ConfigElem</a>
+<li>clearMailListView()
+: <a class="el" href="classKshowmailView.html#5cc4e2c1caaf6fae6af80b068aada95e">KshowmailView</a>
+<li>clearMovedMailsLog()
+: <a class="el" href="classFilterLog.html#ada8a65c0ff35e777127dff2977644b4">FilterLog</a>
+<li>closeToTray()
+: <a class="el" href="classConfigList.html#fa610dea65deb4e7e26c01926e740e84">ConfigList</a>
+<li>cmbAction
+: <a class="el" href="classConfigSpamcheck.html#061d393ca53e544cc648af30cf0b9a35">ConfigSpamcheck</a>
+, <a class="el" href="classFilterSetupDialog.html#299b83408156afea479e156d64b28208">FilterSetupDialog</a>
+<li>cmbActionOthers
+: <a class="el" href="classConfigFilter.html#c98a570d959fda8ecf0ae3abf6c6045b">ConfigFilter</a>
+<li>cmbConditionNum
+: <a class="el" href="classFilterCriteriaWidget.html#7bcb4db13575d312986ee56b18149256">FilterCriteriaWidget</a>
+<li>cmbConditionText
+: <a class="el" href="classFilterCriteriaWidget.html#757183597ee7613f518ea7a0e6dc3c86">FilterCriteriaWidget</a>
+<li>cmbSource
+: <a class="el" href="classFilterCriteriaWidget.html#a60915511ddf8072f4fb8b23e1a1c1aa">FilterCriteriaWidget</a>
+<li>ColAccount
+: <a class="el" href="classFilterLogViewDeletedItem.html#75976f4e0a1067acd189088152f6ef39846fbb9326579f3efa246517f4bc3306">FilterLogViewDeletedItem</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#75976f4e0a1067acd189088152f6ef396c0852d622fdf84bf76bdd834bf02438">FilterLogViewMovedItem</a>
+<li>ColAction
+: <a class="el" href="classFilterSetupItem.html#75976f4e0a1067acd189088152f6ef39f4bcf75b077a12755ff0819d8d4b5ede">FilterSetupItem</a>
+<li>ColDate
+: <a class="el" href="classFilterLogViewMovedItem.html#75976f4e0a1067acd189088152f6ef39d702ee414f605db979d62af2c5af594a">FilterLogViewMovedItem</a>
+, <a class="el" href="classFilterLogViewDeletedItem.html#75976f4e0a1067acd189088152f6ef39bf63f1968c2e485849e04c9fb139fbd9">FilterLogViewDeletedItem</a>
+<li>ColMailbox
+: <a class="el" href="classFilterLogViewMovedItem.html#75976f4e0a1067acd189088152f6ef39df1b4d56a3af5e09e6756f8a0d7aa3da">FilterLogViewMovedItem</a>
+<li>ColName
+: <a class="el" href="classFilterSetupItem.html#75976f4e0a1067acd189088152f6ef3922db8b3152e9d77300d025bc5710f2b1">FilterSetupItem</a>
+<li>ColNumber
+: <a class="el" href="classFilterSetupItem.html#75976f4e0a1067acd189088152f6ef396583dc2e072390f780d608a3783b21de">FilterSetupItem</a>
+<li>ColSender
+: <a class="el" href="classFilterLogViewMovedItem.html#75976f4e0a1067acd189088152f6ef391eb2a48f9ecc04a6ec50e6d4ce05b442">FilterLogViewMovedItem</a>
+, <a class="el" href="classFilterLogViewDeletedItem.html#75976f4e0a1067acd189088152f6ef39da5056427c314ba83cda5c2c83f93fbc">FilterLogViewDeletedItem</a>
+<li>ColSubject
+: <a class="el" href="classFilterLogViewMovedItem.html#75976f4e0a1067acd189088152f6ef3937ca681d4674138e6e4fdda77d70e953">FilterLogViewMovedItem</a>
+, <a class="el" href="classFilterLogViewDeletedItem.html#75976f4e0a1067acd189088152f6ef39605507df51a8aa5219f11d89e6285d08">FilterLogViewDeletedItem</a>
+<li>Column
+: <a class="el" href="classFilterLogViewDeletedItem.html#3bf7f61a50bde0626ca14550a73e139c">FilterLogViewDeletedItem</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#f94556f622467f7afff802d9157d519c">FilterLogViewMovedItem</a>
+, <a class="el" href="classFilterSetupItem.html#75976f4e0a1067acd189088152f6ef39">FilterSetupItem</a>
+<li>commitDeletion()
+: <a class="el" href="classConfigElem.html#f4e51ff42a86a9d5a6ed0f361069d242">ConfigElem</a>
+<li>commitDownloading()
+: <a class="el" href="classConfigElem.html#7a53693e1ca3b30406efb6c8a68ce851">ConfigElem</a>
+<li>commitRefresh()
+: <a class="el" href="classConfigElem.html#3691ecff2aab23143072b434fd304c45">ConfigElem</a>
+<li>compare()
+: <a class="el" href="classShowListViewItem.html#80e56b65e05d1bbded4716d258be499a">ShowListViewItem</a>
+, <a class="el" href="classFilterLogViewDeletedItem.html#e1e61fdfcc6aac0f9530e274b0a4d4b1">FilterLogViewDeletedItem</a>
+, <a class="el" href="classFilterSetupItem.html#a67af9f15240ded60eb6400cd0e5bc36">FilterSetupItem</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#88b881c8513c25e5ecc2a27df3c70de0">FilterLogViewMovedItem</a>
+<li>compareItems()
+: <a class="el" href="classConfigList.html#8bf1aaa71ff8971369466e5c2a36d27f">ConfigList</a>
+<li>condition
+: <a class="el" href="structTypes_1_1FilterCriteria__Type.html#825ed5a5486fd08ea46073e108105681">Types::FilterCriteria_Type</a>
+<li>config
+: <a class="el" href="classConfigFilter.html#0665cb9994d3da0d3133acd78f4e5089">ConfigFilter</a>
+, <a class="el" href="classConfigLog.html#7ca8b5257079e0b95f4aedf8d07398a7">ConfigLog</a>
+, <a class="el" href="classConfigSpamcheck.html#e27fbfe1f00e941b5bbf816a6e243b85">ConfigSpamcheck</a>
+, <a class="el" href="classFilterSetupItem.html#62bcebb2b8f745b330499007bf75b637">FilterSetupItem</a>
+, <a class="el" href="classFilterItem.html#e6ca824e82943738ac739b5d179c3b8c">FilterItem</a>
+, <a class="el" href="classConfigDisplay.html#f85bc9e11d65b6028b5d2c93cac61f9b">ConfigDisplay</a>
+, <a class="el" href="classSenderListDialog.html#d14505adf99fdc58e0dfc75290701869">SenderListDialog</a>
+, <a class="el" href="classFilterItemCriteria.html#d976a4b2e4c3909b426307644557f32f">FilterItemCriteria</a>
+, <a class="el" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">ConfigList</a>
+, <a class="el" href="classHeaderFilter.html#a09540eaa48602b30d628cb8f1fd9cb2">HeaderFilter</a>
+, <a class="el" href="classFilterLog.html#d2b732e043ce3eb3ad2f4579b33a63d5">FilterLog</a>
+, <a class="el" href="classSenderListFilter.html#d7824a94dc96a2bb5a9c90ea6beda818">SenderListFilter</a>
+, <a class="el" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">KshowmailView</a>
+, <a class="el" href="classConfigGeneral.html#b8594eb00e943effe48a32344f240b9a">ConfigGeneral</a>
+, <a class="el" href="classConfigActions.html#d453b2d006819c592a7006a1dbabaf34">ConfigActions</a>
+, <a class="el" href="classAccountSetupItem.html#d65fe6007f3bf6439e5258f2ec4eba84">AccountSetupItem</a>
+, <a class="el" href="classConfigAccounts.html#99b5553c4403e378aedaf122dd158d84">ConfigAccounts</a>
+<li>ConfigAccounts()
+: <a class="el" href="classConfigAccounts.html#60a4e644d3fd362badf22dcc25737236">ConfigAccounts</a>
+<li>ConfigActions()
+: <a class="el" href="classConfigActions.html#d27aac79d193df92f6caabe836cc1959">ConfigActions</a>
+<li>ConfigDisplay()
+: <a class="el" href="classConfigDisplay.html#c11b8b820c61088c7c27285a5aea5093">ConfigDisplay</a>
+<li>ConfigElem()
+: <a class="el" href="classConfigElem.html#74aa827d61789b2c19b3efbc5f374c82">ConfigElem</a>
+<li>ConfigFilter()
+: <a class="el" href="classConfigFilter.html#753316a133a73cd016b4002c5a6c9e95">ConfigFilter</a>
+<li>ConfigGeneral()
+: <a class="el" href="classConfigGeneral.html#f3381a845837b1abee20466d103ff875">ConfigGeneral</a>
+<li>ConfigList()
+: <a class="el" href="classConfigList.html#457897bbe5bd27799e6f920d4cea2173">ConfigList</a>
+<li>ConfigLog()
+: <a class="el" href="classConfigLog.html#9989e4102df82467255afe965f181071">ConfigLog</a>
+<li>ConfigSpamcheck()
+: <a class="el" href="classConfigSpamcheck.html#b917bc43464f819256a9bc54288f857a">ConfigSpamcheck</a>
+<li>confirmClose()
+: <a class="el" href="classConfigList.html#4886c3988fef0e227cd03af094b21415">ConfigList</a>
+<li>confirmDeletion()
+: <a class="el" href="classConfigList.html#a466577c54fec821ff484a378ce32e98">ConfigList</a>
+<li>connectAccounts()
+: <a class="el" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">ConfigList</a>
+<li>content()
+: <a class="el" href="classShowRecordElem.html#8d655afdb7350fd4a27b551da7a8a797">ShowRecordElem</a>
+<li>continueShowHeaders
+: <a class="el" href="classConfigElem.html#8dc234323fe966a322ae8649bc2cd76e">ConfigElem</a>
+, <a class="el" href="classShowRecordElem.html#2b5bdb3ed3f940614135b9c9f1f13eb6">ShowRecordElem</a>
+, <a class="el" href="classShowRecord.html#24f3968b9bd526deb987f3e21f264404">ShowRecord</a>
+<li>copyHeaders()
+: <a class="el" href="classConfigElem.html#4c8bf2c5e048a2c18048a3444841a668">ConfigElem</a>
+<li>count()
+: <a class="el" href="classConfigElem.html#300f2eab6d5d210b64b595b1a6048a5f">ConfigElem</a>
+<li>criteriaList
+: <a class="el" href="classFilterSetupItem.html#6bdbcb472bdb9f1bc1bd0d45836b2cbf">FilterSetupItem</a>
+<li>CriteriaNumber
+: <a class="el" href="classFilterItemCriteria.html#0ea75bbf1425b38eb134a1d86085f044">FilterItemCriteria</a>
+<li>criterias
+: <a class="el" href="classFilterItem.html#d45c4cb5b7aacc6979956f10d8018933">FilterItem</a>
+<li>cs
+: <a class="el" href="structTypes_1_1FilterCriteria__Type.html#88f3fbe98218173cdb417423a890832c">Types::FilterCriteria_Type</a>
+, <a class="el" href="classFilterItemCriteria.html#fa6f1c20d76baab1c5f70fe5855f226f">FilterItemCriteria</a>
+<li>ctrOpenMessageWindows
+: <a class="el" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ConfigList</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x64.html b/doc/html/functions_0x64.html
new file mode 100644
index 0000000..04133c2
--- /dev/null
+++ b/doc/html/functions_0x64.html
@@ -0,0 +1,115 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li id="current"><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
+<li>date
+: <a class="el" href="classFilterLogViewDeletedItem.html#3e4a759ce1c365dbadf8023d0c36c0e9">FilterLogViewDeletedItem</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#30fabc810c4adfac29b2afc5eb08a356">FilterLogViewMovedItem</a>
+, <a class="el" href="classShowRecordElem.html#412ad2a7452c1f5390f2679f1d443292">ShowRecordElem</a>
+<li>days
+: <a class="el" href="classFilterLog.html#7a5dfed7513657cdac5537729ac2f14b516fcb3bdc67d933b239de1eda23df9d">FilterLog</a>
+<li>daysStoreDeletedMails
+: <a class="el" href="classFilterLog.html#c2c77f4f69224d4128d538f6949a72e8">FilterLog</a>
+<li>decodeMailBody()
+: <a class="el" href="classShowRecordElem.html#27af244fc090ac05fabde1becb7bf60d">ShowRecordElem</a>
+, <a class="el" href="classShowRecord.html#dde4ccc3e28c0d7e233ace3810a28814">ShowRecord</a>
+<li>decreaseNumbers()
+: <a class="el" href="classConfigFilter.html#6c99096068ac50e26094464120dcaeea">ConfigFilter</a>
+<li>defaultAction
+: <a class="el" href="classHeaderFilter.html#a478e4731d9465325095dd95c969d0bf">HeaderFilter</a>
+<li>defaults()
+: <a class="el" href="classConfigDisplay.html#b0179a5ca4d44e08f955dd89cce179cc">ConfigDisplay</a>
+, <a class="el" href="classConfigFilter.html#b810d016d9fbb0cf1e860ab22c0b4ac3">ConfigFilter</a>
+, <a class="el" href="classConfigGeneral.html#a38feb2879d97df5182771ae9defaa61">ConfigGeneral</a>
+, <a class="el" href="classConfigLog.html#bcdb1171b0163de70904cd6e3ec72a32">ConfigLog</a>
+, <a class="el" href="classConfigSpamcheck.html#8f6770c57e60f881c7b9e9184c808056">ConfigSpamcheck</a>
+, <a class="el" href="classConfigAccounts.html#47006383d0befb78e37568059a4dbd9e">ConfigAccounts</a>
+, <a class="el" href="classConfigActions.html#2d0dbe44e984af3e1b10e6943837087d">ConfigActions</a>
+<li>delayNextRefresh()
+: <a class="el" href="classKShowMailApp.html#14a17e70bed413c7d4ebffc9f5e87892">KShowMailApp</a>
+<li>deletedMailsStorageMode
+: <a class="el" href="classFilterLog.html#2a17bd37938071ec9e5fdb07ed21e1ee">FilterLog</a>
+<li>deleteNextMail()
+: <a class="el" href="classConfigElem.html#d68eb7fd9d907eaa7b4116f81f19bb30">ConfigElem</a>
+<li>deleteSelectedMails()
+: <a class="el" href="classConfigElem.html#750ccb3fb3f7d1857b79f7218f5a0767">ConfigElem</a>
+, <a class="el" href="classConfigList.html#ac13c19975a07aa87da0047cc66b4ce1">ConfigList</a>
+<li>deletionPerformedByFilters
+: <a class="el" href="classConfigElem.html#c3a6aea2718324eba83d02f6e5828fa5">ConfigElem</a>
+<li>doc_url
+: <a class="el" href="classKshowmailDoc.html#4c93bab9aac95af03ca857ab3e09cf21">KshowmailDoc</a>
+<li>doDownloadActions()
+: <a class="el" href="classConfigElem.html#e638826fe97d9aded3d3dadde320103e">ConfigElem</a>
+<li>downloadActionsInvoked
+: <a class="el" href="classConfigElem.html#f96a3bda830dcfbe7aa579c3e64cfed4">ConfigElem</a>
+<li>drawNumber()
+: <a class="el" href="classKShowMailDock.html#c7a2ffc8a1356b33c3a71a8e1dcb08e5">KShowMailDock</a>
+<li>drawText()
+: <a class="el" href="classKShowMailDock.html#c09e902133a084b547bdd29646a759b4">KShowMailDock</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x65.html b/doc/html/functions_0x65.html
new file mode 100644
index 0000000..79c86ee
--- /dev/null
+++ b/doc/html/functions_0x65.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li id="current"><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
+<li>editFrame
+: <a class="el" href="classSenderListDialog.html#7f8fa42344ee9f096043916a94a09f14">SenderListDialog</a>
+<li>event()
+: <a class="el" href="classKShowMailApp.html#716d32f4f37dd7b97f0e73a6c124caeb">KShowMailApp</a>
+<li>executeNewMailCommand()
+: <a class="el" href="classConfigList.html#01cf49eac83ba56d1f9b3fbaa6bf4648">ConfigList</a>
+<li>exit
+: <a class="el" href="classFilterLog.html#7a5dfed7513657cdac5537729ac2f14b417033d64ee8a4b460e74cf60c7e949b">FilterLog</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x66.html b/doc/html/functions_0x66.html
new file mode 100644
index 0000000..169c87c
--- /dev/null
+++ b/doc/html/functions_0x66.html
@@ -0,0 +1,116 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li id="current"><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
+<li>fillDialog()
+: <a class="el" href="classAccountSetupDialog.html#0e720a4ba82b87fbb78f12bd1c4e060f">AccountSetupDialog</a>
+, <a class="el" href="classFilterSetupDialog.html#da5bd82f3512058af7f8df38ce0a1d96">FilterSetupDialog</a>
+, <a class="el" href="classSenderListDialog.html#39e2ca207baff2b5bf0e49478eed7840">SenderListDialog</a>
+, <a class="el" href="classServerDialog.html#9ed57b703b9fb63d8ce406f36e6c66ba">ServerDialog</a>
+<li>fillMailListView()
+: <a class="el" href="classConfigList.html#1db2530c553952aef3c23483dd6b6567">ConfigList</a>
+, <a class="el" href="classConfigElem.html#365bd67f2ec657beaf98ded2463b61a2">ConfigElem</a>
+, <a class="el" href="classShowRecord.html#7124760f6dffce82cf267276f4c0d015">ShowRecord</a>
+<li>filter
+: <a class="el" href="classFilterSetupDialog.html#8243a7ec9f99d807d55fdb42abeb33e9">FilterSetupDialog</a>
+<li>filterApplied
+: <a class="el" href="classConfigElem.html#1c5b6fd53a5dfbe13c8d9ef2f3b97608">ConfigElem</a>
+<li>FilterCriteriaWidget()
+: <a class="el" href="classFilterCriteriaWidget.html#302cd515a7d4803776a8ed51eb7f064a">FilterCriteriaWidget</a>
+<li>FilterItem()
+: <a class="el" href="classFilterItem.html#afc7ac5fc76d5b988c15d182ced52601">FilterItem</a>
+<li>FilterItemCriteria()
+: <a class="el" href="classFilterItemCriteria.html#d8690ae893d9297e1196aacff7f73da5">FilterItemCriteria</a>
+<li>FilterLog()
+: <a class="el" href="classFilterLog.html#5e4dc0320e613fa0884c20597e2f801d">FilterLog</a>
+<li>FilterLogEntry()
+: <a class="el" href="classFilterLogEntry.html#2fa09bcc0a3631b5a8b0cf18f5291081">FilterLogEntry</a>
+<li>FilterLogView()
+: <a class="el" href="classFilterLogView.html#a47fc385ab40dad5555b2c237ad0c8f9">FilterLogView</a>
+<li>FilterLogViewDeletedItem()
+: <a class="el" href="classFilterLogViewDeletedItem.html#467e40ef17eb0f04e98604924b4f35a9">FilterLogViewDeletedItem</a>
+<li>FilterLogViewMovedItem()
+: <a class="el" href="classFilterLogViewMovedItem.html#35166ea13186c2affc0424b41867137a">FilterLogViewMovedItem</a>
+<li>FilterNumber
+: <a class="el" href="classFilterItemCriteria.html#78884aac2946432f15243db889239e61">FilterItemCriteria</a>
+<li>filterNumber
+: <a class="el" href="classFilterItem.html#2292114dc6b344e155e66caffb1312da">FilterItem</a>
+<li>filters
+: <a class="el" href="classHeaderFilter.html#035f10ee30771b4d49b32f79e2d5c972">HeaderFilter</a>
+<li>FilterSetupDialog()
+: <a class="el" href="classFilterSetupDialog.html#3829d1e56808f77fa4c53ca85eaad417">FilterSetupDialog</a>
+<li>FilterSetupItem()
+: <a class="el" href="classFilterSetupItem.html#0f198fa505e1079dba21d8823fd2c484">FilterSetupItem</a>
+<li>fLog
+: <a class="el" href="classKShowMailApp.html#b1458865e7903295c05c0ffc08fd72fa">KShowMailApp</a>
+<li>FLog
+: <a class="el" href="classConfigElem.html#e3f2a5c6b03dd756f474255247461b02">ConfigElem</a>
+<li>from()
+: <a class="el" href="classShowRecordElem.html#a4d48b3072adb4f87f56ed2b5e35dbba">ShowRecordElem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x67.html b/doc/html/functions_0x67.html
new file mode 100644
index 0000000..f3c2152
--- /dev/null
+++ b/doc/html/functions_0x67.html
@@ -0,0 +1,225 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li id="current"><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
+<li>gboxAction
+: <a class="el" href="classConfigSpamcheck.html#c0bc8473323ec5c9edbaf8cee5cdabb0">ConfigSpamcheck</a>
+<li>gboxFilters
+: <a class="el" href="classConfigFilter.html#451fc7c1f8d5e9f47a5c9578ef90fdd8">ConfigFilter</a>
+<li>gboxOthers
+: <a class="el" href="classConfigFilter.html#d143d33466899d1e6bf47ac9f81e5095">ConfigFilter</a>
+<li>gboxSenderLists
+: <a class="el" href="classConfigFilter.html#6bd47c0c00e8345a568864fe9e6df0f1">ConfigFilter</a>
+<li>getAccount()
+: <a class="el" href="classConfigList.html#f5155dad83daf4956ebfb09f6ebd50c6">ConfigList</a>
+, <a class="el" href="classFilterLogEntry.html#0de03b81ac29a2605b26d1a5a6ec7f72">FilterLogEntry</a>
+<li>getAccountName()
+: <a class="el" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">ConfigElem</a>
+, <a class="el" href="classAccountSetupItem.html#b76cf03b0b1a82b0b5fd9d9dd3d7e1c4">AccountSetupItem</a>
+<li>getAction()
+: <a class="el" href="classFilterSetupItem.html#c1833e968b27a5c5b1992874eea16695">FilterSetupItem</a>
+<li>getActive()
+: <a class="el" href="classAccountSetupItem.html#f5a11536306f846cdea3547b82ed19cd">AccountSetupItem</a>
+<li>getBoundary()
+: <a class="el" href="classShowRecordElem.html#9c49db9d3ce2495c477c783dd5e5da7d">ShowRecordElem</a>
+<li>getCharset()
+: <a class="el" href="classShowRecordElem.html#4919b572763cc228320420059e29b0a7">ShowRecordElem</a>
+<li>getCriteriaLinkage()
+: <a class="el" href="classFilterSetupItem.html#38f7896c981c2c659bed2c811635a6c5">FilterSetupItem</a>
+<li>getCriteriaList()
+: <a class="el" href="classFilterSetupItem.html#4d2d15ddaed38cbc6f64374ae6225548">FilterSetupItem</a>
+<li>getDate()
+: <a class="el" href="classFilterLogEntry.html#fee275e0188bb6ed3ee64f82caf8c0ff">FilterLogEntry</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#1d7f69147cee088fe8bc66cd1594dad9">FilterLogViewMovedItem</a>
+, <a class="el" href="classFilterLogViewDeletedItem.html#d4f4e0d50a1e7b55b619115780333892">FilterLogViewDeletedItem</a>
+<li>getDateOf()
+: <a class="el" href="classShowRecord.html#93c44ad805a67e955b3cfa2518291613">ShowRecord</a>
+<li>getDeletedMails()
+: <a class="el" href="classFilterLog.html#a3bfe9859901d08f26613fa92b1c92d7">FilterLog</a>
+<li>getFilterItem()
+: <a class="el" href="classConfigFilter.html#b7958325a649d8f882feefcec880c390">ConfigFilter</a>
+<li>getHeaderOf()
+: <a class="el" href="classShowRecord.html#15ef001ed312f642b8cd8cf2619ecfb4">ShowRecord</a>
+<li>getHeaders()
+: <a class="el" href="classConfigElem.html#f7202b10df7e27303315d754b25b6d6c">ConfigElem</a>
+<li>getHost()
+: <a class="el" href="classConfigElem.html#6a7f0888c77882eda05bcc22a27947c1">ConfigElem</a>
+<li>getInitTime()
+: <a class="el" href="classConfigList.html#3b74518a8dc0aff55be667276bc4597b">ConfigList</a>
+<li>getListViewItem()
+: <a class="el" href="classConfigElem.html#b5b2ecee68626b7ff80219cdb3f3bed2">ConfigElem</a>
+<li>getMailBox()
+: <a class="el" href="classFilterSetupItem.html#45abdbfebaabab3085bfbcd4104c3d64">FilterSetupItem</a>
+<li>getMailbox()
+: <a class="el" href="classFilterLogEntry.html#247808d8a49002029d759d089abbcdab">FilterLogEntry</a>
+<li>getMovedMails()
+: <a class="el" href="classFilterLog.html#4535da60ad21f8cf819bf1b293a930f4">FilterLog</a>
+<li>getName()
+: <a class="el" href="classFilterSetupItem.html#fabdb4ed274aaa618f10a194f4829853">FilterSetupItem</a>
+<li>getNewMails()
+: <a class="el" href="classShowRecord.html#89fd7edc8c324e8b0ebe6b32f2d30b9d">ShowRecord</a>
+<li>getNextHeader()
+: <a class="el" href="classConfigElem.html#599f2dc026bd3d759d9e2ada3d4ff3ea">ConfigElem</a>
+<li>getNextMailForDownloadActions()
+: <a class="el" href="classConfigElem.html#1fd7ddefdce76a3da2bf3eda7ff28942">ConfigElem</a>
+<li>getNumber()
+: <a class="el" href="classFilterSetupItem.html#9a72af5798fe9f150abf4e60bee71b26">FilterSetupItem</a>
+<li>getNumberMails()
+: <a class="el" href="classConfigList.html#493eec8637f0f34fb25e13d07b6d838a">ConfigList</a>
+, <a class="el" href="classShowRecord.html#5fc0413079f9cfc5b32c36812f643c0a">ShowRecord</a>
+, <a class="el" href="classConfigElem.html#c072d6241f981b1e0ffffb63a0a52250">ConfigElem</a>
+<li>getNumberNewMails()
+: <a class="el" href="classConfigList.html#c68944845fe63749fc073947fbdd44d6">ConfigList</a>
+, <a class="el" href="classShowRecord.html#fb2d493f52927c18ccc35352d2d2b115">ShowRecord</a>
+, <a class="el" href="classConfigElem.html#2725f96acd936fd8a9008d6ddf04ba76">ConfigElem</a>
+<li>getPassword()
+: <a class="el" href="classAccountSetupItem.html#46700d8ebd2c3881adea6c741d2a3ecc">AccountSetupItem</a>
+, <a class="el" href="classConfigElem.html#7ea9a96f400284acce0999639659c461">ConfigElem</a>
+<li>getPasswordStorage()
+: <a class="el" href="classConfigElem.html#34bc68f7bbdc296d18460f303f479450">ConfigElem</a>
+<li>getPasswordStorageType()
+: <a class="el" href="classAccountSetupItem.html#b31f6b8440a84c38ea759c4bfc23a9d8">AccountSetupItem</a>
+<li>getPath()
+: <a class="el" href="classMailBoxWizard.html#7c64cf76fba1687998b59ac4e2bf93a4">MailBoxWizard</a>
+, <a class="el" href="classMailBoxWizardListItem.html#7cc0300c2f79abe677ecc7a6807dc262">MailBoxWizardListItem</a>
+<li>getPort()
+: <a class="el" href="classConfigElem.html#2b3366a9ebc43549491bd003578a0bc8">ConfigElem</a>
+, <a class="el" href="classAccountSetupItem.html#c33fd3844659c29f753c011c6de627eb">AccountSetupItem</a>
+<li>getProtocol()
+: <a class="el" href="classConfigElem.html#562620c4141a744725d384309a9e55f1">ConfigElem</a>
+, <a class="el" href="classAccountSetupItem.html#10e170306b0310777577b6f7eba1bd95">AccountSetupItem</a>
+<li>getRefreshTimeInterval()
+: <a class="el" href="classConfigList.html#3e41f463a87fbc8523bbd731cf36b473">ConfigList</a>
+<li>getSelectedAccount()
+: <a class="el" href="classConfigList.html#83776f91a264d92cea2b6f7ef0c02765">ConfigList</a>
+<li>getSelectedMails()
+: <a class="el" href="classShowRecord.html#417a26f1eea8a1311362633e43ac8bab">ShowRecord</a>
+<li>getSelectedSubjects()
+: <a class="el" href="classShowRecord.html#c78c6981b92a2546d4ee75320aba380d">ShowRecord</a>
+, <a class="el" href="classConfigList.html#d489b548662d865fe34686507dc801ef">ConfigList</a>
+, <a class="el" href="classConfigElem.html#93c5c182878b9809188933046e04a998">ConfigElem</a>
+<li>getSender()
+: <a class="el" href="classFilterLogEntry.html#49c10c324ea3cf38d39162500edf17e0">FilterLogEntry</a>
+<li>getSenderOf()
+: <a class="el" href="classShowRecord.html#51a8d0c91d32e6fdc20cb8f5f2350cac">ShowRecord</a>
+<li>getServer()
+: <a class="el" href="classAccountSetupItem.html#053ec0d55da164c2da77c32e7fbe986b">AccountSetupItem</a>
+<li>getSizeOf()
+: <a class="el" href="classShowRecord.html#b1a6f1fee65db84e5496619c14035539">ShowRecord</a>
+<li>getSizes()
+: <a class="el" href="classConfigElem.html#ab836ffc3b068d052ea3486f8cdac74d">ConfigElem</a>
+<li>getSpamAction()
+: <a class="el" href="classConfigList.html#2a997667f702e9416a9006a481c7d848">ConfigList</a>
+<li>getSpamMailbox()
+: <a class="el" href="classConfigList.html#18994e01d2362c49cd428e3b77c0a32a">ConfigList</a>
+<li>getState()
+: <a class="el" href="classConfigElem.html#1b2187ece7367694776f17c6cad6571c">ConfigElem</a>
+<li>getSubject()
+: <a class="el" href="classFilterLogEntry.html#24d80bc83ec5286153fb8cad0f89a088">FilterLogEntry</a>
+<li>getSubjectOf()
+: <a class="el" href="classShowRecord.html#38d282950be6217d1488efc720a5f415">ShowRecord</a>
+<li>getTimeoutTime()
+: <a class="el" href="classConfigElem.html#3cb6757a426072724df1b1ea930da796">ConfigElem</a>
+, <a class="el" href="classConfigList.html#80a368db22ca3a29c668a544611d16f4">ConfigList</a>
+<li>getTLS()
+: <a class="el" href="classConfigElem.html#fdc03b7cd5b73cca18f0787509e32edc">ConfigElem</a>
+<li>getTotalSize()
+: <a class="el" href="classConfigElem.html#bb71d58016499cd57784e60efee37b0f">ConfigElem</a>
+, <a class="el" href="classConfigList.html#2e6d8a00456ca4b61ddba18ab419dd38">ConfigList</a>
+, <a class="el" href="classShowRecord.html#c6c9d9e7e23f57006d2d573442a144b5">ShowRecord</a>
+<li>getTransferEncoding()
+: <a class="el" href="classShowRecordElem.html#9f0dcc62d28fbcec89b0af33c7e0c446">ShowRecordElem</a>
+<li>getTransferSecurity()
+: <a class="el" href="classAccountSetupItem.html#9aef65f405e686e204ff80ef4771bbd9">AccountSetupItem</a>
+<li>getUIDs()
+: <a class="el" href="classConfigElem.html#38ba64f20fe31a6e59d6c58775672922">ConfigElem</a>
+<li>getUIDsOfOldMails()
+: <a class="el" href="classShowRecord.html#ae03febb272198c00851b4e46be68b83">ShowRecord</a>
+<li>getURL()
+: <a class="el" href="classConfigElem.html#a4b9669aff68ef45c260c2d485d8a405">ConfigElem</a>
+<li>getUser()
+: <a class="el" href="classAccountSetupItem.html#65e285bf708335d1ec59a3baa3805f49">AccountSetupItem</a>
+, <a class="el" href="classConfigElem.html#19f5621cac8e71c1088995bcef75596a">ConfigElem</a>
+<li>getValues()
+: <a class="el" href="classFilterCriteriaWidget.html#94ee5d41a12b725ea56328acaa9c87cf">FilterCriteriaWidget</a>
+<li>grpAction
+: <a class="el" href="classSenderListDialog.html#36f568e6c034e8e3ce8918a1b36f3c4d">SenderListDialog</a>
+<li>grpDelMailsRemove
+: <a class="el" href="classConfigLog.html#f4cc144f6621754512201ecf04f4b39c">ConfigLog</a>
+<li>grpLinkage
+: <a class="el" href="classFilterSetupDialog.html#76bada4b71bbb9938c4ff1727104d3fc">FilterSetupDialog</a>
+<li>grpMovMailsRemove
+: <a class="el" href="classConfigLog.html#0b5c4ed624ecf618bbe0d2d4f0b174fa">ConfigLog</a>
+<li>grpPasswordStorage
+: <a class="el" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#0a4bce4c9c385223363c5437f38830cf">AccountSetupDialog</a>
+<li>grpSecureTransfer
+: <a class="el" href="classServerDialog.html#05f46d98c337ab7a8afc2325aef9e8e7">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#ab4282dbb4ded7f3da8a451b60a14739">AccountSetupDialog</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x68.html b/doc/html/functions_0x68.html
new file mode 100644
index 0000000..629da22
--- /dev/null
+++ b/doc/html/functions_0x68.html
@@ -0,0 +1,91 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li id="current"><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
+<li>hasAccount()
+: <a class="el" href="classConfigList.html#47d7852e47d047dc7c00ad76715aa4df">ConfigList</a>
+<li>hasActiveAccounts()
+: <a class="el" href="classConfigList.html#14b38a4e600859c0b6f3ef38afffc037">ConfigList</a>
+<li>hasInitTime()
+: <a class="el" href="classConfigList.html#ed405d97a4a1d20cac93bf2a23cf40bf">ConfigList</a>
+<li>hasMail()
+: <a class="el" href="classShowRecord.html#1fca27c3d569bbd1b1d673f2ac847791">ShowRecord</a>
+<li>hasPassword()
+: <a class="el" href="classConfigElem.html#371db6ec6023c72fbfac6b765b0de08b">ConfigElem</a>
+<li>hasSelectedMails()
+: <a class="el" href="classShowRecord.html#e0aeb91afa1bd2ea566ff4dd4dd299d5">ShowRecord</a>
+, <a class="el" href="classConfigElem.html#748ec06f6ad44f36143389bb9501a1f7">ConfigElem</a>
+, <a class="el" href="classConfigList.html#d80765bfadbd675b9b89ebdec0cf3566">ConfigList</a>
+<li>header()
+: <a class="el" href="classShowRecordElem.html#dd5d842c1abdd13fa03ac4a3f2f11150">ShowRecordElem</a>
+<li>headerFilter
+: <a class="el" href="classConfigElem.html#85b505610abbe0c01921a6e385a7548e">ConfigElem</a>
+<li>HeaderFilter()
+: <a class="el" href="classHeaderFilter.html#3b0e807158cc2a6314edc1155caa04b7">HeaderFilter</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x69.html b/doc/html/functions_0x69.html
new file mode 100644
index 0000000..89cf6ec
--- /dev/null
+++ b/doc/html/functions_0x69.html
@@ -0,0 +1,110 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li id="current"><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
+<li>image0
+: <a class="el" href="classAlertDlg.html#8309795df6391db4e19bf7d3c2c0a4b5">AlertDlg</a>
+<li>init()
+: <a class="el" href="classConfigElem.html#e5e1c7ae0734cb85654d7c6f2b073ef0">ConfigElem</a>
+, <a class="el" href="classAccountSetupItem.html#30efbf35bc42ed0ff5e13d42a2eac442">AccountSetupItem</a>
+, <a class="el" href="classFilterSetupItem.html#34dfbe100755f105c61ddb151df31491">FilterSetupItem</a>
+<li>initActions()
+: <a class="el" href="classKShowMailApp.html#4f13d29b34bf4dd08804489ad1f41a82">KShowMailApp</a>
+<li>initDocument()
+: <a class="el" href="classKShowMailApp.html#1187c5d08f904b1e6c7beff58c3e9d53">KShowMailApp</a>
+<li>initFirstRefresh()
+: <a class="el" href="classKShowMailApp.html#18e1fcab0be78c65bf68ba66109a30b6">KShowMailApp</a>
+<li>initNextRefresh()
+: <a class="el" href="classKShowMailApp.html#c538f5c093b0c3dae4df29247d075dfc">KShowMailApp</a>
+<li>initStatusBar()
+: <a class="el" href="classKShowMailApp.html#daaa25d851b56449b16c942d099fbf86">KShowMailApp</a>
+<li>initView()
+: <a class="el" href="classKShowMailApp.html#4b1f509a80c9927f7701005685350a0a">KShowMailApp</a>
+<li>insertMail()
+: <a class="el" href="classKshowmailView.html#8330c6f139457ae5dd1510efb3f665e4">KshowmailView</a>
+<li>isActive()
+: <a class="el" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">ConfigElem</a>
+, <a class="el" href="classHeaderFilter.html#a51b13dce32e73c69f207c6de2d02a61">HeaderFilter</a>
+<li>isMailDir()
+: <a class="el" href="classConfigElem.html#807e183296b04a86035a17a6f2fa0392">ConfigElem</a>
+, <a class="el" href="classMailBoxWizard.html#88c3666ceec14415af74c4645a1a54f2">MailBoxWizard</a>
+<li>isNew()
+: <a class="el" href="classShowRecordElem.html#48485d7a0dfef669b6597c865a515290">ShowRecordElem</a>
+, <a class="el" href="classShowRecord.html#89b22dcaa5ff6f47121150b7d25939d0">ShowRecord</a>
+<li>isOlder()
+: <a class="el" href="classFilterLogEntry.html#5d099ea50c7c6c451af2a3b05c97dad6">FilterLogEntry</a>
+<li>isSelected()
+: <a class="el" href="classShowRecordElem.html#6987a0066f420f62b5c9ec9d82ed7fb3">ShowRecordElem</a>
+, <a class="el" href="classConfigElem.html#8e8e1f32420d051a8c6d4df4a3ad4b93">ConfigElem</a>
+<li>isSpam()
+: <a class="el" href="classConfigElem.html#261c27647b7d842799e94ae149212ad5">ConfigElem</a>
+<li>isSpamAssassinRunning()
+: <a class="el" href="classConfigSpamcheck.html#cfa0e1320543a69f23ba7a2f9d2861a7">ConfigSpamcheck</a>
+, <a class="el" href="classConfigElem.html#ef9bf08b5313d9b0d5983f5a9459cf3a">ConfigElem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x6b.html b/doc/html/functions_0x6b.html
new file mode 100644
index 0000000..35ca82f
--- /dev/null
+++ b/doc/html/functions_0x6b.html
@@ -0,0 +1,92 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li id="current"><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_k">- k -</a></h3><ul>
+<li>keepNew()
+: <a class="el" href="classConfigList.html#49a20af219bc1a4f20e50b59b6f2310c">ConfigList</a>
+<li>key()
+: <a class="el" href="classShowListViewItem.html#5dba88e00c43a0911fa70f6c41173fe3">ShowListViewItem</a>
+<li>killPOP3Job()
+: <a class="el" href="classConfigElem.html#be79ff49926793b27e8af8b5101c7b70">ConfigElem</a>
+<li>killPOP3Jobs()
+: <a class="el" href="classConfigList.html#3c7523934753f98f3087ed4083df3ab2">ConfigList</a>
+<li>kRegExpEditorAvailable
+: <a class="el" href="classFilterCriteriaWidget.html#c995d48264457868fb297126f4b18b7c">FilterCriteriaWidget</a>
+<li>KShowMailApp()
+: <a class="el" href="classKShowMailApp.html#e8728a02ab3a7e20cb1d256590788575">KShowMailApp</a>
+<li>KshowmailDoc()
+: <a class="el" href="classKshowmailDoc.html#02b11dd19d0c777a043a491d8811a553">KshowmailDoc</a>
+<li>KShowMailDock()
+: <a class="el" href="classKShowMailDock.html#15d2f2f49e443745b1986d23c1a08df5">KShowMailDock</a>
+<li>KshowmailDock
+: <a class="el" href="classKShowMailApp.html#3babed6869c8529c61d0b4719140307f">KShowMailApp</a>
+<li>KshowmailView
+: <a class="el" href="classKShowMailApp.html#95753bb48121b9a00bbbf185d46a5c1b">KShowMailApp</a>
+, <a class="el" href="classKshowmailView.html#6c0f3a139aba59b618178cffec9fdbf4">KshowmailView</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x6c.html b/doc/html/functions_0x6c.html
new file mode 100644
index 0000000..bbc1cbd
--- /dev/null
+++ b/doc/html/functions_0x6c.html
@@ -0,0 +1,126 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li id="current"><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
+<li>languageChange()
+: <a class="el" href="classAlertDlg.html#a00eea0c7a184d77386a0d9d39624e7b">AlertDlg</a>
+<li>lastFilterNumber
+: <a class="el" href="classConfigFilter.html#f0a12d142f8edbe554c9ce48e0fcf781">ConfigFilter</a>
+<li>layCriteriasHolding
+: <a class="el" href="classFilterSetupDialog.html#789ab5bd9a7692be0553a49f048e0404">FilterSetupDialog</a>
+<li>linkage
+: <a class="el" href="classFilterSetupItem.html#2db8d7fafdb2a784b6e9d9bc62fba4bf">FilterSetupItem</a>
+, <a class="el" href="classFilterItem.html#4ae978390328da87b9fdf5af6b355eb7">FilterItem</a>
+<li>Linkage_Type
+: <a class="el" href="classFilterItem.html#58b18d2ee6b00081df0b962224aca749">FilterItem</a>
+<li>LinkAll
+: <a class="el" href="classFilterItem.html#58b18d2ee6b00081df0b962224aca7499c5079e590cae0aa11aa30bbfa5661e1">FilterItem</a>
+<li>LinkAny
+: <a class="el" href="classFilterItem.html#58b18d2ee6b00081df0b962224aca74910c7570abaf0aabd42082bdf961aa274">FilterItem</a>
+<li>list
+: <a class="el" href="classSenderListDialog.html#b863a1f45be38d67f64cedb4c74ff631">SenderListDialog</a>
+<li>listDeletedMails
+: <a class="el" href="classFilterLog.html#fda049847515829b1e403cd2adee4e02">FilterLog</a>
+<li>listFilters
+: <a class="el" href="classConfigFilter.html#d8bce231c65f27afab3941f37d3ec2e0">ConfigFilter</a>
+<li>listMovedMails
+: <a class="el" href="classFilterLog.html#5179ab13c32aa6eb7857267869010d89">FilterLog</a>
+<li>ListType
+: <a class="el" href="classSenderListDialog.html#c9198349954e23bb42c0d5a6c573fbbd">SenderListDialog</a>
+<li>ListView
+: <a class="el" href="classFilterSetupDialog.html#9cb1a664a9000cc3a07078a770409667">FilterSetupDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#1a3d27c483d6ee5c96138ecc57c9cddb">AccountSetupDialog</a>
+<li>load()
+: <a class="el" href="classConfigActions.html#09b13ec270885ae640be8d9935697923">ConfigActions</a>
+, <a class="el" href="classConfigSpamcheck.html#4f3e289ba60151f28a71fb318089c211">ConfigSpamcheck</a>
+, <a class="el" href="classFilterSetupItem.html#d005e34c67d87cb65685a0220901cb61">FilterSetupItem</a>
+, <a class="el" href="classConfigDisplay.html#09589984fa1429d5cbd5f0b9aa67e0af">ConfigDisplay</a>
+, <a class="el" href="classConfigFilter.html#b8b269888cea46ad87c97f8e2aa5e727">ConfigFilter</a>
+, <a class="el" href="classConfigLog.html#7bb8c33f397d117161d1b5899c49ff0a">ConfigLog</a>
+, <a class="el" href="classConfigAccounts.html#076c10008dc954b4b89911f3a972de90">ConfigAccounts</a>
+, <a class="el" href="classConfigGeneral.html#03635dd6a03d1ac9ef0d538954bb8ddd">ConfigGeneral</a>
+, <a class="el" href="classFilterLog.html#697346428446166f7fe4b5d387095d3a">FilterLog</a>
+, <a class="el" href="classSenderListFilter.html#6e7a4477291793511c385bdd30c349f1">SenderListFilter</a>
+, <a class="el" href="classHeaderFilter.html#46c0c049254cb8c9aa1aa6946f2f4165">HeaderFilter</a>
+, <a class="el" href="classAccountSetupItem.html#5c4884393afc3498c2e7f2184e47d50e">AccountSetupItem</a>
+<li>loadSetup()
+: <a class="el" href="classFilterLog.html#38b93bd89be1c76c88bd33d3222bbe92">FilterLog</a>
+<li>log
+: <a class="el" href="classFilterLogView.html#328b7d4165c9c35fb3ea97b8e08e64c1">FilterLogView</a>
+<li>logDeletedMails
+: <a class="el" href="classFilterLog.html#69bc71567187d7dc15fda6eb8f1d2979">FilterLog</a>
+<li>logMovedMails
+: <a class="el" href="classFilterLog.html#d9a377c3856846908684babf5cb6d9bd">FilterLog</a>
+<li>lstMailboxes
+: <a class="el" href="classMailBoxWizard.html#bfb553654f379dc06795db27d304edf1">MailBoxWizard</a>
+<li>lstViewDeleted
+: <a class="el" href="classFilterLogView.html#e2ceb7ac2a223f4931f1444bb9a3f84c">FilterLogView</a>
+<li>lstViewMoved
+: <a class="el" href="classFilterLogView.html#4a50b6b7330139aef249faf0694a641a">FilterLogView</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x6d.html b/doc/html/functions_0x6d.html
new file mode 100644
index 0000000..58b727d
--- /dev/null
+++ b/doc/html/functions_0x6d.html
@@ -0,0 +1,215 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li id="current"><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
+<li>m_actionRefresh
+: <a class="el" href="classKShowMailApp.html#cdd1b63955d1dd5c9d78d551fc86ef74">KShowMailApp</a>
+<li>m_background
+: <a class="el" href="classKShowMailDock.html#3535a9e1ca33dce759bb066463879976">KShowMailDock</a>
+<li>m_bActive
+: <a class="el" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">ConfigElem</a>
+<li>m_bAllowHTML
+: <a class="el" href="classConfigList.html#017597159dc4b62d147aade09140e942">ConfigList</a>
+<li>m_bBeep
+: <a class="el" href="classConfigList.html#a866f2fd4fb32d49ab99306150d79c50">ConfigList</a>
+<li>m_bCloseMinimizes
+: <a class="el" href="classConfigList.html#da6c14776958a3b28f68797c7feb6c5b">ConfigList</a>
+<li>m_bCommand
+: <a class="el" href="classConfigList.html#ae8d4084a4b83a09722015793afb974c">ConfigList</a>
+<li>m_bConfirmClose
+: <a class="el" href="classConfigList.html#80b1f5a036cdaf9054ba57831a0c013e">ConfigList</a>
+<li>m_bConfirmDelete
+: <a class="el" href="classConfigList.html#8b8d0d0a2d78c9f3ede1db0a9e77f8be">ConfigList</a>
+<li>m_bForceClose
+: <a class="el" href="classKShowMailApp.html#f211146f325bcca8c7c680ad46c9aab8">KShowMailApp</a>
+<li>m_bKeepNew
+: <a class="el" href="classConfigList.html#54c7671d25847b7b16cf71ec61c640d0">ConfigList</a>
+<li>m_bMinimize
+: <a class="el" href="classConfigList.html#f22fd0f8854795662a444bc2b4f8a9b9">ConfigList</a>
+<li>m_bMinimizeToTray
+: <a class="el" href="classConfigList.html#af4cc3801f229ae974131ef1e000a8cf">ConfigList</a>
+<li>m_body
+: <a class="el" href="classShowMailDialog.html#27641a1f95c62a8d43b353f29528cc1e">ShowMailDialog</a>
+<li>m_bShowConnectionErrors
+: <a class="el" href="classConfigList.html#1bd48d8596694d5b39e0ead274689010">ConfigList</a>
+<li>m_bShowMainWindow
+: <a class="el" href="classConfigList.html#b9613ab5f07edb0ef04383867674a5ce">ConfigList</a>
+<li>m_bShowMessage
+: <a class="el" href="classConfigList.html#35d80df8b80f34868140a2163d207490">ConfigList</a>
+<li>m_bSound
+: <a class="el" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">ConfigList</a>
+<li>m_bStartMinimized
+: <a class="el" href="classConfigList.html#fb4f1f200303a7e94114a8c4c85eb47e">ConfigList</a>
+<li>m_bTerminate
+: <a class="el" href="classConfigList.html#cdf78356d632253ac463907e526eb26a">ConfigList</a>
+<li>m_ButtonIgnore
+: <a class="el" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">AlertDlg</a>
+<li>m_ButtonOk
+: <a class="el" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">AlertDlg</a>
+<li>m_ConfigList
+: <a class="el" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">KShowMailApp</a>
+<li>m_content
+: <a class="el" href="classShowRecordElem.html#c70dec4d7ff63aa1acffcc7229776990">ShowRecordElem</a>
+<li>m_from
+: <a class="el" href="classShowRecordElem.html#260019ad5471ede61b2a1958b8c31375">ShowRecordElem</a>
+<li>m_header
+: <a class="el" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">ShowRecordElem</a>
+<li>m_new
+: <a class="el" href="classShowRecordElem.html#f9f2112f8e2b1c3dfef0286581a892b4">ShowRecordElem</a>
+<li>m_nInitTimer
+: <a class="el" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">ConfigList</a>
+<li>m_nIntervalTimer
+: <a class="el" href="classConfigList.html#b15e5bd9334e36428c5d44b9ee2a97d5">ConfigList</a>
+<li>m_nNumber
+: <a class="el" href="classShowRecordElem.html#8583bafac2418ddd8c7d881926851f05">ShowRecordElem</a>
+<li>m_nPop3Timer
+: <a class="el" href="classConfigList.html#f4a428e650cf89e8ae0df0a2983f96f4">ConfigList</a>
+<li>m_nSecondsToGo
+: <a class="el" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">KShowMailApp</a>
+<li>m_pAbout
+: <a class="el" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">KShowMailApp</a>
+<li>m_pAlertDialog
+: <a class="el" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">KShowMailApp</a>
+<li>m_pApp
+: <a class="el" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">UniqueApp</a>
+<li>m_pDoc
+: <a class="el" href="classKShowMailApp.html#326f322d7f82738efd2399f077fab6e2">KShowMailApp</a>
+<li>m_pDockWindow
+: <a class="el" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">KShowMailApp</a>
+<li>m_pFilter
+: <a class="el" href="classShowRecordElem.html#cf1207160bae1cd017c282b808e44e02">ShowRecordElem</a>
+<li>m_pItem
+: <a class="el" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">ShowRecordElem</a>
+<li>m_pixOk
+: <a class="el" href="classKshowmailView.html#ac2789d0c2b897f4a9589c21a8eae2eb">KshowmailView</a>
+<li>m_pListAccounts
+: <a class="el" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">KshowmailView</a>
+<li>m_pListMessages
+: <a class="el" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">KshowmailView</a>
+<li>m_pshowrecord
+: <a class="el" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">ConfigElem</a>
+<li>m_pTimer
+: <a class="el" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">KShowMailApp</a>
+<li>m_pView
+: <a class="el" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">KShowMailApp</a>
+<li>m_pViewItem
+: <a class="el" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">ConfigElem</a>
+<li>m_sender
+: <a class="el" href="classShowMailDialog.html#2cfed74c01ce7d28b18e1bd15eebe814">ShowMailDialog</a>
+<li>m_size
+: <a class="el" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">ShowRecordElem</a>
+<li>m_state
+: <a class="el" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">KShowMailApp</a>
+<li>m_strAccount
+: <a class="el" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">ConfigElem</a>
+<li>m_strCommandPath
+: <a class="el" href="classConfigList.html#ea53a55a83d06cb76e3e686dd29ca034">ConfigList</a>
+<li>m_strSoundFile
+: <a class="el" href="classConfigList.html#be34e6084394fa6fa99422a7cc50d8f0">ConfigList</a>
+<li>m_subject
+: <a class="el" href="classShowRecordElem.html#1c83a6d029a73795076161efd3842893">ShowRecordElem</a>
+, <a class="el" href="classShowMailDialog.html#73df230afe94aa1118ef69044d619822">ShowMailDialog</a>
+<li>m_time
+: <a class="el" href="classShowListViewItem.html#9d582aea8cd197406cd8ba103e3df25b">ShowListViewItem</a>
+<li>m_to
+: <a class="el" href="classShowRecordElem.html#02de09b7b36dfcce893a1e79ff8ba34c">ShowRecordElem</a>
+<li>m_uid
+: <a class="el" href="classShowRecordElem.html#7da2621d1de438c9118fbcead3c23506">ShowRecordElem</a>
+<li>m_unixDate
+: <a class="el" href="classShowRecordElem.html#b3f665656a06d88cea46345bcb1a51a9">ShowRecordElem</a>
+<li>m_url
+: <a class="el" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">ConfigElem</a>
+<li>mailbody
+: <a class="el" href="classConfigElem.html#ac5a5ecf9c70a0c94c2cf7181a1989dd">ConfigElem</a>
+<li>mailbox
+: <a class="el" href="classFilterItem.html#ea3dbfdeae33818b9dde1486995bbb13">FilterItem</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#0973106a9c7c6cfe23640cbc8379bb8a">FilterLogViewMovedItem</a>
+, <a class="el" href="classHeaderFilter.html#43b2162ede8f87c53486afc52d02eefd">HeaderFilter</a>
+, <a class="el" href="structTypes_1_1DownloadActionParams__Type.html#2111052968efa3f277babdd0de6a5ed1">Types::DownloadActionParams_Type</a>
+, <a class="el" href="classFilterSetupItem.html#bcea8cc88e4c5f51a732c61b46308172">FilterSetupItem</a>
+, <a class="el" href="classFilterLogEntry.html#d149fca2f4561be04dae1b8eabfdae58">FilterLogEntry</a>
+<li>MailBoxWizard()
+: <a class="el" href="classMailBoxWizard.html#66a530a8f72d325bac8a25bdbcdd4560">MailBoxWizard</a>
+<li>MailBoxWizardListItem()
+: <a class="el" href="classMailBoxWizardListItem.html#449266e086560066fb5b2befb95a8cec">MailBoxWizardListItem</a>
+<li>MailsToDelete
+: <a class="el" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">ConfigElem</a>
+<li>MailsToDownload
+: <a class="el" href="classConfigElem.html#dc3d4a8f849b476ff72d2c485a3ffa36">ConfigElem</a>
+<li>MailsToShow
+: <a class="el" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">ConfigElem</a>
+<li>markAtViewRefresh
+: <a class="el" href="classShowRecordElem.html#c3f6d14162aafdedf141489ad5d5307a">ShowRecordElem</a>
+<li>minimizeMainWindowNoNewMails()
+: <a class="el" href="classConfigList.html#94f99e48dfcc902ef18ea7310f395beb">ConfigList</a>
+<li>minimizesToTray()
+: <a class="el" href="classConfigList.html#c64e08e3c1469622763dd462612a83ca">ConfigList</a>
+<li>moveCounter
+: <a class="el" href="classConfigElem.html#30203c10e9c6b563ee9c454269cad8d1">ConfigElem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x6e.html b/doc/html/functions_0x6e.html
new file mode 100644
index 0000000..d2680a6
--- /dev/null
+++ b/doc/html/functions_0x6e.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li id="current"><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_n">- n -</a></h3><ul>
+<li>name
+: <a class="el" href="classFilterItem.html#a4efa18b6c783ac9fbc8c483ea833d3b">FilterItem</a>
+, <a class="el" href="classFilterSetupItem.html#44954c10512354340c8bc878414d4a54">FilterSetupItem</a>
+<li>newDocument()
+: <a class="el" href="classKshowmailDoc.html#929fdd9ad1f89ed9a000cf8c96d9f711">KshowmailDoc</a>
+<li>newInstance()
+: <a class="el" href="classUniqueApp.html#41127093415c53fea5560a51a83d0dde">UniqueApp</a>
+<li>newItem()
+: <a class="el" href="classConfigList.html#24464fe479402405ee9b849ddcc9c567">ConfigList</a>
+<li>newMails
+: <a class="el" href="classConfigElem.html#f13c7462315db5c44ecaeff609d95306">ConfigElem</a>
+<li>number()
+: <a class="el" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">ShowRecordElem</a>
+, <a class="el" href="classFilterSetupItem.html#09a730b72395838d679ac848ba9cbd54">FilterSetupItem</a>
+<li>numberCriterias
+: <a class="el" href="classFilterItem.html#1969f5a9e293ee5c434b6c1e5ef5b316">FilterItem</a>
+<li>numberFilterItems
+: <a class="el" href="classHeaderFilter.html#beda72983c14c88c52d60576812ecc0b">HeaderFilter</a>
+<li>NumCondEqual
+: <a class="el" href="classFilterItemCriteria.html#a9f75c7e50d2de22a6fc88a68098defdd52ce87f5916ede0169efbc666b82732">FilterItemCriteria</a>
+<li>NumCondGreater
+: <a class="el" href="classFilterItemCriteria.html#a9f75c7e50d2de22a6fc88a68098defda933b7c9612f9ecf1a78be6f2dcd4656">FilterItemCriteria</a>
+<li>NumCondGreaterEqual
+: <a class="el" href="classFilterItemCriteria.html#a9f75c7e50d2de22a6fc88a68098defd96c80ff56805962b07d78576454a2cb5">FilterItemCriteria</a>
+<li>numCondition
+: <a class="el" href="classFilterItemCriteria.html#a3f9b4630d4cf432443fa5b3750d08b8">FilterItemCriteria</a>
+<li>NumCondition_Type
+: <a class="el" href="classFilterItemCriteria.html#a9f75c7e50d2de22a6fc88a68098defd">FilterItemCriteria</a>
+<li>NumCondLess
+: <a class="el" href="classFilterItemCriteria.html#a9f75c7e50d2de22a6fc88a68098defd87f12a8ca405ea04e7004317b37bc8c3">FilterItemCriteria</a>
+<li>NumCondLessEqual
+: <a class="el" href="classFilterItemCriteria.html#a9f75c7e50d2de22a6fc88a68098defd0d470e0e945cb1a9075c96bfeab6a58a">FilterItemCriteria</a>
+<li>NumCondNotEqual
+: <a class="el" href="classFilterItemCriteria.html#a9f75c7e50d2de22a6fc88a68098defd46b6c8165139e41263bcb3b7b45673e5">FilterItemCriteria</a>
+<li>numValue
+: <a class="el" href="structTypes_1_1FilterCriteria__Type.html#ba4af96342c299a576bbe4d0628192f5">Types::FilterCriteria_Type</a>
+, <a class="el" href="classFilterItemCriteria.html#012ce0d8a878020829f6f025727f0c8a">FilterItemCriteria</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x6f.html b/doc/html/functions_0x6f.html
new file mode 100644
index 0000000..72dab42
--- /dev/null
+++ b/doc/html/functions_0x6f.html
@@ -0,0 +1,85 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li id="current"><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_o">- o -</a></h3><ul>
+<li>operator!=()
+: <a class="el" href="classFilterLogEntry.html#22dfec8d125e202655f46c6ca00dd479">FilterLogEntry</a>
+<li>operator&lt;()
+: <a class="el" href="classFilterLogEntry.html#3760bc819bd3c4a8e69477d1abb55e9d">FilterLogEntry</a>
+<li>operator&lt;=()
+: <a class="el" href="classFilterLogEntry.html#e5b92bdfb012b26714a9ec1382d5b305">FilterLogEntry</a>
+<li>operator=()
+: <a class="el" href="classFilterLogEntry.html#ff00ae65a018c124e29f6ce10f445abf">FilterLogEntry</a>
+<li>operator==()
+: <a class="el" href="classFilterLogEntry.html#d2fb063e56a866c0e6a5738d57f61527">FilterLogEntry</a>
+<li>operator&gt;()
+: <a class="el" href="classFilterLogEntry.html#8330a8430a7afe6ca844bdee02c4b8b8">FilterLogEntry</a>
+<li>operator&gt;=()
+: <a class="el" href="classFilterLogEntry.html#2bb336ba1f769357186828a5989fd37b">FilterLogEntry</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x70.html b/doc/html/functions_0x70.html
new file mode 100644
index 0000000..9fff095
--- /dev/null
+++ b/doc/html/functions_0x70.html
@@ -0,0 +1,97 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li id="current"><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
+<li>PasswordStorage
+: <a class="el" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">ConfigElem</a>
+<li>path
+: <a class="el" href="classMailBoxWizardListItem.html#a26f72fd0871583009db91618b6644aa">MailBoxWizardListItem</a>
+<li>PixmapLabel2
+: <a class="el" href="classAlertDlg.html#68460203169eb997f60e1d487309399a">AlertDlg</a>
+<li>playSound()
+: <a class="el" href="classConfigList.html#5e7a5e2323ebbbad7d960bae9814ce5d">ConfigList</a>
+<li>pop3Job
+: <a class="el" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">ConfigElem</a>
+<li>pop3Timer
+: <a class="el" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">ConfigElem</a>
+<li>print()
+: <a class="el" href="classFilterItem.html#c3cb4a11f7e331947d39f2b4e957841a">FilterItem</a>
+, <a class="el" href="classSenderListFilter.html#bfd7364f08f06d471c38e5e366bc07d6">SenderListFilter</a>
+, <a class="el" href="classHeaderFilter.html#b726693ef1f1ff8bae551edd0fee325e">HeaderFilter</a>
+, <a class="el" href="classFilterLog.html#852b7d3cc47c7c6a2130dbd7765176c2">FilterLog</a>
+, <a class="el" href="classFilterLogEntry.html#3927475a7c99c03377f535b8cf0c027e">FilterLogEntry</a>
+, <a class="el" href="classFilterItemCriteria.html#897f97b64c1dc85c04535ab67378ccd2">FilterItemCriteria</a>
+<li>printMailList()
+: <a class="el" href="classShowRecord.html#1705c73921184eda80bd63f979ef34bc">ShowRecord</a>
+<li>printSetup()
+: <a class="el" href="classConfigElem.html#46e0d578a0c537e8d13ad689044f1fe7">ConfigElem</a>
+, <a class="el" href="classConfigList.html#ac706ab3763709422de0ccfa91db7776">ConfigList</a>
+<li>pView
+: <a class="el" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">KshowmailDoc</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x71.html b/doc/html/functions_0x71.html
new file mode 100644
index 0000000..0a2baeb
--- /dev/null
+++ b/doc/html/functions_0x71.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li id="current"><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_q">- q -</a></h3><ul>
+<li>QLabel_1
+: <a class="el" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">AlertDlg</a>
+<li>QLabel_2
+: <a class="el" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">AlertDlg</a>
+<li>queryClose()
+: <a class="el" href="classKShowMailApp.html#347ed7817554f0a8c6e078101ce1babb">KShowMailApp</a>
+<li>queryExit()
+: <a class="el" href="classKShowMailApp.html#2e471542abbac9779cd38a4f63ec5187">KShowMailApp</a>
+<li>quitNoNewMails()
+: <a class="el" href="classConfigList.html#e24d2fa3175996ba24faa1ed1efcf35a">ConfigList</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x72.html b/doc/html/functions_0x72.html
new file mode 100644
index 0000000..270c5e1
--- /dev/null
+++ b/doc/html/functions_0x72.html
@@ -0,0 +1,103 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li id="current"><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
+<li>readOptions()
+: <a class="el" href="classKshowmailView.html#ff3699740af2b58e299bc4b2326cad20">KshowmailView</a>
+, <a class="el" href="classShowRecordElem.html#97952e1293b679abc1891a240bd9e4f1">ShowRecordElem</a>
+<li>readStoredMails()
+: <a class="el" href="classShowRecord.html#87bd29245b100a9d291856fd0784662f">ShowRecord</a>
+, <a class="el" href="classConfigElem.html#dee46100623211279e37f498ac43c4e4">ConfigElem</a>
+, <a class="el" href="classConfigList.html#18b093749b6a474b68a4c2bfe952d65c">ConfigList</a>
+<li>receivedHeader
+: <a class="el" href="classConfigElem.html#23ed166f77355117fa99dcbc3d5b7d12">ConfigElem</a>
+<li>receivedSizes
+: <a class="el" href="classConfigElem.html#fc6f21ff722d537d2e59ee42e57cd337">ConfigElem</a>
+<li>receivedUIDs
+: <a class="el" href="classConfigElem.html#80f016779bdc8774cc7822a839b2c796">ConfigElem</a>
+<li>refreshAccountList()
+: <a class="el" href="classConfigList.html#b3d5530c7419f6aa4b43e4247f3036a5">ConfigList</a>
+<li>refreshAccountListItem()
+: <a class="el" href="classConfigElem.html#3a709da00728e100343bfde8aac61491">ConfigElem</a>
+<li>refreshMailList()
+: <a class="el" href="classConfigElem.html#83af8872b7e83279750434e7ef376e5b">ConfigElem</a>
+<li>refreshMailLists()
+: <a class="el" href="classConfigList.html#8cec55c3631317208f4800408a6e98c8">ConfigList</a>
+<li>refreshPerformedByFilters
+: <a class="el" href="classConfigElem.html#b842ac987bd40656b334c4e8c3a75103">ConfigElem</a>
+<li>refreshSetup()
+: <a class="el" href="classKshowmailView.html#4fde61960c62edd44d8eb88a82360a2a">KshowmailView</a>
+, <a class="el" href="classConfigList.html#8ab66c254c66635f97df7e17882b4ab2">ConfigList</a>
+<li>reloadFilterSettings()
+: <a class="el" href="classConfigElem.html#f0c46e80c8300ab141a759042d4f38b5">ConfigElem</a>
+<li>removeMail()
+: <a class="el" href="classShowRecord.html#d9075f4c8de5af4b0b5870d1ff71f4ea">ShowRecord</a>
+<li>removeView()
+: <a class="el" href="classKshowmailDoc.html#e9cd9ebc0c1bbbdf1d4178bc92fe5f55">KshowmailDoc</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x73.html b/doc/html/functions_0x73.html
new file mode 100644
index 0000000..5ac62b9
--- /dev/null
+++ b/doc/html/functions_0x73.html
@@ -0,0 +1,525 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li id="current"><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
+<li>save()
+: <a class="el" href="classFilterLog.html#4ae56edf247817d9a8adc0b64d7875d3">FilterLog</a>
+, <a class="el" href="classConfigDisplay.html#9a6209d368796d39da31113da74a11f9">ConfigDisplay</a>
+, <a class="el" href="classConfigFilter.html#12d47bcad1116876e8d957dabc1739e7">ConfigFilter</a>
+, <a class="el" href="classConfigGeneral.html#9c81f0b6e6c228c8ec5c36b1123e9f4d">ConfigGeneral</a>
+, <a class="el" href="classConfigLog.html#ffcf14fa9d7f3061da2f6b688cb9745d">ConfigLog</a>
+, <a class="el" href="classConfigSpamcheck.html#e555baf30dd3251d594e6c4a74779b9b">ConfigSpamcheck</a>
+, <a class="el" href="classFilterSetupItem.html#8738c3bd9543487adf1208ed37290bf5">FilterSetupItem</a>
+, <a class="el" href="classFilterLogEntry.html#477f7486122545541e940233bb1da15d">FilterLogEntry</a>
+, <a class="el" href="classAccountSetupItem.html#ae3e5083ecdcda627b3ca93f02b41c4a">AccountSetupItem</a>
+, <a class="el" href="classConfigAccounts.html#133eaa4daf79f86a56f07f9a27e55561">ConfigAccounts</a>
+, <a class="el" href="classConfigActions.html#0e55b541aeb0651c66b53ebedebbedfc">ConfigActions</a>
+<li>saveOptions()
+: <a class="el" href="classConfigList.html#f4faa44af3bbe318a2623b3146dc2c2d">ConfigList</a>
+, <a class="el" href="classConfigElem.html#bda433f60b1eed0d4b8d207707d5005c">ConfigElem</a>
+, <a class="el" href="classKshowmailView.html#53d81f575c855870a8112ec67ade5575">KshowmailView</a>
+, <a class="el" href="classShowRecord.html#2b0757f2678223ca4e51257766dd64a3">ShowRecord</a>
+, <a class="el" href="classShowRecordElem.html#fcabf6ba9c5b68ae2923bb70bf9f45b0">ShowRecordElem</a>
+<li>scanHeader()
+: <a class="el" href="classShowRecordElem.html#8070b0cbba2b2281a78bfdae3334a981">ShowRecordElem</a>
+<li>search()
+: <a class="el" href="classSenderListFilter.html#4e9ccf663da2969f76ac3a475ca1274f">SenderListFilter</a>
+<li>secureLoginType
+: <a class="el" href="classConfigElem.html#b8a7341e3db3e69b8e661c89ff08b7f4">ConfigElem</a>
+<li>sender
+: <a class="el" href="classFilterLogViewMovedItem.html#ce21d392f96a36edd4e4f0cee4bb60cc">FilterLogViewMovedItem</a>
+, <a class="el" href="classFilterLogViewDeletedItem.html#0634c60ef66f1dc5cc14d4dc0eb123c5">FilterLogViewDeletedItem</a>
+, <a class="el" href="classFilterLogEntry.html#beb4991508455d61c59cbb6ef6766b32">FilterLogEntry</a>
+<li>senderlist
+: <a class="el" href="classHeaderFilter.html#410392e92bb274e5df51ee74a2d7467d">HeaderFilter</a>
+<li>SenderListDialog()
+: <a class="el" href="classSenderListDialog.html#2fd1ff38623b82811f073f5326e91d6a">SenderListDialog</a>
+<li>SenderListFilter()
+: <a class="el" href="classSenderListFilter.html#c8c2cae468e5071c4e57c9380b197712">SenderListFilter</a>
+<li>sentDateTime
+: <a class="el" href="classFilterLogEntry.html#6602eedabf45a7dfaaec8b547ff88942">FilterLogEntry</a>
+, <a class="el" href="classShowRecordElem.html#4c32fe918f4d6b65dc684c1604757c72">ShowRecordElem</a>
+<li>ServerDialog()
+: <a class="el" href="classServerDialog.html#2083bd1376173f7229267c77b00e0250">ServerDialog</a>
+<li>setAccount()
+: <a class="el" href="classShowListViewItem.html#d757b7cadf50f4b7e8af5f1f7fe09b02">ShowListViewItem</a>
+<li>setAccountName()
+: <a class="el" href="classConfigElem.html#8248ddc45de2d7d924e59e7c591da98f">ConfigElem</a>
+, <a class="el" href="classAccountSetupItem.html#fe048b33e97e2505dbb62c8ad8fed515">AccountSetupItem</a>
+<li>setAction()
+: <a class="el" href="classFilterSetupItem.html#6f1b035725692bce5172bbb73afd8413">FilterSetupItem</a>
+<li>setActive()
+: <a class="el" href="classConfigElem.html#4a5aa6b86e56403fa453c9d642b71812">ConfigElem</a>
+, <a class="el" href="classAccountSetupItem.html#aee9d4fd988fdc351a1f303e96231478">AccountSetupItem</a>
+<li>setAllowHTML()
+: <a class="el" href="classConfigList.html#9f3341f60b7f800b58f50e67c1f872b4">ConfigList</a>
+<li>setConfirmDeletion()
+: <a class="el" href="classConfigList.html#5f798d2e62d3d8d013e3b2f54d51e94e">ConfigList</a>
+<li>setContent()
+: <a class="el" href="classShowRecordElem.html#8ab7746aad762c2c2e0fe80c4a496f9a">ShowRecordElem</a>
+, <a class="el" href="classShowListViewItem.html#2b5c115276821d6137cf14940d264606">ShowListViewItem</a>
+<li>setCriteriaLinkage()
+: <a class="el" href="classFilterSetupItem.html#d8449dc1e448170fb0f1504e9d4b29f5">FilterSetupItem</a>
+<li>setCriteriaList()
+: <a class="el" href="classFilterSetupItem.html#abe5397880f91e8fb8587e016e4bfb25">FilterSetupItem</a>
+<li>setDate()
+: <a class="el" href="classShowRecordElem.html#7fe7272db1f8f38f6fa404611acf7b8d">ShowRecordElem</a>
+, <a class="el" href="classShowListViewItem.html#b96fe5949709d9ccd3d414ac81671577">ShowListViewItem</a>
+<li>setFilter()
+: <a class="el" href="classShowRecordElem.html#fe3536020ed0f47f0ec4c97839068cc1">ShowRecordElem</a>
+<li>setFrom()
+: <a class="el" href="classShowRecordElem.html#373e98f7a94fd659ff1174ef7346de08">ShowRecordElem</a>
+, <a class="el" href="classShowListViewItem.html#9ff7a14853167240196c9289924a39d6">ShowListViewItem</a>
+<li>setHeader()
+: <a class="el" href="classShowRecord.html#29fe412b8ef3eb2b71bbd93268baaf9a">ShowRecord</a>
+, <a class="el" href="classShowRecordElem.html#28e7072cd68f18e1e07176b9c1bd5f72">ShowRecordElem</a>
+<li>setHost()
+: <a class="el" href="classConfigElem.html#cf56636bf7537e7f5dbc1a762b4670d2">ConfigElem</a>
+<li>setInitTime()
+: <a class="el" href="classConfigList.html#c40250ce119d3e6f75b32b296ffaa36c">ConfigList</a>
+<li>setItem()
+: <a class="el" href="classConfigList.html#633c6c07518ecf2405ad472ab843790f">ConfigList</a>
+<li>setList()
+: <a class="el" href="classConfigList.html#e595f764ea9b38f0634137438bdd4d70">ConfigList</a>
+<li>setListViewItem()
+: <a class="el" href="classConfigElem.html#a58326995659da378bc160ed90ad578b">ConfigElem</a>
+<li>setMailBox()
+: <a class="el" href="classFilterSetupItem.html#8b97e85703485c71fd374d7938cdf3f2">FilterSetupItem</a>
+<li>setMarkAtNextViewRefresh()
+: <a class="el" href="classShowRecordElem.html#8c138e5d2c33ec03231b8bf6ee719f7f">ShowRecordElem</a>
+, <a class="el" href="classShowRecord.html#b19cb729ff18ab77d85a1e7c4fb61cb9">ShowRecord</a>
+<li>setName()
+: <a class="el" href="classFilterSetupItem.html#96a7ddb3233d77a63e8470cc3dbe1137">FilterSetupItem</a>
+<li>setNew()
+: <a class="el" href="classShowRecordElem.html#4c6d52d5a2df4b7bb743128184ced8f4">ShowRecordElem</a>
+<li>setNumber()
+: <a class="el" href="classFilterSetupItem.html#27f7dc687959944c6197ec4d71ec95af">FilterSetupItem</a>
+, <a class="el" href="classShowListViewItem.html#2f82fc18123a144ec93f94384c936172">ShowListViewItem</a>
+, <a class="el" href="classShowRecordElem.html#1c31fc69dfe9794c6c77970192d455a5">ShowRecordElem</a>
+<li>setNumCriteria()
+: <a class="el" href="classFilterCriteriaWidget.html#2b9c72f8ace84e103bb34bfff577f111">FilterCriteriaWidget</a>
+<li>setPassword()
+: <a class="el" href="classConfigElem.html#6edf15369f3e906a04dff0b92f5b3c2d">ConfigElem</a>
+, <a class="el" href="classAccountSetupItem.html#8a8decbbdebead74d3b649ddf7e33087">AccountSetupItem</a>
+<li>setPasswordStorage()
+: <a class="el" href="classConfigElem.html#58f9d269bd389c52718d78d7615c4431">ConfigElem</a>
+<li>setPasswordStorageType()
+: <a class="el" href="classAccountSetupItem.html#252f1a25f9486630d3b574b13f72de02">AccountSetupItem</a>
+<li>setPort()
+: <a class="el" href="classConfigElem.html#cc66eba0b4fbf308cddad0478f20ef0f">ConfigElem</a>
+, <a class="el" href="classAccountSetupItem.html#f4f27bc4dd16fe7cf0159b068b2aa620">AccountSetupItem</a>
+<li>setProtocol()
+: <a class="el" href="classConfigElem.html#103236b06a88a8d14b629170df1a7ca9">ConfigElem</a>
+, <a class="el" href="classAccountSetupItem.html#ce26f8a7edb166a697d618032806f0ed">AccountSetupItem</a>
+<li>setRefreshTimeInterval()
+: <a class="el" href="classConfigList.html#1676756c27b3578802dba1ce47b39dcd">ConfigList</a>
+<li>setServer()
+: <a class="el" href="classAccountSetupItem.html#055a3b09f97a42f8c93e358b6eb5f5c8">AccountSetupItem</a>
+<li>setSize()
+: <a class="el" href="classShowListViewItem.html#0bb549ead9f623377fa2a240e76e3e90">ShowListViewItem</a>
+, <a class="el" href="classShowRecord.html#f3ae42223f76c35b2273119916a82a24">ShowRecord</a>
+, <a class="el" href="classShowRecordElem.html#dd22d1f50be46bd9ecbbacec7606b3ed">ShowRecordElem</a>
+<li>setState()
+: <a class="el" href="classShowListViewItem.html#120d8cdc825924cf408ba99c6667cf34">ShowListViewItem</a>
+<li>setSubject()
+: <a class="el" href="classShowRecordElem.html#bad7c7440195e0284b42c79d281bfbf2">ShowRecordElem</a>
+, <a class="el" href="classShowListViewItem.html#c20d53f3d7d4c60bb054c958531f5d92">ShowListViewItem</a>
+<li>setTextCriteria()
+: <a class="el" href="classFilterCriteriaWidget.html#b9d2bd5396d87445eef039305be19045">FilterCriteriaWidget</a>
+<li>setTime()
+: <a class="el" href="classShowListViewItem.html#0d78b8e18cae5e309719b498f40f2f89">ShowListViewItem</a>
+<li>setTimeoutTime()
+: <a class="el" href="classConfigList.html#2470bfe4948ada050b08b93cef51b969">ConfigList</a>
+<li>setTLS()
+: <a class="el" href="classConfigElem.html#67f45e40b98d20d7d26e1e244f42b208">ConfigElem</a>
+<li>setTo()
+: <a class="el" href="classShowRecordElem.html#fe4b012dfc137770f35879ea2264ba19">ShowRecordElem</a>
+, <a class="el" href="classShowListViewItem.html#633d447c919be4b754def3ae9b03c9f6">ShowListViewItem</a>
+<li>setTransferSecurity()
+: <a class="el" href="classAccountSetupItem.html#e9bcf9e4ab7d3d81afa0e3d4a28c4dd7">AccountSetupItem</a>
+<li>setUIDL()
+: <a class="el" href="classShowRecordElem.html#6d24c13e7de2fad247fff5549a96767d">ShowRecordElem</a>
+<li>SetupDialog
+: <a class="el" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">KShowMailApp</a>
+<li>setURL()
+: <a class="el" href="classKshowmailDoc.html#aad1bfe0342bb8ef8b48e4feae5a4e7c">KshowmailDoc</a>
+<li>setUser()
+: <a class="el" href="classConfigElem.html#856ca37e391329be6b06f8be2f0a1f74">ConfigElem</a>
+, <a class="el" href="classAccountSetupItem.html#3bfebeaedf54f4882a6568d17f0b194f">AccountSetupItem</a>
+<li>setValues()
+: <a class="el" href="classFilterLogViewDeletedItem.html#1684630b83c688f613a58e7ec9cc129f">FilterLogViewDeletedItem</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#bc4a71409237d3023650e5e67df26ca8">FilterLogViewMovedItem</a>
+<li>setViewItem()
+: <a class="el" href="classShowRecordElem.html#e7f2ca5eb9a9bc95266a4f83f78cd76e">ShowRecordElem</a>
+<li>showAlertMessageForNewMails()
+: <a class="el" href="classConfigList.html#2270af8a5ce1740958f0f0b39359051f">ConfigList</a>
+<li>showConnectionErrors()
+: <a class="el" href="classConfigList.html#04033fd5903daf6b1286891a2c7a228c">ConfigList</a>
+<li>showHeader()
+: <a class="el" href="classShowRecordElem.html#62792e6386e65ac0050f2e02963254b0">ShowRecordElem</a>
+<li>ShowHeaderDialog()
+: <a class="el" href="classShowHeaderDialog.html#60d25341401cfde9bbcb172598e46ebe">ShowHeaderDialog</a>
+<li>ShowListViewItem()
+: <a class="el" href="classShowListViewItem.html#8ad5e105eb0fb3275af6cc55ce52a63d">ShowListViewItem</a>
+<li>ShowMailDialog()
+: <a class="el" href="classShowMailDialog.html#df4e30d539ed6b76c9fefaf1e16b5e62">ShowMailDialog</a>
+<li>showMainWindowForNewMails()
+: <a class="el" href="classConfigList.html#b4021a1f9087d447649a362d8779ec34">ConfigList</a>
+<li>showNextMail()
+: <a class="el" href="classConfigElem.html#962f37179e56d2cc5fca450744b23199">ConfigElem</a>
+<li>ShowRecord()
+: <a class="el" href="classShowRecord.html#c3088d9306ad23138dcc1212b975f596">ShowRecord</a>
+<li>ShowRecordElem()
+: <a class="el" href="classShowRecordElem.html#aa3cd64818bfb990d5e37720cd29546c">ShowRecordElem</a>
+<li>showSelectedHeaders()
+: <a class="el" href="classConfigList.html#9578f65f771482e727dfb3e1da861aa3">ConfigList</a>
+, <a class="el" href="classConfigElem.html#0725bb36943ca6fd1ca82af5ef6913a3">ConfigElem</a>
+, <a class="el" href="classShowRecord.html#89005d433c577ed0e412c6314400cc31">ShowRecord</a>
+<li>showSelectedMails()
+: <a class="el" href="classConfigList.html#69be8d63f8363fe9c727ebdaeb9eb7fa">ConfigList</a>
+, <a class="el" href="classConfigElem.html#01e5735260c23f43480d807e7e9070c9">ConfigElem</a>
+<li>sigActivated()
+: <a class="el" href="classKShowMailDock.html#33e30411ee0935453e742385268f7bc0">KShowMailDock</a>
+<li>sigAllMessageWindowsClosed()
+: <a class="el" href="classConfigList.html#6cc47a8e403bad408356604c0888c292">ConfigList</a>
+<li>sigConfigChanged()
+: <a class="el" href="classConfigElem.html#c04e111468d52ed1ca964569188c96e5">ConfigElem</a>
+, <a class="el" href="classConfigList.html#9b5c13b885ba99acefb6bcb81f54b563">ConfigList</a>
+<li>sigDeleteReady()
+: <a class="el" href="classConfigElem.html#93838eda4c71ad66360ee5a27f630d8e">ConfigElem</a>
+, <a class="el" href="classConfigList.html#6d5f55c7447fc52efd5800daeb8302dc">ConfigList</a>
+<li>sigHighlighted()
+: <a class="el" href="classKShowMailDock.html#ee1e61dcbf2fb183c309c0637ceb23e2">KShowMailDock</a>
+<li>sigMessageWindowClosed()
+: <a class="el" href="classConfigElem.html#e328a1ef29ab8784bf9fd36de34d8bc0">ConfigElem</a>
+<li>sigMessageWindowOpened()
+: <a class="el" href="classConfigElem.html#14267b997f50ad3069115e8b976d89bb">ConfigElem</a>
+, <a class="el" href="classConfigList.html#4e33dcc16368960e9a41dca3bb878360">ConfigList</a>
+<li>signalActiveChanged()
+: <a class="el" href="classKshowmailView.html#6fb6da4d1c23d42efe9118748b19b0f8">KshowmailView</a>
+<li>signalOk()
+: <a class="el" href="classAlertDialog.html#08aea36dcb2c5932884c5e38940fa3fa">AlertDialog</a>
+<li>sigRefreshReady()
+: <a class="el" href="classConfigElem.html#d57456d967920820080dc13d6fb5a8ff">ConfigElem</a>
+, <a class="el" href="classConfigList.html#cd0d056e66a4c054306dca9936b9d5da">ConfigList</a>
+<li>sigShowBodiesReady()
+: <a class="el" href="classConfigList.html#4df89bc3cd1da72c4404cbe6fe1f10d1">ConfigList</a>
+, <a class="el" href="classConfigElem.html#bd3b61aa04ce3bd6ce507cb555c360d4">ConfigElem</a>
+<li>size()
+: <a class="el" href="classShowRecordElem.html#4b4077ca5d47226ccb44b6d8373a4fbd">ShowRecordElem</a>
+<li>slotAccountActivated()
+: <a class="el" href="classKShowMailApp.html#03f1ae7df67069b5a7a9d54c39e94924">KShowMailApp</a>
+<li>slotAccountClicked()
+: <a class="el" href="classKshowmailView.html#49db2d15dcecf0ad09fed9565d506138">KshowmailView</a>
+<li>slotAccountConfigChanged()
+: <a class="el" href="classConfigList.html#f8495aff41becdac4998b0c2881cccde">ConfigList</a>
+<li>slotAccountContext()
+: <a class="el" href="classKshowmailView.html#8635cb9ee8e7859f9b78ced5378c668d">KshowmailView</a>
+<li>slotActionChanged()
+: <a class="el" href="classConfigSpamcheck.html#ece01b6f93801b759c6cf6f9c2b09bfc">ConfigSpamcheck</a>
+, <a class="el" href="classFilterSetupDialog.html#af5bd110494099103ce7c4ba35f8d4b1">FilterSetupDialog</a>
+<li>slotAdd()
+: <a class="el" href="classConfigFilter.html#7d39cb7b4d25de5dd7f5dc2cae9fc2d3">ConfigFilter</a>
+, <a class="el" href="classConfigAccounts.html#65e9575c6bdcabdb1efa53aa47bf8609">ConfigAccounts</a>
+<li>slotAddCriteriaWidget()
+: <a class="el" href="classFilterSetupDialog.html#98a07d641dade7d09ba3515042c5c78b">FilterSetupDialog</a>
+<li>slotAlertDestroyed()
+: <a class="el" href="classKShowMailApp.html#073b29df0ea7fa4c1a5245dd87bd1b6c">KShowMailApp</a>
+<li>slotAlertOk()
+: <a class="el" href="classKShowMailApp.html#cb8e7126aec305899d7109863f99d6d4">KShowMailApp</a>
+<li>slotBodyDownloaded()
+: <a class="el" href="classConfigElem.html#a63d81fad1dc2f9f8f015effabb8b6d9">ConfigElem</a>
+<li>slotChanged()
+: <a class="el" href="classConfigGeneral.html#d458776b288da160e05e45518d22279b">ConfigGeneral</a>
+, <a class="el" href="classConfigFilter.html#e626fc3ce1c6e341587bbbcf3c611d72">ConfigFilter</a>
+, <a class="el" href="classConfigLog.html#3687b473ec2512d023a3323fe555637e">ConfigLog</a>
+, <a class="el" href="classConfigSpamcheck.html#e7de028106aee69e97efaed1e50fa9f4">ConfigSpamcheck</a>
+, <a class="el" href="classConfigAccounts.html#fa71a146968c6f082748dfdb1ba723e6">ConfigAccounts</a>
+, <a class="el" href="classConfigDisplay.html#6156b28babaf77b3df12d01d565213ee">ConfigDisplay</a>
+, <a class="el" href="classConfigActions.html#77ebd22707ff87998a2b16b487ab00c7">ConfigActions</a>
+<li>slotChangeItems()
+: <a class="el" href="classConfigLog.html#3a2f475fdec72a03bc657d11524d60aa">ConfigLog</a>
+<li>slotCheckDeletionState()
+: <a class="el" href="classConfigList.html#640d6202cfb38c449e95906e7581693b">ConfigList</a>
+<li>slotCheckRefreshState()
+: <a class="el" href="classConfigList.html#beaa15863a4aae563a8539d176067f79">ConfigList</a>
+<li>slotCheckShowBodiesState()
+: <a class="el" href="classConfigList.html#bdbf21b25f8e963e5c32d167aff1fe16">ConfigList</a>
+<li>slotChooseCommand()
+: <a class="el" href="classConfigActions.html#c4089c37961c3094c111f0d877b37590">ConfigActions</a>
+<li>slotChooseSound()
+: <a class="el" href="classConfigActions.html#7a02c07f3de8c73f9423cb875a4c0619">ConfigActions</a>
+<li>slotClearDeletedMails()
+: <a class="el" href="classFilterLogView.html#e04e903ee8397ac726181a7e9376f8b1">FilterLogView</a>
+<li>slotClearMovedMails()
+: <a class="el" href="classFilterLogView.html#37a6adfc6e0b1610e0d87421fe1d9218">FilterLogView</a>
+<li>slotCommandToggled()
+: <a class="el" href="classConfigActions.html#f523717c67aa40650635685301e0487e">ConfigActions</a>
+<li>slotConfChanged()
+: <a class="el" href="classKShowMailApp.html#7655fe082dfda144367a152c58827c7f">KShowMailApp</a>
+<li>slotDataMailBody()
+: <a class="el" href="classConfigElem.html#ab068855931a06371d27ec03695121a7">ConfigElem</a>
+<li>slotDelete()
+: <a class="el" href="classKShowMailApp.html#ad1a25c5c31f911f7c21b3aedc682e8e">KShowMailApp</a>
+<li>slotDeletionReady()
+: <a class="el" href="classKShowMailApp.html#a77267f88c63edad44b7e82d0b398fc6">KShowMailApp</a>
+<li>slotEdit()
+: <a class="el" href="classConfigFilter.html#49e5fe216ba80e4c006e74e5a4e94db1">ConfigFilter</a>
+, <a class="el" href="classConfigAccounts.html#b33abfd05c9338ae3a2631d752ed1930">ConfigAccounts</a>
+<li>slotEditToolbars()
+: <a class="el" href="classKShowMailApp.html#772f86e96418116ac58943d1bb0c3acb">KShowMailApp</a>
+<li>slotExecuteCommand()
+: <a class="el" href="classConfigActions.html#3073cde7f9f939e670d36fbb43212629">ConfigActions</a>
+<li>slotFileQuit()
+: <a class="el" href="classKShowMailApp.html#6d18177026c4c8d276e690c405c9fcd7">KShowMailApp</a>
+<li>slotFilterActiveToggled()
+: <a class="el" href="classConfigFilter.html#3d5ae5822e55949318ba40732e0218ac">ConfigFilter</a>
+<li>slotFinalizeDeletion()
+: <a class="el" href="classConfigElem.html#1b5233c5dd75c286a369b69545f711d5">ConfigElem</a>
+<li>slotFinalizeRefresh()
+: <a class="el" href="classConfigElem.html#6470facb8041787fc48707ece1dfc364">ConfigElem</a>
+<li>slotFinalizeShowMail()
+: <a class="el" href="classConfigElem.html#36b830294fa07e4a5a134f7975cfca27">ConfigElem</a>
+<li>slotForceClose()
+: <a class="el" href="classKShowMailApp.html#f94f8e79fcd9b35eea937b2533912e86">KShowMailApp</a>
+<li>slotHeaderDownloaded()
+: <a class="el" href="classConfigElem.html#2220bd2656a5e87cfb2582ae8854f71c">ConfigElem</a>
+<li>slotMailDeleted()
+: <a class="el" href="classConfigElem.html#f2f44d27824ca6c4caf9c472f5c980b4">ConfigElem</a>
+<li>slotMailDownloadedForAction()
+: <a class="el" href="classConfigElem.html#53d209d56cb8ba5ce9f2f1d781d40e4f">ConfigElem</a>
+<li>slotMessageClicked()
+: <a class="el" href="classKshowmailView.html#2fc28b0734bd9b2af83a7a9a23875ed3">KshowmailView</a>
+<li>slotMessageContext()
+: <a class="el" href="classKshowmailView.html#877ac2a28b5a126946199642842a8039">KshowmailView</a>
+<li>slotMessageDoubleClicked()
+: <a class="el" href="classKshowmailView.html#5d39dff853dab5efb5eecba7e8237d9a">KshowmailView</a>
+<li>slotMessageWindowClosed()
+: <a class="el" href="classConfigList.html#6a9cc47ba150c0923b558752f118ec6c">ConfigList</a>
+<li>slotMessageWindowOpened()
+: <a class="el" href="classConfigList.html#1ffbc4bf4ef66872162065b80a248b7a">ConfigList</a>
+<li>slotMoveBottom()
+: <a class="el" href="classConfigFilter.html#3e2709df5fb1849733c7b6c6a2b7fb10">ConfigFilter</a>
+<li>slotMoveDown()
+: <a class="el" href="classConfigFilter.html#dee742eae6c7fc7dbe5153ffee084dc5">ConfigFilter</a>
+<li>slotMoveTop()
+: <a class="el" href="classConfigFilter.html#b0134250b85a1e8eeb0a6c0e7a5375a9">ConfigFilter</a>
+<li>slotMoveUp()
+: <a class="el" href="classConfigFilter.html#6419ef19b91c6b2466242f8ead6169a4">ConfigFilter</a>
+<li>slotNormalCursor()
+: <a class="el" href="classKShowMailApp.html#86c54998aa412571f0b471efd32e8ef9">KShowMailApp</a>
+<li>slotOk()
+: <a class="el" href="classAlertDlg.html#ccef482c60628a7c5e35633f9810a905">AlertDlg</a>
+, <a class="el" href="classFilterSetupDialog.html#e63604a21f44617bf07924324fc0e3d9">FilterSetupDialog</a>
+, <a class="el" href="classAlertDialog.html#c21e0287175d595335f38f3d185db704">AlertDialog</a>
+, <a class="el" href="classServerDialog.html#05a288f0b2bf3fb3b129cf8e6ea210fb">ServerDialog</a>
+, <a class="el" href="classSenderListDialog.html#a3dd988bd591e66f6a9a67e42a298452">SenderListDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#d9b00b814cbbf79c83995693ca894c71">AccountSetupDialog</a>
+<li>slotOpenBlacklist()
+: <a class="el" href="classConfigFilter.html#59985cf246e5cb913338cdde10750759">ConfigFilter</a>
+<li>slotOpenDirDialog()
+: <a class="el" href="classMailBoxWizard.html#824371e55b29bf02ba987a9bba0509d2">MailBoxWizard</a>
+<li>slotOpenMailBoxWizard()
+: <a class="el" href="classConfigFilter.html#6cf6533d0ba8a0e3741a68a8b886f930">ConfigFilter</a>
+, <a class="el" href="classConfigSpamcheck.html#6404817f0dc00495b94cbffba3b5cc28">ConfigSpamcheck</a>
+, <a class="el" href="classFilterSetupDialog.html#e6c0ae87d1774f8e198d4a9b224fd03c">FilterSetupDialog</a>
+<li>slotOpenRegExpEditor()
+: <a class="el" href="classFilterCriteriaWidget.html#eec4bd9e62c068658d9973abed97cf9d">FilterCriteriaWidget</a>
+<li>slotOpenWhitelist()
+: <a class="el" href="classConfigFilter.html#da34005d02ab687ac31936c260a909eb">ConfigFilter</a>
+<li>slotOtherActionChanged()
+: <a class="el" href="classConfigFilter.html#24fc66c44faed7d415fc71b5ee0c0435">ConfigFilter</a>
+<li>slotPageChanged()
+: <a class="el" href="classMailBoxWizard.html#592ce9ad7b810b6d6663ad10ea5722f4">MailBoxWizard</a>
+<li>slotPasswordStorageChanged()
+: <a class="el" href="classServerDialog.html#3b3962b56ecaaa225953601d37228cb3">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#9486d4b99325f0cfbe486944071f9455">AccountSetupDialog</a>
+<li>slotPlaySound()
+: <a class="el" href="classConfigActions.html#9ac2c366f9f9d727da199c1a9ce82095">ConfigActions</a>
+<li>slotReceiveHeader()
+: <a class="el" href="classConfigElem.html#52b690b870d814bf6017500edc731aae">ConfigElem</a>
+<li>slotReceiveSize()
+: <a class="el" href="classConfigElem.html#b3e0a075b84fed2a1e156de17cdefbad">ConfigElem</a>
+<li>slotReceiveUID()
+: <a class="el" href="classConfigElem.html#11db8a853a253b81a16ecd199c441911">ConfigElem</a>
+<li>slotRefresh()
+: <a class="el" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">KShowMailApp</a>
+<li>slotRefreshReady()
+: <a class="el" href="classKShowMailApp.html#911c2c1823421973f97e4ea2cc51e710">KShowMailApp</a>
+<li>slotRefreshView()
+: <a class="el" href="classKShowMailApp.html#68bebd7208b03fe4fe1aa23be83f7536">KShowMailApp</a>
+<li>slotRemove()
+: <a class="el" href="classConfigFilter.html#e164faaa56958a3ec5a59eae5dc1b40a">ConfigFilter</a>
+, <a class="el" href="classConfigAccounts.html#f07a29dd20dfdf9e585f68e7241cb3e9">ConfigAccounts</a>
+<li>slotRemoveCriteriaWidget()
+: <a class="el" href="classFilterSetupDialog.html#f6692fef3f675c8a1081e20c0b8e605c">FilterSetupDialog</a>
+<li>slotSaveOptions()
+: <a class="el" href="classKShowMailApp.html#c97f2ac7f5c12aab46651f818f414109">KShowMailApp</a>
+<li>slotSecureTransferChanged()
+: <a class="el" href="classAccountSetupDialog.html#55e7fa494770714c93e63af679e5ba32">AccountSetupDialog</a>
+, <a class="el" href="classServerDialog.html#43e0a3f2e4975f8b196bc3dbfd606eb0">ServerDialog</a>
+<li>slotSendFeedbackMail()
+: <a class="el" href="classKShowMailApp.html#cb6b97d7b759372c2ab7690fc70d1518">KShowMailApp</a>
+<li>slotSetup()
+: <a class="el" href="classKShowMailApp.html#9d907211db6387cf6e395c22a9642c3b">KShowMailApp</a>
+<li>slotSetupAccount()
+: <a class="el" href="classKShowMailApp.html#65f99925664c07c6eafa2b375352ad34">KShowMailApp</a>
+<li>slotSetWidgets()
+: <a class="el" href="classFilterCriteriaWidget.html#9c9afe0acdd319ecfd750819d34183b4">FilterCriteriaWidget</a>
+<li>slotShowFilterLog()
+: <a class="el" href="classKShowMailApp.html#c9f6636accea83b903904c8767e4e65c">KShowMailApp</a>
+<li>slotShowHeader()
+: <a class="el" href="classKShowMailApp.html#7b9553bf179124f9f1eb56bdd094b901">KShowMailApp</a>
+<li>slotShowMessage()
+: <a class="el" href="classKShowMailApp.html#34c235044988b2d43c0e43d249831dc1">KShowMailApp</a>
+<li>slotShowMessageReady()
+: <a class="el" href="classKShowMailApp.html#3b9805091025c531842807e28e29cc10">KShowMailApp</a>
+<li>slotSizesReceived()
+: <a class="el" href="classConfigElem.html#685be03ba48ad2e1cfb9a0cc04a81559">ConfigElem</a>
+<li>slotSort()
+: <a class="el" href="classSenderListDialog.html#da37743f702d27fe1e0764fdce0b5902">SenderListDialog</a>
+<li>slotSoundToggled()
+: <a class="el" href="classConfigActions.html#e24ebd1d4969bbdbc71f4182adc480c3">ConfigActions</a>
+<li>slotStatusHelpMsg()
+: <a class="el" href="classKShowMailApp.html#1b373417eded77fcd51e23c0dca87467">KShowMailApp</a>
+<li>slotStatusMsg()
+: <a class="el" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">KShowMailApp</a>
+<li>slotStop()
+: <a class="el" href="classKShowMailApp.html#b9a90ef9062595e4cbebee5851206ec9">KShowMailApp</a>
+<li>slotTestSpamAssassin()
+: <a class="el" href="classConfigSpamcheck.html#6881f1416363077e03ca4a3e63d77738">ConfigSpamcheck</a>
+<li>slotTimeout()
+: <a class="el" href="classConfigElem.html#9771cc6111fae208e8ca92d9c162096d">ConfigElem</a>
+<li>slotUIDsReceived()
+: <a class="el" href="classConfigElem.html#5ba4833fd4b897bb21fa31dff2cf5750">ConfigElem</a>
+<li>slotUpdateAllViews()
+: <a class="el" href="classKshowmailDoc.html#2feac43fb28fdb4971fb601520d17c54">KshowmailDoc</a>
+<li>slotUser1()
+: <a class="el" href="classShowMailDialog.html#42e00be4443c4f66ff97277b68d2feb5">ShowMailDialog</a>
+<li>slotWaitingCursor()
+: <a class="el" href="classKShowMailApp.html#36b54a32e442ec8bab250c3c87f08962">KShowMailApp</a>
+<li>source
+: <a class="el" href="classFilterItemCriteria.html#84551b9f69ec91321d5e121b74ecb1d5">FilterItemCriteria</a>
+, <a class="el" href="structTypes_1_1FilterCriteria__Type.html#9866add14b0f3c62082e62e3b0992e9b">Types::FilterCriteria_Type</a>
+<li>Source_Type
+: <a class="el" href="classFilterItemCriteria.html#38b0ef8defd3f52091da4594adf07197">FilterItemCriteria</a>
+<li>spamAction
+: <a class="el" href="classConfigList.html#9b32c6d646ae58275351208894d7f545">ConfigList</a>
+<li>spamMailbox
+: <a class="el" href="classConfigList.html#44cf59851c3af0b6f0a1cbdb15688491">ConfigList</a>
+<li>spbCompValueNum
+: <a class="el" href="classFilterCriteriaWidget.html#3f6c902e9c9d95e7bfd5844b7d989da2">FilterCriteriaWidget</a>
+<li>spbDelDays
+: <a class="el" href="classConfigLog.html#822c19a03e5f27b2dd7e3fde36931a3e">ConfigLog</a>
+<li>spbInitial
+: <a class="el" href="classConfigGeneral.html#2d41d710a15c3c1a5a06300c7aa4db85">ConfigGeneral</a>
+<li>spbInterval
+: <a class="el" href="classConfigGeneral.html#c06ea08b185b53fb9e0444c6291b505f">ConfigGeneral</a>
+<li>spbMovDays
+: <a class="el" href="classConfigLog.html#665686b7be964c5769b83075a2eb614c">ConfigLog</a>
+<li>spbPort
+: <a class="el" href="classAccountSetupDialog.html#830975a1e546e17563aa93f8ef2519eb">AccountSetupDialog</a>
+, <a class="el" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">ServerDialog</a>
+<li>spbTimeout
+: <a class="el" href="classConfigGeneral.html#ae2990489c767b1f0083c7a8969272d6">ConfigGeneral</a>
+<li>SrcAccount
+: <a class="el" href="classFilterItemCriteria.html#38b0ef8defd3f52091da4594adf07197531c79a9e1f854cc7fa5ec0eca01ba83">FilterItemCriteria</a>
+<li>SrcFrom
+: <a class="el" href="classFilterItemCriteria.html#38b0ef8defd3f52091da4594adf071973546869a90879c8438a73685e34be230">FilterItemCriteria</a>
+<li>SrcHeader
+: <a class="el" href="classFilterItemCriteria.html#38b0ef8defd3f52091da4594adf07197c2a2be36517155d1d073e0e5753750c4">FilterItemCriteria</a>
+<li>SrcSize
+: <a class="el" href="classFilterItemCriteria.html#38b0ef8defd3f52091da4594adf0719743ba45454a4328cd3f33a22fd75d03f1">FilterItemCriteria</a>
+<li>SrcSubject
+: <a class="el" href="classFilterItemCriteria.html#38b0ef8defd3f52091da4594adf07197a75f15cd45c66787fa46bd7ef217b4c1">FilterItemCriteria</a>
+<li>SrcTo
+: <a class="el" href="classFilterItemCriteria.html#38b0ef8defd3f52091da4594adf0719774586baa1ff23d5fb8909435fdfc1212">FilterItemCriteria</a>
+<li>startKIOJob()
+: <a class="el" href="classConfigElem.html#91d4d6394730fae55c12ccb1247d76aa">ConfigElem</a>
+<li>startMinimized()
+: <a class="el" href="classConfigList.html#6b5567437e81508f071d31acb4509994">ConfigList</a>
+<li>state
+: <a class="el" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">ConfigElem</a>
+, <a class="el" href="classShowRecordElem.html#f00398057086a7fbee1205c5d0f605a2">ShowRecordElem</a>
+<li>stopRefreshTimer()
+: <a class="el" href="classKShowMailApp.html#7ab6f6a1037c6d00e1fd0f8cdf966d47">KShowMailApp</a>
+<li>strSize()
+: <a class="el" href="classShowRecordElem.html#f5e3c42a0be5b06f414b5936d6a64056">ShowRecordElem</a>
+<li>strSizePrefix()
+: <a class="el" href="classShowRecordElem.html#233ccd75f668ec868ec726120d8c71d9">ShowRecordElem</a>
+<li>strUnixTime()
+: <a class="el" href="classShowRecordElem.html#0e554cd8f1e67b3e448054e8c6fdc91c">ShowRecordElem</a>
+<li>subject()
+: <a class="el" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">ShowRecordElem</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#8d67b3621f4966cfad7983f6ac0989ea">FilterLogViewMovedItem</a>
+, <a class="el" href="classFilterLogViewDeletedItem.html#c282551b645b3a29ec7822e5ce7eaa1d">FilterLogViewDeletedItem</a>
+, <a class="el" href="classFilterLogEntry.html#be167b5503f62f90b0dc560a1e5b1558">FilterLogEntry</a>
+<li>swapMailLists()
+: <a class="el" href="classConfigElem.html#91365e361149fd5d564b99a4b7182fc3">ConfigElem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x74.html b/doc/html/functions_0x74.html
new file mode 100644
index 0000000..ffba8af
--- /dev/null
+++ b/doc/html/functions_0x74.html
@@ -0,0 +1,126 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li id="current"><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
+<li>tempMailList
+: <a class="el" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">ConfigElem</a>
+<li>TextCondition_Type
+: <a class="el" href="classFilterItemCriteria.html#15bb04dea0adb17e34e280a82eb6be6f">FilterItemCriteria</a>
+<li>timerEvent()
+: <a class="el" href="classKShowMailApp.html#79825417f6967185146c48de3278a80c">KShowMailApp</a>
+<li>title1
+: <a class="el" href="classMailBoxWizard.html#6fa119c02cc1b8bf18ab30efde160c64">MailBoxWizard</a>
+<li>title2
+: <a class="el" href="classMailBoxWizard.html#59340a103fd3699f1d7d49766f697794">MailBoxWizard</a>
+<li>to()
+: <a class="el" href="classShowRecordElem.html#759a16f3424defc71b4cfd762b156fd1">ShowRecordElem</a>
+<li>txtAccount
+: <a class="el" href="classAccountSetupDialog.html#498961d7111d25751b3ec2cc82d7d3f9">AccountSetupDialog</a>
+, <a class="el" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">ServerDialog</a>
+<li>txtCompValueText
+: <a class="el" href="classFilterCriteriaWidget.html#671a9c2738e3354a780cd4620170ef8f">FilterCriteriaWidget</a>
+<li>TxtCondContains
+: <a class="el" href="classFilterItemCriteria.html#15bb04dea0adb17e34e280a82eb6be6f25059f8d1fe4c30496210da5fa1a72f9">FilterItemCriteria</a>
+<li>TxtCondEqual
+: <a class="el" href="classFilterItemCriteria.html#15bb04dea0adb17e34e280a82eb6be6fb3ec0aa8185f2ca796e477b825f8296e">FilterItemCriteria</a>
+<li>txtCondition
+: <a class="el" href="classFilterItemCriteria.html#80db831c80f48e867ea0de4514155c30">FilterItemCriteria</a>
+<li>TxtCondNotContains
+: <a class="el" href="classFilterItemCriteria.html#15bb04dea0adb17e34e280a82eb6be6fdb51576913f4df976410b4c8d2851696">FilterItemCriteria</a>
+<li>TxtCondNotEqual
+: <a class="el" href="classFilterItemCriteria.html#15bb04dea0adb17e34e280a82eb6be6f17ff814248fa95cd4615ed68a138bd2b">FilterItemCriteria</a>
+<li>TxtCondNotRegExpr
+: <a class="el" href="classFilterItemCriteria.html#15bb04dea0adb17e34e280a82eb6be6f58cea83345a15b02b9260a45069fda7e">FilterItemCriteria</a>
+<li>TxtCondRegExpr
+: <a class="el" href="classFilterItemCriteria.html#15bb04dea0adb17e34e280a82eb6be6f266b5347283171204842440a1dd7dcec">FilterItemCriteria</a>
+<li>txtMailbox
+: <a class="el" href="classConfigFilter.html#045b3617514d7c505a5641eec11ce7ca">ConfigFilter</a>
+, <a class="el" href="classConfigSpamcheck.html#0fe2f958fd8956b9c843ea3c75230b82">ConfigSpamcheck</a>
+, <a class="el" href="classFilterSetupDialog.html#7df1f80c7ebe025e5b6cd259e7a979a6">FilterSetupDialog</a>
+<li>txtMailDir
+: <a class="el" href="classMailBoxWizard.html#b4c5ecd7b7de8dbdadea18ae2857f3d7">MailBoxWizard</a>
+<li>txtName
+: <a class="el" href="classFilterSetupDialog.html#b459c7092f81c673b8c9be73160e7c0c">FilterSetupDialog</a>
+<li>txtNewMailsCommand
+: <a class="el" href="classConfigActions.html#a030c72396809e3532bb6d3db7aebb5b">ConfigActions</a>
+<li>txtNewMailsSound
+: <a class="el" href="classConfigActions.html#939646611bf2c9daa03a3b30f789803f">ConfigActions</a>
+<li>txtPassword
+: <a class="el" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#9edb40f241d46c198e5cd2c5b1208191">AccountSetupDialog</a>
+<li>txtServer
+: <a class="el" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#e95956f6bffaf59934194cf7d9e332f9">AccountSetupDialog</a>
+<li>txtUser
+: <a class="el" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#b27b8d090b54974dcc7816dd93b9c46c">AccountSetupDialog</a>
+<li>txtValue
+: <a class="el" href="classFilterItemCriteria.html#48530ea0b4d0b3bf4999086ead3d35be">FilterItemCriteria</a>
+, <a class="el" href="structTypes_1_1FilterCriteria__Type.html#30e8afe468fdbcc1483ddfec89602c92">Types::FilterCriteria_Type</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x75.html b/doc/html/functions_0x75.html
new file mode 100644
index 0000000..52420b1
--- /dev/null
+++ b/doc/html/functions_0x75.html
@@ -0,0 +1,82 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li id="current"><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_u">- u -</a></h3><ul>
+<li>uidl()
+: <a class="el" href="classShowRecordElem.html#835e045bf24090c4d6a6a9049c60e94c">ShowRecordElem</a>
+<li>UniqueApp
+: <a class="el" href="classKShowMailApp.html#d5008f2e1c7aac94129746c60836d338">KShowMailApp</a>
+, <a class="el" href="classUniqueApp.html#ecfa67080f62f6ec776089de43e920ba">UniqueApp</a>
+<li>updateActionColumn()
+: <a class="el" href="classFilterSetupItem.html#5c17a5cb348c64ac15b4c2dbcf219535">FilterSetupItem</a>
+<li>URL()
+: <a class="el" href="classKshowmailDoc.html#a498d92a8c3b8a41f2bbf198f593435a">KshowmailDoc</a>
+<li>useTLS
+: <a class="el" href="classConfigElem.html#b13600ffaaae88a8e0baf030ffd926a1">ConfigElem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x76.html b/doc/html/functions_0x76.html
new file mode 100644
index 0000000..7da72a7
--- /dev/null
+++ b/doc/html/functions_0x76.html
@@ -0,0 +1,73 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li id="current"><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_v">- v -</a></h3><ul>
+<li>viewItem()
+: <a class="el" href="classShowRecordElem.html#e176bc1074c050afc56540849bc3664c">ShowRecordElem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_0x7e.html b/doc/html/functions_0x7e.html
new file mode 100644
index 0000000..aed2cc2
--- /dev/null
+++ b/doc/html/functions_0x7e.html
@@ -0,0 +1,147 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html#index__"><span>_</span></a></li>
+ <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
+ <li id="current"><a href="functions_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_~">- ~ -</a></h3><ul>
+<li>~AccountSetupDialog()
+: <a class="el" href="classAccountSetupDialog.html#780c48f1db6f4f3ecb341bd4a3077b02">AccountSetupDialog</a>
+<li>~AccountSetupItem()
+: <a class="el" href="classAccountSetupItem.html#d62bafb61f526698b43f867fbd93ca05">AccountSetupItem</a>
+<li>~AlertDialog()
+: <a class="el" href="classAlertDialog.html#5ea8838b691df53710d053c592ce2c7c">AlertDialog</a>
+<li>~AlertDlg()
+: <a class="el" href="classAlertDlg.html#268ce013bcd724380693d42f3bcae203">AlertDlg</a>
+<li>~ConfigAccounts()
+: <a class="el" href="classConfigAccounts.html#1c3f25feb7830704927f4e05ca9ae6f8">ConfigAccounts</a>
+<li>~ConfigActions()
+: <a class="el" href="classConfigActions.html#40b1d8ba72aaa9f43e0c76c43cf635e5">ConfigActions</a>
+<li>~ConfigDisplay()
+: <a class="el" href="classConfigDisplay.html#4704c7acdf3cd26f1285c72b40fe9959">ConfigDisplay</a>
+<li>~ConfigElem()
+: <a class="el" href="classConfigElem.html#d14d9c03f757691f198efd14104a3ce8">ConfigElem</a>
+<li>~ConfigFilter()
+: <a class="el" href="classConfigFilter.html#026bfbced44f2565c331c2fc51265569">ConfigFilter</a>
+<li>~ConfigGeneral()
+: <a class="el" href="classConfigGeneral.html#34b19e5396cbeb9be9e66f45b57520c6">ConfigGeneral</a>
+<li>~ConfigList()
+: <a class="el" href="classConfigList.html#1b6a054d7671b4f57d7fe77f123179ea">ConfigList</a>
+<li>~ConfigLog()
+: <a class="el" href="classConfigLog.html#2c32d0d5a4d622e3e8713ab4fff63e02">ConfigLog</a>
+<li>~ConfigSpamcheck()
+: <a class="el" href="classConfigSpamcheck.html#696b7211a7dd6588351f11d658d44af1">ConfigSpamcheck</a>
+<li>~FilterCriteriaWidget()
+: <a class="el" href="classFilterCriteriaWidget.html#ecafebea26ca4531415530c8d07ce1ed">FilterCriteriaWidget</a>
+<li>~FilterItem()
+: <a class="el" href="classFilterItem.html#146084a4a8383d3407115aab6c949687">FilterItem</a>
+<li>~FilterItemCriteria()
+: <a class="el" href="classFilterItemCriteria.html#ddd23d721fe3ca63fa7b0496858b4357">FilterItemCriteria</a>
+<li>~FilterLog()
+: <a class="el" href="classFilterLog.html#e33b0808ca97f0bc42f5d04d8b3352f7">FilterLog</a>
+<li>~FilterLogEntry()
+: <a class="el" href="classFilterLogEntry.html#f1e1205386c56c99067ccc4966d6bdb2">FilterLogEntry</a>
+<li>~FilterLogView()
+: <a class="el" href="classFilterLogView.html#39949389eff6158027896ae9aa090c02">FilterLogView</a>
+<li>~FilterLogViewDeletedItem()
+: <a class="el" href="classFilterLogViewDeletedItem.html#91afcc19016df621b109c17d5c2ba13e">FilterLogViewDeletedItem</a>
+<li>~FilterLogViewMovedItem()
+: <a class="el" href="classFilterLogViewMovedItem.html#49ba5adbfaa98136ce22075c555ad2f8">FilterLogViewMovedItem</a>
+<li>~FilterSetupDialog()
+: <a class="el" href="classFilterSetupDialog.html#75a5bbcbc8df473e7661906bc13560a7">FilterSetupDialog</a>
+<li>~FilterSetupItem()
+: <a class="el" href="classFilterSetupItem.html#a70931ebe41f5e3c6ed398cdcfd98dd9">FilterSetupItem</a>
+<li>~HeaderFilter()
+: <a class="el" href="classHeaderFilter.html#301cf390f0257fe44afacaf118fa4df4">HeaderFilter</a>
+<li>~KShowMailApp()
+: <a class="el" href="classKShowMailApp.html#3b3759d8593576edfa0b3fab62ce26c0">KShowMailApp</a>
+<li>~KshowmailDoc()
+: <a class="el" href="classKshowmailDoc.html#fe8d064e8b1d44683fde4e3261333841">KshowmailDoc</a>
+<li>~KShowMailDock()
+: <a class="el" href="classKShowMailDock.html#56d112429ab3f0d2d67f4b33b47bd683">KShowMailDock</a>
+<li>~KshowmailView()
+: <a class="el" href="classKshowmailView.html#208c56da5fe95348bd13435ff44c8aae">KshowmailView</a>
+<li>~MailBoxWizard()
+: <a class="el" href="classMailBoxWizard.html#16fb2b5ef6ac6ba4da30b41f861f403a">MailBoxWizard</a>
+<li>~MailBoxWizardListItem()
+: <a class="el" href="classMailBoxWizardListItem.html#4cbbabf9b2137eba15c27b6972779f73">MailBoxWizardListItem</a>
+<li>~SenderListDialog()
+: <a class="el" href="classSenderListDialog.html#c4ca6fdc2ea66a934317314c0363e593">SenderListDialog</a>
+<li>~SenderListFilter()
+: <a class="el" href="classSenderListFilter.html#ea24007a926fd8e8027ce69350ada9b5">SenderListFilter</a>
+<li>~ServerDialog()
+: <a class="el" href="classServerDialog.html#05ac011efd88d4ae6f0965f7b6d3606d">ServerDialog</a>
+<li>~ShowHeaderDialog()
+: <a class="el" href="classShowHeaderDialog.html#e6bb3cabae2aa28679ed8118893e6daa">ShowHeaderDialog</a>
+<li>~ShowListViewItem()
+: <a class="el" href="classShowListViewItem.html#1d417b96d9e99eb7a7f284386cb00f91">ShowListViewItem</a>
+<li>~ShowMailDialog()
+: <a class="el" href="classShowMailDialog.html#37fd2e70ec2bbca753250bf5270f208e">ShowMailDialog</a>
+<li>~ShowRecord()
+: <a class="el" href="classShowRecord.html#bda8f21edf9dbfa07741e37e6f06beeb">ShowRecord</a>
+<li>~UniqueApp()
+: <a class="el" href="classUniqueApp.html#c0f5a87150f0c1a09ada9996fba1ffa2">UniqueApp</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_enum.html b/doc/html/functions_enum.html
new file mode 100644
index 0000000..3ee4014
--- /dev/null
+++ b/doc/html/functions_enum.html
@@ -0,0 +1,55 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Enumerations</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li id="current"><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+&nbsp;
+<p>
+<ul>
+<li>Column
+: <a class="el" href="classFilterLogViewDeletedItem.html#3bf7f61a50bde0626ca14550a73e139c">FilterLogViewDeletedItem</a>
+, <a class="el" href="classFilterSetupItem.html#75976f4e0a1067acd189088152f6ef39">FilterSetupItem</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#f94556f622467f7afff802d9157d519c">FilterLogViewMovedItem</a>
+<li>Linkage_Type
+: <a class="el" href="classFilterItem.html#58b18d2ee6b00081df0b962224aca749">FilterItem</a>
+<li>ListType
+: <a class="el" href="classSenderListDialog.html#c9198349954e23bb42c0d5a6c573fbbd">SenderListDialog</a>
+<li>NumCondition_Type
+: <a class="el" href="classFilterItemCriteria.html#a9f75c7e50d2de22a6fc88a68098defd">FilterItemCriteria</a>
+<li>Source_Type
+: <a class="el" href="classFilterItemCriteria.html#38b0ef8defd3f52091da4594adf07197">FilterItemCriteria</a>
+<li>TextCondition_Type
+: <a class="el" href="classFilterItemCriteria.html#15bb04dea0adb17e34e280a82eb6be6f">FilterItemCriteria</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_func.html b/doc/html/functions_func.html
new file mode 100644
index 0000000..aae4c5a
--- /dev/null
+++ b/doc/html/functions_func.html
@@ -0,0 +1,109 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li id="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
+<li>AccountSetupDialog()
+: <a class="el" href="classAccountSetupDialog.html#7759eda115eefba12fb2de58f286edc2">AccountSetupDialog</a>
+<li>AccountSetupItem()
+: <a class="el" href="classAccountSetupItem.html#9c970fc3be4c2d02bb1f194d6ec97d62">AccountSetupItem</a>
+<li>addCriteriaWidget()
+: <a class="el" href="classFilterSetupDialog.html#fa448720691406559aa6abf252a17fce">FilterSetupDialog</a>
+<li>addDeletedMail()
+: <a class="el" href="classFilterLog.html#5211bb97e97e271f56fb29d47ddde90e">FilterLog</a>
+<li>addEntry()
+: <a class="el" href="classFilterLog.html#ae0fa8c9dfa7defe284a24906bfb6894">FilterLog</a>
+<li>addFeatureList()
+: <a class="el" href="classKShowMailApp.html#7928ea906a7abe17a5f56f110cdd58d6">KShowMailApp</a>
+<li>addMailBoxListItem()
+: <a class="el" href="classMailBoxWizard.html#4c159ac204891faf8579cb488f841ca1">MailBoxWizard</a>
+<li>addMovedMail()
+: <a class="el" href="classFilterLog.html#1e98c535579ec9820c427e19f62078b2">FilterLog</a>
+<li>addView()
+: <a class="el" href="classKshowmailDoc.html#d9c7e004cad6927dd62d7a0d8f1f29b1">KshowmailDoc</a>
+<li>AlertDialog()
+: <a class="el" href="classAlertDialog.html#0c3106b439a19f0b5a240b3095595880">AlertDialog</a>
+<li>AlertDlg()
+: <a class="el" href="classAlertDlg.html#b8b7463dbb2a1c27a84f3846db46027b">AlertDlg</a>
+<li>allowHTML()
+: <a class="el" href="classConfigList.html#4cd09107151c848fafe17db0c8e9a4a6">ConfigList</a>
+<li>appendNewMail()
+: <a class="el" href="classShowRecord.html#97b16a09a5a51b68f7d2b3efb95c80ea">ShowRecord</a>
+<li>applyFilters()
+: <a class="el" href="classConfigElem.html#f4206aa01f491b7a7e2c57682fe10b31">ConfigElem</a>
+<li>applyFiltersDeleted()
+: <a class="el" href="classConfigElem.html#6a1f1cb81c4bcca055e0b98bd9fb0cf7">ConfigElem</a>
+<li>applyHeaderFilter()
+: <a class="el" href="classShowRecordElem.html#09ca2f0d70bdf8ed2bb7d75ef13bec12">ShowRecordElem</a>
+, <a class="el" href="classShowRecord.html#a2c3ad37ee0eb7eb41d7820e05352502">ShowRecord</a>
+<li>askCloseConfirmation()
+: <a class="el" href="classKShowMailApp.html#d93e3467abdad835b02dde5f514c4013">KShowMailApp</a>
+<li>assertPassword()
+: <a class="el" href="classConfigElem.html#973328114a20a798887ab040aba33141">ConfigElem</a>
+<li>AutoRefreshOn()
+: <a class="el" href="classConfigList.html#cae6685097cd8e5e63cee28e17d92d41">ConfigList</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_rela.html b/doc/html/functions_rela.html
new file mode 100644
index 0000000..85eb8ee
--- /dev/null
+++ b/doc/html/functions_rela.html
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Related Functions</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li id="current"><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+&nbsp;
+<p>
+<ul>
+<li>KshowmailDock
+: <a class="el" href="classKShowMailApp.html#3babed6869c8529c61d0b4719140307f">KShowMailApp</a>
+<li>KshowmailView
+: <a class="el" href="classKShowMailApp.html#95753bb48121b9a00bbbf185d46a5c1b">KShowMailApp</a>
+<li>UniqueApp
+: <a class="el" href="classKShowMailApp.html#d5008f2e1c7aac94129746c60836d338">KShowMailApp</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars.html b/doc/html/functions_vars.html
new file mode 100644
index 0000000..4f8dea2
--- /dev/null
+++ b/doc/html/functions_vars.html
@@ -0,0 +1,86 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index__">- _ -</a></h3><ul>
+<li>_account
+: <a class="el" href="classAccountSetupItem.html#6f42afbe7a05c1d431c99fe9de2544cf">AccountSetupItem</a>
+<li>_active
+: <a class="el" href="classAccountSetupItem.html#08984a59b3a03b9ac919da388f9b4d77">AccountSetupItem</a>
+<li>_password
+: <a class="el" href="classAccountSetupItem.html#8ccb6320dbfbdcc84c9153d44cbc7f53">AccountSetupItem</a>
+<li>_passwordStorage
+: <a class="el" href="classAccountSetupItem.html#cc3d0e67733b2651627ced562a78493d">AccountSetupItem</a>
+<li>_port
+: <a class="el" href="classAccountSetupItem.html#09655b292b183798d38134f6239904a9">AccountSetupItem</a>
+<li>_protocol
+: <a class="el" href="classAccountSetupItem.html#0a8ebdb7e6a0fe7f8d2087e76886e83f">AccountSetupItem</a>
+<li>_server
+: <a class="el" href="classAccountSetupItem.html#63330ee312d151d983c2c6d7599c1f7a">AccountSetupItem</a>
+<li>_transferSecurity
+: <a class="el" href="classAccountSetupItem.html#a2efe33199e3634f32d700331e8c6402">AccountSetupItem</a>
+<li>_user
+: <a class="el" href="classAccountSetupItem.html#a5d1dc044834b57ed6cb965f1b566d18">AccountSetupItem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x61.html b/doc/html/functions_vars_0x61.html
new file mode 100644
index 0000000..027bdb0
--- /dev/null
+++ b/doc/html/functions_vars_0x61.html
@@ -0,0 +1,94 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li id="current"><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
+<li>account
+: <a class="el" href="classFilterLogEntry.html#712d167a9ba886be14ca9ad1bc8341f7">FilterLogEntry</a>
+, <a class="el" href="classFilterLogViewDeletedItem.html#d36bac5f37a31a7d6b1b3070d0ac89f7">FilterLogViewDeletedItem</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#c101868fd42507b8493b1f514a81fbc2">FilterLogViewMovedItem</a>
+, <a class="el" href="classAccountSetupDialog.html#0585145e7ae4b3e22377c6ed787c9eb0">AccountSetupDialog</a>
+, <a class="el" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">ServerDialog</a>
+<li>AccountDeletionMap
+: <a class="el" href="classConfigList.html#bc124e934246f773aeab03b5f0940f01">ConfigList</a>
+<li>AccountListView
+: <a class="el" href="classConfigAccounts.html#ced2eabc665f10450ae950e713e5eba3">ConfigAccounts</a>
+<li>AccountRefreshMap
+: <a class="el" href="classConfigList.html#9c266b75b6629ff8f850ac9b9a2a8a08">ConfigList</a>
+<li>AccountShowBodiesMap
+: <a class="el" href="classConfigList.html#6fcc9096444b71e03865ac2402bb0d23">ConfigList</a>
+<li>act
+: <a class="el" href="classFilterLogEntry.html#491ab294e7c012aaf2ecefbd5a40467a">FilterLogEntry</a>
+<li>action
+: <a class="el" href="classFilterItem.html#d64fa3d718d8c849dfe6dff9d3e595b3">FilterItem</a>
+, <a class="el" href="structTypes_1_1DownloadActionParams__Type.html#d41d45e85476d483baa76fd209ea4cff">Types::DownloadActionParams_Type</a>
+, <a class="el" href="classFilterSetupItem.html#546a1bdc65a76a246d7d1d5209942b38">FilterSetupItem</a>
+<li>active
+: <a class="el" href="classHeaderFilter.html#3c14bb815e8616df14a6c225fd9d4469">HeaderFilter</a>
+<li>AlertDlgLayout
+: <a class="el" href="classAlertDlg.html#7ff66f74b2fcc1c1ebe7b9c48c9478ca">AlertDlg</a>
+<li>appConfig
+: <a class="el" href="classConfigElem.html#cdde481b0e7623717f25721a23b95352">ConfigElem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x62.html b/doc/html/functions_vars_0x62.html
new file mode 100644
index 0000000..16430a1
--- /dev/null
+++ b/doc/html/functions_vars_0x62.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li id="current"><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
+<li>blacklist
+: <a class="el" href="classSenderListFilter.html#18cefb81d2ba5d663f3c5d26d098265b">SenderListFilter</a>
+<li>blacklistAction
+: <a class="el" href="classSenderListFilter.html#bbde9560d26d88cd90b7adcdf9622240">SenderListFilter</a>
+<li>btnAdd
+: <a class="el" href="classConfigAccounts.html#0c5ebb039f7347640a58c5ee57098779">ConfigAccounts</a>
+, <a class="el" href="classConfigFilter.html#d82b8fe7bca580c1c86361be2d998a29">ConfigFilter</a>
+<li>btnAddCriteria
+: <a class="el" href="classFilterSetupDialog.html#483e48b31515d4092ff732909d04e70f">FilterSetupDialog</a>
+<li>btnDelMailsRemoveDays
+: <a class="el" href="classConfigLog.html#fce2bf2c6b740bf60db4c1d3eb006689">ConfigLog</a>
+<li>btnDelMailsRemoveExit
+: <a class="el" href="classConfigLog.html#68ebd0dad2255583411429bd5e953d4b">ConfigLog</a>
+<li>btnEdit
+: <a class="el" href="classConfigAccounts.html#95cd2f5c99c1d91560b46ced9d9d1fbf">ConfigAccounts</a>
+, <a class="el" href="classConfigFilter.html#e1763aa712de4ef72f045eeadc8af472">ConfigFilter</a>
+<li>btnMailboxWizard
+: <a class="el" href="classConfigFilter.html#e44fc384a0fa34800b713b726cb67b39">ConfigFilter</a>
+, <a class="el" href="classConfigSpamcheck.html#79c1b7b26c94e7fa9353f478b67aad36">ConfigSpamcheck</a>
+, <a class="el" href="classFilterSetupDialog.html#be7549b4b90d586b05236dd9077703c2">FilterSetupDialog</a>
+<li>btnMailDir
+: <a class="el" href="classMailBoxWizard.html#6d8dfe0d36dd87385738df672446b149">MailBoxWizard</a>
+<li>btnMoveBottom
+: <a class="el" href="classConfigFilter.html#1f56ae436a4df8ae216e19f1b9ecbf95">ConfigFilter</a>
+<li>btnMoveDown
+: <a class="el" href="classConfigFilter.html#6d50c434a5c67d23785cf70a4958f536">ConfigFilter</a>
+<li>btnMoveTop
+: <a class="el" href="classConfigFilter.html#3936c764c0a6152232e13f5a25b55ab6">ConfigFilter</a>
+<li>btnMoveUp
+: <a class="el" href="classConfigFilter.html#f6f460803a19cd2e1b5f56cb9f5a7d0a">ConfigFilter</a>
+<li>btnMovMailsRemoveDays
+: <a class="el" href="classConfigLog.html#84301947e00f41cff17fa0dabdac23da">ConfigLog</a>
+<li>btnMovMailsRemoveExit
+: <a class="el" href="classConfigLog.html#c8a6cb4285aa777d4c6b4207e598f680">ConfigLog</a>
+<li>btnNewMailsChooseCommand
+: <a class="el" href="classConfigActions.html#1b0e5c5712a4c791ace1441190ec44b4">ConfigActions</a>
+<li>btnNewMailsChooseSound
+: <a class="el" href="classConfigActions.html#ba27e4247bca54e550c623e0c0e43e2e">ConfigActions</a>
+<li>btnNewMailsExecCommand
+: <a class="el" href="classConfigActions.html#e44618d32db70130b3d39b1d7bc45acb">ConfigActions</a>
+<li>btnNewMailsPlaySound
+: <a class="el" href="classConfigActions.html#36d655db8bb7763e522adf67df33d747">ConfigActions</a>
+<li>btnOpenBlacklist
+: <a class="el" href="classConfigFilter.html#7174045c4556a9561c4973b9ef939242">ConfigFilter</a>
+<li>btnOpenRegExpEditor
+: <a class="el" href="classFilterCriteriaWidget.html#41299a8b2eca0903834c110ce0b25384">FilterCriteriaWidget</a>
+<li>btnOpenWhitelist
+: <a class="el" href="classConfigFilter.html#5f2657065bc7241093ea3cfc1a8992bc">ConfigFilter</a>
+<li>btnRemove
+: <a class="el" href="classConfigFilter.html#a07c7a7e15ccdf67f08d074e81ba4376">ConfigFilter</a>
+, <a class="el" href="classConfigAccounts.html#52e23250590a8ad13e1992898a23e635">ConfigAccounts</a>
+<li>btnRemoveCriteria
+: <a class="el" href="classFilterSetupDialog.html#dd3a087c23bd8792411f377a0d93f924">FilterSetupDialog</a>
+<li>btnTest
+: <a class="el" href="classConfigSpamcheck.html#d4a40e236a30b5338df427377f6c4c75">ConfigSpamcheck</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x63.html b/doc/html/functions_vars_0x63.html
new file mode 100644
index 0000000..cad8c07
--- /dev/null
+++ b/doc/html/functions_vars_0x63.html
@@ -0,0 +1,192 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li id="current"><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
+<li>cancelShowHeaders
+: <a class="el" href="classConfigElem.html#85fb09c9cdc92ae5e8663bf8c6c4a615">ConfigElem</a>
+, <a class="el" href="classShowRecord.html#8f9c8ce1f77c014cd4efcbf65c9b11f5">ShowRecord</a>
+, <a class="el" href="classShowRecordElem.html#b6aceead6b70f3e3f5e6af530c5ac1af">ShowRecordElem</a>
+<li>cboProtocol
+: <a class="el" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#ad109f88ad94c12be8f6a7f5892f8308">AccountSetupDialog</a>
+<li>chkAccountlistAccount
+: <a class="el" href="classConfigDisplay.html#eed2bda3ddef71cb93551499edcdd7d4">ConfigDisplay</a>
+<li>chkAccountlistActive
+: <a class="el" href="classConfigDisplay.html#02db52720d61f28444a2b8fcacb37797">ConfigDisplay</a>
+<li>chkAccountlistMessages
+: <a class="el" href="classConfigDisplay.html#7957216f75d54b7dbacb495b413fc9d0">ConfigDisplay</a>
+<li>chkAccountlistServer
+: <a class="el" href="classConfigDisplay.html#7ee137ded8f5f0f4277041c45d0d8b9a">ConfigDisplay</a>
+<li>chkAccountlistSize
+: <a class="el" href="classConfigDisplay.html#84d2c8afcd8f9d3bb5115e8d2c270cdf">ConfigDisplay</a>
+<li>chkAccountlistUser
+: <a class="el" href="classConfigDisplay.html#f08e20265d27eea0dee1a849e785e5aa">ConfigDisplay</a>
+<li>chkActivateFilter
+: <a class="el" href="classConfigFilter.html#c2a415bbf59e3e3849a646e2175a14dd">ConfigFilter</a>
+<li>chkActive
+: <a class="el" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#ae0af23b1fed06d16ebb995a4cc881db">AccountSetupDialog</a>
+<li>chkAllowHTML
+: <a class="el" href="classConfigDisplay.html#0604eee5dd84775d044bd149747754e9">ConfigDisplay</a>
+<li>chkCaseSensitive
+: <a class="el" href="classFilterCriteriaWidget.html#464ed7fa31017e93ecb38f4dd86472f5">FilterCriteriaWidget</a>
+<li>chkCloseToTray
+: <a class="el" href="classConfigGeneral.html#3254112303352fc179d917eb3d07ecaa">ConfigGeneral</a>
+<li>chkConfirmClose
+: <a class="el" href="classConfigGeneral.html#1d88b57020db593d5d5dfbad12de0fff">ConfigGeneral</a>
+<li>chkConfirmDelete
+: <a class="el" href="classConfigGeneral.html#8c6c174874a4bb90ba1436e07b87ad80">ConfigGeneral</a>
+<li>chkKeepNew
+: <a class="el" href="classConfigGeneral.html#20f2f3ce054fe6e0b7258e50f4414457">ConfigGeneral</a>
+<li>chkLogDeletedMails
+: <a class="el" href="classConfigLog.html#b8fff5d7cbb30185227c702e1b679be6">ConfigLog</a>
+<li>chkLogMovedMails
+: <a class="el" href="classConfigLog.html#dc2656eee036eb7da225edf63b73f2d1">ConfigLog</a>
+<li>chkMessagelistAccount
+: <a class="el" href="classConfigDisplay.html#f493b7da71ca2d9a77cc5746f76d61b1">ConfigDisplay</a>
+<li>chkMessagelistContent
+: <a class="el" href="classConfigDisplay.html#30f694a335efce99f6872d348cb00dc0">ConfigDisplay</a>
+<li>chkMessagelistDate
+: <a class="el" href="classConfigDisplay.html#a22a37699e555d084931f436b6e59bed">ConfigDisplay</a>
+<li>chkMessagelistFrom
+: <a class="el" href="classConfigDisplay.html#407aaa1e6679678e8548a24e9f60ab34">ConfigDisplay</a>
+<li>chkMessagelistNumber
+: <a class="el" href="classConfigDisplay.html#7cd606b3c05b2681bb7aba6322f084bc">ConfigDisplay</a>
+<li>chkMessagelistSize
+: <a class="el" href="classConfigDisplay.html#7491226de75afc818d742dfb1416401e">ConfigDisplay</a>
+<li>chkMessagelistState
+: <a class="el" href="classConfigDisplay.html#a96647e5836a520a79d0a6a5147eda81">ConfigDisplay</a>
+<li>chkMessagelistSubject
+: <a class="el" href="classConfigDisplay.html#6f988f3e6dcc34a0709b9f997b889488">ConfigDisplay</a>
+<li>chkMessagelistTo
+: <a class="el" href="classConfigDisplay.html#ec3b78b0095f9dacb0ae0a488ecd5113">ConfigDisplay</a>
+<li>chkMinimizeToTray
+: <a class="el" href="classConfigGeneral.html#7397987b9f58654afcbcc35c3b6069fa">ConfigGeneral</a>
+<li>chkNewMailsAlertWindow
+: <a class="el" href="classConfigActions.html#4efebd1c902bf5a2f3a1bb60f9a67c5f">ConfigActions</a>
+<li>chkNewMailsBeep
+: <a class="el" href="classConfigActions.html#cb1d2eed97f240d95881272500d55923">ConfigActions</a>
+<li>chkNewMailsCommand
+: <a class="el" href="classConfigActions.html#3a0cd2fad3a3d03dc4c4227cc511265f">ConfigActions</a>
+<li>chkNewMailsMainWindow
+: <a class="el" href="classConfigActions.html#3a2c278df3742d407c8c85f649131869">ConfigActions</a>
+<li>chkNewMailsSound
+: <a class="el" href="classConfigActions.html#fef65cfb36bbcd44a2ec8c536a7913bd">ConfigActions</a>
+<li>chkNoNewMailsMinimize
+: <a class="el" href="classConfigActions.html#cd4695212a9a586e7a480fde4319970f">ConfigActions</a>
+<li>chkNoNewMailsTerminate
+: <a class="el" href="classConfigActions.html#1714fffad832835ae72a8ab1b72c6e63">ConfigActions</a>
+<li>chkShowConnectionErrors
+: <a class="el" href="classConfigGeneral.html#33232a5c81b81ebf699f128eb74bcc9c">ConfigGeneral</a>
+<li>chkStartMinimized
+: <a class="el" href="classConfigGeneral.html#506f6878bd107dcc0d515236fcb65225">ConfigGeneral</a>
+<li>cmbAction
+: <a class="el" href="classConfigSpamcheck.html#061d393ca53e544cc648af30cf0b9a35">ConfigSpamcheck</a>
+, <a class="el" href="classFilterSetupDialog.html#299b83408156afea479e156d64b28208">FilterSetupDialog</a>
+<li>cmbActionOthers
+: <a class="el" href="classConfigFilter.html#c98a570d959fda8ecf0ae3abf6c6045b">ConfigFilter</a>
+<li>cmbConditionNum
+: <a class="el" href="classFilterCriteriaWidget.html#7bcb4db13575d312986ee56b18149256">FilterCriteriaWidget</a>
+<li>cmbConditionText
+: <a class="el" href="classFilterCriteriaWidget.html#757183597ee7613f518ea7a0e6dc3c86">FilterCriteriaWidget</a>
+<li>cmbSource
+: <a class="el" href="classFilterCriteriaWidget.html#a60915511ddf8072f4fb8b23e1a1c1aa">FilterCriteriaWidget</a>
+<li>condition
+: <a class="el" href="structTypes_1_1FilterCriteria__Type.html#825ed5a5486fd08ea46073e108105681">Types::FilterCriteria_Type</a>
+<li>config
+: <a class="el" href="classAccountSetupItem.html#d65fe6007f3bf6439e5258f2ec4eba84">AccountSetupItem</a>
+, <a class="el" href="classConfigFilter.html#0665cb9994d3da0d3133acd78f4e5089">ConfigFilter</a>
+, <a class="el" href="classSenderListDialog.html#d14505adf99fdc58e0dfc75290701869">SenderListDialog</a>
+, <a class="el" href="classHeaderFilter.html#a09540eaa48602b30d628cb8f1fd9cb2">HeaderFilter</a>
+, <a class="el" href="classFilterItemCriteria.html#d976a4b2e4c3909b426307644557f32f">FilterItemCriteria</a>
+, <a class="el" href="classConfigGeneral.html#b8594eb00e943effe48a32344f240b9a">ConfigGeneral</a>
+, <a class="el" href="classFilterLog.html#d2b732e043ce3eb3ad2f4579b33a63d5">FilterLog</a>
+, <a class="el" href="classConfigDisplay.html#f85bc9e11d65b6028b5d2c93cac61f9b">ConfigDisplay</a>
+, <a class="el" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">KshowmailView</a>
+, <a class="el" href="classFilterItem.html#e6ca824e82943738ac739b5d179c3b8c">FilterItem</a>
+, <a class="el" href="classConfigActions.html#d453b2d006819c592a7006a1dbabaf34">ConfigActions</a>
+, <a class="el" href="classConfigList.html#4bed3e796400897fbffd3eb19e4ff296">ConfigList</a>
+, <a class="el" href="classSenderListFilter.html#d7824a94dc96a2bb5a9c90ea6beda818">SenderListFilter</a>
+, <a class="el" href="classConfigAccounts.html#99b5553c4403e378aedaf122dd158d84">ConfigAccounts</a>
+, <a class="el" href="classConfigSpamcheck.html#e27fbfe1f00e941b5bbf816a6e243b85">ConfigSpamcheck</a>
+, <a class="el" href="classConfigLog.html#7ca8b5257079e0b95f4aedf8d07398a7">ConfigLog</a>
+, <a class="el" href="classFilterSetupItem.html#62bcebb2b8f745b330499007bf75b637">FilterSetupItem</a>
+<li>continueShowHeaders
+: <a class="el" href="classConfigElem.html#8dc234323fe966a322ae8649bc2cd76e">ConfigElem</a>
+, <a class="el" href="classShowRecordElem.html#2b5bdb3ed3f940614135b9c9f1f13eb6">ShowRecordElem</a>
+, <a class="el" href="classShowRecord.html#24f3968b9bd526deb987f3e21f264404">ShowRecord</a>
+<li>criteriaList
+: <a class="el" href="classFilterSetupItem.html#6bdbcb472bdb9f1bc1bd0d45836b2cbf">FilterSetupItem</a>
+<li>CriteriaNumber
+: <a class="el" href="classFilterItemCriteria.html#0ea75bbf1425b38eb134a1d86085f044">FilterItemCriteria</a>
+<li>criterias
+: <a class="el" href="classFilterItem.html#d45c4cb5b7aacc6979956f10d8018933">FilterItem</a>
+<li>cs
+: <a class="el" href="classFilterItemCriteria.html#fa6f1c20d76baab1c5f70fe5855f226f">FilterItemCriteria</a>
+, <a class="el" href="structTypes_1_1FilterCriteria__Type.html#88f3fbe98218173cdb417423a890832c">Types::FilterCriteria_Type</a>
+<li>ctrOpenMessageWindows
+: <a class="el" href="classConfigList.html#6a3a4e9a8428c350a53bbf7b39f27e39">ConfigList</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x64.html b/doc/html/functions_vars_0x64.html
new file mode 100644
index 0000000..3b25e8b
--- /dev/null
+++ b/doc/html/functions_vars_0x64.html
@@ -0,0 +1,83 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li id="current"><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
+<li>date
+: <a class="el" href="classFilterLogViewDeletedItem.html#3e4a759ce1c365dbadf8023d0c36c0e9">FilterLogViewDeletedItem</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#30fabc810c4adfac29b2afc5eb08a356">FilterLogViewMovedItem</a>
+<li>daysStoreDeletedMails
+: <a class="el" href="classFilterLog.html#c2c77f4f69224d4128d538f6949a72e8">FilterLog</a>
+<li>defaultAction
+: <a class="el" href="classHeaderFilter.html#a478e4731d9465325095dd95c969d0bf">HeaderFilter</a>
+<li>deletedMailsStorageMode
+: <a class="el" href="classFilterLog.html#2a17bd37938071ec9e5fdb07ed21e1ee">FilterLog</a>
+<li>deletionPerformedByFilters
+: <a class="el" href="classConfigElem.html#c3a6aea2718324eba83d02f6e5828fa5">ConfigElem</a>
+<li>doc_url
+: <a class="el" href="classKshowmailDoc.html#4c93bab9aac95af03ca857ab3e09cf21">KshowmailDoc</a>
+<li>downloadActionsInvoked
+: <a class="el" href="classConfigElem.html#f96a3bda830dcfbe7aa579c3e64cfed4">ConfigElem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x65.html b/doc/html/functions_vars_0x65.html
new file mode 100644
index 0000000..8786e67
--- /dev/null
+++ b/doc/html/functions_vars_0x65.html
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li id="current"><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
+<li>editFrame
+: <a class="el" href="classSenderListDialog.html#7f8fa42344ee9f096043916a94a09f14">SenderListDialog</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x66.html b/doc/html/functions_vars_0x66.html
new file mode 100644
index 0000000..5fa8c93
--- /dev/null
+++ b/doc/html/functions_vars_0x66.html
@@ -0,0 +1,82 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li id="current"><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
+<li>filter
+: <a class="el" href="classFilterSetupDialog.html#8243a7ec9f99d807d55fdb42abeb33e9">FilterSetupDialog</a>
+<li>filterApplied
+: <a class="el" href="classConfigElem.html#1c5b6fd53a5dfbe13c8d9ef2f3b97608">ConfigElem</a>
+<li>FilterNumber
+: <a class="el" href="classFilterItemCriteria.html#78884aac2946432f15243db889239e61">FilterItemCriteria</a>
+<li>filterNumber
+: <a class="el" href="classFilterItem.html#2292114dc6b344e155e66caffb1312da">FilterItem</a>
+<li>filters
+: <a class="el" href="classHeaderFilter.html#035f10ee30771b4d49b32f79e2d5c972">HeaderFilter</a>
+<li>fLog
+: <a class="el" href="classKShowMailApp.html#b1458865e7903295c05c0ffc08fd72fa">KShowMailApp</a>
+<li>FLog
+: <a class="el" href="classConfigElem.html#e3f2a5c6b03dd756f474255247461b02">ConfigElem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x67.html b/doc/html/functions_vars_0x67.html
new file mode 100644
index 0000000..5a51a01
--- /dev/null
+++ b/doc/html/functions_vars_0x67.html
@@ -0,0 +1,90 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li id="current"><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
+<li>gboxAction
+: <a class="el" href="classConfigSpamcheck.html#c0bc8473323ec5c9edbaf8cee5cdabb0">ConfigSpamcheck</a>
+<li>gboxFilters
+: <a class="el" href="classConfigFilter.html#451fc7c1f8d5e9f47a5c9578ef90fdd8">ConfigFilter</a>
+<li>gboxOthers
+: <a class="el" href="classConfigFilter.html#d143d33466899d1e6bf47ac9f81e5095">ConfigFilter</a>
+<li>gboxSenderLists
+: <a class="el" href="classConfigFilter.html#6bd47c0c00e8345a568864fe9e6df0f1">ConfigFilter</a>
+<li>grpAction
+: <a class="el" href="classSenderListDialog.html#36f568e6c034e8e3ce8918a1b36f3c4d">SenderListDialog</a>
+<li>grpDelMailsRemove
+: <a class="el" href="classConfigLog.html#f4cc144f6621754512201ecf04f4b39c">ConfigLog</a>
+<li>grpLinkage
+: <a class="el" href="classFilterSetupDialog.html#76bada4b71bbb9938c4ff1727104d3fc">FilterSetupDialog</a>
+<li>grpMovMailsRemove
+: <a class="el" href="classConfigLog.html#0b5c4ed624ecf618bbe0d2d4f0b174fa">ConfigLog</a>
+<li>grpPasswordStorage
+: <a class="el" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#0a4bce4c9c385223363c5437f38830cf">AccountSetupDialog</a>
+<li>grpSecureTransfer
+: <a class="el" href="classServerDialog.html#05f46d98c337ab7a8afc2325aef9e8e7">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#ab4282dbb4ded7f3da8a451b60a14739">AccountSetupDialog</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x68.html b/doc/html/functions_vars_0x68.html
new file mode 100644
index 0000000..a9b7176
--- /dev/null
+++ b/doc/html/functions_vars_0x68.html
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li id="current"><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
+<li>headerFilter
+: <a class="el" href="classConfigElem.html#85b505610abbe0c01921a6e385a7548e">ConfigElem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x69.html b/doc/html/functions_vars_0x69.html
new file mode 100644
index 0000000..ac629fa
--- /dev/null
+++ b/doc/html/functions_vars_0x69.html
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li id="current"><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
+<li>image0
+: <a class="el" href="classAlertDlg.html#8309795df6391db4e19bf7d3c2c0a4b5">AlertDlg</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x6b.html b/doc/html/functions_vars_0x6b.html
new file mode 100644
index 0000000..6678cd8
--- /dev/null
+++ b/doc/html/functions_vars_0x6b.html
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li id="current"><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_k">- k -</a></h3><ul>
+<li>kRegExpEditorAvailable
+: <a class="el" href="classFilterCriteriaWidget.html#c995d48264457868fb297126f4b18b7c">FilterCriteriaWidget</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x6c.html b/doc/html/functions_vars_0x6c.html
new file mode 100644
index 0000000..4d45a74
--- /dev/null
+++ b/doc/html/functions_vars_0x6c.html
@@ -0,0 +1,98 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li id="current"><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
+<li>lastFilterNumber
+: <a class="el" href="classConfigFilter.html#f0a12d142f8edbe554c9ce48e0fcf781">ConfigFilter</a>
+<li>layCriteriasHolding
+: <a class="el" href="classFilterSetupDialog.html#789ab5bd9a7692be0553a49f048e0404">FilterSetupDialog</a>
+<li>linkage
+: <a class="el" href="classFilterItem.html#4ae978390328da87b9fdf5af6b355eb7">FilterItem</a>
+, <a class="el" href="classFilterSetupItem.html#2db8d7fafdb2a784b6e9d9bc62fba4bf">FilterSetupItem</a>
+<li>list
+: <a class="el" href="classSenderListDialog.html#b863a1f45be38d67f64cedb4c74ff631">SenderListDialog</a>
+<li>listDeletedMails
+: <a class="el" href="classFilterLog.html#fda049847515829b1e403cd2adee4e02">FilterLog</a>
+<li>listFilters
+: <a class="el" href="classConfigFilter.html#d8bce231c65f27afab3941f37d3ec2e0">ConfigFilter</a>
+<li>listMovedMails
+: <a class="el" href="classFilterLog.html#5179ab13c32aa6eb7857267869010d89">FilterLog</a>
+<li>ListView
+: <a class="el" href="classAccountSetupDialog.html#1a3d27c483d6ee5c96138ecc57c9cddb">AccountSetupDialog</a>
+, <a class="el" href="classFilterSetupDialog.html#9cb1a664a9000cc3a07078a770409667">FilterSetupDialog</a>
+<li>log
+: <a class="el" href="classFilterLogView.html#328b7d4165c9c35fb3ea97b8e08e64c1">FilterLogView</a>
+<li>logDeletedMails
+: <a class="el" href="classFilterLog.html#69bc71567187d7dc15fda6eb8f1d2979">FilterLog</a>
+<li>logMovedMails
+: <a class="el" href="classFilterLog.html#d9a377c3856846908684babf5cb6d9bd">FilterLog</a>
+<li>lstMailboxes
+: <a class="el" href="classMailBoxWizard.html#bfb553654f379dc06795db27d304edf1">MailBoxWizard</a>
+<li>lstViewDeleted
+: <a class="el" href="classFilterLogView.html#e2ceb7ac2a223f4931f1444bb9a3f84c">FilterLogView</a>
+<li>lstViewMoved
+: <a class="el" href="classFilterLogView.html#4a50b6b7330139aef249faf0694a641a">FilterLogView</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x6d.html b/doc/html/functions_vars_0x6d.html
new file mode 100644
index 0000000..06d49ce
--- /dev/null
+++ b/doc/html/functions_vars_0x6d.html
@@ -0,0 +1,204 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li id="current"><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
+<li>m_actionRefresh
+: <a class="el" href="classKShowMailApp.html#cdd1b63955d1dd5c9d78d551fc86ef74">KShowMailApp</a>
+<li>m_background
+: <a class="el" href="classKShowMailDock.html#3535a9e1ca33dce759bb066463879976">KShowMailDock</a>
+<li>m_bActive
+: <a class="el" href="classConfigElem.html#e8b4f30a42bc989ce81f71bc032f19f1">ConfigElem</a>
+<li>m_bAllowHTML
+: <a class="el" href="classConfigList.html#017597159dc4b62d147aade09140e942">ConfigList</a>
+<li>m_bBeep
+: <a class="el" href="classConfigList.html#a866f2fd4fb32d49ab99306150d79c50">ConfigList</a>
+<li>m_bCloseMinimizes
+: <a class="el" href="classConfigList.html#da6c14776958a3b28f68797c7feb6c5b">ConfigList</a>
+<li>m_bCommand
+: <a class="el" href="classConfigList.html#ae8d4084a4b83a09722015793afb974c">ConfigList</a>
+<li>m_bConfirmClose
+: <a class="el" href="classConfigList.html#80b1f5a036cdaf9054ba57831a0c013e">ConfigList</a>
+<li>m_bConfirmDelete
+: <a class="el" href="classConfigList.html#8b8d0d0a2d78c9f3ede1db0a9e77f8be">ConfigList</a>
+<li>m_bForceClose
+: <a class="el" href="classKShowMailApp.html#f211146f325bcca8c7c680ad46c9aab8">KShowMailApp</a>
+<li>m_bKeepNew
+: <a class="el" href="classConfigList.html#54c7671d25847b7b16cf71ec61c640d0">ConfigList</a>
+<li>m_bMinimize
+: <a class="el" href="classConfigList.html#f22fd0f8854795662a444bc2b4f8a9b9">ConfigList</a>
+<li>m_bMinimizeToTray
+: <a class="el" href="classConfigList.html#af4cc3801f229ae974131ef1e000a8cf">ConfigList</a>
+<li>m_body
+: <a class="el" href="classShowMailDialog.html#27641a1f95c62a8d43b353f29528cc1e">ShowMailDialog</a>
+<li>m_bShowConnectionErrors
+: <a class="el" href="classConfigList.html#1bd48d8596694d5b39e0ead274689010">ConfigList</a>
+<li>m_bShowMainWindow
+: <a class="el" href="classConfigList.html#b9613ab5f07edb0ef04383867674a5ce">ConfigList</a>
+<li>m_bShowMessage
+: <a class="el" href="classConfigList.html#35d80df8b80f34868140a2163d207490">ConfigList</a>
+<li>m_bSound
+: <a class="el" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">ConfigList</a>
+<li>m_bStartMinimized
+: <a class="el" href="classConfigList.html#fb4f1f200303a7e94114a8c4c85eb47e">ConfigList</a>
+<li>m_bTerminate
+: <a class="el" href="classConfigList.html#cdf78356d632253ac463907e526eb26a">ConfigList</a>
+<li>m_ButtonIgnore
+: <a class="el" href="classAlertDlg.html#eb7788e0ac9452d9875139eb5a5117c4">AlertDlg</a>
+<li>m_ButtonOk
+: <a class="el" href="classAlertDlg.html#6aed3204e4061bbcf2af10d196d1d33a">AlertDlg</a>
+<li>m_ConfigList
+: <a class="el" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">KShowMailApp</a>
+<li>m_content
+: <a class="el" href="classShowRecordElem.html#c70dec4d7ff63aa1acffcc7229776990">ShowRecordElem</a>
+<li>m_from
+: <a class="el" href="classShowRecordElem.html#260019ad5471ede61b2a1958b8c31375">ShowRecordElem</a>
+<li>m_header
+: <a class="el" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">ShowRecordElem</a>
+<li>m_new
+: <a class="el" href="classShowRecordElem.html#f9f2112f8e2b1c3dfef0286581a892b4">ShowRecordElem</a>
+<li>m_nInitTimer
+: <a class="el" href="classConfigList.html#872222b57b257e2ba67cf360dffc2a1b">ConfigList</a>
+<li>m_nIntervalTimer
+: <a class="el" href="classConfigList.html#b15e5bd9334e36428c5d44b9ee2a97d5">ConfigList</a>
+<li>m_nNumber
+: <a class="el" href="classShowRecordElem.html#8583bafac2418ddd8c7d881926851f05">ShowRecordElem</a>
+<li>m_nPop3Timer
+: <a class="el" href="classConfigList.html#f4a428e650cf89e8ae0df0a2983f96f4">ConfigList</a>
+<li>m_nSecondsToGo
+: <a class="el" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">KShowMailApp</a>
+<li>m_pAbout
+: <a class="el" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">KShowMailApp</a>
+<li>m_pAlertDialog
+: <a class="el" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">KShowMailApp</a>
+<li>m_pApp
+: <a class="el" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">UniqueApp</a>
+<li>m_pDoc
+: <a class="el" href="classKShowMailApp.html#326f322d7f82738efd2399f077fab6e2">KShowMailApp</a>
+<li>m_pDockWindow
+: <a class="el" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">KShowMailApp</a>
+<li>m_pFilter
+: <a class="el" href="classShowRecordElem.html#cf1207160bae1cd017c282b808e44e02">ShowRecordElem</a>
+<li>m_pItem
+: <a class="el" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">ShowRecordElem</a>
+<li>m_pixOk
+: <a class="el" href="classKshowmailView.html#ac2789d0c2b897f4a9589c21a8eae2eb">KshowmailView</a>
+<li>m_pListAccounts
+: <a class="el" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">KshowmailView</a>
+<li>m_pListMessages
+: <a class="el" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">KshowmailView</a>
+<li>m_pshowrecord
+: <a class="el" href="classConfigElem.html#9724726ea014cf6d22a413d266ca69d2">ConfigElem</a>
+<li>m_pTimer
+: <a class="el" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">KShowMailApp</a>
+<li>m_pView
+: <a class="el" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">KShowMailApp</a>
+<li>m_pViewItem
+: <a class="el" href="classConfigElem.html#bae0388a8b60c42be7977eec129f1a11">ConfigElem</a>
+<li>m_sender
+: <a class="el" href="classShowMailDialog.html#2cfed74c01ce7d28b18e1bd15eebe814">ShowMailDialog</a>
+<li>m_size
+: <a class="el" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">ShowRecordElem</a>
+<li>m_state
+: <a class="el" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">KShowMailApp</a>
+<li>m_strAccount
+: <a class="el" href="classConfigElem.html#52f6b77b64915aeadf30cf2e550da876">ConfigElem</a>
+<li>m_strCommandPath
+: <a class="el" href="classConfigList.html#ea53a55a83d06cb76e3e686dd29ca034">ConfigList</a>
+<li>m_strSoundFile
+: <a class="el" href="classConfigList.html#be34e6084394fa6fa99422a7cc50d8f0">ConfigList</a>
+<li>m_subject
+: <a class="el" href="classShowMailDialog.html#73df230afe94aa1118ef69044d619822">ShowMailDialog</a>
+, <a class="el" href="classShowRecordElem.html#1c83a6d029a73795076161efd3842893">ShowRecordElem</a>
+<li>m_time
+: <a class="el" href="classShowListViewItem.html#9d582aea8cd197406cd8ba103e3df25b">ShowListViewItem</a>
+<li>m_to
+: <a class="el" href="classShowRecordElem.html#02de09b7b36dfcce893a1e79ff8ba34c">ShowRecordElem</a>
+<li>m_uid
+: <a class="el" href="classShowRecordElem.html#7da2621d1de438c9118fbcead3c23506">ShowRecordElem</a>
+<li>m_unixDate
+: <a class="el" href="classShowRecordElem.html#b3f665656a06d88cea46345bcb1a51a9">ShowRecordElem</a>
+<li>m_url
+: <a class="el" href="classConfigElem.html#c9d1c50d2a2ac6c4fa9261f0d77729a9">ConfigElem</a>
+<li>mailbody
+: <a class="el" href="classConfigElem.html#ac5a5ecf9c70a0c94c2cf7181a1989dd">ConfigElem</a>
+<li>mailbox
+: <a class="el" href="structTypes_1_1DownloadActionParams__Type.html#2111052968efa3f277babdd0de6a5ed1">Types::DownloadActionParams_Type</a>
+, <a class="el" href="classFilterSetupItem.html#bcea8cc88e4c5f51a732c61b46308172">FilterSetupItem</a>
+, <a class="el" href="classFilterItem.html#ea3dbfdeae33818b9dde1486995bbb13">FilterItem</a>
+, <a class="el" href="classHeaderFilter.html#43b2162ede8f87c53486afc52d02eefd">HeaderFilter</a>
+, <a class="el" href="classFilterLogEntry.html#d149fca2f4561be04dae1b8eabfdae58">FilterLogEntry</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#0973106a9c7c6cfe23640cbc8379bb8a">FilterLogViewMovedItem</a>
+<li>MailsToDelete
+: <a class="el" href="classConfigElem.html#08ca23bb32c12dff0909a8d29d5d5028">ConfigElem</a>
+<li>MailsToDownload
+: <a class="el" href="classConfigElem.html#dc3d4a8f849b476ff72d2c485a3ffa36">ConfigElem</a>
+<li>MailsToShow
+: <a class="el" href="classConfigElem.html#c2e27da3fda21662ca8706043e257151">ConfigElem</a>
+<li>markAtViewRefresh
+: <a class="el" href="classShowRecordElem.html#c3f6d14162aafdedf141489ad5d5307a">ShowRecordElem</a>
+<li>moveCounter
+: <a class="el" href="classConfigElem.html#30203c10e9c6b563ee9c454269cad8d1">ConfigElem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x6f.html b/doc/html/functions_vars_0x6f.html
new file mode 100644
index 0000000..9bcd48c
--- /dev/null
+++ b/doc/html/functions_vars_0x6f.html
@@ -0,0 +1,67 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li id="current"><a href="functions_vars_0x6f.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_o">- o -</a></h3><ul>
+<li>OptionDlgLayout
+: <a class="el" href="classOptionDlg.html#f2a78d5c1e7ebdd2074d1cfc2f553cb1">OptionDlg</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x70.html b/doc/html/functions_vars_0x70.html
new file mode 100644
index 0000000..94558da
--- /dev/null
+++ b/doc/html/functions_vars_0x70.html
@@ -0,0 +1,80 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li id="current"><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
+<li>PasswordStorage
+: <a class="el" href="classConfigElem.html#1ad409223125a43d257cd7666c8c7284">ConfigElem</a>
+<li>path
+: <a class="el" href="classMailBoxWizardListItem.html#a26f72fd0871583009db91618b6644aa">MailBoxWizardListItem</a>
+<li>PixmapLabel2
+: <a class="el" href="classAlertDlg.html#68460203169eb997f60e1d487309399a">AlertDlg</a>
+<li>pop3Job
+: <a class="el" href="classConfigElem.html#abccdbb4bf0f8c3ba6ac726c27f454fc">ConfigElem</a>
+<li>pop3Timer
+: <a class="el" href="classConfigElem.html#141eb0510e9f4031634ef566cba27329">ConfigElem</a>
+<li>pView
+: <a class="el" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">KshowmailDoc</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x71.html b/doc/html/functions_vars_0x71.html
new file mode 100644
index 0000000..2fb3b16
--- /dev/null
+++ b/doc/html/functions_vars_0x71.html
@@ -0,0 +1,72 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li id="current"><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_q">- q -</a></h3><ul>
+<li>QLabel_1
+: <a class="el" href="classAlertDlg.html#6c55122d5c924676559a12d39863488e">AlertDlg</a>
+<li>QLabel_2
+: <a class="el" href="classAlertDlg.html#2993a64823b3edf7874709d2108ce3d7">AlertDlg</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x73.html b/doc/html/functions_vars_0x73.html
new file mode 100644
index 0000000..17aa13a
--- /dev/null
+++ b/doc/html/functions_vars_0x73.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li id="current"><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
+<li>secureLoginType
+: <a class="el" href="classConfigElem.html#b8a7341e3db3e69b8e661c89ff08b7f4">ConfigElem</a>
+<li>sender
+: <a class="el" href="classFilterLogViewDeletedItem.html#0634c60ef66f1dc5cc14d4dc0eb123c5">FilterLogViewDeletedItem</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#ce21d392f96a36edd4e4f0cee4bb60cc">FilterLogViewMovedItem</a>
+, <a class="el" href="classFilterLogEntry.html#beb4991508455d61c59cbb6ef6766b32">FilterLogEntry</a>
+<li>senderlist
+: <a class="el" href="classHeaderFilter.html#410392e92bb274e5df51ee74a2d7467d">HeaderFilter</a>
+<li>sentDateTime
+: <a class="el" href="classFilterLogEntry.html#6602eedabf45a7dfaaec8b547ff88942">FilterLogEntry</a>
+<li>SetupDialog
+: <a class="el" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">KShowMailApp</a>
+<li>source
+: <a class="el" href="classFilterItemCriteria.html#84551b9f69ec91321d5e121b74ecb1d5">FilterItemCriteria</a>
+, <a class="el" href="structTypes_1_1FilterCriteria__Type.html#9866add14b0f3c62082e62e3b0992e9b">Types::FilterCriteria_Type</a>
+<li>spamAction
+: <a class="el" href="classConfigList.html#9b32c6d646ae58275351208894d7f545">ConfigList</a>
+<li>spamMailbox
+: <a class="el" href="classConfigList.html#44cf59851c3af0b6f0a1cbdb15688491">ConfigList</a>
+<li>spbCompValueNum
+: <a class="el" href="classFilterCriteriaWidget.html#3f6c902e9c9d95e7bfd5844b7d989da2">FilterCriteriaWidget</a>
+<li>spbDelDays
+: <a class="el" href="classConfigLog.html#822c19a03e5f27b2dd7e3fde36931a3e">ConfigLog</a>
+<li>spbInitial
+: <a class="el" href="classConfigGeneral.html#2d41d710a15c3c1a5a06300c7aa4db85">ConfigGeneral</a>
+<li>spbInterval
+: <a class="el" href="classConfigGeneral.html#c06ea08b185b53fb9e0444c6291b505f">ConfigGeneral</a>
+<li>spbMovDays
+: <a class="el" href="classConfigLog.html#665686b7be964c5769b83075a2eb614c">ConfigLog</a>
+<li>spbPort
+: <a class="el" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#830975a1e546e17563aa93f8ef2519eb">AccountSetupDialog</a>
+<li>spbTimeout
+: <a class="el" href="classConfigGeneral.html#ae2990489c767b1f0083c7a8969272d6">ConfigGeneral</a>
+<li>state
+: <a class="el" href="classConfigElem.html#47a700c6d8d856f35bdcd4e01910a4ca">ConfigElem</a>
+<li>subject
+: <a class="el" href="classFilterLogEntry.html#be167b5503f62f90b0dc560a1e5b1558">FilterLogEntry</a>
+, <a class="el" href="classFilterLogViewMovedItem.html#8d67b3621f4966cfad7983f6ac0989ea">FilterLogViewMovedItem</a>
+, <a class="el" href="classFilterLogViewDeletedItem.html#c282551b645b3a29ec7822e5ce7eaa1d">FilterLogViewDeletedItem</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/functions_vars_0x74.html b/doc/html/functions_vars_0x74.html
new file mode 100644
index 0000000..cbf711a
--- /dev/null
+++ b/doc/html/functions_vars_0x74.html
@@ -0,0 +1,105 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members - Variables</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li id="current"><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li id="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&nbsp;Functions</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="functions_vars.html#index__"><span>_</span></a></li>
+ <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_0x68.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_0x71.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
+ <li id="current"><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_0x75.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
+ </ul>
+</div>
+
+<p>
+&nbsp;
+<p>
+<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
+<li>tempMailList
+: <a class="el" href="classConfigElem.html#a586a6941a1c9c21019ca42cebb4e6d3">ConfigElem</a>
+<li>title1
+: <a class="el" href="classMailBoxWizard.html#6fa119c02cc1b8bf18ab30efde160c64">MailBoxWizard</a>
+<li>title2
+: <a class="el" href="classMailBoxWizard.html#59340a103fd3699f1d7d49766f697794">MailBoxWizard</a>
+<li>txtAccount
+: <a class="el" href="classAccountSetupDialog.html#498961d7111d25751b3ec2cc82d7d3f9">AccountSetupDialog</a>
+, <a class="el" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">ServerDialog</a>
+<li>txtCompValueText
+: <a class="el" href="classFilterCriteriaWidget.html#671a9c2738e3354a780cd4620170ef8f">FilterCriteriaWidget</a>
+<li>txtCondition
+: <a class="el" href="classFilterItemCriteria.html#80db831c80f48e867ea0de4514155c30">FilterItemCriteria</a>
+<li>txtMailbox
+: <a class="el" href="classConfigFilter.html#045b3617514d7c505a5641eec11ce7ca">ConfigFilter</a>
+, <a class="el" href="classConfigSpamcheck.html#0fe2f958fd8956b9c843ea3c75230b82">ConfigSpamcheck</a>
+, <a class="el" href="classFilterSetupDialog.html#7df1f80c7ebe025e5b6cd259e7a979a6">FilterSetupDialog</a>
+<li>txtMailDir
+: <a class="el" href="classMailBoxWizard.html#b4c5ecd7b7de8dbdadea18ae2857f3d7">MailBoxWizard</a>
+<li>txtName
+: <a class="el" href="classFilterSetupDialog.html#b459c7092f81c673b8c9be73160e7c0c">FilterSetupDialog</a>
+<li>txtNewMailsCommand
+: <a class="el" href="classConfigActions.html#a030c72396809e3532bb6d3db7aebb5b">ConfigActions</a>
+<li>txtNewMailsSound
+: <a class="el" href="classConfigActions.html#939646611bf2c9daa03a3b30f789803f">ConfigActions</a>
+<li>txtPassword
+: <a class="el" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#9edb40f241d46c198e5cd2c5b1208191">AccountSetupDialog</a>
+<li>txtServer
+: <a class="el" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#e95956f6bffaf59934194cf7d9e332f9">AccountSetupDialog</a>
+<li>txtUser
+: <a class="el" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">ServerDialog</a>
+, <a class="el" href="classAccountSetupDialog.html#b27b8d090b54974dcc7816dd93b9c46c">AccountSetupDialog</a>
+<li>txtValue
+: <a class="el" href="structTypes_1_1FilterCriteria__Type.html#30e8afe468fdbcc1483ddfec89602c92">Types::FilterCriteria_Type</a>
+, <a class="el" href="classFilterItemCriteria.html#48530ea0b4d0b3bf4999086ead3d35be">FilterItemCriteria</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/hierarchy.html b/doc/html/hierarchy.html
new file mode 100644
index 0000000..43c60a5
--- /dev/null
+++ b/doc/html/hierarchy.html
@@ -0,0 +1,72 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Hierarchical Index</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li id="current"><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li id="current"><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>kshowmail.kdevelop Class Hierarchy</h1>This inheritance list is sorted roughly, but not completely, alphabetically:<ul>
+<li><a class="el" href="classAccountSetupDialog.html">AccountSetupDialog</a>
+<li><a class="el" href="classAccountSetupItem.html">AccountSetupItem</a>
+<li><a class="el" href="classAlertDlg.html">AlertDlg</a>
+<ul>
+<li><a class="el" href="classAlertDialog.html">AlertDialog</a>
+</ul>
+<li><a class="el" href="classConfigAccounts.html">ConfigAccounts</a>
+<li><a class="el" href="classConfigActions.html">ConfigActions</a>
+<li><a class="el" href="classConfigDisplay.html">ConfigDisplay</a>
+<li><a class="el" href="classConfigElem.html">ConfigElem</a>
+<li><a class="el" href="classConfigFilter.html">ConfigFilter</a>
+<li><a class="el" href="classConfigGeneral.html">ConfigGeneral</a>
+<li><a class="el" href="classConfigList.html">ConfigList</a>
+<li><a class="el" href="classConfigLog.html">ConfigLog</a>
+<li><a class="el" href="classConfigSpamcheck.html">ConfigSpamcheck</a>
+<li><a class="el" href="classFilterCriteriaWidget.html">FilterCriteriaWidget</a>
+<li><a class="el" href="classFilterItem.html">FilterItem</a>
+<li><a class="el" href="classFilterItemCriteria.html">FilterItemCriteria</a>
+<li><a class="el" href="classFilterLog.html">FilterLog</a>
+<li><a class="el" href="classFilterLogEntry.html">FilterLogEntry</a>
+<li><a class="el" href="classFilterLogView.html">FilterLogView</a>
+<li><a class="el" href="classFilterLogViewDeletedItem.html">FilterLogViewDeletedItem</a>
+<li><a class="el" href="classFilterLogViewMovedItem.html">FilterLogViewMovedItem</a>
+<li><a class="el" href="classFilterSetupDialog.html">FilterSetupDialog</a>
+<li><a class="el" href="classFilterSetupItem.html">FilterSetupItem</a>
+<li><a class="el" href="classHeaderFilter.html">HeaderFilter</a>
+<li><a class="el" href="classKShowMailApp.html">KShowMailApp</a>
+<li><a class="el" href="classKshowmailDoc.html">KshowmailDoc</a>
+<li><a class="el" href="classKShowMailDock.html">KShowMailDock</a>
+<li><a class="el" href="classKshowmailView.html">KshowmailView</a>
+<li><a class="el" href="classMailBoxWizard.html">MailBoxWizard</a>
+<li><a class="el" href="classMailBoxWizardListItem.html">MailBoxWizardListItem</a>
+<li><a class="el" href="classSenderListDialog.html">SenderListDialog</a>
+<li><a class="el" href="classSenderListFilter.html">SenderListFilter</a>
+<li><a class="el" href="classServerDialog.html">ServerDialog</a>
+<li><a class="el" href="classShowHeaderDialog.html">ShowHeaderDialog</a>
+<li><a class="el" href="classShowListViewItem.html">ShowListViewItem</a>
+<li><a class="el" href="classShowMailDialog.html">ShowMailDialog</a>
+<li><a class="el" href="classShowRecord.html">ShowRecord</a>
+<li><a class="el" href="classShowRecordElem.html">ShowRecordElem</a>
+<li><a class="el" href="structTypes_1_1DownloadActionParams__Type.html">Types::DownloadActionParams_Type</a>
+<li><a class="el" href="structTypes_1_1FilterCriteria__Type.html">Types::FilterCriteria_Type</a>
+<li><a class="el" href="classUniqueApp.html">UniqueApp</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/index.html b/doc/html/index.html
new file mode 100644
index 0000000..09d5e23
--- /dev/null
+++ b/doc/html/index.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Main Page</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<h1>kshowmail.kdevelop Documentation</h1>
+<p>
+<h3 align="center">3.3 </h3><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kfeedback_8cpp-source.html b/doc/html/kfeedback_8cpp-source.html
new file mode 100644
index 0000000..32b9007
--- /dev/null
+++ b/doc/html/kfeedback_8cpp-source.html
@@ -0,0 +1,515 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/kfeedback.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kfeedback.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001
+<a name="l00002"></a>00002 <span class="comment">/*</span>
+<a name="l00003"></a>00003 <span class="comment"> * File name: kfeedback.cpp</span>
+<a name="l00004"></a>00004 <span class="comment"> * Summary: User feedback form</span>
+<a name="l00005"></a>00005 <span class="comment"> * License: LGPL - See file COPYING.LIB for details.</span>
+<a name="l00006"></a>00006 <span class="comment"> * Author: Stefan Hundhammer &lt;sh@suse.de&gt;</span>
+<a name="l00007"></a>00007 <span class="comment"> * modified by Eggert Ehmke &lt;eggert.ehmke@berlin.de&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> *</span>
+<a name="l00009"></a>00009 <span class="comment"> * Updated: 2002-02-24</span>
+<a name="l00010"></a>00010 <span class="comment"> *</span>
+<a name="l00011"></a>00011 <span class="comment"> * $Id: kfeedback_8cpp-source.html,v 1.10 2007/07/05 17:37:51 kuddel-fl Exp $</span>
+<a name="l00012"></a>00012 <span class="comment"> *</span>
+<a name="l00013"></a>00013 <span class="comment"> */</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015
+<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;qheader.h&gt;</span>
+<a name="l00017"></a>00017 <span class="preprocessor">#include &lt;qlayout.h&gt;</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qlabel.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qmultilineedit.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qhbox.h&gt;</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;kglobal.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;kapplication.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;kaboutdata.h&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;kiconloader.h&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;kurl.h&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;kdeversion.h&gt;</span>
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031 <span class="preprocessor">#include "kfeedback.h"</span>
+<a name="l00032"></a>00032
+<a name="l00033"></a>00033
+<a name="l00034"></a><a class="code" href="classKFeedbackDialog.html#1ae22ffc4cfbabb1b954f2f75c57f8ba">00034</a> <a class="code" href="classKFeedbackDialog.html#1ae22ffc4cfbabb1b954f2f75c57f8ba">KFeedbackDialog::KFeedbackDialog</a>( <span class="keyword">const</span> QString &amp; feedbackMailAddress, <span class="keyword">const</span> QString &amp; helpTopic )
+<a name="l00035"></a>00035 : KDialogBase( Plain, i18n( <span class="stringliteral">"Feedback"</span> ), Apply | ( helpTopic.isEmpty() ? Cancel : Cancel | Help ), Apply )
+<a name="l00036"></a>00036 {
+<a name="l00037"></a>00037 QVBoxLayout * layout = <span class="keyword">new</span> QVBoxLayout( plainPage(), 0, spacingHint() );
+<a name="l00038"></a>00038 <span class="comment">// setButtonApplyText( i18n( "&amp;Mail this..." ) ); deprecated</span>
+<a name="l00039"></a>00039 setButtonApply(KGuiItem (i18n( <span class="stringliteral">"&amp;Mail this..."</span> )));
+<a name="l00040"></a>00040
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( ! helpTopic.isEmpty() )
+<a name="l00042"></a>00042 setHelp( helpTopic );
+<a name="l00043"></a>00043
+<a name="l00044"></a>00044 <a class="code" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">_form</a> = <span class="keyword">new</span> <a class="code" href="classKFeedbackForm.html">KFeedbackForm</a>( feedbackMailAddress, plainPage() );
+<a name="l00045"></a>00045 CHECK_PTR( <a class="code" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">_form</a> );
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 layout-&gt;addWidget( <a class="code" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">_form</a> );
+<a name="l00048"></a>00048 <a class="code" href="classKFeedbackDialog.html#34f680000dbe1b4446bd647d51c3738d">checkSendButton</a>();
+<a name="l00049"></a>00049
+<a name="l00050"></a>00050 connect( <span class="keyword">this</span>, SIGNAL( applyClicked() ),
+<a name="l00051"></a>00051 <a class="code" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">_form</a>, SLOT ( sendMail() ) );
+<a name="l00052"></a>00052
+<a name="l00053"></a>00053 connect( <a class="code" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">_form</a>, SIGNAL( <a class="code" href="classKFeedbackDialog.html#962b0e6f0813c923c924bb9b81c8ba1b">mailSent</a>() ),
+<a name="l00054"></a>00054 <span class="keyword">this</span>, SLOT ( hide() ) );
+<a name="l00055"></a>00055
+<a name="l00056"></a>00056 connect( <a class="code" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">_form</a>, SIGNAL( <a class="code" href="classKFeedbackDialog.html#962b0e6f0813c923c924bb9b81c8ba1b">mailSent</a>() ),
+<a name="l00057"></a>00057 <span class="keyword">this</span>, SIGNAL( <a class="code" href="classKFeedbackDialog.html#962b0e6f0813c923c924bb9b81c8ba1b">mailSent</a>() ) );
+<a name="l00058"></a>00058
+<a name="l00059"></a>00059 connect( <a class="code" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">_form</a>, SIGNAL( checkComplete() ),
+<a name="l00060"></a>00060 <span class="keyword">this</span>, SLOT ( <a class="code" href="classKFeedbackDialog.html#34f680000dbe1b4446bd647d51c3738d">checkSendButton</a>() ) );
+<a name="l00061"></a>00061 }
+<a name="l00062"></a>00062
+<a name="l00063"></a>00063
+<a name="l00064"></a><a class="code" href="classKFeedbackDialog.html#3db3a02eb0b2a94d8e3bedbd1f5f6d70">00064</a> <a class="code" href="classKFeedbackDialog.html#3db3a02eb0b2a94d8e3bedbd1f5f6d70">KFeedbackDialog::~KFeedbackDialog</a>()
+<a name="l00065"></a>00065 {
+<a name="l00066"></a>00066 <span class="comment">// NOP</span>
+<a name="l00067"></a>00067 }
+<a name="l00068"></a>00068
+<a name="l00069"></a>00069
+<a name="l00070"></a>00070 <span class="keywordtype">void</span>
+<a name="l00071"></a><a class="code" href="classKFeedbackDialog.html#34f680000dbe1b4446bd647d51c3738d">00071</a> <a class="code" href="classKFeedbackDialog.html#34f680000dbe1b4446bd647d51c3738d">KFeedbackDialog::checkSendButton</a>()
+<a name="l00072"></a>00072 {
+<a name="l00073"></a>00073 enableButtonApply( <a class="code" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">_form</a>-&gt;<a class="code" href="classKFeedbackForm.html#6840e07fe3245d4e9c11ee0160af6068">readyToSend</a>() );
+<a name="l00074"></a>00074 }
+<a name="l00075"></a>00075
+<a name="l00076"></a>00076
+<a name="l00077"></a>00077
+<a name="l00078"></a>00078
+<a name="l00079"></a>00079
+<a name="l00080"></a><a class="code" href="classKFeedbackForm.html#78d888d1554e9403a62d7c9b0c6e4a2e">00080</a> <a class="code" href="classKFeedbackForm.html#78d888d1554e9403a62d7c9b0c6e4a2e">KFeedbackForm::KFeedbackForm</a>( <span class="keyword">const</span> QString &amp; feedbackMailAddress,
+<a name="l00081"></a>00081 QWidget * parent )
+<a name="l00082"></a>00082 : QVBox( parent )
+<a name="l00083"></a>00083 , _feedbackMailAddress( feedbackMailAddress )
+<a name="l00084"></a>00084 {
+<a name="l00085"></a>00085 <span class="comment">//</span>
+<a name="l00086"></a>00086 <span class="comment">// Explanation above the question list</span>
+<a name="l00087"></a>00087 <span class="comment">//</span>
+<a name="l00088"></a>00088
+<a name="l00089"></a>00089 QLabel * label = <span class="keyword">new</span> QLabel( i18n( <span class="stringliteral">"&lt;p&gt;&lt;b&gt;Please tell us your opinion about this program.&lt;/b&gt;&lt;/p&gt;"</span>
+<a name="l00090"></a>00090 <span class="stringliteral">"&lt;p&gt;You will be able to review everything in your mailer "</span>
+<a name="l00091"></a>00091 <span class="stringliteral">"before any mail is sent.&lt;br&gt;"</span>
+<a name="l00092"></a>00092 <span class="stringliteral">"Nothing will be sent behind your back.&lt;/p&gt;"</span>
+<a name="l00093"></a>00093 ), <span class="keyword">this</span> );
+<a name="l00094"></a>00094 <span class="comment">//</span>
+<a name="l00095"></a>00095 <span class="comment">// Question list</span>
+<a name="l00096"></a>00096 <span class="comment">//</span>
+<a name="l00097"></a>00097
+<a name="l00098"></a>00098 <a class="code" href="classKFeedbackForm.html#e8c28be58b2684f090c396ad52f64ad3">_questionList</a> = <span class="keyword">new</span> <a class="code" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a>( <span class="keyword">this</span> );
+<a name="l00099"></a>00099 CHECK_PTR( <a class="code" href="classKFeedbackForm.html#e8c28be58b2684f090c396ad52f64ad3">_questionList</a> );
+<a name="l00100"></a>00100
+<a name="l00101"></a>00101 connect( <a class="code" href="classKFeedbackForm.html#e8c28be58b2684f090c396ad52f64ad3">_questionList</a>, SIGNAL( <a class="code" href="classKFeedbackForm.html#c328809367354cf8ff97e7c78b521345">checkComplete</a>() ),
+<a name="l00102"></a>00102 <span class="keyword">this</span>, SLOT ( <a class="code" href="classKFeedbackForm.html#5ec1c36c978229b6e14e9005b595d69e">slotCheckComplete</a>() ) );
+<a name="l00103"></a>00103
+<a name="l00104"></a>00104
+<a name="l00105"></a>00105 <span class="comment">//</span>
+<a name="l00106"></a>00106 <span class="comment">// Explanation below the question list</span>
+<a name="l00107"></a>00107 <span class="comment">//</span>
+<a name="l00108"></a>00108
+<a name="l00109"></a>00109 QHBox * hbox = <span class="keyword">new</span> QHBox( <span class="keyword">this</span> );
+<a name="l00110"></a>00110 CHECK_PTR( hbox );
+<a name="l00111"></a>00111
+<a name="l00112"></a>00112 QSizePolicy pol( QSizePolicy::Fixed, QSizePolicy::Fixed ); <span class="comment">// hor / vert</span>
+<a name="l00113"></a>00113
+<a name="l00114"></a>00114 label = <span class="keyword">new</span> QLabel( i18n( <span class="stringliteral">"Questions marked with "</span> ), hbox );
+<a name="l00115"></a>00115 CHECK_PTR( label );
+<a name="l00116"></a>00116 label-&gt;setSizePolicy( pol );
+<a name="l00117"></a>00117
+<a name="l00118"></a>00118 label = <span class="keyword">new</span> QLabel( hbox );
+<a name="l00119"></a>00119 CHECK_PTR( label );
+<a name="l00120"></a>00120 label-&gt;setPixmap( KGlobal::iconLoader()-&gt;loadIcon( <span class="stringliteral">"edit"</span>, KIcon::Small ) );
+<a name="l00121"></a>00121 label-&gt;setSizePolicy( pol );
+<a name="l00122"></a>00122
+<a name="l00123"></a>00123 label = <span class="keyword">new</span> QLabel( i18n( <span class="stringliteral">" must be answered before a mail can be sent."</span>) , hbox );
+<a name="l00124"></a>00124 CHECK_PTR( label );
+<a name="l00125"></a>00125 label-&gt;setSizePolicy( pol );
+<a name="l00126"></a>00126
+<a name="l00127"></a>00127 <span class="keyword">new</span> QWidget( hbox ); <span class="comment">// Fill any leftover space to the right.</span>
+<a name="l00128"></a>00128
+<a name="l00129"></a>00129
+<a name="l00130"></a>00130 <span class="comment">//</span>
+<a name="l00131"></a>00131 <span class="comment">// Free-text comment field</span>
+<a name="l00132"></a>00132 <span class="comment">//</span>
+<a name="l00133"></a>00133
+<a name="l00134"></a>00134 label = <span class="keyword">new</span> QLabel( <span class="stringliteral">"\n"</span> + i18n( <span class="stringliteral">"&amp;Additional comments:"</span> ), <span class="keyword">this</span> ); CHECK_PTR( label );
+<a name="l00135"></a>00135 <a class="code" href="classKFeedbackForm.html#862ae3fd81afe2f61f19d41d927c537b">_comment</a> = <span class="keyword">new</span> QMultiLineEdit( <span class="keyword">this</span> ); CHECK_PTR( <a class="code" href="classKFeedbackForm.html#862ae3fd81afe2f61f19d41d927c537b">_comment</a> );
+<a name="l00136"></a>00136
+<a name="l00137"></a>00137 label-&gt;setBuddy( <a class="code" href="classKFeedbackForm.html#862ae3fd81afe2f61f19d41d927c537b">_comment</a> );
+<a name="l00138"></a>00138 <span class="preprocessor">#if (QT_VERSION &lt; 300)</span>
+<a name="l00139"></a>00139 <span class="preprocessor"></span> <a class="code" href="classKFeedbackForm.html#862ae3fd81afe2f61f19d41d927c537b">_comment</a>-&gt;setFixedVisibleLines( 5 );
+<a name="l00140"></a>00140 <span class="preprocessor">#endif</span>
+<a name="l00141"></a>00141 <span class="preprocessor"></span> <a class="code" href="classKFeedbackForm.html#862ae3fd81afe2f61f19d41d927c537b">_comment</a>-&gt;setWordWrap( QMultiLineEdit::FixedColumnWidth );
+<a name="l00142"></a>00142 <a class="code" href="classKFeedbackForm.html#862ae3fd81afe2f61f19d41d927c537b">_comment</a>-&gt;setWrapColumnOrWidth( 70 );
+<a name="l00143"></a>00143 }
+<a name="l00144"></a>00144
+<a name="l00145"></a>00145
+<a name="l00146"></a><a class="code" href="classKFeedbackForm.html#b22414a85a37ca217e028bde8a663ac4">00146</a> <a class="code" href="classKFeedbackForm.html#b22414a85a37ca217e028bde8a663ac4">KFeedbackForm::~KFeedbackForm</a>()
+<a name="l00147"></a>00147 {
+<a name="l00148"></a>00148 <span class="comment">// NOP</span>
+<a name="l00149"></a>00149 }
+<a name="l00150"></a>00150
+<a name="l00151"></a>00151
+<a name="l00152"></a>00152 <span class="keywordtype">void</span>
+<a name="l00153"></a><a class="code" href="classKFeedbackForm.html#72b8b30801614c35e271c5e519f10c8b">00153</a> <a class="code" href="classKFeedbackForm.html#72b8b30801614c35e271c5e519f10c8b">KFeedbackForm::sendMail</a>()
+<a name="l00154"></a>00154 {
+<a name="l00155"></a>00155 <span class="comment">//</span>
+<a name="l00156"></a>00156 <span class="comment">// Build mail subject</span>
+<a name="l00157"></a>00157 <span class="comment">//</span>
+<a name="l00158"></a>00158
+<a name="l00159"></a>00159 QString subject;
+<a name="l00160"></a>00160
+<a name="l00161"></a>00161 <span class="keyword">const</span> KAboutData * aboutData = KGlobal::instance()-&gt;aboutData();
+<a name="l00162"></a>00162
+<a name="l00163"></a>00163 <span class="keywordflow">if</span> ( aboutData )
+<a name="l00164"></a>00164 subject = aboutData-&gt;programName() + <span class="stringliteral">"-"</span> + aboutData-&gt;version();
+<a name="l00165"></a>00165 <span class="keywordflow">else</span>
+<a name="l00166"></a>00166 subject = kapp-&gt;name();
+<a name="l00167"></a>00167
+<a name="l00168"></a>00168 subject += <span class="stringliteral">" user feedback"</span>;
+<a name="l00169"></a>00169
+<a name="l00170"></a>00170
+<a name="l00171"></a>00171 <span class="comment">//</span>
+<a name="l00172"></a>00172 <span class="comment">// Build mail body</span>
+<a name="l00173"></a>00173 <span class="comment">//</span>
+<a name="l00174"></a>00174
+<a name="l00175"></a>00175 QString body = subject + <span class="stringliteral">"\n\n"</span>
+<a name="l00176"></a>00176 + <a class="code" href="classKFeedbackForm.html#08ace5fb7dd689ced012aa722b690b71">formatComment</a>()
+<a name="l00177"></a>00177 + <a class="code" href="classKFeedbackForm.html#e8c28be58b2684f090c396ad52f64ad3">_questionList</a>-&gt;<a class="code" href="classKFeedbackQuestionList.html#f31a9d0c7b6f06cfca9f76ccba5743f0">result</a>();
+<a name="l00178"></a>00178
+<a name="l00179"></a>00179
+<a name="l00180"></a>00180 <span class="comment">//</span>
+<a name="l00181"></a>00181 <span class="comment">// Build "mailto:" URL from all this</span>
+<a name="l00182"></a>00182 <span class="comment">//</span>
+<a name="l00183"></a>00183
+<a name="l00184"></a>00184 KURL mail;
+<a name="l00185"></a>00185 mail.setProtocol( <span class="stringliteral">"mailto"</span> );
+<a name="l00186"></a>00186 mail.setPath( <a class="code" href="classKFeedbackForm.html#4e667e814dc1de15bf601217c08f077f">_feedbackMailAddress</a> );
+<a name="l00187"></a>00187 mail.setQuery( <span class="stringliteral">"?subject="</span> + KURL::encode_string( subject ) +
+<a name="l00188"></a>00188 <span class="stringliteral">"&amp;body="</span> + KURL::encode_string( body ) );
+<a name="l00189"></a>00189
+<a name="l00190"></a>00190 <span class="comment">// TODO: Check for maximum command line length.</span>
+<a name="l00191"></a>00191 <span class="comment">//</span>
+<a name="l00192"></a>00192 <span class="comment">// The hard part with this is how to get this from all that 'autoconf'</span>
+<a name="l00193"></a>00193 <span class="comment">// stuff into 'config.h' or some other include file without hardcoding</span>
+<a name="l00194"></a>00194 <span class="comment">// anything - this is too system dependent.</span>
+<a name="l00195"></a>00195
+<a name="l00196"></a>00196
+<a name="l00197"></a>00197 <span class="comment">//</span>
+<a name="l00198"></a>00198 <span class="comment">// Actually send mail</span>
+<a name="l00199"></a>00199 <span class="comment">//</span>
+<a name="l00200"></a>00200
+<a name="l00201"></a>00201 kapp-&gt;invokeMailer( mail );
+<a name="l00202"></a>00202
+<a name="l00203"></a>00203 emit <a class="code" href="classKFeedbackForm.html#ec2b411546d45e31c9b412f1fa6d8897">mailSent</a>();
+<a name="l00204"></a>00204 }
+<a name="l00205"></a>00205
+<a name="l00206"></a>00206
+<a name="l00207"></a>00207 <span class="keywordtype">void</span>
+<a name="l00208"></a><a class="code" href="classKFeedbackForm.html#5ec1c36c978229b6e14e9005b595d69e">00208</a> <a class="code" href="classKFeedbackForm.html#5ec1c36c978229b6e14e9005b595d69e">KFeedbackForm::slotCheckComplete</a>()
+<a name="l00209"></a>00209 {
+<a name="l00210"></a>00210 emit <a class="code" href="classKFeedbackForm.html#c328809367354cf8ff97e7c78b521345">checkComplete</a>();
+<a name="l00211"></a>00211 }
+<a name="l00212"></a>00212
+<a name="l00213"></a>00213
+<a name="l00214"></a>00214 QString
+<a name="l00215"></a><a class="code" href="classKFeedbackForm.html#08ace5fb7dd689ced012aa722b690b71">00215</a> <a class="code" href="classKFeedbackForm.html#08ace5fb7dd689ced012aa722b690b71">KFeedbackForm::formatComment</a>()
+<a name="l00216"></a>00216 {
+<a name="l00217"></a>00217 QString result = <a class="code" href="classKFeedbackForm.html#862ae3fd81afe2f61f19d41d927c537b">_comment</a>-&gt;text();
+<a name="l00218"></a>00218
+<a name="l00219"></a>00219 <span class="keywordflow">if</span> ( ! result.isEmpty() )
+<a name="l00220"></a>00220 {
+<a name="l00221"></a>00221 result = <span class="stringliteral">"&lt;comment&gt;\n"</span> + result + <span class="stringliteral">"\n&lt;/comment&gt;\n\n"</span>;
+<a name="l00222"></a>00222 }
+<a name="l00223"></a>00223
+<a name="l00224"></a>00224 <span class="keywordflow">return</span> result;
+<a name="l00225"></a>00225 }
+<a name="l00226"></a>00226
+<a name="l00227"></a>00227
+<a name="l00228"></a>00228 <span class="keywordtype">bool</span>
+<a name="l00229"></a><a class="code" href="classKFeedbackForm.html#6840e07fe3245d4e9c11ee0160af6068">00229</a> <a class="code" href="classKFeedbackForm.html#6840e07fe3245d4e9c11ee0160af6068">KFeedbackForm::readyToSend</a>()
+<a name="l00230"></a>00230 {
+<a name="l00231"></a>00231 <span class="keywordflow">return</span> <a class="code" href="classKFeedbackForm.html#e8c28be58b2684f090c396ad52f64ad3">_questionList</a>-&gt;<a class="code" href="classKFeedbackQuestionList.html#5834cfcbdf74ac1d8762c037dc492291">isComplete</a>();
+<a name="l00232"></a>00232 }
+<a name="l00233"></a>00233
+<a name="l00234"></a>00234
+<a name="l00235"></a>00235
+<a name="l00236"></a>00236
+<a name="l00237"></a>00237
+<a name="l00238"></a>00238
+<a name="l00239"></a><a class="code" href="classKFeedbackQuestionList.html#c666871537387a102c9f6372aa8875e8">00239</a> <a class="code" href="classKFeedbackQuestionList.html#c666871537387a102c9f6372aa8875e8">KFeedbackQuestionList::KFeedbackQuestionList</a>( QWidget *parent )
+<a name="l00240"></a>00240 : QListView( parent )
+<a name="l00241"></a>00241 {
+<a name="l00242"></a>00242 addColumn( <span class="stringliteral">""</span> );
+<a name="l00243"></a>00243 header()-&gt;hide();
+<a name="l00244"></a>00244 }
+<a name="l00245"></a>00245
+<a name="l00246"></a>00246
+<a name="l00247"></a><a class="code" href="classKFeedbackQuestionList.html#b467b667cbd906403af3222ab7a3e602">00247</a> <a class="code" href="classKFeedbackQuestionList.html#b467b667cbd906403af3222ab7a3e602">KFeedbackQuestionList::~KFeedbackQuestionList</a>()
+<a name="l00248"></a>00248 {
+<a name="l00249"></a>00249 <span class="comment">// NOP</span>
+<a name="l00250"></a>00250 }
+<a name="l00251"></a>00251
+<a name="l00252"></a>00252
+<a name="l00253"></a>00253 <span class="keywordtype">bool</span>
+<a name="l00254"></a><a class="code" href="classKFeedbackQuestionList.html#5834cfcbdf74ac1d8762c037dc492291">00254</a> <a class="code" href="classKFeedbackQuestionList.html#5834cfcbdf74ac1d8762c037dc492291">KFeedbackQuestionList::isComplete</a>()
+<a name="l00255"></a>00255 {
+<a name="l00256"></a>00256 <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * question = <a class="code" href="classKFeedbackQuestionList.html#37589f00f7f3e9c544780be24e122f21">firstQuestion</a>();
+<a name="l00257"></a>00257
+<a name="l00258"></a>00258 <span class="keywordflow">while</span> ( question )
+<a name="l00259"></a>00259 {
+<a name="l00260"></a>00260 <span class="keywordflow">if</span> ( question-&gt;<a class="code" href="classKFeedbackQuestion.html#5431a877415afca993aaefea86c0c7ec">isRequired</a>() &amp;&amp; ! question-&gt;<a class="code" href="classKFeedbackQuestion.html#593b269b00a8da9152a66f31fcdf75f3">isAnswered</a>() )
+<a name="l00261"></a>00261 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00262"></a>00262
+<a name="l00263"></a>00263 question = question-&gt;<a class="code" href="classKFeedbackQuestion.html#f3731cde03060c91a80ebb5c80f657a1">nextQuestion</a>();
+<a name="l00264"></a>00264 }
+<a name="l00265"></a>00265
+<a name="l00266"></a>00266 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00267"></a>00267 }
+<a name="l00268"></a>00268
+<a name="l00269"></a>00269
+<a name="l00270"></a><a class="code" href="classKFeedbackQuestionList.html#f31a9d0c7b6f06cfca9f76ccba5743f0">00270</a> QString <a class="code" href="classKFeedbackQuestionList.html#f31a9d0c7b6f06cfca9f76ccba5743f0">KFeedbackQuestionList::result</a>()
+<a name="l00271"></a>00271 {
+<a name="l00272"></a>00272 QString res;
+<a name="l00273"></a>00273 <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * question = <a class="code" href="classKFeedbackQuestionList.html#37589f00f7f3e9c544780be24e122f21">firstQuestion</a>();
+<a name="l00274"></a>00274
+<a name="l00275"></a>00275 <span class="keywordflow">while</span> ( question )
+<a name="l00276"></a>00276 {
+<a name="l00277"></a>00277 res += question-&gt;<a class="code" href="classKFeedbackQuestion.html#51e0a1d351c8f7819f50a6ebf66c193d">result</a>();
+<a name="l00278"></a>00278
+<a name="l00279"></a>00279 question = question-&gt;<a class="code" href="classKFeedbackQuestion.html#f3731cde03060c91a80ebb5c80f657a1">nextQuestion</a>();
+<a name="l00280"></a>00280 }
+<a name="l00281"></a>00281 res += <span class="stringliteral">"Compiled on KDE version: "</span>;
+<a name="l00282"></a>00282 res += KDE_VERSION_STRING;
+<a name="l00283"></a>00283
+<a name="l00284"></a>00284 <span class="keywordflow">return</span> res;
+<a name="l00285"></a>00285 }
+<a name="l00286"></a>00286
+<a name="l00287"></a>00287
+<a name="l00288"></a><a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">00288</a> <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a>* <a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">KFeedbackQuestionList::addQuestion</a>( <span class="keyword">const</span> QString &amp; text,
+<a name="l00289"></a>00289 <span class="keyword">const</span> QString &amp; <span class="keywordtype">id</span>,
+<a name="l00290"></a>00290 <span class="keywordtype">bool</span> exclusiveAnswer,
+<a name="l00291"></a>00291 <span class="keywordtype">bool</span> required )
+<a name="l00292"></a>00292 {
+<a name="l00293"></a>00293 <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * question = <span class="keyword">new</span> <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a>( <span class="keyword">this</span>, text, <span class="keywordtype">id</span>,
+<a name="l00294"></a>00294 exclusiveAnswer,
+<a name="l00295"></a>00295 required );
+<a name="l00296"></a>00296 CHECK_PTR( question );
+<a name="l00297"></a>00297
+<a name="l00298"></a>00298 <span class="keywordflow">return</span> question;
+<a name="l00299"></a>00299 }
+<a name="l00300"></a>00300
+<a name="l00301"></a>00301
+<a name="l00302"></a>00302 <span class="keywordtype">void</span>
+<a name="l00303"></a><a class="code" href="classKFeedbackQuestionList.html#9408bbc813e69ef33693cffa0ddd7c91">00303</a> <a class="code" href="classKFeedbackQuestionList.html#9408bbc813e69ef33693cffa0ddd7c91">KFeedbackQuestionList::addYesNoQuestion</a>( <span class="keyword">const</span> QString &amp; text,
+<a name="l00304"></a>00304 <span class="keyword">const</span> QString &amp; <span class="keywordtype">id</span>,
+<a name="l00305"></a>00305 <span class="keywordtype">bool</span> required )
+<a name="l00306"></a>00306 {
+<a name="l00307"></a>00307
+<a name="l00308"></a>00308 <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * question = <span class="keyword">new</span> <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a>( <span class="keyword">this</span>, text, <span class="keywordtype">id</span>,
+<a name="l00309"></a>00309 <span class="keyword">true</span>, <span class="comment">// exclusive</span>
+<a name="l00310"></a>00310 required );
+<a name="l00311"></a>00311 CHECK_PTR( question );
+<a name="l00312"></a>00312 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"yes"</span> ), <span class="stringliteral">"yes"</span> );
+<a name="l00313"></a>00313 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"no"</span> ), <span class="stringliteral">"no"</span> );
+<a name="l00314"></a>00314 }
+<a name="l00315"></a>00315
+<a name="l00316"></a>00316
+<a name="l00317"></a>00317 <span class="keywordtype">void</span>
+<a name="l00318"></a><a class="code" href="classKFeedbackQuestionList.html#9c8ed9fbb0f64a8748806f3850d2db14">00318</a> <a class="code" href="classKFeedbackQuestionList.html#9c8ed9fbb0f64a8748806f3850d2db14">KFeedbackQuestionList::questionAnswered</a>()
+<a name="l00319"></a>00319 {
+<a name="l00320"></a>00320 emit <a class="code" href="classKFeedbackQuestionList.html#7eb8b8f5254845e7a559b3da1fa34ba4">checkComplete</a>();
+<a name="l00321"></a>00321 }
+<a name="l00322"></a>00322
+<a name="l00323"></a>00323 <span class="keywordtype">void</span>
+<a name="l00324"></a><a class="code" href="classKFeedbackQuestionList.html#3a0c308081a834c24cdd576a694174dd">00324</a> <a class="code" href="classKFeedbackQuestionList.html#3a0c308081a834c24cdd576a694174dd">KFeedbackQuestionList::questionAdded</a>( <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * question)
+<a name="l00325"></a>00325 {
+<a name="l00326"></a>00326 <span class="keywordflow">if</span> ( question-&gt;<a class="code" href="classKFeedbackQuestion.html#5431a877415afca993aaefea86c0c7ec">isRequired</a>() )
+<a name="l00327"></a>00327 emit <a class="code" href="classKFeedbackQuestionList.html#7eb8b8f5254845e7a559b3da1fa34ba4">checkComplete</a>();
+<a name="l00328"></a>00328 }
+<a name="l00329"></a>00329
+<a name="l00330"></a>00330
+<a name="l00331"></a>00331
+<a name="l00332"></a>00332
+<a name="l00333"></a>00333
+<a name="l00334"></a>00334 <span class="keyword">static</span> <span class="keywordtype">int</span> nextNo = 0;
+<a name="l00335"></a>00335
+<a name="l00336"></a><a class="code" href="classKFeedbackQuestion.html#74f81a22aec4f3969ac05fcef5d8dee4">00336</a> <a class="code" href="classKFeedbackQuestion.html#74f81a22aec4f3969ac05fcef5d8dee4">KFeedbackQuestion::KFeedbackQuestion</a>( <a class="code" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> * parent,
+<a name="l00337"></a>00337 <span class="keyword">const</span> QString &amp; text,
+<a name="l00338"></a>00338 <span class="keyword">const</span> QString &amp; <span class="keywordtype">id</span>,
+<a name="l00339"></a>00339 <span class="keywordtype">bool</span> exclusiveAnswer,
+<a name="l00340"></a>00340 <span class="keywordtype">bool</span> required,
+<a name="l00341"></a>00341 <span class="keywordtype">bool</span> open )
+<a name="l00342"></a>00342 : QCheckListItem( parent, text )
+<a name="l00343"></a>00343 , _id( id )
+<a name="l00344"></a>00344 , _exclusiveAnswer( exclusiveAnswer )
+<a name="l00345"></a>00345 , _required( required )
+<a name="l00346"></a>00346 {
+<a name="l00347"></a>00347 <span class="keywordflow">if</span> ( required )
+<a name="l00348"></a>00348 {
+<a name="l00349"></a>00349 setPixmap( 0, KGlobal::iconLoader()-&gt;loadIcon( <span class="stringliteral">"edit"</span>, KIcon::Small ) );
+<a name="l00350"></a>00350 }
+<a name="l00351"></a>00351
+<a name="l00352"></a>00352 setOpen( open );
+<a name="l00353"></a>00353 <a class="code" href="classKFeedbackQuestion.html#4b1825caeff106b7a911ac725acdd8d1">_no</a> = nextNo++;
+<a name="l00354"></a>00354
+<a name="l00355"></a>00355 parent-&gt;<a class="code" href="classKFeedbackQuestionList.html#3a0c308081a834c24cdd576a694174dd">questionAdded</a>( <span class="keyword">this</span> );
+<a name="l00356"></a>00356 }
+<a name="l00357"></a>00357
+<a name="l00358"></a>00358
+<a name="l00359"></a>00359 <span class="keywordtype">void</span>
+<a name="l00360"></a><a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">00360</a> <a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">KFeedbackQuestion::addAnswer</a>( <span class="keyword">const</span> QString &amp; text,
+<a name="l00361"></a>00361 <span class="keyword">const</span> QString &amp; <span class="keywordtype">id</span> )
+<a name="l00362"></a>00362 {
+<a name="l00363"></a>00363 <span class="keyword">new</span> <a class="code" href="classKFeedbackAnswer.html">KFeedbackAnswer</a>( <span class="keyword">this</span>, text, <span class="keywordtype">id</span>, <a class="code" href="classKFeedbackQuestion.html#8d6d302dac4b8dc4973ff7cf8aa5f852">_exclusiveAnswer</a> );
+<a name="l00364"></a>00364 }
+<a name="l00365"></a>00365
+<a name="l00366"></a>00366
+<a name="l00367"></a>00367 <span class="keywordtype">bool</span>
+<a name="l00368"></a><a class="code" href="classKFeedbackQuestion.html#593b269b00a8da9152a66f31fcdf75f3">00368</a> <a class="code" href="classKFeedbackQuestion.html#593b269b00a8da9152a66f31fcdf75f3">KFeedbackQuestion::isAnswered</a>()
+<a name="l00369"></a>00369 {
+<a name="l00370"></a>00370 <span class="keywordflow">if</span> ( ! <a class="code" href="classKFeedbackQuestion.html#8d6d302dac4b8dc4973ff7cf8aa5f852">_exclusiveAnswer</a> )
+<a name="l00371"></a>00371 {
+<a name="l00377"></a>00377 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00378"></a>00378 }
+<a name="l00379"></a>00379
+<a name="l00380"></a>00380
+<a name="l00387"></a>00387 <a class="code" href="classKFeedbackAnswer.html">KFeedbackAnswer</a> *answer = <a class="code" href="classKFeedbackQuestion.html#a8759ac15cc2bec6f1a9e183eb374574">firstAnswer</a>();
+<a name="l00388"></a>00388
+<a name="l00389"></a>00389 <span class="keywordflow">while</span> ( answer )
+<a name="l00390"></a>00390 {
+<a name="l00391"></a>00391 <span class="keywordflow">if</span> ( answer-&gt;<a class="code" href="classKFeedbackAnswer.html#864fad7f3c6f5f92f262488735799cb7">isChecked</a>() )
+<a name="l00392"></a>00392 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00393"></a>00393
+<a name="l00394"></a>00394 answer = answer-&gt;<a class="code" href="classKFeedbackAnswer.html#31fe8732bdbda805d1306e5c86fcae91">nextAnswer</a>();
+<a name="l00395"></a>00395 }
+<a name="l00396"></a>00396
+<a name="l00397"></a>00397 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00398"></a>00398 }
+<a name="l00399"></a>00399
+<a name="l00400"></a>00400
+<a name="l00401"></a>00401 QString
+<a name="l00402"></a><a class="code" href="classKFeedbackQuestion.html#51e0a1d351c8f7819f50a6ebf66c193d">00402</a> <a class="code" href="classKFeedbackQuestion.html#51e0a1d351c8f7819f50a6ebf66c193d">KFeedbackQuestion::result</a>()
+<a name="l00403"></a>00403 {
+<a name="l00404"></a>00404 QString res;
+<a name="l00405"></a>00405 <span class="keywordtype">int</span> answers = 0;
+<a name="l00406"></a>00406
+<a name="l00407"></a>00407 <a class="code" href="classKFeedbackAnswer.html">KFeedbackAnswer</a> *answer = <a class="code" href="classKFeedbackQuestion.html#a8759ac15cc2bec6f1a9e183eb374574">firstAnswer</a>();
+<a name="l00408"></a>00408
+<a name="l00409"></a>00409 <span class="keywordflow">while</span> ( answer )
+<a name="l00410"></a>00410 {
+<a name="l00411"></a>00411 <span class="keywordflow">if</span> ( answer-&gt;<a class="code" href="classKFeedbackAnswer.html#864fad7f3c6f5f92f262488735799cb7">isChecked</a>() )
+<a name="l00412"></a>00412 {
+<a name="l00413"></a>00413 res += <a class="code" href="classKFeedbackQuestion.html#f0209761e6a1c061b4749f4a0228afc3">_id</a> + <span class="stringliteral">"=\""</span> + answer-&gt;<a class="code" href="classKFeedbackAnswer.html#0c38ffb3d84f3ca2204bcd66f605514c">id</a>() + <span class="stringliteral">"\"\n"</span>;
+<a name="l00414"></a>00414 answers++;
+<a name="l00415"></a>00415 }
+<a name="l00416"></a>00416
+<a name="l00417"></a>00417 answer = answer-&gt;<a class="code" href="classKFeedbackAnswer.html#31fe8732bdbda805d1306e5c86fcae91">nextAnswer</a>();
+<a name="l00418"></a>00418 }
+<a name="l00419"></a>00419
+<a name="l00420"></a>00420 <span class="keywordflow">if</span> ( answers &gt; 1 )
+<a name="l00421"></a>00421 {
+<a name="l00422"></a>00422 res = <span class="stringliteral">"\n"</span> + res + <span class="stringliteral">"\n"</span>;
+<a name="l00423"></a>00423 }
+<a name="l00424"></a>00424
+<a name="l00425"></a>00425 <span class="keywordflow">return</span> res;
+<a name="l00426"></a>00426 }
+<a name="l00427"></a>00427
+<a name="l00428"></a>00428
+<a name="l00429"></a>00429 QString
+<a name="l00430"></a><a class="code" href="classKFeedbackQuestion.html#13730ea63a6d8de44866c9134cb88f3c">00430</a> <a class="code" href="classKFeedbackQuestion.html#13730ea63a6d8de44866c9134cb88f3c">KFeedbackQuestion::text</a>()
+<a name="l00431"></a>00431 {
+<a name="l00432"></a>00432 <span class="keywordflow">return</span> QCheckListItem::text(0);
+<a name="l00433"></a>00433 }
+<a name="l00434"></a>00434
+<a name="l00435"></a>00435
+<a name="l00436"></a>00436 QString
+<a name="l00437"></a><a class="code" href="classKFeedbackQuestion.html#72b655cc6c5414023d05669142053a7c">00437</a> <a class="code" href="classKFeedbackQuestion.html#72b655cc6c5414023d05669142053a7c">KFeedbackQuestion::key</a>( <span class="keywordtype">int</span>, <span class="keywordtype">bool</span> )<span class="keyword"> const</span>
+<a name="l00438"></a>00438 <span class="keyword"></span>{
+<a name="l00439"></a>00439 QString no;
+<a name="l00440"></a>00440 no.sprintf( <span class="stringliteral">"%08d"</span>, <a class="code" href="classKFeedbackQuestion.html#4b1825caeff106b7a911ac725acdd8d1">_no</a> );
+<a name="l00441"></a>00441
+<a name="l00442"></a>00442 <span class="keywordflow">return</span> no;
+<a name="l00443"></a>00443 }
+<a name="l00444"></a>00444
+<a name="l00445"></a>00445
+<a name="l00446"></a>00446 <a class="code" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> *
+<a name="l00447"></a><a class="code" href="classKFeedbackQuestion.html#f879e5220a516c94124130a2d0a1a2dd">00447</a> <a class="code" href="classKFeedbackQuestion.html#f879e5220a516c94124130a2d0a1a2dd">KFeedbackQuestion::questionList</a>()<span class="keyword"> const</span>
+<a name="l00448"></a>00448 <span class="keyword"></span>{
+<a name="l00449"></a>00449 <span class="keywordflow">return</span> dynamic_cast&lt;KFeedbackQuestionList *&gt;( listView() );
+<a name="l00450"></a>00450 }
+<a name="l00451"></a>00451
+<a name="l00452"></a>00452
+<a name="l00453"></a>00453
+<a name="l00454"></a>00454
+<a name="l00455"></a>00455
+<a name="l00456"></a>00456
+<a name="l00457"></a>00457
+<a name="l00458"></a><a class="code" href="classKFeedbackAnswer.html#7100bf31bf9d49009b8c5a82c1ae5bde">00458</a> <a class="code" href="classKFeedbackAnswer.html#7100bf31bf9d49009b8c5a82c1ae5bde">KFeedbackAnswer::KFeedbackAnswer</a>( <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * parent,
+<a name="l00459"></a>00459 <span class="keyword">const</span> QString &amp; text,
+<a name="l00460"></a>00460 <span class="keyword">const</span> QString &amp; <span class="keywordtype">id</span>,
+<a name="l00461"></a>00461 <span class="keywordtype">bool</span> exclusive )
+<a name="l00462"></a>00462 : QCheckListItem( parent,
+<a name="l00463"></a>00463 text,
+<a name="l00464"></a>00464 exclusive
+<a name="l00465"></a>00465 ? QCheckListItem::RadioButton
+<a name="l00466"></a>00466 : QCheckListItem::CheckBox )
+<a name="l00467"></a>00467 , _id( id )
+<a name="l00468"></a>00468 {
+<a name="l00469"></a>00469 <a class="code" href="classKFeedbackAnswer.html#1ddde383928714423714a70a829a0c57">_no</a> = nextNo++;
+<a name="l00470"></a>00470 }
+<a name="l00471"></a>00471
+<a name="l00472"></a>00472
+<a name="l00473"></a>00473 QString
+<a name="l00474"></a><a class="code" href="classKFeedbackAnswer.html#a177a24369a5dab88d5602f6651275ea">00474</a> <a class="code" href="classKFeedbackAnswer.html#a177a24369a5dab88d5602f6651275ea">KFeedbackAnswer::text</a>()
+<a name="l00475"></a>00475 {
+<a name="l00476"></a>00476 <span class="keywordflow">return</span> QCheckListItem::text(0);
+<a name="l00477"></a>00477 }
+<a name="l00478"></a>00478
+<a name="l00479"></a>00479
+<a name="l00480"></a>00480 QString
+<a name="l00481"></a><a class="code" href="classKFeedbackAnswer.html#a643ff4986437b3089dcda86512c4f79">00481</a> <a class="code" href="classKFeedbackAnswer.html#a643ff4986437b3089dcda86512c4f79">KFeedbackAnswer::key</a>( <span class="keywordtype">int</span>, <span class="keywordtype">bool</span> )<span class="keyword"> const</span>
+<a name="l00482"></a>00482 <span class="keyword"></span>{
+<a name="l00483"></a>00483 QString no;
+<a name="l00484"></a>00484 no.sprintf( <span class="stringliteral">"%08d"</span>, <a class="code" href="classKFeedbackAnswer.html#1ddde383928714423714a70a829a0c57">_no</a> );
+<a name="l00485"></a>00485
+<a name="l00486"></a>00486 <span class="keywordflow">return</span> no;
+<a name="l00487"></a>00487 }
+<a name="l00488"></a>00488
+<a name="l00489"></a>00489
+<a name="l00490"></a>00490 <span class="keywordtype">void</span>
+<a name="l00491"></a><a class="code" href="classKFeedbackAnswer.html#3812bf11ec42b06397e87a753797bbd8">00491</a> <a class="code" href="classKFeedbackAnswer.html#3812bf11ec42b06397e87a753797bbd8">KFeedbackAnswer::stateChange</a>( <span class="keywordtype">bool</span> newState )
+<a name="l00492"></a>00492 {
+<a name="l00493"></a>00493 <span class="keywordflow">if</span> ( newState &amp;&amp; <a class="code" href="classKFeedbackAnswer.html#c147b9f7c35c83c8a5458a79f6cafed9">question</a>()-&gt;isRequired() )
+<a name="l00494"></a>00494 {
+<a name="l00495"></a>00495 <a class="code" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> * list = <a class="code" href="classKFeedbackAnswer.html#c147b9f7c35c83c8a5458a79f6cafed9">question</a>()-&gt;<a class="code" href="classKFeedbackQuestion.html#f879e5220a516c94124130a2d0a1a2dd">questionList</a>();
+<a name="l00496"></a>00496
+<a name="l00497"></a>00497 <span class="keywordflow">if</span> ( list )
+<a name="l00498"></a>00498 list-&gt;<a class="code" href="classKFeedbackQuestionList.html#9c8ed9fbb0f64a8748806f3850d2db14">questionAnswered</a>();
+<a name="l00499"></a>00499 }
+<a name="l00500"></a>00500 }
+<a name="l00501"></a>00501
+<a name="l00502"></a>00502
+<a name="l00503"></a>00503
+<a name="l00504"></a>00504 <span class="comment">// EOF</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kfeedback_8h-source.html b/doc/html/kfeedback_8h-source.html
new file mode 100644
index 0000000..c33797e
--- /dev/null
+++ b/doc/html/kfeedback_8h-source.html
@@ -0,0 +1,257 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/kfeedback.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kfeedback.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
+<a name="l00002"></a>00002 <span class="comment"> * File name: kfeedback.h</span>
+<a name="l00003"></a>00003 <span class="comment"> * Summary: User feedback form and mailing utilities</span>
+<a name="l00004"></a>00004 <span class="comment"> * License: LGPL - See file COPYING.LIB for details.</span>
+<a name="l00005"></a>00005 <span class="comment"> * Author: Stefan Hundhammer &lt;sh@suse.de&gt;</span>
+<a name="l00006"></a>00006 <span class="comment"> *</span>
+<a name="l00007"></a>00007 <span class="comment"> * Updated: 2002-02-24</span>
+<a name="l00008"></a>00008 <span class="comment"> *</span>
+<a name="l00009"></a>00009 <span class="comment"> * $Id: kfeedback_8h-source.html,v 1.10 2007/07/05 17:37:51 kuddel-fl Exp $</span>
+<a name="l00010"></a>00010 <span class="comment"> *</span>
+<a name="l00011"></a>00011 <span class="comment"> */</span>
+<a name="l00012"></a>00012
+<a name="l00013"></a>00013
+<a name="l00014"></a>00014 <span class="preprocessor">#ifndef KFeedback_h</span>
+<a name="l00015"></a>00015 <span class="preprocessor"></span><span class="preprocessor">#define KFeedback_h</span>
+<a name="l00016"></a>00016 <span class="preprocessor"></span>
+<a name="l00017"></a>00017 <span class="preprocessor">#ifdef HAVE_CONFIG_H</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#include &lt;config.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#endif</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qlistview.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qvbox.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;kdialogbase.h&gt;</span>
+<a name="l00024"></a>00024
+<a name="l00025"></a>00025
+<a name="l00026"></a>00026 <span class="preprocessor">#ifndef NOT_USED</span>
+<a name="l00027"></a>00027 <span class="preprocessor"></span><span class="preprocessor"># define NOT_USED(PARAM) ( (void) (PARAM) )</span>
+<a name="l00028"></a>00028 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00029"></a>00029 <span class="preprocessor"></span>
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031 <span class="keyword">class </span><a class="code" href="classKFeedbackForm.html">KFeedbackForm</a>;
+<a name="l00032"></a>00032 <span class="keyword">class </span><a class="code" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a>;
+<a name="l00033"></a>00033 <span class="keyword">class </span><a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a>;
+<a name="l00034"></a>00034 <span class="keyword">class </span><a class="code" href="classKFeedbackAnswer.html">KFeedbackAnswer</a>;
+<a name="l00035"></a>00035 <span class="keyword">class </span>QMultiLineEdit;
+<a name="l00036"></a>00036
+<a name="l00037"></a>00037
+<a name="l00042"></a><a class="code" href="classKFeedbackDialog.html">00042</a> <span class="keyword">class </span><a class="code" href="classKFeedbackDialog.html">KFeedbackDialog</a>: <span class="keyword">public</span> KDialogBase
+<a name="l00043"></a>00043 {
+<a name="l00044"></a>00044 Q_OBJECT
+<a name="l00045"></a>00045
+<a name="l00046"></a>00046 <span class="keyword">public</span>:
+<a name="l00047"></a>00047
+<a name="l00051"></a>00051 <a class="code" href="classKFeedbackDialog.html#1ae22ffc4cfbabb1b954f2f75c57f8ba">KFeedbackDialog</a>( <span class="keyword">const</span> QString &amp; feedbackMailAddress,
+<a name="l00052"></a>00052 <span class="keyword">const</span> QString &amp; helpTopic = QString::null );
+<a name="l00053"></a>00053
+<a name="l00054"></a>00054
+<a name="l00058"></a>00058 <span class="keyword">virtual</span> <a class="code" href="classKFeedbackDialog.html#3db3a02eb0b2a94d8e3bedbd1f5f6d70">~KFeedbackDialog</a>();
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060
+<a name="l00064"></a><a class="code" href="classKFeedbackDialog.html#1d9dfb5bac160ce16eb8e929f37c31b6">00064</a> <a class="code" href="classKFeedbackForm.html">KFeedbackForm</a> *<a class="code" href="classKFeedbackDialog.html#1d9dfb5bac160ce16eb8e929f37c31b6">form</a>() { <span class="keywordflow">return</span> <a class="code" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">_form</a>; }
+<a name="l00065"></a>00065
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 <span class="keyword">public</span> slots:
+<a name="l00068"></a>00068
+<a name="l00073"></a>00073 <span class="keywordtype">void</span> <a class="code" href="classKFeedbackDialog.html#34f680000dbe1b4446bd647d51c3738d">checkSendButton</a>();
+<a name="l00074"></a>00074
+<a name="l00075"></a>00075
+<a name="l00076"></a>00076 signals:
+<a name="l00083"></a>00083 <span class="keywordtype">void</span> <a class="code" href="classKFeedbackDialog.html#962b0e6f0813c923c924bb9b81c8ba1b">mailSent</a>();
+<a name="l00084"></a>00084
+<a name="l00085"></a>00085
+<a name="l00086"></a>00086 <span class="keyword">protected</span>:
+<a name="l00087"></a>00087
+<a name="l00088"></a><a class="code" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">00088</a> <a class="code" href="classKFeedbackForm.html">KFeedbackForm</a> * <a class="code" href="classKFeedbackDialog.html#c95533de8e33e87407a06b910f5b6cfa">_form</a>;
+<a name="l00089"></a>00089 };
+<a name="l00090"></a>00090
+<a name="l00091"></a>00091
+<a name="l00098"></a><a class="code" href="classKFeedbackForm.html">00098</a> <span class="keyword">class </span><a class="code" href="classKFeedbackForm.html">KFeedbackForm</a>: <span class="keyword">public</span> QVBox
+<a name="l00099"></a>00099 {
+<a name="l00100"></a>00100 Q_OBJECT
+<a name="l00101"></a>00101
+<a name="l00102"></a>00102 <span class="keyword">public</span>:
+<a name="l00106"></a>00106 <a class="code" href="classKFeedbackForm.html#78d888d1554e9403a62d7c9b0c6e4a2e">KFeedbackForm</a>( <span class="keyword">const</span> QString &amp; feedbackMailAddress,
+<a name="l00107"></a>00107 QWidget * parent );
+<a name="l00108"></a>00108
+<a name="l00112"></a>00112 <span class="keyword">virtual</span> <a class="code" href="classKFeedbackForm.html#b22414a85a37ca217e028bde8a663ac4">~KFeedbackForm</a>();
+<a name="l00113"></a>00113
+<a name="l00114"></a>00114
+<a name="l00115"></a>00115 <span class="keyword">public</span> slots:
+<a name="l00116"></a>00116
+<a name="l00128"></a>00128 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classKFeedbackForm.html#72b8b30801614c35e271c5e519f10c8b">sendMail</a>();
+<a name="l00129"></a>00129
+<a name="l00130"></a>00130
+<a name="l00131"></a>00131 <span class="keyword">public</span>:
+<a name="l00132"></a>00132
+<a name="l00137"></a>00137 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classKFeedbackForm.html#6840e07fe3245d4e9c11ee0160af6068">readyToSend</a>();
+<a name="l00138"></a>00138
+<a name="l00142"></a><a class="code" href="classKFeedbackForm.html#51b1d4e1e48d18c6155203b9f72ada5e">00142</a> <a class="code" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> * <a class="code" href="classKFeedbackForm.html#51b1d4e1e48d18c6155203b9f72ada5e">questionList</a>() { <span class="keywordflow">return</span> <a class="code" href="classKFeedbackForm.html#e8c28be58b2684f090c396ad52f64ad3">_questionList</a>; }
+<a name="l00143"></a>00143
+<a name="l00144"></a>00144
+<a name="l00145"></a>00145 signals:
+<a name="l00152"></a>00152 <span class="keywordtype">void</span> <a class="code" href="classKFeedbackForm.html#ec2b411546d45e31c9b412f1fa6d8897">mailSent</a>();
+<a name="l00153"></a>00153
+<a name="l00159"></a>00159 <span class="keywordtype">void</span> <a class="code" href="classKFeedbackForm.html#c328809367354cf8ff97e7c78b521345">checkComplete</a>();
+<a name="l00160"></a>00160
+<a name="l00161"></a>00161
+<a name="l00162"></a>00162 <span class="keyword">protected</span> slots:
+<a name="l00166"></a>00166 <span class="keywordtype">void</span> <a class="code" href="classKFeedbackForm.html#5ec1c36c978229b6e14e9005b595d69e">slotCheckComplete</a>();
+<a name="l00167"></a>00167
+<a name="l00168"></a>00168
+<a name="l00169"></a>00169 <span class="keyword">protected</span>:
+<a name="l00170"></a>00170
+<a name="l00174"></a>00174 QString <a class="code" href="classKFeedbackForm.html#08ace5fb7dd689ced012aa722b690b71">formatComment</a>();
+<a name="l00175"></a>00175
+<a name="l00176"></a>00176
+<a name="l00177"></a><a class="code" href="classKFeedbackForm.html#4e667e814dc1de15bf601217c08f077f">00177</a> QString <a class="code" href="classKFeedbackForm.html#4e667e814dc1de15bf601217c08f077f">_feedbackMailAddress</a>;
+<a name="l00178"></a><a class="code" href="classKFeedbackForm.html#e8c28be58b2684f090c396ad52f64ad3">00178</a> <a class="code" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> * <a class="code" href="classKFeedbackForm.html#e8c28be58b2684f090c396ad52f64ad3">_questionList</a>;
+<a name="l00179"></a><a class="code" href="classKFeedbackForm.html#862ae3fd81afe2f61f19d41d927c537b">00179</a> QMultiLineEdit * <a class="code" href="classKFeedbackForm.html#862ae3fd81afe2f61f19d41d927c537b">_comment</a>;
+<a name="l00180"></a>00180 };
+<a name="l00181"></a>00181
+<a name="l00182"></a>00182
+<a name="l00183"></a>00183
+<a name="l00187"></a><a class="code" href="classKFeedbackQuestionList.html">00187</a> <span class="keyword">class </span><a class="code" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a>: <span class="keyword">public</span> QListView
+<a name="l00188"></a>00188 {
+<a name="l00189"></a>00189 Q_OBJECT
+<a name="l00190"></a>00190
+<a name="l00191"></a>00191 <span class="keyword">public</span>:
+<a name="l00192"></a>00192
+<a name="l00196"></a>00196 <a class="code" href="classKFeedbackQuestionList.html#c666871537387a102c9f6372aa8875e8">KFeedbackQuestionList</a>( QWidget *parent );
+<a name="l00197"></a>00197
+<a name="l00201"></a>00201 <span class="keyword">virtual</span> <a class="code" href="classKFeedbackQuestionList.html#b467b667cbd906403af3222ab7a3e602">~KFeedbackQuestionList</a>();
+<a name="l00202"></a>00202
+<a name="l00207"></a>00207 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classKFeedbackQuestionList.html#5834cfcbdf74ac1d8762c037dc492291">isComplete</a>();
+<a name="l00208"></a>00208
+<a name="l00212"></a>00212 QString <a class="code" href="classKFeedbackQuestionList.html#f31a9d0c7b6f06cfca9f76ccba5743f0">result</a>();
+<a name="l00213"></a>00213
+<a name="l00231"></a>00231 <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * <a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( <span class="keyword">const</span> QString &amp; text,
+<a name="l00232"></a>00232 <span class="keyword">const</span> QString &amp; <span class="keywordtype">id</span>,
+<a name="l00233"></a>00233 <span class="keywordtype">bool</span> exclusiveAnswer = <span class="keyword">true</span>,
+<a name="l00234"></a>00234 <span class="keywordtype">bool</span> required = <span class="keyword">false</span> );
+<a name="l00235"></a>00235
+<a name="l00239"></a>00239 <span class="keywordtype">void</span> <a class="code" href="classKFeedbackQuestionList.html#9408bbc813e69ef33693cffa0ddd7c91">addYesNoQuestion</a>( <span class="keyword">const</span> QString &amp; text,
+<a name="l00240"></a>00240 <span class="keyword">const</span> QString &amp; <span class="keywordtype">id</span>,
+<a name="l00241"></a>00241 <span class="keywordtype">bool</span> required = <span class="keyword">false</span> );
+<a name="l00242"></a>00242
+<a name="l00247"></a><a class="code" href="classKFeedbackQuestionList.html#37589f00f7f3e9c544780be24e122f21">00247</a> <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * <a class="code" href="classKFeedbackQuestionList.html#37589f00f7f3e9c544780be24e122f21">firstQuestion</a>()<span class="keyword"> const</span>
+<a name="l00248"></a>00248 <span class="keyword"> </span>{ <span class="keywordflow">return</span> (<a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> *) QListView::firstChild(); }
+<a name="l00249"></a>00249
+<a name="l00255"></a>00255 <span class="keywordtype">void</span> <a class="code" href="classKFeedbackQuestionList.html#9c8ed9fbb0f64a8748806f3850d2db14">questionAnswered</a>();
+<a name="l00256"></a>00256
+<a name="l00262"></a>00262 <span class="keywordtype">void</span> <a class="code" href="classKFeedbackQuestionList.html#3a0c308081a834c24cdd576a694174dd">questionAdded</a>( <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * question );
+<a name="l00263"></a>00263
+<a name="l00264"></a>00264 signals:
+<a name="l00268"></a>00268 <span class="keywordtype">void</span> <a class="code" href="classKFeedbackQuestionList.html#7eb8b8f5254845e7a559b3da1fa34ba4">checkComplete</a>();
+<a name="l00269"></a>00269 };
+<a name="l00270"></a>00270
+<a name="l00271"></a>00271
+<a name="l00275"></a><a class="code" href="classKFeedbackQuestion.html">00275</a> <span class="keyword">class </span><a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a>: <span class="keyword">public</span> QCheckListItem
+<a name="l00276"></a>00276 {
+<a name="l00277"></a>00277 <span class="keyword">public</span>:
+<a name="l00278"></a>00278
+<a name="l00300"></a>00300 <a class="code" href="classKFeedbackQuestion.html#74f81a22aec4f3969ac05fcef5d8dee4">KFeedbackQuestion</a>( <a class="code" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> * parent,
+<a name="l00301"></a>00301 <span class="keyword">const</span> QString &amp; <a class="code" href="classKFeedbackQuestion.html#13730ea63a6d8de44866c9134cb88f3c">text</a>,
+<a name="l00302"></a>00302 <span class="keyword">const</span> QString &amp; <span class="keywordtype">id</span>,
+<a name="l00303"></a>00303 <span class="keywordtype">bool</span> <a class="code" href="classKFeedbackQuestion.html#40333b62b3defe8ebbe27fc8552bffff">exclusiveAnswer</a> = <span class="keyword">true</span>,
+<a name="l00304"></a>00304 <span class="keywordtype">bool</span> required = <span class="keyword">false</span>,
+<a name="l00305"></a>00305 <span class="keywordtype">bool</span> open = <span class="keyword">true</span> );
+<a name="l00306"></a>00306
+<a name="l00313"></a>00313 <span class="keywordtype">void</span> <a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( <span class="keyword">const</span> QString &amp; text,
+<a name="l00314"></a>00314 <span class="keyword">const</span> QString &amp; <span class="keywordtype">id</span> );
+<a name="l00315"></a>00315
+<a name="l00319"></a><a class="code" href="classKFeedbackQuestion.html#5431a877415afca993aaefea86c0c7ec">00319</a> <span class="keywordtype">bool</span> <a class="code" href="classKFeedbackQuestion.html#5431a877415afca993aaefea86c0c7ec">isRequired</a>() { <span class="keywordflow">return</span> <a class="code" href="classKFeedbackQuestion.html#2c946b672e2c0d163ffc3d4b64c61801">_required</a>; }
+<a name="l00320"></a>00320
+<a name="l00324"></a>00324 <span class="keywordtype">bool</span> <a class="code" href="classKFeedbackQuestion.html#593b269b00a8da9152a66f31fcdf75f3">isAnswered</a>();
+<a name="l00325"></a>00325
+<a name="l00334"></a>00334 QString <a class="code" href="classKFeedbackQuestion.html#51e0a1d351c8f7819f50a6ebf66c193d">result</a>();
+<a name="l00335"></a>00335
+<a name="l00339"></a><a class="code" href="classKFeedbackQuestion.html#83626cfa4d3235b58028d011a7955add">00339</a> QString <a class="code" href="classKFeedbackQuestion.html#83626cfa4d3235b58028d011a7955add">id</a>() { <span class="keywordflow">return</span> <a class="code" href="classKFeedbackQuestion.html#f0209761e6a1c061b4749f4a0228afc3">_id</a>; }
+<a name="l00340"></a>00340
+<a name="l00344"></a>00344 QString <a class="code" href="classKFeedbackQuestion.html#13730ea63a6d8de44866c9134cb88f3c">text</a>();
+<a name="l00345"></a>00345
+<a name="l00349"></a><a class="code" href="classKFeedbackQuestion.html#40333b62b3defe8ebbe27fc8552bffff">00349</a> <span class="keywordtype">bool</span> <a class="code" href="classKFeedbackQuestion.html#40333b62b3defe8ebbe27fc8552bffff">exclusiveAnswer</a>() { <span class="keywordflow">return</span> <a class="code" href="classKFeedbackQuestion.html#8d6d302dac4b8dc4973ff7cf8aa5f852">_exclusiveAnswer</a>; }
+<a name="l00350"></a>00350
+<a name="l00351"></a>00351
+<a name="l00357"></a>00357 <span class="keyword">virtual</span> QString <a class="code" href="classKFeedbackQuestion.html#72b655cc6c5414023d05669142053a7c">key</a>( <span class="keywordtype">int</span> column, <span class="keywordtype">bool</span> ascending ) <span class="keyword">const</span>;
+<a name="l00358"></a>00358
+<a name="l00362"></a><a class="code" href="classKFeedbackQuestion.html#f3731cde03060c91a80ebb5c80f657a1">00362</a> <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * <a class="code" href="classKFeedbackQuestion.html#f3731cde03060c91a80ebb5c80f657a1">nextQuestion</a>()<span class="keyword"> const</span>
+<a name="l00363"></a>00363 <span class="keyword"> </span>{ <span class="keywordflow">return</span> (<a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> *) QListViewItem::nextSibling(); }
+<a name="l00364"></a>00364
+<a name="l00369"></a><a class="code" href="classKFeedbackQuestion.html#a8759ac15cc2bec6f1a9e183eb374574">00369</a> <a class="code" href="classKFeedbackAnswer.html">KFeedbackAnswer</a> * <a class="code" href="classKFeedbackQuestion.html#a8759ac15cc2bec6f1a9e183eb374574">firstAnswer</a>()<span class="keyword"> const</span>
+<a name="l00370"></a>00370 <span class="keyword"> </span>{ <span class="keywordflow">return</span> (<a class="code" href="classKFeedbackAnswer.html">KFeedbackAnswer</a> *) QListViewItem::firstChild(); }
+<a name="l00371"></a>00371
+<a name="l00376"></a>00376 <a class="code" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> * <a class="code" href="classKFeedbackQuestion.html#f879e5220a516c94124130a2d0a1a2dd">questionList</a>() <span class="keyword">const</span>;
+<a name="l00377"></a>00377
+<a name="l00378"></a>00378
+<a name="l00379"></a>00379 <span class="keyword">protected</span>:
+<a name="l00380"></a>00380
+<a name="l00381"></a><a class="code" href="classKFeedbackQuestion.html#f0209761e6a1c061b4749f4a0228afc3">00381</a> QString <a class="code" href="classKFeedbackQuestion.html#f0209761e6a1c061b4749f4a0228afc3">_id</a>;
+<a name="l00382"></a><a class="code" href="classKFeedbackQuestion.html#8d6d302dac4b8dc4973ff7cf8aa5f852">00382</a> <span class="keywordtype">bool</span> <a class="code" href="classKFeedbackQuestion.html#8d6d302dac4b8dc4973ff7cf8aa5f852">_exclusiveAnswer</a>;
+<a name="l00383"></a><a class="code" href="classKFeedbackQuestion.html#2c946b672e2c0d163ffc3d4b64c61801">00383</a> <span class="keywordtype">bool</span> <a class="code" href="classKFeedbackQuestion.html#2c946b672e2c0d163ffc3d4b64c61801">_required</a>;
+<a name="l00384"></a><a class="code" href="classKFeedbackQuestion.html#4b1825caeff106b7a911ac725acdd8d1">00384</a> <span class="keywordtype">int</span> <a class="code" href="classKFeedbackQuestion.html#4b1825caeff106b7a911ac725acdd8d1">_no</a>;
+<a name="l00385"></a>00385 };
+<a name="l00386"></a>00386
+<a name="l00387"></a>00387
+<a name="l00388"></a><a class="code" href="classKFeedbackAnswer.html">00388</a> <span class="keyword">class </span><a class="code" href="classKFeedbackAnswer.html">KFeedbackAnswer</a>: <span class="keyword">public</span> QCheckListItem
+<a name="l00389"></a>00389 {
+<a name="l00390"></a>00390 <span class="keyword">public</span>:
+<a name="l00397"></a>00397 <a class="code" href="classKFeedbackAnswer.html#7100bf31bf9d49009b8c5a82c1ae5bde">KFeedbackAnswer</a>( <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * parent,
+<a name="l00398"></a>00398 <span class="keyword">const</span> QString &amp; <a class="code" href="classKFeedbackAnswer.html#a177a24369a5dab88d5602f6651275ea">text</a>,
+<a name="l00399"></a>00399 <span class="keyword">const</span> QString &amp; <span class="keywordtype">id</span>,
+<a name="l00400"></a>00400 <span class="keywordtype">bool</span> exclusive = <span class="keyword">true</span> );
+<a name="l00401"></a>00401
+<a name="l00405"></a><a class="code" href="classKFeedbackAnswer.html#0c38ffb3d84f3ca2204bcd66f605514c">00405</a> QString <a class="code" href="classKFeedbackAnswer.html#0c38ffb3d84f3ca2204bcd66f605514c">id</a>() { <span class="keywordflow">return</span> <a class="code" href="classKFeedbackAnswer.html#f6c09e6daf51423ec373fc9608486adb">_id</a>; }
+<a name="l00406"></a>00406
+<a name="l00410"></a>00410 QString <a class="code" href="classKFeedbackAnswer.html#a177a24369a5dab88d5602f6651275ea">text</a>();
+<a name="l00411"></a>00411
+<a name="l00415"></a><a class="code" href="classKFeedbackAnswer.html#5de55655375db66b438b221d63cd0082">00415</a> <span class="keywordtype">bool</span> <a class="code" href="classKFeedbackAnswer.html#5de55655375db66b438b221d63cd0082">isExclusive</a>() { <span class="keywordflow">return</span> <a class="code" href="classKFeedbackAnswer.html#b2a618699a774f019ce272d6fbd0aeb8">_exclusive</a>; }
+<a name="l00416"></a>00416
+<a name="l00420"></a><a class="code" href="classKFeedbackAnswer.html#864fad7f3c6f5f92f262488735799cb7">00420</a> <span class="keywordtype">bool</span> <a class="code" href="classKFeedbackAnswer.html#864fad7f3c6f5f92f262488735799cb7">isChecked</a>() { <span class="keywordflow">return</span> QCheckListItem::isOn(); }
+<a name="l00421"></a>00421
+<a name="l00425"></a><a class="code" href="classKFeedbackAnswer.html#31fe8732bdbda805d1306e5c86fcae91">00425</a> <a class="code" href="classKFeedbackAnswer.html">KFeedbackAnswer</a> * <a class="code" href="classKFeedbackAnswer.html#31fe8732bdbda805d1306e5c86fcae91">nextAnswer</a>()<span class="keyword"> const</span>
+<a name="l00426"></a>00426 <span class="keyword"> </span>{ <span class="keywordflow">return</span> (<a class="code" href="classKFeedbackAnswer.html">KFeedbackAnswer</a> *) QListViewItem::nextSibling(); }
+<a name="l00427"></a>00427
+<a name="l00431"></a><a class="code" href="classKFeedbackAnswer.html#c147b9f7c35c83c8a5458a79f6cafed9">00431</a> <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * <a class="code" href="classKFeedbackAnswer.html#c147b9f7c35c83c8a5458a79f6cafed9">question</a>()<span class="keyword"> const</span>
+<a name="l00432"></a>00432 <span class="keyword"> </span>{ <span class="keywordflow">return</span> (<a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> *) QListViewItem::parent(); }
+<a name="l00433"></a>00433
+<a name="l00439"></a>00439 <span class="keyword">virtual</span> QString <a class="code" href="classKFeedbackAnswer.html#a643ff4986437b3089dcda86512c4f79">key</a>( <span class="keywordtype">int</span> column, <span class="keywordtype">bool</span> ascending ) <span class="keyword">const</span>;
+<a name="l00440"></a>00440
+<a name="l00441"></a>00441
+<a name="l00449"></a>00449 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classKFeedbackAnswer.html#3812bf11ec42b06397e87a753797bbd8">stateChange</a>( <span class="keywordtype">bool</span> newState );
+<a name="l00450"></a>00450
+<a name="l00451"></a>00451 <span class="keyword">protected</span>:
+<a name="l00452"></a>00452
+<a name="l00453"></a><a class="code" href="classKFeedbackAnswer.html#f6c09e6daf51423ec373fc9608486adb">00453</a> QString <a class="code" href="classKFeedbackAnswer.html#f6c09e6daf51423ec373fc9608486adb">_id</a>;
+<a name="l00454"></a><a class="code" href="classKFeedbackAnswer.html#b2a618699a774f019ce272d6fbd0aeb8">00454</a> <span class="keywordtype">bool</span> <a class="code" href="classKFeedbackAnswer.html#b2a618699a774f019ce272d6fbd0aeb8">_exclusive</a>;
+<a name="l00455"></a><a class="code" href="classKFeedbackAnswer.html#1ddde383928714423714a70a829a0c57">00455</a> <span class="keywordtype">int</span> <a class="code" href="classKFeedbackAnswer.html#1ddde383928714423714a70a829a0c57">_no</a>;
+<a name="l00456"></a>00456 };
+<a name="l00457"></a>00457
+<a name="l00458"></a>00458
+<a name="l00459"></a>00459
+<a name="l00460"></a>00460 <span class="preprocessor">#endif // KFeedback_h</span>
+<a name="l00461"></a>00461 <span class="preprocessor"></span>
+<a name="l00462"></a>00462
+<a name="l00463"></a>00463 <span class="comment">// EOF</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kfeedback_8moc_8cpp-source.html b/doc/html/kfeedback_8moc_8cpp-source.html
new file mode 100644
index 0000000..044b36f
--- /dev/null
+++ b/doc/html/kfeedback_8moc_8cpp-source.html
@@ -0,0 +1,335 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/kfeedback.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kfeedback.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** KFeedbackDialog meta object code from reading C++ file 'kfeedback.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Fri Jun 29 22:09:00 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: kfeedback_8moc_8cpp-source.html,v 1.10 2007/07/05 17:37:51 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "kfeedback.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *KFeedbackDialog::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"KFeedbackDialog"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *KFeedbackDialog::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_KFeedbackDialog( <span class="stringliteral">"KFeedbackDialog"</span>, &amp;KFeedbackDialog::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString KFeedbackDialog::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KFeedbackDialog"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString KFeedbackDialog::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KFeedbackDialog"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* KFeedbackDialog::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = KDialogBase::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"checkSendButton"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00057"></a>00057 { <span class="stringliteral">"checkSendButton()"</span>, &amp;slot_0, QMetaData::Public }
+<a name="l00058"></a>00058 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod signal_0 = {<span class="stringliteral">"mailSent"</span>, 0, 0 };
+<a name="l00060"></a>00060 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData signal_tbl[] = {
+<a name="l00061"></a>00061 { <span class="stringliteral">"mailSent()"</span>, &amp;signal_0, QMetaData::Public }
+<a name="l00062"></a>00062 };
+<a name="l00063"></a>00063 metaObj = QMetaObject::new_metaobject(
+<a name="l00064"></a>00064 <span class="stringliteral">"KFeedbackDialog"</span>, parentObject,
+<a name="l00065"></a>00065 slot_tbl, 1,
+<a name="l00066"></a>00066 signal_tbl, 1,
+<a name="l00067"></a>00067 #ifndef QT_NO_PROPERTIES
+<a name="l00068"></a>00068 0, 0,
+<a name="l00069"></a>00069 0, 0,
+<a name="l00070"></a>00070 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00071"></a>00071 0, 0 );
+<a name="l00072"></a>00072 cleanUp_KFeedbackDialog.setMetaObject( metaObj );
+<a name="l00073"></a>00073 <span class="keywordflow">return</span> metaObj;
+<a name="l00074"></a>00074 }
+<a name="l00075"></a>00075
+<a name="l00076"></a>00076 <span class="keywordtype">void</span>* KFeedbackDialog::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00077"></a>00077 {
+<a name="l00078"></a>00078 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"KFeedbackDialog"</span> ) )
+<a name="l00079"></a>00079 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00080"></a>00080 <span class="keywordflow">return</span> KDialogBase::qt_cast( clname );
+<a name="l00081"></a>00081 }
+<a name="l00082"></a>00082
+<a name="l00083"></a>00083 <span class="comment">// SIGNAL mailSent</span>
+<a name="l00084"></a><a class="code" href="classKFeedbackDialog.html#962b0e6f0813c923c924bb9b81c8ba1b">00084</a> <span class="keywordtype">void</span> <a class="code" href="classKFeedbackDialog.html#962b0e6f0813c923c924bb9b81c8ba1b">KFeedbackDialog::mailSent</a>()
+<a name="l00085"></a>00085 {
+<a name="l00086"></a>00086 activate_signal( staticMetaObject()-&gt;signalOffset() + 0 );
+<a name="l00087"></a>00087 }
+<a name="l00088"></a>00088
+<a name="l00089"></a>00089 <span class="keywordtype">bool</span> KFeedbackDialog::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00090"></a>00090 {
+<a name="l00091"></a>00091 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00092"></a>00092 <span class="keywordflow">case</span> 0: <a class="code" href="classKFeedbackDialog.html#34f680000dbe1b4446bd647d51c3738d">checkSendButton</a>(); <span class="keywordflow">break</span>;
+<a name="l00093"></a>00093 <span class="keywordflow">default</span>:
+<a name="l00094"></a>00094 <span class="keywordflow">return</span> KDialogBase::qt_invoke( _id, _o );
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096 <span class="keywordflow">return</span> TRUE;
+<a name="l00097"></a>00097 }
+<a name="l00098"></a>00098
+<a name="l00099"></a>00099 <span class="keywordtype">bool</span> KFeedbackDialog::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00100"></a>00100 {
+<a name="l00101"></a>00101 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;signalOffset() ) {
+<a name="l00102"></a>00102 <span class="keywordflow">case</span> 0: <a class="code" href="classKFeedbackDialog.html#962b0e6f0813c923c924bb9b81c8ba1b">mailSent</a>(); <span class="keywordflow">break</span>;
+<a name="l00103"></a>00103 <span class="keywordflow">default</span>:
+<a name="l00104"></a>00104 <span class="keywordflow">return</span> KDialogBase::qt_emit(_id,_o);
+<a name="l00105"></a>00105 }
+<a name="l00106"></a>00106 <span class="keywordflow">return</span> TRUE;
+<a name="l00107"></a>00107 }
+<a name="l00108"></a>00108 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00109"></a>00109 <span class="preprocessor"></span>
+<a name="l00110"></a>00110 <span class="keywordtype">bool</span> KFeedbackDialog::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00111"></a>00111 {
+<a name="l00112"></a>00112 <span class="keywordflow">return</span> KDialogBase::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00113"></a>00113 }
+<a name="l00114"></a>00114
+<a name="l00115"></a>00115 <span class="keywordtype">bool</span> KFeedbackDialog::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00116"></a>00116 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+<a name="l00117"></a>00117 <span class="preprocessor"></span>
+<a name="l00118"></a>00118
+<a name="l00119"></a>00119 <span class="keyword">const</span> <span class="keywordtype">char</span> *KFeedbackForm::className()<span class="keyword"> const</span>
+<a name="l00120"></a>00120 <span class="keyword"></span>{
+<a name="l00121"></a>00121 <span class="keywordflow">return</span> <span class="stringliteral">"KFeedbackForm"</span>;
+<a name="l00122"></a>00122 }
+<a name="l00123"></a>00123
+<a name="l00124"></a>00124 QMetaObject *KFeedbackForm::metaObj = 0;
+<a name="l00125"></a>00125 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_KFeedbackForm( <span class="stringliteral">"KFeedbackForm"</span>, &amp;KFeedbackForm::staticMetaObject );
+<a name="l00126"></a>00126
+<a name="l00127"></a>00127 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00128"></a>00128 <span class="preprocessor"></span>QString KFeedbackForm::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00129"></a>00129 {
+<a name="l00130"></a>00130 <span class="keywordflow">if</span> ( qApp )
+<a name="l00131"></a>00131 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KFeedbackForm"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00132"></a>00132 <span class="keywordflow">else</span>
+<a name="l00133"></a>00133 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00134"></a>00134 }
+<a name="l00135"></a>00135 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00136"></a>00136 <span class="preprocessor"></span>QString KFeedbackForm::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00137"></a>00137 {
+<a name="l00138"></a>00138 <span class="keywordflow">if</span> ( qApp )
+<a name="l00139"></a>00139 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KFeedbackForm"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00140"></a>00140 <span class="keywordflow">else</span>
+<a name="l00141"></a>00141 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00142"></a>00142 }
+<a name="l00143"></a>00143 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00144"></a>00144 <span class="preprocessor"></span>
+<a name="l00145"></a>00145 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00146"></a>00146 <span class="preprocessor"></span>
+<a name="l00147"></a>00147 QMetaObject* KFeedbackForm::staticMetaObject()
+<a name="l00148"></a>00148 {
+<a name="l00149"></a>00149 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00150"></a>00150 <span class="keywordflow">return</span> metaObj;
+<a name="l00151"></a>00151 QMetaObject* parentObject = QVBox::staticMetaObject();
+<a name="l00152"></a>00152 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"sendMail"</span>, 0, 0 };
+<a name="l00153"></a>00153 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotCheckComplete"</span>, 0, 0 };
+<a name="l00154"></a>00154 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00155"></a>00155 { <span class="stringliteral">"sendMail()"</span>, &amp;slot_0, QMetaData::Public },
+<a name="l00156"></a>00156 { <span class="stringliteral">"slotCheckComplete()"</span>, &amp;slot_1, QMetaData::Protected }
+<a name="l00157"></a>00157 };
+<a name="l00158"></a>00158 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod signal_0 = {<span class="stringliteral">"mailSent"</span>, 0, 0 };
+<a name="l00159"></a>00159 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod signal_1 = {<span class="stringliteral">"checkComplete"</span>, 0, 0 };
+<a name="l00160"></a>00160 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData signal_tbl[] = {
+<a name="l00161"></a>00161 { <span class="stringliteral">"mailSent()"</span>, &amp;signal_0, QMetaData::Public },
+<a name="l00162"></a>00162 { <span class="stringliteral">"checkComplete()"</span>, &amp;signal_1, QMetaData::Public }
+<a name="l00163"></a>00163 };
+<a name="l00164"></a>00164 metaObj = QMetaObject::new_metaobject(
+<a name="l00165"></a>00165 <span class="stringliteral">"KFeedbackForm"</span>, parentObject,
+<a name="l00166"></a>00166 slot_tbl, 2,
+<a name="l00167"></a>00167 signal_tbl, 2,
+<a name="l00168"></a>00168 #ifndef QT_NO_PROPERTIES
+<a name="l00169"></a>00169 0, 0,
+<a name="l00170"></a>00170 0, 0,
+<a name="l00171"></a>00171 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00172"></a>00172 0, 0 );
+<a name="l00173"></a>00173 cleanUp_KFeedbackForm.setMetaObject( metaObj );
+<a name="l00174"></a>00174 <span class="keywordflow">return</span> metaObj;
+<a name="l00175"></a>00175 }
+<a name="l00176"></a>00176
+<a name="l00177"></a>00177 <span class="keywordtype">void</span>* KFeedbackForm::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00178"></a>00178 {
+<a name="l00179"></a>00179 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"KFeedbackForm"</span> ) )
+<a name="l00180"></a>00180 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00181"></a>00181 <span class="keywordflow">return</span> QVBox::qt_cast( clname );
+<a name="l00182"></a>00182 }
+<a name="l00183"></a>00183
+<a name="l00184"></a>00184 <span class="comment">// SIGNAL mailSent</span>
+<a name="l00185"></a><a class="code" href="classKFeedbackForm.html#ec2b411546d45e31c9b412f1fa6d8897">00185</a> <span class="keywordtype">void</span> <a class="code" href="classKFeedbackForm.html#ec2b411546d45e31c9b412f1fa6d8897">KFeedbackForm::mailSent</a>()
+<a name="l00186"></a>00186 {
+<a name="l00187"></a>00187 activate_signal( staticMetaObject()-&gt;signalOffset() + 0 );
+<a name="l00188"></a>00188 }
+<a name="l00189"></a>00189
+<a name="l00190"></a>00190 <span class="comment">// SIGNAL checkComplete</span>
+<a name="l00191"></a><a class="code" href="classKFeedbackForm.html#c328809367354cf8ff97e7c78b521345">00191</a> <span class="keywordtype">void</span> <a class="code" href="classKFeedbackForm.html#c328809367354cf8ff97e7c78b521345">KFeedbackForm::checkComplete</a>()
+<a name="l00192"></a>00192 {
+<a name="l00193"></a>00193 activate_signal( staticMetaObject()-&gt;signalOffset() + 1 );
+<a name="l00194"></a>00194 }
+<a name="l00195"></a>00195
+<a name="l00196"></a>00196 <span class="keywordtype">bool</span> KFeedbackForm::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00197"></a>00197 {
+<a name="l00198"></a>00198 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00199"></a>00199 <span class="keywordflow">case</span> 0: <a class="code" href="classKFeedbackForm.html#72b8b30801614c35e271c5e519f10c8b">sendMail</a>(); <span class="keywordflow">break</span>;
+<a name="l00200"></a>00200 <span class="keywordflow">case</span> 1: <a class="code" href="classKFeedbackForm.html#5ec1c36c978229b6e14e9005b595d69e">slotCheckComplete</a>(); <span class="keywordflow">break</span>;
+<a name="l00201"></a>00201 <span class="keywordflow">default</span>:
+<a name="l00202"></a>00202 <span class="keywordflow">return</span> QVBox::qt_invoke( _id, _o );
+<a name="l00203"></a>00203 }
+<a name="l00204"></a>00204 <span class="keywordflow">return</span> TRUE;
+<a name="l00205"></a>00205 }
+<a name="l00206"></a>00206
+<a name="l00207"></a>00207 <span class="keywordtype">bool</span> KFeedbackForm::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00208"></a>00208 {
+<a name="l00209"></a>00209 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;signalOffset() ) {
+<a name="l00210"></a>00210 <span class="keywordflow">case</span> 0: <a class="code" href="classKFeedbackForm.html#ec2b411546d45e31c9b412f1fa6d8897">mailSent</a>(); <span class="keywordflow">break</span>;
+<a name="l00211"></a>00211 <span class="keywordflow">case</span> 1: <a class="code" href="classKFeedbackForm.html#c328809367354cf8ff97e7c78b521345">checkComplete</a>(); <span class="keywordflow">break</span>;
+<a name="l00212"></a>00212 <span class="keywordflow">default</span>:
+<a name="l00213"></a>00213 <span class="keywordflow">return</span> QVBox::qt_emit(_id,_o);
+<a name="l00214"></a>00214 }
+<a name="l00215"></a>00215 <span class="keywordflow">return</span> TRUE;
+<a name="l00216"></a>00216 }
+<a name="l00217"></a>00217 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00218"></a>00218 <span class="preprocessor"></span>
+<a name="l00219"></a>00219 <span class="keywordtype">bool</span> KFeedbackForm::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00220"></a>00220 {
+<a name="l00221"></a>00221 <span class="keywordflow">return</span> QVBox::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00222"></a>00222 }
+<a name="l00223"></a>00223
+<a name="l00224"></a>00224 <span class="keywordtype">bool</span> KFeedbackForm::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00225"></a>00225 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+<a name="l00226"></a>00226 <span class="preprocessor"></span>
+<a name="l00227"></a>00227
+<a name="l00228"></a>00228 <span class="keyword">const</span> <span class="keywordtype">char</span> *KFeedbackQuestionList::className()<span class="keyword"> const</span>
+<a name="l00229"></a>00229 <span class="keyword"></span>{
+<a name="l00230"></a>00230 <span class="keywordflow">return</span> <span class="stringliteral">"KFeedbackQuestionList"</span>;
+<a name="l00231"></a>00231 }
+<a name="l00232"></a>00232
+<a name="l00233"></a>00233 QMetaObject *KFeedbackQuestionList::metaObj = 0;
+<a name="l00234"></a>00234 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_KFeedbackQuestionList( <span class="stringliteral">"KFeedbackQuestionList"</span>, &amp;KFeedbackQuestionList::staticMetaObject );
+<a name="l00235"></a>00235
+<a name="l00236"></a>00236 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00237"></a>00237 <span class="preprocessor"></span>QString KFeedbackQuestionList::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00238"></a>00238 {
+<a name="l00239"></a>00239 <span class="keywordflow">if</span> ( qApp )
+<a name="l00240"></a>00240 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KFeedbackQuestionList"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00241"></a>00241 <span class="keywordflow">else</span>
+<a name="l00242"></a>00242 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00243"></a>00243 }
+<a name="l00244"></a>00244 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00245"></a>00245 <span class="preprocessor"></span>QString KFeedbackQuestionList::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00246"></a>00246 {
+<a name="l00247"></a>00247 <span class="keywordflow">if</span> ( qApp )
+<a name="l00248"></a>00248 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KFeedbackQuestionList"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00249"></a>00249 <span class="keywordflow">else</span>
+<a name="l00250"></a>00250 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00251"></a>00251 }
+<a name="l00252"></a>00252 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00253"></a>00253 <span class="preprocessor"></span>
+<a name="l00254"></a>00254 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00255"></a>00255 <span class="preprocessor"></span>
+<a name="l00256"></a>00256 QMetaObject* KFeedbackQuestionList::staticMetaObject()
+<a name="l00257"></a>00257 {
+<a name="l00258"></a>00258 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00259"></a>00259 <span class="keywordflow">return</span> metaObj;
+<a name="l00260"></a>00260 QMetaObject* parentObject = QListView::staticMetaObject();
+<a name="l00261"></a>00261 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod signal_0 = {<span class="stringliteral">"checkComplete"</span>, 0, 0 };
+<a name="l00262"></a>00262 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData signal_tbl[] = {
+<a name="l00263"></a>00263 { <span class="stringliteral">"checkComplete()"</span>, &amp;signal_0, QMetaData::Public }
+<a name="l00264"></a>00264 };
+<a name="l00265"></a>00265 metaObj = QMetaObject::new_metaobject(
+<a name="l00266"></a>00266 <span class="stringliteral">"KFeedbackQuestionList"</span>, parentObject,
+<a name="l00267"></a>00267 0, 0,
+<a name="l00268"></a>00268 signal_tbl, 1,
+<a name="l00269"></a>00269 #ifndef QT_NO_PROPERTIES
+<a name="l00270"></a>00270 0, 0,
+<a name="l00271"></a>00271 0, 0,
+<a name="l00272"></a>00272 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00273"></a>00273 0, 0 );
+<a name="l00274"></a>00274 cleanUp_KFeedbackQuestionList.setMetaObject( metaObj );
+<a name="l00275"></a>00275 <span class="keywordflow">return</span> metaObj;
+<a name="l00276"></a>00276 }
+<a name="l00277"></a>00277
+<a name="l00278"></a>00278 <span class="keywordtype">void</span>* KFeedbackQuestionList::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00279"></a>00279 {
+<a name="l00280"></a>00280 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"KFeedbackQuestionList"</span> ) )
+<a name="l00281"></a>00281 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00282"></a>00282 <span class="keywordflow">return</span> QListView::qt_cast( clname );
+<a name="l00283"></a>00283 }
+<a name="l00284"></a>00284
+<a name="l00285"></a>00285 <span class="comment">// SIGNAL checkComplete</span>
+<a name="l00286"></a><a class="code" href="classKFeedbackQuestionList.html#7eb8b8f5254845e7a559b3da1fa34ba4">00286</a> <span class="keywordtype">void</span> <a class="code" href="classKFeedbackQuestionList.html#7eb8b8f5254845e7a559b3da1fa34ba4">KFeedbackQuestionList::checkComplete</a>()
+<a name="l00287"></a>00287 {
+<a name="l00288"></a>00288 activate_signal( staticMetaObject()-&gt;signalOffset() + 0 );
+<a name="l00289"></a>00289 }
+<a name="l00290"></a>00290
+<a name="l00291"></a>00291 <span class="keywordtype">bool</span> KFeedbackQuestionList::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00292"></a>00292 {
+<a name="l00293"></a>00293 <span class="keywordflow">return</span> QListView::qt_invoke(_id,_o);
+<a name="l00294"></a>00294 }
+<a name="l00295"></a>00295
+<a name="l00296"></a>00296 <span class="keywordtype">bool</span> KFeedbackQuestionList::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00297"></a>00297 {
+<a name="l00298"></a>00298 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;signalOffset() ) {
+<a name="l00299"></a>00299 <span class="keywordflow">case</span> 0: <a class="code" href="classKFeedbackQuestionList.html#7eb8b8f5254845e7a559b3da1fa34ba4">checkComplete</a>(); <span class="keywordflow">break</span>;
+<a name="l00300"></a>00300 <span class="keywordflow">default</span>:
+<a name="l00301"></a>00301 <span class="keywordflow">return</span> QListView::qt_emit(_id,_o);
+<a name="l00302"></a>00302 }
+<a name="l00303"></a>00303 <span class="keywordflow">return</span> TRUE;
+<a name="l00304"></a>00304 }
+<a name="l00305"></a>00305 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00306"></a>00306 <span class="preprocessor"></span>
+<a name="l00307"></a>00307 <span class="keywordtype">bool</span> KFeedbackQuestionList::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00308"></a>00308 {
+<a name="l00309"></a>00309 <span class="keywordflow">return</span> QListView::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00310"></a>00310 }
+<a name="l00311"></a>00311
+<a name="l00312"></a>00312 <span class="keywordtype">bool</span> KFeedbackQuestionList::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00313"></a>00313 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmail_8cpp-source.html b/doc/html/kshowmail_8cpp-source.html
new file mode 100644
index 0000000..3e71b49
--- /dev/null
+++ b/doc/html/kshowmail_8cpp-source.html
@@ -0,0 +1,822 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/kshowmail.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmail.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> kshowmail.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Sat May 6 12:13:57 MEST 2000</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2000-2002 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"></span>
+<a name="l00008"></a>00008 <span class="comment"> 26 Sep 2002 - Allow for columns to be hidden. Allistar Melville</span>
+<a name="l00009"></a>00009 <span class="comment"> ***************************************************************************/</span>
+<a name="l00010"></a>00010
+<a name="l00011"></a>00011 <span class="comment">/***************************************************************************</span>
+<a name="l00012"></a>00012 <span class="comment"> * *</span>
+<a name="l00013"></a>00013 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00014"></a>00014 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00015"></a>00015 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00016"></a>00016 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00017"></a>00017 <span class="comment"> * *</span>
+<a name="l00018"></a>00018 <span class="comment"> ***************************************************************************/</span>
+<a name="l00019"></a>00019
+<a name="l00020"></a>00020 <span class="preprocessor">#include "kshowmail.h"</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="keyword">using namespace </span>KIO;
+<a name="l00023"></a>00023
+<a name="l00024"></a>00024 KAboutData* <a class="code" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">KShowMailApp::m_pAbout</a>;
+<a name="l00025"></a>00025
+<a name="l00026"></a><a class="code" href="classKShowMailApp.html#e8728a02ab3a7e20cb1d256590788575">00026</a> <a class="code" href="classKShowMailApp.html#e8728a02ab3a7e20cb1d256590788575">KShowMailApp::KShowMailApp</a>()
+<a name="l00027"></a>00027 {
+<a name="l00028"></a>00028 <span class="comment">//set up actions</span>
+<a name="l00029"></a>00029 <a class="code" href="classKShowMailApp.html#4f13d29b34bf4dd08804489ad1f41a82">initActions</a>();
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031 <span class="comment">// create GUI from ui resource file</span>
+<a name="l00032"></a>00032 setXMLFile( <span class="stringliteral">"kshowmailui.rc"</span> );
+<a name="l00033"></a>00033 createGUI();
+<a name="l00034"></a>00034
+<a name="l00035"></a>00035 <span class="comment">//the main window settings will be saved automatically</span>
+<a name="l00036"></a>00036 setAutoSaveSettings();
+<a name="l00037"></a>00037
+<a name="l00038"></a>00038 <span class="comment">//initiate GUI parts</span>
+<a name="l00039"></a>00039 <a class="code" href="classKShowMailApp.html#daaa25d851b56449b16c942d099fbf86">initStatusBar</a>();
+<a name="l00040"></a>00040 <a class="code" href="classKShowMailApp.html#1187c5d08f904b1e6c7beff58c3e9d53">initDocument</a>();
+<a name="l00041"></a>00041 <a class="code" href="classKShowMailApp.html#4b1f509a80c9927f7701005685350a0a">initView</a>();
+<a name="l00042"></a>00042
+<a name="l00043"></a>00043 <span class="comment">//the application is idle at beginning</span>
+<a name="l00044"></a>00044 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>;
+<a name="l00045"></a>00045
+<a name="l00046"></a>00046 <span class="comment">//the setup dialog will be created in slotSetup() at first use</span>
+<a name="l00047"></a>00047 <a class="code" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">SetupDialog</a> = NULL;
+<a name="l00048"></a>00048
+<a name="l00049"></a>00049 <a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a> = <span class="keyword">new</span> QTimer (<span class="keyword">this</span>);
+<a name="l00050"></a>00050 <a class="code" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a> = NULL;
+<a name="l00051"></a>00051 <a class="code" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">m_pDockWindow</a> = <span class="keyword">new</span> <a class="code" href="classKShowMailDock.html">KShowMailDock</a> (<span class="keyword">this</span>, <a class="code" href="classKShowMailApp.html#cdd1b63955d1dd5c9d78d551fc86ef74">m_actionRefresh</a>);
+<a name="l00052"></a>00052 <a class="code" href="classKShowMailApp.html#f211146f325bcca8c7c680ad46c9aab8">m_bForceClose</a> = <span class="keyword">false</span>;
+<a name="l00053"></a>00053
+<a name="l00054"></a>00054
+<a name="l00055"></a>00055 <span class="comment">//read the setup</span>
+<a name="l00056"></a>00056 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#8ab66c254c66635f97df7e17882b4ab2">refreshSetup</a>( <a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a>-&gt;<a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a> );
+<a name="l00057"></a>00057
+<a name="l00058"></a>00058 <a class="code" href="classKShowMailApp.html#44df4c1a4b9217c4de1c6e3e80ce50c8">readOptions</a>();
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <span class="comment">//load stored mails</span>
+<a name="l00061"></a>00061 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#18b093749b6a474b68a4c2bfe952d65c">readStoredMails</a>();
+<a name="l00062"></a>00062
+<a name="l00063"></a>00063 <span class="comment">//connect signals with slots</span>
+<a name="l00064"></a>00064
+<a name="l00065"></a>00065 connect (<a class="code" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">m_pDockWindow</a>, SIGNAL (quitSelected ()), SLOT (<a class="code" href="classKShowMailApp.html#f94f8e79fcd9b35eea937b2533912e86">slotForceClose</a> ()));
+<a name="l00066"></a>00066 connect (<a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a>, SIGNAL (timeout ()), SLOT (<a class="code" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">slotRefresh</a> ()));
+<a name="l00067"></a>00067 connect (<a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a>-&gt;<a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>, SIGNAL (currentChanged(QListViewItem*)), SLOT(<a class="code" href="classKShowMailApp.html#03f1ae7df67069b5a7a9d54c39e94924">slotAccountActivated</a>(QListViewItem*)));
+<a name="l00068"></a>00068 connect (<a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a>, SIGNAL (signalActiveChanged()), SLOT (<a class="code" href="classKShowMailApp.html#68bebd7208b03fe4fe1aa23be83f7536">slotRefreshView</a>()));
+<a name="l00069"></a>00069
+<a name="l00070"></a>00070 connect( &amp;<a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>, SIGNAL( sigDeleteReady() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#a77267f88c63edad44b7e82d0b398fc6">slotDeletionReady</a>() ) );
+<a name="l00071"></a>00071 connect( &amp;<a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>, SIGNAL( sigShowBodiesReady() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#3b9805091025c531842807e28e29cc10">slotShowMessageReady</a>() ) );
+<a name="l00072"></a>00072 connect( &amp;<a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>, SIGNAL( sigMessageWindowOpened() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#86c54998aa412571f0b471efd32e8ef9">slotNormalCursor</a>() ) );
+<a name="l00073"></a>00073 connect( &amp;<a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>, SIGNAL( sigAllMessageWindowsClosed() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#36b54a32e442ec8bab250c3c87f08962">slotWaitingCursor</a>() ) );
+<a name="l00074"></a>00074 connect( &amp;<a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>, SIGNAL( sigRefreshReady() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#911c2c1823421973f97e4ea2cc51e710">slotRefreshReady</a>() ) );
+<a name="l00075"></a>00075
+<a name="l00076"></a>00076 <span class="comment">// this starts the one-second-interval timer</span>
+<a name="l00077"></a>00077 <span class="comment">// this is a QObject method</span>
+<a name="l00078"></a>00078 startTimer (1000);
+<a name="l00079"></a>00079
+<a name="l00080"></a>00080
+<a name="l00081"></a>00081 <span class="comment">//we are ready to take off! Lets initiate the first refresh (if desired)</span>
+<a name="l00082"></a>00082 <a class="code" href="classKShowMailApp.html#18e1fcab0be78c65bf68ba66109a30b6">initFirstRefresh</a>();
+<a name="l00083"></a>00083 }
+<a name="l00084"></a>00084
+<a name="l00085"></a><a class="code" href="classKShowMailApp.html#3b3759d8593576edfa0b3fab62ce26c0">00085</a> <a class="code" href="classKShowMailApp.html#3b3759d8593576edfa0b3fab62ce26c0">KShowMailApp::~KShowMailApp</a>()
+<a name="l00086"></a>00086 {
+<a name="l00087"></a>00087 kdDebug() &lt;&lt; <span class="stringliteral">"cleaning up"</span> &lt;&lt; endl;
+<a name="l00088"></a>00088 <span class="keyword">delete</span> <a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a>;
+<a name="l00089"></a>00089 <span class="keyword">delete</span> <a class="code" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">m_pDockWindow</a>;
+<a name="l00090"></a>00090 kdDebug() &lt;&lt; <span class="stringliteral">"cleanup finished"</span> &lt;&lt; endl;
+<a name="l00091"></a>00091 }
+<a name="l00092"></a>00092
+<a name="l00096"></a><a class="code" href="classKShowMailApp.html#79825417f6967185146c48de3278a80c">00096</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#79825417f6967185146c48de3278a80c">KShowMailApp::timerEvent</a> (QTimerEvent *)
+<a name="l00097"></a>00097 {
+<a name="l00098"></a>00098 <span class="keywordflow">if</span> (<a class="code" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a>)
+<a name="l00099"></a>00099 {
+<a name="l00100"></a>00100 QTime time;
+<a name="l00101"></a>00101 time = time.addSecs (<a class="code" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a>--);
+<a name="l00102"></a>00102 QCString msg (i18n(<span class="stringliteral">"Autorefresh: %1"</span>).arg (time.toString()));
+<a name="l00103"></a>00103 statusBar()-&gt;changeItem(msg, 3);
+<a name="l00104"></a>00104 }
+<a name="l00105"></a>00105 <span class="keywordflow">else</span>
+<a name="l00106"></a>00106 statusBar()-&gt;changeItem(<span class="stringliteral">""</span>, 3);
+<a name="l00107"></a>00107
+<a name="l00108"></a>00108 <span class="comment">// if busy, animate the traybar</span>
+<a name="l00109"></a>00109 <span class="keywordflow">if</span> ( <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> == <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa56592bd813e8e24cdf9c233a4cf26ebb691">refreshing</a> || <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> == <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565f49cd232f53f8851506c138924f2ec65">deleting</a> )
+<a name="l00110"></a>00110 {
+<a name="l00111"></a>00111 <span class="keyword">static</span> <span class="keywordtype">int</span> color = 0;
+<a name="l00112"></a>00112 color = (color+1)%2;
+<a name="l00113"></a>00113 <span class="keywordflow">switch</span> (color)
+<a name="l00114"></a>00114 {
+<a name="l00115"></a>00115 <span class="keywordflow">case</span> 0:
+<a name="l00116"></a>00116 <a class="code" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">m_pDockWindow</a>-&gt;<a class="code" href="classKShowMailDock.html#60d63eca3fd1c24df211f88839ab197c">clear</a> ();
+<a name="l00117"></a>00117 <span class="keywordflow">break</span>;
+<a name="l00118"></a>00118 <span class="keywordflow">default</span>:
+<a name="l00119"></a>00119 <a class="code" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">m_pDockWindow</a>-&gt;<a class="code" href="classKShowMailDock.html#c09e902133a084b547bdd29646a759b4">drawText</a> (<span class="stringliteral">"?"</span>, Qt::red);
+<a name="l00120"></a>00120 }
+<a name="l00121"></a>00121 }
+<a name="l00122"></a>00122 }
+<a name="l00123"></a>00123
+<a name="l00124"></a>00124
+<a name="l00125"></a>00125
+<a name="l00126"></a><a class="code" href="classKShowMailApp.html#4f13d29b34bf4dd08804489ad1f41a82">00126</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#4f13d29b34bf4dd08804489ad1f41a82">KShowMailApp::initActions</a> ()
+<a name="l00127"></a>00127 {
+<a name="l00128"></a>00128 <span class="comment">// file menu</span>
+<a name="l00129"></a>00129 <a class="code" href="classKShowMailApp.html#f9fddbbfc8033da2be1d31cc6247ebe0">m_actionSave</a> = KStdAction::saveOptions( <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#c97f2ac7f5c12aab46651f818f414109">slotSaveOptions</a>() ), actionCollection() );
+<a name="l00130"></a>00130 KStdAction::quit( <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#6d18177026c4c8d276e690c405c9fcd7">slotFileQuit</a>() ), actionCollection() );
+<a name="l00131"></a>00131
+<a name="l00132"></a>00132 <span class="comment">// action menu</span>
+<a name="l00133"></a>00133 <a class="code" href="classKShowMailApp.html#cdd1b63955d1dd5c9d78d551fc86ef74">m_actionRefresh</a> = <span class="keyword">new</span> KAction( i18n( <span class="stringliteral">"&amp;Refresh messages"</span> ), <span class="stringliteral">"reload"</span>, Key_F5, <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">slotRefresh</a>() ), actionCollection(), <span class="stringliteral">"refresh"</span> );
+<a name="l00134"></a>00134 <span class="keyword">new</span> KAction( i18n( <span class="stringliteral">"Show &amp;header of highlighted messages"</span> ), <span class="stringliteral">"letter-closed"</span>, Key_F2, <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#7b9553bf179124f9f1eb56bdd094b901">slotShowHeader</a>() ), actionCollection(), <span class="stringliteral">"show_header"</span> );
+<a name="l00135"></a>00135 <span class="keyword">new</span> KAction( i18n( <span class="stringliteral">"Show &amp;complete highlighted messages"</span> ), <span class="stringliteral">"letter-open"</span>, Key_F3, <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#34c235044988b2d43c0e43d249831dc1">slotShowMessage</a>() ), actionCollection(), <span class="stringliteral">"show_complete"</span> );
+<a name="l00136"></a>00136 <span class="keyword">new</span> KAction( i18n( <span class="stringliteral">"&amp;Delete highlighted messages"</span> ), <span class="stringliteral">"eraser"</span>, Key_Delete, <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#ad1a25c5c31f911f7c21b3aedc682e8e">slotDelete</a>() ), actionCollection(), <span class="stringliteral">"delete"</span> );
+<a name="l00137"></a>00137 <span class="keyword">new</span> KAction( i18n( <span class="stringliteral">"S&amp;top current transfer"</span> ), <span class="stringliteral">"stop"</span>, 0, <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#b9a90ef9062595e4cbebee5851206ec9">slotStop</a>() ), actionCollection(), <span class="stringliteral">"stop"</span> );
+<a name="l00138"></a>00138
+<a name="l00139"></a>00139 <span class="comment">// setup menu</span>
+<a name="l00140"></a>00140 KStdAction::preferences( <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#9d907211db6387cf6e395c22a9642c3b">slotSetup</a>() ), actionCollection() );
+<a name="l00141"></a>00141 <span class="keyword">new</span> KAction( i18n( <span class="stringliteral">"Setup &amp;filters"</span> ), <span class="stringliteral">"filter"</span>, 0, <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#a1a96dcbd8cfce09a85cc684950393ee">slotSetupFilters</a>() ), actionCollection(), <span class="stringliteral">"filters"</span> );
+<a name="l00142"></a>00142 KStdAction::configureToolbars( <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#772f86e96418116ac58943d1bb0c3acb">slotEditToolbars</a>() ), actionCollection() );
+<a name="l00143"></a>00143
+<a name="l00144"></a>00144 <span class="comment">//create menu items for toggle tool and status bar</span>
+<a name="l00145"></a>00145 setStandardToolBarMenuEnabled( <span class="keyword">true</span> );
+<a name="l00146"></a>00146 createStandardStatusBarAction();
+<a name="l00147"></a>00147
+<a name="l00148"></a>00148 <span class="comment">//help menu</span>
+<a name="l00149"></a>00149 <span class="keyword">new</span> KAction( i18n( <span class="stringliteral">"Send &amp;Feedback Mail"</span> ), <span class="stringliteral">"email"</span>, 0, <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#cb6b97d7b759372c2ab7690fc70d1518">slotSendFeedbackMail</a>() ),actionCollection(), <span class="stringliteral">"sendFeedback"</span> );
+<a name="l00150"></a>00150
+<a name="l00151"></a>00151 <span class="comment">//for account context menu</span>
+<a name="l00152"></a>00152 <span class="keyword">new</span> KAction(i18n( <span class="stringliteral">"Setup &amp;account"</span> ), <span class="stringliteral">"tool"</span>, 0, <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#65f99925664c07c6eafa2b375352ad34">slotSetupAccount</a>() ), actionCollection(), <span class="stringliteral">"setupAccount"</span> );
+<a name="l00153"></a>00153 }
+<a name="l00154"></a>00154
+<a name="l00155"></a><a class="code" href="classKShowMailApp.html#daaa25d851b56449b16c942d099fbf86">00155</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#daaa25d851b56449b16c942d099fbf86">KShowMailApp::initStatusBar</a>()
+<a name="l00156"></a>00156 {
+<a name="l00158"></a>00158 <span class="comment">// STATUSBAR</span>
+<a name="l00159"></a>00159 QCString user = getenv( <span class="stringliteral">"LOGNAME"</span> );
+<a name="l00160"></a>00160 QCString server = getenv( <span class="stringliteral">"HOSTNAME"</span> );
+<a name="l00161"></a>00161 QCString mesg (QString (<span class="stringliteral">"%1@%2"</span>).arg(user).arg(server));
+<a name="l00162"></a>00162
+<a name="l00163"></a>00163 statusBar()-&gt;insertItem(i18n(<span class="stringliteral">"Ready."</span>), 1);
+<a name="l00164"></a>00164 statusBar()-&gt;insertItem(mesg, 2, 1);
+<a name="l00165"></a>00165 statusBar()-&gt;insertItem(<span class="stringliteral">""</span>, 3);
+<a name="l00166"></a>00166 statusBar()-&gt;insertItem(<span class="stringliteral">""</span>, 4);
+<a name="l00167"></a>00167 }
+<a name="l00168"></a>00168
+<a name="l00169"></a><a class="code" href="classKShowMailApp.html#1187c5d08f904b1e6c7beff58c3e9d53">00169</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#1187c5d08f904b1e6c7beff58c3e9d53">KShowMailApp::initDocument</a>()
+<a name="l00170"></a>00170 {
+<a name="l00171"></a>00171 <a class="code" href="classKShowMailApp.html#326f322d7f82738efd2399f077fab6e2">m_pDoc</a> = <span class="keyword">new</span> <a class="code" href="classKshowmailDoc.html">KshowmailDoc</a>(<span class="keyword">this</span>);
+<a name="l00172"></a>00172 <a class="code" href="classKShowMailApp.html#326f322d7f82738efd2399f077fab6e2">m_pDoc</a>-&gt;<a class="code" href="classKshowmailDoc.html#929fdd9ad1f89ed9a000cf8c96d9f711">newDocument</a>();
+<a name="l00173"></a>00173 }
+<a name="l00174"></a>00174
+<a name="l00175"></a><a class="code" href="classKShowMailApp.html#4b1f509a80c9927f7701005685350a0a">00175</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#4b1f509a80c9927f7701005685350a0a">KShowMailApp::initView</a>()
+<a name="l00176"></a>00176 {
+<a name="l00178"></a>00178 <span class="comment">// create the main widget here that is managed by KMainWindow's view-region and</span>
+<a name="l00179"></a>00179 <span class="comment">// connect the widget to your document to display document contents.</span>
+<a name="l00180"></a>00180
+<a name="l00181"></a>00181 <a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a> = <span class="keyword">new</span> <a class="code" href="classKShowMailApp.html#95753bb48121b9a00bbbf185d46a5c1b">KshowmailView</a>(<span class="keyword">this</span>);
+<a name="l00182"></a>00182 <a class="code" href="classKShowMailApp.html#326f322d7f82738efd2399f077fab6e2">m_pDoc</a>-&gt;<a class="code" href="classKshowmailDoc.html#d9c7e004cad6927dd62d7a0d8f1f29b1">addView</a>(<a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a>);
+<a name="l00183"></a>00183 setCentralWidget(<a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a>);
+<a name="l00184"></a>00184 }
+<a name="l00185"></a>00185
+<a name="l00186"></a><a class="code" href="classKShowMailApp.html#c97f2ac7f5c12aab46651f818f414109">00186</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#c97f2ac7f5c12aab46651f818f414109">KShowMailApp::slotSaveOptions</a>()
+<a name="l00187"></a>00187 {
+<a name="l00188"></a>00188 KConfig* config = KGlobal::config();
+<a name="l00189"></a>00189
+<a name="l00190"></a>00190 <span class="comment">//order application parts to save their setup</span>
+<a name="l00191"></a>00191 <a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a>-&gt;<a class="code" href="classKshowmailView.html#53d81f575c855870a8112ec67ade5575">saveOptions</a>( config );
+<a name="l00192"></a>00192 <a class="code" href="classFilter.html#f7df8eed305a70107437c61ab6a328d6">Filter::saveOptions</a>( config );
+<a name="l00193"></a>00193 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#f4faa44af3bbe318a2623b3146dc2c2d">saveOptions</a> ();
+<a name="l00194"></a>00194
+<a name="l00195"></a>00195 <span class="comment">//save config to file</span>
+<a name="l00196"></a>00196 config-&gt;sync ();
+<a name="l00197"></a>00197
+<a name="l00198"></a>00198 <span class="comment">//disable save action</span>
+<a name="l00199"></a>00199 <a class="code" href="classKShowMailApp.html#f9fddbbfc8033da2be1d31cc6247ebe0">m_actionSave</a>-&gt;setEnabled( <span class="keyword">false</span> );
+<a name="l00200"></a>00200 }
+<a name="l00201"></a>00201
+<a name="l00202"></a><a class="code" href="classKShowMailApp.html#44df4c1a4b9217c4de1c6e3e80ce50c8">00202</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#44df4c1a4b9217c4de1c6e3e80ce50c8">KShowMailApp::readOptions</a>()
+<a name="l00203"></a>00203 {
+<a name="l00204"></a>00204 KConfig* config = KGlobal::config();
+<a name="l00205"></a>00205
+<a name="l00206"></a>00206 <a class="code" href="classFilter.html#8a623e7594c98dc82c711b1cf6c7ba3c">Filter::readOptions</a> (config);
+<a name="l00207"></a>00207 <a class="code" href="classKShowMailApp.html#f9fddbbfc8033da2be1d31cc6247ebe0">m_actionSave</a>-&gt;setEnabled (<span class="keyword">false</span>);
+<a name="l00208"></a>00208 }
+<a name="l00209"></a>00209
+<a name="l00210"></a><a class="code" href="classKShowMailApp.html#347ed7817554f0a8c6e078101ce1babb">00210</a> <span class="keywordtype">bool</span> <a class="code" href="classKShowMailApp.html#347ed7817554f0a8c6e078101ce1babb">KShowMailApp::queryClose</a>()
+<a name="l00211"></a>00211 {
+<a name="l00212"></a>00212 <span class="keywordtype">bool</span> result;
+<a name="l00213"></a>00213 kdDebug() &lt;&lt; <span class="stringliteral">"KShowMailApp::queryClose()"</span> &lt;&lt; endl;
+<a name="l00214"></a>00214
+<a name="l00215"></a>00215 <span class="keywordflow">if</span> (<a class="code" href="classKShowMailApp.html#f211146f325bcca8c7c680ad46c9aab8">m_bForceClose</a>) {
+<a name="l00216"></a>00216 <span class="comment">// We are forced to close app - so just do it</span>
+<a name="l00217"></a>00217 kdDebug() &lt;&lt; <span class="stringliteral">"forced exit"</span> &lt;&lt; endl;
+<a name="l00218"></a>00218 result = <span class="keyword">true</span>;
+<a name="l00219"></a>00219 } <span class="keywordflow">else</span> <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#fa610dea65deb4e7e26c01926e740e84">closeToTray</a>() ) {
+<a name="l00220"></a>00220 <span class="comment">// Don't close - close button must minimize the window</span>
+<a name="l00221"></a>00221 result = <span class="keyword">false</span>;
+<a name="l00222"></a>00222 kdDebug() &lt;&lt; <span class="stringliteral">"ignoring close request and minimizing the window"</span> &lt;&lt; endl;
+<a name="l00223"></a>00223 KMainWindow* w = memberList-&gt;first();
+<a name="l00224"></a>00224 w-&gt;hide();
+<a name="l00225"></a>00225 } <span class="keywordflow">else</span> {
+<a name="l00226"></a>00226 <span class="comment">// Need to ask user first</span>
+<a name="l00227"></a>00227 result = <a class="code" href="classKShowMailApp.html#d93e3467abdad835b02dde5f514c4013">askCloseConfirmation</a>();
+<a name="l00228"></a>00228 }
+<a name="l00229"></a>00229 <span class="keywordflow">return</span> result;
+<a name="l00230"></a>00230 }
+<a name="l00231"></a>00231
+<a name="l00232"></a><a class="code" href="classKShowMailApp.html#2e471542abbac9779cd38a4f63ec5187">00232</a> <span class="keywordtype">bool</span> <a class="code" href="classKShowMailApp.html#2e471542abbac9779cd38a4f63ec5187">KShowMailApp::queryExit</a>()
+<a name="l00233"></a>00233 {
+<a name="l00234"></a>00234 kdDebug() &lt;&lt; <span class="stringliteral">"KShowMailApp::queryExit()"</span> &lt;&lt; endl;
+<a name="l00235"></a>00235 <a class="code" href="classKShowMailApp.html#c97f2ac7f5c12aab46651f818f414109">slotSaveOptions</a> ();
+<a name="l00236"></a>00236
+<a name="l00237"></a>00237 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00238"></a>00238 }
+<a name="l00239"></a>00239
+<a name="l00241"></a>00241 <span class="comment">// SLOT IMPLEMENTATION</span>
+<a name="l00243"></a>00243 <span class="comment"></span>
+<a name="l00244"></a><a class="code" href="classKShowMailApp.html#6d18177026c4c8d276e690c405c9fcd7">00244</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#6d18177026c4c8d276e690c405c9fcd7">KShowMailApp::slotFileQuit</a>()
+<a name="l00245"></a>00245 {
+<a name="l00246"></a>00246 kdDebug () &lt;&lt; <span class="stringliteral">"KShowMailApp::slotFileQuit()"</span> &lt;&lt; endl;
+<a name="l00247"></a>00247 <span class="keywordflow">if</span>(memberList &amp;&amp; <a class="code" href="classKShowMailApp.html#d93e3467abdad835b02dde5f514c4013">askCloseConfirmation</a>())
+<a name="l00248"></a>00248 {
+<a name="l00249"></a>00249 <a class="code" href="classKShowMailApp.html#f211146f325bcca8c7c680ad46c9aab8">m_bForceClose</a> = <span class="keyword">true</span>; <span class="comment">// Forcing the closing</span>
+<a name="l00250"></a>00250 KMainWindow* w = memberList-&gt;first();
+<a name="l00251"></a>00251 w-&gt;close();
+<a name="l00252"></a>00252 }
+<a name="l00253"></a>00253 }
+<a name="l00254"></a>00254
+<a name="l00255"></a>00255
+<a name="l00256"></a><a class="code" href="classKShowMailApp.html#65f99925664c07c6eafa2b375352ad34">00256</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#65f99925664c07c6eafa2b375352ad34">KShowMailApp::slotSetupAccount</a>()
+<a name="l00257"></a>00257 {
+<a name="l00258"></a>00258 <span class="comment">//just open the dialog, if the app is idle</span>
+<a name="l00259"></a>00259 <span class="keywordflow">if</span> (<a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> != <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>)
+<a name="l00260"></a>00260 {
+<a name="l00261"></a>00261 kapp-&gt;beep();
+<a name="l00262"></a>00262 <span class="keywordflow">return</span>;
+<a name="l00263"></a>00263 }
+<a name="l00264"></a>00264
+<a name="l00265"></a>00265 <span class="comment">//set application state</span>
+<a name="l00266"></a>00266 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa5653cde4c681a768eef7df3659c849a34b6">configure</a>;
+<a name="l00267"></a>00267
+<a name="l00268"></a>00268 <span class="comment">//stop the refresh timer</span>
+<a name="l00269"></a>00269 <a class="code" href="classKShowMailApp.html#7ab6f6a1037c6d00e1fd0f8cdf966d47">stopRefreshTimer</a>();
+<a name="l00270"></a>00270
+<a name="l00271"></a>00271 <span class="comment">//get account to configure</span>
+<a name="l00272"></a>00272 <a class="code" href="classConfigElem.html">ConfigElem</a>* pConfig = <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#83776f91a264d92cea2b6f7ef0c02765">getSelectedAccount</a>();
+<a name="l00273"></a>00273
+<a name="l00274"></a>00274 <span class="keywordflow">if</span>( pConfig != NULL )
+<a name="l00275"></a>00275 {
+<a name="l00276"></a>00276 <span class="comment">//open dialog</span>
+<a name="l00277"></a>00277 <span class="comment">//the dialog sets the new options directly in the account</span>
+<a name="l00278"></a>00278 <a class="code" href="classServerDialog.html">ServerDialog</a> dlg( <span class="keyword">this</span>, pConfig );
+<a name="l00279"></a>00279
+<a name="l00280"></a>00280 <span class="keywordflow">if</span>( dlg.exec() == QDialog::Accepted )
+<a name="l00281"></a>00281 {
+<a name="l00282"></a>00282 <span class="comment">//if OK was clicked, refresh the account list view</span>
+<a name="l00283"></a>00283 <a class="code" href="classKShowMailApp.html#7655fe082dfda144367a152c58827c7f">slotConfChanged</a>();
+<a name="l00284"></a>00284 }
+<a name="l00285"></a>00285 }
+<a name="l00286"></a>00286
+<a name="l00287"></a>00287 <span class="comment">//we are ready, set application state to idle and initiate next refresh</span>
+<a name="l00288"></a>00288 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>;
+<a name="l00289"></a>00289 <a class="code" href="classKShowMailApp.html#c538f5c093b0c3dae4df29247d075dfc">initNextRefresh</a>();
+<a name="l00290"></a>00290 }
+<a name="l00291"></a>00291
+<a name="l00292"></a><a class="code" href="classKShowMailApp.html#03f1ae7df67069b5a7a9d54c39e94924">00292</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#03f1ae7df67069b5a7a9d54c39e94924">KShowMailApp::slotAccountActivated</a> (QListViewItem* pItem)
+<a name="l00293"></a>00293 {
+<a name="l00294"></a>00294 QPtrListIterator&lt;ConfigElem&gt; it(<a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>);
+<a name="l00295"></a>00295 <span class="comment">// this is = not == !!!</span>
+<a name="l00296"></a>00296 <span class="keywordflow">while</span> (<a class="code" href="classConfigElem.html">ConfigElem</a>* pConfig = it())
+<a name="l00297"></a>00297 {
+<a name="l00298"></a>00298 <span class="keywordflow">if</span> (pConfig-&gt;getListViewItem() == pItem)
+<a name="l00299"></a>00299 {
+<a name="l00300"></a>00300 setCaption (pConfig-&gt;getAccountName());
+<a name="l00301"></a>00301 <span class="keywordflow">return</span>;
+<a name="l00302"></a>00302 }
+<a name="l00303"></a>00303 }
+<a name="l00304"></a>00304 }
+<a name="l00305"></a>00305
+<a name="l00306"></a><a class="code" href="classKShowMailApp.html#073b29df0ea7fa4c1a5245dd87bd1b6c">00306</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#073b29df0ea7fa4c1a5245dd87bd1b6c">KShowMailApp::slotAlertDestroyed</a>()
+<a name="l00307"></a>00307 {
+<a name="l00308"></a>00308 <a class="code" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a> = NULL;
+<a name="l00309"></a>00309 }
+<a name="l00310"></a>00310
+<a name="l00311"></a><a class="code" href="classKShowMailApp.html#cb8e7126aec305899d7109863f99d6d4">00311</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#cb8e7126aec305899d7109863f99d6d4">KShowMailApp::slotAlertOk</a> ()
+<a name="l00312"></a>00312 {
+<a name="l00313"></a>00313 <span class="comment">//switch main window to normal view</span>
+<a name="l00314"></a>00314 showNormal();
+<a name="l00315"></a>00315 raise();
+<a name="l00316"></a>00316 }
+<a name="l00317"></a>00317
+<a name="l00318"></a><a class="code" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">00318</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">KShowMailApp::slotRefresh</a>()
+<a name="l00319"></a>00319 {
+<a name="l00320"></a>00320 <span class="comment">//return, if the app is not idle</span>
+<a name="l00321"></a>00321 <span class="keywordflow">if</span> ( <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> != <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a> )
+<a name="l00322"></a>00322 {
+<a name="l00323"></a>00323 kapp-&gt;beep();
+<a name="l00324"></a>00324 <a class="code" href="classKShowMailApp.html#c538f5c093b0c3dae4df29247d075dfc">initNextRefresh</a>();
+<a name="l00325"></a>00325 <span class="keywordflow">return</span>;
+<a name="l00326"></a>00326 }
+<a name="l00327"></a>00327
+<a name="l00328"></a>00328 <span class="comment">//stop the refresh timer</span>
+<a name="l00329"></a>00329 <a class="code" href="classKShowMailApp.html#7ab6f6a1037c6d00e1fd0f8cdf966d47">stopRefreshTimer</a>();
+<a name="l00330"></a>00330
+<a name="l00331"></a>00331 <span class="comment">//set the state</span>
+<a name="l00332"></a>00332 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa56592bd813e8e24cdf9c233a4cf26ebb691">refreshing</a>;
+<a name="l00333"></a>00333
+<a name="l00334"></a>00334 <span class="comment">//show status message</span>
+<a name="l00335"></a>00335 <a class="code" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">slotStatusMsg</a>( i18n( <span class="stringliteral">"Refreshing ..."</span> ) );
+<a name="l00336"></a>00336
+<a name="l00337"></a>00337 <span class="comment">//set waiting cursor</span>
+<a name="l00338"></a>00338 QApplication::setOverrideCursor( Qt::waitCursor );
+<a name="l00339"></a>00339
+<a name="l00340"></a>00340 <span class="comment">//order the account list to refresh its mail lists</span>
+<a name="l00341"></a>00341 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#563ce9fd520ec23325c3b7797ed6d0f1">refreshMailLists</a>();
+<a name="l00342"></a>00342
+<a name="l00343"></a>00343 <span class="keywordflow">return</span>;
+<a name="l00344"></a>00344 }
+<a name="l00345"></a>00345
+<a name="l00346"></a><a class="code" href="classKShowMailApp.html#b9a90ef9062595e4cbebee5851206ec9">00346</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#b9a90ef9062595e4cbebee5851206ec9">KShowMailApp::slotStop</a> ()
+<a name="l00347"></a>00347 {
+<a name="l00348"></a>00348 <span class="keywordflow">if</span> (<a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> == <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>)
+<a name="l00349"></a>00349 {
+<a name="l00350"></a>00350 kapp-&gt;beep ();
+<a name="l00351"></a>00351 <span class="keywordflow">return</span>;
+<a name="l00352"></a>00352 }
+<a name="l00353"></a>00353 kdDebug() &lt;&lt; <span class="stringliteral">"KShowMailApp::slotStop"</span> &lt;&lt; endl;
+<a name="l00354"></a>00354
+<a name="l00355"></a>00355 <span class="comment">//kill all running pop3 jobs</span>
+<a name="l00356"></a>00356 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#3c7523934753f98f3087ed4083df3ab2">killPOP3Jobs</a>();
+<a name="l00357"></a>00357
+<a name="l00358"></a>00358 <a class="code" href="classKShowMailApp.html#68bebd7208b03fe4fe1aa23be83f7536">slotRefreshView</a> ();
+<a name="l00359"></a>00359
+<a name="l00360"></a>00360 <span class="comment">// make sure the view is refreshed before the state gets idle again</span>
+<a name="l00361"></a>00361 <span class="comment">// bug #853651</span>
+<a name="l00362"></a>00362
+<a name="l00363"></a>00363 <span class="comment">//set state to idle</span>
+<a name="l00364"></a>00364 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>;
+<a name="l00365"></a>00365
+<a name="l00366"></a>00366 <span class="comment">//set normal cursor</span>
+<a name="l00367"></a>00367 <span class="comment">//might be more than one override cursor ...</span>
+<a name="l00368"></a>00368 <span class="keywordflow">while</span> (QApplication::overrideCursor())
+<a name="l00369"></a>00369 QApplication::restoreOverrideCursor ();
+<a name="l00370"></a>00370
+<a name="l00371"></a>00371 <span class="comment">//print status message</span>
+<a name="l00372"></a>00372 <a class="code" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">slotStatusMsg</a>(i18n(<span class="stringliteral">"Job was stopped"</span>));
+<a name="l00373"></a>00373 }
+<a name="l00374"></a>00374
+<a name="l00375"></a><a class="code" href="classKShowMailApp.html#68bebd7208b03fe4fe1aa23be83f7536">00375</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#68bebd7208b03fe4fe1aa23be83f7536">KShowMailApp::slotRefreshView</a> ()
+<a name="l00376"></a>00376 {
+<a name="l00377"></a>00377
+<a name="l00378"></a>00378 <span class="comment">//clear mail list view</span>
+<a name="l00379"></a>00379 <a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a>-&gt;<a class="code" href="classKshowmailView.html#5cc4e2c1caaf6fae6af80b068aada95e">clearMailListView</a>();
+<a name="l00380"></a>00380
+<a name="l00381"></a>00381 <span class="comment">//fill mail list view</span>
+<a name="l00382"></a>00382 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#1db2530c553952aef3c23483dd6b6567">fillMailListView</a>( <a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a> );
+<a name="l00383"></a>00383
+<a name="l00384"></a>00384 <span class="comment">//refresh account list</span>
+<a name="l00385"></a>00385 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#b3d5530c7419f6aa4b43e4247f3036a5">refreshAccountList</a>();
+<a name="l00386"></a>00386
+<a name="l00387"></a>00387 <span class="comment">//get some informations</span>
+<a name="l00388"></a>00388 <span class="keywordtype">int</span> numberMails = <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#493eec8637f0f34fb25e13d07b6d838a">getNumberMails</a>();
+<a name="l00389"></a>00389 <span class="keywordtype">bool</span> hasNewMails = <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#c68944845fe63749fc073947fbdd44d6">getNumberNewMails</a>() &gt; 0;
+<a name="l00390"></a>00390
+<a name="l00391"></a>00391 <span class="comment">//draw number of mails into dock</span>
+<a name="l00392"></a>00392 <span class="keywordflow">if</span>( hasNewMails )
+<a name="l00393"></a>00393 <span class="comment">//draw red number, because we have new mails</span>
+<a name="l00394"></a>00394 <a class="code" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">m_pDockWindow</a>-&gt;<a class="code" href="classKShowMailDock.html#c7a2ffc8a1356b33c3a71a8e1dcb08e5">drawNumber</a>( numberMails, Qt::red );
+<a name="l00395"></a>00395 <span class="keywordflow">else</span>
+<a name="l00396"></a>00396 <span class="comment">//we haven't new mails, draw black</span>
+<a name="l00397"></a>00397 <a class="code" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">m_pDockWindow</a>-&gt;<a class="code" href="classKShowMailDock.html#c7a2ffc8a1356b33c3a71a8e1dcb08e5">drawNumber</a>( numberMails, Qt::black );
+<a name="l00398"></a>00398
+<a name="l00399"></a>00399 <span class="comment">//show message in status bar</span>
+<a name="l00400"></a>00400 <span class="keywordtype">long</span> totalSize = <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#2e6d8a00456ca4b61ddba18ab419dd38">getTotalSize</a>();
+<a name="l00401"></a>00401 <a class="code" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">slotStatusMsg</a>( i18n( <span class="stringliteral">"%1 message(s) with a total of %2 bytes are waiting"</span> ).arg( numberMails ).arg( totalSize ) );
+<a name="l00402"></a>00402 }
+<a name="l00403"></a>00403
+<a name="l00404"></a><a class="code" href="classKShowMailApp.html#ad1a25c5c31f911f7c21b3aedc682e8e">00404</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#ad1a25c5c31f911f7c21b3aedc682e8e">KShowMailApp::slotDelete</a>()
+<a name="l00405"></a>00405 {
+<a name="l00406"></a>00406 <span class="comment">//just delete, if no operation is running</span>
+<a name="l00407"></a>00407 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> != <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a> )
+<a name="l00408"></a>00408 {
+<a name="l00409"></a>00409 kapp-&gt;beep();
+<a name="l00410"></a>00410 <span class="keywordflow">return</span>;
+<a name="l00411"></a>00411 }
+<a name="l00412"></a>00412
+<a name="l00413"></a>00413 <span class="comment">//return, if no mails are selected</span>
+<a name="l00414"></a>00414 <span class="keywordflow">if</span>( !<a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#d80765bfadbd675b9b89ebdec0cf3566">hasSelectedMails</a>() )
+<a name="l00415"></a>00415 <span class="keywordflow">return</span>;
+<a name="l00416"></a>00416
+<a name="l00417"></a>00417 <span class="comment">//confirm deletion if required</span>
+<a name="l00418"></a>00418 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#a466577c54fec821ff484a378ce32e98">confirmDeletion</a>() )
+<a name="l00419"></a>00419 {
+<a name="l00420"></a>00420 <span class="comment">//get subjects off all selected mails</span>
+<a name="l00421"></a>00421 QStringList subjects = <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#d489b548662d865fe34686507dc801ef">getSelectedSubjects</a>();
+<a name="l00422"></a>00422
+<a name="l00423"></a>00423 <span class="comment">//show question</span>
+<a name="l00424"></a>00424 <span class="keywordtype">int</span> answer = KMessageBox::questionYesNoList( <span class="keyword">this</span>, i18n( <span class="stringliteral">"Do you want to delete these mails?"</span>), subjects, i18n( <span class="stringliteral">"Delete?"</span> ) );
+<a name="l00425"></a>00425
+<a name="l00426"></a>00426 <span class="keywordflow">if</span>( answer == KMessageBox::No )
+<a name="l00427"></a>00427 <span class="keywordflow">return</span>;
+<a name="l00428"></a>00428 }
+<a name="l00429"></a>00429
+<a name="l00430"></a>00430 <span class="comment">//set the state</span>
+<a name="l00431"></a>00431 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565f49cd232f53f8851506c138924f2ec65">deleting</a>;
+<a name="l00432"></a>00432
+<a name="l00433"></a>00433 <span class="comment">//show status message</span>
+<a name="l00434"></a>00434 <a class="code" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">slotStatusMsg</a>( i18n( <span class="stringliteral">"Deleting Mail(s) ..."</span> ) );
+<a name="l00435"></a>00435
+<a name="l00436"></a>00436 <span class="comment">//set waiting cursor</span>
+<a name="l00437"></a>00437 QApplication::setOverrideCursor( Qt::waitCursor );
+<a name="l00438"></a>00438
+<a name="l00439"></a>00439 <span class="comment">//order the account list to delete the selected mails</span>
+<a name="l00440"></a>00440 <span class="comment">//test!</span>
+<a name="l00441"></a>00441 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#ac13c19975a07aa87da0047cc66b4ce1">deleteSelectedMails</a>();
+<a name="l00442"></a>00442 }
+<a name="l00443"></a>00443
+<a name="l00444"></a><a class="code" href="classKShowMailApp.html#7b9553bf179124f9f1eb56bdd094b901">00444</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#7b9553bf179124f9f1eb56bdd094b901">KShowMailApp::slotShowHeader</a> ()
+<a name="l00445"></a>00445 {
+<a name="l00446"></a>00446 <span class="comment">//only show headers, if the app is idle</span>
+<a name="l00447"></a>00447 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> != <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a> )
+<a name="l00448"></a>00448 {
+<a name="l00449"></a>00449 kapp-&gt;beep ();
+<a name="l00450"></a>00450 <span class="keywordflow">return</span>;
+<a name="l00451"></a>00451 }
+<a name="l00452"></a>00452
+<a name="l00453"></a>00453 <span class="comment">//show the headers</span>
+<a name="l00454"></a>00454 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#9578f65f771482e727dfb3e1da861aa3">showSelectedHeaders</a>();
+<a name="l00455"></a>00455
+<a name="l00456"></a>00456 }
+<a name="l00457"></a>00457
+<a name="l00458"></a><a class="code" href="classKShowMailApp.html#34c235044988b2d43c0e43d249831dc1">00458</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#34c235044988b2d43c0e43d249831dc1">KShowMailApp::slotShowMessage</a> ()
+<a name="l00459"></a>00459 {
+<a name="l00460"></a>00460 <span class="comment">//return, if application is not idle</span>
+<a name="l00461"></a>00461 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> != <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a> )
+<a name="l00462"></a>00462 {
+<a name="l00463"></a>00463 kapp-&gt;beep ();
+<a name="l00464"></a>00464 <span class="keywordflow">return</span>;
+<a name="l00465"></a>00465 }
+<a name="l00466"></a>00466
+<a name="l00467"></a>00467 <span class="comment">//return, if no mails are selected</span>
+<a name="l00468"></a>00468 <span class="keywordflow">if</span>( !<a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#d80765bfadbd675b9b89ebdec0cf3566">hasSelectedMails</a>() )
+<a name="l00469"></a>00469 <span class="keywordflow">return</span>;
+<a name="l00470"></a>00470
+<a name="l00471"></a>00471 <span class="comment">//set the state</span>
+<a name="l00472"></a>00472 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa5655ee02dbb2bbc5f45a1a2517f7536c77c">showing</a>;
+<a name="l00473"></a>00473
+<a name="l00474"></a>00474 <span class="comment">//show status message</span>
+<a name="l00475"></a>00475 <a class="code" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">slotStatusMsg</a>( i18n( <span class="stringliteral">"Downloading ..."</span> ) );
+<a name="l00476"></a>00476
+<a name="l00477"></a>00477 <span class="comment">//set waiting cursor</span>
+<a name="l00478"></a>00478 QApplication::setOverrideCursor( Qt::waitCursor );
+<a name="l00479"></a>00479
+<a name="l00480"></a>00480 <span class="comment">//order the account list to show the selected mails</span>
+<a name="l00481"></a>00481 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#69be8d63f8363fe9c727ebdaeb9eb7fa">showSelectedMails</a>();
+<a name="l00482"></a>00482 }
+<a name="l00483"></a>00483
+<a name="l00484"></a><a class="code" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">00484</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">KShowMailApp::slotStatusMsg</a>(<span class="keyword">const</span> QString&amp; text)
+<a name="l00485"></a>00485 {
+<a name="l00486"></a>00486 <span class="comment">//get current time</span>
+<a name="l00487"></a>00487 <span class="comment">// added by Gustavo Zamorano to include time</span>
+<a name="l00488"></a>00488 QString sTime = QTime::currentTime ().toString ();
+<a name="l00489"></a>00489
+<a name="l00490"></a>00490 <span class="comment">//clear status bar</span>
+<a name="l00491"></a>00491 statusBar()-&gt;clear();
+<a name="l00492"></a>00492
+<a name="l00493"></a>00493 <span class="comment">//set given text</span>
+<a name="l00494"></a>00494 statusBar()-&gt;changeItem(text, 1);
+<a name="l00495"></a>00495
+<a name="l00496"></a>00496 <span class="comment">//set current time</span>
+<a name="l00497"></a>00497 statusBar()-&gt;changeItem(sTime, 4);
+<a name="l00498"></a>00498 }
+<a name="l00499"></a>00499
+<a name="l00500"></a><a class="code" href="classKShowMailApp.html#1b373417eded77fcd51e23c0dca87467">00500</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#1b373417eded77fcd51e23c0dca87467">KShowMailApp::slotStatusHelpMsg</a>(<span class="keyword">const</span> QString &amp;text)
+<a name="l00501"></a>00501 {
+<a name="l00502"></a>00502 statusBar()-&gt;message(text, 2000);
+<a name="l00503"></a>00503 }
+<a name="l00504"></a>00504
+<a name="l00505"></a>00505
+<a name="l00506"></a>00506
+<a name="l00507"></a>00507
+<a name="l00508"></a><a class="code" href="classKShowMailApp.html#716d32f4f37dd7b97f0e73a6c124caeb">00508</a> <span class="keywordtype">bool</span> <a class="code" href="classKShowMailApp.html#716d32f4f37dd7b97f0e73a6c124caeb">KShowMailApp::event</a>(QEvent *e)
+<a name="l00509"></a>00509 {
+<a name="l00510"></a>00510 <span class="comment">// to hide the taskbar button; any better solution ??</span>
+<a name="l00511"></a>00511 <span class="keywordflow">if</span> ((e-&gt;type() == QEvent::Hide) &amp;&amp; <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#c64e08e3c1469622763dd462612a83ca">minimizesToTray</a>() ) {
+<a name="l00512"></a>00512 hide ();
+<a name="l00513"></a>00513 }
+<a name="l00514"></a>00514
+<a name="l00515"></a>00515 <span class="keywordflow">return</span>(KMainWindow::event(e));
+<a name="l00516"></a>00516 }
+<a name="l00517"></a>00517
+<a name="l00518"></a><a class="code" href="classKShowMailApp.html#a1a96dcbd8cfce09a85cc684950393ee">00518</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#a1a96dcbd8cfce09a85cc684950393ee">KShowMailApp::slotSetupFilters</a> ()
+<a name="l00519"></a>00519 {
+<a name="l00520"></a>00520 <span class="keywordflow">if</span> (<a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> != <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>)
+<a name="l00521"></a>00521 {
+<a name="l00522"></a>00522 kapp-&gt;beep ();
+<a name="l00523"></a>00523 <span class="keywordflow">return</span>;
+<a name="l00524"></a>00524 }
+<a name="l00525"></a>00525 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa5653cde4c681a768eef7df3659c849a34b6">configure</a>;
+<a name="l00526"></a>00526 <a class="code" href="classFilterDialog.html">FilterDialog</a> dlg (<span class="keyword">this</span>, <span class="stringliteral">"Filters"</span>);
+<a name="l00527"></a>00527 <span class="keywordflow">if</span> (dlg.exec () == QDialog::Accepted)
+<a name="l00528"></a>00528 <a class="code" href="classKShowMailApp.html#f9fddbbfc8033da2be1d31cc6247ebe0">m_actionSave</a>-&gt;setEnabled (<span class="keyword">true</span>);
+<a name="l00529"></a>00529 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>;
+<a name="l00530"></a>00530 }
+<a name="l00531"></a>00531
+<a name="l00532"></a><a class="code" href="classKShowMailApp.html#f94f8e79fcd9b35eea937b2533912e86">00532</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#f94f8e79fcd9b35eea937b2533912e86">KShowMailApp::slotForceClose</a>()
+<a name="l00533"></a>00533 {
+<a name="l00534"></a>00534 <a class="code" href="classKShowMailApp.html#f211146f325bcca8c7c680ad46c9aab8">m_bForceClose</a> = <span class="keyword">true</span>;
+<a name="l00535"></a>00535 }
+<a name="l00536"></a>00536
+<a name="l00537"></a><a class="code" href="classKShowMailApp.html#d93e3467abdad835b02dde5f514c4013">00537</a> <span class="keywordtype">bool</span> <a class="code" href="classKShowMailApp.html#d93e3467abdad835b02dde5f514c4013">KShowMailApp::askCloseConfirmation</a>()
+<a name="l00538"></a>00538 {
+<a name="l00539"></a>00539 <span class="keywordtype">bool</span> result;
+<a name="l00540"></a>00540
+<a name="l00541"></a>00541 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#4886c3988fef0e227cd03af094b21415">confirmClose</a>() ) {
+<a name="l00542"></a>00542 <span class="comment">// Need to ask user</span>
+<a name="l00543"></a>00543 result = (KMessageBox::questionYesNo (<span class="keyword">this</span>, i18n (<span class="stringliteral">"KShowmail will be closed.\n"</span>
+<a name="l00544"></a>00544 <span class="stringliteral">"Are you sure?"</span>)) == KMessageBox::Yes);
+<a name="l00545"></a>00545 } <span class="keywordflow">else</span> {
+<a name="l00546"></a>00546 <span class="comment">// User doesn't want to be asked - just close it</span>
+<a name="l00547"></a>00547 result = <span class="keyword">true</span>;
+<a name="l00548"></a>00548 }
+<a name="l00549"></a>00549
+<a name="l00550"></a>00550 <span class="keywordflow">return</span> result;
+<a name="l00551"></a>00551 }
+<a name="l00552"></a>00552
+<a name="l00553"></a><a class="code" href="classKShowMailApp.html#a77267f88c63edad44b7e82d0b398fc6">00553</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#a77267f88c63edad44b7e82d0b398fc6">KShowMailApp::slotDeletionReady</a>( )
+<a name="l00554"></a>00554 {
+<a name="l00555"></a>00555 <span class="comment">//set state to idle</span>
+<a name="l00556"></a>00556 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>;
+<a name="l00557"></a>00557
+<a name="l00558"></a>00558 <span class="comment">//set normal cursor</span>
+<a name="l00559"></a>00559 <span class="keywordflow">while</span>( QApplication::overrideCursor() )
+<a name="l00560"></a>00560 QApplication::restoreOverrideCursor();
+<a name="l00561"></a>00561
+<a name="l00562"></a>00562 <span class="comment">//show status message</span>
+<a name="l00563"></a>00563 <a class="code" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">slotStatusMsg</a>( i18n( <span class="stringliteral">"Ready."</span> ) );
+<a name="l00564"></a>00564
+<a name="l00565"></a>00565 <span class="comment">//refresh mail list</span>
+<a name="l00566"></a>00566 <a class="code" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">slotRefresh</a>();
+<a name="l00567"></a>00567 }
+<a name="l00568"></a>00568
+<a name="l00569"></a><a class="code" href="classKShowMailApp.html#3b9805091025c531842807e28e29cc10">00569</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#3b9805091025c531842807e28e29cc10">KShowMailApp::slotShowMessageReady</a>( )
+<a name="l00570"></a>00570 {
+<a name="l00571"></a>00571 <span class="comment">//set state to idle</span>
+<a name="l00572"></a>00572 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>;
+<a name="l00573"></a>00573
+<a name="l00574"></a>00574 <span class="comment">//set normal cursor</span>
+<a name="l00575"></a>00575 <span class="keywordflow">while</span>( QApplication::overrideCursor() )
+<a name="l00576"></a>00576 QApplication::restoreOverrideCursor();
+<a name="l00577"></a>00577
+<a name="l00578"></a>00578 <span class="comment">//show status message</span>
+<a name="l00579"></a>00579 <a class="code" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">slotStatusMsg</a>( i18n( <span class="stringliteral">"Ready."</span> ) );
+<a name="l00580"></a>00580
+<a name="l00581"></a>00581
+<a name="l00582"></a>00582 }
+<a name="l00583"></a>00583
+<a name="l00584"></a><a class="code" href="classKShowMailApp.html#86c54998aa412571f0b471efd32e8ef9">00584</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#86c54998aa412571f0b471efd32e8ef9">KShowMailApp::slotNormalCursor</a>( )
+<a name="l00585"></a>00585 {
+<a name="l00586"></a>00586 <span class="comment">//set normal cursor</span>
+<a name="l00587"></a>00587 <span class="keywordflow">while</span>( QApplication::overrideCursor() )
+<a name="l00588"></a>00588 QApplication::restoreOverrideCursor();
+<a name="l00589"></a>00589
+<a name="l00590"></a>00590 }
+<a name="l00591"></a>00591
+<a name="l00592"></a><a class="code" href="classKShowMailApp.html#36b54a32e442ec8bab250c3c87f08962">00592</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#36b54a32e442ec8bab250c3c87f08962">KShowMailApp::slotWaitingCursor</a>( )
+<a name="l00593"></a>00593 {
+<a name="l00594"></a>00594 <span class="comment">//set waiting cursor</span>
+<a name="l00595"></a>00595 QApplication::setOverrideCursor( Qt::waitCursor );
+<a name="l00596"></a>00596 }
+<a name="l00597"></a>00597
+<a name="l00598"></a><a class="code" href="classKShowMailApp.html#911c2c1823421973f97e4ea2cc51e710">00598</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#911c2c1823421973f97e4ea2cc51e710">KShowMailApp::slotRefreshReady</a>( )
+<a name="l00599"></a>00599 {
+<a name="l00600"></a>00600 <span class="comment">//set state to idle</span>
+<a name="l00601"></a>00601 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>;
+<a name="l00602"></a>00602
+<a name="l00603"></a>00603 <span class="comment">//set normal cursor</span>
+<a name="l00604"></a>00604 <span class="keywordflow">while</span>( QApplication::overrideCursor() )
+<a name="l00605"></a>00605 QApplication::restoreOverrideCursor();
+<a name="l00606"></a>00606
+<a name="l00607"></a>00607 <span class="comment">//refresh mail list view</span>
+<a name="l00608"></a>00608 <a class="code" href="classKShowMailApp.html#68bebd7208b03fe4fe1aa23be83f7536">slotRefreshView</a>();
+<a name="l00609"></a>00609
+<a name="l00610"></a>00610 <span class="comment">//inform the user about new mails</span>
+<a name="l00611"></a>00611 <span class="keywordtype">bool</span> hasNewMails = <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#c68944845fe63749fc073947fbdd44d6">getNumberNewMails</a>() &gt; 0;
+<a name="l00612"></a>00612 <span class="keywordflow">if</span> ( hasNewMails )
+<a name="l00613"></a>00613 {
+<a name="l00614"></a>00614 <span class="comment">//show main window if desired</span>
+<a name="l00615"></a>00615 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#b4021a1f9087d447649a362d8779ec34">showMainWindowForNewMails</a>() )
+<a name="l00616"></a>00616 {
+<a name="l00617"></a>00617 showNormal();
+<a name="l00618"></a>00618 raise();
+<a name="l00619"></a>00619 }
+<a name="l00620"></a>00620
+<a name="l00621"></a>00621 <span class="comment">//get out some sounds</span>
+<a name="l00622"></a>00622 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#28739bc3cd7ce87dbd7f994081375a41">beep</a>();
+<a name="l00623"></a>00623 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#5e7a5e2323ebbbad7d960bae9814ce5d">playSound</a>();
+<a name="l00624"></a>00624
+<a name="l00625"></a>00625 <span class="comment">//execute a command</span>
+<a name="l00626"></a>00626 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#01cf49eac83ba56d1f9b3fbaa6bf4648">executeNewMailCommand</a>();
+<a name="l00627"></a>00627
+<a name="l00628"></a>00628 <span class="comment">//show alert message if desired</span>
+<a name="l00629"></a>00629 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#2270af8a5ce1740958f0f0b39359051f">showAlertMessageForNewMails</a>() )
+<a name="l00630"></a>00630 {
+<a name="l00631"></a>00631 <span class="comment">//have we created one already?</span>
+<a name="l00632"></a>00632 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a> != NULL )
+<a name="l00633"></a>00633 {
+<a name="l00634"></a>00634 <span class="comment">//yes, we have one</span>
+<a name="l00635"></a>00635 <a class="code" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a>-&gt;show();
+<a name="l00636"></a>00636 <a class="code" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a>-&gt;raise();
+<a name="l00637"></a>00637 }
+<a name="l00638"></a>00638 <span class="keywordflow">else</span>
+<a name="l00639"></a>00639 {
+<a name="l00640"></a>00640 <span class="comment">//create a message dialog</span>
+<a name="l00641"></a>00641 <a class="code" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a> = <span class="keyword">new</span> <a class="code" href="classAlertDialog.html">AlertDialog</a>( <span class="keyword">this</span> );
+<a name="l00642"></a>00642 connect( <a class="code" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a>, SIGNAL( destroyed() ), SLOT( <a class="code" href="classKShowMailApp.html#073b29df0ea7fa4c1a5245dd87bd1b6c">slotAlertDestroyed</a>() ) );
+<a name="l00643"></a>00643 connect( <a class="code" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a>, SIGNAL( signalOk() ), SLOT( <a class="code" href="classKShowMailApp.html#cb8e7126aec305899d7109863f99d6d4">slotAlertOk</a>() ) );
+<a name="l00644"></a>00644 }
+<a name="l00645"></a>00645 }
+<a name="l00646"></a>00646
+<a name="l00647"></a>00647 }
+<a name="l00648"></a>00648 <span class="keywordflow">else</span>
+<a name="l00649"></a>00649 {
+<a name="l00650"></a>00650 <span class="comment">//no new mails was received</span>
+<a name="l00651"></a>00651 <span class="comment">//perform configured actions</span>
+<a name="l00652"></a>00652
+<a name="l00653"></a>00653 <span class="comment">//terminate app if desired</span>
+<a name="l00654"></a>00654 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#e24d2fa3175996ba24faa1ed1efcf35a">quitNoNewMails</a>() )
+<a name="l00655"></a>00655 <a class="code" href="classKShowMailApp.html#6d18177026c4c8d276e690c405c9fcd7">slotFileQuit</a>();
+<a name="l00656"></a>00656 <span class="keywordflow">else</span> <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#94f99e48dfcc902ef18ea7310f395beb">minimizeMainWindowNoNewMails</a>() )
+<a name="l00657"></a>00657 {
+<a name="l00658"></a>00658 showMinimized();
+<a name="l00659"></a>00659 hide();
+<a name="l00660"></a>00660 }
+<a name="l00661"></a>00661 }
+<a name="l00662"></a>00662
+<a name="l00663"></a>00663 <span class="comment">//show status message</span>
+<a name="l00664"></a>00664 <a class="code" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">slotStatusMsg</a>( i18n( <span class="stringliteral">"Ready."</span> ) );
+<a name="l00665"></a>00665
+<a name="l00666"></a>00666
+<a name="l00667"></a>00667 <span class="comment">//prepare next refresh cycle</span>
+<a name="l00668"></a>00668 <a class="code" href="classKShowMailApp.html#c538f5c093b0c3dae4df29247d075dfc">initNextRefresh</a>();
+<a name="l00669"></a>00669
+<a name="l00670"></a>00670 <span class="comment">//apply filters</span>
+<a name="l00671"></a>00671 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#439057b64856d457b9d9a4d9d381509f">applyFilters</a>();
+<a name="l00672"></a>00672
+<a name="l00673"></a>00673 <span class="comment">//perform automatic delete if desired</span>
+<a name="l00674"></a>00674 <span class="keywordflow">if</span> (<a class="code" href="classFilter.html#13f81ff1452d6cdc1076393813163df5">Filter::_status</a> == Filter::automatic)
+<a name="l00675"></a>00675 {
+<a name="l00676"></a>00676 <a class="code" href="classKShowMailApp.html#ad1a25c5c31f911f7c21b3aedc682e8e">slotDelete</a> ();
+<a name="l00677"></a>00677 }
+<a name="l00678"></a>00678 }
+<a name="l00679"></a>00679
+<a name="l00680"></a><a class="code" href="classKShowMailApp.html#18e1fcab0be78c65bf68ba66109a30b6">00680</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#18e1fcab0be78c65bf68ba66109a30b6">KShowMailApp::initFirstRefresh</a>( )
+<a name="l00681"></a>00681 {
+<a name="l00682"></a>00682 <span class="comment">//is auto refresh on? if not, we do nothing</span>
+<a name="l00683"></a>00683 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#cae6685097cd8e5e63cee28e17d92d41">AutoRefreshOn</a>() )
+<a name="l00684"></a>00684 {
+<a name="l00685"></a>00685 <span class="comment">//is an initial time configured? if not, we refresh immediately</span>
+<a name="l00686"></a>00686 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#ed405d97a4a1d20cac93bf2a23cf40bf">hasInitTime</a>() )
+<a name="l00687"></a>00687 {
+<a name="l00688"></a>00688 <span class="comment">//starts refresh timer with the configured initial time to first refresh</span>
+<a name="l00689"></a>00689 <a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a>-&gt;start( <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#3b74518a8dc0aff55be667276bc4597b">getInitTime</a>() * 1000, true );
+<a name="l00690"></a>00690 <a class="code" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a> = <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#3b74518a8dc0aff55be667276bc4597b">getInitTime</a>();
+<a name="l00691"></a>00691 }
+<a name="l00692"></a>00692 <span class="keywordflow">else</span>
+<a name="l00693"></a>00693 {
+<a name="l00694"></a>00694 <span class="comment">//just to set a defined state</span>
+<a name="l00695"></a>00695 <a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a>-&gt;stop();
+<a name="l00696"></a>00696 <a class="code" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a> = 0;
+<a name="l00697"></a>00697
+<a name="l00698"></a>00698 <span class="comment">//start refresh cycle</span>
+<a name="l00699"></a>00699 <a class="code" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">slotRefresh</a>();
+<a name="l00700"></a>00700 }
+<a name="l00701"></a>00701 }
+<a name="l00702"></a>00702 <span class="keywordflow">else</span>
+<a name="l00703"></a>00703 {
+<a name="l00704"></a>00704 <span class="comment">//set a defined state</span>
+<a name="l00705"></a>00705 <a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a>-&gt;stop();
+<a name="l00706"></a>00706 <a class="code" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a> = 0;
+<a name="l00707"></a>00707 }
+<a name="l00708"></a>00708 }
+<a name="l00709"></a>00709
+<a name="l00710"></a><a class="code" href="classKShowMailApp.html#7ab6f6a1037c6d00e1fd0f8cdf966d47">00710</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#7ab6f6a1037c6d00e1fd0f8cdf966d47">KShowMailApp::stopRefreshTimer</a>( )
+<a name="l00711"></a>00711 {
+<a name="l00712"></a>00712 <a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a>-&gt;stop();
+<a name="l00713"></a>00713 <a class="code" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a> = 0;
+<a name="l00714"></a>00714 }
+<a name="l00715"></a>00715
+<a name="l00716"></a><a class="code" href="classKShowMailApp.html#c538f5c093b0c3dae4df29247d075dfc">00716</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#c538f5c093b0c3dae4df29247d075dfc">KShowMailApp::initNextRefresh</a>( )
+<a name="l00717"></a>00717 {
+<a name="l00718"></a>00718 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#cae6685097cd8e5e63cee28e17d92d41">AutoRefreshOn</a>() )
+<a name="l00719"></a>00719 {
+<a name="l00720"></a>00720 <span class="comment">//auto refresh is activated</span>
+<a name="l00721"></a>00721 <span class="comment">//restart the refresh timer</span>
+<a name="l00722"></a>00722 <a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a>-&gt;start( <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#3e41f463a87fbc8523bbd731cf36b473">getRefreshTimeInterval</a>() * 60000, true );
+<a name="l00723"></a>00723 <a class="code" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a> = <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#3e41f463a87fbc8523bbd731cf36b473">getRefreshTimeInterval</a>() * 60;
+<a name="l00724"></a>00724 }
+<a name="l00725"></a>00725 <span class="keywordflow">else</span>
+<a name="l00726"></a>00726 {
+<a name="l00727"></a>00727 <span class="comment">//auto refresh is not activated</span>
+<a name="l00728"></a>00728 <span class="comment">//set a defined state of the refresh timer</span>
+<a name="l00729"></a>00729 <a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a>-&gt;stop();
+<a name="l00730"></a>00730 <a class="code" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a> = 0;
+<a name="l00731"></a>00731 }
+<a name="l00732"></a>00732 }
+<a name="l00733"></a>00733
+<a name="l00734"></a><a class="code" href="classKShowMailApp.html#14a17e70bed413c7d4ebffc9f5e87892">00734</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#14a17e70bed413c7d4ebffc9f5e87892">KShowMailApp::delayNextRefresh</a>( )
+<a name="l00735"></a>00735 {
+<a name="l00736"></a>00736 <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> DELAY_TIME = 60;
+<a name="l00737"></a>00737
+<a name="l00738"></a>00738 <span class="comment">//delay only if the timer is active and the remaining time is less than one minute</span>
+<a name="l00739"></a>00739 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a>-&gt;isActive() )
+<a name="l00740"></a>00740 {
+<a name="l00741"></a>00741 <span class="keywordflow">if</span>( <a class="code" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a> &lt; DELAY_TIME )
+<a name="l00742"></a>00742 {
+<a name="l00743"></a>00743 <a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a>-&gt;start( DELAY_TIME * 1000, <span class="keyword">true</span> );
+<a name="l00744"></a>00744 <a class="code" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a> = DELAY_TIME;
+<a name="l00745"></a>00745 }
+<a name="l00746"></a>00746 }
+<a name="l00747"></a>00747 }
+<a name="l00748"></a>00748
+<a name="l00749"></a><a class="code" href="classKShowMailApp.html#772f86e96418116ac58943d1bb0c3acb">00749</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#772f86e96418116ac58943d1bb0c3acb">KShowMailApp::slotEditToolbars</a>()
+<a name="l00750"></a>00750 {
+<a name="l00751"></a>00751 <span class="comment">//create the toolbar config dialog</span>
+<a name="l00752"></a>00752 KEditToolbar *dlg = <span class="keyword">new</span> KEditToolbar(guiFactory());
+<a name="l00753"></a>00753 <span class="keywordflow">if</span>( dlg-&gt;exec() )
+<a name="l00754"></a>00754 {
+<a name="l00755"></a>00755 <span class="comment">//if dialog closed by OK, create the GUI new</span>
+<a name="l00756"></a>00756 <span class="comment">//the dialog has changed the kshowmailui.rc file</span>
+<a name="l00757"></a>00757 createGUI();
+<a name="l00758"></a>00758 }
+<a name="l00759"></a>00759
+<a name="l00760"></a>00760 <span class="comment">//destruct dialog</span>
+<a name="l00761"></a>00761 <span class="keyword">delete</span> dlg;
+<a name="l00762"></a>00762 }
+<a name="l00763"></a>00763
+<a name="l00764"></a><a class="code" href="classKShowMailApp.html#9d907211db6387cf6e395c22a9642c3b">00764</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#9d907211db6387cf6e395c22a9642c3b">KShowMailApp::slotSetup</a>( )
+<a name="l00765"></a>00765 {
+<a name="l00766"></a>00766 <span class="comment">//just open the dialog, if the app is idle</span>
+<a name="l00767"></a>00767 <span class="keywordflow">if</span> (<a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> != <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>)
+<a name="l00768"></a>00768 {
+<a name="l00769"></a>00769 kapp-&gt;beep();
+<a name="l00770"></a>00770 <span class="keywordflow">return</span>;
+<a name="l00771"></a>00771 }
+<a name="l00772"></a>00772
+<a name="l00773"></a>00773 <span class="comment">//set application state</span>
+<a name="l00774"></a>00774 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa5653cde4c681a768eef7df3659c849a34b6">configure</a>;
+<a name="l00775"></a>00775
+<a name="l00776"></a>00776 <span class="comment">//stop the refresh timer</span>
+<a name="l00777"></a>00777 <a class="code" href="classKShowMailApp.html#7ab6f6a1037c6d00e1fd0f8cdf966d47">stopRefreshTimer</a>();
+<a name="l00778"></a>00778
+<a name="l00779"></a>00779 <span class="keywordflow">if</span> ( <a class="code" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">SetupDialog</a> == NULL )
+<a name="l00780"></a>00780 {
+<a name="l00781"></a>00781 <span class="comment">//if no preferences dialog was created as yet, create one</span>
+<a name="l00782"></a>00782 <a class="code" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">SetupDialog</a> = <span class="keyword">new</span> KCMultiDialog( KCMultiDialog::IconList, i18n( <span class="stringliteral">"Options"</span> ), <span class="keyword">this</span>, <span class="stringliteral">"SetupDialog"</span> );
+<a name="l00783"></a>00783 <a class="code" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">SetupDialog</a>-&gt;addModule( <span class="stringliteral">"kshowmailconfigaccounts.desktop"</span> );
+<a name="l00784"></a>00784 <a class="code" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">SetupDialog</a>-&gt;addModule( <span class="stringliteral">"kshowmailconfiggeneral.desktop"</span> );
+<a name="l00785"></a>00785 <a class="code" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">SetupDialog</a>-&gt;addModule( <span class="stringliteral">"kshowmailconfigdisplay.desktop"</span> );
+<a name="l00786"></a>00786 <a class="code" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">SetupDialog</a>-&gt;addModule( <span class="stringliteral">"kshowmailconfigactions.desktop"</span> );
+<a name="l00787"></a>00787
+<a name="l00788"></a>00788 <span class="comment">//If the configuration was changed, it will call slotConfChanged</span>
+<a name="l00789"></a>00789 connect( <a class="code" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">SetupDialog</a>, SIGNAL( configCommitted() ), <span class="keyword">this</span>, SLOT( <a class="code" href="classKShowMailApp.html#7655fe082dfda144367a152c58827c7f">slotConfChanged</a>() ) );
+<a name="l00790"></a>00790 }
+<a name="l00791"></a>00791
+<a name="l00792"></a>00792 <span class="comment">//execute preferences dialog</span>
+<a name="l00793"></a>00793 <a class="code" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">SetupDialog</a>-&gt;exec();
+<a name="l00794"></a>00794
+<a name="l00795"></a>00795 <span class="comment">//we are ready, set application state to idle and initiate next refresh</span>
+<a name="l00796"></a>00796 <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a> = <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>;
+<a name="l00797"></a>00797 <a class="code" href="classKShowMailApp.html#c538f5c093b0c3dae4df29247d075dfc">initNextRefresh</a>();
+<a name="l00798"></a>00798
+<a name="l00799"></a>00799 }
+<a name="l00800"></a>00800
+<a name="l00801"></a><a class="code" href="classKShowMailApp.html#7655fe082dfda144367a152c58827c7f">00801</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#7655fe082dfda144367a152c58827c7f">KShowMailApp::slotConfChanged</a>( )
+<a name="l00802"></a>00802 {
+<a name="l00803"></a>00803 <span class="comment">//read the new setup</span>
+<a name="l00804"></a>00804 <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#8ab66c254c66635f97df7e17882b4ab2">refreshSetup</a>( <a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a>-&gt;<a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a> );
+<a name="l00805"></a>00805 <a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a>-&gt;<a class="code" href="classKshowmailView.html#4fde61960c62edd44d8eb88a82360a2a">refreshSetup</a>();
+<a name="l00806"></a>00806 }
+<a name="l00807"></a>00807
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmail_8h-source.html b/doc/html/kshowmail_8h-source.html
new file mode 100644
index 0000000..d85b890
--- /dev/null
+++ b/doc/html/kshowmail_8h-source.html
@@ -0,0 +1,221 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kshowmail.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmail.h</h1><a href="kshowmail_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> kshowmail.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Sat May 6 12:13:57 MEST 2000</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2000-2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef KSHOWMAIL_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define KSHOWMAIL_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="preprocessor">#ifdef HAVE_CONFIG_H</span>
+<a name="l00023"></a>00023 <span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">config.h</a>&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#endif</span>
+<a name="l00025"></a>00025 <span class="preprocessor"></span>
+<a name="l00026"></a>00026 <span class="comment">// include files for KDE</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;kapplication.h&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;kmainwindow.h&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;kuniqueapplication.h&gt;</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;kaction.h&gt;</span>
+<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;kstdaction.h&gt;</span>
+<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00033"></a>00033 <span class="preprocessor">#include &lt;kstatusbar.h&gt;</span>
+<a name="l00034"></a>00034 <span class="preprocessor">#include &lt;krun.h&gt;</span>
+<a name="l00035"></a>00035 <span class="preprocessor">#include &lt;kpassdlg.h&gt;</span>
+<a name="l00036"></a>00036 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00037"></a>00037 <span class="preprocessor">#include &lt;kedittoolbar.h&gt;</span>
+<a name="l00038"></a>00038 <span class="preprocessor">#include &lt;kcmultidialog.h&gt;</span>
+<a name="l00039"></a>00039
+<a name="l00040"></a>00040
+<a name="l00041"></a>00041 <span class="comment">//include files for KShowMail</span>
+<a name="l00042"></a>00042 <span class="preprocessor">#include "<a class="code" href="configlist_8h.html">configlist.h</a>"</span>
+<a name="l00043"></a>00043 <span class="preprocessor">#include "<a class="code" href="alertdialog_8h.html">alertdialog.h</a>"</span>
+<a name="l00044"></a>00044 <span class="preprocessor">#include "<a class="code" href="showrecord_8h.html">showrecord.h</a>"</span>
+<a name="l00045"></a>00045 <span class="preprocessor">#include "<a class="code" href="showlistviewitem_8h.html">showlistviewitem.h</a>"</span>
+<a name="l00046"></a>00046 <span class="preprocessor">#include "<a class="code" href="kshowmaildock_8h.html">kshowmaildock.h</a>"</span>
+<a name="l00047"></a>00047 <span class="preprocessor">#include "kfeedback.h"</span>
+<a name="l00048"></a>00048 <span class="preprocessor">#include "<a class="code" href="types_8h.html">types.h</a>"</span>
+<a name="l00049"></a>00049 <span class="preprocessor">#include "<a class="code" href="kshowmailview_8h.html">kshowmailview.h</a>"</span>
+<a name="l00050"></a>00050 <span class="preprocessor">#include "<a class="code" href="kshowmaildoc_8h.html">kshowmaildoc.h</a>"</span>
+<a name="l00051"></a>00051 <span class="preprocessor">#include "<a class="code" href="serverdialog_8h.html">serverdialog.h</a>"</span>
+<a name="l00052"></a>00052 <span class="preprocessor">#include "<a class="code" href="filterlog_8h.html">filterlog.h</a>"</span>
+<a name="l00053"></a>00053 <span class="preprocessor">#include "<a class="code" href="filterlogview_8h.html">filterlogview.h</a>"</span>
+<a name="l00054"></a>00054
+<a name="l00055"></a>00055
+<a name="l00056"></a>00056 <span class="comment">// forward declaration of the Kshowmail classes</span>
+<a name="l00057"></a>00057 <span class="keyword">class </span><a class="code" href="classKshowmailDoc.html">KshowmailDoc</a>;
+<a name="l00058"></a>00058 <span class="keyword">class </span><a class="code" href="classKshowmailView.html">KshowmailView</a>;
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <span class="keyword">using namespace </span>Types;
+<a name="l00061"></a>00061
+<a name="l00077"></a><a class="code" href="classKShowMailApp.html">00077</a> <span class="keyword">class </span><a class="code" href="classKShowMailApp.html">KShowMailApp</a> : <span class="keyword">public</span> KMainWindow
+<a name="l00078"></a>00078 {
+<a name="l00079"></a>00079 Q_OBJECT
+<a name="l00080"></a>00080
+<a name="l00081"></a><a class="code" href="classKShowMailApp.html#95753bb48121b9a00bbbf185d46a5c1b">00081</a> <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classKshowmailView.html">KshowmailView</a>;
+<a name="l00082"></a><a class="code" href="classKShowMailApp.html#3babed6869c8529c61d0b4719140307f">00082</a> <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classKShowMailApp.html#3babed6869c8529c61d0b4719140307f">KshowmailDock</a>;
+<a name="l00083"></a><a class="code" href="classKShowMailApp.html#d5008f2e1c7aac94129746c60836d338">00083</a> <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classUniqueApp.html">UniqueApp</a>;
+<a name="l00084"></a>00084
+<a name="l00085"></a>00085
+<a name="l00086"></a>00086 <span class="keyword">private</span>:
+<a name="l00087"></a>00087
+<a name="l00091"></a><a class="code" href="classKShowMailApp.html#326f322d7f82738efd2399f077fab6e2">00091</a> <a class="code" href="classKshowmailDoc.html">KshowmailDoc</a>* <a class="code" href="classKShowMailApp.html#326f322d7f82738efd2399f077fab6e2">m_pDoc</a>;
+<a name="l00092"></a>00092
+<a name="l00096"></a><a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">00096</a> <a class="code" href="classKshowmailView.html">KshowmailView</a> *<a class="code" href="classKShowMailApp.html#c4c5078123779bc87252714ba8bb9a14">m_pView</a>;
+<a name="l00097"></a>00097
+<a name="l00101"></a><a class="code" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">00101</a> KCMultiDialog* <a class="code" href="classKShowMailApp.html#c6cfeedcef8e52b5a407f764fe057433">SetupDialog</a>;
+<a name="l00102"></a>00102
+<a name="l00106"></a><a class="code" href="classKShowMailApp.html#cdd1b63955d1dd5c9d78d551fc86ef74">00106</a> KAction* <a class="code" href="classKShowMailApp.html#cdd1b63955d1dd5c9d78d551fc86ef74">m_actionRefresh</a>;
+<a name="l00107"></a>00107
+<a name="l00112"></a><a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">00112</a> <a class="code" href="classConfigList.html">ConfigList</a> <a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>;
+<a name="l00113"></a>00113
+<a name="l00117"></a><a class="code" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">00117</a> <a class="code" href="classAlertDialog.html">AlertDialog</a>* <a class="code" href="classKShowMailApp.html#7ef695b9db1672c75b3dea0e839e6fa4">m_pAlertDialog</a>;
+<a name="l00118"></a>00118
+<a name="l00122"></a><a class="code" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">00122</a> <a class="code" href="classKShowMailDock.html">KShowMailDock</a>* <a class="code" href="classKShowMailApp.html#66bd9b79549afb8aec119ee1706103e1">m_pDockWindow</a>;
+<a name="l00123"></a>00123
+<a name="l00127"></a><a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">00127</a> QTimer* <a class="code" href="classKShowMailApp.html#2ebe3eb0660a5f76160b135f7ef22765">m_pTimer</a>;
+<a name="l00128"></a>00128
+<a name="l00132"></a><a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">00132</a> <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565">Types::State_Type</a> <a class="code" href="classKShowMailApp.html#0827ddf85177879f8966a2e13c50ad33">m_state</a>;
+<a name="l00133"></a>00133
+<a name="l00137"></a><a class="code" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">00137</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="classKShowMailApp.html#17aa6e4f776e8a73a1a38d4fa255ca4f">m_nSecondsToGo</a>;
+<a name="l00138"></a>00138
+<a name="l00142"></a><a class="code" href="classKShowMailApp.html#b1458865e7903295c05c0ffc08fd72fa">00142</a> <a class="code" href="classFilterLog.html">FilterLog</a> <a class="code" href="classKShowMailApp.html#b1458865e7903295c05c0ffc08fd72fa">fLog</a>;
+<a name="l00143"></a>00143
+<a name="l00144"></a>00144
+<a name="l00145"></a>00145 <span class="keyword">public</span>:
+<a name="l00150"></a>00150 <a class="code" href="classKShowMailApp.html#e8728a02ab3a7e20cb1d256590788575">KShowMailApp</a>();
+<a name="l00151"></a>00151
+<a name="l00155"></a>00155 <a class="code" href="classKShowMailApp.html#3b3759d8593576edfa0b3fab62ce26c0">~KShowMailApp</a>();
+<a name="l00156"></a>00156
+<a name="l00161"></a><a class="code" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">00161</a> <span class="keyword">static</span> KAboutData* <a class="code" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">m_pAbout</a>;
+<a name="l00162"></a>00162
+<a name="l00166"></a>00166 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#14a17e70bed413c7d4ebffc9f5e87892">delayNextRefresh</a>();
+<a name="l00167"></a>00167
+<a name="l00168"></a>00168
+<a name="l00169"></a>00169 <span class="keyword">protected</span>:
+<a name="l00170"></a>00170
+<a name="l00174"></a>00174 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#daaa25d851b56449b16c942d099fbf86">initStatusBar</a>();
+<a name="l00175"></a>00175
+<a name="l00179"></a>00179 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#4f13d29b34bf4dd08804489ad1f41a82">initActions</a>();
+<a name="l00180"></a>00180
+<a name="l00185"></a>00185 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#1187c5d08f904b1e6c7beff58c3e9d53">initDocument</a>();
+<a name="l00186"></a>00186
+<a name="l00190"></a>00190 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#4b1f509a80c9927f7701005685350a0a">initView</a>();
+<a name="l00191"></a>00191
+<a name="l00199"></a>00199 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classKShowMailApp.html#347ed7817554f0a8c6e078101ce1babb">queryClose</a>();
+<a name="l00200"></a>00200
+<a name="l00208"></a>00208 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classKShowMailApp.html#2e471542abbac9779cd38a4f63ec5187">queryExit</a>();
+<a name="l00209"></a>00209
+<a name="l00216"></a>00216 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#79825417f6967185146c48de3278a80c">timerEvent</a>( QTimerEvent * );
+<a name="l00217"></a>00217
+<a name="l00222"></a>00222 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classKShowMailApp.html#716d32f4f37dd7b97f0e73a6c124caeb">event</a>(QEvent *e);
+<a name="l00223"></a>00223
+<a name="l00228"></a>00228 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#18e1fcab0be78c65bf68ba66109a30b6">initFirstRefresh</a>();
+<a name="l00229"></a>00229
+<a name="l00233"></a>00233 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#7ab6f6a1037c6d00e1fd0f8cdf966d47">stopRefreshTimer</a>();
+<a name="l00234"></a>00234
+<a name="l00238"></a>00238 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#c538f5c093b0c3dae4df29247d075dfc">initNextRefresh</a>();
+<a name="l00239"></a>00239
+<a name="l00240"></a>00240 <span class="keyword">protected</span> slots:
+<a name="l00241"></a>00241
+<a name="l00249"></a>00249 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#1b373417eded77fcd51e23c0dca87467">slotStatusHelpMsg</a>(<span class="keyword">const</span> QString &amp;text);
+<a name="l00250"></a>00250
+<a name="l00257"></a>00257 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">slotStatusMsg</a>(<span class="keyword">const</span> QString &amp;text);
+<a name="l00258"></a>00258
+<a name="l00263"></a>00263 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#7655fe082dfda144367a152c58827c7f">slotConfChanged</a>();
+<a name="l00264"></a>00264
+<a name="l00269"></a>00269 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#ad1a25c5c31f911f7c21b3aedc682e8e">slotDelete</a>();
+<a name="l00270"></a>00270
+<a name="l00278"></a>00278 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#a77267f88c63edad44b7e82d0b398fc6">slotDeletionReady</a>();
+<a name="l00279"></a>00279
+<a name="l00284"></a>00284 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#34c235044988b2d43c0e43d249831dc1">slotShowMessage</a>();
+<a name="l00285"></a>00285
+<a name="l00292"></a>00292 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#3b9805091025c531842807e28e29cc10">slotShowMessageReady</a>();
+<a name="l00293"></a>00293
+<a name="l00300"></a>00300 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#86c54998aa412571f0b471efd32e8ef9">slotNormalCursor</a>();
+<a name="l00301"></a>00301
+<a name="l00308"></a>00308 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#36b54a32e442ec8bab250c3c87f08962">slotWaitingCursor</a>();
+<a name="l00309"></a>00309
+<a name="l00314"></a>00314 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">slotRefresh</a>();
+<a name="l00315"></a>00315
+<a name="l00322"></a>00322 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#911c2c1823421973f97e4ea2cc51e710">slotRefreshReady</a>();
+<a name="l00323"></a>00323
+<a name="l00331"></a>00331 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#073b29df0ea7fa4c1a5245dd87bd1b6c">slotAlertDestroyed</a>();
+<a name="l00332"></a>00332
+<a name="l00338"></a>00338 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#cb8e7126aec305899d7109863f99d6d4">slotAlertOk</a> ();
+<a name="l00339"></a>00339
+<a name="l00343"></a>00343 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#68bebd7208b03fe4fe1aa23be83f7536">slotRefreshView</a> ();
+<a name="l00344"></a>00344
+<a name="l00349"></a>00349 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#b9a90ef9062595e4cbebee5851206ec9">slotStop</a> ();
+<a name="l00350"></a>00350
+<a name="l00355"></a>00355 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#7b9553bf179124f9f1eb56bdd094b901">slotShowHeader</a>();
+<a name="l00356"></a>00356
+<a name="l00361"></a>00361 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#772f86e96418116ac58943d1bb0c3acb">slotEditToolbars</a>();
+<a name="l00362"></a>00362
+<a name="l00366"></a>00366 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#c97f2ac7f5c12aab46651f818f414109">slotSaveOptions</a>();
+<a name="l00367"></a>00367
+<a name="l00373"></a>00373 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#6d18177026c4c8d276e690c405c9fcd7">slotFileQuit</a>();
+<a name="l00374"></a>00374
+<a name="l00378"></a>00378 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#65f99925664c07c6eafa2b375352ad34">slotSetupAccount</a>();
+<a name="l00379"></a>00379
+<a name="l00384"></a>00384 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#9d907211db6387cf6e395c22a9642c3b">slotSetup</a>();
+<a name="l00385"></a>00385
+<a name="l00389"></a>00389 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#c9f6636accea83b903904c8767e4e65c">slotShowFilterLog</a>();
+<a name="l00390"></a>00390
+<a name="l00391"></a>00391 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#03f1ae7df67069b5a7a9d54c39e94924">slotAccountActivated</a>(QListViewItem*);
+<a name="l00392"></a>00392 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#cb6b97d7b759372c2ab7690fc70d1518">slotSendFeedbackMail</a>();
+<a name="l00393"></a>00393 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#f94f8e79fcd9b35eea937b2533912e86">slotForceClose</a>();
+<a name="l00394"></a>00394
+<a name="l00395"></a>00395
+<a name="l00396"></a>00396
+<a name="l00397"></a>00397
+<a name="l00398"></a>00398 <span class="keyword">private</span>:
+<a name="l00399"></a>00399
+<a name="l00400"></a><a class="code" href="classKShowMailApp.html#f211146f325bcca8c7c680ad46c9aab8">00400</a> <span class="keywordtype">bool</span> <a class="code" href="classKShowMailApp.html#f211146f325bcca8c7c680ad46c9aab8">m_bForceClose</a>;
+<a name="l00401"></a>00401
+<a name="l00402"></a>00402
+<a name="l00403"></a>00403 <span class="keyword">protected</span>:
+<a name="l00404"></a>00404 <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#7928ea906a7abe17a5f56f110cdd58d6">addFeatureList</a>(KFeedbackQuestion * question);
+<a name="l00405"></a>00405 <span class="keywordtype">bool</span> <a class="code" href="classKShowMailApp.html#d93e3467abdad835b02dde5f514c4013">askCloseConfirmation</a>();
+<a name="l00406"></a>00406
+<a name="l00407"></a>00407 };
+<a name="l00408"></a>00408
+<a name="l00409"></a>00409 <span class="preprocessor">#endif // KSHOWMAIL_H</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmail_8moc_8cpp-source.html b/doc/html/kshowmail_8moc_8cpp-source.html
new file mode 100644
index 0000000..7904413
--- /dev/null
+++ b/doc/html/kshowmail_8moc_8cpp-source.html
@@ -0,0 +1,204 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/kshowmail.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmail.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** KShowMailApp meta object code from reading C++ file 'kshowmail.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Thu Jul 5 19:14:17 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: kshowmail_8moc_8cpp-source.html,v 1.10 2007/07/05 17:37:51 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "kshowmail.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *KShowMailApp::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"KShowMailApp"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *KShowMailApp::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_KShowMailApp( <span class="stringliteral">"KShowMailApp"</span>, &amp;KShowMailApp::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString KShowMailApp::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KShowMailApp"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString KShowMailApp::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KShowMailApp"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* KShowMailApp::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = KMainWindow::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_0[] = {
+<a name="l00056"></a>00056 { <span class="stringliteral">"text"</span>, &amp;static_QUType_QString, 0, QUParameter::In }
+<a name="l00057"></a>00057 };
+<a name="l00058"></a>00058 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotStatusHelpMsg"</span>, 1, param_slot_0 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_1[] = {
+<a name="l00060"></a>00060 { <span class="stringliteral">"text"</span>, &amp;static_QUType_QString, 0, QUParameter::In }
+<a name="l00061"></a>00061 };
+<a name="l00062"></a>00062 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotStatusMsg"</span>, 1, param_slot_1 };
+<a name="l00063"></a>00063 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_2 = {<span class="stringliteral">"slotConfChanged"</span>, 0, 0 };
+<a name="l00064"></a>00064 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_3 = {<span class="stringliteral">"slotDelete"</span>, 0, 0 };
+<a name="l00065"></a>00065 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_4 = {<span class="stringliteral">"slotDeletionReady"</span>, 0, 0 };
+<a name="l00066"></a>00066 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_5 = {<span class="stringliteral">"slotShowMessage"</span>, 0, 0 };
+<a name="l00067"></a>00067 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_6 = {<span class="stringliteral">"slotShowMessageReady"</span>, 0, 0 };
+<a name="l00068"></a>00068 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_7 = {<span class="stringliteral">"slotNormalCursor"</span>, 0, 0 };
+<a name="l00069"></a>00069 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_8 = {<span class="stringliteral">"slotWaitingCursor"</span>, 0, 0 };
+<a name="l00070"></a>00070 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_9 = {<span class="stringliteral">"slotRefresh"</span>, 0, 0 };
+<a name="l00071"></a>00071 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_10 = {<span class="stringliteral">"slotRefreshReady"</span>, 0, 0 };
+<a name="l00072"></a>00072 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_11 = {<span class="stringliteral">"slotAlertDestroyed"</span>, 0, 0 };
+<a name="l00073"></a>00073 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_12 = {<span class="stringliteral">"slotAlertOk"</span>, 0, 0 };
+<a name="l00074"></a>00074 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_13 = {<span class="stringliteral">"slotRefreshView"</span>, 0, 0 };
+<a name="l00075"></a>00075 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_14 = {<span class="stringliteral">"slotStop"</span>, 0, 0 };
+<a name="l00076"></a>00076 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_15 = {<span class="stringliteral">"slotShowHeader"</span>, 0, 0 };
+<a name="l00077"></a>00077 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_16 = {<span class="stringliteral">"slotEditToolbars"</span>, 0, 0 };
+<a name="l00078"></a>00078 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_17 = {<span class="stringliteral">"slotSaveOptions"</span>, 0, 0 };
+<a name="l00079"></a>00079 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_18 = {<span class="stringliteral">"slotFileQuit"</span>, 0, 0 };
+<a name="l00080"></a>00080 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_19 = {<span class="stringliteral">"slotSetupAccount"</span>, 0, 0 };
+<a name="l00081"></a>00081 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_20 = {<span class="stringliteral">"slotSetup"</span>, 0, 0 };
+<a name="l00082"></a>00082 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_21 = {<span class="stringliteral">"slotSetupFilters"</span>, 0, 0 };
+<a name="l00083"></a>00083 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_22[] = {
+<a name="l00084"></a>00084 { 0, &amp;static_QUType_ptr, <span class="stringliteral">"QListViewItem"</span>, QUParameter::In }
+<a name="l00085"></a>00085 };
+<a name="l00086"></a>00086 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_22 = {<span class="stringliteral">"slotAccountActivated"</span>, 1, param_slot_22 };
+<a name="l00087"></a>00087 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_23 = {<span class="stringliteral">"slotSendFeedbackMail"</span>, 0, 0 };
+<a name="l00088"></a>00088 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_24 = {<span class="stringliteral">"slotForceClose"</span>, 0, 0 };
+<a name="l00089"></a>00089 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00090"></a>00090 { <span class="stringliteral">"slotStatusHelpMsg(const QString&amp;)"</span>, &amp;slot_0, QMetaData::Protected },
+<a name="l00091"></a>00091 { <span class="stringliteral">"slotStatusMsg(const QString&amp;)"</span>, &amp;slot_1, QMetaData::Protected },
+<a name="l00092"></a>00092 { <span class="stringliteral">"slotConfChanged()"</span>, &amp;slot_2, QMetaData::Protected },
+<a name="l00093"></a>00093 { <span class="stringliteral">"slotDelete()"</span>, &amp;slot_3, QMetaData::Protected },
+<a name="l00094"></a>00094 { <span class="stringliteral">"slotDeletionReady()"</span>, &amp;slot_4, QMetaData::Protected },
+<a name="l00095"></a>00095 { <span class="stringliteral">"slotShowMessage()"</span>, &amp;slot_5, QMetaData::Protected },
+<a name="l00096"></a>00096 { <span class="stringliteral">"slotShowMessageReady()"</span>, &amp;slot_6, QMetaData::Protected },
+<a name="l00097"></a>00097 { <span class="stringliteral">"slotNormalCursor()"</span>, &amp;slot_7, QMetaData::Protected },
+<a name="l00098"></a>00098 { <span class="stringliteral">"slotWaitingCursor()"</span>, &amp;slot_8, QMetaData::Protected },
+<a name="l00099"></a>00099 { <span class="stringliteral">"slotRefresh()"</span>, &amp;slot_9, QMetaData::Protected },
+<a name="l00100"></a>00100 { <span class="stringliteral">"slotRefreshReady()"</span>, &amp;slot_10, QMetaData::Protected },
+<a name="l00101"></a>00101 { <span class="stringliteral">"slotAlertDestroyed()"</span>, &amp;slot_11, QMetaData::Protected },
+<a name="l00102"></a>00102 { <span class="stringliteral">"slotAlertOk()"</span>, &amp;slot_12, QMetaData::Protected },
+<a name="l00103"></a>00103 { <span class="stringliteral">"slotRefreshView()"</span>, &amp;slot_13, QMetaData::Protected },
+<a name="l00104"></a>00104 { <span class="stringliteral">"slotStop()"</span>, &amp;slot_14, QMetaData::Protected },
+<a name="l00105"></a>00105 { <span class="stringliteral">"slotShowHeader()"</span>, &amp;slot_15, QMetaData::Protected },
+<a name="l00106"></a>00106 { <span class="stringliteral">"slotEditToolbars()"</span>, &amp;slot_16, QMetaData::Protected },
+<a name="l00107"></a>00107 { <span class="stringliteral">"slotSaveOptions()"</span>, &amp;slot_17, QMetaData::Protected },
+<a name="l00108"></a>00108 { <span class="stringliteral">"slotFileQuit()"</span>, &amp;slot_18, QMetaData::Protected },
+<a name="l00109"></a>00109 { <span class="stringliteral">"slotSetupAccount()"</span>, &amp;slot_19, QMetaData::Protected },
+<a name="l00110"></a>00110 { <span class="stringliteral">"slotSetup()"</span>, &amp;slot_20, QMetaData::Protected },
+<a name="l00111"></a>00111 { <span class="stringliteral">"slotSetupFilters()"</span>, &amp;slot_21, QMetaData::Protected },
+<a name="l00112"></a>00112 { <span class="stringliteral">"slotAccountActivated(QListViewItem*)"</span>, &amp;slot_22, QMetaData::Protected },
+<a name="l00113"></a>00113 { <span class="stringliteral">"slotSendFeedbackMail()"</span>, &amp;slot_23, QMetaData::Protected },
+<a name="l00114"></a>00114 { <span class="stringliteral">"slotForceClose()"</span>, &amp;slot_24, QMetaData::Protected }
+<a name="l00115"></a>00115 };
+<a name="l00116"></a>00116 metaObj = QMetaObject::new_metaobject(
+<a name="l00117"></a>00117 <span class="stringliteral">"KShowMailApp"</span>, parentObject,
+<a name="l00118"></a>00118 slot_tbl, 25,
+<a name="l00119"></a>00119 0, 0,
+<a name="l00120"></a>00120 #ifndef QT_NO_PROPERTIES
+<a name="l00121"></a>00121 0, 0,
+<a name="l00122"></a>00122 0, 0,
+<a name="l00123"></a>00123 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00124"></a>00124 0, 0 );
+<a name="l00125"></a>00125 cleanUp_KShowMailApp.setMetaObject( metaObj );
+<a name="l00126"></a>00126 <span class="keywordflow">return</span> metaObj;
+<a name="l00127"></a>00127 }
+<a name="l00128"></a>00128
+<a name="l00129"></a>00129 <span class="keywordtype">void</span>* KShowMailApp::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00130"></a>00130 {
+<a name="l00131"></a>00131 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"KShowMailApp"</span> ) )
+<a name="l00132"></a>00132 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00133"></a>00133 <span class="keywordflow">return</span> KMainWindow::qt_cast( clname );
+<a name="l00134"></a>00134 }
+<a name="l00135"></a>00135
+<a name="l00136"></a>00136 <span class="keywordtype">bool</span> KShowMailApp::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00137"></a>00137 {
+<a name="l00138"></a>00138 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00139"></a>00139 <span class="keywordflow">case</span> 0: <a class="code" href="classKShowMailApp.html#1b373417eded77fcd51e23c0dca87467">slotStatusHelpMsg</a>((<span class="keyword">const</span> QString&amp;)static_QUType_QString.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00140"></a>00140 <span class="keywordflow">case</span> 1: <a class="code" href="classKShowMailApp.html#a56b9b808644dd11577b35e18716615f">slotStatusMsg</a>((<span class="keyword">const</span> QString&amp;)static_QUType_QString.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00141"></a>00141 <span class="keywordflow">case</span> 2: <a class="code" href="classKShowMailApp.html#7655fe082dfda144367a152c58827c7f">slotConfChanged</a>(); <span class="keywordflow">break</span>;
+<a name="l00142"></a>00142 <span class="keywordflow">case</span> 3: <a class="code" href="classKShowMailApp.html#ad1a25c5c31f911f7c21b3aedc682e8e">slotDelete</a>(); <span class="keywordflow">break</span>;
+<a name="l00143"></a>00143 <span class="keywordflow">case</span> 4: <a class="code" href="classKShowMailApp.html#a77267f88c63edad44b7e82d0b398fc6">slotDeletionReady</a>(); <span class="keywordflow">break</span>;
+<a name="l00144"></a>00144 <span class="keywordflow">case</span> 5: <a class="code" href="classKShowMailApp.html#34c235044988b2d43c0e43d249831dc1">slotShowMessage</a>(); <span class="keywordflow">break</span>;
+<a name="l00145"></a>00145 <span class="keywordflow">case</span> 6: <a class="code" href="classKShowMailApp.html#3b9805091025c531842807e28e29cc10">slotShowMessageReady</a>(); <span class="keywordflow">break</span>;
+<a name="l00146"></a>00146 <span class="keywordflow">case</span> 7: <a class="code" href="classKShowMailApp.html#86c54998aa412571f0b471efd32e8ef9">slotNormalCursor</a>(); <span class="keywordflow">break</span>;
+<a name="l00147"></a>00147 <span class="keywordflow">case</span> 8: <a class="code" href="classKShowMailApp.html#36b54a32e442ec8bab250c3c87f08962">slotWaitingCursor</a>(); <span class="keywordflow">break</span>;
+<a name="l00148"></a>00148 <span class="keywordflow">case</span> 9: <a class="code" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">slotRefresh</a>(); <span class="keywordflow">break</span>;
+<a name="l00149"></a>00149 <span class="keywordflow">case</span> 10: <a class="code" href="classKShowMailApp.html#911c2c1823421973f97e4ea2cc51e710">slotRefreshReady</a>(); <span class="keywordflow">break</span>;
+<a name="l00150"></a>00150 <span class="keywordflow">case</span> 11: <a class="code" href="classKShowMailApp.html#073b29df0ea7fa4c1a5245dd87bd1b6c">slotAlertDestroyed</a>(); <span class="keywordflow">break</span>;
+<a name="l00151"></a>00151 <span class="keywordflow">case</span> 12: <a class="code" href="classKShowMailApp.html#cb8e7126aec305899d7109863f99d6d4">slotAlertOk</a>(); <span class="keywordflow">break</span>;
+<a name="l00152"></a>00152 <span class="keywordflow">case</span> 13: <a class="code" href="classKShowMailApp.html#68bebd7208b03fe4fe1aa23be83f7536">slotRefreshView</a>(); <span class="keywordflow">break</span>;
+<a name="l00153"></a>00153 <span class="keywordflow">case</span> 14: <a class="code" href="classKShowMailApp.html#b9a90ef9062595e4cbebee5851206ec9">slotStop</a>(); <span class="keywordflow">break</span>;
+<a name="l00154"></a>00154 <span class="keywordflow">case</span> 15: <a class="code" href="classKShowMailApp.html#7b9553bf179124f9f1eb56bdd094b901">slotShowHeader</a>(); <span class="keywordflow">break</span>;
+<a name="l00155"></a>00155 <span class="keywordflow">case</span> 16: <a class="code" href="classKShowMailApp.html#772f86e96418116ac58943d1bb0c3acb">slotEditToolbars</a>(); <span class="keywordflow">break</span>;
+<a name="l00156"></a>00156 <span class="keywordflow">case</span> 17: <a class="code" href="classKShowMailApp.html#c97f2ac7f5c12aab46651f818f414109">slotSaveOptions</a>(); <span class="keywordflow">break</span>;
+<a name="l00157"></a>00157 <span class="keywordflow">case</span> 18: <a class="code" href="classKShowMailApp.html#6d18177026c4c8d276e690c405c9fcd7">slotFileQuit</a>(); <span class="keywordflow">break</span>;
+<a name="l00158"></a>00158 <span class="keywordflow">case</span> 19: <a class="code" href="classKShowMailApp.html#65f99925664c07c6eafa2b375352ad34">slotSetupAccount</a>(); <span class="keywordflow">break</span>;
+<a name="l00159"></a>00159 <span class="keywordflow">case</span> 20: <a class="code" href="classKShowMailApp.html#9d907211db6387cf6e395c22a9642c3b">slotSetup</a>(); <span class="keywordflow">break</span>;
+<a name="l00160"></a>00160 <span class="keywordflow">case</span> 21: <a class="code" href="classKShowMailApp.html#a1a96dcbd8cfce09a85cc684950393ee">slotSetupFilters</a>(); <span class="keywordflow">break</span>;
+<a name="l00161"></a>00161 <span class="keywordflow">case</span> 22: <a class="code" href="classKShowMailApp.html#03f1ae7df67069b5a7a9d54c39e94924">slotAccountActivated</a>((QListViewItem*)static_QUType_ptr.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00162"></a>00162 <span class="keywordflow">case</span> 23: <a class="code" href="classKShowMailApp.html#cb6b97d7b759372c2ab7690fc70d1518">slotSendFeedbackMail</a>(); <span class="keywordflow">break</span>;
+<a name="l00163"></a>00163 <span class="keywordflow">case</span> 24: <a class="code" href="classKShowMailApp.html#f94f8e79fcd9b35eea937b2533912e86">slotForceClose</a>(); <span class="keywordflow">break</span>;
+<a name="l00164"></a>00164 <span class="keywordflow">default</span>:
+<a name="l00165"></a>00165 <span class="keywordflow">return</span> KMainWindow::qt_invoke( _id, _o );
+<a name="l00166"></a>00166 }
+<a name="l00167"></a>00167 <span class="keywordflow">return</span> TRUE;
+<a name="l00168"></a>00168 }
+<a name="l00169"></a>00169
+<a name="l00170"></a>00170 <span class="keywordtype">bool</span> KShowMailApp::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00171"></a>00171 {
+<a name="l00172"></a>00172 <span class="keywordflow">return</span> KMainWindow::qt_emit(_id,_o);
+<a name="l00173"></a>00173 }
+<a name="l00174"></a>00174 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00175"></a>00175 <span class="preprocessor"></span>
+<a name="l00176"></a>00176 <span class="keywordtype">bool</span> KShowMailApp::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00177"></a>00177 {
+<a name="l00178"></a>00178 <span class="keywordflow">return</span> KMainWindow::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00179"></a>00179 }
+<a name="l00180"></a>00180
+<a name="l00181"></a>00181 <span class="keywordtype">bool</span> KShowMailApp::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00182"></a>00182 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmaildoc_8cpp-source.html b/doc/html/kshowmaildoc_8cpp-source.html
new file mode 100644
index 0000000..abb6e1d
--- /dev/null
+++ b/doc/html/kshowmaildoc_8cpp-source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/kshowmaildoc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmaildoc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> kshowmaildoc.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Fre Sep 28 23:29:54 CEST 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="comment">// include files for Qt</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qdir.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qwidget.h&gt;</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="comment">// include files for KDE</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;kmessagebox.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;kio/job.h&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;kio/netaccess.h&gt;</span>
+<a name="l00027"></a>00027
+<a name="l00028"></a>00028 <span class="comment">// application specific includes</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include "kshowmaildoc.h"</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include "kshowmail.h"</span>
+<a name="l00031"></a>00031 <span class="preprocessor">#include "kshowmailview.h"</span>
+<a name="l00032"></a>00032
+<a name="l00033"></a>00033 <a class="code" href="classKshowmailView.html">KshowmailView</a> *<a class="code" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">KshowmailDoc::pView</a> = 0L;
+<a name="l00034"></a>00034
+<a name="l00035"></a><a class="code" href="classKshowmailDoc.html#02b11dd19d0c777a043a491d8811a553">00035</a> <a class="code" href="classKshowmailDoc.html#02b11dd19d0c777a043a491d8811a553">KshowmailDoc::KshowmailDoc</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name) : QObject(parent, name)
+<a name="l00036"></a>00036 {
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038
+<a name="l00039"></a><a class="code" href="classKshowmailDoc.html#fe8d064e8b1d44683fde4e3261333841">00039</a> <a class="code" href="classKshowmailDoc.html#fe8d064e8b1d44683fde4e3261333841">KshowmailDoc::~KshowmailDoc</a>()
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 }
+<a name="l00042"></a>00042
+<a name="l00043"></a><a class="code" href="classKshowmailDoc.html#d9c7e004cad6927dd62d7a0d8f1f29b1">00043</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailDoc.html#d9c7e004cad6927dd62d7a0d8f1f29b1">KshowmailDoc::addView</a>(<a class="code" href="classKshowmailView.html">KshowmailView</a> *view)
+<a name="l00044"></a>00044 {
+<a name="l00045"></a>00045 <a class="code" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">pView</a> = view;
+<a name="l00046"></a>00046 }
+<a name="l00047"></a>00047
+<a name="l00048"></a><a class="code" href="classKshowmailDoc.html#e9cd9ebc0c1bbbdf1d4178bc92fe5f55">00048</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailDoc.html#e9cd9ebc0c1bbbdf1d4178bc92fe5f55">KshowmailDoc::removeView</a>(<a class="code" href="classKshowmailView.html">KshowmailView</a>*)
+<a name="l00049"></a>00049 {
+<a name="l00050"></a>00050 <span class="keyword">delete</span> <a class="code" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">pView</a>;
+<a name="l00051"></a>00051 }
+<a name="l00052"></a>00052
+<a name="l00053"></a><a class="code" href="classKshowmailDoc.html#aad1bfe0342bb8ef8b48e4feae5a4e7c">00053</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailDoc.html#aad1bfe0342bb8ef8b48e4feae5a4e7c">KshowmailDoc::setURL</a>(<span class="keyword">const</span> KURL &amp;url)
+<a name="l00054"></a>00054 {
+<a name="l00055"></a>00055 <a class="code" href="classKshowmailDoc.html#4c93bab9aac95af03ca857ab3e09cf21">doc_url</a>=url;
+<a name="l00056"></a>00056 }
+<a name="l00057"></a>00057
+<a name="l00058"></a><a class="code" href="classKshowmailDoc.html#a498d92a8c3b8a41f2bbf198f593435a">00058</a> <span class="keyword">const</span> KURL&amp; <a class="code" href="classKshowmailDoc.html#a498d92a8c3b8a41f2bbf198f593435a">KshowmailDoc::URL</a>()<span class="keyword"> const</span>
+<a name="l00059"></a>00059 <span class="keyword"></span>{
+<a name="l00060"></a>00060 <span class="keywordflow">return</span> <a class="code" href="classKshowmailDoc.html#4c93bab9aac95af03ca857ab3e09cf21">doc_url</a>;
+<a name="l00061"></a>00061 }
+<a name="l00062"></a>00062
+<a name="l00063"></a>00063 <span class="comment">// this could be deleted; perhaps we build a tree view sometime ?</span>
+<a name="l00064"></a><a class="code" href="classKshowmailDoc.html#2feac43fb28fdb4971fb601520d17c54">00064</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailDoc.html#2feac43fb28fdb4971fb601520d17c54">KshowmailDoc::slotUpdateAllViews</a>(<a class="code" href="classKshowmailView.html">KshowmailView</a> *sender)
+<a name="l00065"></a>00065 {
+<a name="l00066"></a>00066 <span class="keywordflow">if</span>(<a class="code" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">pView</a>)
+<a name="l00067"></a>00067 {
+<a name="l00068"></a>00068 <span class="keywordflow">if</span>(<a class="code" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">pView</a>!=sender)
+<a name="l00069"></a>00069 <a class="code" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">pView</a>-&gt;repaint();
+<a name="l00070"></a>00070 }
+<a name="l00071"></a>00071 }
+<a name="l00072"></a>00072
+<a name="l00073"></a><a class="code" href="classKshowmailDoc.html#929fdd9ad1f89ed9a000cf8c96d9f711">00073</a> <span class="keywordtype">bool</span> <a class="code" href="classKshowmailDoc.html#929fdd9ad1f89ed9a000cf8c96d9f711">KshowmailDoc::newDocument</a>()
+<a name="l00074"></a>00074 {
+<a name="l00076"></a>00076 <span class="comment">// TODO: Add your document initialization code here</span>
+<a name="l00078"></a>00078 <span class="comment"></span> <a class="code" href="classKshowmailDoc.html#4c93bab9aac95af03ca857ab3e09cf21">doc_url</a>.setFileName(i18n(<span class="stringliteral">"Untitled"</span>));
+<a name="l00079"></a>00079
+<a name="l00080"></a>00080 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00081"></a>00081 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmaildoc_8h-source.html b/doc/html/kshowmaildoc_8h-source.html
new file mode 100644
index 0000000..3f9574a
--- /dev/null
+++ b/doc/html/kshowmaildoc_8h-source.html
@@ -0,0 +1,86 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kshowmaildoc.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmaildoc.h</h1><a href="kshowmaildoc_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> kshowmaildoc.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Fre Sep 28 23:29:54 CEST 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef KSHOWMAILDOC_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define KSHOWMAILDOC_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#ifdef HAVE_CONFIG_H</span>
+<a name="l00022"></a>00022 <span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">config.h</a>&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#endif </span>
+<a name="l00024"></a>00024 <span class="preprocessor"></span>
+<a name="l00025"></a>00025 <span class="comment">// include files for QT</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;qobject.h&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;qstring.h&gt;</span>
+<a name="l00028"></a>00028
+<a name="l00029"></a>00029 <span class="comment">// include files for KDE</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;kurl.h&gt;</span>
+<a name="l00031"></a>00031
+<a name="l00032"></a>00032 <span class="comment">// forward declaration of the Kshowmail classes</span>
+<a name="l00033"></a>00033 <span class="keyword">class </span><a class="code" href="classKshowmailView.html">KshowmailView</a>;
+<a name="l00034"></a>00034
+<a name="l00045"></a><a class="code" href="classKshowmailDoc.html">00045</a> <span class="keyword">class </span><a class="code" href="classKshowmailDoc.html">KshowmailDoc</a> : <span class="keyword">public</span> QObject
+<a name="l00046"></a>00046 {
+<a name="l00047"></a>00047 Q_OBJECT
+<a name="l00048"></a>00048 <span class="keyword">public</span>:
+<a name="l00050"></a>00050 <a class="code" href="classKshowmailDoc.html#02b11dd19d0c777a043a491d8811a553">KshowmailDoc</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name=0);
+<a name="l00052"></a>00052 <a class="code" href="classKshowmailDoc.html#fe8d064e8b1d44683fde4e3261333841">~KshowmailDoc</a>();
+<a name="l00053"></a>00053
+<a name="l00055"></a>00055 <span class="keywordtype">void</span> <a class="code" href="classKshowmailDoc.html#d9c7e004cad6927dd62d7a0d8f1f29b1">addView</a>(<a class="code" href="classKshowmailView.html">KshowmailView</a> *view);
+<a name="l00057"></a>00057 <span class="keywordtype">void</span> <a class="code" href="classKshowmailDoc.html#e9cd9ebc0c1bbbdf1d4178bc92fe5f55">removeView</a>(<a class="code" href="classKshowmailView.html">KshowmailView</a> *view);
+<a name="l00059"></a>00059 <span class="keywordtype">bool</span> <a class="code" href="classKshowmailDoc.html#929fdd9ad1f89ed9a000cf8c96d9f711">newDocument</a>();
+<a name="l00061"></a>00061 <span class="keyword">const</span> KURL&amp; <a class="code" href="classKshowmailDoc.html#a498d92a8c3b8a41f2bbf198f593435a">URL</a>() <span class="keyword">const</span>;
+<a name="l00063"></a>00063 <span class="keywordtype">void</span> <a class="code" href="classKshowmailDoc.html#aad1bfe0342bb8ef8b48e4feae5a4e7c">setURL</a>(<span class="keyword">const</span> KURL&amp; url);
+<a name="l00064"></a>00064
+<a name="l00065"></a>00065 <span class="keyword">public</span> slots:
+<a name="l00069"></a>00069 <span class="keywordtype">void</span> <a class="code" href="classKshowmailDoc.html#2feac43fb28fdb4971fb601520d17c54">slotUpdateAllViews</a>(<a class="code" href="classKshowmailView.html">KshowmailView</a> *sender);
+<a name="l00070"></a>00070
+<a name="l00071"></a>00071 <span class="keyword">public</span>:
+<a name="l00073"></a>00073 <span class="comment">// no List; just one view</span>
+<a name="l00074"></a><a class="code" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">00074</a> <span class="keyword">static</span> <a class="code" href="classKshowmailView.html">KshowmailView</a> *<a class="code" href="classKshowmailDoc.html#c3f05aa2557d4b0f94392530ea62bbd4">pView</a>;
+<a name="l00075"></a>00075
+<a name="l00076"></a>00076 <span class="keyword">private</span>:
+<a name="l00078"></a><a class="code" href="classKshowmailDoc.html#4c93bab9aac95af03ca857ab3e09cf21">00078</a> KURL <a class="code" href="classKshowmailDoc.html#4c93bab9aac95af03ca857ab3e09cf21">doc_url</a>;
+<a name="l00079"></a>00079 };
+<a name="l00080"></a>00080
+<a name="l00081"></a>00081 <span class="preprocessor">#endif // KSHOWMAILDOC_H</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmaildoc_8moc_8cpp-source.html b/doc/html/kshowmaildoc_8moc_8cpp-source.html
new file mode 100644
index 0000000..04876b3
--- /dev/null
+++ b/doc/html/kshowmaildoc_8moc_8cpp-source.html
@@ -0,0 +1,126 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/kshowmaildoc.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmaildoc.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** KshowmailDoc meta object code from reading C++ file 'kshowmaildoc.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Fri Jun 29 22:08:59 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: kshowmaildoc_8moc_8cpp-source.html,v 1.10 2007/07/05 17:37:51 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "kshowmaildoc.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *KshowmailDoc::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"KshowmailDoc"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *KshowmailDoc::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_KshowmailDoc( <span class="stringliteral">"KshowmailDoc"</span>, &amp;KshowmailDoc::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString KshowmailDoc::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KshowmailDoc"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString KshowmailDoc::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KshowmailDoc"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* KshowmailDoc::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = QObject::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_0[] = {
+<a name="l00056"></a>00056 { <span class="stringliteral">"sender"</span>, &amp;static_QUType_ptr, <span class="stringliteral">"KshowmailView"</span>, QUParameter::In }
+<a name="l00057"></a>00057 };
+<a name="l00058"></a>00058 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotUpdateAllViews"</span>, 1, param_slot_0 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00060"></a>00060 { <span class="stringliteral">"slotUpdateAllViews(KshowmailView*)"</span>, &amp;slot_0, QMetaData::Public }
+<a name="l00061"></a>00061 };
+<a name="l00062"></a>00062 metaObj = QMetaObject::new_metaobject(
+<a name="l00063"></a>00063 <span class="stringliteral">"KshowmailDoc"</span>, parentObject,
+<a name="l00064"></a>00064 slot_tbl, 1,
+<a name="l00065"></a>00065 0, 0,
+<a name="l00066"></a>00066 #ifndef QT_NO_PROPERTIES
+<a name="l00067"></a>00067 0, 0,
+<a name="l00068"></a>00068 0, 0,
+<a name="l00069"></a>00069 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00070"></a>00070 0, 0 );
+<a name="l00071"></a>00071 cleanUp_KshowmailDoc.setMetaObject( metaObj );
+<a name="l00072"></a>00072 <span class="keywordflow">return</span> metaObj;
+<a name="l00073"></a>00073 }
+<a name="l00074"></a>00074
+<a name="l00075"></a>00075 <span class="keywordtype">void</span>* KshowmailDoc::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00076"></a>00076 {
+<a name="l00077"></a>00077 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"KshowmailDoc"</span> ) )
+<a name="l00078"></a>00078 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00079"></a>00079 <span class="keywordflow">return</span> QObject::qt_cast( clname );
+<a name="l00080"></a>00080 }
+<a name="l00081"></a>00081
+<a name="l00082"></a>00082 <span class="keywordtype">bool</span> KshowmailDoc::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00083"></a>00083 {
+<a name="l00084"></a>00084 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00085"></a>00085 <span class="keywordflow">case</span> 0: <a class="code" href="classKshowmailDoc.html#2feac43fb28fdb4971fb601520d17c54">slotUpdateAllViews</a>((<a class="code" href="classKshowmailView.html">KshowmailView</a>*)static_QUType_ptr.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00086"></a>00086 <span class="keywordflow">default</span>:
+<a name="l00087"></a>00087 <span class="keywordflow">return</span> QObject::qt_invoke( _id, _o );
+<a name="l00088"></a>00088 }
+<a name="l00089"></a>00089 <span class="keywordflow">return</span> TRUE;
+<a name="l00090"></a>00090 }
+<a name="l00091"></a>00091
+<a name="l00092"></a>00092 <span class="keywordtype">bool</span> KshowmailDoc::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00093"></a>00093 {
+<a name="l00094"></a>00094 <span class="keywordflow">return</span> QObject::qt_emit(_id,_o);
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00097"></a>00097 <span class="preprocessor"></span>
+<a name="l00098"></a>00098 <span class="keywordtype">bool</span> KshowmailDoc::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00099"></a>00099 {
+<a name="l00100"></a>00100 <span class="keywordflow">return</span> QObject::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00101"></a>00101 }
+<a name="l00102"></a>00102
+<a name="l00103"></a>00103 <span class="keywordtype">bool</span> KshowmailDoc::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00104"></a>00104 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmaildock_8cpp-source.html b/doc/html/kshowmaildock_8cpp-source.html
new file mode 100644
index 0000000..26d1bb2
--- /dev/null
+++ b/doc/html/kshowmaildock_8cpp-source.html
@@ -0,0 +1,105 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/kshowmaildock.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmaildock.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> kshowmaildock.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Wed Jan 3 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qpixmap.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qpainter.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qtooltip.h&gt;</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;kpopupmenu.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;kstandarddirs.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;kglobalsettings.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00027"></a>00027
+<a name="l00028"></a>00028 <span class="preprocessor">#include "kshowmail.h"</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include "kshowmaildock.h"</span>
+<a name="l00030"></a>00030
+<a name="l00031"></a><a class="code" href="classKShowMailDock.html#15d2f2f49e443745b1986d23c1a08df5">00031</a> <a class="code" href="classKShowMailDock.html#15d2f2f49e443745b1986d23c1a08df5">KShowMailDock::KShowMailDock</a>(QWidget* parent, KAction *actionRefresh )
+<a name="l00032"></a>00032 : KSystemTray (parent, 0),
+<a name="l00033"></a>00033 m_background (QPixmap(::locate (<span class="stringliteral">"data"</span>, <span class="stringliteral">"kshowmail/pics/kshowmail24.png"</span>)))
+<a name="l00034"></a>00034 {
+<a name="l00035"></a>00035 <span class="comment">// kdDebug () &lt;&lt; "KShowMailDock::KShowMailDock" &lt;&lt; endl;</span>
+<a name="l00036"></a>00036 <a class="code" href="classKShowMailDock.html#c09e902133a084b547bdd29646a759b4">drawText</a> (<span class="stringliteral">"?"</span>, Qt::red);
+<a name="l00037"></a>00037 QToolTip::add (<span class="keyword">this</span>, i18n(<span class="stringliteral">"KShowmail: a powerful pop3 email checker"</span>));
+<a name="l00038"></a>00038
+<a name="l00039"></a>00039 show();
+<a name="l00040"></a>00040
+<a name="l00041"></a>00041 actionRefresh-&gt;plug( contextMenu() );
+<a name="l00042"></a>00042 <span class="comment">//((KShowMailApp*)parent)-&gt;m_actionRefresh-&gt;plug (contextMenu());</span>
+<a name="l00043"></a>00043 connect (contextMenu(),SIGNAL(activated(<span class="keywordtype">int</span>)),<span class="keyword">this</span>, SIGNAL(<a class="code" href="classKShowMailDock.html#33e30411ee0935453e742385268f7bc0">sigActivated</a>(<span class="keywordtype">int</span>)));
+<a name="l00044"></a>00044 connect (contextMenu(),SIGNAL(highlighted(<span class="keywordtype">int</span>)),<span class="keyword">this</span>, SIGNAL(<a class="code" href="classKShowMailDock.html#ee1e61dcbf2fb183c309c0637ceb23e2">sigHighlighted</a>(<span class="keywordtype">int</span>)));
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046
+<a name="l00047"></a><a class="code" href="classKShowMailDock.html#c09e902133a084b547bdd29646a759b4">00047</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailDock.html#c09e902133a084b547bdd29646a759b4">KShowMailDock::drawText</a> (<span class="keyword">const</span> QString str, <span class="keyword">const</span> QColor&amp; color)
+<a name="l00048"></a>00048 {
+<a name="l00049"></a>00049 setPixmap (<a class="code" href="classKShowMailDock.html#3535a9e1ca33dce759bb066463879976">m_background</a>);
+<a name="l00050"></a>00050 QPixmap* pix = pixmap ();
+<a name="l00051"></a>00051 <span class="keywordflow">if</span> (pix &amp;&amp; !pix-&gt;isNull ())
+<a name="l00052"></a>00052 {
+<a name="l00053"></a>00053 QPainter p (pix);
+<a name="l00054"></a>00054 <span class="comment">// p.setFont (KGlobalSettings::toolBarFont());</span>
+<a name="l00055"></a>00055 p.setFont (KGlobalSettings::windowTitleFont());
+<a name="l00056"></a>00056 p.setPen (color);
+<a name="l00057"></a>00057 p.drawText (0,0,24,24,QPainter::AlignCenter,str,str.length());
+<a name="l00058"></a>00058 }
+<a name="l00059"></a>00059 <span class="keywordflow">else</span>
+<a name="l00060"></a>00060 kdError () &lt;&lt; <span class="stringliteral">"No pixmap for traybar !"</span> &lt;&lt; endl;
+<a name="l00061"></a>00061 }
+<a name="l00062"></a>00062
+<a name="l00063"></a><a class="code" href="classKShowMailDock.html#c7a2ffc8a1356b33c3a71a8e1dcb08e5">00063</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailDock.html#c7a2ffc8a1356b33c3a71a8e1dcb08e5">KShowMailDock::drawNumber</a> (<span class="keywordtype">int</span> n, <span class="keyword">const</span> QColor&amp; color)
+<a name="l00064"></a>00064 {
+<a name="l00065"></a>00065 setPixmap (<a class="code" href="classKShowMailDock.html#3535a9e1ca33dce759bb066463879976">m_background</a>);
+<a name="l00066"></a>00066 QPixmap* pix = pixmap ();
+<a name="l00067"></a>00067 <span class="keywordflow">if</span> (pix &amp;&amp; !pix-&gt;isNull ())
+<a name="l00068"></a>00068 {
+<a name="l00069"></a>00069 QString num (QString::number(n));
+<a name="l00070"></a>00070 QPainter p (pix);
+<a name="l00071"></a>00071 p.setFont (KGlobalSettings::toolBarFont());
+<a name="l00072"></a>00072 p.setPen (color);
+<a name="l00073"></a>00073 p.drawText (0,0,24,24,QPainter::AlignCenter,num,num.length());
+<a name="l00074"></a>00074 }
+<a name="l00075"></a>00075 <span class="keywordflow">else</span>
+<a name="l00076"></a>00076 kdError () &lt;&lt; <span class="stringliteral">"No pixmap for traybar !"</span> &lt;&lt; endl;
+<a name="l00077"></a>00077 }
+<a name="l00078"></a>00078
+<a name="l00079"></a><a class="code" href="classKShowMailDock.html#60d63eca3fd1c24df211f88839ab197c">00079</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailDock.html#60d63eca3fd1c24df211f88839ab197c">KShowMailDock::clear</a> ()
+<a name="l00080"></a>00080 {
+<a name="l00081"></a>00081 setPixmap (<a class="code" href="classKShowMailDock.html#3535a9e1ca33dce759bb066463879976">m_background</a>);
+<a name="l00082"></a>00082 }
+<a name="l00083"></a>00083
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmaildock_8h-source.html b/doc/html/kshowmaildock_8h-source.html
new file mode 100644
index 0000000..14e37a0
--- /dev/null
+++ b/doc/html/kshowmaildock_8h-source.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kshowmaildock.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmaildock.h</h1><a href="kshowmaildock_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> kshowmaildock.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Wed Jan 3 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef KSHOWMAILDOCK_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define KSHOWMAILDOCK_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qwidget.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qpixmap.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;ksystemtray.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;kaction.h&gt;</span>
+<a name="l00025"></a>00025
+<a name="l00030"></a><a class="code" href="classKShowMailDock.html">00030</a> <span class="keyword">class </span><a class="code" href="classKShowMailDock.html">KShowMailDock</a> : <span class="keyword">public</span> KSystemTray
+<a name="l00031"></a>00031 {
+<a name="l00032"></a>00032 Q_OBJECT
+<a name="l00033"></a>00033 <span class="keyword">public</span>:
+<a name="l00034"></a>00034 <a class="code" href="classKShowMailDock.html#15d2f2f49e443745b1986d23c1a08df5">KShowMailDock</a>(QWidget*, KAction *actionRefresh );
+<a name="l00035"></a><a class="code" href="classKShowMailDock.html#56d112429ab3f0d2d67f4b33b47bd683">00035</a> <a class="code" href="classKShowMailDock.html#56d112429ab3f0d2d67f4b33b47bd683">~KShowMailDock</a>() {};
+<a name="l00036"></a>00036 <span class="keywordtype">void</span> <a class="code" href="classKShowMailDock.html#c09e902133a084b547bdd29646a759b4">drawText</a> (<span class="keyword">const</span> QString str, <span class="keyword">const</span> QColor&amp; color);
+<a name="l00037"></a>00037 <span class="keywordtype">void</span> <a class="code" href="classKShowMailDock.html#c7a2ffc8a1356b33c3a71a8e1dcb08e5">drawNumber</a> (<span class="keywordtype">int</span> n, <span class="keyword">const</span> QColor&amp; color);
+<a name="l00038"></a>00038 <span class="keywordtype">void</span> <a class="code" href="classKShowMailDock.html#60d63eca3fd1c24df211f88839ab197c">clear</a> ();
+<a name="l00039"></a>00039 signals:
+<a name="l00040"></a>00040 <span class="keywordtype">void</span> <a class="code" href="classKShowMailDock.html#33e30411ee0935453e742385268f7bc0">sigActivated</a>(<span class="keywordtype">int</span>);
+<a name="l00041"></a>00041 <span class="keywordtype">void</span> <a class="code" href="classKShowMailDock.html#ee1e61dcbf2fb183c309c0637ceb23e2">sigHighlighted</a>(<span class="keywordtype">int</span>);
+<a name="l00042"></a>00042 <span class="keyword">private</span>:
+<a name="l00043"></a><a class="code" href="classKShowMailDock.html#3535a9e1ca33dce759bb066463879976">00043</a> QPixmap <a class="code" href="classKShowMailDock.html#3535a9e1ca33dce759bb066463879976">m_background</a>;
+<a name="l00044"></a>00044 };
+<a name="l00045"></a>00045
+<a name="l00046"></a>00046 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmaildock_8moc_8cpp-source.html b/doc/html/kshowmaildock_8moc_8cpp-source.html
new file mode 100644
index 0000000..6624577
--- /dev/null
+++ b/doc/html/kshowmaildock_8moc_8cpp-source.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/kshowmaildock.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmaildock.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** KShowMailDock meta object code from reading C++ file 'kshowmaildock.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Fri Jun 29 22:09:01 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: kshowmaildock_8moc_8cpp-source.html,v 1.10 2007/07/05 17:37:51 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "kshowmaildock.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *KShowMailDock::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"KShowMailDock"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *KShowMailDock::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_KShowMailDock( <span class="stringliteral">"KShowMailDock"</span>, &amp;KShowMailDock::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString KShowMailDock::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KShowMailDock"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString KShowMailDock::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KShowMailDock"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* KShowMailDock::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = KSystemTray::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_signal_0[] = {
+<a name="l00056"></a>00056 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00057"></a>00057 };
+<a name="l00058"></a>00058 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod signal_0 = {<span class="stringliteral">"sigActivated"</span>, 1, param_signal_0 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_signal_1[] = {
+<a name="l00060"></a>00060 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00061"></a>00061 };
+<a name="l00062"></a>00062 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod signal_1 = {<span class="stringliteral">"sigHighlighted"</span>, 1, param_signal_1 };
+<a name="l00063"></a>00063 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData signal_tbl[] = {
+<a name="l00064"></a>00064 { <span class="stringliteral">"sigActivated(int)"</span>, &amp;signal_0, QMetaData::Public },
+<a name="l00065"></a>00065 { <span class="stringliteral">"sigHighlighted(int)"</span>, &amp;signal_1, QMetaData::Public }
+<a name="l00066"></a>00066 };
+<a name="l00067"></a>00067 metaObj = QMetaObject::new_metaobject(
+<a name="l00068"></a>00068 <span class="stringliteral">"KShowMailDock"</span>, parentObject,
+<a name="l00069"></a>00069 0, 0,
+<a name="l00070"></a>00070 signal_tbl, 2,
+<a name="l00071"></a>00071 #ifndef QT_NO_PROPERTIES
+<a name="l00072"></a>00072 0, 0,
+<a name="l00073"></a>00073 0, 0,
+<a name="l00074"></a>00074 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00075"></a>00075 0, 0 );
+<a name="l00076"></a>00076 cleanUp_KShowMailDock.setMetaObject( metaObj );
+<a name="l00077"></a>00077 <span class="keywordflow">return</span> metaObj;
+<a name="l00078"></a>00078 }
+<a name="l00079"></a>00079
+<a name="l00080"></a>00080 <span class="keywordtype">void</span>* KShowMailDock::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00081"></a>00081 {
+<a name="l00082"></a>00082 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"KShowMailDock"</span> ) )
+<a name="l00083"></a>00083 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00084"></a>00084 <span class="keywordflow">return</span> KSystemTray::qt_cast( clname );
+<a name="l00085"></a>00085 }
+<a name="l00086"></a>00086
+<a name="l00087"></a>00087 <span class="comment">// SIGNAL sigActivated</span>
+<a name="l00088"></a><a class="code" href="classKShowMailDock.html#33e30411ee0935453e742385268f7bc0">00088</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailDock.html#33e30411ee0935453e742385268f7bc0">KShowMailDock::sigActivated</a>( <span class="keywordtype">int</span> t0 )
+<a name="l00089"></a>00089 {
+<a name="l00090"></a>00090 activate_signal( staticMetaObject()-&gt;signalOffset() + 0, t0 );
+<a name="l00091"></a>00091 }
+<a name="l00092"></a>00092
+<a name="l00093"></a>00093 <span class="comment">// SIGNAL sigHighlighted</span>
+<a name="l00094"></a><a class="code" href="classKShowMailDock.html#ee1e61dcbf2fb183c309c0637ceb23e2">00094</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailDock.html#ee1e61dcbf2fb183c309c0637ceb23e2">KShowMailDock::sigHighlighted</a>( <span class="keywordtype">int</span> t0 )
+<a name="l00095"></a>00095 {
+<a name="l00096"></a>00096 activate_signal( staticMetaObject()-&gt;signalOffset() + 1, t0 );
+<a name="l00097"></a>00097 }
+<a name="l00098"></a>00098
+<a name="l00099"></a>00099 <span class="keywordtype">bool</span> KShowMailDock::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00100"></a>00100 {
+<a name="l00101"></a>00101 <span class="keywordflow">return</span> KSystemTray::qt_invoke(_id,_o);
+<a name="l00102"></a>00102 }
+<a name="l00103"></a>00103
+<a name="l00104"></a>00104 <span class="keywordtype">bool</span> KShowMailDock::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00105"></a>00105 {
+<a name="l00106"></a>00106 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;signalOffset() ) {
+<a name="l00107"></a>00107 <span class="keywordflow">case</span> 0: <a class="code" href="classKShowMailDock.html#33e30411ee0935453e742385268f7bc0">sigActivated</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00108"></a>00108 <span class="keywordflow">case</span> 1: <a class="code" href="classKShowMailDock.html#ee1e61dcbf2fb183c309c0637ceb23e2">sigHighlighted</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00109"></a>00109 <span class="keywordflow">default</span>:
+<a name="l00110"></a>00110 <span class="keywordflow">return</span> KSystemTray::qt_emit(_id,_o);
+<a name="l00111"></a>00111 }
+<a name="l00112"></a>00112 <span class="keywordflow">return</span> TRUE;
+<a name="l00113"></a>00113 }
+<a name="l00114"></a>00114 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00115"></a>00115 <span class="preprocessor"></span>
+<a name="l00116"></a>00116 <span class="keywordtype">bool</span> KShowMailDock::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00117"></a>00117 {
+<a name="l00118"></a>00118 <span class="keywordflow">return</span> KSystemTray::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00119"></a>00119 }
+<a name="l00120"></a>00120
+<a name="l00121"></a>00121 <span class="keywordtype">bool</span> KShowMailDock::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00122"></a>00122 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmailfeedback_8cpp-source.html b/doc/html/kshowmailfeedback_8cpp-source.html
new file mode 100644
index 0000000..b7f457e
--- /dev/null
+++ b/doc/html/kshowmailfeedback_8cpp-source.html
@@ -0,0 +1,176 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/kshowmailfeedback.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmailfeedback.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
+<a name="l00002"></a>00002 <span class="comment"> * File name: kshowmailfeedback.cpp</span>
+<a name="l00003"></a>00003 <span class="comment"> * Summary: User feedback questions for KShowmail</span>
+<a name="l00004"></a>00004 <span class="comment"> * License: GPL - See file COPYING for details.</span>
+<a name="l00005"></a>00005 <span class="comment"> *</span>
+<a name="l00006"></a>00006 <span class="comment"> * Author: Stefan Hundhammer &lt;sh@suse.de&gt;</span>
+<a name="l00007"></a>00007 <span class="comment"> * Eggert Ehmke &lt;eggert.ehmke@berlin.de&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> *</span>
+<a name="l00009"></a>00009 <span class="comment"> * Updated: 2002-05-30</span>
+<a name="l00010"></a>00010 <span class="comment"> *</span>
+<a name="l00011"></a>00011 <span class="comment"> * $Id: kshowmailfeedback_8cpp-source.html,v 1.10 2007/07/05 17:37:51 kuddel-fl Exp $</span>
+<a name="l00012"></a>00012 <span class="comment"> *</span>
+<a name="l00013"></a>00013 <span class="comment"> */</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015
+<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include "kshowmail.h"</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include "kfeedback.h"</span>
+<a name="l00020"></a>00020
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022
+<a name="l00023"></a><a class="code" href="classKShowMailApp.html#cb6b97d7b759372c2ab7690fc70d1518">00023</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#cb6b97d7b759372c2ab7690fc70d1518">KShowMailApp::slotSendFeedbackMail</a>()
+<a name="l00024"></a>00024 {
+<a name="l00025"></a>00025 <a class="code" href="classKFeedbackDialog.html">KFeedbackDialog</a>* feedbackDialog = <span class="keyword">new</span> <a class="code" href="classKFeedbackDialog.html">KFeedbackDialog</a>( <span class="stringliteral">"eggert.ehmke@berlin.de"</span>, <span class="stringliteral">"feedback_mail"</span> );
+<a name="l00026"></a>00026 CHECK_PTR( feedbackDialog );
+<a name="l00027"></a>00027
+<a name="l00028"></a>00028 <a class="code" href="classKFeedbackQuestionList.html">KFeedbackQuestionList</a> * list = feedbackDialog-&gt;<a class="code" href="classKFeedbackDialog.html#1d9dfb5bac160ce16eb8e929f37c31b6">form</a>()-&gt;<a class="code" href="classKFeedbackForm.html#51b1d4e1e48d18c6155203b9f72ada5e">questionList</a>();
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * question =
+<a name="l00031"></a>00031 list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"What is your general opinion about this program?"</span> ), <span class="stringliteral">"general_opinion"</span>, <span class="keyword">true</span>, <span class="keyword">true</span> );
+<a name="l00032"></a>00032
+<a name="l00033"></a>00033 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"It's one of my favourites"</span>), <span class="stringliteral">"1/8_favourite"</span>);
+<a name="l00034"></a>00034 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"I like it"</span>), <span class="stringliteral">"2/8_like_it"</span>);
+<a name="l00035"></a>00035 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"It's sometimes useful"</span>), <span class="stringliteral">"3/8_sometimes_useful"</span>);
+<a name="l00036"></a>00036 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"It's average"</span>), <span class="stringliteral">"4/8_average"</span>);
+<a name="l00037"></a>00037 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Nice try, but this could be done better"</span>), <span class="stringliteral">"5/8_nice_try"</span>);
+<a name="l00038"></a>00038 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"It's poor"</span>), <span class="stringliteral">"6/8_poor"</span>);
+<a name="l00039"></a>00039 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"It's useless"</span>), <span class="stringliteral">"7/8_useless"</span>);
+<a name="l00040"></a>00040 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"It's crap"</span>), <span class="stringliteral">"8/8_crap"</span>);
+<a name="l00041"></a>00041
+<a name="l00042"></a>00042 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"Which features of this program do you like?"</span> ), <span class="stringliteral">"features_liked"</span>, <span class="keyword">false</span> );
+<a name="l00043"></a>00043 <a class="code" href="classKShowMailApp.html#7928ea906a7abe17a5f56f110cdd58d6">addFeatureList</a>( question );
+<a name="l00044"></a>00044
+<a name="l00045"></a>00045 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"What is your favourite feature?"</span> ), <span class="stringliteral">"favourite_feature"</span>, <span class="keyword">true</span> );
+<a name="l00046"></a>00046 <a class="code" href="classKShowMailApp.html#7928ea906a7abe17a5f56f110cdd58d6">addFeatureList</a>( question );
+<a name="l00047"></a>00047
+<a name="l00048"></a>00048 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"Which features don't you like?"</span> ), <span class="stringliteral">"features_not_liked"</span>, <span class="keyword">false</span> );
+<a name="l00049"></a>00049 <a class="code" href="classKShowMailApp.html#7928ea906a7abe17a5f56f110cdd58d6">addFeatureList</a>( question );
+<a name="l00050"></a>00050
+<a name="l00051"></a>00051 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"Which features do you never use?"</span> ), <span class="stringliteral">"features_never_used"</span>, <span class="keyword">false</span> );
+<a name="l00052"></a>00052 <a class="code" href="classKShowMailApp.html#7928ea906a7abe17a5f56f110cdd58d6">addFeatureList</a>( question );
+<a name="l00053"></a>00053
+<a name="l00054"></a>00054 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"Are there features you are missing?"</span> ), <span class="stringliteral">"features_missing"</span>, <span class="keyword">true</span> );
+<a name="l00055"></a>00055 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Yes, a lot! (please add comment below)"</span> ), <span class="stringliteral">"1/4_lots"</span> );
+<a name="l00056"></a>00056 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Some (please add comment below)"</span> ), <span class="stringliteral">"2/4_some"</span> );
+<a name="l00057"></a>00057 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"None"</span> ), <span class="stringliteral">"3/4_none"</span> );
+<a name="l00058"></a>00058 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"It has too many features already!"</span> ), <span class="stringliteral">"4/4_too_many_already"</span> );
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"How do you rate the stability of this program?"</span> ), <span class="stringliteral">"stability"</span>, <span class="keyword">true</span>, <span class="keyword">true</span> );
+<a name="l00061"></a>00061 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Rock solid"</span>), <span class="stringliteral">"1/5_rock_solid"</span> );
+<a name="l00062"></a>00062 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Good"</span>), <span class="stringliteral">"2/5_good"</span>);
+<a name="l00063"></a>00063 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Average"</span>), <span class="stringliteral">"3/5_average"</span>);
+<a name="l00064"></a>00064 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Poor"</span>), <span class="stringliteral">"4/5_poor"</span> );
+<a name="l00065"></a>00065 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"It keeps crashing all the time"</span>), <span class="stringliteral">"5/5_keeps_crashing"</span> );
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"How do you rate the performance of this program?"</span> ), <span class="stringliteral">"performance"</span>, <span class="keyword">true</span> );
+<a name="l00068"></a>00068 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Great"</span>), <span class="stringliteral">"1/5_great"</span>);
+<a name="l00069"></a>00069 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Good"</span>), <span class="stringliteral">"2/5_good"</span>);
+<a name="l00070"></a>00070 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Average"</span>), <span class="stringliteral">"3/5_average"</span>);
+<a name="l00071"></a>00071 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Poor"</span>), <span class="stringliteral">"4/5_poor"</span>);
+<a name="l00072"></a>00072 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"It's so slow it drives me nuts"</span>), <span class="stringliteral">"5/5_drives_me_nuts"</span>);
+<a name="l00073"></a>00073
+<a name="l00074"></a>00074 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"What is your experience with computers in general?"</span> ), <span class="stringliteral">"computer_experience"</span>, <span class="keyword">true</span> );
+<a name="l00075"></a>00075 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Expert"</span> ), <span class="stringliteral">"1/5_expert"</span> );
+<a name="l00076"></a>00076 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Fair"</span> ), <span class="stringliteral">"2/5_fair"</span> );
+<a name="l00077"></a>00077 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Average"</span> ), <span class="stringliteral">"3/5_average"</span> );
+<a name="l00078"></a>00078 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Learning"</span> ), <span class="stringliteral">"4/5_learning"</span> );
+<a name="l00079"></a>00079 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Newbie"</span> ), <span class="stringliteral">"5/5_newbie"</span> );
+<a name="l00080"></a>00080
+<a name="l00081"></a>00081 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"What is your experience with Unix/Linux systems?"</span> ), <span class="stringliteral">"unix_experience"</span>, <span class="keyword">true</span> );
+<a name="l00082"></a>00082 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Expert"</span> ), <span class="stringliteral">"1/5_expert"</span> );
+<a name="l00083"></a>00083 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Fair"</span> ), <span class="stringliteral">"2/5_fair"</span> );
+<a name="l00084"></a>00084 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Average"</span> ), <span class="stringliteral">"3/5_average"</span> );
+<a name="l00085"></a>00085 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Learning"</span> ), <span class="stringliteral">"4/5_learning"</span> );
+<a name="l00086"></a>00086 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Newbie"</span> ), <span class="stringliteral">"5/5_newbie"</span> );
+<a name="l00087"></a>00087
+<a name="l00088"></a>00088 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"Did you have trouble figuring out how to work with this program?"</span> ),
+<a name="l00089"></a>00089 <span class="stringliteral">"learning_curve"</span>, <span class="keyword">true</span>, <span class="keyword">true</span> );
+<a name="l00090"></a>00090 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"No problem"</span> ), <span class="stringliteral">"1/5_no_problem"</span> );
+<a name="l00091"></a>00091 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Some"</span> ), <span class="stringliteral">"2/5_some_problems"</span> );
+<a name="l00092"></a>00092 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"I'm still learning"</span> ), <span class="stringliteral">"3/5_still_learing"</span> );
+<a name="l00093"></a>00093 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"I didn't have a clue what to do at first"</span> ), <span class="stringliteral">"4/5_no_clue_at_first"</span> );
+<a name="l00094"></a>00094 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"I still don't have a clue what to do"</span> ), <span class="stringliteral">"5/5_still_no_clue"</span> );
+<a name="l00095"></a>00095
+<a name="l00096"></a>00096 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"Where do you use this program most?"</span> ), <span class="stringliteral">"usage_where"</span>, <span class="keyword">true</span> );
+<a name="l00097"></a>00097 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"At work"</span> ), <span class="stringliteral">"at_work"</span> );
+<a name="l00098"></a>00098 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"At home"</span> ), <span class="stringliteral">"at_home"</span> );
+<a name="l00099"></a>00099 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"At university / school"</span> ), <span class="stringliteral">"university"</span> );
+<a name="l00100"></a>00100
+<a name="l00101"></a>00101 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"What is your primary role there?"</span> ), <span class="stringliteral">"primary_role"</span>, <span class="keyword">true</span> );
+<a name="l00102"></a>00102 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Home user"</span> ), <span class="stringliteral">"home_user"</span> );
+<a name="l00103"></a>00103 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Student"</span> ), <span class="stringliteral">"student"</span> );
+<a name="l00104"></a>00104 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Educational (teacher / professor)"</span> ), <span class="stringliteral">"educational"</span> );
+<a name="l00105"></a>00105 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Non-computer related work"</span> ), <span class="stringliteral">"non_computer"</span> );
+<a name="l00106"></a>00106 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Developer"</span> ), <span class="stringliteral">"developer"</span> );
+<a name="l00107"></a>00107 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"System administrator"</span> ), <span class="stringliteral">"sysadmin"</span> );
+<a name="l00108"></a>00108
+<a name="l00109"></a>00109 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"Do you have any other roles there?"</span> ), <span class="stringliteral">"other_roles"</span>, <span class="keyword">false</span> );
+<a name="l00110"></a>00110 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Home user"</span> ), <span class="stringliteral">"home_user"</span> );
+<a name="l00111"></a>00111 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Student"</span> ), <span class="stringliteral">"student"</span> );
+<a name="l00112"></a>00112 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Educational (teacher / professor)"</span> ), <span class="stringliteral">"educational"</span> );
+<a name="l00113"></a>00113 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Non-computer related work"</span> ), <span class="stringliteral">"non_computer"</span> );
+<a name="l00114"></a>00114 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Developer"</span> ), <span class="stringliteral">"developer"</span> );
+<a name="l00115"></a>00115 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"System administrator"</span> ), <span class="stringliteral">"sysadmin"</span> );
+<a name="l00116"></a>00116
+<a name="l00117"></a>00117 question = list-&gt;<a class="code" href="classKFeedbackQuestionList.html#7c043c6ca2c63fae277e7b43fcb8d145">addQuestion</a>( i18n( <span class="stringliteral">"How did you get to know this program?"</span> ), <span class="stringliteral">"first_contact"</span>, <span class="keyword">true</span> );
+<a name="l00118"></a>00118 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"In a menu on my machine"</span> ), <span class="stringliteral">"menu"</span> );
+<a name="l00119"></a>00119 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Somebody told me about it"</span> ), <span class="stringliteral">"told"</span> );
+<a name="l00120"></a>00120 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"On the internet"</span> ), <span class="stringliteral">"internet"</span> );
+<a name="l00121"></a>00121 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Printed magazine / book"</span> ), <span class="stringliteral">"print_media"</span> );
+<a name="l00122"></a>00122 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Other (please add comment below)"</span> ), <span class="stringliteral">"other"</span> );
+<a name="l00123"></a>00123
+<a name="l00124"></a>00124 list-&gt;<a class="code" href="classKFeedbackQuestionList.html#9408bbc813e69ef33693cffa0ddd7c91">addYesNoQuestion</a>( i18n( <span class="stringliteral">"Would you recommend this program to a friend?"</span> ), <span class="stringliteral">"recommend"</span>, <span class="keyword">true</span> );
+<a name="l00125"></a>00125
+<a name="l00126"></a>00126 feedbackDialog-&gt;show();
+<a name="l00127"></a>00127 }
+<a name="l00128"></a>00128
+<a name="l00129"></a>00129
+<a name="l00130"></a><a class="code" href="classKShowMailApp.html#7928ea906a7abe17a5f56f110cdd58d6">00130</a> <span class="keywordtype">void</span> <a class="code" href="classKShowMailApp.html#7928ea906a7abe17a5f56f110cdd58d6">KShowMailApp::addFeatureList</a>( <a class="code" href="classKFeedbackQuestion.html">KFeedbackQuestion</a> * question )
+<a name="l00131"></a>00131 {
+<a name="l00132"></a>00132 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"The message list display in general"</span>), <span class="stringliteral">"message_list"</span> );
+<a name="l00133"></a>00133 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Display of message headers"</span> ), <span class="stringliteral">"message_header"</span> );
+<a name="l00134"></a>00134 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Display of complete messages"</span>), <span class="stringliteral">"complete_message"</span> );
+<a name="l00135"></a>00135
+<a name="l00136"></a>00136 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Manual delete of unwanted messages"</span>), <span class="stringliteral">"manual_delete_messages"</span> );
+<a name="l00137"></a>00137 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Manual delete of filtered messages"</span>), <span class="stringliteral">"manual_delete_filtered_messages"</span> );
+<a name="l00138"></a>00138 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Automatic delete of filtered messages"</span>), <span class="stringliteral">"automatic_delete_filtered_messages"</span> );
+<a name="l00139"></a>00139 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Filter messages by regular expressions"</span>), <span class="stringliteral">"filter_messages_by regular_expression"</span> );
+<a name="l00140"></a>00140
+<a name="l00141"></a>00141 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Execute user commands"</span>), <span class="stringliteral">"user_commands"</span> );
+<a name="l00142"></a>00142
+<a name="l00143"></a>00143 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Sorting of messages by size, date etc."</span> ), <span class="stringliteral">"sorting"</span> );
+<a name="l00144"></a>00144
+<a name="l00145"></a>00145 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Play sound"</span>), <span class="stringliteral">"play_sound"</span> );
+<a name="l00146"></a>00146 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Play beep"</span>), <span class="stringliteral">"play_beep"</span> );
+<a name="l00147"></a>00147 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Initial timer"</span>), <span class="stringliteral">"initial_timer"</span> );
+<a name="l00148"></a>00148 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"Interval timer"</span>), <span class="stringliteral">"interval_timer"</span> );
+<a name="l00149"></a>00149 question-&gt;<a class="code" href="classKFeedbackQuestion.html#70dfbcfb7699accc62ca3f9c1b2da8b6">addAnswer</a>( i18n( <span class="stringliteral">"This feedback survey :-)"</span>), <span class="stringliteral">"feedback"</span> );
+<a name="l00150"></a>00150 }
+<a name="l00151"></a>00151
+<a name="l00152"></a>00152
+<a name="l00153"></a>00153
+<a name="l00154"></a>00154 <span class="comment">// EOF</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:06 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmailview_8cpp-source.html b/doc/html/kshowmailview_8cpp-source.html
new file mode 100644
index 0000000..3888583
--- /dev/null
+++ b/doc/html/kshowmailview_8cpp-source.html
@@ -0,0 +1,450 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/kshowmailview.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmailview.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> kshowmailview.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Sat May 6 12:13:57 MEST 2000</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2000-2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"></span>
+<a name="l00008"></a>00008 <span class="comment"> 26 Sep 2002 - Allow for columns to be hidden. Allistar Melville</span>
+<a name="l00009"></a>00009 <span class="comment"> ***************************************************************************/</span>
+<a name="l00010"></a>00010
+<a name="l00011"></a>00011 <span class="comment">/***************************************************************************</span>
+<a name="l00012"></a>00012 <span class="comment"> * *</span>
+<a name="l00013"></a>00013 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00014"></a>00014 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00015"></a>00015 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00016"></a>00016 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00017"></a>00017 <span class="comment"> * *</span>
+<a name="l00018"></a>00018 <span class="comment"> ***************************************************************************/</span>
+<a name="l00019"></a>00019
+<a name="l00020"></a>00020 <span class="comment">// include files for Qt</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qprinter.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qpainter.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;qmessagebox.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;qkeycode.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;qvaluelist.h&gt;</span>
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;kstandarddirs.h&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031 <span class="comment">// application specific includes</span>
+<a name="l00032"></a>00032 <span class="preprocessor">#include "kshowmailview.h"</span>
+<a name="l00033"></a>00033 <span class="preprocessor">#include "kshowmaildoc.h"</span>
+<a name="l00034"></a>00034 <span class="preprocessor">#include "kshowmail.h"</span>
+<a name="l00035"></a>00035
+<a name="l00036"></a><a class="code" href="classKshowmailView.html#6c0f3a139aba59b618178cffec9fdbf4">00036</a> <a class="code" href="classKshowmailView.html#6c0f3a139aba59b618178cffec9fdbf4">KshowmailView::KshowmailView</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name):
+<a name="l00037"></a>00037 QSplitter(Vertical, parent, name)
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039 <span class="comment">//get application config object (kshowmailrc)</span>
+<a name="l00040"></a>00040 <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a> = KApplication::kApplication()-&gt;config();
+<a name="l00041"></a>00041
+<a name="l00042"></a>00042 <a class="code" href="classKshowmailView.html#ac2789d0c2b897f4a9589c21a8eae2eb">m_pixOk</a> = <span class="keyword">new</span> QPixmap (::locate (<span class="stringliteral">"data"</span>, <span class="stringliteral">"kshowmail/pics/ok.png"</span>));
+<a name="l00043"></a>00043
+<a name="l00044"></a>00044 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a> = <span class="keyword">new</span> KListView (<span class="keyword">this</span>, <span class="stringliteral">"accounts"</span>);
+<a name="l00045"></a>00045 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a> = <span class="keyword">new</span> KListView (<span class="keyword">this</span>, <span class="stringliteral">"messages"</span>);
+<a name="l00046"></a>00046 setBackgroundMode(PaletteBase);
+<a name="l00047"></a>00047
+<a name="l00048"></a>00048 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;setSelectionMode (QListView::Extended);
+<a name="l00049"></a>00049 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;setAllColumnsShowFocus (<span class="keyword">true</span>);
+<a name="l00050"></a>00050 <span class="comment">// sort account column</span>
+<a name="l00051"></a>00051 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;setSorting (1);
+<a name="l00052"></a>00052 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;setShowSortIndicator (<span class="keyword">true</span>);
+<a name="l00053"></a>00053 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;addColumn (i18n(<span class="stringliteral">"Active"</span>), DEFAULT_WIDTH_ACCOUNT_ACTIVE );
+<a name="l00054"></a>00054 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;addColumn (i18n(<span class="stringliteral">"Account"</span>), DEFAULT_WIDTH_ACCOUNT_ACCOUNT );
+<a name="l00055"></a>00055 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;addColumn (i18n(<span class="stringliteral">"Server"</span>), DEFAULT_WIDTH_ACCOUNT_SERVER );
+<a name="l00056"></a>00056 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;addColumn (i18n(<span class="stringliteral">"User"</span>), DEFAULT_WIDTH_ACCOUNT_USER );
+<a name="l00057"></a>00057 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;addColumn (i18n(<span class="stringliteral">"Messages"</span>), DEFAULT_WIDTH_ACCOUNT_MESSAGES );
+<a name="l00058"></a>00058 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;addColumn (i18n(<span class="stringliteral">"Size"</span>), DEFAULT_WIDTH_ACCOUNT_SIZE );
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;setSelectionMode (QListView::Extended);
+<a name="l00061"></a>00061 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;setAllColumnsShowFocus (<span class="keyword">true</span>);
+<a name="l00062"></a>00062 <span class="comment">// sort number column</span>
+<a name="l00063"></a>00063 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;setSorting (ShowListViewItem::_colNumber);
+<a name="l00064"></a>00064 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;setShowSortIndicator (<span class="keyword">true</span>);
+<a name="l00065"></a>00065 setFocusPolicy (QWidget::StrongFocus);
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;addColumn (i18n(<span class="stringliteral">"Number"</span>), DEFAULT_WIDTH_MESSAGE_NUMBER );
+<a name="l00068"></a>00068 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;addColumn (i18n(<span class="stringliteral">"Account"</span>), DEFAULT_WIDTH_MESSAGE_ACCOUNT );
+<a name="l00069"></a>00069 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;addColumn (i18n(<span class="stringliteral">"From"</span>), DEFAULT_WIDTH_MESSAGE_FROM );
+<a name="l00070"></a>00070 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;addColumn (i18n(<span class="stringliteral">"To"</span>), DEFAULT_WIDTH_MESSAGE_TO );
+<a name="l00071"></a>00071 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;addColumn (i18n(<span class="stringliteral">"Subject"</span>), DEFAULT_WIDTH_MESSAGE_SUBJECT );
+<a name="l00072"></a>00072 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;addColumn (i18n(<span class="stringliteral">"Date"</span>), DEFAULT_WIDTH_MESSAGE_DATE );
+<a name="l00073"></a>00073 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;addColumn (i18n(<span class="stringliteral">"Size"</span>), DEFAULT_WIDTH_MESSAGE_SIZE );
+<a name="l00074"></a>00074 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;addColumn (i18n(<span class="stringliteral">"Content"</span>), DEFAULT_WIDTH_MESSAGE_CONTENT );
+<a name="l00075"></a>00075 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;addColumn (i18n(<span class="stringliteral">"State"</span>), DEFAULT_WIDTH_MESSAGE_STATE );
+<a name="l00076"></a>00076
+<a name="l00077"></a>00077 connect (<a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>, SIGNAL (rightButtonClicked (QListViewItem*, <span class="keyword">const</span> QPoint &amp;, <span class="keywordtype">int</span>)),
+<a name="l00078"></a>00078 SLOT (<a class="code" href="classKshowmailView.html#8635cb9ee8e7859f9b78ced5378c668d">slotAccountContext</a>(QListViewItem*, <span class="keyword">const</span> QPoint &amp;, <span class="keywordtype">int</span>)));
+<a name="l00079"></a>00079 connect (<a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>, SIGNAL (clicked (QListViewItem*, <span class="keyword">const</span> QPoint &amp;, <span class="keywordtype">int</span>)),
+<a name="l00080"></a>00080 SLOT (<a class="code" href="classKshowmailView.html#49db2d15dcecf0ad09fed9565d506138">slotAccountClicked</a>(QListViewItem*, <span class="keyword">const</span> QPoint &amp;, <span class="keywordtype">int</span>)));
+<a name="l00081"></a>00081 connect (<a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>, SIGNAL (rightButtonClicked (QListViewItem*, <span class="keyword">const</span> QPoint &amp;, <span class="keywordtype">int</span>)),
+<a name="l00082"></a>00082 SLOT (<a class="code" href="classKshowmailView.html#877ac2a28b5a126946199642842a8039">slotMessageContext</a>(QListViewItem*, <span class="keyword">const</span> QPoint &amp;, <span class="keywordtype">int</span>)));
+<a name="l00083"></a>00083 connect (<a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>, SIGNAL (doubleClicked (QListViewItem*)),
+<a name="l00084"></a>00084 SLOT (<a class="code" href="classKshowmailView.html#5d39dff853dab5efb5eecba7e8237d9a">slotMessageDoubleClicked</a> (QListViewItem*)));
+<a name="l00085"></a>00085 connect (<a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>, SIGNAL (clicked (QListViewItem*)),
+<a name="l00086"></a>00086 SLOT (<a class="code" href="classKshowmailView.html#2fc28b0734bd9b2af83a7a9a23875ed3">slotMessageClicked</a> (QListViewItem*)));
+<a name="l00087"></a>00087
+<a name="l00088"></a>00088 <span class="comment">//read the geometry from the application config file</span>
+<a name="l00089"></a>00089 <a class="code" href="classKshowmailView.html#ff3699740af2b58e299bc4b2326cad20">readOptions</a>();
+<a name="l00090"></a>00090
+<a name="l00091"></a>00091
+<a name="l00092"></a>00092 }
+<a name="l00093"></a>00093
+<a name="l00094"></a><a class="code" href="classKshowmailView.html#208c56da5fe95348bd13435ff44c8aae">00094</a> <a class="code" href="classKshowmailView.html#208c56da5fe95348bd13435ff44c8aae">KshowmailView::~KshowmailView</a>()
+<a name="l00095"></a>00095 {
+<a name="l00096"></a>00096 <span class="keyword">delete</span> <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>;
+<a name="l00097"></a>00097 <span class="keyword">delete</span> <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>;
+<a name="l00098"></a>00098 }
+<a name="l00099"></a>00099
+<a name="l00100"></a><a class="code" href="classKshowmailView.html#ff3699740af2b58e299bc4b2326cad20">00100</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#ff3699740af2b58e299bc4b2326cad20">KshowmailView::readOptions</a>()
+<a name="l00101"></a>00101 {
+<a name="l00102"></a>00102 <span class="comment">//read splitter geometry</span>
+<a name="l00103"></a>00103 <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>-&gt;setGroup (<span class="stringliteral">"Display Options"</span>);
+<a name="l00104"></a>00104 QValueList&lt;int&gt; size;
+<a name="l00105"></a>00105 size.append (<a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>-&gt;readNumEntry (<span class="stringliteral">"sizeaccounts"</span>, 40));
+<a name="l00106"></a>00106 size.append (<a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>-&gt;readNumEntry (<span class="stringliteral">"sizemessages"</span>, 50));
+<a name="l00107"></a>00107 setSizes (size);
+<a name="l00108"></a>00108
+<a name="l00109"></a>00109 <span class="comment">// read layout of the list views</span>
+<a name="l00110"></a>00110 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;restoreLayout( <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>, CONFIG_GROUP_ACCOUNT_LIST );
+<a name="l00111"></a>00111 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;restoreLayout( <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>, CONFIG_GROUP_MESSAGE_LIST );
+<a name="l00112"></a>00112 }
+<a name="l00113"></a>00113
+<a name="l00114"></a><a class="code" href="classKshowmailView.html#53d81f575c855870a8112ec67ade5575">00114</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#53d81f575c855870a8112ec67ade5575">KshowmailView::saveOptions</a> (KConfig* config)
+<a name="l00115"></a>00115 {
+<a name="l00116"></a>00116 <span class="comment">// kdDebug () &lt;&lt; "KshowmailView::saveOptions" &lt;&lt; endl;</span>
+<a name="l00117"></a>00117 config-&gt;setGroup(<span class="stringliteral">"Display Options"</span>);
+<a name="l00118"></a>00118 <span class="comment">//splitter</span>
+<a name="l00119"></a>00119 QValueList&lt;int&gt; size = sizes ();
+<a name="l00120"></a>00120 config-&gt;writeEntry (<span class="stringliteral">"sizeaccounts"</span>, size [0]);
+<a name="l00121"></a>00121 config-&gt;writeEntry (<span class="stringliteral">"sizemessages"</span>, size [1]);
+<a name="l00122"></a>00122 <span class="comment">// layout</span>
+<a name="l00123"></a>00123 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;saveLayout ( config, CONFIG_GROUP_ACCOUNT_LIST );
+<a name="l00124"></a>00124 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;saveLayout (config, CONFIG_GROUP_MESSAGE_LIST );
+<a name="l00125"></a>00125 }
+<a name="l00126"></a>00126
+<a name="l00127"></a>00127
+<a name="l00128"></a><a class="code" href="classKshowmailView.html#877ac2a28b5a126946199642842a8039">00128</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#877ac2a28b5a126946199642842a8039">KshowmailView::slotMessageContext</a>( QListViewItem* pItem, <span class="keyword">const</span> QPoint&amp;, <span class="keywordtype">int</span> )
+<a name="l00129"></a>00129 {
+<a name="l00130"></a>00130 <span class="keywordflow">if</span>( pItem != NULL )
+<a name="l00131"></a>00131 {
+<a name="l00132"></a>00132 <span class="comment">//get pointer to the main widget</span>
+<a name="l00133"></a>00133 <a class="code" href="classKShowMailApp.html">KShowMailApp</a>* theApp = ( <a class="code" href="classKShowMailApp.html">KShowMailApp</a> * )parentWidget();
+<a name="l00134"></a>00134
+<a name="l00135"></a>00135 <span class="comment">//create and show popup menu</span>
+<a name="l00136"></a>00136 QWidget* w = theApp-&gt;factory()-&gt;container( <span class="stringliteral">"mail_context_popup"</span>, theApp );
+<a name="l00137"></a>00137 QPopupMenu* popup = static_cast&lt;QPopupMenu*&gt;( w );
+<a name="l00138"></a>00138 popup-&gt;exec( QCursor::pos() );
+<a name="l00139"></a>00139
+<a name="l00140"></a>00140 <span class="comment">//select clicked item</span>
+<a name="l00141"></a>00141 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;setSelected (pItem, <span class="keyword">true</span>);
+<a name="l00142"></a>00142 }
+<a name="l00143"></a>00143 }
+<a name="l00144"></a>00144
+<a name="l00145"></a><a class="code" href="classKshowmailView.html#8635cb9ee8e7859f9b78ced5378c668d">00145</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#8635cb9ee8e7859f9b78ced5378c668d">KshowmailView::slotAccountContext</a>( QListViewItem* pItem, <span class="keyword">const</span> QPoint&amp;, <span class="keywordtype">int</span> )
+<a name="l00146"></a>00146 {
+<a name="l00147"></a>00147 <span class="keywordflow">if</span> ( pItem != NULL )
+<a name="l00148"></a>00148 {
+<a name="l00149"></a>00149 <span class="comment">//get pointer to the main widget</span>
+<a name="l00150"></a>00150 <a class="code" href="classKShowMailApp.html">KShowMailApp</a>* theApp = ( <a class="code" href="classKShowMailApp.html">KShowMailApp</a> * )parentWidget();
+<a name="l00151"></a>00151
+<a name="l00152"></a>00152 <span class="comment">//create and show popup menu</span>
+<a name="l00153"></a>00153 QWidget* w = theApp-&gt;factory()-&gt;container( <span class="stringliteral">"account_context_popup"</span>, theApp );
+<a name="l00154"></a>00154 QPopupMenu* popup = static_cast&lt;QPopupMenu*&gt;( w );
+<a name="l00155"></a>00155 popup-&gt;exec( QCursor::pos() );
+<a name="l00156"></a>00156
+<a name="l00157"></a>00157 <span class="comment">//select clicked item</span>
+<a name="l00158"></a>00158 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;setSelected( pItem, <span class="keyword">true</span> );
+<a name="l00159"></a>00159 }
+<a name="l00160"></a>00160 }
+<a name="l00161"></a>00161
+<a name="l00162"></a><a class="code" href="classKshowmailView.html#49db2d15dcecf0ad09fed9565d506138">00162</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#49db2d15dcecf0ad09fed9565d506138">KshowmailView::slotAccountClicked</a> (QListViewItem* pItem, <span class="keyword">const</span> QPoint&amp;, <span class="keywordtype">int</span> col)
+<a name="l00163"></a>00163 {
+<a name="l00164"></a>00164 <span class="keywordflow">if</span> (col == 0)
+<a name="l00165"></a>00165 {
+<a name="l00166"></a>00166 <a class="code" href="classKShowMailApp.html">KShowMailApp</a> *theApp=(<a class="code" href="classKShowMailApp.html">KShowMailApp</a> *) parentWidget();
+<a name="l00167"></a>00167 <a class="code" href="classConfigElem.html">ConfigElem</a>* pElem = theApp-&gt;<a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#83776f91a264d92cea2b6f7ef0c02765">getSelectedAccount</a>();
+<a name="l00168"></a>00168 <span class="keywordflow">if</span>( pElem != NULL )
+<a name="l00169"></a>00169 {
+<a name="l00170"></a>00170 pElem-&gt;<a class="code" href="classConfigElem.html#4a5aa6b86e56403fa453c9d642b71812">setActive</a>( !pElem-&gt;<a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a>() );
+<a name="l00171"></a>00171 <span class="keywordflow">if</span> (pElem-&gt;<a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a>() )
+<a name="l00172"></a>00172 pItem-&gt;setPixmap (0, *<a class="code" href="classKshowmailView.html#ac2789d0c2b897f4a9589c21a8eae2eb">m_pixOk</a>);
+<a name="l00173"></a>00173 <span class="keywordflow">else</span>
+<a name="l00174"></a>00174 pItem-&gt;setPixmap (0, 0);
+<a name="l00175"></a>00175 emit <a class="code" href="classKshowmailView.html#6fb6da4d1c23d42efe9118748b19b0f8">signalActiveChanged</a> ();
+<a name="l00176"></a>00176 }
+<a name="l00177"></a>00177 }
+<a name="l00178"></a>00178 }
+<a name="l00179"></a>00179
+<a name="l00180"></a><a class="code" href="classKshowmailView.html#5d39dff853dab5efb5eecba7e8237d9a">00180</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#5d39dff853dab5efb5eecba7e8237d9a">KshowmailView::slotMessageDoubleClicked</a> (QListViewItem* pItem)
+<a name="l00181"></a>00181 {
+<a name="l00182"></a>00182 <span class="keywordflow">if</span> (pItem)
+<a name="l00183"></a>00183 {
+<a name="l00184"></a>00184 <span class="comment">// m_pListMessages-&gt;setSelected (pItem, true);</span>
+<a name="l00185"></a>00185
+<a name="l00186"></a>00186 <a class="code" href="classKShowMailApp.html">KShowMailApp</a> *theApp=(<a class="code" href="classKShowMailApp.html">KShowMailApp</a> *) parentWidget();
+<a name="l00187"></a>00187 theApp-&gt;<a class="code" href="classKShowMailApp.html#7b9553bf179124f9f1eb56bdd094b901">slotShowHeader</a> ();
+<a name="l00188"></a>00188 }
+<a name="l00189"></a>00189 }
+<a name="l00190"></a>00190
+<a name="l00191"></a><a class="code" href="classKshowmailView.html#2fc28b0734bd9b2af83a7a9a23875ed3">00191</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#2fc28b0734bd9b2af83a7a9a23875ed3">KshowmailView::slotMessageClicked</a> (QListViewItem* pItem)
+<a name="l00192"></a>00192 {
+<a name="l00193"></a>00193 kdDebug () &lt;&lt; <span class="stringliteral">"slotMessageClicked"</span> &lt;&lt; endl;
+<a name="l00194"></a>00194 <span class="keywordflow">if</span> (pItem)
+<a name="l00195"></a>00195 {
+<a name="l00196"></a>00196 <span class="comment">// m_pListMessages-&gt;setSelected (pItem, true);</span>
+<a name="l00197"></a>00197
+<a name="l00198"></a>00198 <a class="code" href="classKShowMailApp.html">KShowMailApp</a> *theApp=(<a class="code" href="classKShowMailApp.html">KShowMailApp</a> *) parentWidget();
+<a name="l00199"></a>00199 theApp-&gt;<a class="code" href="classKShowMailApp.html#14a17e70bed413c7d4ebffc9f5e87892">delayNextRefresh</a>();
+<a name="l00200"></a>00200 }
+<a name="l00201"></a>00201 }
+<a name="l00202"></a>00202
+<a name="l00203"></a><a class="code" href="classKshowmailView.html#5cc4e2c1caaf6fae6af80b068aada95e">00203</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#5cc4e2c1caaf6fae6af80b068aada95e">KshowmailView::clearMailListView</a>( )
+<a name="l00204"></a>00204 {
+<a name="l00205"></a>00205 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;clear();
+<a name="l00206"></a>00206 }
+<a name="l00207"></a>00207
+<a name="l00208"></a><a class="code" href="classKshowmailView.html#8330c6f139457ae5dd1510efb3f665e4">00208</a> <a class="code" href="classShowListViewItem.html">ShowListViewItem</a>* <a class="code" href="classKshowmailView.html#8330c6f139457ae5dd1510efb3f665e4">KshowmailView::insertMail</a>( QString&amp; number, QString&amp; account, QString&amp; from, QString&amp; to, QString&amp; subject, QString&amp; date, QString&amp; size, QString&amp; content, QString&amp; state, QString&amp; time )
+<a name="l00209"></a>00209 {
+<a name="l00210"></a>00210 <span class="comment">//create item</span>
+<a name="l00211"></a>00211 <a class="code" href="classShowListViewItem.html">ShowListViewItem</a>* item = <span class="keyword">new</span> <a class="code" href="classShowListViewItem.html">ShowListViewItem</a>( <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a> );
+<a name="l00212"></a>00212
+<a name="l00213"></a>00213 <span class="comment">//set content</span>
+<a name="l00214"></a>00214 item-&gt;<a class="code" href="classShowListViewItem.html#2f82fc18123a144ec93f94384c936172">setNumber</a>( number );
+<a name="l00215"></a>00215 item-&gt;<a class="code" href="classShowListViewItem.html#d757b7cadf50f4b7e8af5f1f7fe09b02">setAccount</a>( account );
+<a name="l00216"></a>00216 item-&gt;<a class="code" href="classShowListViewItem.html#9ff7a14853167240196c9289924a39d6">setFrom</a>( from );
+<a name="l00217"></a>00217 item-&gt;<a class="code" href="classShowListViewItem.html#633d447c919be4b754def3ae9b03c9f6">setTo</a>( to );
+<a name="l00218"></a>00218 item-&gt;<a class="code" href="classShowListViewItem.html#c20d53f3d7d4c60bb054c958531f5d92">setSubject</a>( subject );
+<a name="l00219"></a>00219 item-&gt;<a class="code" href="classShowListViewItem.html#b96fe5949709d9ccd3d414ac81671577">setDate</a>( date );
+<a name="l00220"></a>00220 item-&gt;<a class="code" href="classShowListViewItem.html#0bb549ead9f623377fa2a240e76e3e90">setSize</a>( size );
+<a name="l00221"></a>00221 item-&gt;<a class="code" href="classShowListViewItem.html#2b5c115276821d6137cf14940d264606">setContent</a>( content );
+<a name="l00222"></a>00222 item-&gt;<a class="code" href="classShowListViewItem.html#120d8cdc825924cf408ba99c6667cf34">setState</a>( state );
+<a name="l00223"></a>00223 item-&gt;<a class="code" href="classShowListViewItem.html#0d78b8e18cae5e309719b498f40f2f89">setTime</a>( time );
+<a name="l00224"></a>00224
+<a name="l00225"></a>00225 <span class="keywordflow">return</span> item;
+<a name="l00226"></a>00226 }
+<a name="l00227"></a>00227
+<a name="l00228"></a><a class="code" href="classKshowmailView.html#4fde61960c62edd44d8eb88a82360a2a">00228</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#4fde61960c62edd44d8eb88a82360a2a">KshowmailView::refreshSetup</a>( )
+<a name="l00229"></a>00229 {
+<a name="l00230"></a>00230 QString ConfigEntryDisplay; <span class="comment">//entry of the config about show or hide column</span>
+<a name="l00231"></a>00231 QString ConfigEntrySavedWidth; <span class="comment">//entry of the config about saved width</span>
+<a name="l00232"></a>00232 <span class="keywordtype">int</span> DefaultWidth = 100; <span class="comment">//default width of the proceeded column</span>
+<a name="l00233"></a>00233 <span class="keywordtype">bool</span> DefaultDisplay = <span class="keyword">true</span>; <span class="comment">//default show or hide of the proceeded column</span>
+<a name="l00234"></a>00234
+<a name="l00235"></a>00235 <span class="comment">//set columns of the account list</span>
+<a name="l00236"></a>00236 <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>-&gt;setGroup( CONFIG_GROUP_ACCOUNT_LIST );
+<a name="l00237"></a>00237 <span class="keywordflow">for</span>( <span class="keywordtype">int</span> column = 0; column &lt;= 5; column++ ) <span class="comment">//iterate over all columns</span>
+<a name="l00238"></a>00238 {
+<a name="l00239"></a>00239 <span class="comment">//get config entries and defaults of the proceeded column from the constants header</span>
+<a name="l00240"></a>00240 <span class="keywordflow">switch</span>( column )
+<a name="l00241"></a>00241 {
+<a name="l00242"></a>00242 <span class="keywordflow">case</span> 0: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_ACCOUNT_ACTIVE;
+<a name="l00243"></a>00243 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_ACTIVE;
+<a name="l00244"></a>00244 DefaultWidth = DEFAULT_WIDTH_ACCOUNT_ACTIVE;
+<a name="l00245"></a>00245 DefaultDisplay = DEFAULT_DISPLAY_ACCOUNT_ACTIVE;
+<a name="l00246"></a>00246 <span class="keywordflow">break</span>;
+<a name="l00247"></a>00247
+<a name="l00248"></a>00248 <span class="keywordflow">case</span> 1: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_ACCOUNT_ACCOUNT;
+<a name="l00249"></a>00249 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_ACCOUNT;
+<a name="l00250"></a>00250 DefaultWidth = DEFAULT_WIDTH_ACCOUNT_ACCOUNT;
+<a name="l00251"></a>00251 DefaultDisplay = DEFAULT_DISPLAY_ACCOUNT_ACCOUNT;
+<a name="l00252"></a>00252 <span class="keywordflow">break</span>;
+<a name="l00253"></a>00253
+<a name="l00254"></a>00254 <span class="keywordflow">case</span> 2: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_ACCOUNT_SERVER;
+<a name="l00255"></a>00255 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_SERVER;
+<a name="l00256"></a>00256 DefaultWidth = DEFAULT_WIDTH_ACCOUNT_SERVER;
+<a name="l00257"></a>00257 DefaultDisplay = DEFAULT_DISPLAY_ACCOUNT_SERVER;
+<a name="l00258"></a>00258 <span class="keywordflow">break</span>;
+<a name="l00259"></a>00259
+<a name="l00260"></a>00260 <span class="keywordflow">case</span> 3: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_ACCOUNT_USER;
+<a name="l00261"></a>00261 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_USER;
+<a name="l00262"></a>00262 DefaultWidth = DEFAULT_WIDTH_ACCOUNT_USER;
+<a name="l00263"></a>00263 DefaultDisplay = DEFAULT_DISPLAY_ACCOUNT_USER;
+<a name="l00264"></a>00264 <span class="keywordflow">break</span>;
+<a name="l00265"></a>00265
+<a name="l00266"></a>00266 <span class="keywordflow">case</span> 4: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_ACCOUNT_MESSAGES;
+<a name="l00267"></a>00267 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_MESSAGES;
+<a name="l00268"></a>00268 DefaultWidth = DEFAULT_WIDTH_ACCOUNT_MESSAGES;
+<a name="l00269"></a>00269 DefaultDisplay = DEFAULT_DISPLAY_ACCOUNT_MESSAGES;
+<a name="l00270"></a>00270 <span class="keywordflow">break</span>;
+<a name="l00271"></a>00271
+<a name="l00272"></a>00272 <span class="keywordflow">case</span> 5: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_ACCOUNT_SIZE;
+<a name="l00273"></a>00273 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_SIZE;
+<a name="l00274"></a>00274 DefaultWidth = DEFAULT_WIDTH_ACCOUNT_SIZE;
+<a name="l00275"></a>00275 DefaultDisplay = DEFAULT_DISPLAY_ACCOUNT_SIZE;
+<a name="l00276"></a>00276 <span class="keywordflow">break</span>;
+<a name="l00277"></a>00277 } <span class="comment">//end select</span>
+<a name="l00278"></a>00278
+<a name="l00279"></a>00279 <span class="comment">//get desired column state</span>
+<a name="l00280"></a>00280 <span class="keywordtype">bool</span> showColumn = <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>-&gt;readBoolEntry( ConfigEntryDisplay, DefaultDisplay );
+<a name="l00281"></a>00281
+<a name="l00282"></a>00282 <span class="comment">//get currently column state</span>
+<a name="l00283"></a>00283 <span class="keywordtype">bool</span> curShowed = <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;columnWidth( column ) &gt; 0;
+<a name="l00284"></a>00284
+<a name="l00285"></a>00285 <span class="keywordflow">if</span>( showColumn )
+<a name="l00286"></a>00286 {
+<a name="l00287"></a>00287 <span class="comment">//column will be shown</span>
+<a name="l00288"></a>00288
+<a name="l00289"></a>00289 <span class="keywordflow">if</span>( !curShowed )
+<a name="l00290"></a>00290 {
+<a name="l00291"></a>00291 <span class="comment">//the column is currently not be shown</span>
+<a name="l00292"></a>00292
+<a name="l00293"></a>00293 <span class="comment">//get saved width or take default width</span>
+<a name="l00294"></a>00294 <span class="keywordtype">int</span> savedWidth = <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>-&gt;readNumEntry( ConfigEntrySavedWidth, DefaultWidth );
+<a name="l00295"></a>00295
+<a name="l00296"></a>00296 <span class="comment">//set column width</span>
+<a name="l00297"></a>00297 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;setColumnWidth( column, savedWidth );
+<a name="l00298"></a>00298 }
+<a name="l00299"></a>00299 <span class="comment">//else: the column is currently shown; do nothing</span>
+<a name="l00300"></a>00300 }
+<a name="l00301"></a>00301 <span class="keywordflow">else</span>
+<a name="l00302"></a>00302 {
+<a name="l00303"></a>00303 <span class="comment">//column will not be shown</span>
+<a name="l00304"></a>00304
+<a name="l00305"></a>00305 <span class="keywordflow">if</span>( curShowed )
+<a name="l00306"></a>00306 {
+<a name="l00307"></a>00307 <span class="comment">//the column is currently shown</span>
+<a name="l00308"></a>00308
+<a name="l00309"></a>00309 <span class="comment">//save current width</span>
+<a name="l00310"></a>00310 <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>-&gt;writeEntry( ConfigEntrySavedWidth, <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;columnWidth( column ) );
+<a name="l00311"></a>00311
+<a name="l00312"></a>00312 <span class="comment">//hide column</span>
+<a name="l00313"></a>00313 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;hideColumn( column );
+<a name="l00314"></a>00314 }
+<a name="l00315"></a>00315 <span class="comment">//else: the column is already hidden; do nothing</span>
+<a name="l00316"></a>00316 }
+<a name="l00317"></a>00317
+<a name="l00318"></a>00318 } <span class="comment">//end column loop</span>
+<a name="l00319"></a>00319
+<a name="l00320"></a>00320 <span class="comment">//set columns of the message list</span>
+<a name="l00321"></a>00321 <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>-&gt;setGroup( CONFIG_GROUP_MESSAGE_LIST );
+<a name="l00322"></a>00322 <span class="keywordflow">for</span>( <span class="keywordtype">int</span> column = 0; column &lt;= 8; column++ ) <span class="comment">//iterate over all columns</span>
+<a name="l00323"></a>00323 {
+<a name="l00324"></a>00324 <span class="comment">//get config entries and defaults of the proceeded column from the constants header</span>
+<a name="l00325"></a>00325 <span class="keywordflow">switch</span>( column )
+<a name="l00326"></a>00326 {
+<a name="l00327"></a>00327 <span class="keywordflow">case</span> 0: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_NUMBER;
+<a name="l00328"></a>00328 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_NUMBER;
+<a name="l00329"></a>00329 DefaultWidth = DEFAULT_WIDTH_MESSAGE_NUMBER;
+<a name="l00330"></a>00330 DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_NUMBER;
+<a name="l00331"></a>00331 <span class="keywordflow">break</span>;
+<a name="l00332"></a>00332
+<a name="l00333"></a>00333 <span class="keywordflow">case</span> 1: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_ACCOUNT;
+<a name="l00334"></a>00334 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_ACCOUNT;
+<a name="l00335"></a>00335 DefaultWidth = DEFAULT_WIDTH_MESSAGE_ACCOUNT;
+<a name="l00336"></a>00336 DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_ACCOUNT;
+<a name="l00337"></a>00337 <span class="keywordflow">break</span>;
+<a name="l00338"></a>00338
+<a name="l00339"></a>00339 <span class="keywordflow">case</span> 2: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_FROM;
+<a name="l00340"></a>00340 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_FROM;
+<a name="l00341"></a>00341 DefaultWidth = DEFAULT_WIDTH_MESSAGE_FROM;
+<a name="l00342"></a>00342 DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_FROM;
+<a name="l00343"></a>00343 <span class="keywordflow">break</span>;
+<a name="l00344"></a>00344
+<a name="l00345"></a>00345 <span class="keywordflow">case</span> 3: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_TO;
+<a name="l00346"></a>00346 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_TO;
+<a name="l00347"></a>00347 DefaultWidth = DEFAULT_WIDTH_MESSAGE_TO;
+<a name="l00348"></a>00348 DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_TO;
+<a name="l00349"></a>00349 <span class="keywordflow">break</span>;
+<a name="l00350"></a>00350
+<a name="l00351"></a>00351 <span class="keywordflow">case</span> 4: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_SUBJECT;
+<a name="l00352"></a>00352 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_SUBJECT;
+<a name="l00353"></a>00353 DefaultWidth = DEFAULT_WIDTH_MESSAGE_SUBJECT;
+<a name="l00354"></a>00354 DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_SUBJECT;
+<a name="l00355"></a>00355 <span class="keywordflow">break</span>;
+<a name="l00356"></a>00356
+<a name="l00357"></a>00357 <span class="keywordflow">case</span> 5: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_DATE;
+<a name="l00358"></a>00358 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_DATE;
+<a name="l00359"></a>00359 DefaultWidth = DEFAULT_WIDTH_MESSAGE_DATE;
+<a name="l00360"></a>00360 DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_DATE;
+<a name="l00361"></a>00361 <span class="keywordflow">break</span>;
+<a name="l00362"></a>00362
+<a name="l00363"></a>00363 <span class="keywordflow">case</span> 6: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_SIZE;
+<a name="l00364"></a>00364 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_SIZE;
+<a name="l00365"></a>00365 DefaultWidth = DEFAULT_WIDTH_MESSAGE_SIZE;
+<a name="l00366"></a>00366 DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_SIZE;
+<a name="l00367"></a>00367 <span class="keywordflow">break</span>;
+<a name="l00368"></a>00368
+<a name="l00369"></a>00369 <span class="keywordflow">case</span> 7: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_CONTENT;
+<a name="l00370"></a>00370 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_CONTENT;
+<a name="l00371"></a>00371 DefaultWidth = DEFAULT_WIDTH_MESSAGE_CONTENT;
+<a name="l00372"></a>00372 DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_CONTENT;
+<a name="l00373"></a>00373 <span class="keywordflow">break</span>;
+<a name="l00374"></a>00374
+<a name="l00375"></a>00375 <span class="keywordflow">case</span> 8: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_STATE;
+<a name="l00376"></a>00376 ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_STATE;
+<a name="l00377"></a>00377 DefaultWidth = DEFAULT_WIDTH_MESSAGE_STATE;
+<a name="l00378"></a>00378 DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_STATE;
+<a name="l00379"></a>00379 <span class="keywordflow">break</span>;
+<a name="l00380"></a>00380
+<a name="l00381"></a>00381 } <span class="comment">//end select</span>
+<a name="l00382"></a>00382
+<a name="l00383"></a>00383 <span class="comment">//get desired column state</span>
+<a name="l00384"></a>00384 <span class="keywordtype">bool</span> showColumn = <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>-&gt;readBoolEntry( ConfigEntryDisplay, DefaultDisplay );
+<a name="l00385"></a>00385
+<a name="l00386"></a>00386 <span class="comment">//get currently column state</span>
+<a name="l00387"></a>00387 <span class="keywordtype">bool</span> curShowed = <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;columnWidth( column ) &gt; 0;
+<a name="l00388"></a>00388
+<a name="l00389"></a>00389 <span class="keywordflow">if</span>( showColumn )
+<a name="l00390"></a>00390 {
+<a name="l00391"></a>00391 <span class="comment">//column will be shown</span>
+<a name="l00392"></a>00392
+<a name="l00393"></a>00393 <span class="keywordflow">if</span>( !curShowed )
+<a name="l00394"></a>00394 {
+<a name="l00395"></a>00395 <span class="comment">//the column is currently not be shown</span>
+<a name="l00396"></a>00396
+<a name="l00397"></a>00397 <span class="comment">//get saved width or take default width</span>
+<a name="l00398"></a>00398 <span class="keywordtype">int</span> savedWidth = <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>-&gt;readNumEntry( ConfigEntrySavedWidth, DefaultWidth );
+<a name="l00399"></a>00399
+<a name="l00400"></a>00400 <span class="comment">//set column width</span>
+<a name="l00401"></a>00401 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;setColumnWidth( column, savedWidth );
+<a name="l00402"></a>00402 }
+<a name="l00403"></a>00403 <span class="comment">//else: the column is currently shown; do nothing</span>
+<a name="l00404"></a>00404 }
+<a name="l00405"></a>00405 <span class="keywordflow">else</span>
+<a name="l00406"></a>00406 {
+<a name="l00407"></a>00407 <span class="comment">//column will not be shown</span>
+<a name="l00408"></a>00408
+<a name="l00409"></a>00409 <span class="keywordflow">if</span>( curShowed )
+<a name="l00410"></a>00410 {
+<a name="l00411"></a>00411 <span class="comment">//the column is currently shown</span>
+<a name="l00412"></a>00412
+<a name="l00413"></a>00413 <span class="comment">//save current width</span>
+<a name="l00414"></a>00414 <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>-&gt;writeEntry( ConfigEntrySavedWidth, <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;columnWidth( column ) );
+<a name="l00415"></a>00415
+<a name="l00416"></a>00416 <span class="comment">//hide column</span>
+<a name="l00417"></a>00417 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;hideColumn( column );
+<a name="l00418"></a>00418 }
+<a name="l00419"></a>00419 <span class="comment">//else: the column is already hidden; do nothing</span>
+<a name="l00420"></a>00420 }
+<a name="l00421"></a>00421
+<a name="l00422"></a>00422 } <span class="comment">//end column loop</span>
+<a name="l00423"></a>00423
+<a name="l00424"></a>00424 <span class="comment">//save current layout</span>
+<a name="l00425"></a>00425 <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>-&gt;saveLayout( <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>, CONFIG_GROUP_ACCOUNT_LIST );
+<a name="l00426"></a>00426 <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>-&gt;saveLayout( <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>, CONFIG_GROUP_MESSAGE_LIST );
+<a name="l00427"></a>00427 <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>-&gt;sync();
+<a name="l00428"></a>00428 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmailview_8h-source.html b/doc/html/kshowmailview_8h-source.html
new file mode 100644
index 0000000..e298f0a
--- /dev/null
+++ b/doc/html/kshowmailview_8h-source.html
@@ -0,0 +1,114 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/kshowmailview.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmailview.h</h1><a href="kshowmailview_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> kshowmailview.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Sat May 6 12:13:57 MEST 2000</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2000-2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"></span>
+<a name="l00008"></a>00008 <span class="comment"> 26 Sep 2002 - Allow for columns to be hidden. Allistar Melville</span>
+<a name="l00009"></a>00009 <span class="comment"> ***************************************************************************/</span>
+<a name="l00010"></a>00010
+<a name="l00011"></a>00011 <span class="comment">/***************************************************************************</span>
+<a name="l00012"></a>00012 <span class="comment"> * *</span>
+<a name="l00013"></a>00013 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00014"></a>00014 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00015"></a>00015 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00016"></a>00016 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00017"></a>00017 <span class="comment"> * *</span>
+<a name="l00018"></a>00018 <span class="comment"> ***************************************************************************/</span>
+<a name="l00019"></a>00019
+<a name="l00020"></a>00020 <span class="preprocessor">#ifndef KSHOWMAILVIEW_H</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span><span class="preprocessor">#define KSHOWMAILVIEW_H</span>
+<a name="l00022"></a>00022 <span class="preprocessor"></span>
+<a name="l00023"></a>00023 <span class="preprocessor">#ifdef HAVE_CONFIG_H</span>
+<a name="l00024"></a>00024 <span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">config.h</a>&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#endif</span>
+<a name="l00026"></a>00026 <span class="preprocessor"></span>
+<a name="l00027"></a>00027 <span class="comment">//Qt headers</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;qwidget.h&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;qsplitter.h&gt;</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;qcursor.h&gt;</span>
+<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;qpopupmenu.h&gt;</span>
+<a name="l00032"></a>00032
+<a name="l00033"></a>00033 <span class="comment">//KDE headers</span>
+<a name="l00034"></a>00034 <span class="preprocessor">#include &lt;klistview.h&gt;</span>
+<a name="l00035"></a>00035 <span class="preprocessor">#include &lt;kconfig.h&gt;</span>
+<a name="l00036"></a>00036 <span class="preprocessor">#include &lt;kapplication.h&gt;</span>
+<a name="l00037"></a>00037
+<a name="l00038"></a>00038 <span class="comment">//KShowmail headers</span>
+<a name="l00039"></a>00039 <span class="preprocessor">#include "<a class="code" href="configlist_8h.html">configlist.h</a>"</span>
+<a name="l00040"></a>00040 <span class="preprocessor">#include "<a class="code" href="showlistviewitem_8h.html">showlistviewitem.h</a>"</span>
+<a name="l00041"></a>00041
+<a name="l00042"></a>00042
+<a name="l00043"></a>00043
+<a name="l00044"></a>00044 <span class="keyword">class </span><a class="code" href="classConfigList.html">ConfigList</a>;
+<a name="l00045"></a>00045 <span class="keyword">class </span><a class="code" href="classKshowmailDoc.html">KshowmailDoc</a>;
+<a name="l00046"></a>00046
+<a name="l00057"></a><a class="code" href="classKshowmailView.html">00057</a> <span class="keyword">class </span><a class="code" href="classKshowmailView.html">KshowmailView</a> : <span class="keyword">public</span> QSplitter
+<a name="l00058"></a>00058 {
+<a name="l00059"></a>00059 Q_OBJECT
+<a name="l00060"></a>00060 <span class="keyword">public</span>:
+<a name="l00062"></a>00062 <a class="code" href="classKshowmailView.html#6c0f3a139aba59b618178cffec9fdbf4">KshowmailView</a>(QWidget *parent = 0, <span class="keyword">const</span> <span class="keywordtype">char</span> *name=0);
+<a name="l00064"></a>00064 <a class="code" href="classKshowmailView.html#208c56da5fe95348bd13435ff44c8aae">~KshowmailView</a>();
+<a name="l00065"></a>00065 <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#53d81f575c855870a8112ec67ade5575">saveOptions</a> (KConfig* <a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">config</a>);
+<a name="l00066"></a>00066
+<a name="l00067"></a><a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">00067</a> KListView* <a class="code" href="classKshowmailView.html#2ba6c19f2ac544b028934170d6443aad">m_pListAccounts</a>;
+<a name="l00068"></a><a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">00068</a> KListView* <a class="code" href="classKshowmailView.html#a319aa36e7f38a92d8691742ad52be6b">m_pListMessages</a>;
+<a name="l00069"></a>00069
+<a name="l00073"></a>00073 <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#5cc4e2c1caaf6fae6af80b068aada95e">clearMailListView</a>();
+<a name="l00074"></a>00074
+<a name="l00090"></a>00090 <a class="code" href="classShowListViewItem.html">ShowListViewItem</a>* <a class="code" href="classKshowmailView.html#8330c6f139457ae5dd1510efb3f665e4">insertMail</a>( QString&amp; number, QString&amp; account, QString&amp; from, QString&amp; to, QString&amp; subject, QString&amp; date, QString&amp; size, QString&amp; content, QString&amp; state, QString&amp; time );
+<a name="l00091"></a>00091
+<a name="l00098"></a>00098 <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#4fde61960c62edd44d8eb88a82360a2a">refreshSetup</a>();
+<a name="l00099"></a>00099
+<a name="l00100"></a>00100 <span class="keyword">private</span>:
+<a name="l00101"></a>00101
+<a name="l00102"></a><a class="code" href="classKshowmailView.html#ac2789d0c2b897f4a9589c21a8eae2eb">00102</a> QPixmap* <a class="code" href="classKshowmailView.html#ac2789d0c2b897f4a9589c21a8eae2eb">m_pixOk</a>;
+<a name="l00103"></a>00103
+<a name="l00107"></a><a class="code" href="classKshowmailView.html#232c0c7b5295a864e22bd5365044b21d">00107</a> KConfig* config;
+<a name="l00108"></a>00108
+<a name="l00112"></a>00112 <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#ff3699740af2b58e299bc4b2326cad20">readOptions</a>();
+<a name="l00113"></a>00113
+<a name="l00114"></a>00114 <span class="keyword">private</span> slots:
+<a name="l00115"></a>00115
+<a name="l00122"></a>00122 <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#877ac2a28b5a126946199642842a8039">slotMessageContext</a>( QListViewItem*, <span class="keyword">const</span> QPoint&amp;, <span class="keywordtype">int</span> );
+<a name="l00123"></a>00123
+<a name="l00124"></a>00124 <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#5d39dff853dab5efb5eecba7e8237d9a">slotMessageDoubleClicked</a> (QListViewItem*);
+<a name="l00125"></a>00125 <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#2fc28b0734bd9b2af83a7a9a23875ed3">slotMessageClicked</a> (QListViewItem*);
+<a name="l00126"></a>00126
+<a name="l00133"></a>00133 <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#8635cb9ee8e7859f9b78ced5378c668d">slotAccountContext</a>( QListViewItem*, <span class="keyword">const</span> QPoint &amp;, <span class="keywordtype">int</span> );
+<a name="l00134"></a>00134
+<a name="l00139"></a>00139 <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#49db2d15dcecf0ad09fed9565d506138">slotAccountClicked</a>( QListViewItem*, <span class="keyword">const</span> QPoint&amp; point, <span class="keywordtype">int</span> col );
+<a name="l00140"></a>00140
+<a name="l00141"></a>00141 signals:
+<a name="l00142"></a>00142 <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#6fb6da4d1c23d42efe9118748b19b0f8">signalActiveChanged</a> ();
+<a name="l00143"></a>00143 };
+<a name="l00144"></a>00144
+<a name="l00145"></a>00145 <span class="preprocessor">#endif // KSHOWMAILVIEW_H</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/kshowmailview_8moc_8cpp-source.html b/doc/html/kshowmailview_8moc_8cpp-source.html
new file mode 100644
index 0000000..f31ef29
--- /dev/null
+++ b/doc/html/kshowmailview_8moc_8cpp-source.html
@@ -0,0 +1,171 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/kshowmailview.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>kshowmailview.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** KshowmailView meta object code from reading C++ file 'kshowmailview.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Thu Jul 5 19:14:18 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: kshowmailview_8moc_8cpp-source.html,v 1.10 2007/07/05 17:37:51 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "kshowmailview.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *KshowmailView::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"KshowmailView"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *KshowmailView::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_KshowmailView( <span class="stringliteral">"KshowmailView"</span>, &amp;KshowmailView::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString KshowmailView::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KshowmailView"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString KshowmailView::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"KshowmailView"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* KshowmailView::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = QSplitter::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_0[] = {
+<a name="l00056"></a>00056 { 0, &amp;static_QUType_ptr, <span class="stringliteral">"QListViewItem"</span>, QUParameter::In },
+<a name="l00057"></a>00057 { 0, &amp;static_QUType_varptr, <span class="stringliteral">"\x0e"</span>, QUParameter::In },
+<a name="l00058"></a>00058 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00059"></a>00059 };
+<a name="l00060"></a>00060 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotMessageContext"</span>, 3, param_slot_0 };
+<a name="l00061"></a>00061 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_1[] = {
+<a name="l00062"></a>00062 { 0, &amp;static_QUType_ptr, <span class="stringliteral">"QListViewItem"</span>, QUParameter::In }
+<a name="l00063"></a>00063 };
+<a name="l00064"></a>00064 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotMessageDoubleClicked"</span>, 1, param_slot_1 };
+<a name="l00065"></a>00065 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_2[] = {
+<a name="l00066"></a>00066 { 0, &amp;static_QUType_ptr, <span class="stringliteral">"QListViewItem"</span>, QUParameter::In }
+<a name="l00067"></a>00067 };
+<a name="l00068"></a>00068 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_2 = {<span class="stringliteral">"slotMessageClicked"</span>, 1, param_slot_2 };
+<a name="l00069"></a>00069 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_3[] = {
+<a name="l00070"></a>00070 { 0, &amp;static_QUType_ptr, <span class="stringliteral">"QListViewItem"</span>, QUParameter::In },
+<a name="l00071"></a>00071 { 0, &amp;static_QUType_varptr, <span class="stringliteral">"\x0e"</span>, QUParameter::In },
+<a name="l00072"></a>00072 { 0, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00073"></a>00073 };
+<a name="l00074"></a>00074 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_3 = {<span class="stringliteral">"slotAccountContext"</span>, 3, param_slot_3 };
+<a name="l00075"></a>00075 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_4[] = {
+<a name="l00076"></a>00076 { 0, &amp;static_QUType_ptr, <span class="stringliteral">"QListViewItem"</span>, QUParameter::In },
+<a name="l00077"></a>00077 { <span class="stringliteral">"point"</span>, &amp;static_QUType_varptr, <span class="stringliteral">"\x0e"</span>, QUParameter::In },
+<a name="l00078"></a>00078 { <span class="stringliteral">"col"</span>, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00079"></a>00079 };
+<a name="l00080"></a>00080 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_4 = {<span class="stringliteral">"slotAccountClicked"</span>, 3, param_slot_4 };
+<a name="l00081"></a>00081 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00082"></a>00082 { <span class="stringliteral">"slotMessageContext(QListViewItem*,const QPoint&amp;,int)"</span>, &amp;slot_0, QMetaData::Private },
+<a name="l00083"></a>00083 { <span class="stringliteral">"slotMessageDoubleClicked(QListViewItem*)"</span>, &amp;slot_1, QMetaData::Private },
+<a name="l00084"></a>00084 { <span class="stringliteral">"slotMessageClicked(QListViewItem*)"</span>, &amp;slot_2, QMetaData::Private },
+<a name="l00085"></a>00085 { <span class="stringliteral">"slotAccountContext(QListViewItem*,const QPoint&amp;,int)"</span>, &amp;slot_3, QMetaData::Private },
+<a name="l00086"></a>00086 { <span class="stringliteral">"slotAccountClicked(QListViewItem*,const QPoint&amp;,int)"</span>, &amp;slot_4, QMetaData::Private }
+<a name="l00087"></a>00087 };
+<a name="l00088"></a>00088 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod signal_0 = {<span class="stringliteral">"signalActiveChanged"</span>, 0, 0 };
+<a name="l00089"></a>00089 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData signal_tbl[] = {
+<a name="l00090"></a>00090 { <span class="stringliteral">"signalActiveChanged()"</span>, &amp;signal_0, QMetaData::Private }
+<a name="l00091"></a>00091 };
+<a name="l00092"></a>00092 metaObj = QMetaObject::new_metaobject(
+<a name="l00093"></a>00093 <span class="stringliteral">"KshowmailView"</span>, parentObject,
+<a name="l00094"></a>00094 slot_tbl, 5,
+<a name="l00095"></a>00095 signal_tbl, 1,
+<a name="l00096"></a>00096 #ifndef QT_NO_PROPERTIES
+<a name="l00097"></a>00097 0, 0,
+<a name="l00098"></a>00098 0, 0,
+<a name="l00099"></a>00099 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00100"></a>00100 0, 0 );
+<a name="l00101"></a>00101 cleanUp_KshowmailView.setMetaObject( metaObj );
+<a name="l00102"></a>00102 <span class="keywordflow">return</span> metaObj;
+<a name="l00103"></a>00103 }
+<a name="l00104"></a>00104
+<a name="l00105"></a>00105 <span class="keywordtype">void</span>* KshowmailView::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00106"></a>00106 {
+<a name="l00107"></a>00107 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"KshowmailView"</span> ) )
+<a name="l00108"></a>00108 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00109"></a>00109 <span class="keywordflow">return</span> QSplitter::qt_cast( clname );
+<a name="l00110"></a>00110 }
+<a name="l00111"></a>00111
+<a name="l00112"></a>00112 <span class="comment">// SIGNAL signalActiveChanged</span>
+<a name="l00113"></a><a class="code" href="classKshowmailView.html#6fb6da4d1c23d42efe9118748b19b0f8">00113</a> <span class="keywordtype">void</span> <a class="code" href="classKshowmailView.html#6fb6da4d1c23d42efe9118748b19b0f8">KshowmailView::signalActiveChanged</a>()
+<a name="l00114"></a>00114 {
+<a name="l00115"></a>00115 activate_signal( staticMetaObject()-&gt;signalOffset() + 0 );
+<a name="l00116"></a>00116 }
+<a name="l00117"></a>00117
+<a name="l00118"></a>00118 <span class="keywordtype">bool</span> KshowmailView::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00119"></a>00119 {
+<a name="l00120"></a>00120 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00121"></a>00121 <span class="keywordflow">case</span> 0: <a class="code" href="classKshowmailView.html#877ac2a28b5a126946199642842a8039">slotMessageContext</a>((QListViewItem*)static_QUType_ptr.get(_o+1),(<span class="keyword">const</span> QPoint&amp;)*((<span class="keyword">const</span> QPoint*)static_QUType_ptr.get(_o+2)),(<span class="keywordtype">int</span>)static_QUType_int.get(_o+3)); <span class="keywordflow">break</span>;
+<a name="l00122"></a>00122 <span class="keywordflow">case</span> 1: <a class="code" href="classKshowmailView.html#5d39dff853dab5efb5eecba7e8237d9a">slotMessageDoubleClicked</a>((QListViewItem*)static_QUType_ptr.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00123"></a>00123 <span class="keywordflow">case</span> 2: <a class="code" href="classKshowmailView.html#2fc28b0734bd9b2af83a7a9a23875ed3">slotMessageClicked</a>((QListViewItem*)static_QUType_ptr.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00124"></a>00124 <span class="keywordflow">case</span> 3: <a class="code" href="classKshowmailView.html#8635cb9ee8e7859f9b78ced5378c668d">slotAccountContext</a>((QListViewItem*)static_QUType_ptr.get(_o+1),(<span class="keyword">const</span> QPoint&amp;)*((<span class="keyword">const</span> QPoint*)static_QUType_ptr.get(_o+2)),(<span class="keywordtype">int</span>)static_QUType_int.get(_o+3)); <span class="keywordflow">break</span>;
+<a name="l00125"></a>00125 <span class="keywordflow">case</span> 4: <a class="code" href="classKshowmailView.html#49db2d15dcecf0ad09fed9565d506138">slotAccountClicked</a>((QListViewItem*)static_QUType_ptr.get(_o+1),(<span class="keyword">const</span> QPoint&amp;)*((<span class="keyword">const</span> QPoint*)static_QUType_ptr.get(_o+2)),(<span class="keywordtype">int</span>)static_QUType_int.get(_o+3)); <span class="keywordflow">break</span>;
+<a name="l00126"></a>00126 <span class="keywordflow">default</span>:
+<a name="l00127"></a>00127 <span class="keywordflow">return</span> QSplitter::qt_invoke( _id, _o );
+<a name="l00128"></a>00128 }
+<a name="l00129"></a>00129 <span class="keywordflow">return</span> TRUE;
+<a name="l00130"></a>00130 }
+<a name="l00131"></a>00131
+<a name="l00132"></a>00132 <span class="keywordtype">bool</span> KshowmailView::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00133"></a>00133 {
+<a name="l00134"></a>00134 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;signalOffset() ) {
+<a name="l00135"></a>00135 <span class="keywordflow">case</span> 0: <a class="code" href="classKshowmailView.html#6fb6da4d1c23d42efe9118748b19b0f8">signalActiveChanged</a>(); <span class="keywordflow">break</span>;
+<a name="l00136"></a>00136 <span class="keywordflow">default</span>:
+<a name="l00137"></a>00137 <span class="keywordflow">return</span> QSplitter::qt_emit(_id,_o);
+<a name="l00138"></a>00138 }
+<a name="l00139"></a>00139 <span class="keywordflow">return</span> TRUE;
+<a name="l00140"></a>00140 }
+<a name="l00141"></a>00141 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00142"></a>00142 <span class="preprocessor"></span>
+<a name="l00143"></a>00143 <span class="keywordtype">bool</span> KshowmailView::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00144"></a>00144 {
+<a name="l00145"></a>00145 <span class="keywordflow">return</span> QSplitter::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00146"></a>00146 }
+<a name="l00147"></a>00147
+<a name="l00148"></a>00148 <span class="keywordtype">bool</span> KshowmailView::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00149"></a>00149 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/logger_8cpp-source.html b/doc/html/logger_8cpp-source.html
new file mode 100644
index 0000000..d38f4a6
--- /dev/null
+++ b/doc/html/logger_8cpp-source.html
@@ -0,0 +1,68 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/logger.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>logger.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> logger.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Son Okt 19 2003</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2003 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;kstandarddirs.h&gt;</span>
+<a name="l00019"></a>00019 <span class="comment">// #include &lt;kdebug.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include "logger.h"</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 QTextStream* <a class="code" href="classLogger.html#47a8e9cb2143530a93993f288674ffaa">Logger::logstream</a> = NULL;
+<a name="l00023"></a>00023 QFile <a class="code" href="classLogger.html#eb5105d72017f5c8ce07d4074f5e1d37">Logger::logfile</a>;
+<a name="l00024"></a>00024
+<a name="l00025"></a><a class="code" href="classLogger.html#cb668a9e186a25fbaad2e4af6d1ed00a">00025</a> <a class="code" href="classLogger.html#cb668a9e186a25fbaad2e4af6d1ed00a">Logger::~Logger</a>()
+<a name="l00026"></a>00026 {
+<a name="l00027"></a>00027 <span class="keyword">delete</span> <a class="code" href="classLogger.html#47a8e9cb2143530a93993f288674ffaa">logstream</a>;
+<a name="l00028"></a>00028 }
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 QTextStream&amp; <a class="code" href="classLogger.html">Logger</a> ()
+<a name="l00031"></a>00031 {
+<a name="l00032"></a>00032 <span class="keywordflow">if</span> (<a class="code" href="classLogger.html#47a8e9cb2143530a93993f288674ffaa">Logger::logstream</a> == NULL)
+<a name="l00033"></a>00033 {
+<a name="l00034"></a>00034 QString logfilename = locateLocal (<span class="stringliteral">"data"</span>, <span class="stringliteral">"kshowmail/kshowmail.log"</span>);
+<a name="l00035"></a>00035 <a class="code" href="classLogger.html#eb5105d72017f5c8ce07d4074f5e1d37">Logger::logfile</a>.setName (logfilename);
+<a name="l00036"></a>00036 <a class="code" href="classLogger.html#eb5105d72017f5c8ce07d4074f5e1d37">Logger::logfile</a>.open (IO_WriteOnly | IO_Append);
+<a name="l00037"></a>00037 <a class="code" href="classLogger.html#47a8e9cb2143530a93993f288674ffaa">Logger::logstream</a> = <span class="keyword">new</span> QTextStream (&amp;<a class="code" href="classLogger.html#eb5105d72017f5c8ce07d4074f5e1d37">Logger::logfile</a>);
+<a name="l00038"></a>00038 }
+<a name="l00039"></a>00039 <span class="keywordflow">return</span> *<a class="code" href="classLogger.html#47a8e9cb2143530a93993f288674ffaa">Logger::logstream</a>;
+<a name="l00040"></a>00040 }
+<a name="l00041"></a>00041
+<a name="l00042"></a><a class="code" href="classLogger.html#5cc08473729523bb4bde48459f2ac468">00042</a> <span class="keywordtype">void</span> <a class="code" href="classLogger.html#5cc08473729523bb4bde48459f2ac468">Logger::flush</a>()
+<a name="l00043"></a>00043 {
+<a name="l00044"></a>00044 <a class="code" href="classLogger.html#eb5105d72017f5c8ce07d4074f5e1d37">logfile</a>.flush();
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/logger_8h-source.html b/doc/html/logger_8h-source.html
new file mode 100644
index 0000000..b2b263c
--- /dev/null
+++ b/doc/html/logger_8h-source.html
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/logger.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>logger.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> logger.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Son Okt 19 2003</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2003 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef LOGGER_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define LOGGER_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qstring.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qfile.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;qtextstream.h&gt;</span>
+<a name="l00024"></a>00024
+<a name="l00029"></a><a class="code" href="classLogger.html">00029</a> <span class="keyword">class </span><a class="code" href="classLogger.html">Logger</a>
+<a name="l00030"></a>00030 {
+<a name="l00031"></a>00031 <span class="keyword">public</span>:
+<a name="l00032"></a><a class="code" href="classLogger.html#bc41bfb031d896170c7675fa96a6b30c">00032</a> <a class="code" href="classLogger.html#bc41bfb031d896170c7675fa96a6b30c">Logger</a> () {};
+<a name="l00033"></a>00033 <a class="code" href="classLogger.html#cb668a9e186a25fbaad2e4af6d1ed00a">~Logger</a> ();
+<a name="l00034"></a><a class="code" href="classLogger.html#47a8e9cb2143530a93993f288674ffaa">00034</a> <span class="keyword">static</span> QTextStream* <a class="code" href="classLogger.html#47a8e9cb2143530a93993f288674ffaa">logstream</a>;
+<a name="l00035"></a><a class="code" href="classLogger.html#eb5105d72017f5c8ce07d4074f5e1d37">00035</a> <span class="keyword">static</span> QFile <a class="code" href="classLogger.html#eb5105d72017f5c8ce07d4074f5e1d37">logfile</a>;
+<a name="l00036"></a>00036 <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classLogger.html#5cc08473729523bb4bde48459f2ac468">flush</a>();
+<a name="l00037"></a>00037 };
+<a name="l00038"></a>00038
+<a name="l00039"></a>00039 QTextStream&amp; <a class="code" href="classLogger.html">Logger</a> ();
+<a name="l00040"></a>00040
+<a name="l00041"></a>00041 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/main_8cpp-source.html b/doc/html/main_8cpp-source.html
new file mode 100644
index 0000000..51439ae
--- /dev/null
+++ b/doc/html/main_8cpp-source.html
@@ -0,0 +1,136 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/main.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>main.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> main.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Fre Sep 28 23:29:54 CEST 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="comment">//KDE-Header</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;kcmdlineargs.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;kaboutdata.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;kuniqueapplication.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00024"></a>00024
+<a name="l00025"></a>00025 <span class="comment">//KShowmail-Header</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include "uniqueapp.h"</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include "kshowmail.h"</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include "constants.h"</span>
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="keyword">using namespace </span>Constants;
+<a name="l00031"></a>00031
+<a name="l00032"></a>00032 <span class="comment">//description of the application</span>
+<a name="l00033"></a>00033 <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *description = I18N_NOOP(<span class="stringliteral">"A powerful pop3 mail checker"</span>);
+<a name="l00034"></a>00034
+<a name="l00035"></a>00035 <span class="comment">//the command line options</span>
+<a name="l00036"></a>00036 <span class="comment">//see constants.h</span>
+<a name="l00037"></a>00037 <span class="keyword">static</span> KCmdLineOptions kshowmailOptions[] =
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039 { CMDLINE_REFRESH_SHORT, 0, 0},
+<a name="l00040"></a>00040 { CMDLINE_REFRESH, I18N_NOOP(<span class="stringliteral">"Refresh messages now"</span>), 0 },
+<a name="l00041"></a>00041 { CMDLINE_CONFIG_SHORT, 0, 0},
+<a name="l00042"></a>00042 { CMDLINE_CONFIG, I18N_NOOP(<span class="stringliteral">"Launch configure dialog"</span>), 0 },
+<a name="l00043"></a>00043 KCmdLineLastOption
+<a name="l00044"></a>00044 };
+<a name="l00045"></a>00045
+<a name="l00046"></a>00046 <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> *argv[])
+<a name="l00047"></a>00047 {
+<a name="l00048"></a>00048 <span class="comment">//create datas for the about box</span>
+<a name="l00049"></a>00049 <a class="code" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">KShowMailApp::m_pAbout</a> = <span class="keyword">new</span> KAboutData (
+<a name="l00050"></a>00050 <span class="comment">/*appName */</span> <span class="stringliteral">"kshowmail"</span>,
+<a name="l00051"></a>00051 <span class="comment">/*programName*/</span> <span class="stringliteral">"KShowmail"</span>,
+<a name="l00052"></a>00052 <span class="comment">/*version */</span> VERSION,
+<a name="l00053"></a>00053 <span class="comment">/*description*/</span> description,
+<a name="l00054"></a>00054 <span class="comment">/*license */</span> KAboutData::License_GPL_V2,
+<a name="l00055"></a>00055 <span class="comment">/*copyright */</span> <span class="stringliteral">"(C) 2000-2005, Eggert Ehmke"</span>,
+<a name="l00056"></a>00056 <span class="comment">/*text */</span> 0,
+<a name="l00057"></a>00057 <span class="comment">/*homepage */</span> <span class="stringliteral">"http://sourceforge.net/projects/kshowmail"</span>,
+<a name="l00058"></a>00058 <span class="comment">/*bug email */</span> <span class="stringliteral">"eggert.ehmke@berlin.de"</span>);
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <span class="comment">//add authors</span>
+<a name="l00061"></a>00061 <a class="code" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">KShowMailApp::m_pAbout</a>-&gt;addAuthor (<span class="stringliteral">"Eggert Ehmke"</span>, 0, <span class="stringliteral">"eggert.ehmke@berlin.de"</span>, <span class="stringliteral">"http://kshowmail.sourceforge.net"</span>);
+<a name="l00062"></a>00062 <a class="code" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">KShowMailApp::m_pAbout</a>-&gt;addAuthor (<span class="stringliteral">"Allistar Melville"</span>, 0, <span class="stringliteral">"allistar@silvermoon.co.nz"</span>, 0);
+<a name="l00063"></a>00063 <a class="code" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">KShowMailApp::m_pAbout</a>-&gt;addAuthor (<span class="stringliteral">"Oleg Ivanov"</span>, 0, <span class="stringliteral">"saruman@unigsm.com"</span>, 0);
+<a name="l00064"></a>00064 <a class="code" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">KShowMailApp::m_pAbout</a>-&gt;addAuthor( <span class="stringliteral">"Ulrich Weigelt"</span>, 0, <span class="stringliteral">"ulrich.weigelt@gmx.de"</span>, 0 );
+<a name="l00065"></a>00065 <a class="code" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">KShowMailApp::m_pAbout</a>-&gt;setTranslator(I18N_NOOP(<span class="stringliteral">"_: NAME OF TRANSLATORS\nYour names"</span>) ,I18N_NOOP(<span class="stringliteral">"_: EMAIL OF TRANSLATORS\nYour emails"</span>));
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 <span class="comment">//Initialize command line arguments</span>
+<a name="l00068"></a>00068 KCmdLineArgs::init(argc, argv, <a class="code" href="classKShowMailApp.html#8484b7bcffed4f05ce94e1581e44d26a">KShowMailApp::m_pAbout</a>);
+<a name="l00069"></a>00069 <span class="comment">//add the special command line options of kshowmail which was specified above</span>
+<a name="l00070"></a>00070 KCmdLineArgs::addCmdLineOptions(kshowmailOptions);
+<a name="l00071"></a>00071
+<a name="l00072"></a>00072 <span class="comment">// when released, this must be 0!</span>
+<a name="l00073"></a>00073 <span class="preprocessor">#if 0</span>
+<a name="l00074"></a>00074 <span class="preprocessor"></span>
+<a name="l00075"></a>00075 kdDebug () &lt;&lt; <span class="stringliteral">"KShowmail running in debug mode"</span> &lt;&lt; endl;
+<a name="l00076"></a>00076 KApplication::addCmdLineOptions();
+<a name="l00077"></a>00077
+<a name="l00078"></a>00078 KApplication app;
+<a name="l00079"></a>00079 <a class="code" href="classKShowMailApp.html">KShowMailApp</a>* kshow = <span class="keyword">new</span> <a class="code" href="classKShowMailApp.html">KShowMailApp</a> ();
+<a name="l00080"></a>00080 kshow-&gt;show();
+<a name="l00081"></a>00081 app.exec();
+<a name="l00082"></a>00082
+<a name="l00083"></a>00083 <span class="preprocessor">#else</span>
+<a name="l00084"></a>00084 <span class="preprocessor"></span>
+<a name="l00085"></a>00085 <span class="comment">//print debug message about run mode</span>
+<a name="l00086"></a>00086 kdDebug () &lt;&lt; <span class="stringliteral">"KShowmail running in normal mode"</span> &lt;&lt; endl;
+<a name="l00087"></a>00087
+<a name="l00088"></a>00088 <span class="comment">//add special command line options for unique KDE applications</span>
+<a name="l00089"></a>00089 KUniqueApplication::addCmdLineOptions();
+<a name="l00090"></a>00090
+<a name="l00091"></a>00091 <span class="comment">//test whether the new application to start is unique</span>
+<a name="l00092"></a>00092 <span class="keywordflow">if</span> (KUniqueApplication::start())
+<a name="l00093"></a>00093 {
+<a name="l00094"></a>00094 <span class="comment">//yes, wa can start a unique kshowmail instance</span>
+<a name="l00095"></a>00095
+<a name="l00096"></a>00096 <span class="comment">//create a new unique appliction</span>
+<a name="l00097"></a>00097 <span class="comment">//UniqueApp is a inherited class of KUniqueApplication</span>
+<a name="l00098"></a>00098 <span class="comment">//see uniqueapp.h</span>
+<a name="l00099"></a>00099 <a class="code" href="classUniqueApp.html">UniqueApp</a>* app = <span class="keyword">new</span> <a class="code" href="classUniqueApp.html">UniqueApp</a> ();
+<a name="l00100"></a>00100
+<a name="l00101"></a>00101 <span class="comment">//start the application</span>
+<a name="l00102"></a>00102 app-&gt;exec ();
+<a name="l00103"></a>00103 }
+<a name="l00104"></a>00104 <span class="keywordflow">else</span>
+<a name="l00105"></a>00105 {
+<a name="l00106"></a>00106 <span class="comment">//kshowmail is already running</span>
+<a name="l00107"></a>00107 kdWarning() &lt;&lt; I18N_NOOP (<span class="stringliteral">"Kshowmail is already running!"</span>) &lt;&lt; endl;
+<a name="l00108"></a>00108 }
+<a name="l00109"></a>00109
+<a name="l00110"></a>00110 <span class="preprocessor">#endif</span>
+<a name="l00111"></a>00111 <span class="preprocessor"></span>
+<a name="l00112"></a>00112 <span class="keywordflow">return</span> 0;
+<a name="l00113"></a>00113 }
+<a name="l00114"></a>00114
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/namespaceConstants.html b/doc/html/namespaceConstants.html
new file mode 100644
index 0000000..129d518
--- /dev/null
+++ b/doc/html/namespaceConstants.html
@@ -0,0 +1,33 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Constants Namespace Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li id="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="namespaces.html"><span>Namespace List</span></a></li>
+ <li><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>Constants Namespace Reference</h1>
+<p>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Contains all constants.
+<p>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/namespaceTypes.html b/doc/html/namespaceTypes.html
new file mode 100644
index 0000000..c4c4460
--- /dev/null
+++ b/doc/html/namespaceTypes.html
@@ -0,0 +1,230 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Types Namespace Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li id="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="namespaces.html"><span>Namespace List</span></a></li>
+ <li><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>Types Namespace Reference</h1>
+<p>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structTypes_1_1DownloadActionParams__Type.html">DownloadActionParams_Type</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structTypes_1_1FilterCriteria__Type.html">FilterCriteria_Type</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef QValueList&lt; int &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">MailNumberList_Type</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef QMap&lt; QString, bool &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceTypes.html#ca963e9ff87e4dfc99a0123af22c0346">AccountTaskMap_Type</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef QMap&lt; int, <a class="el" href="structTypes_1_1DownloadActionParams__Type.html">DownloadActionParams_Type</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceTypes.html#28b7da8de2bbe1b7a098d41242e78ab7">MailToDownloadMap_Type</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef list&lt; <a class="el" href="structTypes_1_1FilterCriteria__Type.html">FilterCriteria_Type</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceTypes.html#2eaafd5612933c2e6ab8dd15593969a2">FilterCriteriaList_Type</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565">State_Type</a> { <br>
+&nbsp;&nbsp;<a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>,
+<a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565f49cd232f53f8851506c138924f2ec65">deleting</a>,
+<a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa5653cde4c681a768eef7df3659c849a34b6">configure</a>,
+<a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa56575f7f7187ee9497e63584b0ccb17a919">executing</a>,
+<br>
+&nbsp;&nbsp;<a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa5655ee02dbb2bbc5f45a1a2517f7536c77c">showing</a>,
+<a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa56592bd813e8e24cdf9c233a4cf26ebb691">refreshing</a>
+<br>
+ }</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">AccountState_Type</a> { <a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">AccountIdle</a>,
+<a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6c13599f1c51b33a59b319794917ccff5">AccountDeleting</a>,
+<a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b63accada2afa1ad270e3b25c14cae5fd9">AccountDownloading</a>,
+<a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6ba5316f9cbdb41a05f75ebe4976865b9">AccountRefreshing</a>
+ }</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">FilterAction_Type</a> { <br>
+&nbsp;&nbsp;<a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf0e2f723024c86b001d2c0d50cc70e456">FActPass</a>,
+<a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf9de5e046888ae556dd3f4548957fcf10">FActDelete</a>,
+<a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf0b8c53628aabb517f41d6ccdf5bf5d4c">FActMark</a>,
+<a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf4f2a44934f9b85ed07832ccf32016462">FActMove</a>,
+<br>
+&nbsp;&nbsp;<a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adfc54805588ea5ecd697098c55a3ec73a1">FActSpamcheck</a>,
+<a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf6b838ac6d09fdaade0e40f4a50d33b68">FActIgnore</a>,
+<a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adfb62372bfae14c67a307649aa9f2f7f34">FActNone</a>
+<br>
+ }</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+All special types for KShowMail.
+<p>
+<hr><h2>Typedef Documentation</h2>
+<a class="anchor" name="ca963e9ff87e4dfc99a0123af22c0346"></a><!-- doxytag: member="Types::AccountTaskMap_Type" ref="ca963e9ff87e4dfc99a0123af22c0346" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef QMap&lt;QString, bool&gt; <a class="el" href="namespaceTypes.html#ca963e9ff87e4dfc99a0123af22c0346">Types::AccountTaskMap_Type</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Map to notice which accounts need to get an order to do a task. The Key is the account name and the data a boolean. TRUE means the task was ordered, FALSE the task was ended.
+</div>
+</div><p>
+<a class="anchor" name="2eaafd5612933c2e6ab8dd15593969a2"></a><!-- doxytag: member="Types::FilterCriteriaList_Type" ref="2eaafd5612933c2e6ab8dd15593969a2" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef list&lt;<a class="el" href="structTypes_1_1FilterCriteria__Type.html">FilterCriteria_Type</a>&gt; <a class="el" href="namespaceTypes.html#2eaafd5612933c2e6ab8dd15593969a2">Types::FilterCriteriaList_Type</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+List of filter criterias.
+</div>
+</div><p>
+<a class="anchor" name="48fad16d3707caeaf47bb1e8fab4be55"></a><!-- doxytag: member="Types::MailNumberList_Type" ref="48fad16d3707caeaf47bb1e8fab4be55" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef QValueList&lt;int&gt; <a class="el" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">Types::MailNumberList_Type</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+List of mail numbers. It is a QValueList of integers.
+</div>
+</div><p>
+<a class="anchor" name="28b7da8de2bbe1b7a098d41242e78ab7"></a><!-- doxytag: member="Types::MailToDownloadMap_Type" ref="28b7da8de2bbe1b7a098d41242e78ab7" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef QMap&lt;int, <a class="el" href="structTypes_1_1DownloadActionParams__Type.html">DownloadActionParams_Type</a>&gt; <a class="el" href="namespaceTypes.html#28b7da8de2bbe1b7a098d41242e78ab7">Types::MailToDownloadMap_Type</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+This map is used by <a class="el" href="classConfigElem.html">ConfigElem</a> and <a class="el" href="classShowRecord.html">ShowRecord</a> to hold a list of mail numbers which shall be downloaded for some filter actions; at time for moving and spam check
+</div>
+</div><p>
+<hr><h2>Enumeration Type Documentation</h2>
+<a class="anchor" name="57c868019acd102e855ff50f6043c1b6"></a><!-- doxytag: member="Types::AccountState_Type" ref="57c868019acd102e855ff50f6043c1b6" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">Types::AccountState_Type</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+State of an account. <dl compact><dt><b>Enumerator: </b></dt><dd>
+<table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" name="57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7"></a><!-- doxytag: member="AccountIdle" ref="57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7" args="" -->AccountIdle</em>&nbsp;</td><td>
+it's doing nothing </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="57c868019acd102e855ff50f6043c1b6c13599f1c51b33a59b319794917ccff5"></a><!-- doxytag: member="AccountDeleting" ref="57c868019acd102e855ff50f6043c1b6c13599f1c51b33a59b319794917ccff5" args="" -->AccountDeleting</em>&nbsp;</td><td>
+a deletion is running </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="57c868019acd102e855ff50f6043c1b63accada2afa1ad270e3b25c14cae5fd9"></a><!-- doxytag: member="AccountDownloading" ref="57c868019acd102e855ff50f6043c1b63accada2afa1ad270e3b25c14cae5fd9" args="" -->AccountDownloading</em>&nbsp;</td><td>
+the account is downloading mail bodies </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="57c868019acd102e855ff50f6043c1b6ba5316f9cbdb41a05f75ebe4976865b9"></a><!-- doxytag: member="AccountRefreshing" ref="57c868019acd102e855ff50f6043c1b6ba5316f9cbdb41a05f75ebe4976865b9" args="" -->AccountRefreshing</em>&nbsp;</td><td>
+the account is refreshing its mail list </td></tr>
+</table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="ce032cf029e8037fd21721b33e3a6adf"></a><!-- doxytag: member="Types::FilterAction_Type" ref="ce032cf029e8037fd21721b33e3a6adf" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">Types::FilterAction_Type</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Actions returned by filters. <dl compact><dt><b>Enumerator: </b></dt><dd>
+<table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" name="ce032cf029e8037fd21721b33e3a6adf0e2f723024c86b001d2c0d50cc70e456"></a><!-- doxytag: member="FActPass" ref="ce032cf029e8037fd21721b33e3a6adf0e2f723024c86b001d2c0d50cc70e456" args="" -->FActPass</em>&nbsp;</td><td>
+Mail has passed the filter check. It can showed in the list. </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="ce032cf029e8037fd21721b33e3a6adf9de5e046888ae556dd3f4548957fcf10"></a><!-- doxytag: member="FActDelete" ref="ce032cf029e8037fd21721b33e3a6adf9de5e046888ae556dd3f4548957fcf10" args="" -->FActDelete</em>&nbsp;</td><td>
+Undesirable mail. Delete it. </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="ce032cf029e8037fd21721b33e3a6adf0b8c53628aabb517f41d6ccdf5bf5d4c"></a><!-- doxytag: member="FActMark" ref="ce032cf029e8037fd21721b33e3a6adf0b8c53628aabb517f41d6ccdf5bf5d4c" args="" -->FActMark</em>&nbsp;</td><td>
+Probably undesirable mail. Mark it in the mail list. </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="ce032cf029e8037fd21721b33e3a6adf4f2a44934f9b85ed07832ccf32016462"></a><!-- doxytag: member="FActMove" ref="ce032cf029e8037fd21721b33e3a6adf4f2a44934f9b85ed07832ccf32016462" args="" -->FActMove</em>&nbsp;</td><td>
+Move the mail to a certain mail box. The name of the box will returned by a further parameter. </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="ce032cf029e8037fd21721b33e3a6adfc54805588ea5ecd697098c55a3ec73a1"></a><!-- doxytag: member="FActSpamcheck" ref="ce032cf029e8037fd21721b33e3a6adfc54805588ea5ecd697098c55a3ec73a1" args="" -->FActSpamcheck</em>&nbsp;</td><td>
+This mail shall be forwared to a spam filter, which checks the whole mail including body. </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="ce032cf029e8037fd21721b33e3a6adf6b838ac6d09fdaade0e40f4a50d33b68"></a><!-- doxytag: member="FActIgnore" ref="ce032cf029e8037fd21721b33e3a6adf6b838ac6d09fdaade0e40f4a50d33b68" args="" -->FActIgnore</em>&nbsp;</td><td>
+This mail shall not be shown. </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="ce032cf029e8037fd21721b33e3a6adfb62372bfae14c67a307649aa9f2f7f34"></a><!-- doxytag: member="FActNone" ref="ce032cf029e8037fd21721b33e3a6adfb62372bfae14c67a307649aa9f2f7f34" args="" -->FActNone</em>&nbsp;</td><td>
+The mail doesn't match up with the filter. Perform the next one. </td></tr>
+</table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="dc227eb5720632a8290561b001aaa565"></a><!-- doxytag: member="Types::State_Type" ref="dc227eb5720632a8290561b001aaa565" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565">Types::State_Type</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+State of the application during running time. <dl compact><dt><b>Enumerator: </b></dt><dd>
+<table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" name="dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380"></a><!-- doxytag: member="idle" ref="dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380" args="" -->idle</em>&nbsp;</td><td>
+it's doing nothing </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="dc227eb5720632a8290561b001aaa565f49cd232f53f8851506c138924f2ec65"></a><!-- doxytag: member="deleting" ref="dc227eb5720632a8290561b001aaa565f49cd232f53f8851506c138924f2ec65" args="" -->deleting</em>&nbsp;</td><td>
+it's deleting a message on the server </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="dc227eb5720632a8290561b001aaa5653cde4c681a768eef7df3659c849a34b6"></a><!-- doxytag: member="configure" ref="dc227eb5720632a8290561b001aaa5653cde4c681a768eef7df3659c849a34b6" args="" -->configure</em>&nbsp;</td><td>
+the user is configuring the application or the mail or just the header of the mail is being shown </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="dc227eb5720632a8290561b001aaa56575f7f7187ee9497e63584b0ccb17a919"></a><!-- doxytag: member="executing" ref="dc227eb5720632a8290561b001aaa56575f7f7187ee9497e63584b0ccb17a919" args="" -->executing</em>&nbsp;</td><td>
+a command on the command list is being executed </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="dc227eb5720632a8290561b001aaa5655ee02dbb2bbc5f45a1a2517f7536c77c"></a><!-- doxytag: member="showing" ref="dc227eb5720632a8290561b001aaa5655ee02dbb2bbc5f45a1a2517f7536c77c" args="" -->showing</em>&nbsp;</td><td>
+it's downloading and showing a mail </td></tr>
+<tr><td valign="top"><em><a class="anchor" name="dc227eb5720632a8290561b001aaa56592bd813e8e24cdf9c233a4cf26ebb691"></a><!-- doxytag: member="refreshing" ref="dc227eb5720632a8290561b001aaa56592bd813e8e24cdf9c233a4cf26ebb691" args="" -->refreshing</em>&nbsp;</td><td>
+it's refreshing the mail lists </td></tr>
+</table>
+</dl>
+
+</div>
+</div><p>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/namespacemembers.html b/doc/html/namespacemembers.html
new file mode 100644
index 0000000..1057d67
--- /dev/null
+++ b/doc/html/namespacemembers.html
@@ -0,0 +1,135 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li id="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="namespaces.html"><span>Namespace List</span></a></li>
+ <li id="current"><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="namespacemembers.html"><span>All</span></a></li>
+ <li><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+ <li><a href="namespacemembers_type.html"><span>Typedefs</span></a></li>
+ <li><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+ </ul>
+</div>
+<div class="tabs">
+ <ul>
+ <li><a href="#index_a"><span>a</span></a></li>
+ <li><a href="#index_c"><span>c</span></a></li>
+ <li><a href="#index_d"><span>d</span></a></li>
+ <li><a href="#index_e"><span>e</span></a></li>
+ <li><a href="#index_f"><span>f</span></a></li>
+ <li><a href="#index_g"><span>g</span></a></li>
+ <li><a href="#index_h"><span>h</span></a></li>
+ <li><a href="#index_i"><span>i</span></a></li>
+ <li><a href="#index_m"><span>m</span></a></li>
+ <li><a href="#index_r"><span>r</span></a></li>
+ <li><a href="#index_s"><span>s</span></a></li>
+ </ul>
+</div>
+
+<p>
+Here is a list of all namespace members with links to the namespace documentation for each member:
+<p>
+<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
+<li>AccountDeleting
+: <a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6c13599f1c51b33a59b319794917ccff5">Types</a>
+<li>AccountDownloading
+: <a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b63accada2afa1ad270e3b25c14cae5fd9">Types</a>
+<li>AccountIdle
+: <a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">Types</a>
+<li>AccountRefreshing
+: <a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6ba5316f9cbdb41a05f75ebe4976865b9">Types</a>
+<li>AccountState_Type
+: <a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">Types</a>
+<li>AccountTaskMap_Type
+: <a class="el" href="namespaceTypes.html#ca963e9ff87e4dfc99a0123af22c0346">Types</a>
+</ul>
+<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
+<li>configure
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa5653cde4c681a768eef7df3659c849a34b6">Types</a>
+<li>crypt()
+: <a class="el" href="namespaceEncryption.html#83f630d4dba4cf3a5f6b03a25e43f6c8">Encryption</a>
+</ul>
+<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
+<li>decodeRFC2047()
+: <a class="el" href="namespaceCodecs.html#a0ef7c083708a464b1f1357ba5470cde">Codecs</a>
+<li>decrypt()
+: <a class="el" href="namespaceEncryption.html#df6ae41daa3eebed6cc7a74a37936981">Encryption</a>
+<li>deleting
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565f49cd232f53f8851506c138924f2ec65">Types</a>
+</ul>
+<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
+<li>executing
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa56575f7f7187ee9497e63584b0ccb17a919">Types</a>
+</ul>
+<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
+<li>FActDelete
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf9de5e046888ae556dd3f4548957fcf10">Types</a>
+<li>FActIgnore
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf6b838ac6d09fdaade0e40f4a50d33b68">Types</a>
+<li>FActMark
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf0b8c53628aabb517f41d6ccdf5bf5d4c">Types</a>
+<li>FActMove
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf4f2a44934f9b85ed07832ccf32016462">Types</a>
+<li>FActNone
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adfb62372bfae14c67a307649aa9f2f7f34">Types</a>
+<li>FActPass
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf0e2f723024c86b001d2c0d50cc70e456">Types</a>
+<li>FActSpamcheck
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adfc54805588ea5ecd697098c55a3ec73a1">Types</a>
+<li>FilterAction_Type
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">Types</a>
+<li>FilterCriteriaList_Type
+: <a class="el" href="namespaceTypes.html#2eaafd5612933c2e6ab8dd15593969a2">Types</a>
+</ul>
+<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
+<li>getPassword()
+: <a class="el" href="namespaceKWalletAccess.html#2ce179e4ef9e2a06990252aca555b2fa">KWalletAccess</a>
+</ul>
+<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
+<li>hexbyt()
+: <a class="el" href="namespaceEncryption.html#02fd936d5104d5b18485497f8bb322be">Encryption</a>
+</ul>
+<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
+<li>idle
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">Types</a>
+</ul>
+<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
+<li>MailNumberList_Type
+: <a class="el" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">Types</a>
+<li>MailToDownloadMap_Type
+: <a class="el" href="namespaceTypes.html#28b7da8de2bbe1b7a098d41242e78ab7">Types</a>
+</ul>
+<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
+<li>refreshing
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa56592bd813e8e24cdf9c233a4cf26ebb691">Types</a>
+</ul>
+<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
+<li>savePassword()
+: <a class="el" href="namespaceKWalletAccess.html#0687cd1465352be5b3572cdfd2411219">KWalletAccess</a>
+<li>showing
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa5655ee02dbb2bbc5f45a1a2517f7536c77c">Types</a>
+<li>State_Type
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565">Types</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/namespacemembers_enum.html b/doc/html/namespacemembers_enum.html
new file mode 100644
index 0000000..be8e04e
--- /dev/null
+++ b/doc/html/namespacemembers_enum.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li id="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="namespaces.html"><span>Namespace List</span></a></li>
+ <li id="current"><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="namespacemembers.html"><span>All</span></a></li>
+ <li><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+ <li><a href="namespacemembers_type.html"><span>Typedefs</span></a></li>
+ <li id="current"><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+ </ul>
+</div>
+&nbsp;
+<p>
+<ul>
+<li>AccountState_Type
+: <a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">Types</a>
+<li>FilterAction_Type
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">Types</a>
+<li>State_Type
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565">Types</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/namespacemembers_eval.html b/doc/html/namespacemembers_eval.html
new file mode 100644
index 0000000..dfa9f5c
--- /dev/null
+++ b/doc/html/namespacemembers_eval.html
@@ -0,0 +1,72 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Class Members</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li id="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="namespaces.html"><span>Namespace List</span></a></li>
+ <li id="current"><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="namespacemembers.html"><span>All</span></a></li>
+ <li><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+ <li><a href="namespacemembers_type.html"><span>Typedefs</span></a></li>
+ <li><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+ <li id="current"><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+ </ul>
+</div>
+&nbsp;
+<p>
+<ul>
+<li>AccountDeleting
+: <a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6c13599f1c51b33a59b319794917ccff5">Types</a>
+<li>AccountDownloading
+: <a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b63accada2afa1ad270e3b25c14cae5fd9">Types</a>
+<li>AccountIdle
+: <a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">Types</a>
+<li>AccountRefreshing
+: <a class="el" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6ba5316f9cbdb41a05f75ebe4976865b9">Types</a>
+<li>configure
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa5653cde4c681a768eef7df3659c849a34b6">Types</a>
+<li>deleting
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565f49cd232f53f8851506c138924f2ec65">Types</a>
+<li>executing
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa56575f7f7187ee9497e63584b0ccb17a919">Types</a>
+<li>FActDelete
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf9de5e046888ae556dd3f4548957fcf10">Types</a>
+<li>FActIgnore
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf6b838ac6d09fdaade0e40f4a50d33b68">Types</a>
+<li>FActMark
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf0b8c53628aabb517f41d6ccdf5bf5d4c">Types</a>
+<li>FActMove
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf4f2a44934f9b85ed07832ccf32016462">Types</a>
+<li>FActNone
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adfb62372bfae14c67a307649aa9f2f7f34">Types</a>
+<li>FActPass
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf0e2f723024c86b001d2c0d50cc70e456">Types</a>
+<li>FActSpamcheck
+: <a class="el" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adfc54805588ea5ecd697098c55a3ec73a1">Types</a>
+<li>idle
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">Types</a>
+<li>refreshing
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa56592bd813e8e24cdf9c233a4cf26ebb691">Types</a>
+<li>showing
+: <a class="el" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa5655ee02dbb2bbc5f45a1a2517f7536c77c">Types</a>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/namespaces.html b/doc/html/namespaces.html
new file mode 100644
index 0000000..9da54a7
--- /dev/null
+++ b/doc/html/namespaces.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Namespace Index</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li id="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li id="current"><a href="namespaces.html"><span>Namespace List</span></a></li>
+ <li><a href="namespacemembers.html"><span>Namespace&nbsp;Members</span></a></li>
+ </ul></div>
+<h1>kshowmail.kdevelop Namespace List</h1>Here is a list of all namespaces with brief descriptions:<table>
+ <tr><td class="indexkey"><a class="el" href="namespaceCodecs.html">Codecs</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="namespaceConstants.html">Constants</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="namespaceEncryption.html">Encryption</a></td><td class="indexvalue">Provides functions to crypt and decrypt a password </td></tr>
+ <tr><td class="indexkey"><a class="el" href="namespaceKIO.html">KIO</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="namespaceKWalletAccess.html">KWalletAccess</a></td><td class="indexvalue">Provides routines to save and read passwords using KWallet </td></tr>
+ <tr><td class="indexkey"><a class="el" href="namespacestd.html">std</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="namespaceTypes.html">Types</a></td><td class="indexvalue"></td></tr>
+</table>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:50 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/optiondialog_8cpp-source.html b/doc/html/optiondialog_8cpp-source.html
new file mode 100644
index 0000000..5b4c828
--- /dev/null
+++ b/doc/html/optiondialog_8cpp-source.html
@@ -0,0 +1,290 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/optiondialog.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>optiondialog.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> optiondialog.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Fri Oct 26 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"></span>
+<a name="l00008"></a>00008 <span class="comment"> 26 Sep 2002 - Allow for columns to be hidden. Allistar Melville</span>
+<a name="l00009"></a>00009 <span class="comment"> ***************************************************************************/</span>
+<a name="l00010"></a>00010
+<a name="l00011"></a>00011 <span class="comment">/***************************************************************************</span>
+<a name="l00012"></a>00012 <span class="comment"> * *</span>
+<a name="l00013"></a>00013 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00014"></a>00014 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00015"></a>00015 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00016"></a>00016 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00017"></a>00017 <span class="comment"> * *</span>
+<a name="l00018"></a>00018 <span class="comment"> ***************************************************************************/</span>
+<a name="l00019"></a>00019
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qcheckbox.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qspinbox.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qlabel.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;qfileinfo.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;qfiledialog.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;qpushbutton.h&gt;</span>
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;kmessagebox.h&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;knuminput.h&gt;</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00031"></a>00031
+<a name="l00032"></a>00032 <span class="preprocessor">#include "optiondialog.h"</span>
+<a name="l00033"></a>00033 <span class="preprocessor">#include "serverdialog.h"</span>
+<a name="l00034"></a>00034 <span class="preprocessor">#include "configlist.h"</span>
+<a name="l00035"></a>00035 <span class="preprocessor">#include "configelem.h"</span>
+<a name="l00036"></a>00036 <span class="preprocessor">#include "commandlist.h"</span>
+<a name="l00037"></a>00037
+<a name="l00038"></a><a class="code" href="classOptionDialog.html#798615cd9184797821f151a4465c1e2f">00038</a> <a class="code" href="classOptionDialog.html#798615cd9184797821f151a4465c1e2f">OptionDialog::OptionDialog</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="classConfigList.html">ConfigList</a>* config, <a class="code" href="classCommandList.html">CommandList</a>* cmd):
+<a name="l00039"></a>00039 <a class="code" href="classOptionDlg.html">OptionDlg</a> (parent,name,true),
+<a name="l00040"></a>00040 m_ConfigList (*config),
+<a name="l00041"></a>00041 m_pConfigList (config),
+<a name="l00042"></a>00042 m_pCmdList (cmd)
+<a name="l00043"></a>00043 {
+<a name="l00044"></a>00044 <a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a>-&gt;setChecked (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#9d1ac3dbd228d057f3894d761c493046">m_bSavePassword</a>);
+<a name="l00045"></a>00045 <a class="code" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">m_CheckConfirmDelete</a>-&gt;setChecked (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#a466577c54fec821ff484a378ce32e98">confirmDeletion</a>() );
+<a name="l00046"></a>00046 <a class="code" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a>-&gt;setValue( <a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#3b74518a8dc0aff55be667276bc4597b">getInitTime</a>() );
+<a name="l00047"></a>00047 <a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a>-&gt;setValue (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#3e41f463a87fbc8523bbd731cf36b473">getRefreshTimeInterval</a>());
+<a name="l00048"></a>00048 <a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a>-&gt;setValue (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#80a368db22ca3a29c668a544611d16f4">getTimeoutTime</a>() );
+<a name="l00049"></a>00049 <a class="code" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">m_CheckBeep</a>-&gt;setChecked (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#a866f2fd4fb32d49ab99306150d79c50">m_bBeep</a>);
+<a name="l00050"></a>00050 <a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a>-&gt;setChecked (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">m_bSound</a>);
+<a name="l00051"></a>00051 <a class="code" href="classOptionDlg.html#15c1be3d6561f4a0bbfdacba6830ef51">m_ButtonSelectSoundFile</a>-&gt;setEnabled (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">m_bSound</a>);
+<a name="l00052"></a>00052 <a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a>-&gt;setEnabled (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">m_bSound</a>);
+<a name="l00053"></a>00053 <a class="code" href="classOptionDlg.html#01a59a3d9e52b6e2ccf55d9c910ebb85">m_ButtonSoundTest</a>-&gt;setEnabled (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">m_bSound</a>);
+<a name="l00054"></a>00054 <a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a>-&gt;setText (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#be34e6084394fa6fa99422a7cc50d8f0">m_strSoundFile</a>);
+<a name="l00055"></a>00055 <a class="code" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">m_CheckStartMinimized</a>-&gt;setChecked (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#fb4f1f200303a7e94114a8c4c85eb47e">m_bStartMinimized</a>);
+<a name="l00056"></a>00056 <a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a>-&gt;setChecked (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#cdf78356d632253ac463907e526eb26a">m_bTerminate</a>);
+<a name="l00057"></a>00057 <a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a>-&gt;setChecked (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#f22fd0f8854795662a444bc2b4f8a9b9">m_bMinimize</a>);
+<a name="l00058"></a>00058 <a class="code" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a>-&gt;setChecked (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#54c7671d25847b7b16cf71ec61c640d0">m_bKeepNew</a>);
+<a name="l00059"></a>00059 <a class="code" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">m_CheckShowMessagebox</a>-&gt;setChecked (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#35d80df8b80f34868140a2163d207490">m_bShowMessage</a>);
+<a name="l00060"></a>00060 <a class="code" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">m_CheckShowMainWindow</a>-&gt;setChecked (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#b9613ab5f07edb0ef04383867674a5ce">m_bShowMainWindow</a>);
+<a name="l00061"></a>00061 <a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a>-&gt;setChecked (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#e53957ef0d235a05cffaf699d0572bdc">m_bExternalProg</a>);
+<a name="l00062"></a>00062 <a class="code" href="classOptionDlg.html#6044d14d1929890f3dd9e309f9cac091">m_ButtonExternalProgTest</a>-&gt;setEnabled (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#e53957ef0d235a05cffaf699d0572bdc">m_bExternalProg</a>);
+<a name="l00063"></a>00063 <a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a>-&gt;setEnabled (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#e53957ef0d235a05cffaf699d0572bdc">m_bExternalProg</a>);
+<a name="l00064"></a>00064 <a class="code" href="classOptionDlg.html#5adabd2b563e6c382e0f578ca2cfd113">QLabel_5</a>-&gt;setEnabled (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#e53957ef0d235a05cffaf699d0572bdc">m_bExternalProg</a>);
+<a name="l00065"></a>00065 <a class="code" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a>-&gt;setValue (<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#e0f8dd2ed0939ddeec29b9da31228cb0">m_nMaxMailSize</a>);
+<a name="l00066"></a>00066 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#59803bd5eef942d62ab06bee12dd9b1f">setCombo</a> (<a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>);
+<a name="l00067"></a>00067 <a class="code" href="classOptionDialog.html#88bc7fc86cc13a701d216bd8b9bf3f5b">m_pCmdList</a>-&gt;<a class="code" href="classCommandList.html#e5a8632fb53943a8ec5b8edfa268e668">setCombo</a> (<a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a>, <a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#44ce4ad71c954f0df6043740a7bcd80c">m_nExternalProg</a>);
+<a name="l00068"></a>00068 <span class="comment">//Modifications made by AM (account columns)</span>
+<a name="l00069"></a>00069 <a class="code" href="classOptionDlg.html#6379a589358b6110cfa48798a30951ab">m_CheckActive</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#8b918d6130d46fad29902c05d2c73161">m_shownAccountColumns</a>[0]);
+<a name="l00070"></a>00070 <a class="code" href="classOptionDlg.html#1fdb0d9cfac85bbef22d749e40dd9376">m_CheckAccount1</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#8b918d6130d46fad29902c05d2c73161">m_shownAccountColumns</a>[1]);
+<a name="l00071"></a>00071 <a class="code" href="classOptionDlg.html#b1e0581d2cf52c0337d42bbc898a2fc2">m_CheckServer</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#8b918d6130d46fad29902c05d2c73161">m_shownAccountColumns</a>[2]);
+<a name="l00072"></a>00072 <a class="code" href="classOptionDlg.html#e7595a79588cccd851e00714b0b47d94">m_CheckUser</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#8b918d6130d46fad29902c05d2c73161">m_shownAccountColumns</a>[3]);
+<a name="l00073"></a>00073 <a class="code" href="classOptionDlg.html#d20b2cce97a72b706dfb29ddc93f1766">m_CheckMessages</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#8b918d6130d46fad29902c05d2c73161">m_shownAccountColumns</a>[4]);
+<a name="l00074"></a>00074 <a class="code" href="classOptionDlg.html#bbd14d7cfd0662a8089e83be0809d46f">m_CheckSize1</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#8b918d6130d46fad29902c05d2c73161">m_shownAccountColumns</a>[5]);
+<a name="l00075"></a>00075 <span class="comment">//Modifications made by AM (email columns)</span>
+<a name="l00076"></a>00076 <a class="code" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">m_CheckNumber</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[0]);
+<a name="l00077"></a>00077 <a class="code" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">m_CheckAccount2</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[1]);
+<a name="l00078"></a>00078 <a class="code" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">m_CheckFrom</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[2]);
+<a name="l00079"></a>00079 <a class="code" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">m_CheckTo</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[3]);
+<a name="l00080"></a>00080 <a class="code" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">m_CheckSubject</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[4]);
+<a name="l00081"></a>00081 <a class="code" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">m_CheckDate</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[5]);
+<a name="l00082"></a>00082 <a class="code" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">m_CheckSize2</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[6]);
+<a name="l00083"></a>00083 <a class="code" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">m_CheckContent</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[7]);
+<a name="l00084"></a>00084 <a class="code" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">m_CheckState</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[8]);
+<a name="l00085"></a>00085 <span class="comment">// add HTML formatting</span>
+<a name="l00086"></a>00086 <a class="code" href="classOptionDlg.html#822eac789cfdbe481591d6a14b250571">m_checkHTML</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#4cd09107151c848fafe17db0c8e9a4a6">allowHTML</a>() );
+<a name="l00087"></a>00087 <a class="code" href="classOptionDlg.html#8fc4bdd8d230a0f5d6ed01cde33e9278">_checkConfirmClose</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#80b1f5a036cdaf9054ba57831a0c013e">m_bConfirmClose</a>);
+<a name="l00088"></a>00088 <span class="comment">// added by morhekil</span>
+<a name="l00089"></a>00089 <span class="comment">// minimize on close</span>
+<a name="l00090"></a>00090 <a class="code" href="classOptionDlg.html#5553bc799edbadb53b00f8c26342cc0e">m_CheckCloseMinimizes</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#da6c14776958a3b28f68797c7feb6c5b">m_bCloseMinimizes</a>);
+<a name="l00091"></a>00091 <a class="code" href="classOptionDlg.html#ae8aaaee5cd4a83d5f7f09d16cb4cdcd">m_CheckMinimizeToTray</a>-&gt;setChecked(<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#af4cc3801f229ae974131ef1e000a8cf">m_bMinimizeToTray</a>);
+<a name="l00092"></a>00092 }
+<a name="l00093"></a>00093
+<a name="l00094"></a><a class="code" href="classOptionDialog.html#640a1faddda44f2567cf386de0085ec7">00094</a> <a class="code" href="classOptionDialog.html#640a1faddda44f2567cf386de0085ec7">OptionDialog::~OptionDialog</a>(){
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096
+<a name="l00097"></a><a class="code" href="classOptionDialog.html#2a8b4de35b26856ddc9211d5cf56eeb7">00097</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#2a8b4de35b26856ddc9211d5cf56eeb7">OptionDialog::slotButtonAddClicked</a>()
+<a name="l00098"></a>00098 {
+<a name="l00099"></a>00099 <a class="code" href="classConfigElem.html">ConfigElem</a>* pElem = <span class="keyword">new</span> <a class="code" href="classConfigElem.html">ConfigElem</a> ( &amp;<a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a> );
+<a name="l00100"></a>00100 <a class="code" href="classServerDialog.html">ServerDialog</a> dlg (<span class="keyword">this</span>, <span class="stringliteral">"Server Options"</span>, pElem, &amp;<a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>);
+<a name="l00101"></a>00101 <span class="keywordflow">if</span> (dlg.exec () == Accepted)
+<a name="l00102"></a>00102 {
+<a name="l00103"></a>00103 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.inSort (pElem);
+<a name="l00104"></a>00104 <span class="comment">//connect the signals of the new account</span>
+<a name="l00105"></a>00105 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">connectAccounts</a>();
+<a name="l00106"></a>00106
+<a name="l00107"></a>00107 <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>-&gt;insertItem (pElem-&gt;<a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>(), <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.at ());
+<a name="l00108"></a>00108 <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>-&gt;setCurrentItem (<a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.at ());
+<a name="l00109"></a>00109 }
+<a name="l00110"></a>00110 <span class="keywordflow">else</span>
+<a name="l00111"></a>00111 <span class="keyword">delete</span> pElem;
+<a name="l00112"></a>00112 }
+<a name="l00113"></a>00113
+<a name="l00114"></a><a class="code" href="classOptionDialog.html#7dfcbdf6d27c3069abb292e205d2edbb">00114</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#7dfcbdf6d27c3069abb292e205d2edbb">OptionDialog::slotButtonEditClicked</a>()
+<a name="l00115"></a>00115 {
+<a name="l00116"></a>00116 <a class="code" href="classConfigElem.html">ConfigElem</a>* pElem = <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.current ();
+<a name="l00117"></a>00117 <span class="keywordflow">if</span> (pElem)
+<a name="l00118"></a>00118 {
+<a name="l00119"></a>00119 <a class="code" href="classServerDialog.html">ServerDialog</a> dlg (<span class="keyword">this</span>, <span class="stringliteral">"Server Options"</span>, pElem, NULL);
+<a name="l00120"></a>00120 dlg.exec ();
+<a name="l00121"></a>00121 }
+<a name="l00122"></a>00122 }
+<a name="l00123"></a>00123
+<a name="l00124"></a><a class="code" href="classOptionDialog.html#5950f796be046ef5a1f24226ce7b093b">00124</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#5950f796be046ef5a1f24226ce7b093b">OptionDialog::slotButtonCopyClicked</a>()
+<a name="l00125"></a>00125 {
+<a name="l00126"></a>00126 <span class="keywordflow">if</span> (<a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.current())
+<a name="l00127"></a>00127 {
+<a name="l00128"></a>00128 <a class="code" href="classConfigElem.html">ConfigElem</a>* pElem = <span class="keyword">new</span> <a class="code" href="classConfigElem.html">ConfigElem</a> (<a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.current ());
+<a name="l00129"></a>00129 <a class="code" href="classServerDialog.html">ServerDialog</a> dlg (<span class="keyword">this</span>, <span class="stringliteral">"Server Options"</span>, pElem, &amp;<a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>);
+<a name="l00130"></a>00130 <span class="keywordflow">if</span> (dlg.exec () == Accepted)
+<a name="l00131"></a>00131 {
+<a name="l00132"></a>00132 pElem-&gt;clearMailList();
+<a name="l00133"></a>00133 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.inSort (pElem);
+<a name="l00134"></a>00134 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">connectAccounts</a>();
+<a name="l00135"></a>00135
+<a name="l00136"></a>00136 <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>-&gt;insertItem (pElem-&gt;getAccountName(), <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.at ());
+<a name="l00137"></a>00137 <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>-&gt;setCurrentItem (<a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.at ());
+<a name="l00138"></a>00138 }
+<a name="l00139"></a>00139 <span class="keywordflow">else</span>
+<a name="l00140"></a>00140 <span class="keyword">delete</span> pElem;
+<a name="l00141"></a>00141 }
+<a name="l00142"></a>00142 }
+<a name="l00143"></a>00143
+<a name="l00144"></a><a class="code" href="classOptionDialog.html#5323f330c13ae96774c90d5e4a5524eb">00144</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#5323f330c13ae96774c90d5e4a5524eb">OptionDialog::slotButtonDeleteClicked</a>()
+<a name="l00145"></a>00145 {
+<a name="l00146"></a>00146 <span class="keywordflow">if</span> (<a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.current())
+<a name="l00147"></a>00147 {
+<a name="l00148"></a>00148 <span class="keywordflow">if</span> (KMessageBox::warningYesNo (<span class="keyword">this</span>, i18n(<span class="stringliteral">"Account %1 will be deleted.\nAre you sure ?"</span>).arg(<a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.current()-&gt;getAccountName())) == KMessageBox::Yes)
+<a name="l00149"></a>00149 {
+<a name="l00150"></a>00150 <span class="keywordtype">int</span> index = <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.at ();
+<a name="l00151"></a>00151 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.remove (index);
+<a name="l00152"></a>00152 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#ea02d4502c51afab1e50f9fabd36a722">connectAccounts</a>();
+<a name="l00153"></a>00153 <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>-&gt;removeItem (index);
+<a name="l00154"></a>00154 <a class="code" href="classOptionDlg.html#dda3f84fb59db208ce6d71ff1500b679">m_ComboAccount</a>-&gt;setCurrentItem (<a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.at ());
+<a name="l00155"></a>00155 }
+<a name="l00156"></a>00156 }
+<a name="l00157"></a>00157 }
+<a name="l00158"></a>00158
+<a name="l00159"></a><a class="code" href="classOptionDialog.html#18a6f8a046b2e75133d334e5e8f76929">00159</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#18a6f8a046b2e75133d334e5e8f76929">OptionDialog::slotButtonOkClicked</a>()
+<a name="l00160"></a>00160 {
+<a name="l00161"></a>00161 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#9d1ac3dbd228d057f3894d761c493046">m_bSavePassword</a> = <a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a>-&gt;isChecked ();
+<a name="l00162"></a>00162 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#5f798d2e62d3d8d013e3b2f54d51e94e">setConfirmDeletion</a>( <a class="code" href="classOptionDlg.html#b87c903f5579c7731282344dc5377eab">m_CheckConfirmDelete</a>-&gt;isChecked () );
+<a name="l00163"></a>00163 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#c40250ce119d3e6f75b32b296ffaa36c">setInitTime</a>( <a class="code" href="classOptionDlg.html#32bf82b48c612df1755a61fd96171b9c">m_SpinInitTimer</a>-&gt;value() );
+<a name="l00164"></a>00164 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#1676756c27b3578802dba1ce47b39dcd">setRefreshTimeInterval</a>( <a class="code" href="classOptionDlg.html#073728fdc69ab0cf6f7755e38c28a13b">m_SpinIntervalTimer</a>-&gt;value () );
+<a name="l00165"></a>00165 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#2470bfe4948ada050b08b93cef51b969">setTimeoutTime</a>( <a class="code" href="classOptionDlg.html#fec35e84e60d7114d8dc21d3accf5c26">m_SpinPop3Timer</a>-&gt;value () );
+<a name="l00166"></a>00166 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#e0f8dd2ed0939ddeec29b9da31228cb0">m_nMaxMailSize</a> = <a class="code" href="classOptionDlg.html#22d76af0ad75e30b878c1412da3f84a0">m_SpinMaxSize</a>-&gt;value ();
+<a name="l00167"></a>00167 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#a866f2fd4fb32d49ab99306150d79c50">m_bBeep</a> = <a class="code" href="classOptionDlg.html#a7a81fcbeb3e6d9a97ea8e84ff82248e">m_CheckBeep</a>-&gt;isChecked ();
+<a name="l00168"></a>00168 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#a50d4f3ca2c1f7814aec63df25de1811">m_bSound</a> = <a class="code" href="classOptionDlg.html#1b2f26bc2ecf8563c40623ebf5d9e817">m_CheckSound</a>-&gt;isChecked ();
+<a name="l00169"></a>00169 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#be34e6084394fa6fa99422a7cc50d8f0">m_strSoundFile</a> = <a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a>-&gt;text ();
+<a name="l00170"></a>00170 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#fb4f1f200303a7e94114a8c4c85eb47e">m_bStartMinimized</a> = <a class="code" href="classOptionDlg.html#423a46c1515c3cc3d84a9c80b770119c">m_CheckStartMinimized</a>-&gt;isChecked ();
+<a name="l00171"></a>00171 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#cdf78356d632253ac463907e526eb26a">m_bTerminate</a> = <a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a>-&gt;isChecked ();
+<a name="l00172"></a>00172 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#f22fd0f8854795662a444bc2b4f8a9b9">m_bMinimize</a> = <a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a>-&gt;isChecked ();
+<a name="l00173"></a>00173 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#54c7671d25847b7b16cf71ec61c640d0">m_bKeepNew</a> = <a class="code" href="classOptionDlg.html#ed09462ee6cdb999c42c142cfb023db6">m_CheckKeepNewMail</a>-&gt;isChecked ();
+<a name="l00174"></a>00174 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#35d80df8b80f34868140a2163d207490">m_bShowMessage</a> = <a class="code" href="classOptionDlg.html#86990595eb7bb5191dee0dca630e5041">m_CheckShowMessagebox</a>-&gt;isChecked ();
+<a name="l00175"></a>00175 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#b9613ab5f07edb0ef04383867674a5ce">m_bShowMainWindow</a> = <a class="code" href="classOptionDlg.html#755cd3fc655abf4e5835bccd03cf9c39">m_CheckShowMainWindow</a>-&gt;isChecked ();
+<a name="l00176"></a>00176 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#44ce4ad71c954f0df6043740a7bcd80c">m_nExternalProg</a> = <a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a>-&gt;currentItem ();
+<a name="l00177"></a>00177 kdDebug () &lt;&lt; <span class="stringliteral">"ext prog = "</span> &lt;&lt; <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#44ce4ad71c954f0df6043740a7bcd80c">m_nExternalProg</a> &lt;&lt; endl;
+<a name="l00178"></a>00178 kdDebug () &lt;&lt; <span class="stringliteral">"count = "</span> &lt;&lt; <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.count() &lt;&lt; endl;
+<a name="l00179"></a>00179 <span class="keywordflow">if</span> ((<a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#44ce4ad71c954f0df6043740a7bcd80c">m_nExternalProg</a> &gt;= 0) &amp;&amp; (<a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.count() &gt; 0))
+<a name="l00180"></a>00180 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#e53957ef0d235a05cffaf699d0572bdc">m_bExternalProg</a> = <a class="code" href="classOptionDlg.html#613b7eb6be9c441040100dd69c4314db">m_CheckExternalProg</a>-&gt;isChecked ();
+<a name="l00181"></a>00181 <span class="keywordflow">else</span>
+<a name="l00182"></a>00182 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#e53957ef0d235a05cffaf699d0572bdc">m_bExternalProg</a> = <span class="keyword">false</span>;
+<a name="l00183"></a>00183 <span class="comment">//modifications by AM (hiding columns)</span>
+<a name="l00184"></a>00184 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#8b918d6130d46fad29902c05d2c73161">m_shownAccountColumns</a>[0] = <a class="code" href="classOptionDlg.html#6379a589358b6110cfa48798a30951ab">m_CheckActive</a>-&gt;isChecked();
+<a name="l00185"></a>00185 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#8b918d6130d46fad29902c05d2c73161">m_shownAccountColumns</a>[1] = <a class="code" href="classOptionDlg.html#1fdb0d9cfac85bbef22d749e40dd9376">m_CheckAccount1</a>-&gt;isChecked();
+<a name="l00186"></a>00186 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#8b918d6130d46fad29902c05d2c73161">m_shownAccountColumns</a>[2] = <a class="code" href="classOptionDlg.html#b1e0581d2cf52c0337d42bbc898a2fc2">m_CheckServer</a>-&gt;isChecked();
+<a name="l00187"></a>00187 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#8b918d6130d46fad29902c05d2c73161">m_shownAccountColumns</a>[3] = <a class="code" href="classOptionDlg.html#e7595a79588cccd851e00714b0b47d94">m_CheckUser</a>-&gt;isChecked();
+<a name="l00188"></a>00188 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#8b918d6130d46fad29902c05d2c73161">m_shownAccountColumns</a>[4] = <a class="code" href="classOptionDlg.html#d20b2cce97a72b706dfb29ddc93f1766">m_CheckMessages</a>-&gt;isChecked();
+<a name="l00189"></a>00189 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#8b918d6130d46fad29902c05d2c73161">m_shownAccountColumns</a>[5] = <a class="code" href="classOptionDlg.html#bbd14d7cfd0662a8089e83be0809d46f">m_CheckSize1</a>-&gt;isChecked();
+<a name="l00190"></a>00190 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[0] = <a class="code" href="classOptionDlg.html#c24185842afb01977653ac479eb88b1a">m_CheckNumber</a>-&gt;isChecked();
+<a name="l00191"></a>00191 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[1] = <a class="code" href="classOptionDlg.html#445e189070032f170afbdfc945e304d2">m_CheckAccount2</a>-&gt;isChecked();
+<a name="l00192"></a>00192 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[2] = <a class="code" href="classOptionDlg.html#5f20a2cdfc1bb8be22fb4c8480ffd727">m_CheckFrom</a>-&gt;isChecked();
+<a name="l00193"></a>00193 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[3] = <a class="code" href="classOptionDlg.html#3a9edd5103bdf56db01a979aa930d30a">m_CheckTo</a>-&gt;isChecked();
+<a name="l00194"></a>00194 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[4] = <a class="code" href="classOptionDlg.html#f92fbbd7d979799bd4c6b61a733c99cf">m_CheckSubject</a>-&gt;isChecked();
+<a name="l00195"></a>00195 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[5] = <a class="code" href="classOptionDlg.html#428705f2ded0cf3981eea054903729e3">m_CheckDate</a>-&gt;isChecked();
+<a name="l00196"></a>00196 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[6] = <a class="code" href="classOptionDlg.html#ffcca9b555e6fd49b0b98df4f1e95390">m_CheckSize2</a>-&gt;isChecked();
+<a name="l00197"></a>00197 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[7] = <a class="code" href="classOptionDlg.html#29a9e036f6fec07d149814c96a5c5d6d">m_CheckContent</a>-&gt;isChecked();
+<a name="l00198"></a>00198 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#0939b991015fe414b0078fa320c4ca15">m_shownMailColumns</a>[8] = <a class="code" href="classOptionDlg.html#882382906f749f464e23b7d68e354060">m_CheckState</a>-&gt;isChecked();
+<a name="l00199"></a>00199 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#9f3341f60b7f800b58f50e67c1f872b4">setAllowHTML</a>( <a class="code" href="classOptionDlg.html#822eac789cfdbe481591d6a14b250571">m_checkHTML</a>-&gt;isChecked() );
+<a name="l00200"></a>00200 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#80b1f5a036cdaf9054ba57831a0c013e">m_bConfirmClose</a> = <a class="code" href="classOptionDlg.html#8fc4bdd8d230a0f5d6ed01cde33e9278">_checkConfirmClose</a>-&gt;isChecked();
+<a name="l00201"></a>00201
+<a name="l00202"></a>00202 <span class="comment">// added by morhekil</span>
+<a name="l00203"></a>00203 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#da6c14776958a3b28f68797c7feb6c5b">m_bCloseMinimizes</a> = <a class="code" href="classOptionDlg.html#5553bc799edbadb53b00f8c26342cc0e">m_CheckCloseMinimizes</a>-&gt;isChecked();
+<a name="l00204"></a>00204 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#af4cc3801f229ae974131ef1e000a8cf">m_bMinimizeToTray</a> = <a class="code" href="classOptionDlg.html#ae8aaaee5cd4a83d5f7f09d16cb4cdcd">m_CheckMinimizeToTray</a>-&gt;isChecked();
+<a name="l00205"></a>00205
+<a name="l00206"></a>00206 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.<a class="code" href="classConfigList.html#f4faa44af3bbe318a2623b3146dc2c2d">saveOptions</a>();
+<a name="l00207"></a>00207 *<a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a> = <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>;
+<a name="l00208"></a>00208 }
+<a name="l00209"></a>00209
+<a name="l00210"></a><a class="code" href="classOptionDialog.html#4ab5e6416920a2e8a10b29fc4dd3ccd2">00210</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#4ab5e6416920a2e8a10b29fc4dd3ccd2">OptionDialog::slotAccountActivated</a> (<span class="keywordtype">int</span> index)
+<a name="l00211"></a>00211 {
+<a name="l00212"></a>00212 <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>.at (index); <span class="comment">// will set current item</span>
+<a name="l00213"></a>00213 }
+<a name="l00214"></a>00214
+<a name="l00215"></a><a class="code" href="classOptionDialog.html#ae1017761ec53be60d79f5f59a5c6fea">00215</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#ae1017761ec53be60d79f5f59a5c6fea">OptionDialog::slotSavePasswordToggled</a> ()
+<a name="l00216"></a>00216 {
+<a name="l00217"></a>00217 <span class="keywordflow">if</span> (<a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a>-&gt;isChecked ())
+<a name="l00218"></a>00218 {
+<a name="l00219"></a>00219 <span class="keywordflow">if</span> (KMessageBox::warningYesNo (<span class="keyword">this</span>, i18n(<span class="stringliteral">"Password will be stored as scrambled text.\n"</span>
+<a name="l00220"></a>00220 <span class="stringliteral">"It might be possible to decipher it.\n"</span>
+<a name="l00221"></a>00221 <span class="stringliteral">"Are you sure ?\n"</span>),
+<a name="l00222"></a>00222 QString::null,
+<a name="l00223"></a>00223 KStdGuiItem::yes(),
+<a name="l00224"></a>00224 KStdGuiItem::no(),
+<a name="l00225"></a>00225 <span class="stringliteral">"savepasswdaskagain"</span>) != KMessageBox::Yes)
+<a name="l00226"></a>00226 <a class="code" href="classOptionDlg.html#893feee616d6ae1eb502abf350b7335c">m_CheckSavePassword</a>-&gt;setChecked (<span class="keyword">false</span>);
+<a name="l00227"></a>00227 }
+<a name="l00228"></a>00228 }
+<a name="l00229"></a>00229
+<a name="l00230"></a><a class="code" href="classOptionDialog.html#c21a2228b16965afd70357f74332a7af">00230</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#c21a2228b16965afd70357f74332a7af">OptionDialog::slotButtonSelectSoundFile</a> ()
+<a name="l00231"></a>00231 {
+<a name="l00232"></a>00232 QStringList filters;
+<a name="l00233"></a>00233 filters.append (i18n(<span class="stringliteral">"Wave files (*.wav)"</span>));
+<a name="l00234"></a>00234 filters.append (i18n(<span class="stringliteral">"All files (*)"</span>));
+<a name="l00235"></a>00235 QFileInfo info (<a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a>-&gt;text ());
+<a name="l00236"></a>00236 QString dir = info.dirPath ();
+<a name="l00237"></a>00237 QFileDialog dlg (<span class="keyword">this</span>, <span class="stringliteral">"Sound File"</span>, TRUE);
+<a name="l00238"></a>00238 dlg.setCaption (i18n(<span class="stringliteral">"Select Sound File"</span>));
+<a name="l00239"></a>00239 dlg.setDir (dir);
+<a name="l00240"></a>00240 dlg.setFilters (filters);
+<a name="l00241"></a>00241 dlg.setMode (QFileDialog::ExistingFile);
+<a name="l00242"></a>00242 <span class="keywordflow">if</span> (dlg.exec () == QDialog::Accepted)
+<a name="l00243"></a>00243 <a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a>-&gt;setText (dlg.selectedFile());
+<a name="l00244"></a>00244 }
+<a name="l00245"></a>00245
+<a name="l00246"></a><a class="code" href="classOptionDialog.html#34cd468ac9649244cf0032e4dc2ed3c4">00246</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#34cd468ac9649244cf0032e4dc2ed3c4">OptionDialog::slotMinimizeNoMailClicked</a> ()
+<a name="l00247"></a>00247 {
+<a name="l00248"></a>00248 <span class="keywordflow">if</span> (<a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a>-&gt;isChecked ())
+<a name="l00249"></a>00249 <a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a>-&gt;setChecked (<span class="keyword">false</span>);
+<a name="l00250"></a>00250 }
+<a name="l00251"></a>00251
+<a name="l00252"></a><a class="code" href="classOptionDialog.html#8b256eea31352478043228994a6b0856">00252</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#8b256eea31352478043228994a6b0856">OptionDialog::slotTerminateNoMailClicked</a> ()
+<a name="l00253"></a>00253 {
+<a name="l00254"></a>00254 <span class="keywordflow">if</span> (<a class="code" href="classOptionDlg.html#d630c0373296051e08a03ba0385137b2">m_CheckTerminateNoMail</a>-&gt;isChecked ())
+<a name="l00255"></a>00255 <a class="code" href="classOptionDlg.html#15e7929ac669b9e82939047d06497488">m_CheckMinimizeNoMail</a>-&gt;setChecked (<span class="keyword">false</span>);
+<a name="l00256"></a>00256 }
+<a name="l00257"></a>00257
+<a name="l00258"></a><a class="code" href="classOptionDialog.html#8f429f6d8f28f63a30b9e63f2c6f9203">00258</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#8f429f6d8f28f63a30b9e63f2c6f9203">OptionDialog::slotSoundTest</a> ()
+<a name="l00259"></a>00259 {
+<a name="l00260"></a>00260 <a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;<a class="code" href="classConfigList.html#5e7a5e2323ebbbad7d960bae9814ce5d">playSound</a> (<a class="code" href="classOptionDlg.html#9254f6d43feea0d85b590d0feb394cb3">m_EditSoundFile</a>-&gt;text ());
+<a name="l00261"></a>00261 }
+<a name="l00262"></a>00262
+<a name="l00263"></a><a class="code" href="classOptionDialog.html#d5656fc80b53615620c3c79094a165d1">00263</a> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#d5656fc80b53615620c3c79094a165d1">OptionDialog::slotExternalProgTest</a> ()
+<a name="l00264"></a>00264 {
+<a name="l00265"></a>00265 <a class="code" href="classOptionDialog.html#88bc7fc86cc13a701d216bd8b9bf3f5b">m_pCmdList</a>-&gt;<a class="code" href="classCommandList.html#99f8a7c87e09a186bd5664638b704619">exec</a> (<a class="code" href="classOptionDlg.html#464fd65b203b450828c95e273c17ecc0">m_ComboExternalProg</a>-&gt;currentItem (), <a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>-&gt;current ());
+<a name="l00266"></a>00266 }
+<a name="l00267"></a>00267
+<a name="l00268"></a>00268
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/optiondialog_8h-source.html b/doc/html/optiondialog_8h-source.html
new file mode 100644
index 0000000..4d1bf22
--- /dev/null
+++ b/doc/html/optiondialog_8h-source.html
@@ -0,0 +1,77 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/optiondialog.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>optiondialog.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> optiondialog.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Fri Oct 26 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef OPTIONDIALOG_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define OPTIONDIALOG_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qwidget.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "OptionDlg.h"</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include "configlist.h"</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include "commandlist.h"</span>
+<a name="l00025"></a>00025
+<a name="l00030"></a><a class="code" href="classOptionDialog.html">00030</a> <span class="keyword">class </span><a class="code" href="classOptionDialog.html">OptionDialog</a> : <span class="keyword">public</span> <a class="code" href="classOptionDlg.html">OptionDlg</a> {
+<a name="l00031"></a>00031 Q_OBJECT
+<a name="l00032"></a>00032 <span class="comment">//TODO: nachdem der Einstellungsdialog aufgerufen wurde, vergessen die Accounts sämtlich Mails</span>
+<a name="l00033"></a>00033 <span class="comment">//Grund ist, dass in dieser Klasse eine Kopie von ConfigList angelegt wird und der</span>
+<a name="l00034"></a>00034 <span class="comment">//Kopierconstruktor von ConfigElem eine neue Mailliste anlegt.</span>
+<a name="l00035"></a>00035 <span class="comment">//diese Klasse müsste ausschließlich mit der Original-ConfigList arbeiten</span>
+<a name="l00036"></a>00036 <span class="comment">//Workaround derzeit: Mails werden nach Aufruf dieser Klasse neu vom Server gelesen</span>
+<a name="l00037"></a>00037 <span class="keyword">public</span>:
+<a name="l00038"></a>00038 <a class="code" href="classOptionDialog.html#798615cd9184797821f151a4465c1e2f">OptionDialog</a>(QWidget *parent, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="classConfigList.html">ConfigList</a>* config, <a class="code" href="classCommandList.html">CommandList</a>* cmd);
+<a name="l00039"></a>00039 <a class="code" href="classOptionDialog.html#640a1faddda44f2567cf386de0085ec7">~OptionDialog</a>();
+<a name="l00040"></a>00040 <span class="keyword">public</span> slots:
+<a name="l00041"></a>00041 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#2a8b4de35b26856ddc9211d5cf56eeb7">slotButtonAddClicked</a>();
+<a name="l00042"></a>00042 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#7dfcbdf6d27c3069abb292e205d2edbb">slotButtonEditClicked</a>();
+<a name="l00043"></a>00043 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#5950f796be046ef5a1f24226ce7b093b">slotButtonCopyClicked</a>();
+<a name="l00044"></a>00044 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#5323f330c13ae96774c90d5e4a5524eb">slotButtonDeleteClicked</a>();
+<a name="l00045"></a>00045 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#18a6f8a046b2e75133d334e5e8f76929">slotButtonOkClicked</a>();
+<a name="l00046"></a>00046 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#4ab5e6416920a2e8a10b29fc4dd3ccd2">slotAccountActivated</a> (<span class="keywordtype">int</span> index);
+<a name="l00047"></a>00047 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#ae1017761ec53be60d79f5f59a5c6fea">slotSavePasswordToggled</a> ();
+<a name="l00048"></a>00048 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#c21a2228b16965afd70357f74332a7af">slotButtonSelectSoundFile</a> ();
+<a name="l00049"></a>00049 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#34cd468ac9649244cf0032e4dc2ed3c4">slotMinimizeNoMailClicked</a> ();
+<a name="l00050"></a>00050 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#8b256eea31352478043228994a6b0856">slotTerminateNoMailClicked</a> ();
+<a name="l00051"></a>00051 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#8f429f6d8f28f63a30b9e63f2c6f9203">slotSoundTest</a> ();
+<a name="l00052"></a>00052 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classOptionDialog.html#d5656fc80b53615620c3c79094a165d1">slotExternalProgTest</a> ();
+<a name="l00053"></a>00053 <span class="keyword">private</span>:
+<a name="l00054"></a><a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">00054</a> <a class="code" href="classConfigList.html">ConfigList</a> <a class="code" href="classOptionDialog.html#e9a1f0964b9205f483a483cc6a9a4aa8">m_ConfigList</a>;
+<a name="l00055"></a><a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">00055</a> <a class="code" href="classConfigList.html">ConfigList</a>* <a class="code" href="classOptionDialog.html#32e10dd017b5499d290283af638f3de7">m_pConfigList</a>;
+<a name="l00056"></a><a class="code" href="classOptionDialog.html#88bc7fc86cc13a701d216bd8b9bf3f5b">00056</a> <a class="code" href="classCommandList.html">CommandList</a>* <a class="code" href="classOptionDialog.html#88bc7fc86cc13a701d216bd8b9bf3f5b">m_pCmdList</a>;
+<a name="l00057"></a>00057 };
+<a name="l00058"></a>00058
+<a name="l00059"></a>00059 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/optiondialog_8moc_8cpp-source.html b/doc/html/optiondialog_8moc_8cpp-source.html
new file mode 100644
index 0000000..c4720f9
--- /dev/null
+++ b/doc/html/optiondialog_8moc_8cpp-source.html
@@ -0,0 +1,159 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/optiondialog.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>optiondialog.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** OptionDialog meta object code from reading C++ file 'optiondialog.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Tue May 15 19:57:53 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: optiondialog_8moc_8cpp-source.html,v 1.8 2007/05/16 20:12:02 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "optiondialog.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *OptionDialog::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"OptionDialog"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *OptionDialog::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_OptionDialog( <span class="stringliteral">"OptionDialog"</span>, &amp;OptionDialog::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString OptionDialog::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"OptionDialog"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString OptionDialog::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"OptionDialog"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* OptionDialog::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = OptionDlg::staticMetaObject();
+<a name="l00055"></a>00055 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_0 = {<span class="stringliteral">"slotButtonAddClicked"</span>, 0, 0 };
+<a name="l00056"></a>00056 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_1 = {<span class="stringliteral">"slotButtonEditClicked"</span>, 0, 0 };
+<a name="l00057"></a>00057 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_2 = {<span class="stringliteral">"slotButtonCopyClicked"</span>, 0, 0 };
+<a name="l00058"></a>00058 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_3 = {<span class="stringliteral">"slotButtonDeleteClicked"</span>, 0, 0 };
+<a name="l00059"></a>00059 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_4 = {<span class="stringliteral">"slotButtonOkClicked"</span>, 0, 0 };
+<a name="l00060"></a>00060 <span class="keyword">static</span> <span class="keyword">const</span> QUParameter param_slot_5[] = {
+<a name="l00061"></a>00061 { <span class="stringliteral">"index"</span>, &amp;static_QUType_int, 0, QUParameter::In }
+<a name="l00062"></a>00062 };
+<a name="l00063"></a>00063 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_5 = {<span class="stringliteral">"slotAccountActivated"</span>, 1, param_slot_5 };
+<a name="l00064"></a>00064 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_6 = {<span class="stringliteral">"slotSavePasswordToggled"</span>, 0, 0 };
+<a name="l00065"></a>00065 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_7 = {<span class="stringliteral">"slotButtonSelectSoundFile"</span>, 0, 0 };
+<a name="l00066"></a>00066 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_8 = {<span class="stringliteral">"slotMinimizeNoMailClicked"</span>, 0, 0 };
+<a name="l00067"></a>00067 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_9 = {<span class="stringliteral">"slotTerminateNoMailClicked"</span>, 0, 0 };
+<a name="l00068"></a>00068 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_10 = {<span class="stringliteral">"slotSoundTest"</span>, 0, 0 };
+<a name="l00069"></a>00069 <span class="keyword">static</span> <span class="keyword">const</span> QUMethod slot_11 = {<span class="stringliteral">"slotExternalProgTest"</span>, 0, 0 };
+<a name="l00070"></a>00070 <span class="keyword">static</span> <span class="keyword">const</span> QMetaData slot_tbl[] = {
+<a name="l00071"></a>00071 { <span class="stringliteral">"slotButtonAddClicked()"</span>, &amp;slot_0, QMetaData::Public },
+<a name="l00072"></a>00072 { <span class="stringliteral">"slotButtonEditClicked()"</span>, &amp;slot_1, QMetaData::Public },
+<a name="l00073"></a>00073 { <span class="stringliteral">"slotButtonCopyClicked()"</span>, &amp;slot_2, QMetaData::Public },
+<a name="l00074"></a>00074 { <span class="stringliteral">"slotButtonDeleteClicked()"</span>, &amp;slot_3, QMetaData::Public },
+<a name="l00075"></a>00075 { <span class="stringliteral">"slotButtonOkClicked()"</span>, &amp;slot_4, QMetaData::Public },
+<a name="l00076"></a>00076 { <span class="stringliteral">"slotAccountActivated(int)"</span>, &amp;slot_5, QMetaData::Public },
+<a name="l00077"></a>00077 { <span class="stringliteral">"slotSavePasswordToggled()"</span>, &amp;slot_6, QMetaData::Public },
+<a name="l00078"></a>00078 { <span class="stringliteral">"slotButtonSelectSoundFile()"</span>, &amp;slot_7, QMetaData::Public },
+<a name="l00079"></a>00079 { <span class="stringliteral">"slotMinimizeNoMailClicked()"</span>, &amp;slot_8, QMetaData::Public },
+<a name="l00080"></a>00080 { <span class="stringliteral">"slotTerminateNoMailClicked()"</span>, &amp;slot_9, QMetaData::Public },
+<a name="l00081"></a>00081 { <span class="stringliteral">"slotSoundTest()"</span>, &amp;slot_10, QMetaData::Public },
+<a name="l00082"></a>00082 { <span class="stringliteral">"slotExternalProgTest()"</span>, &amp;slot_11, QMetaData::Public }
+<a name="l00083"></a>00083 };
+<a name="l00084"></a>00084 metaObj = QMetaObject::new_metaobject(
+<a name="l00085"></a>00085 <span class="stringliteral">"OptionDialog"</span>, parentObject,
+<a name="l00086"></a>00086 slot_tbl, 12,
+<a name="l00087"></a>00087 0, 0,
+<a name="l00088"></a>00088 #ifndef QT_NO_PROPERTIES
+<a name="l00089"></a>00089 0, 0,
+<a name="l00090"></a>00090 0, 0,
+<a name="l00091"></a>00091 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00092"></a>00092 0, 0 );
+<a name="l00093"></a>00093 cleanUp_OptionDialog.setMetaObject( metaObj );
+<a name="l00094"></a>00094 <span class="keywordflow">return</span> metaObj;
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096
+<a name="l00097"></a>00097 <span class="keywordtype">void</span>* OptionDialog::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00098"></a>00098 {
+<a name="l00099"></a>00099 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"OptionDialog"</span> ) )
+<a name="l00100"></a>00100 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00101"></a>00101 <span class="keywordflow">return</span> OptionDlg::qt_cast( clname );
+<a name="l00102"></a>00102 }
+<a name="l00103"></a>00103
+<a name="l00104"></a>00104 <span class="keywordtype">bool</span> OptionDialog::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00105"></a>00105 {
+<a name="l00106"></a>00106 <span class="keywordflow">switch</span> ( _id - staticMetaObject()-&gt;slotOffset() ) {
+<a name="l00107"></a>00107 <span class="keywordflow">case</span> 0: <a class="code" href="classOptionDialog.html#2a8b4de35b26856ddc9211d5cf56eeb7">slotButtonAddClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00108"></a>00108 <span class="keywordflow">case</span> 1: <a class="code" href="classOptionDialog.html#7dfcbdf6d27c3069abb292e205d2edbb">slotButtonEditClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00109"></a>00109 <span class="keywordflow">case</span> 2: <a class="code" href="classOptionDialog.html#5950f796be046ef5a1f24226ce7b093b">slotButtonCopyClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00110"></a>00110 <span class="keywordflow">case</span> 3: <a class="code" href="classOptionDialog.html#5323f330c13ae96774c90d5e4a5524eb">slotButtonDeleteClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00111"></a>00111 <span class="keywordflow">case</span> 4: <a class="code" href="classOptionDialog.html#18a6f8a046b2e75133d334e5e8f76929">slotButtonOkClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00112"></a>00112 <span class="keywordflow">case</span> 5: <a class="code" href="classOptionDialog.html#4ab5e6416920a2e8a10b29fc4dd3ccd2">slotAccountActivated</a>((<span class="keywordtype">int</span>)static_QUType_int.get(_o+1)); <span class="keywordflow">break</span>;
+<a name="l00113"></a>00113 <span class="keywordflow">case</span> 6: <a class="code" href="classOptionDialog.html#ae1017761ec53be60d79f5f59a5c6fea">slotSavePasswordToggled</a>(); <span class="keywordflow">break</span>;
+<a name="l00114"></a>00114 <span class="keywordflow">case</span> 7: <a class="code" href="classOptionDialog.html#c21a2228b16965afd70357f74332a7af">slotButtonSelectSoundFile</a>(); <span class="keywordflow">break</span>;
+<a name="l00115"></a>00115 <span class="keywordflow">case</span> 8: <a class="code" href="classOptionDialog.html#34cd468ac9649244cf0032e4dc2ed3c4">slotMinimizeNoMailClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00116"></a>00116 <span class="keywordflow">case</span> 9: <a class="code" href="classOptionDialog.html#8b256eea31352478043228994a6b0856">slotTerminateNoMailClicked</a>(); <span class="keywordflow">break</span>;
+<a name="l00117"></a>00117 <span class="keywordflow">case</span> 10: <a class="code" href="classOptionDialog.html#8f429f6d8f28f63a30b9e63f2c6f9203">slotSoundTest</a>(); <span class="keywordflow">break</span>;
+<a name="l00118"></a>00118 <span class="keywordflow">case</span> 11: <a class="code" href="classOptionDialog.html#d5656fc80b53615620c3c79094a165d1">slotExternalProgTest</a>(); <span class="keywordflow">break</span>;
+<a name="l00119"></a>00119 <span class="keywordflow">default</span>:
+<a name="l00120"></a>00120 <span class="keywordflow">return</span> OptionDlg::qt_invoke( _id, _o );
+<a name="l00121"></a>00121 }
+<a name="l00122"></a>00122 <span class="keywordflow">return</span> TRUE;
+<a name="l00123"></a>00123 }
+<a name="l00124"></a>00124
+<a name="l00125"></a>00125 <span class="keywordtype">bool</span> OptionDialog::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00126"></a>00126 {
+<a name="l00127"></a>00127 <span class="keywordflow">return</span> OptionDlg::qt_emit(_id,_o);
+<a name="l00128"></a>00128 }
+<a name="l00129"></a>00129 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00130"></a>00130 <span class="preprocessor"></span>
+<a name="l00131"></a>00131 <span class="keywordtype">bool</span> OptionDialog::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00132"></a>00132 {
+<a name="l00133"></a>00133 <span class="keywordflow">return</span> OptionDlg::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00134"></a>00134 }
+<a name="l00135"></a>00135
+<a name="l00136"></a>00136 <span class="keywordtype">bool</span> OptionDialog::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00137"></a>00137 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/serverdialog_8cpp-source.html b/doc/html/serverdialog_8cpp-source.html
new file mode 100644
index 0000000..2755b13
--- /dev/null
+++ b/doc/html/serverdialog_8cpp-source.html
@@ -0,0 +1,279 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/serverdialog.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>serverdialog.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> serverdialog.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Sun Oct 28 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include "serverdialog.h"</span>
+<a name="l00019"></a>00019
+<a name="l00020"></a><a class="code" href="classServerDialog.html#2083bd1376173f7229267c77b00e0250">00020</a> <a class="code" href="classServerDialog.html#2083bd1376173f7229267c77b00e0250">ServerDialog::ServerDialog</a>( QWidget* parent, <a class="code" href="classConfigElem.html">ConfigElem</a>* item )
+<a name="l00021"></a>00021 : KDialogBase( parent, <span class="stringliteral">"ServerDialog"</span>, true, QString::null, Ok|Cancel, Ok, true )
+<a name="l00022"></a>00022 {
+<a name="l00023"></a>00023 <span class="comment">//save pointer to account and view</span>
+<a name="l00024"></a>00024 <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a> = item;
+<a name="l00025"></a>00025
+<a name="l00026"></a>00026 <span class="comment">//main widget</span>
+<a name="l00027"></a>00027 QWidget* page = <span class="keyword">new</span> QWidget( <span class="keyword">this</span> );
+<a name="l00028"></a>00028 setMainWidget( page );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="comment">//layouts</span>
+<a name="l00031"></a>00031 QVBoxLayout* layMain = <span class="keyword">new</span> QVBoxLayout( page, 0, spacingHint() );
+<a name="l00032"></a>00032 QGridLayout* layTop = <span class="keyword">new</span> QGridLayout( layMain, 5, 2 );
+<a name="l00033"></a>00033
+<a name="l00034"></a>00034 <span class="comment">//upper items</span>
+<a name="l00035"></a>00035 QLabel* lblAccount = <span class="keyword">new</span> QLabel( i18n( <span class="stringliteral">"Account:"</span> ), page, <span class="stringliteral">"lblAccount"</span> );
+<a name="l00036"></a>00036 <a class="code" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">txtAccount</a> = <span class="keyword">new</span> KLineEdit( page, <span class="stringliteral">"txtAccount"</span> );
+<a name="l00037"></a>00037 <a class="code" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">txtAccount</a>-&gt;setEnabled( <span class="keyword">false</span> );
+<a name="l00038"></a>00038 QToolTip::add( lblAccount, i18n( <span class="stringliteral">"Unique Account Name"</span> ) );
+<a name="l00039"></a>00039 QToolTip::add( <a class="code" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">txtAccount</a>, i18n( <span class="stringliteral">"Unique Account Name"</span> ) );
+<a name="l00040"></a>00040 layTop-&gt;addWidget( lblAccount, 0, 0 );
+<a name="l00041"></a>00041 layTop-&gt;addWidget( <a class="code" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">txtAccount</a>, 0, 1 );
+<a name="l00042"></a>00042
+<a name="l00043"></a>00043 QLabel* lblServer = <span class="keyword">new</span> QLabel( i18n( <span class="stringliteral">"Server:"</span> ), page, <span class="stringliteral">"lblServer"</span> );
+<a name="l00044"></a>00044 <a class="code" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">txtServer</a> = <span class="keyword">new</span> KLineEdit( page, <span class="stringliteral">"txtServer"</span> );
+<a name="l00045"></a>00045 <a class="code" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">txtServer</a>-&gt;setFocus();
+<a name="l00046"></a>00046 QToolTip::add( lblServer, i18n( <span class="stringliteral">"Server Name"</span> ) );
+<a name="l00047"></a>00047 QToolTip::add( <a class="code" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">txtAccount</a>, i18n( <span class="stringliteral">"Server Name"</span> ) );
+<a name="l00048"></a>00048 layTop-&gt;addWidget( lblServer, 1, 0 );
+<a name="l00049"></a>00049 layTop-&gt;addWidget( <a class="code" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">txtServer</a>, 1, 1 );
+<a name="l00050"></a>00050
+<a name="l00051"></a>00051 QLabel* lblProtocol = <span class="keyword">new</span> QLabel( i18n( <span class="stringliteral">"Protocol:"</span> ), page, <span class="stringliteral">"lblProtocol"</span> );
+<a name="l00052"></a>00052 <a class="code" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">cboProtocol</a> = <span class="keyword">new</span> KComboBox( page, <span class="stringliteral">"cboProtocol"</span> );
+<a name="l00053"></a>00053 <a class="code" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">cboProtocol</a>-&gt;insertItem( <span class="stringliteral">"POP3"</span> ); <span class="comment">//currently KShowmail just supports POP3</span>
+<a name="l00054"></a>00054 QToolTip::add( lblProtocol, i18n( <span class="stringliteral">"Protocol, which shall be used to get the mails from the server. Currently KShowmail just supports POP3."</span>) );
+<a name="l00055"></a>00055 QToolTip::add( <a class="code" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">cboProtocol</a>, i18n( <span class="stringliteral">"Protocol, which shall be used to get the mails from the server. Currently KShowmail just supports POP3."</span>) );
+<a name="l00056"></a>00056 layTop-&gt;addWidget( lblProtocol, 2, 0 );
+<a name="l00057"></a>00057 layTop-&gt;addWidget( <a class="code" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">cboProtocol</a>, 2, 1 );
+<a name="l00058"></a>00058
+<a name="l00059"></a>00059 QLabel* lblPort = <span class="keyword">new</span> QLabel( i18n( <span class="stringliteral">"Port:"</span> ), page, <span class="stringliteral">"lblPort"</span> );
+<a name="l00060"></a>00060 <a class="code" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">spbPort</a> = <span class="keyword">new</span> QSpinBox( 0, 65535, 1, page, <span class="stringliteral">"spbPort"</span> );
+<a name="l00061"></a>00061 <a class="code" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">spbPort</a>-&gt;setValue( DEFAULT_PORT_POP3 );
+<a name="l00062"></a>00062 QToolTip::add( lblPort, i18n( <span class="stringliteral">"Port Number. Normally POP3 uses port 110."</span> ) );
+<a name="l00063"></a>00063 QToolTip::add( <a class="code" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">spbPort</a>, i18n( <span class="stringliteral">"Port Number. Normally POP3 uses port 110."</span> ) );
+<a name="l00064"></a>00064 layTop-&gt;addWidget( lblPort, 3, 0 );
+<a name="l00065"></a>00065 layTop-&gt;addWidget( <a class="code" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">spbPort</a>, 3, 1 );
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 QLabel* lblUser = <span class="keyword">new</span> QLabel( i18n( <span class="stringliteral">"User:"</span> ), page, <span class="stringliteral">"lblUser"</span> );
+<a name="l00068"></a>00068 <a class="code" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">txtUser</a> = <span class="keyword">new</span> KLineEdit( page, <span class="stringliteral">"txtUser"</span> );
+<a name="l00069"></a>00069 QToolTip::add( lblUser, i18n( <span class="stringliteral">"To authenticate to the mail server you need an user name."</span> ) );
+<a name="l00070"></a>00070 QToolTip::add( <a class="code" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">txtUser</a>, i18n( <span class="stringliteral">"To authenticate to the mail server you need an user name."</span> ) );
+<a name="l00071"></a>00071 layTop-&gt;addWidget( lblUser, 4, 0 );
+<a name="l00072"></a>00072 layTop-&gt;addWidget( <a class="code" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">txtUser</a>, 4, 1 );
+<a name="l00073"></a>00073
+<a name="l00074"></a>00074 <span class="comment">//password groupbox and layouts</span>
+<a name="l00075"></a>00075 QGroupBox* gboxPassword = <span class="keyword">new</span> QGroupBox( 0, Qt::Horizontal, i18n( <span class="stringliteral">"Password"</span> ), page, <span class="stringliteral">"gboxPassword"</span> );
+<a name="l00076"></a>00076 layMain-&gt;addWidget( gboxPassword );
+<a name="l00077"></a>00077
+<a name="l00078"></a>00078 QVBoxLayout* layPassword = <span class="keyword">new</span> QVBoxLayout( gboxPassword-&gt;layout(), spacingHint() );
+<a name="l00079"></a>00079 QGridLayout* layPasswordStorage = <span class="keyword">new</span> QGridLayout( layPassword, 2, 2, spacingHint() );
+<a name="l00080"></a>00080
+<a name="l00081"></a>00081
+<a name="l00082"></a>00082 <span class="comment">//radio buttons to set storage of the password</span>
+<a name="l00083"></a>00083 <a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a> = <span class="keyword">new</span> QButtonGroup( NULL, <span class="stringliteral">"grpPasswordStorage"</span> );
+<a name="l00084"></a>00084 connect( <a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a>, SIGNAL( clicked( <span class="keywordtype">int</span> ) ), <span class="keyword">this</span>, SLOT( <a class="code" href="classServerDialog.html#3b3962b56ecaaa225953601d37228cb3">slotPasswordStorageChanged</a>( <span class="keywordtype">int</span> ) ) );
+<a name="l00085"></a>00085
+<a name="l00086"></a>00086 QRadioButton* btnPasswordDontSave = <span class="keyword">new</span> QRadioButton( i18n( <span class="stringliteral">"Don't save"</span> ), gboxPassword, <span class="stringliteral">"btnPasswordDontSave"</span> );
+<a name="l00087"></a>00087 QRadioButton* btnPasswordSaveFile = <span class="keyword">new</span> QRadioButton( i18n( <span class="stringliteral">"Save password"</span>), gboxPassword, <span class="stringliteral">"btnPasswordSaveFile"</span> );
+<a name="l00088"></a>00088 QRadioButton* btnPasswordSaveKWallet = <span class="keyword">new</span> QRadioButton( i18n( <span class="stringliteral">"Use KWallet"</span> ), gboxPassword, <span class="stringliteral">"btnPasswordSaveKWallet"</span> );
+<a name="l00089"></a>00089 <a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a>-&gt;insert( btnPasswordDontSave, ID_BUTTON_PASSWORD_DONT_SAVE );
+<a name="l00090"></a>00090 <a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a>-&gt;insert( btnPasswordSaveFile, ID_BUTTON_PASSWORD_SAVE_FILE );
+<a name="l00091"></a>00091 <a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a>-&gt;insert( btnPasswordSaveKWallet, ID_BUTTON_PASSWORD_SAVE_KWALLET );
+<a name="l00092"></a>00092 QToolTip::add( btnPasswordDontSave, i18n( <span class="stringliteral">"Don't save password. KShowmail will ask you for it at first server connect."</span> ) );
+<a name="l00093"></a>00093 QToolTip::add( btnPasswordSaveFile, i18n( <span class="stringliteral">"Save password in the configuration file. Not recommended, because the password is just lightly encrypted"</span> ) );
+<a name="l00094"></a>00094 QToolTip::add( btnPasswordSaveKWallet, i18n( <span class="stringliteral">"Use KWallet to save the password. Maybe you have to type in the KWallet master password at first server connect."</span> ) );
+<a name="l00095"></a>00095 layPasswordStorage-&gt;addWidget( btnPasswordDontSave, 0, 0 );
+<a name="l00096"></a>00096 layPasswordStorage-&gt;addWidget( btnPasswordSaveFile, 0, 1 );
+<a name="l00097"></a>00097 layPasswordStorage-&gt;addWidget( btnPasswordSaveKWallet, 1, 0 );
+<a name="l00098"></a>00098
+<a name="l00099"></a>00099 <span class="comment">//password edit line</span>
+<a name="l00100"></a>00100 <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a> = <span class="keyword">new</span> KPasswordEdit( gboxPassword, <span class="stringliteral">"txtUser"</span> );
+<a name="l00101"></a>00101 layPassword-&gt;addWidget( <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a> );
+<a name="l00102"></a>00102
+<a name="l00103"></a>00103 <span class="comment">//set password defaults</span>
+<a name="l00104"></a>00104 <a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a>-&gt;setButton( DEFAULT_ACCOUNT_PASSWORD_STORAGE );
+<a name="l00105"></a>00105 <a class="code" href="classServerDialog.html#3b3962b56ecaaa225953601d37228cb3">slotPasswordStorageChanged</a>( DEFAULT_ACCOUNT_PASSWORD_STORAGE );
+<a name="l00106"></a>00106
+<a name="l00107"></a>00107 <span class="comment">//active check box</span>
+<a name="l00108"></a>00108 QGridLayout* layActive = <span class="keyword">new</span> QGridLayout( layMain, 1, 1 );
+<a name="l00109"></a>00109 layActive-&gt;setAlignment( Qt::AlignCenter );
+<a name="l00110"></a>00110 <a class="code" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">chkActive</a> = <span class="keyword">new</span> QCheckBox( i18n( <span class="stringliteral">"Active"</span>), page, <span class="stringliteral">"chkActive"</span> );
+<a name="l00111"></a>00111 QToolTip::add( <a class="code" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">chkActive</a>, i18n( <span class="stringliteral">"Select it to activate this account."</span> ) );
+<a name="l00112"></a>00112 layActive-&gt;addWidget( <a class="code" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">chkActive</a>, 0, 0 );
+<a name="l00113"></a>00113 <a class="code" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">chkActive</a>-&gt;setChecked( DEFAULT_ACCOUNT_ACTIVE );
+<a name="l00114"></a>00114
+<a name="l00115"></a>00115 <span class="comment">//set caption</span>
+<a name="l00116"></a>00116 <span class="keywordflow">if</span>( item == NULL )
+<a name="l00117"></a>00117 setCaption( i18n( <span class="stringliteral">"New account"</span> ) );
+<a name="l00118"></a>00118 <span class="keywordflow">else</span>
+<a name="l00119"></a>00119 setCaption( i18n( <span class="stringliteral">"Edit account"</span> ) );
+<a name="l00120"></a>00120
+<a name="l00121"></a>00121 <span class="comment">//write values of the given account into the dialog items</span>
+<a name="l00122"></a>00122 <span class="keywordflow">if</span>( <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a> != NULL )
+<a name="l00123"></a>00123 <a class="code" href="classServerDialog.html#9ed57b703b9fb63d8ce406f36e6c66ba">fillDialog</a>();
+<a name="l00124"></a>00124
+<a name="l00125"></a>00125
+<a name="l00126"></a>00126 }
+<a name="l00127"></a>00127
+<a name="l00128"></a>00128
+<a name="l00129"></a><a class="code" href="classServerDialog.html#05ac011efd88d4ae6f0965f7b6d3606d">00129</a> <a class="code" href="classServerDialog.html#05ac011efd88d4ae6f0965f7b6d3606d">ServerDialog::~ServerDialog</a>()
+<a name="l00130"></a>00130 {
+<a name="l00131"></a>00131 }
+<a name="l00132"></a>00132
+<a name="l00133"></a><a class="code" href="classServerDialog.html#3b3962b56ecaaa225953601d37228cb3">00133</a> <span class="keywordtype">void</span> <a class="code" href="classServerDialog.html#3b3962b56ecaaa225953601d37228cb3">ServerDialog::slotPasswordStorageChanged</a>( <span class="keywordtype">int</span> <span class="keywordtype">id</span> )
+<a name="l00134"></a>00134 {
+<a name="l00135"></a>00135 <span class="keywordflow">if</span>( <span class="keywordtype">id</span> == ID_BUTTON_PASSWORD_DONT_SAVE )
+<a name="l00136"></a>00136 {
+<a name="l00137"></a>00137 <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;setEnabled( <span class="keyword">false</span> );
+<a name="l00138"></a>00138 <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;clear();
+<a name="l00139"></a>00139 }
+<a name="l00140"></a>00140 <span class="keywordflow">else</span>
+<a name="l00141"></a>00141 <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;setEnabled( <span class="keyword">true</span> );
+<a name="l00142"></a>00142 }
+<a name="l00143"></a>00143
+<a name="l00144"></a><a class="code" href="classServerDialog.html#05a288f0b2bf3fb3b129cf8e6ea210fb">00144</a> <span class="keywordtype">void</span> <a class="code" href="classServerDialog.html#05a288f0b2bf3fb3b129cf8e6ea210fb">ServerDialog::slotOk</a>( )
+<a name="l00145"></a>00145 {
+<a name="l00146"></a>00146 <span class="comment">//check for necessary values</span>
+<a name="l00147"></a>00147 <span class="keywordflow">if</span>( <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a> == NULL )
+<a name="l00148"></a>00148 {
+<a name="l00149"></a>00149 kdError() &lt;&lt; <span class="stringliteral">"ServerDialog::slotOk: Given account pointer is Null."</span> &lt;&lt; endl;
+<a name="l00150"></a>00150 <span class="keywordflow">return</span>;
+<a name="l00151"></a>00151 }
+<a name="l00152"></a>00152 <span class="keywordflow">if</span>( <a class="code" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">txtServer</a>-&gt;text() == <span class="stringliteral">""</span> )
+<a name="l00153"></a>00153 {
+<a name="l00154"></a>00154 KMessageBox::error( <span class="keyword">this</span>, i18n( <span class="stringliteral">"Please enter an server."</span> ) );
+<a name="l00155"></a>00155 <span class="keywordflow">return</span>;
+<a name="l00156"></a>00156 }
+<a name="l00157"></a>00157
+<a name="l00158"></a>00158 <span class="keywordflow">if</span>( <a class="code" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">txtUser</a>-&gt;text() == <span class="stringliteral">""</span> )
+<a name="l00159"></a>00159 {
+<a name="l00160"></a>00160 KMessageBox::error( <span class="keyword">this</span>, i18n( <span class="stringliteral">"Please enter an user name."</span> ) );
+<a name="l00161"></a>00161 <span class="keywordflow">return</span>;
+<a name="l00162"></a>00162 }
+<a name="l00163"></a>00163
+<a name="l00164"></a>00164 <span class="comment">//get application config object (kshowmailrc)</span>
+<a name="l00165"></a>00165 KConfig* config = KApplication::kApplication()-&gt;config();
+<a name="l00166"></a>00166
+<a name="l00167"></a>00167 config-&gt;setGroup( <a class="code" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">txtAccount</a>-&gt;text() );
+<a name="l00168"></a>00168
+<a name="l00169"></a>00169 config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_SERVER, <a class="code" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">txtServer</a>-&gt;text() );
+<a name="l00170"></a>00170 config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_PROTOCOL, <a class="code" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">cboProtocol</a>-&gt;currentText().upper() );
+<a name="l00171"></a>00171 config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_PORT, <a class="code" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">spbPort</a>-&gt;value() );
+<a name="l00172"></a>00172 config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_USER, <a class="code" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">txtUser</a>-&gt;text() );
+<a name="l00173"></a>00173
+<a name="l00174"></a>00174 <span class="comment">//get the password</span>
+<a name="l00175"></a>00175 <span class="comment">//the class KPasswordEdit doesn't have a method to set the password</span>
+<a name="l00176"></a>00176 <span class="comment">//therefore we use setText(). But if we use this method, KPasswordEdit::password()</span>
+<a name="l00177"></a>00177 <span class="comment">//will return an empty string. If the user has typed in a new password, KPasswordEdit::password()</span>
+<a name="l00178"></a>00178 <span class="comment">//will return the correct password</span>
+<a name="l00179"></a>00179 QString pass;
+<a name="l00180"></a>00180 <span class="keywordflow">if</span>( <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;password() == <span class="stringliteral">""</span> || <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;password() == QString::null )
+<a name="l00181"></a>00181 pass = <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;text();
+<a name="l00182"></a>00182 <span class="keywordflow">else</span>
+<a name="l00183"></a>00183 pass = <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;password();
+<a name="l00184"></a>00184
+<a name="l00185"></a>00185 <span class="comment">//used to encrypt password</span>
+<a name="l00186"></a>00186 KURL url;
+<a name="l00187"></a>00187 url.setUser( <a class="code" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">txtUser</a>-&gt;text() );
+<a name="l00188"></a>00188 url.setHost( <a class="code" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">txtServer</a>-&gt;text() );
+<a name="l00189"></a>00189 url.setPass( pass );
+<a name="l00190"></a>00190
+<a name="l00191"></a>00191 <span class="comment">//save password (or not)</span>
+<a name="l00192"></a>00192 <span class="keywordflow">switch</span>( <a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a>-&gt;selectedId() )
+<a name="l00193"></a>00193 {
+<a name="l00194"></a>00194 <span class="keywordflow">case</span> ID_BUTTON_PASSWORD_DONT_SAVE : config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE );
+<a name="l00195"></a>00195 config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, QString::null );
+<a name="l00196"></a>00196 <span class="keywordflow">break</span>;
+<a name="l00197"></a>00197 <span class="keywordflow">case</span> ID_BUTTON_PASSWORD_SAVE_FILE : config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE );
+<a name="l00198"></a>00198 config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, <a class="code" href="namespaceEncryption.html#83f630d4dba4cf3a5f6b03a25e43f6c8">crypt</a>( url ) );
+<a name="l00199"></a>00199 <span class="keywordflow">break</span>;
+<a name="l00200"></a>00200 <span class="keywordflow">case</span> ID_BUTTON_PASSWORD_SAVE_KWALLET : config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET );
+<a name="l00201"></a>00201 config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, QString::null );
+<a name="l00202"></a>00202 <a class="code" href="namespaceKWalletAccess.html#0687cd1465352be5b3572cdfd2411219">KWalletAccess::savePassword</a>( <a class="code" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">txtAccount</a>-&gt;text(), pass );
+<a name="l00203"></a>00203 <span class="keywordflow">break</span>;
+<a name="l00204"></a>00204 <span class="keywordflow">default</span> : config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE );
+<a name="l00205"></a>00205 config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, QString::null );
+<a name="l00206"></a>00206 }
+<a name="l00207"></a>00207
+<a name="l00208"></a>00208 config-&gt;writeEntry( CONFIG_ENTRY_ACCOUNT_ACTIVE, <a class="code" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">chkActive</a>-&gt;isChecked() );
+<a name="l00209"></a>00209
+<a name="l00210"></a>00210 <span class="comment">//save config to file</span>
+<a name="l00211"></a>00211 config-&gt;sync();
+<a name="l00212"></a>00212
+<a name="l00213"></a>00213 <span class="comment">//call slot of super class to close the dialog</span>
+<a name="l00214"></a>00214 KDialogBase::slotOk();
+<a name="l00215"></a>00215 }
+<a name="l00216"></a>00216
+<a name="l00217"></a><a class="code" href="classServerDialog.html#9ed57b703b9fb63d8ce406f36e6c66ba">00217</a> <span class="keywordtype">void</span> <a class="code" href="classServerDialog.html#9ed57b703b9fb63d8ce406f36e6c66ba">ServerDialog::fillDialog</a>( )
+<a name="l00218"></a>00218 {
+<a name="l00219"></a>00219 <span class="comment">//check for valid account pointer</span>
+<a name="l00220"></a>00220 <span class="keywordflow">if</span>( <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a> == NULL )
+<a name="l00221"></a>00221 {
+<a name="l00222"></a>00222 kdError() &lt;&lt; <span class="stringliteral">"ServerDialog::fillDialog: invalid pointer to account item."</span> &lt;&lt; endl;
+<a name="l00223"></a>00223 <span class="keywordflow">return</span>;
+<a name="l00224"></a>00224 }
+<a name="l00225"></a>00225
+<a name="l00226"></a>00226 <a class="code" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">txtAccount</a>-&gt;setText( <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a>-&gt;<a class="code" href="classConfigElem.html#760e18ad688d55cd76bfeeb4958df769">getAccountName</a>() );
+<a name="l00227"></a>00227 <a class="code" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">txtServer</a>-&gt;setText( <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a>-&gt;<a class="code" href="classConfigElem.html#6a7f0888c77882eda05bcc22a27947c1">getHost</a>() );
+<a name="l00228"></a>00228 <a class="code" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">cboProtocol</a>-&gt;setCurrentText( <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a>-&gt;<a class="code" href="classConfigElem.html#562620c4141a744725d384309a9e55f1">getProtocol</a>( <span class="keyword">true</span> ) );
+<a name="l00229"></a>00229 <a class="code" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">spbPort</a>-&gt;setValue( <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a>-&gt;<a class="code" href="classConfigElem.html#2b3366a9ebc43549491bd003578a0bc8">getPort</a>() );
+<a name="l00230"></a>00230 <a class="code" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">txtUser</a>-&gt;setText( <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a>-&gt;<a class="code" href="classConfigElem.html#19f5621cac8e71c1088995bcef75596a">getUser</a>() );
+<a name="l00231"></a>00231
+<a name="l00232"></a>00232 <span class="keywordtype">int</span> type = <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a>-&gt;<a class="code" href="classConfigElem.html#34bc68f7bbdc296d18460f303f479450">getPasswordStorage</a>();
+<a name="l00233"></a>00233 <span class="keywordflow">if</span>( type != CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE &amp;&amp; type != CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE &amp;&amp; type != CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET )
+<a name="l00234"></a>00234 type = DEFAULT_ACCOUNT_PASSWORD_STORAGE;
+<a name="l00235"></a>00235
+<a name="l00236"></a>00236 <span class="keywordflow">switch</span>( type )
+<a name="l00237"></a>00237 {
+<a name="l00238"></a>00238 <span class="keywordflow">case</span> CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE : <a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a>-&gt;setButton( ID_BUTTON_PASSWORD_DONT_SAVE );
+<a name="l00239"></a>00239 <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;setEnabled( <span class="keyword">false</span> );
+<a name="l00240"></a>00240 <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;clear();
+<a name="l00241"></a>00241 <span class="keywordflow">break</span>;
+<a name="l00242"></a>00242 <span class="keywordflow">case</span> CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE : <a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a>-&gt;setButton( ID_BUTTON_PASSWORD_SAVE_FILE );
+<a name="l00243"></a>00243 <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;setEnabled( <span class="keyword">true</span> );
+<a name="l00244"></a>00244 <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;setText( <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a>-&gt;<a class="code" href="classConfigElem.html#7ea9a96f400284acce0999639659c461">getPassword</a>() );
+<a name="l00245"></a>00245 <span class="keywordflow">break</span>;
+<a name="l00246"></a>00246 <span class="keywordflow">case</span> CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET : <a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a>-&gt;setButton( ID_BUTTON_PASSWORD_SAVE_KWALLET );
+<a name="l00247"></a>00247 <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;setEnabled( <span class="keyword">true</span> );
+<a name="l00248"></a>00248 <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;setText( <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a>-&gt;<a class="code" href="classConfigElem.html#7ea9a96f400284acce0999639659c461">getPassword</a>() );
+<a name="l00249"></a>00249 <span class="keywordflow">break</span>;
+<a name="l00250"></a>00250 <span class="keywordflow">default</span> : <a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a>-&gt;setButton( 1 );
+<a name="l00251"></a>00251 <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>-&gt;clear();
+<a name="l00252"></a>00252 }
+<a name="l00253"></a>00253
+<a name="l00254"></a>00254 <a class="code" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">chkActive</a>-&gt;setChecked( <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a>-&gt;<a class="code" href="classConfigElem.html#9c91fce81b58e9d0d1b37688711e9014">isActive</a>() );
+<a name="l00255"></a>00255 }
+<a name="l00256"></a>00256
+<a name="l00257"></a>00257 <span class="preprocessor">#include "serverdialog.moc"</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/serverdialog_8h-source.html b/doc/html/serverdialog_8h-source.html
new file mode 100644
index 0000000..40e669c
--- /dev/null
+++ b/doc/html/serverdialog_8h-source.html
@@ -0,0 +1,131 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/serverdialog.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>serverdialog.h</h1><a href="serverdialog_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> serverdialog.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Sun Oct 28 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef SERVERDIALOG_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define SERVERDIALOG_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="comment">//Qt headers</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qlayout.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;qlabel.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;qtooltip.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;qspinbox.h&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;qgroupbox.h&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;qbuttongroup.h&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;qradiobutton.h&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;qcheckbox.h&gt;</span>
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031 <span class="comment">//KDE headers</span>
+<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;kdialogbase.h&gt;</span>
+<a name="l00033"></a>00033 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00034"></a>00034 <span class="preprocessor">#include &lt;klineedit.h&gt;</span>
+<a name="l00035"></a>00035 <span class="preprocessor">#include &lt;kcombobox.h&gt;</span>
+<a name="l00036"></a>00036 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00037"></a>00037 <span class="preprocessor">#include &lt;kmessagebox.h&gt;</span>
+<a name="l00038"></a>00038 <span class="preprocessor">#include &lt;kpassdlg.h&gt;</span>
+<a name="l00039"></a>00039
+<a name="l00040"></a>00040 <span class="comment">//KShowmail headers</span>
+<a name="l00041"></a>00041 <span class="preprocessor">#include "<a class="code" href="configelem_8h.html">configelem.h</a>"</span>
+<a name="l00042"></a>00042 <span class="preprocessor">#include "<a class="code" href="constants_8h.html">constants.h</a>"</span>
+<a name="l00043"></a>00043 <span class="preprocessor">#include "<a class="code" href="encryption_8h.html">encryption.h</a>"</span>
+<a name="l00044"></a>00044 <span class="preprocessor">#include "<a class="code" href="kwalletaccess_8h.html">kwalletaccess.h</a>"</span>
+<a name="l00045"></a>00045 <span class="preprocessor">#include &lt;ktabwidget.h&gt;</span>
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 <span class="comment">//radio button IDs</span>
+<a name="l00048"></a><a class="code" href="serverdialog_8h.html#be096056a674c86942df35ae88683434">00048</a> <span class="preprocessor">#define ID_BUTTON_PASSWORD_DONT_SAVE 1</span>
+<a name="l00049"></a><a class="code" href="serverdialog_8h.html#9638724c33aa14f0d538a7e4423e470b">00049</a> <span class="preprocessor"></span><span class="preprocessor">#define ID_BUTTON_PASSWORD_SAVE_FILE 2</span>
+<a name="l00050"></a><a class="code" href="serverdialog_8h.html#77714157b4c78706e8a5bb4baf36692e">00050</a> <span class="preprocessor"></span><span class="preprocessor">#define ID_BUTTON_PASSWORD_SAVE_KWALLET 3</span>
+<a name="l00051"></a><a class="code" href="serverdialog_8h.html#f019b2688ba98eabbe519528e08e8a3f">00051</a> <span class="preprocessor"></span><span class="preprocessor">#define ID_BUTTON_SECLOGIN_NONE 1</span>
+<a name="l00052"></a><a class="code" href="serverdialog_8h.html#d06081dbbddcd8906f776cb51a1b86d7">00052</a> <span class="preprocessor"></span><span class="preprocessor">#define ID_BUTTON_SECLOGIN_APOP 2</span>
+<a name="l00053"></a><a class="code" href="serverdialog_8h.html#e10ffb05e2e9354fe339b6bee90335e7">00053</a> <span class="preprocessor"></span><span class="preprocessor">#define ID_BUTTON_SECLOGIN_SASL 3</span>
+<a name="l00054"></a><a class="code" href="serverdialog_8h.html#799ff84b8069a4c98a54017050cb32be">00054</a> <span class="preprocessor"></span><span class="preprocessor">#define ID_BUTTON_SECTRANSFER_NONE 1</span>
+<a name="l00055"></a><a class="code" href="serverdialog_8h.html#5728cd8d1587a93dcdb7bcabed849b07">00055</a> <span class="preprocessor"></span><span class="preprocessor">#define ID_BUTTON_SECTRANSFER_SSL 2</span>
+<a name="l00056"></a><a class="code" href="serverdialog_8h.html#10a546734fbc31e9f983a31c566ca584">00056</a> <span class="preprocessor"></span><span class="preprocessor">#define ID_BUTTON_SECTRANSFER_TLS 3</span>
+<a name="l00057"></a>00057 <span class="preprocessor"></span>
+<a name="l00064"></a><a class="code" href="classServerDialog.html">00064</a> <span class="keyword">class </span><a class="code" href="classServerDialog.html">ServerDialog</a> : <span class="keyword">public</span> KDialogBase
+<a name="l00065"></a>00065 {
+<a name="l00066"></a>00066 Q_OBJECT
+<a name="l00067"></a>00067 <span class="keyword">public</span>:
+<a name="l00068"></a>00068
+<a name="l00069"></a>00069 <span class="keyword">public</span>:
+<a name="l00070"></a>00070
+<a name="l00076"></a>00076 <a class="code" href="classServerDialog.html#2083bd1376173f7229267c77b00e0250">ServerDialog</a>( QWidget* parent, <a class="code" href="classConfigElem.html">ConfigElem</a>* item = NULL );
+<a name="l00077"></a>00077
+<a name="l00081"></a>00081 <a class="code" href="classServerDialog.html#05ac011efd88d4ae6f0965f7b6d3606d">~ServerDialog</a>();
+<a name="l00082"></a>00082
+<a name="l00083"></a>00083 <span class="keyword">private</span>:
+<a name="l00084"></a>00084
+<a name="l00088"></a><a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">00088</a> <a class="code" href="classConfigElem.html">ConfigElem</a>* <a class="code" href="classServerDialog.html#c361b2cc2165a11e38e83cea29e39185">account</a>;
+<a name="l00089"></a>00089
+<a name="l00093"></a><a class="code" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">00093</a> KLineEdit* <a class="code" href="classServerDialog.html#690681b24cfd21ebdc4d5543bee5b4a3">txtAccount</a>;
+<a name="l00094"></a>00094
+<a name="l00098"></a><a class="code" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">00098</a> KLineEdit* <a class="code" href="classServerDialog.html#4779a9cb8e86f39ea43f8db6e7c0b0ad">txtServer</a>;
+<a name="l00099"></a>00099
+<a name="l00103"></a><a class="code" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">00103</a> KComboBox* <a class="code" href="classServerDialog.html#2634e6da37697f6a6a1a2020118bfd59">cboProtocol</a>;
+<a name="l00104"></a>00104
+<a name="l00108"></a><a class="code" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">00108</a> QSpinBox* <a class="code" href="classServerDialog.html#1ac6a0a7f23a08ab62450991412627d6">spbPort</a>;
+<a name="l00109"></a>00109
+<a name="l00113"></a><a class="code" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">00113</a> KLineEdit* <a class="code" href="classServerDialog.html#0df9d91a225a5426d198286987f5b1b2">txtUser</a>;
+<a name="l00114"></a>00114
+<a name="l00118"></a><a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">00118</a> KPasswordEdit* <a class="code" href="classServerDialog.html#8630fd27107213fd88fbaf0db02793d6">txtPassword</a>;
+<a name="l00119"></a>00119
+<a name="l00123"></a><a class="code" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">00123</a> QCheckBox* <a class="code" href="classServerDialog.html#b433e8128211c96fe08015cc45083ca6">chkActive</a>;
+<a name="l00124"></a>00124
+<a name="l00128"></a><a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">00128</a> QButtonGroup* <a class="code" href="classServerDialog.html#63a7dda4a3c7da5a4b7979dcd13f96ce">grpPasswordStorage</a>;
+<a name="l00129"></a>00129
+<a name="l00133"></a><a class="code" href="classServerDialog.html#05f46d98c337ab7a8afc2325aef9e8e7">00133</a> QButtonGroup* <a class="code" href="classServerDialog.html#05f46d98c337ab7a8afc2325aef9e8e7">grpSecureTransfer</a>;
+<a name="l00134"></a>00134
+<a name="l00135"></a>00135 <span class="keyword">protected</span> slots:
+<a name="l00136"></a>00136
+<a name="l00142"></a>00142 <span class="keywordtype">void</span> <a class="code" href="classServerDialog.html#3b3962b56ecaaa225953601d37228cb3">slotPasswordStorageChanged</a>( <span class="keywordtype">int</span> <span class="keywordtype">id</span> );
+<a name="l00143"></a>00143
+<a name="l00149"></a>00149 <span class="keywordtype">void</span> <a class="code" href="classServerDialog.html#43e0a3f2e4975f8b196bc3dbfd606eb0">slotSecureTransferChanged</a>( <span class="keywordtype">int</span> <span class="keywordtype">id</span> );
+<a name="l00150"></a>00150
+<a name="l00158"></a>00158 <span class="keywordtype">void</span> <a class="code" href="classServerDialog.html#05a288f0b2bf3fb3b129cf8e6ea210fb">slotOk</a>();
+<a name="l00159"></a>00159
+<a name="l00160"></a>00160 <span class="keyword">protected</span>:
+<a name="l00161"></a>00161
+<a name="l00165"></a>00165 <span class="keywordtype">void</span> <a class="code" href="classServerDialog.html#9ed57b703b9fb63d8ce406f36e6c66ba">fillDialog</a>();
+<a name="l00166"></a>00166 };
+<a name="l00167"></a>00167
+<a name="l00168"></a>00168 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/serverdialog_8moc_8cpp-source.html b/doc/html/serverdialog_8moc_8cpp-source.html
new file mode 100644
index 0000000..9759211
--- /dev/null
+++ b/doc/html/serverdialog_8moc_8cpp-source.html
@@ -0,0 +1,114 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/serverdialog.moc.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>serverdialog.moc.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/****************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment">** ServerDialog meta object code from reading C++ file 'serverdialog.h'</span>
+<a name="l00003"></a>00003 <span class="comment">**</span>
+<a name="l00004"></a>00004 <span class="comment">** Created: Tue May 15 19:57:53 2007</span>
+<a name="l00005"></a>00005 <span class="comment">** by: The Qt MOC ($Id: serverdialog_8moc_8cpp-source.html,v 1.8 2007/05/16 20:12:04 kuddel-fl Exp $)</span>
+<a name="l00006"></a>00006 <span class="comment">**</span>
+<a name="l00007"></a>00007 <span class="comment">** WARNING! All changes made in this file will be lost!</span>
+<a name="l00008"></a>00008 <span class="comment">*****************************************************************************/</span>
+<a name="l00009"></a>00009
+<a name="l00010"></a>00010 <span class="preprocessor">#undef QT_NO_COMPAT</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#include "serverdialog.h"</span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;qmetaobject.h&gt;</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;qapplication.h&gt;</span>
+<a name="l00014"></a>00014
+<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;private/qucomextra_p.h&gt;</span>
+<a name="l00016"></a>00016 <span class="preprocessor">#if !defined(Q_MOC_OUTPUT_REVISION) || (Q_MOC_OUTPUT_REVISION != 26)</span>
+<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#error "This file was generated using the moc from 3.3.7. It"</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#error "cannot be used with the include files from this version of Qt."</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#error "(The moc has changed too much.)"</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00021"></a>00021 <span class="preprocessor"></span>
+<a name="l00022"></a>00022 <span class="keyword">const</span> <span class="keywordtype">char</span> *ServerDialog::className()<span class="keyword"> const</span>
+<a name="l00023"></a>00023 <span class="keyword"></span>{
+<a name="l00024"></a>00024 <span class="keywordflow">return</span> <span class="stringliteral">"ServerDialog"</span>;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 QMetaObject *ServerDialog::metaObj = 0;
+<a name="l00028"></a>00028 <span class="keyword">static</span> QMetaObjectCleanUp cleanUp_ServerDialog( <span class="stringliteral">"ServerDialog"</span>, &amp;ServerDialog::staticMetaObject );
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="preprocessor">#ifndef QT_NO_TRANSLATION</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>QString ServerDialog::tr( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00032"></a>00032 {
+<a name="l00033"></a>00033 <span class="keywordflow">if</span> ( qApp )
+<a name="l00034"></a>00034 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"ServerDialog"</span>, s, c, QApplication::DefaultCodec );
+<a name="l00035"></a>00035 <span class="keywordflow">else</span>
+<a name="l00036"></a>00036 <span class="keywordflow">return</span> QString::fromLatin1( s );
+<a name="l00037"></a>00037 }
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef QT_NO_TRANSLATION_UTF8</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span>QString ServerDialog::trUtf8( <span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *c )
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041 <span class="keywordflow">if</span> ( qApp )
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> qApp-&gt;translate( <span class="stringliteral">"ServerDialog"</span>, s, c, QApplication::UnicodeUTF8 );
+<a name="l00043"></a>00043 <span class="keywordflow">else</span>
+<a name="l00044"></a>00044 <span class="keywordflow">return</span> QString::fromUtf8( s );
+<a name="l00045"></a>00045 }
+<a name="l00046"></a>00046 <span class="preprocessor">#endif // QT_NO_TRANSLATION_UTF8</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif // QT_NO_TRANSLATION</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 QMetaObject* ServerDialog::staticMetaObject()
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <span class="keywordflow">if</span> ( metaObj )
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> metaObj;
+<a name="l00054"></a>00054 QMetaObject* parentObject = ServerDlg::staticMetaObject();
+<a name="l00055"></a>00055 metaObj = QMetaObject::new_metaobject(
+<a name="l00056"></a>00056 <span class="stringliteral">"ServerDialog"</span>, parentObject,
+<a name="l00057"></a>00057 0, 0,
+<a name="l00058"></a>00058 0, 0,
+<a name="l00059"></a>00059 #ifndef QT_NO_PROPERTIES
+<a name="l00060"></a>00060 0, 0,
+<a name="l00061"></a>00061 0, 0,
+<a name="l00062"></a>00062 #endif <span class="comment">// QT_NO_PROPERTIES</span>
+<a name="l00063"></a>00063 0, 0 );
+<a name="l00064"></a>00064 cleanUp_ServerDialog.setMetaObject( metaObj );
+<a name="l00065"></a>00065 <span class="keywordflow">return</span> metaObj;
+<a name="l00066"></a>00066 }
+<a name="l00067"></a>00067
+<a name="l00068"></a>00068 <span class="keywordtype">void</span>* ServerDialog::qt_cast( <span class="keyword">const</span> <span class="keywordtype">char</span>* clname )
+<a name="l00069"></a>00069 {
+<a name="l00070"></a>00070 <span class="keywordflow">if</span> ( !qstrcmp( clname, <span class="stringliteral">"ServerDialog"</span> ) )
+<a name="l00071"></a>00071 <span class="keywordflow">return</span> <span class="keyword">this</span>;
+<a name="l00072"></a>00072 <span class="keywordflow">return</span> ServerDlg::qt_cast( clname );
+<a name="l00073"></a>00073 }
+<a name="l00074"></a>00074
+<a name="l00075"></a>00075 <span class="keywordtype">bool</span> ServerDialog::qt_invoke( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00076"></a>00076 {
+<a name="l00077"></a>00077 <span class="keywordflow">return</span> ServerDlg::qt_invoke(_id,_o);
+<a name="l00078"></a>00078 }
+<a name="l00079"></a>00079
+<a name="l00080"></a>00080 <span class="keywordtype">bool</span> ServerDialog::qt_emit( <span class="keywordtype">int</span> _id, QUObject* _o )
+<a name="l00081"></a>00081 {
+<a name="l00082"></a>00082 <span class="keywordflow">return</span> ServerDlg::qt_emit(_id,_o);
+<a name="l00083"></a>00083 }
+<a name="l00084"></a>00084 <span class="preprocessor">#ifndef QT_NO_PROPERTIES</span>
+<a name="l00085"></a>00085 <span class="preprocessor"></span>
+<a name="l00086"></a>00086 <span class="keywordtype">bool</span> ServerDialog::qt_property( <span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> f, QVariant* v)
+<a name="l00087"></a>00087 {
+<a name="l00088"></a>00088 <span class="keywordflow">return</span> ServerDlg::qt_property( <span class="keywordtype">id</span>, f, v);
+<a name="l00089"></a>00089 }
+<a name="l00090"></a>00090
+<a name="l00091"></a>00091 <span class="keywordtype">bool</span> ServerDialog::qt_static_property( QObject* , <span class="keywordtype">int</span> , <span class="keywordtype">int</span> , QVariant* ){ <span class="keywordflow">return</span> FALSE; }
+<a name="l00092"></a>00092 <span class="preprocessor">#endif // QT_NO_PROPERTIES</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Wed May 16 21:15:19 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/showlistviewitem_8cpp-source.html b/doc/html/showlistviewitem_8cpp-source.html
new file mode 100644
index 0000000..49d4e5b
--- /dev/null
+++ b/doc/html/showlistviewitem_8cpp-source.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/showlistviewitem.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>showlistviewitem.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> showlistviewitem.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Son Apr 21 2002</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2002 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include "showlistviewitem.h"</span>
+<a name="l00019"></a>00019
+<a name="l00020"></a><a class="code" href="classShowListViewItem.html#4d3f0f8ab32067485f83d3bf93fff6c6">00020</a> <a class="code" href="classShowListViewItem.html#4d3f0f8ab32067485f83d3bf93fff6c6">ShowListViewItem::ShowListViewItem</a> (QListView * parent,
+<a name="l00021"></a>00021 <a class="code" href="classShowListViewItem.html">ShowListViewItem</a>* after):
+<a name="l00022"></a>00022 QListViewItem (parent, after)
+<a name="l00023"></a>00023 {}
+<a name="l00024"></a>00024
+<a name="l00025"></a><a class="code" href="classShowListViewItem.html#8ad5e105eb0fb3275af6cc55ce52a63d">00025</a> <a class="code" href="classShowListViewItem.html#4d3f0f8ab32067485f83d3bf93fff6c6">ShowListViewItem::ShowListViewItem</a>( QListView * parent ) :
+<a name="l00026"></a>00026 QListViewItem( parent )
+<a name="l00027"></a>00027 {
+<a name="l00028"></a>00028 }
+<a name="l00029"></a>00029
+<a name="l00030"></a><a class="code" href="classShowListViewItem.html#1d417b96d9e99eb7a7f284386cb00f91">00030</a> <a class="code" href="classShowListViewItem.html#1d417b96d9e99eb7a7f284386cb00f91">ShowListViewItem::~ShowListViewItem</a>()
+<a name="l00031"></a>00031 {}
+<a name="l00032"></a>00032
+<a name="l00033"></a><a class="code" href="classShowListViewItem.html#5dba88e00c43a0911fa70f6c41173fe3">00033</a> QString <a class="code" href="classShowListViewItem.html#5dba88e00c43a0911fa70f6c41173fe3">ShowListViewItem::key</a> (<span class="keywordtype">int</span> column, <span class="keywordtype">bool</span> <span class="comment">/*ascending*/</span>)<span class="keyword"> const</span>
+<a name="l00034"></a>00034 <span class="keyword"></span>{
+<a name="l00035"></a>00035 <span class="keywordflow">switch</span> (column)
+<a name="l00036"></a>00036 {
+<a name="l00037"></a>00037 <span class="keywordflow">case</span> _colNumber:
+<a name="l00038"></a>00038 <span class="keywordflow">return</span> text (_colAccount) + text (_colNumber);
+<a name="l00039"></a>00039 <span class="keywordflow">case</span> _colDate:
+<a name="l00040"></a>00040 <span class="keywordflow">return</span> <a class="code" href="classShowListViewItem.html#9d582aea8cd197406cd8ba103e3df25b">m_time</a>;
+<a name="l00041"></a>00041 <span class="keywordflow">default</span>:
+<a name="l00042"></a>00042 <span class="keywordflow">return</span> text (column);
+<a name="l00043"></a>00043 }
+<a name="l00044"></a>00044 }
+<a name="l00045"></a>00045
+<a name="l00050"></a><a class="code" href="classShowListViewItem.html#80e56b65e05d1bbded4716d258be499a">00050</a> <span class="keywordtype">int</span> <a class="code" href="classShowListViewItem.html#80e56b65e05d1bbded4716d258be499a">ShowListViewItem::compare</a>( QListViewItem *i, <span class="keywordtype">int</span> col,
+<a name="l00051"></a>00051 <span class="keywordtype">bool</span> ascending )<span class="keyword"> const</span>
+<a name="l00052"></a>00052 <span class="keyword"></span>{
+<a name="l00053"></a>00053 <span class="keywordflow">return</span> <a class="code" href="classShowListViewItem.html#5dba88e00c43a0911fa70f6c41173fe3">key</a>( col, ascending ).compare( i-&gt;key( col, ascending) );
+<a name="l00054"></a>00054 }
+<a name="l00055"></a>00055
+<a name="l00056"></a><a class="code" href="classShowListViewItem.html#2f82fc18123a144ec93f94384c936172">00056</a> <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#2f82fc18123a144ec93f94384c936172">ShowListViewItem::setNumber</a> (<span class="keyword">const</span> QString&amp; number)
+<a name="l00057"></a>00057 {
+<a name="l00058"></a>00058 setText (_colNumber, number);
+<a name="l00059"></a>00059 }
+<a name="l00060"></a>00060
+<a name="l00061"></a><a class="code" href="classShowListViewItem.html#d757b7cadf50f4b7e8af5f1f7fe09b02">00061</a> <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#d757b7cadf50f4b7e8af5f1f7fe09b02">ShowListViewItem::setAccount</a>(<span class="keyword">const</span> QString&amp; account)
+<a name="l00062"></a>00062 {
+<a name="l00063"></a>00063 setText (_colAccount, account);
+<a name="l00064"></a>00064 }
+<a name="l00065"></a>00065
+<a name="l00066"></a><a class="code" href="classShowListViewItem.html#9ff7a14853167240196c9289924a39d6">00066</a> <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#9ff7a14853167240196c9289924a39d6">ShowListViewItem::setFrom</a>(<span class="keyword">const</span> QString&amp; from)
+<a name="l00067"></a>00067 {
+<a name="l00068"></a>00068 setText (_colFrom, from);
+<a name="l00069"></a>00069 }
+<a name="l00070"></a>00070
+<a name="l00071"></a><a class="code" href="classShowListViewItem.html#633d447c919be4b754def3ae9b03c9f6">00071</a> <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#633d447c919be4b754def3ae9b03c9f6">ShowListViewItem::setTo</a>(<span class="keyword">const</span> QString&amp; to)
+<a name="l00072"></a>00072 {
+<a name="l00073"></a>00073 setText (_colTo, to);
+<a name="l00074"></a>00074 }
+<a name="l00075"></a>00075
+<a name="l00076"></a><a class="code" href="classShowListViewItem.html#c20d53f3d7d4c60bb054c958531f5d92">00076</a> <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#c20d53f3d7d4c60bb054c958531f5d92">ShowListViewItem::setSubject</a>(<span class="keyword">const</span> QString&amp; subject)
+<a name="l00077"></a>00077 {
+<a name="l00078"></a>00078 setText (_colSubject, subject);
+<a name="l00079"></a>00079 }
+<a name="l00080"></a>00080
+<a name="l00081"></a><a class="code" href="classShowListViewItem.html#b96fe5949709d9ccd3d414ac81671577">00081</a> <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#b96fe5949709d9ccd3d414ac81671577">ShowListViewItem::setDate</a>(<span class="keyword">const</span> QString&amp; date)
+<a name="l00082"></a>00082 {
+<a name="l00083"></a>00083 setText (_colDate, date);
+<a name="l00084"></a>00084 }
+<a name="l00085"></a>00085
+<a name="l00086"></a><a class="code" href="classShowListViewItem.html#0bb549ead9f623377fa2a240e76e3e90">00086</a> <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#0bb549ead9f623377fa2a240e76e3e90">ShowListViewItem::setSize</a>(<span class="keyword">const</span> QString&amp; size)
+<a name="l00087"></a>00087 {
+<a name="l00088"></a>00088 setText (_colSize, size);
+<a name="l00089"></a>00089 }
+<a name="l00090"></a>00090
+<a name="l00091"></a><a class="code" href="classShowListViewItem.html#2b5c115276821d6137cf14940d264606">00091</a> <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#2b5c115276821d6137cf14940d264606">ShowListViewItem::setContent</a>(<span class="keyword">const</span> QString&amp; content)
+<a name="l00092"></a>00092 {
+<a name="l00093"></a>00093 setText (_colContent, content);
+<a name="l00094"></a>00094 }
+<a name="l00095"></a>00095
+<a name="l00096"></a><a class="code" href="classShowListViewItem.html#120d8cdc825924cf408ba99c6667cf34">00096</a> <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#120d8cdc825924cf408ba99c6667cf34">ShowListViewItem::setState</a>(<span class="keyword">const</span> QString&amp; state)
+<a name="l00097"></a>00097 {
+<a name="l00098"></a>00098 setText (_colState, state);
+<a name="l00099"></a>00099 }
+<a name="l00100"></a>00100
+<a name="l00101"></a><a class="code" href="classShowListViewItem.html#0d78b8e18cae5e309719b498f40f2f89">00101</a> <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#0d78b8e18cae5e309719b498f40f2f89">ShowListViewItem::setTime</a> (<span class="keyword">const</span> QString&amp; time)
+<a name="l00102"></a>00102 {
+<a name="l00103"></a>00103 <a class="code" href="classShowListViewItem.html#9d582aea8cd197406cd8ba103e3df25b">m_time</a> = time;
+<a name="l00104"></a>00104 }
+<a name="l00105"></a>00105
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/showlistviewitem_8h-source.html b/doc/html/showlistviewitem_8h-source.html
new file mode 100644
index 0000000..7c9b34f
--- /dev/null
+++ b/doc/html/showlistviewitem_8h-source.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/showlistviewitem.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>showlistviewitem.h</h1><a href="showlistviewitem_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> showlistviewitem.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Son Apr 21 2002</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2002 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef SHOWLISTVIEWITEM_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define SHOWLISTVIEWITEM_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;qlistview.h&gt;</span>
+<a name="l00022"></a>00022
+<a name="l00027"></a><a class="code" href="classShowListViewItem.html">00027</a> <span class="keyword">class </span><a class="code" href="classShowListViewItem.html">ShowListViewItem</a> : <span class="keyword">public</span> QListViewItem
+<a name="l00028"></a>00028 {
+<a name="l00029"></a>00029 <span class="keyword">public</span>:
+<a name="l00030"></a>00030
+<a name="l00036"></a>00036 <a class="code" href="classShowListViewItem.html#4d3f0f8ab32067485f83d3bf93fff6c6">ShowListViewItem</a> (QListView * parent, <a class="code" href="classShowListViewItem.html">ShowListViewItem</a> * after);
+<a name="l00037"></a>00037
+<a name="l00042"></a>00042 <a class="code" href="classShowListViewItem.html#4d3f0f8ab32067485f83d3bf93fff6c6">ShowListViewItem</a>( QListView* parent );
+<a name="l00043"></a>00043
+<a name="l00044"></a>00044
+<a name="l00045"></a>00045 <span class="keyword">virtual</span> <a class="code" href="classShowListViewItem.html#1d417b96d9e99eb7a7f284386cb00f91">~ShowListViewItem</a>();
+<a name="l00046"></a>00046 <span class="keyword">virtual</span> QString <a class="code" href="classShowListViewItem.html#5dba88e00c43a0911fa70f6c41173fe3">key</a> (<span class="keywordtype">int</span> column, <span class="keywordtype">bool</span> ascending) <span class="keyword">const</span>;
+<a name="l00051"></a>00051 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classShowListViewItem.html#80e56b65e05d1bbded4716d258be499a">compare</a>( QListViewItem *i, <span class="keywordtype">int</span> col, <span class="keywordtype">bool</span> ascending ) <span class="keyword">const</span>;
+<a name="l00052"></a>00052 <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#2f82fc18123a144ec93f94384c936172">setNumber</a> (<span class="keyword">const</span> QString&amp;);
+<a name="l00053"></a>00053 <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#d757b7cadf50f4b7e8af5f1f7fe09b02">setAccount</a>(<span class="keyword">const</span> QString&amp;);
+<a name="l00054"></a>00054 <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#9ff7a14853167240196c9289924a39d6">setFrom</a>(<span class="keyword">const</span> QString&amp;);
+<a name="l00055"></a>00055 <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#633d447c919be4b754def3ae9b03c9f6">setTo</a>(<span class="keyword">const</span> QString&amp;);
+<a name="l00056"></a>00056 <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#c20d53f3d7d4c60bb054c958531f5d92">setSubject</a>(<span class="keyword">const</span> QString&amp;);
+<a name="l00057"></a>00057 <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#b96fe5949709d9ccd3d414ac81671577">setDate</a>(<span class="keyword">const</span> QString&amp;);
+<a name="l00058"></a>00058 <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#0bb549ead9f623377fa2a240e76e3e90">setSize</a>(<span class="keyword">const</span> QString&amp;);
+<a name="l00059"></a>00059 <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#2b5c115276821d6137cf14940d264606">setContent</a>(<span class="keyword">const</span> QString&amp;);
+<a name="l00060"></a>00060 <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#120d8cdc825924cf408ba99c6667cf34">setState</a>(<span class="keyword">const</span> QString&amp;);
+<a name="l00061"></a>00061 <span class="keywordtype">void</span> <a class="code" href="classShowListViewItem.html#0d78b8e18cae5e309719b498f40f2f89">setTime</a> (<span class="keyword">const</span> QString&amp;);
+<a name="l00062"></a>00062 <span class="keyword">enum</span> {<a class="code" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075ce177d8abde0abb4153cdf4a5d4ef8ee">_colNumber</a>, <a class="code" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075813c78adafbe56de880d99357e659832">_colAccount</a>, <a class="code" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d0750c73c4f727d2ef0a095d76df9fadc5ea">_colFrom</a>, <a class="code" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075c3cae478dcb1fd7ef007ffd09e2576e0">_colTo</a>, <a class="code" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075c0d8dc86f4421edd8c8e7327f0729737">_colSubject</a>, <a class="code" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075783ffd9ee58a24ab0f850b9a02af6178">_colDate</a>,
+<a name="l00063"></a>00063 <a class="code" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075d9a6583b5b7e2a25f0678985afa45950">_colSize</a>, <a class="code" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d07564802e43724f98301b74055e164e8e46">_colContent</a>, <a class="code" href="classShowListViewItem.html#afb45ba9f76d1f5fa2c9e47f19a8d075d33223c37563c4e7c517e8428d272c42">_colState</a>};
+<a name="l00064"></a>00064 <span class="keyword">private</span>:
+<a name="l00065"></a><a class="code" href="classShowListViewItem.html#9d582aea8cd197406cd8ba103e3df25b">00065</a> QString <a class="code" href="classShowListViewItem.html#9d582aea8cd197406cd8ba103e3df25b">m_time</a>;
+<a name="l00066"></a>00066 };
+<a name="l00067"></a>00067
+<a name="l00068"></a>00068
+<a name="l00069"></a>00069 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/showrecord_8cpp-source.html b/doc/html/showrecord_8cpp-source.html
new file mode 100644
index 0000000..ed0fbe4
--- /dev/null
+++ b/doc/html/showrecord_8cpp-source.html
@@ -0,0 +1,580 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/showrecord.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>showrecord.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> showrecord.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Mon Dec 3 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include "showrecord.h"</span>
+<a name="l00019"></a>00019
+<a name="l00020"></a>00020 <span class="keywordtype">int</span> <span class="keyword">const</span> <a class="code" href="classShowRecord.html#24f3968b9bd526deb987f3e21f264404">ShowRecord::continueShowHeaders</a>( 0 );
+<a name="l00021"></a>00021 <span class="keywordtype">int</span> <span class="keyword">const</span> <a class="code" href="classShowRecord.html#8f9c8ce1f77c014cd4efcbf65c9b11f5">ShowRecord::cancelShowHeaders</a>( 1 );
+<a name="l00022"></a>00022
+<a name="l00023"></a><a class="code" href="classShowRecord.html#c3088d9306ad23138dcc1212b975f596">00023</a> <a class="code" href="classShowRecord.html#c3088d9306ad23138dcc1212b975f596">ShowRecord::ShowRecord</a>()
+<a name="l00024"></a>00024 {
+<a name="l00025"></a>00025 <span class="comment">//set auto delete to true. This is a function of the parent class, which deletes</span>
+<a name="l00026"></a>00026 <span class="comment">//all items when the list is deleted or cleared.</span>
+<a name="l00027"></a>00027 setAutoDelete( <span class="keyword">true</span> );
+<a name="l00028"></a>00028 }
+<a name="l00029"></a>00029
+<a name="l00030"></a><a class="code" href="classShowRecord.html#bda8f21edf9dbfa07741e37e6f06beeb">00030</a> <a class="code" href="classShowRecord.html#bda8f21edf9dbfa07741e37e6f06beeb">ShowRecord::~ShowRecord</a>()
+<a name="l00031"></a>00031 {
+<a name="l00032"></a>00032 }
+<a name="l00033"></a>00033
+<a name="l00034"></a><a class="code" href="classShowRecord.html#2b0757f2678223ca4e51257766dd64a3">00034</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#2b0757f2678223ca4e51257766dd64a3">ShowRecord::saveOptions</a>( QDomDocument&amp; doc, QDomElement&amp; parent )
+<a name="l00035"></a>00035 {
+<a name="l00036"></a>00036 <span class="comment">//Loop over all mail items</span>
+<a name="l00037"></a>00037 <span class="keywordflow">for</span>( <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* pElem = first(); pElem; pElem = next() )
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039 <span class="comment">//call the method of the mail to save it</span>
+<a name="l00040"></a>00040 pElem-&gt;saveOptions( doc, parent );
+<a name="l00041"></a>00041 }
+<a name="l00042"></a>00042 }
+<a name="l00043"></a>00043
+<a name="l00044"></a><a class="code" href="classShowRecord.html#87bd29245b100a9d291856fd0784662f">00044</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#87bd29245b100a9d291856fd0784662f">ShowRecord::readStoredMails</a>( QDomElement&amp; parent )
+<a name="l00045"></a>00045 {
+<a name="l00046"></a>00046 <span class="comment">//clear the list</span>
+<a name="l00047"></a>00047 clear();
+<a name="l00048"></a>00048
+<a name="l00049"></a>00049 <span class="comment">//get first DOM node (mail)</span>
+<a name="l00050"></a>00050 QDomNode n = parent.firstChild();
+<a name="l00051"></a>00051
+<a name="l00052"></a>00052 <span class="comment">//iterate over all mail items stored in the given account</span>
+<a name="l00053"></a>00053 <span class="keywordflow">while</span>( !n.isNull() )
+<a name="l00054"></a>00054 {
+<a name="l00055"></a>00055 <span class="comment">//get element of the current node</span>
+<a name="l00056"></a>00056 QDomElement e = n.toElement();
+<a name="l00057"></a>00057
+<a name="l00058"></a>00058 <span class="comment">//create mail object</span>
+<a name="l00059"></a>00059 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* pElem = <span class="keyword">new</span> <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>();
+<a name="l00060"></a>00060
+<a name="l00061"></a>00061 <span class="comment">//store the currently read mail data in the new object</span>
+<a name="l00062"></a>00062 pElem-&gt;<a class="code" href="classShowRecordElem.html#97952e1293b679abc1891a240bd9e4f1">readOptions</a>( e );
+<a name="l00063"></a>00063
+<a name="l00064"></a>00064 <span class="comment">//store the new mail object in this list</span>
+<a name="l00065"></a>00065 append( pElem );
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 <span class="comment">//get next DOM node</span>
+<a name="l00068"></a>00068 n = n.nextSibling();
+<a name="l00069"></a>00069 }
+<a name="l00070"></a>00070 }
+<a name="l00071"></a>00071
+<a name="l00072"></a><a class="code" href="classShowRecord.html#781cfc15d342cef7ffea393737636065">00072</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#781cfc15d342cef7ffea393737636065">ShowRecord::applyFilters</a> ()
+<a name="l00073"></a>00073 {
+<a name="l00074"></a>00074 <span class="comment">//Loop over all mails in this list</span>
+<a name="l00075"></a>00075 <span class="keywordflow">for</span>( <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* pElem = first(); pElem; pElem = next() )
+<a name="l00076"></a>00076 {
+<a name="l00077"></a>00077 <span class="comment">//apply the filters to the current mail</span>
+<a name="l00078"></a>00078 pElem-&gt;applyFilters ();
+<a name="l00079"></a>00079 }
+<a name="l00080"></a>00080 }
+<a name="l00081"></a>00081
+<a name="l00082"></a><a class="code" href="classShowRecord.html#e0aeb91afa1bd2ea566ff4dd4dd299d5">00082</a> <span class="keywordtype">bool</span> <a class="code" href="classShowRecord.html#e0aeb91afa1bd2ea566ff4dd4dd299d5">ShowRecord::hasSelectedMails</a>( )
+<a name="l00083"></a>00083 {
+<a name="l00084"></a>00084 <span class="keywordtype">bool</span> selected = <span class="keyword">false</span>; <span class="comment">//TRUE when a selected mail was found</span>
+<a name="l00085"></a>00085 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//mail which we want to check</span>
+<a name="l00086"></a>00086
+<a name="l00087"></a>00087 <span class="comment">//get first mail</span>
+<a name="l00088"></a>00088 mail = first();
+<a name="l00089"></a>00089
+<a name="l00090"></a>00090 <span class="comment">//iterate over all mails until we have found a selected mail</span>
+<a name="l00091"></a>00091 <span class="keywordflow">while</span>( mail != NULL &amp;&amp; !selected )
+<a name="l00092"></a>00092 {
+<a name="l00093"></a>00093 <span class="comment">//check the current mail</span>
+<a name="l00094"></a>00094 selected = mail-&gt;<a class="code" href="classShowRecordElem.html#6987a0066f420f62b5c9ec9d82ed7fb3">isSelected</a>();
+<a name="l00095"></a>00095
+<a name="l00096"></a>00096 <span class="comment">//get next mail</span>
+<a name="l00097"></a>00097 mail = next();
+<a name="l00098"></a>00098 }
+<a name="l00099"></a>00099
+<a name="l00100"></a>00100 <span class="keywordflow">return</span> selected;
+<a name="l00101"></a>00101 }
+<a name="l00102"></a>00102
+<a name="l00103"></a><a class="code" href="classShowRecord.html#417a26f1eea8a1311362633e43ac8bab">00103</a> <a class="code" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">MailNumberList_Type</a> <a class="code" href="classShowRecord.html#417a26f1eea8a1311362633e43ac8bab">ShowRecord::getSelectedMails</a>( )
+<a name="l00104"></a>00104 {
+<a name="l00105"></a>00105 <a class="code" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">MailNumberList_Type</a> list; <span class="comment">//contains the numbers of selected mails</span>
+<a name="l00106"></a>00106 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//mail from which we want to get the number (if selected)</span>
+<a name="l00107"></a>00107 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00108"></a>00108
+<a name="l00109"></a>00109 <span class="comment">//iterate over all mails</span>
+<a name="l00110"></a>00110 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL )
+<a name="l00111"></a>00111 {
+<a name="l00112"></a>00112 <span class="comment">//increment iterator to next mail</span>
+<a name="l00113"></a>00113 ++it;
+<a name="l00114"></a>00114
+<a name="l00115"></a>00115 <span class="comment">//if current mail is selected append its number to the mail number list</span>
+<a name="l00116"></a>00116 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#6987a0066f420f62b5c9ec9d82ed7fb3">isSelected</a>() )
+<a name="l00117"></a>00117 list.append( mail-&gt;<a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() );
+<a name="l00118"></a>00118 }
+<a name="l00119"></a>00119
+<a name="l00120"></a>00120 <span class="keywordflow">return</span> list;
+<a name="l00121"></a>00121 }
+<a name="l00122"></a>00122
+<a name="l00123"></a><a class="code" href="classShowRecord.html#d9075f4c8de5af4b0b5870d1ff71f4ea">00123</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#d9075f4c8de5af4b0b5870d1ff71f4ea">ShowRecord::removeMail</a>( <span class="keywordtype">int</span> number )
+<a name="l00124"></a>00124 {
+<a name="l00125"></a>00125 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00126"></a>00126 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00127"></a>00127
+<a name="l00128"></a>00128 <span class="comment">//looking for the mail with the number 'number'</span>
+<a name="l00129"></a>00129 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL )
+<a name="l00130"></a>00130 {
+<a name="l00131"></a>00131 <span class="comment">//increment iterator to next mail</span>
+<a name="l00132"></a>00132 ++it;
+<a name="l00133"></a>00133
+<a name="l00134"></a>00134 <span class="comment">//if the current mail has the given number, remove it</span>
+<a name="l00135"></a>00135 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() == number )
+<a name="l00136"></a>00136 remove( mail );
+<a name="l00137"></a>00137 }
+<a name="l00138"></a>00138 }
+<a name="l00139"></a>00139
+<a name="l00140"></a><a class="code" href="classShowRecord.html#c78c6981b92a2546d4ee75320aba380d">00140</a> QStringList <a class="code" href="classShowRecord.html#c78c6981b92a2546d4ee75320aba380d">ShowRecord::getSelectedSubjects</a>( )<span class="keyword"> const</span>
+<a name="l00141"></a>00141 <span class="keyword"></span>{
+<a name="l00142"></a>00142 QStringList subjects; <span class="comment">//contains the subjects</span>
+<a name="l00143"></a>00143 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00144"></a>00144 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00145"></a>00145
+<a name="l00146"></a>00146 <span class="comment">//iterate over all mails</span>
+<a name="l00147"></a>00147 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL )
+<a name="l00148"></a>00148 {
+<a name="l00149"></a>00149 <span class="comment">//increment iterator to next mail</span>
+<a name="l00150"></a>00150 ++it;
+<a name="l00151"></a>00151
+<a name="l00152"></a>00152 <span class="comment">//if the mail is selected, append subject to list</span>
+<a name="l00153"></a>00153 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#6987a0066f420f62b5c9ec9d82ed7fb3">isSelected</a>() )
+<a name="l00154"></a>00154 subjects.append( mail-&gt;<a class="code" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">subject</a>() );
+<a name="l00155"></a>00155 }
+<a name="l00156"></a>00156
+<a name="l00157"></a>00157 <span class="keywordflow">return</span> subjects;
+<a name="l00158"></a>00158 }
+<a name="l00159"></a>00159
+<a name="l00160"></a><a class="code" href="classShowRecord.html#51a8d0c91d32e6fdc20cb8f5f2350cac">00160</a> QString <a class="code" href="classShowRecord.html#51a8d0c91d32e6fdc20cb8f5f2350cac">ShowRecord::getSenderOf</a>( <span class="keywordtype">int</span> number )<span class="keyword"> const</span>
+<a name="l00161"></a>00161 <span class="keyword"></span>{
+<a name="l00162"></a>00162 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00163"></a>00163 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00164"></a>00164 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//True, when the wanted mail was found</span>
+<a name="l00165"></a>00165 QString sender; <span class="comment">//sender of the wanted mail</span>
+<a name="l00166"></a>00166
+<a name="l00167"></a>00167 <span class="comment">//looking for the mail with the number 'number'</span>
+<a name="l00168"></a>00168 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00169"></a>00169 {
+<a name="l00170"></a>00170 <span class="comment">//increment iterator to next mail</span>
+<a name="l00171"></a>00171 ++it;
+<a name="l00172"></a>00172
+<a name="l00173"></a>00173 <span class="comment">//if the current mail has the given number, remove it</span>
+<a name="l00174"></a>00174 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() == number )
+<a name="l00175"></a>00175 {
+<a name="l00176"></a>00176 sender = mail-&gt;<a class="code" href="classShowRecordElem.html#a4d48b3072adb4f87f56ed2b5e35dbba">from</a>();
+<a name="l00177"></a>00177 found = <span class="keyword">true</span>;
+<a name="l00178"></a>00178 }
+<a name="l00179"></a>00179 }
+<a name="l00180"></a>00180 <span class="keywordflow">return</span> sender;
+<a name="l00181"></a>00181 }
+<a name="l00182"></a>00182
+<a name="l00183"></a><a class="code" href="classShowRecord.html#93c44ad805a67e955b3cfa2518291613">00183</a> QString <a class="code" href="classShowRecord.html#93c44ad805a67e955b3cfa2518291613">ShowRecord::getDateOf</a>( <span class="keywordtype">int</span> number )<span class="keyword"> const</span>
+<a name="l00184"></a>00184 <span class="keyword"></span>{
+<a name="l00185"></a>00185 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00186"></a>00186 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00187"></a>00187 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//True, when the wanted mail was found</span>
+<a name="l00188"></a>00188 QString date; <span class="comment">//sent date of the wanted mail</span>
+<a name="l00189"></a>00189
+<a name="l00190"></a>00190 <span class="comment">//looking for the mail with the number 'number'</span>
+<a name="l00191"></a>00191 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00192"></a>00192 {
+<a name="l00193"></a>00193 <span class="comment">//increment iterator to next mail</span>
+<a name="l00194"></a>00194 ++it;
+<a name="l00195"></a>00195
+<a name="l00196"></a>00196 <span class="comment">//if the current mail has the given number, remove it</span>
+<a name="l00197"></a>00197 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() == number )
+<a name="l00198"></a>00198 {
+<a name="l00199"></a>00199 date = mail-&gt;<a class="code" href="classShowRecordElem.html#412ad2a7452c1f5390f2679f1d443292">date</a>();
+<a name="l00200"></a>00200 found = <span class="keyword">true</span>;
+<a name="l00201"></a>00201 }
+<a name="l00202"></a>00202 }
+<a name="l00203"></a>00203 <span class="keywordflow">return</span> date;
+<a name="l00204"></a>00204
+<a name="l00205"></a>00205 }
+<a name="l00206"></a>00206
+<a name="l00207"></a><a class="code" href="classShowRecord.html#b1a6f1fee65db84e5496619c14035539">00207</a> QString <a class="code" href="classShowRecord.html#b1a6f1fee65db84e5496619c14035539">ShowRecord::getSizeOf</a>( <span class="keywordtype">int</span> number )<span class="keyword"> const</span>
+<a name="l00208"></a>00208 <span class="keyword"></span>{
+<a name="l00209"></a>00209 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00210"></a>00210 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00211"></a>00211 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//True, when the wanted mail was found</span>
+<a name="l00212"></a>00212 QString size; <span class="comment">//size of the wanted mail</span>
+<a name="l00213"></a>00213
+<a name="l00214"></a>00214 <span class="comment">//looking for the mail with the number 'number'</span>
+<a name="l00215"></a>00215 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00216"></a>00216 {
+<a name="l00217"></a>00217 <span class="comment">//increment iterator to next mail</span>
+<a name="l00218"></a>00218 ++it;
+<a name="l00219"></a>00219
+<a name="l00220"></a>00220 <span class="comment">//if the current mail has the given number, remove it</span>
+<a name="l00221"></a>00221 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() == number )
+<a name="l00222"></a>00222 {
+<a name="l00223"></a>00223 size = mail-&gt;<a class="code" href="classShowRecordElem.html#233ccd75f668ec868ec726120d8c71d9">strSizePrefix</a>();
+<a name="l00224"></a>00224 found = <span class="keyword">true</span>;
+<a name="l00225"></a>00225 }
+<a name="l00226"></a>00226 }
+<a name="l00227"></a>00227 <span class="keywordflow">return</span> size;
+<a name="l00228"></a>00228
+<a name="l00229"></a>00229 }
+<a name="l00230"></a>00230
+<a name="l00231"></a><a class="code" href="classShowRecord.html#38d282950be6217d1488efc720a5f415">00231</a> QString <a class="code" href="classShowRecord.html#38d282950be6217d1488efc720a5f415">ShowRecord::getSubjectOf</a>( <span class="keywordtype">int</span> number )<span class="keyword"> const</span>
+<a name="l00232"></a>00232 <span class="keyword"></span>{
+<a name="l00233"></a>00233 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00234"></a>00234 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00235"></a>00235 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//True, when the wanted mail was found</span>
+<a name="l00236"></a>00236 QString subject; <span class="comment">//subject of the wanted mail</span>
+<a name="l00237"></a>00237
+<a name="l00238"></a>00238 <span class="comment">//looking for the mail with the number 'number'</span>
+<a name="l00239"></a>00239 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00240"></a>00240 {
+<a name="l00241"></a>00241 <span class="comment">//increment iterator to next mail</span>
+<a name="l00242"></a>00242 ++it;
+<a name="l00243"></a>00243
+<a name="l00244"></a>00244 <span class="comment">//if the current mail has the given number, get the subject</span>
+<a name="l00245"></a>00245 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() == number )
+<a name="l00246"></a>00246 {
+<a name="l00247"></a>00247 subject = mail-&gt;<a class="code" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">subject</a>();
+<a name="l00248"></a>00248 found = <span class="keyword">true</span>;
+<a name="l00249"></a>00249 }
+<a name="l00250"></a>00250 }
+<a name="l00251"></a>00251 <span class="keywordflow">return</span> subject;
+<a name="l00252"></a>00252
+<a name="l00253"></a>00253 }
+<a name="l00254"></a>00254
+<a name="l00255"></a><a class="code" href="classShowRecord.html#dde4ccc3e28c0d7e233ace3810a28814">00255</a> QString <a class="code" href="classShowRecord.html#dde4ccc3e28c0d7e233ace3810a28814">ShowRecord::decodeMailBody</a>( QByteArray body, <span class="keywordtype">int</span> number, <span class="keywordtype">bool</span> preferHTML )<span class="keyword"> const</span>
+<a name="l00256"></a>00256 <span class="keyword"></span>{
+<a name="l00257"></a>00257 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00258"></a>00258 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00259"></a>00259 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//True, when the wanted mail was found</span>
+<a name="l00260"></a>00260 QString mailbody; <span class="comment">//decoded mail</span>
+<a name="l00261"></a>00261
+<a name="l00262"></a>00262 <span class="comment">//looking for the mail with the number 'number'</span>
+<a name="l00263"></a>00263 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00264"></a>00264 {
+<a name="l00265"></a>00265 <span class="comment">//increment iterator to next mail</span>
+<a name="l00266"></a>00266 ++it;
+<a name="l00267"></a>00267
+<a name="l00268"></a>00268 <span class="comment">//if the current mail has the given number, decode the mail</span>
+<a name="l00269"></a>00269 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() == number )
+<a name="l00270"></a>00270 {
+<a name="l00271"></a>00271 mailbody = mail-&gt;<a class="code" href="classShowRecordElem.html#27af244fc090ac05fabde1becb7bf60d">decodeMailBody</a>( body, preferHTML );
+<a name="l00272"></a>00272 found = <span class="keyword">true</span>;
+<a name="l00273"></a>00273 }
+<a name="l00274"></a>00274 }
+<a name="l00275"></a>00275 <span class="keywordflow">return</span> mailbody;
+<a name="l00276"></a>00276
+<a name="l00277"></a>00277 }
+<a name="l00278"></a>00278
+<a name="l00279"></a><a class="code" href="classShowRecord.html#1fca27c3d569bbd1b1d673f2ac847791">00279</a> <span class="keywordtype">bool</span> <a class="code" href="classShowRecord.html#1fca27c3d569bbd1b1d673f2ac847791">ShowRecord::hasMail</a>( QString uid )
+<a name="l00280"></a>00280 {
+<a name="l00281"></a>00281 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00282"></a>00282 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00283"></a>00283 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//True, when the wanted mail was found</span>
+<a name="l00284"></a>00284
+<a name="l00285"></a>00285 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00286"></a>00286 {
+<a name="l00287"></a>00287 <span class="comment">//increment iterator to next mail</span>
+<a name="l00288"></a>00288 ++it;
+<a name="l00289"></a>00289
+<a name="l00290"></a>00290 <span class="comment">//compare the uid</span>
+<a name="l00291"></a>00291 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#835e045bf24090c4d6a6a9049c60e94c">uidl</a>() == uid )
+<a name="l00292"></a>00292 {
+<a name="l00293"></a>00293 found = <span class="keyword">true</span>;
+<a name="l00294"></a>00294 }
+<a name="l00295"></a>00295 }
+<a name="l00296"></a>00296 <span class="keywordflow">return</span> found;
+<a name="l00297"></a>00297 }
+<a name="l00298"></a>00298
+<a name="l00299"></a><a class="code" href="classShowRecord.html#97b16a09a5a51b68f7d2b3efb95c80ea">00299</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#97b16a09a5a51b68f7d2b3efb95c80ea">ShowRecord::appendNewMail</a>( <span class="keywordtype">int</span> number, QString uid, <span class="keywordtype">bool</span> isNew )
+<a name="l00300"></a>00300 {
+<a name="l00301"></a>00301 <span class="comment">//create new mail</span>
+<a name="l00302"></a>00302 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* newMail = <span class="keyword">new</span> <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>( number, uid, isNew );
+<a name="l00303"></a>00303
+<a name="l00304"></a>00304 <span class="comment">//append new mail</span>
+<a name="l00305"></a>00305 <span class="keywordflow">if</span>( newMail != NULL )
+<a name="l00306"></a>00306 append( newMail );
+<a name="l00307"></a>00307 }
+<a name="l00308"></a>00308
+<a name="l00309"></a><a class="code" href="classShowRecord.html#1705c73921184eda80bd63f979ef34bc">00309</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#1705c73921184eda80bd63f979ef34bc">ShowRecord::printMailList</a>( )
+<a name="l00310"></a>00310 {
+<a name="l00311"></a>00311 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00312"></a>00312 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00313"></a>00313
+<a name="l00314"></a>00314 <span class="keywordflow">while</span>( ( mail = it.current() ) )
+<a name="l00315"></a>00315 {
+<a name="l00316"></a>00316 <span class="comment">//increment iterator to next mail</span>
+<a name="l00317"></a>00317 ++it;
+<a name="l00318"></a>00318
+<a name="l00319"></a>00319 <span class="comment">//print mail</span>
+<a name="l00320"></a>00320 cout &lt;&lt; mail-&gt;<a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() &lt;&lt; <span class="stringliteral">" - UID: "</span> &lt;&lt; mail-&gt;<a class="code" href="classShowRecordElem.html#835e045bf24090c4d6a6a9049c60e94c">uidl</a>() &lt;&lt; <span class="stringliteral">"; Size: "</span> &lt;&lt; mail-&gt;<a class="code" href="classShowRecordElem.html#4b4077ca5d47226ccb44b6d8373a4fbd">size</a>() &lt;&lt; <span class="stringliteral">"; Subject: "</span> &lt;&lt; mail-&gt;<a class="code" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">subject</a>() &lt;&lt; <span class="stringliteral">"; New: "</span> &lt;&lt; mail-&gt;<a class="code" href="classShowRecordElem.html#48485d7a0dfef669b6597c865a515290">isNew</a>() &lt;&lt; endl;
+<a name="l00321"></a>00321 }
+<a name="l00322"></a>00322
+<a name="l00323"></a>00323 }
+<a name="l00324"></a>00324
+<a name="l00325"></a><a class="code" href="classShowRecord.html#f3ae42223f76c35b2273119916a82a24">00325</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#f3ae42223f76c35b2273119916a82a24">ShowRecord::setSize</a>( <span class="keywordtype">int</span> number, <span class="keywordtype">long</span> size )
+<a name="l00326"></a>00326 {
+<a name="l00327"></a>00327 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00328"></a>00328 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00329"></a>00329 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//True, when the wanted mail was found</span>
+<a name="l00330"></a>00330
+<a name="l00331"></a>00331 <span class="comment">//looking for the mail with the number 'number'</span>
+<a name="l00332"></a>00332 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00333"></a>00333 {
+<a name="l00334"></a>00334 <span class="comment">//increment iterator to next mail</span>
+<a name="l00335"></a>00335 ++it;
+<a name="l00336"></a>00336
+<a name="l00337"></a>00337 <span class="comment">//if the current mail has the given number, decode the mail</span>
+<a name="l00338"></a>00338 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() == number )
+<a name="l00339"></a>00339 {
+<a name="l00340"></a>00340 mail-&gt;<a class="code" href="classShowRecordElem.html#dd22d1f50be46bd9ecbbacec7606b3ed">setSize</a>( size );
+<a name="l00341"></a>00341 found = <span class="keyword">true</span>;
+<a name="l00342"></a>00342 }
+<a name="l00343"></a>00343 }
+<a name="l00344"></a>00344 }
+<a name="l00345"></a>00345
+<a name="l00346"></a><a class="code" href="classShowRecord.html#89fd7edc8c324e8b0ebe6b32f2d30b9d">00346</a> <a class="code" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">Types::MailNumberList_Type</a> <a class="code" href="classShowRecord.html#89fd7edc8c324e8b0ebe6b32f2d30b9d">ShowRecord::getNewMails</a>( )
+<a name="l00347"></a>00347 {
+<a name="l00348"></a>00348 <a class="code" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">MailNumberList_Type</a> list; <span class="comment">//contains the numbers of the new mails</span>
+<a name="l00349"></a>00349 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//mail from which we want to get the number (if new)</span>
+<a name="l00350"></a>00350 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00351"></a>00351
+<a name="l00352"></a>00352 <span class="comment">//iterate over all mails</span>
+<a name="l00353"></a>00353 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL )
+<a name="l00354"></a>00354 {
+<a name="l00355"></a>00355 <span class="comment">//increment iterator to next mail</span>
+<a name="l00356"></a>00356 ++it;
+<a name="l00357"></a>00357
+<a name="l00358"></a>00358 <span class="comment">//if current mail is new append its number to the mail number list</span>
+<a name="l00359"></a>00359 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#48485d7a0dfef669b6597c865a515290">isNew</a>() )
+<a name="l00360"></a>00360 list.append( mail-&gt;<a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() );
+<a name="l00361"></a>00361 }
+<a name="l00362"></a>00362
+<a name="l00363"></a>00363 <span class="keywordflow">return</span> list;
+<a name="l00364"></a>00364 }
+<a name="l00365"></a>00365
+<a name="l00366"></a><a class="code" href="classShowRecord.html#29fe412b8ef3eb2b71bbd93268baaf9a">00366</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#29fe412b8ef3eb2b71bbd93268baaf9a">ShowRecord::setHeader</a>( <span class="keywordtype">int</span> number, QString header )
+<a name="l00367"></a>00367 {
+<a name="l00368"></a>00368 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00369"></a>00369 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00370"></a>00370 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//True, when the wanted mail was found</span>
+<a name="l00371"></a>00371
+<a name="l00372"></a>00372 <span class="comment">//looking for the mail with the number 'number'</span>
+<a name="l00373"></a>00373 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00374"></a>00374 {
+<a name="l00375"></a>00375 <span class="comment">//increment iterator to next mail</span>
+<a name="l00376"></a>00376 ++it;
+<a name="l00377"></a>00377
+<a name="l00378"></a>00378 <span class="comment">//if the current mail has the given number, set the header</span>
+<a name="l00379"></a>00379 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() == number )
+<a name="l00380"></a>00380 {
+<a name="l00381"></a>00381 mail-&gt;<a class="code" href="classShowRecordElem.html#28e7072cd68f18e1e07176b9c1bd5f72">setHeader</a>( header );
+<a name="l00382"></a>00382 found = <span class="keyword">true</span>;
+<a name="l00383"></a>00383 }
+<a name="l00384"></a>00384 }
+<a name="l00385"></a>00385 }
+<a name="l00386"></a>00386
+<a name="l00387"></a><a class="code" href="classShowRecord.html#ae03febb272198c00851b4e46be68b83">00387</a> QStringList <a class="code" href="classShowRecord.html#ae03febb272198c00851b4e46be68b83">ShowRecord::getUIDsOfOldMails</a>( )
+<a name="l00388"></a>00388 {
+<a name="l00389"></a>00389 QStringList list; <span class="comment">//contains the UIDs of the old mails</span>
+<a name="l00390"></a>00390 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//mail from which we want to get the uid (if old)</span>
+<a name="l00391"></a>00391 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00392"></a>00392
+<a name="l00393"></a>00393 <span class="comment">//iterate over all mails</span>
+<a name="l00394"></a>00394 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL )
+<a name="l00395"></a>00395 {
+<a name="l00396"></a>00396 <span class="comment">//increment iterator to next mail</span>
+<a name="l00397"></a>00397 ++it;
+<a name="l00398"></a>00398
+<a name="l00399"></a>00399 <span class="comment">//if current mail is new append its number to the mail number list</span>
+<a name="l00400"></a>00400 <span class="keywordflow">if</span>( !mail-&gt;<a class="code" href="classShowRecordElem.html#48485d7a0dfef669b6597c865a515290">isNew</a>() )
+<a name="l00401"></a>00401 list.append( mail-&gt;<a class="code" href="classShowRecordElem.html#835e045bf24090c4d6a6a9049c60e94c">uidl</a>() );
+<a name="l00402"></a>00402 }
+<a name="l00403"></a>00403
+<a name="l00404"></a>00404 <span class="keywordflow">return</span> list;
+<a name="l00405"></a>00405 }
+<a name="l00406"></a>00406
+<a name="l00407"></a><a class="code" href="classShowRecord.html#15ef001ed312f642b8cd8cf2619ecfb4">00407</a> QString <a class="code" href="classShowRecord.html#15ef001ed312f642b8cd8cf2619ecfb4">ShowRecord::getHeaderOf</a>( QString uid )
+<a name="l00408"></a>00408 {
+<a name="l00409"></a>00409 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00410"></a>00410 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00411"></a>00411 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//True, when the wanted mail was found</span>
+<a name="l00412"></a>00412 QString header; <span class="comment">//header of the wanted mail</span>
+<a name="l00413"></a>00413
+<a name="l00414"></a>00414 <span class="comment">//looking for the mail with the UID 'uid'</span>
+<a name="l00415"></a>00415 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00416"></a>00416 {
+<a name="l00417"></a>00417 <span class="comment">//increment iterator to next mail</span>
+<a name="l00418"></a>00418 ++it;
+<a name="l00419"></a>00419
+<a name="l00420"></a>00420 <span class="comment">//if the current mail has the given uid, get the header</span>
+<a name="l00421"></a>00421 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#835e045bf24090c4d6a6a9049c60e94c">uidl</a>() == uid )
+<a name="l00422"></a>00422 {
+<a name="l00423"></a>00423 header = mail-&gt;<a class="code" href="classShowRecordElem.html#dd5d842c1abdd13fa03ac4a3f2f11150">header</a>();
+<a name="l00424"></a>00424 found = <span class="keyword">true</span>;
+<a name="l00425"></a>00425 }
+<a name="l00426"></a>00426 }
+<a name="l00427"></a>00427 <span class="keywordflow">return</span> header;
+<a name="l00428"></a>00428 }
+<a name="l00429"></a>00429
+<a name="l00430"></a><a class="code" href="classShowRecord.html#230b5d25e61a0aa76a9adf852bf73d98">00430</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#29fe412b8ef3eb2b71bbd93268baaf9a">ShowRecord::setHeader</a>( QString uid, QString header )
+<a name="l00431"></a>00431 {
+<a name="l00432"></a>00432 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00433"></a>00433 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00434"></a>00434 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//True, when the wanted mail was found</span>
+<a name="l00435"></a>00435
+<a name="l00436"></a>00436 <span class="comment">//looking for the mail with the UID 'uid'</span>
+<a name="l00437"></a>00437 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00438"></a>00438 {
+<a name="l00439"></a>00439 <span class="comment">//increment iterator to next mail</span>
+<a name="l00440"></a>00440 ++it;
+<a name="l00441"></a>00441
+<a name="l00442"></a>00442 <span class="comment">//if the current mail has the given UID, set the header</span>
+<a name="l00443"></a>00443 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#835e045bf24090c4d6a6a9049c60e94c">uidl</a>() == uid )
+<a name="l00444"></a>00444 {
+<a name="l00445"></a>00445 mail-&gt;<a class="code" href="classShowRecordElem.html#28e7072cd68f18e1e07176b9c1bd5f72">setHeader</a>( header );
+<a name="l00446"></a>00446 found = <span class="keyword">true</span>;
+<a name="l00447"></a>00447 }
+<a name="l00448"></a>00448 }
+<a name="l00449"></a>00449 }
+<a name="l00450"></a>00450
+<a name="l00451"></a><a class="code" href="classShowRecord.html#fb2d493f52927c18ccc35352d2d2b115">00451</a> <span class="keywordtype">int</span> <a class="code" href="classShowRecord.html#fb2d493f52927c18ccc35352d2d2b115">ShowRecord::getNumberNewMails</a>( )
+<a name="l00452"></a>00452 {
+<a name="l00453"></a>00453 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00454"></a>00454 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00455"></a>00455 <span class="keywordtype">int</span> number = 0; <span class="comment">//number of new mails</span>
+<a name="l00456"></a>00456
+<a name="l00457"></a>00457 <span class="keywordflow">while</span>( ( mail = it.current() ) )
+<a name="l00458"></a>00458 {
+<a name="l00459"></a>00459 <span class="comment">//increment iterator to next mail</span>
+<a name="l00460"></a>00460 ++it;
+<a name="l00461"></a>00461
+<a name="l00462"></a>00462 <span class="comment">//increment number, if this mail is new</span>
+<a name="l00463"></a>00463 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#48485d7a0dfef669b6597c865a515290">isNew</a>() )
+<a name="l00464"></a>00464 number++;
+<a name="l00465"></a>00465 }
+<a name="l00466"></a>00466
+<a name="l00467"></a>00467 <span class="keywordflow">return</span> number;
+<a name="l00468"></a>00468 }
+<a name="l00469"></a>00469
+<a name="l00470"></a><a class="code" href="classShowRecord.html#5fc0413079f9cfc5b32c36812f643c0a">00470</a> <span class="keywordtype">int</span> <a class="code" href="classShowRecord.html#5fc0413079f9cfc5b32c36812f643c0a">ShowRecord::getNumberMails</a>( )
+<a name="l00471"></a>00471 {
+<a name="l00472"></a>00472 <span class="keywordflow">return</span> count();
+<a name="l00473"></a>00473 }
+<a name="l00474"></a>00474
+<a name="l00475"></a><a class="code" href="classShowRecord.html#c6c9d9e7e23f57006d2d573442a144b5">00475</a> <span class="keywordtype">long</span> <a class="code" href="classShowRecord.html#c6c9d9e7e23f57006d2d573442a144b5">ShowRecord::getTotalSize</a>( )
+<a name="l00476"></a>00476 {
+<a name="l00477"></a>00477 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00478"></a>00478 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00479"></a>00479 <span class="keywordtype">long</span> size = 0; <span class="comment">//total size of all mails</span>
+<a name="l00480"></a>00480
+<a name="l00481"></a>00481 <span class="keywordflow">while</span>( ( mail = it.current() ) )
+<a name="l00482"></a>00482 {
+<a name="l00483"></a>00483 <span class="comment">//increment iterator to next mail</span>
+<a name="l00484"></a>00484 ++it;
+<a name="l00485"></a>00485
+<a name="l00486"></a>00486 size += mail-&gt;<a class="code" href="classShowRecordElem.html#4b4077ca5d47226ccb44b6d8373a4fbd">size</a>();
+<a name="l00487"></a>00487 }
+<a name="l00488"></a>00488
+<a name="l00489"></a>00489 <span class="keywordflow">return</span> size;
+<a name="l00490"></a>00490 }
+<a name="l00491"></a>00491
+<a name="l00492"></a><a class="code" href="classShowRecord.html#7124760f6dffce82cf267276f4c0d015">00492</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#7124760f6dffce82cf267276f4c0d015">ShowRecord::fillMailListView</a>( <a class="code" href="classKshowmailView.html">KshowmailView</a> * view, QString &amp; account )
+<a name="l00493"></a>00493 {
+<a name="l00494"></a>00494 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00495"></a>00495 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00496"></a>00496
+<a name="l00497"></a>00497 <span class="comment">//iterate over all mails and order the mail to create a list view item</span>
+<a name="l00498"></a>00498 <span class="keywordflow">while</span>( ( mail = it.current() ) )
+<a name="l00499"></a>00499 {
+<a name="l00500"></a>00500 <span class="comment">//increment iterator to next mail</span>
+<a name="l00501"></a>00501 ++it;
+<a name="l00502"></a>00502
+<a name="l00503"></a>00503 <span class="comment">//insert list view item</span>
+<a name="l00504"></a>00504 QString number = QString( <span class="stringliteral">"%1"</span> ).arg( mail-&gt;<a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() );
+<a name="l00505"></a>00505 QString from = mail-&gt;<a class="code" href="classShowRecordElem.html#a4d48b3072adb4f87f56ed2b5e35dbba">from</a>();
+<a name="l00506"></a>00506 QString to = mail-&gt;<a class="code" href="classShowRecordElem.html#759a16f3424defc71b4cfd762b156fd1">to</a>();
+<a name="l00507"></a>00507 QString subject = mail-&gt;<a class="code" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">subject</a>();
+<a name="l00508"></a>00508 QString date = mail-&gt;<a class="code" href="classShowRecordElem.html#412ad2a7452c1f5390f2679f1d443292">date</a>();
+<a name="l00509"></a>00509 QString size = QString( <span class="stringliteral">"%1"</span> ).arg( mail-&gt;<a class="code" href="classShowRecordElem.html#4b4077ca5d47226ccb44b6d8373a4fbd">size</a>() );
+<a name="l00510"></a>00510 QString content = mail-&gt;<a class="code" href="classShowRecordElem.html#8d655afdb7350fd4a27b551da7a8a797">content</a>();
+<a name="l00511"></a>00511 QString state = mail-&gt;<a class="code" href="classShowRecordElem.html#f00398057086a7fbee1205c5d0f605a2">state</a>();
+<a name="l00512"></a>00512 QString time = mail-&gt;<a class="code" href="classShowRecordElem.html#0e554cd8f1e67b3e448054e8c6fdc91c">strUnixTime</a>();
+<a name="l00513"></a>00513 mail-&gt;<a class="code" href="classShowRecordElem.html#e7f2ca5eb9a9bc95266a4f83f78cd76e">setViewItem</a>( view-&gt;<a class="code" href="classKshowmailView.html#8330c6f139457ae5dd1510efb3f665e4">insertMail</a>( number, account, from, to, subject, date, size, content, state, time ) );
+<a name="l00514"></a>00514 }
+<a name="l00515"></a>00515
+<a name="l00516"></a>00516 }
+<a name="l00517"></a>00517
+<a name="l00518"></a><a class="code" href="classShowRecord.html#89005d433c577ed0e412c6314400cc31">00518</a> <span class="keywordtype">int</span> <a class="code" href="classShowRecord.html#89005d433c577ed0e412c6314400cc31">ShowRecord::showSelectedHeaders</a>( QString&amp; account )
+<a name="l00519"></a>00519 {
+<a name="l00520"></a>00520 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00521"></a>00521 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00522"></a>00522 <span class="keywordtype">int</span> showNextHeader = <a class="code" href="classShowRecordElem.html#2b5bdb3ed3f940614135b9c9f1f13eb6">ShowRecordElem::continueShowHeaders</a>; <span class="comment">//return value of ShowRecordElem::showHeader()</span>
+<a name="l00523"></a>00523
+<a name="l00524"></a>00524 <span class="keywordflow">while</span>( ( mail = it.current() ) &amp;&amp; showNextHeader == <a class="code" href="classShowRecordElem.html#2b5bdb3ed3f940614135b9c9f1f13eb6">ShowRecordElem::continueShowHeaders</a> )
+<a name="l00525"></a>00525 {
+<a name="l00526"></a>00526 <span class="comment">//increment iterator to next mail</span>
+<a name="l00527"></a>00527 ++it;
+<a name="l00528"></a>00528
+<a name="l00529"></a>00529 <span class="comment">//order the mail to show its header</span>
+<a name="l00530"></a>00530 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#6987a0066f420f62b5c9ec9d82ed7fb3">isSelected</a>() )
+<a name="l00531"></a>00531 showNextHeader = mail-&gt;<a class="code" href="classShowRecordElem.html#62792e6386e65ac0050f2e02963254b0">showHeader</a>( account );
+<a name="l00532"></a>00532 }
+<a name="l00533"></a>00533
+<a name="l00534"></a>00534 <span class="keywordflow">return</span> showNextHeader == <a class="code" href="classShowRecordElem.html#2b5bdb3ed3f940614135b9c9f1f13eb6">ShowRecordElem::continueShowHeaders</a> ? <a class="code" href="classShowRecord.html#24f3968b9bd526deb987f3e21f264404">ShowRecord::continueShowHeaders</a> : <a class="code" href="classShowRecord.html#8f9c8ce1f77c014cd4efcbf65c9b11f5">ShowRecord::cancelShowHeaders</a>;
+<a name="l00535"></a>00535 }
+<a name="l00536"></a>00536
+<a name="l00537"></a><a class="code" href="classShowRecord.html#89b22dcaa5ff6f47121150b7d25939d0">00537</a> <span class="keywordtype">bool</span> <a class="code" href="classShowRecord.html#89b22dcaa5ff6f47121150b7d25939d0">ShowRecord::isNew</a>( QString uid )<span class="keyword"> const</span>
+<a name="l00538"></a>00538 <span class="keyword"></span>{
+<a name="l00539"></a>00539 QPtrListIterator&lt;ShowRecordElem&gt; it( *<span class="keyword">this</span> ); <span class="comment">//iterator for the mail list</span>
+<a name="l00540"></a>00540 <a class="code" href="classShowRecordElem.html">ShowRecordElem</a>* mail; <span class="comment">//current mail</span>
+<a name="l00541"></a>00541 <span class="keywordtype">bool</span> found = <span class="keyword">false</span>; <span class="comment">//True, when the wanted mail was found</span>
+<a name="l00542"></a>00542 <span class="keywordtype">bool</span> newMail = <span class="keyword">false</span>; <span class="comment">//at time we have not found it, therefore the return value is false</span>
+<a name="l00543"></a>00543
+<a name="l00544"></a>00544 <span class="keywordflow">while</span>( ( mail = it.current() ) != NULL &amp;&amp; !found )
+<a name="l00545"></a>00545 {
+<a name="l00546"></a>00546 <span class="comment">//increment iterator to next mail</span>
+<a name="l00547"></a>00547 ++it;
+<a name="l00548"></a>00548
+<a name="l00549"></a>00549 <span class="comment">//compare the uid</span>
+<a name="l00550"></a>00550 <span class="keywordflow">if</span>( mail-&gt;<a class="code" href="classShowRecordElem.html#835e045bf24090c4d6a6a9049c60e94c">uidl</a>() == uid )
+<a name="l00551"></a>00551 {
+<a name="l00552"></a>00552 found = <span class="keyword">true</span>;
+<a name="l00553"></a>00553 newMail = mail-&gt;<a class="code" href="classShowRecordElem.html#48485d7a0dfef669b6597c865a515290">isNew</a>();
+<a name="l00554"></a>00554 }
+<a name="l00555"></a>00555 }
+<a name="l00556"></a>00556
+<a name="l00557"></a>00557 <span class="keywordflow">return</span> newMail;
+<a name="l00558"></a>00558 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/showrecord_8h-source.html b/doc/html/showrecord_8h-source.html
new file mode 100644
index 0000000..9a29a3f
--- /dev/null
+++ b/doc/html/showrecord_8h-source.html
@@ -0,0 +1,150 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/showrecord.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>showrecord.h</h1><a href="showrecord_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> showrecord.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Mon Dec 3 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef SHOWRECORD_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define SHOWRECORD_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="comment">//C++ header</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;iostream&gt;</span>
+<a name="l00023"></a>00023
+<a name="l00024"></a>00024 <span class="comment">//Qt headers</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;qdom.h&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;qptrlist.h&gt;</span>
+<a name="l00027"></a>00027
+<a name="l00028"></a>00028 <span class="comment">//KDE headers</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;kstandarddirs.h&gt;</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00031"></a>00031
+<a name="l00032"></a>00032 <span class="comment">//KShowmail headers</span>
+<a name="l00033"></a>00033 <span class="preprocessor">#include "<a class="code" href="kshowmailview_8h.html">kshowmailview.h</a>"</span>
+<a name="l00034"></a>00034 <span class="preprocessor">#include "<a class="code" href="showrecordelem_8h.html">showrecordelem.h</a>"</span>
+<a name="l00035"></a>00035 <span class="preprocessor">#include "<a class="code" href="types_8h.html">types.h</a>"</span>
+<a name="l00036"></a>00036 <span class="preprocessor">#include "<a class="code" href="headerfilter_8h.html">headerfilter.h</a>"</span>
+<a name="l00037"></a>00037 <span class="preprocessor">#include "<a class="code" href="filterlog_8h.html">filterlog.h</a>"</span>
+<a name="l00038"></a>00038
+<a name="l00039"></a>00039 <span class="keyword">using namespace </span>Types;
+<a name="l00040"></a>00040 <span class="keyword">using namespace </span>std;
+<a name="l00041"></a>00041
+<a name="l00042"></a>00042 <span class="comment">//forward class declarations</span>
+<a name="l00043"></a>00043 <span class="keyword">class </span><a class="code" href="classShowRecordElem.html">ShowRecordElem</a>;
+<a name="l00044"></a>00044 <span class="keyword">class </span><a class="code" href="classKshowmailView.html">KshowmailView</a>;
+<a name="l00045"></a>00045
+<a name="l00056"></a><a class="code" href="classShowRecord.html">00056</a> <span class="keyword">class </span><a class="code" href="classShowRecord.html">ShowRecord</a>: <span class="keyword">public</span> QPtrList&lt;ShowRecordElem&gt;
+<a name="l00057"></a>00057 {
+<a name="l00058"></a>00058
+<a name="l00059"></a>00059 <span class="keyword">public</span>:
+<a name="l00060"></a>00060
+<a name="l00065"></a><a class="code" href="classShowRecord.html#24f3968b9bd526deb987f3e21f264404">00065</a> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classShowRecord.html#24f3968b9bd526deb987f3e21f264404">continueShowHeaders</a>;
+<a name="l00066"></a>00066
+<a name="l00071"></a><a class="code" href="classShowRecord.html#8f9c8ce1f77c014cd4efcbf65c9b11f5">00071</a> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classShowRecord.html#8f9c8ce1f77c014cd4efcbf65c9b11f5">cancelShowHeaders</a>;
+<a name="l00072"></a>00072
+<a name="l00076"></a>00076 <a class="code" href="classShowRecord.html#c3088d9306ad23138dcc1212b975f596">ShowRecord</a>();
+<a name="l00077"></a>00077
+<a name="l00082"></a>00082 <a class="code" href="classShowRecord.html#bda8f21edf9dbfa07741e37e6f06beeb">~ShowRecord</a>();
+<a name="l00083"></a>00083
+<a name="l00090"></a>00090 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#2b0757f2678223ca4e51257766dd64a3">saveOptions</a>( QDomDocument&amp; doc, QDomElement&amp; parent );
+<a name="l00091"></a>00091
+<a name="l00098"></a>00098 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#87bd29245b100a9d291856fd0784662f">readStoredMails</a>( QDomElement&amp; parent );
+<a name="l00099"></a>00099
+<a name="l00108"></a>00108 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#a2c3ad37ee0eb7eb41d7820e05352502">applyHeaderFilter</a>( <a class="code" href="classHeaderFilter.html">HeaderFilter</a>* filter, QString account, <a class="code" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">MailNumberList_Type</a>&amp; deleteList, <a class="code" href="namespaceTypes.html#28b7da8de2bbe1b7a098d41242e78ab7">MailToDownloadMap_Type</a>&amp; downloadList, <a class="code" href="classFilterLog.html">FilterLog</a>* log = NULL );
+<a name="l00109"></a>00109
+<a name="l00110"></a>00110
+<a name="l00117"></a>00117 <span class="keywordtype">bool</span> <a class="code" href="classShowRecord.html#e0aeb91afa1bd2ea566ff4dd4dd299d5">hasSelectedMails</a>();
+<a name="l00118"></a>00118
+<a name="l00123"></a>00123 <a class="code" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">Types::MailNumberList_Type</a> <a class="code" href="classShowRecord.html#417a26f1eea8a1311362633e43ac8bab">getSelectedMails</a>();
+<a name="l00124"></a>00124
+<a name="l00129"></a>00129 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#d9075f4c8de5af4b0b5870d1ff71f4ea">removeMail</a>( <span class="keywordtype">int</span> number );
+<a name="l00130"></a>00130
+<a name="l00135"></a>00135 QStringList <a class="code" href="classShowRecord.html#c78c6981b92a2546d4ee75320aba380d">getSelectedSubjects</a>() <span class="keyword">const</span>;
+<a name="l00136"></a>00136
+<a name="l00142"></a>00142 QString <a class="code" href="classShowRecord.html#51a8d0c91d32e6fdc20cb8f5f2350cac">getSenderOf</a>( <span class="keywordtype">int</span> number ) <span class="keyword">const</span>;
+<a name="l00143"></a>00143
+<a name="l00149"></a>00149 QString <a class="code" href="classShowRecord.html#93c44ad805a67e955b3cfa2518291613">getDateOf</a>( <span class="keywordtype">int</span> number ) <span class="keyword">const</span>;
+<a name="l00150"></a>00150
+<a name="l00156"></a>00156 QString <a class="code" href="classShowRecord.html#b1a6f1fee65db84e5496619c14035539">getSizeOf</a>( <span class="keywordtype">int</span> number ) <span class="keyword">const</span>;
+<a name="l00157"></a>00157
+<a name="l00163"></a>00163 QString <a class="code" href="classShowRecord.html#38d282950be6217d1488efc720a5f415">getSubjectOf</a>( <span class="keywordtype">int</span> number ) <span class="keyword">const</span>;
+<a name="l00164"></a>00164
+<a name="l00177"></a>00177 QString <a class="code" href="classShowRecord.html#dde4ccc3e28c0d7e233ace3810a28814">decodeMailBody</a>( QByteArray body, <span class="keywordtype">int</span> number, <span class="keywordtype">bool</span> preferHTML ) <span class="keyword">const</span>;
+<a name="l00178"></a>00178
+<a name="l00185"></a>00185 <span class="keywordtype">bool</span> <a class="code" href="classShowRecord.html#1fca27c3d569bbd1b1d673f2ac847791">hasMail</a>( QString uid );
+<a name="l00186"></a>00186
+<a name="l00193"></a>00193 <span class="keywordtype">bool</span> <a class="code" href="classShowRecord.html#89b22dcaa5ff6f47121150b7d25939d0">isNew</a>( QString uid ) <span class="keyword">const</span>;
+<a name="l00194"></a>00194
+<a name="l00201"></a>00201 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#97b16a09a5a51b68f7d2b3efb95c80ea">appendNewMail</a>( <span class="keywordtype">int</span> number, QString uid, <span class="keywordtype">bool</span> <a class="code" href="classShowRecord.html#89b22dcaa5ff6f47121150b7d25939d0">isNew</a> );
+<a name="l00202"></a>00202
+<a name="l00207"></a>00207 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#1705c73921184eda80bd63f979ef34bc">printMailList</a>();
+<a name="l00208"></a>00208
+<a name="l00214"></a>00214 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#f3ae42223f76c35b2273119916a82a24">setSize</a>( <span class="keywordtype">int</span> number, <span class="keywordtype">long</span> size );
+<a name="l00215"></a>00215
+<a name="l00220"></a>00220 <a class="code" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">Types::MailNumberList_Type</a> <a class="code" href="classShowRecord.html#89fd7edc8c324e8b0ebe6b32f2d30b9d">getNewMails</a>();
+<a name="l00221"></a>00221
+<a name="l00227"></a>00227 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#29fe412b8ef3eb2b71bbd93268baaf9a">setHeader</a>( <span class="keywordtype">int</span> number, QString header );
+<a name="l00228"></a>00228
+<a name="l00233"></a>00233 QStringList <a class="code" href="classShowRecord.html#ae03febb272198c00851b4e46be68b83">getUIDsOfOldMails</a>();
+<a name="l00234"></a>00234
+<a name="l00240"></a>00240 QString <a class="code" href="classShowRecord.html#15ef001ed312f642b8cd8cf2619ecfb4">getHeaderOf</a>( QString uid );
+<a name="l00241"></a>00241
+<a name="l00247"></a>00247 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#29fe412b8ef3eb2b71bbd93268baaf9a">setHeader</a>( QString uid, QString header );
+<a name="l00248"></a>00248
+<a name="l00253"></a>00253 <span class="keywordtype">int</span> <a class="code" href="classShowRecord.html#fb2d493f52927c18ccc35352d2d2b115">getNumberNewMails</a>();
+<a name="l00254"></a>00254
+<a name="l00259"></a>00259 <span class="keywordtype">int</span> <a class="code" href="classShowRecord.html#5fc0413079f9cfc5b32c36812f643c0a">getNumberMails</a>();
+<a name="l00260"></a>00260
+<a name="l00265"></a>00265 <span class="keywordtype">long</span> <a class="code" href="classShowRecord.html#c6c9d9e7e23f57006d2d573442a144b5">getTotalSize</a>();
+<a name="l00266"></a>00266
+<a name="l00273"></a>00273 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#7124760f6dffce82cf267276f4c0d015">fillMailListView</a>( <a class="code" href="classKshowmailView.html">KshowmailView</a>* view, QString&amp; account );
+<a name="l00274"></a>00274
+<a name="l00281"></a>00281 <span class="keywordtype">int</span> <a class="code" href="classShowRecord.html#89005d433c577ed0e412c6314400cc31">showSelectedHeaders</a>( QString&amp; account );
+<a name="l00282"></a>00282
+<a name="l00290"></a>00290 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#7a658ec498ade20524e565698a47d04f">writeToMoveLog</a>( <a class="code" href="classFilterLog.html">FilterLog</a>* log, <span class="keywordtype">int</span> number, QString account, QString mailbox );
+<a name="l00291"></a>00291
+<a name="l00298"></a>00298 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#5edc420144eaa626babd3ff0fc78e1f4">writeToDeleteLog</a>( <a class="code" href="classFilterLog.html">FilterLog</a>* log, <span class="keywordtype">int</span> number, QString account );
+<a name="l00299"></a>00299
+<a name="l00304"></a>00304 <span class="keywordtype">void</span> <a class="code" href="classShowRecord.html#b19cb729ff18ab77d85a1e7c4fb61cb9">setMarkAtNextViewRefresh</a>( <span class="keywordtype">int</span> number );
+<a name="l00305"></a>00305
+<a name="l00306"></a>00306
+<a name="l00307"></a>00307 };
+<a name="l00308"></a>00308
+<a name="l00309"></a>00309 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/showrecordelem_8cpp-source.html b/doc/html/showrecordelem_8cpp-source.html
new file mode 100644
index 0000000..da795be
--- /dev/null
+++ b/doc/html/showrecordelem_8cpp-source.html
@@ -0,0 +1,622 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/showrecordelem.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>showrecordelem.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> showrecord.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Thu Dec 28 2000</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2000-2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018
+<a name="l00019"></a>00019
+<a name="l00020"></a>00020
+<a name="l00021"></a>00021 <span class="preprocessor">#include "showrecordelem.h"</span>
+<a name="l00022"></a>00022
+<a name="l00023"></a>00023 <span class="keywordtype">int</span> <span class="keyword">const</span> <a class="code" href="classShowRecordElem.html#2b5bdb3ed3f940614135b9c9f1f13eb6">ShowRecordElem::continueShowHeaders</a>( 0 );
+<a name="l00024"></a>00024 <span class="keywordtype">int</span> <span class="keyword">const</span> <a class="code" href="classShowRecordElem.html#b6aceead6b70f3e3f5e6af530c5ac1af">ShowRecordElem::cancelShowHeaders</a>( 1 );
+<a name="l00025"></a>00025
+<a name="l00026"></a><a class="code" href="classShowRecordElem.html#aa3cd64818bfb990d5e37720cd29546c">00026</a> <a class="code" href="classShowRecordElem.html#aa3cd64818bfb990d5e37720cd29546c">ShowRecordElem::ShowRecordElem</a> ()
+<a name="l00027"></a>00027 {
+<a name="l00028"></a>00028 <span class="comment">//set default values</span>
+<a name="l00029"></a>00029 <a class="code" href="classShowRecordElem.html#260019ad5471ede61b2a1958b8c31375">m_from</a> = <span class="stringliteral">"???"</span>;
+<a name="l00030"></a>00030 <a class="code" href="classShowRecordElem.html#1c83a6d029a73795076161efd3842893">m_subject</a> = <span class="stringliteral">"???"</span>;
+<a name="l00031"></a>00031 <a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a> = 0;
+<a name="l00032"></a>00032 <a class="code" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">m_pItem</a> = NULL;
+<a name="l00033"></a>00033 <a class="code" href="classShowRecordElem.html#f9f2112f8e2b1c3dfef0286581a892b4">m_new</a> = <span class="keyword">false</span>;
+<a name="l00034"></a>00034 <a class="code" href="classShowRecordElem.html#cf1207160bae1cd017c282b808e44e02">m_pFilter</a> = NULL;
+<a name="l00035"></a>00035 }
+<a name="l00036"></a>00036
+<a name="l00037"></a><a class="code" href="classShowRecordElem.html#7a29155aba2fc36f16986b1abed9ceda">00037</a> <a class="code" href="classShowRecordElem.html#aa3cd64818bfb990d5e37720cd29546c">ShowRecordElem::ShowRecordElem</a>( <span class="keywordtype">int</span> number, QString&amp; uid, <span class="keywordtype">bool</span> isNew )
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039 <span class="comment">//set default values</span>
+<a name="l00040"></a>00040 <a class="code" href="classShowRecordElem.html#260019ad5471ede61b2a1958b8c31375">m_from</a> = <span class="stringliteral">"???"</span>;
+<a name="l00041"></a>00041 <a class="code" href="classShowRecordElem.html#1c83a6d029a73795076161efd3842893">m_subject</a> = <span class="stringliteral">"???"</span>;
+<a name="l00042"></a>00042 <a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a> = 0;
+<a name="l00043"></a>00043 <a class="code" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">m_pItem</a> = NULL;
+<a name="l00044"></a>00044 <a class="code" href="classShowRecordElem.html#cf1207160bae1cd017c282b808e44e02">m_pFilter</a> = NULL;
+<a name="l00045"></a>00045
+<a name="l00046"></a>00046 <span class="comment">//set given values</span>
+<a name="l00047"></a>00047 <a class="code" href="classShowRecordElem.html#8583bafac2418ddd8c7d881926851f05">m_nNumber</a> = number;
+<a name="l00048"></a>00048 <a class="code" href="classShowRecordElem.html#7da2621d1de438c9118fbcead3c23506">m_uid</a> = uid;
+<a name="l00049"></a>00049 <a class="code" href="classShowRecordElem.html#f9f2112f8e2b1c3dfef0286581a892b4">m_new</a> = isNew;
+<a name="l00050"></a>00050 }
+<a name="l00051"></a>00051
+<a name="l00052"></a>00052
+<a name="l00053"></a><a class="code" href="classShowRecordElem.html#8070b0cbba2b2281a78bfdae3334a981">00053</a> QCString <a class="code" href="classShowRecordElem.html#8070b0cbba2b2281a78bfdae3334a981">ShowRecordElem::scanHeader</a>( <span class="keyword">const</span> QString&amp; item )<span class="keyword"> const</span>
+<a name="l00054"></a>00054 <span class="keyword"></span>{
+<a name="l00055"></a>00055 QCString headerline( <span class="stringliteral">""</span> ); <span class="comment">//found header line</span>
+<a name="l00056"></a>00056
+<a name="l00057"></a>00057 <span class="comment">//get e.g. the "From:" line, starting with cr,lf,"From:" and ending</span>
+<a name="l00058"></a>00058 <span class="comment">//with a carriage return</span>
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <span class="comment">//build the search string</span>
+<a name="l00061"></a>00061 QString searchstring( QString( <span class="stringliteral">"\r\n%1:"</span> ).arg( item ) );
+<a name="l00062"></a>00062
+<a name="l00063"></a>00063 <span class="comment">//searching...</span>
+<a name="l00064"></a>00064 <span class="keywordtype">int</span> pos1 = <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>.find( searchstring, 0, FALSE );
+<a name="l00065"></a>00065 <span class="keywordtype">int</span> pos2 = <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>.find( <span class="charliteral">'\r'</span>, pos1 + 2 );
+<a name="l00066"></a>00066
+<a name="l00067"></a>00067 <span class="comment">//cut out the interesting content, if we have found a matching line</span>
+<a name="l00068"></a>00068 <span class="comment">//if we have found nothing, the returned string will be ""</span>
+<a name="l00069"></a>00069 <span class="keywordflow">if</span>( pos1 &gt;= 0 )
+<a name="l00070"></a>00070 {
+<a name="l00071"></a>00071 headerline = <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>.mid( pos1 + searchstring.length(), pos2 - pos1 - searchstring.length() );
+<a name="l00072"></a>00072 }
+<a name="l00073"></a>00073
+<a name="l00074"></a>00074 <span class="keywordflow">return</span> headerline;
+<a name="l00075"></a>00075 }
+<a name="l00076"></a>00076
+<a name="l00077"></a><a class="code" href="classShowRecordElem.html#28e7072cd68f18e1e07176b9c1bd5f72">00077</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#28e7072cd68f18e1e07176b9c1bd5f72">ShowRecordElem::setHeader</a>( <span class="keyword">const</span> QString&amp; header )
+<a name="l00078"></a>00078 {
+<a name="l00079"></a>00079 <span class="comment">//store given header</span>
+<a name="l00080"></a>00080 <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a> = header.ascii();
+<a name="l00081"></a>00081
+<a name="l00082"></a>00082 <span class="comment">//extract sender and store it</span>
+<a name="l00083"></a>00083 QCString <a class="code" href="classShowRecordElem.html#a4d48b3072adb4f87f56ed2b5e35dbba">from</a> = <a class="code" href="classShowRecordElem.html#8070b0cbba2b2281a78bfdae3334a981">scanHeader</a>( <span class="stringliteral">"From"</span> );
+<a name="l00084"></a>00084 from = from.simplifyWhiteSpace();
+<a name="l00085"></a>00085 <a class="code" href="classShowRecordElem.html#373e98f7a94fd659ff1174ef7346de08">setFrom</a>( from );
+<a name="l00086"></a>00086
+<a name="l00087"></a>00087 <span class="comment">//extract addressee and store it</span>
+<a name="l00088"></a>00088 QCString <a class="code" href="classShowRecordElem.html#759a16f3424defc71b4cfd762b156fd1">to</a> = <a class="code" href="classShowRecordElem.html#8070b0cbba2b2281a78bfdae3334a981">scanHeader</a>( <span class="stringliteral">"To"</span> );
+<a name="l00089"></a>00089 to = to.simplifyWhiteSpace();
+<a name="l00090"></a>00090 <a class="code" href="classShowRecordElem.html#fe4b012dfc137770f35879ea2264ba19">setTo</a> (to);
+<a name="l00091"></a>00091
+<a name="l00092"></a>00092 <span class="comment">//extract subject and store it</span>
+<a name="l00093"></a>00093 QCString <a class="code" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">subject</a> = <a class="code" href="classShowRecordElem.html#8070b0cbba2b2281a78bfdae3334a981">scanHeader</a>( <span class="stringliteral">"Subject"</span> );
+<a name="l00094"></a>00094 subject = subject.simplifyWhiteSpace();
+<a name="l00095"></a>00095 <a class="code" href="classShowRecordElem.html#bad7c7440195e0284b42c79d281bfbf2">setSubject</a>( subject );
+<a name="l00096"></a>00096
+<a name="l00097"></a>00097 <span class="comment">//extract date and store it</span>
+<a name="l00098"></a>00098 QCString <a class="code" href="classShowRecordElem.html#412ad2a7452c1f5390f2679f1d443292">date</a> = <a class="code" href="classShowRecordElem.html#8070b0cbba2b2281a78bfdae3334a981">scanHeader</a>( <span class="stringliteral">"Date"</span> );
+<a name="l00099"></a>00099 <a class="code" href="classShowRecordElem.html#7fe7272db1f8f38f6fa404611acf7b8d">setDate</a>( date );
+<a name="l00100"></a>00100
+<a name="l00101"></a>00101 <span class="comment">//extract content type</span>
+<a name="l00102"></a>00102 QCString <a class="code" href="classShowRecordElem.html#8d655afdb7350fd4a27b551da7a8a797">content</a> = <a class="code" href="classShowRecordElem.html#8070b0cbba2b2281a78bfdae3334a981">scanHeader</a>( <span class="stringliteral">"Content-Type"</span> );
+<a name="l00103"></a>00103 content = content.simplifyWhiteSpace ();
+<a name="l00104"></a>00104
+<a name="l00105"></a>00105 <span class="comment">//remove the stuff after the content type; see RFC 2045</span>
+<a name="l00106"></a>00106 <span class="keywordtype">int</span> posSemicolon = content.find( <span class="charliteral">';'</span> );
+<a name="l00107"></a>00107 <span class="keywordflow">if</span>( posSemicolon != -1 )
+<a name="l00108"></a>00108 {
+<a name="l00109"></a>00109 content.remove( posSemicolon, content.length() - posSemicolon );
+<a name="l00110"></a>00110 }
+<a name="l00111"></a>00111
+<a name="l00112"></a>00112 <span class="comment">//store content type</span>
+<a name="l00113"></a>00113 <a class="code" href="classShowRecordElem.html#8ab7746aad762c2c2e0fe80c4a496f9a">setContent</a> (content);
+<a name="l00114"></a>00114 }
+<a name="l00115"></a>00115
+<a name="l00116"></a><a class="code" href="classShowRecordElem.html#7fe7272db1f8f38f6fa404611acf7b8d">00116</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#7fe7272db1f8f38f6fa404611acf7b8d">ShowRecordElem::setDate</a>( <span class="keyword">const</span> QCString&amp; date )
+<a name="l00117"></a>00117 {
+<a name="l00118"></a>00118 DwDateTime dwDate; <span class="comment">//this class represents an RFC-822 date-time;</span>
+<a name="l00119"></a>00119 <span class="comment">//see mimelib/datetime.h</span>
+<a name="l00120"></a>00120
+<a name="l00121"></a>00121 <span class="comment">//convert and store the date-time</span>
+<a name="l00122"></a>00122 dwDate.FromString( date );
+<a name="l00123"></a>00123 dwDate.Parse();
+<a name="l00124"></a>00124 <a class="code" href="classShowRecordElem.html#b3f665656a06d88cea46345bcb1a51a9">m_unixDate</a>.setTime_t( dwDate.AsUnixTime() );
+<a name="l00125"></a>00125 }
+<a name="l00126"></a>00126
+<a name="l00127"></a><a class="code" href="classShowRecordElem.html#a4d48b3072adb4f87f56ed2b5e35dbba">00127</a> QString <a class="code" href="classShowRecordElem.html#a4d48b3072adb4f87f56ed2b5e35dbba">ShowRecordElem::from</a>()<span class="keyword"> const</span>
+<a name="l00128"></a>00128 <span class="keyword"></span>{
+<a name="l00129"></a>00129 <span class="keywordflow">return</span> <a class="code" href="namespaceCodecs.html#a0ef7c083708a464b1f1357ba5470cde">Codecs::decodeRFC2047</a>( <a class="code" href="classShowRecordElem.html#260019ad5471ede61b2a1958b8c31375">m_from</a> );
+<a name="l00130"></a>00130 }
+<a name="l00131"></a>00131
+<a name="l00132"></a><a class="code" href="classShowRecordElem.html#759a16f3424defc71b4cfd762b156fd1">00132</a> QString <a class="code" href="classShowRecordElem.html#759a16f3424defc71b4cfd762b156fd1">ShowRecordElem::to</a>()<span class="keyword"> const</span>
+<a name="l00133"></a>00133 <span class="keyword"></span>{
+<a name="l00134"></a>00134 <span class="keywordflow">return</span> <a class="code" href="namespaceCodecs.html#a0ef7c083708a464b1f1357ba5470cde">Codecs::decodeRFC2047</a>( <a class="code" href="classShowRecordElem.html#02de09b7b36dfcce893a1e79ff8ba34c">m_to</a> );
+<a name="l00135"></a>00135 }
+<a name="l00136"></a>00136
+<a name="l00137"></a><a class="code" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">00137</a> QString <a class="code" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">ShowRecordElem::subject</a>()<span class="keyword"> const</span>
+<a name="l00138"></a>00138 <span class="keyword"></span>{
+<a name="l00139"></a>00139 <span class="keywordflow">return</span> <a class="code" href="namespaceCodecs.html#a0ef7c083708a464b1f1357ba5470cde">Codecs::decodeRFC2047</a>( <a class="code" href="classShowRecordElem.html#1c83a6d029a73795076161efd3842893">m_subject</a> );
+<a name="l00140"></a>00140 }
+<a name="l00141"></a>00141
+<a name="l00142"></a><a class="code" href="classShowRecordElem.html#412ad2a7452c1f5390f2679f1d443292">00142</a> QString <a class="code" href="classShowRecordElem.html#412ad2a7452c1f5390f2679f1d443292">ShowRecordElem::date</a>()<span class="keyword"> const</span>
+<a name="l00143"></a>00143 <span class="keyword"></span>{
+<a name="l00144"></a>00144 <span class="keywordflow">return</span> KGlobal::locale()-&gt;formatDateTime( <a class="code" href="classShowRecordElem.html#b3f665656a06d88cea46345bcb1a51a9">m_unixDate</a>, <span class="keyword">true</span>, <span class="keyword">true</span> );
+<a name="l00145"></a>00145 }
+<a name="l00146"></a>00146
+<a name="l00147"></a><a class="code" href="classShowRecordElem.html#0e554cd8f1e67b3e448054e8c6fdc91c">00147</a> QString <a class="code" href="classShowRecordElem.html#0e554cd8f1e67b3e448054e8c6fdc91c">ShowRecordElem::strUnixTime</a>()<span class="keyword"> const</span>
+<a name="l00148"></a>00148 <span class="keyword"></span>{
+<a name="l00149"></a>00149 <span class="keywordflow">return</span> <a class="code" href="classShowRecordElem.html#b3f665656a06d88cea46345bcb1a51a9">m_unixDate</a>.toString( Qt::ISODate );
+<a name="l00150"></a>00150 }
+<a name="l00151"></a>00151
+<a name="l00152"></a><a class="code" href="classShowRecordElem.html#f5e3c42a0be5b06f414b5936d6a64056">00152</a> QString <a class="code" href="classShowRecordElem.html#f5e3c42a0be5b06f414b5936d6a64056">ShowRecordElem::strSize</a>()<span class="keyword"> const</span>
+<a name="l00153"></a>00153 <span class="keyword"></span>{
+<a name="l00154"></a>00154 <span class="keywordflow">return</span> QString( <span class="stringliteral">"%1"</span> ).arg( <a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a>, 8 );
+<a name="l00155"></a>00155 }
+<a name="l00156"></a>00156
+<a name="l00157"></a><a class="code" href="classShowRecordElem.html#f00398057086a7fbee1205c5d0f605a2">00157</a> QString <a class="code" href="classShowRecordElem.html#f00398057086a7fbee1205c5d0f605a2">ShowRecordElem::state</a>()<span class="keyword"> const</span>
+<a name="l00158"></a>00158 <span class="keyword"></span>{
+<a name="l00159"></a>00159 <span class="keywordflow">if</span>( <a class="code" href="classShowRecordElem.html#f9f2112f8e2b1c3dfef0286581a892b4">m_new</a> )
+<a name="l00160"></a>00160 <span class="keywordflow">return</span> i18n( <span class="stringliteral">"new"</span> );
+<a name="l00161"></a>00161 <span class="keywordflow">else</span>
+<a name="l00162"></a>00162 <span class="keywordflow">return</span> i18n( <span class="stringliteral">"old"</span> );
+<a name="l00163"></a>00163 }
+<a name="l00164"></a>00164
+<a name="l00165"></a><a class="code" href="classShowRecordElem.html#fcabf6ba9c5b68ae2923bb70bf9f45b0">00165</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#fcabf6ba9c5b68ae2923bb70bf9f45b0">ShowRecordElem::saveOptions</a>( QDomDocument&amp; doc, QDomElement&amp; parent )
+<a name="l00166"></a>00166 {
+<a name="l00167"></a>00167 <span class="comment">//build item tag of this mail( with mail number)</span>
+<a name="l00168"></a>00168 QString hdr = QString( ITEM_MESSAGE );
+<a name="l00169"></a>00169 hdr.append( <span class="stringliteral">"%1"</span> );
+<a name="l00170"></a>00170 hdr = hdr.arg( <a class="code" href="classShowRecordElem.html#8583bafac2418ddd8c7d881926851f05">m_nNumber</a> );
+<a name="l00171"></a>00171
+<a name="l00172"></a>00172 <span class="comment">//create a new element and store the mail meta data in it</span>
+<a name="l00173"></a>00173 QDomElement elem = doc.createElement( hdr );
+<a name="l00174"></a>00174 elem.setAttribute( ATTRIBUTE_MAIL_NUMBER, <a class="code" href="classShowRecordElem.html#8583bafac2418ddd8c7d881926851f05">m_nNumber</a> );
+<a name="l00175"></a>00175 elem.setAttribute( ATTRIBUTE_MAIL_SIZE, <a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a> );
+<a name="l00176"></a>00176 elem.setAttribute( ATTRIBUTE_MAIL_UID, <a class="code" href="classShowRecordElem.html#7da2621d1de438c9118fbcead3c23506">m_uid</a> );
+<a name="l00177"></a>00177
+<a name="l00178"></a>00178 <span class="comment">//create a sub element for the mail header in store the header in it</span>
+<a name="l00179"></a>00179 QDomElement subelem = doc.createElement( ITEM_MAIL_HEADER );
+<a name="l00180"></a>00180 subelem.appendChild( doc.createTextNode( <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a> ) );
+<a name="l00181"></a>00181
+<a name="l00182"></a>00182 <span class="comment">//add header element to the mail element</span>
+<a name="l00183"></a>00183 elem.appendChild( subelem );
+<a name="l00184"></a>00184
+<a name="l00185"></a>00185 <span class="comment">//add mail element to the account (parent) element</span>
+<a name="l00186"></a>00186 parent.appendChild( elem );
+<a name="l00187"></a>00187 }
+<a name="l00188"></a>00188
+<a name="l00189"></a><a class="code" href="classShowRecordElem.html#97952e1293b679abc1891a240bd9e4f1">00189</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#97952e1293b679abc1891a240bd9e4f1">ShowRecordElem::readOptions</a>( QDomElement&amp; elem )
+<a name="l00190"></a>00190 {
+<a name="l00191"></a>00191 <span class="comment">//get number, size and uid</span>
+<a name="l00192"></a>00192 <a class="code" href="classShowRecordElem.html#1c31fc69dfe9794c6c77970192d455a5">setNumber</a>( elem.attribute( ATTRIBUTE_MAIL_NUMBER ).toInt() );
+<a name="l00193"></a>00193 <a class="code" href="classShowRecordElem.html#dd22d1f50be46bd9ecbbacec7606b3ed">setSize</a>( elem.attribute( ATTRIBUTE_MAIL_SIZE ).toInt() );
+<a name="l00194"></a>00194 <a class="code" href="classShowRecordElem.html#6d24c13e7de2fad247fff5549a96767d">setUIDL</a>( elem.attribute( ATTRIBUTE_MAIL_UID ) );
+<a name="l00195"></a>00195
+<a name="l00196"></a>00196 <span class="comment">//search for the header item and read it</span>
+<a name="l00197"></a>00197 QDomElement subelem = elem.namedItem( ITEM_MAIL_HEADER ).toElement();
+<a name="l00198"></a>00198 <a class="code" href="classShowRecordElem.html#28e7072cd68f18e1e07176b9c1bd5f72">setHeader</a>( subelem.text() );
+<a name="l00199"></a>00199
+<a name="l00200"></a>00200 <span class="comment">//the mail is not new</span>
+<a name="l00201"></a>00201 <a class="code" href="classShowRecordElem.html#4c6d52d5a2df4b7bb743128184ced8f4">setNew</a>( <span class="keyword">false</span> );
+<a name="l00202"></a>00202 }
+<a name="l00203"></a>00203
+<a name="l00204"></a><a class="code" href="classShowRecordElem.html#976860a46dde2702c7a0e505c34dcae5">00204</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#976860a46dde2702c7a0e505c34dcae5">ShowRecordElem::applyFilters</a> ()
+<a name="l00205"></a>00205 {
+<a name="l00206"></a>00206 <span class="comment">//search for a matching filter</span>
+<a name="l00207"></a>00207 <a class="code" href="classFilterElem.html">FilterElem</a>* filter = <a class="code" href="classFilter.html#1092aa06ff29a9c2adceadde9d4891f3">Filter::matches</a>( <span class="keyword">this</span> );
+<a name="l00208"></a>00208
+<a name="l00209"></a>00209 <span class="keywordflow">if</span>( filter != NULL )
+<a name="l00210"></a>00210 {
+<a name="l00211"></a>00211 <span class="comment">//if we have found a matching filter, highlight the corresponding</span>
+<a name="l00212"></a>00212 <span class="comment">//list view entry</span>
+<a name="l00213"></a>00213 <a class="code" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">m_pItem</a>-&gt;setSelected (<span class="keyword">true</span>);
+<a name="l00214"></a>00214
+<a name="l00215"></a>00215 <span class="comment">//store a pointer to the filter</span>
+<a name="l00216"></a>00216 <a class="code" href="classShowRecordElem.html#fe3536020ed0f47f0ec4c97839068cc1">setFilter</a>( filter );
+<a name="l00217"></a>00217 }
+<a name="l00218"></a>00218 }
+<a name="l00219"></a>00219
+<a name="l00220"></a><a class="code" href="classShowRecordElem.html#373e98f7a94fd659ff1174ef7346de08">00220</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#373e98f7a94fd659ff1174ef7346de08">ShowRecordElem::setFrom</a>( <span class="keyword">const</span> QCString &amp; from )
+<a name="l00221"></a>00221 {
+<a name="l00222"></a>00222 <a class="code" href="classShowRecordElem.html#260019ad5471ede61b2a1958b8c31375">m_from</a> = from;
+<a name="l00223"></a>00223 }
+<a name="l00224"></a>00224
+<a name="l00225"></a><a class="code" href="classShowRecordElem.html#fe4b012dfc137770f35879ea2264ba19">00225</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#fe4b012dfc137770f35879ea2264ba19">ShowRecordElem::setTo</a>( <span class="keyword">const</span> QCString &amp; to )
+<a name="l00226"></a>00226 {
+<a name="l00227"></a>00227 <a class="code" href="classShowRecordElem.html#02de09b7b36dfcce893a1e79ff8ba34c">m_to</a> = to;
+<a name="l00228"></a>00228 }
+<a name="l00229"></a>00229
+<a name="l00230"></a><a class="code" href="classShowRecordElem.html#bad7c7440195e0284b42c79d281bfbf2">00230</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#bad7c7440195e0284b42c79d281bfbf2">ShowRecordElem::setSubject</a>( <span class="keyword">const</span> QCString &amp; subject )
+<a name="l00231"></a>00231 {
+<a name="l00232"></a>00232 <a class="code" href="classShowRecordElem.html#1c83a6d029a73795076161efd3842893">m_subject</a> = subject;
+<a name="l00233"></a>00233 }
+<a name="l00234"></a>00234
+<a name="l00235"></a><a class="code" href="classShowRecordElem.html#8ab7746aad762c2c2e0fe80c4a496f9a">00235</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#8ab7746aad762c2c2e0fe80c4a496f9a">ShowRecordElem::setContent</a>( <span class="keyword">const</span> QCString&amp; content )
+<a name="l00236"></a>00236 {
+<a name="l00237"></a>00237 <a class="code" href="classShowRecordElem.html#c70dec4d7ff63aa1acffcc7229776990">m_content</a> = content;
+<a name="l00238"></a>00238 }
+<a name="l00239"></a>00239
+<a name="l00240"></a><a class="code" href="classShowRecordElem.html#dd5d842c1abdd13fa03ac4a3f2f11150">00240</a> QString <a class="code" href="classShowRecordElem.html#dd5d842c1abdd13fa03ac4a3f2f11150">ShowRecordElem::header</a>( )<span class="keyword"> const</span>
+<a name="l00241"></a>00241 <span class="keyword"></span>{
+<a name="l00242"></a>00242 <span class="keywordflow">return</span> QString( <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a> );
+<a name="l00243"></a>00243 }
+<a name="l00244"></a>00244
+<a name="l00245"></a><a class="code" href="classShowRecordElem.html#6d24c13e7de2fad247fff5549a96767d">00245</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#6d24c13e7de2fad247fff5549a96767d">ShowRecordElem::setUIDL</a>( <span class="keyword">const</span> QString &amp; uid )
+<a name="l00246"></a>00246 {
+<a name="l00247"></a>00247 <a class="code" href="classShowRecordElem.html#7da2621d1de438c9118fbcead3c23506">m_uid</a> = uid;
+<a name="l00248"></a>00248 }
+<a name="l00249"></a>00249
+<a name="l00250"></a><a class="code" href="classShowRecordElem.html#835e045bf24090c4d6a6a9049c60e94c">00250</a> QString <a class="code" href="classShowRecordElem.html#835e045bf24090c4d6a6a9049c60e94c">ShowRecordElem::uidl</a>( )<span class="keyword"> const</span>
+<a name="l00251"></a>00251 <span class="keyword"></span>{
+<a name="l00252"></a>00252 <span class="keywordflow">return</span> <a class="code" href="classShowRecordElem.html#7da2621d1de438c9118fbcead3c23506">m_uid</a>;
+<a name="l00253"></a>00253 }
+<a name="l00254"></a>00254
+<a name="l00255"></a><a class="code" href="classShowRecordElem.html#dd22d1f50be46bd9ecbbacec7606b3ed">00255</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#dd22d1f50be46bd9ecbbacec7606b3ed">ShowRecordElem::setSize</a>( <span class="keywordtype">int</span> size )
+<a name="l00256"></a>00256 {
+<a name="l00257"></a>00257 <a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a> = size;
+<a name="l00258"></a>00258 }
+<a name="l00259"></a>00259
+<a name="l00260"></a><a class="code" href="classShowRecordElem.html#4b4077ca5d47226ccb44b6d8373a4fbd">00260</a> <span class="keywordtype">int</span> <a class="code" href="classShowRecordElem.html#4b4077ca5d47226ccb44b6d8373a4fbd">ShowRecordElem::size</a>( )<span class="keyword"> const</span>
+<a name="l00261"></a>00261 <span class="keyword"></span>{
+<a name="l00262"></a>00262 <span class="keywordflow">return</span> <a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a>;
+<a name="l00263"></a>00263 }
+<a name="l00264"></a>00264
+<a name="l00265"></a><a class="code" href="classShowRecordElem.html#4c6d52d5a2df4b7bb743128184ced8f4">00265</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#4c6d52d5a2df4b7bb743128184ced8f4">ShowRecordElem::setNew</a>( <span class="keywordtype">bool</span> isnew )
+<a name="l00266"></a>00266 {
+<a name="l00267"></a>00267 <a class="code" href="classShowRecordElem.html#f9f2112f8e2b1c3dfef0286581a892b4">m_new</a> = isnew;
+<a name="l00268"></a>00268 }
+<a name="l00269"></a>00269
+<a name="l00270"></a><a class="code" href="classShowRecordElem.html#48485d7a0dfef669b6597c865a515290">00270</a> <span class="keywordtype">bool</span> <a class="code" href="classShowRecordElem.html#48485d7a0dfef669b6597c865a515290">ShowRecordElem::isNew</a>( )<span class="keyword"> const</span>
+<a name="l00271"></a>00271 <span class="keyword"></span>{
+<a name="l00272"></a>00272 <span class="keywordflow">return</span> <a class="code" href="classShowRecordElem.html#f9f2112f8e2b1c3dfef0286581a892b4">m_new</a>;
+<a name="l00273"></a>00273 }
+<a name="l00274"></a>00274
+<a name="l00275"></a><a class="code" href="classShowRecordElem.html#1c31fc69dfe9794c6c77970192d455a5">00275</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#1c31fc69dfe9794c6c77970192d455a5">ShowRecordElem::setNumber</a>( <span class="keywordtype">int</span> n )
+<a name="l00276"></a>00276 {
+<a name="l00277"></a>00277 <a class="code" href="classShowRecordElem.html#8583bafac2418ddd8c7d881926851f05">m_nNumber</a> = n;
+<a name="l00278"></a>00278 }
+<a name="l00279"></a>00279
+<a name="l00280"></a><a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">00280</a> <span class="keywordtype">int</span> <a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">ShowRecordElem::number</a>( )<span class="keyword"> const</span>
+<a name="l00281"></a>00281 <span class="keyword"></span>{
+<a name="l00282"></a>00282 <span class="keywordflow">return</span> <a class="code" href="classShowRecordElem.html#8583bafac2418ddd8c7d881926851f05">m_nNumber</a>;
+<a name="l00283"></a>00283 }
+<a name="l00284"></a>00284
+<a name="l00285"></a><a class="code" href="classShowRecordElem.html#8d655afdb7350fd4a27b551da7a8a797">00285</a> QString <a class="code" href="classShowRecordElem.html#8d655afdb7350fd4a27b551da7a8a797">ShowRecordElem::content</a>( )<span class="keyword"> const</span>
+<a name="l00286"></a>00286 <span class="keyword"></span>{
+<a name="l00287"></a>00287 <span class="keywordflow">return</span> <a class="code" href="classShowRecordElem.html#c70dec4d7ff63aa1acffcc7229776990">m_content</a>;
+<a name="l00288"></a>00288 }
+<a name="l00289"></a>00289
+<a name="l00290"></a><a class="code" href="classShowRecordElem.html#e7f2ca5eb9a9bc95266a4f83f78cd76e">00290</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#e7f2ca5eb9a9bc95266a4f83f78cd76e">ShowRecordElem::setViewItem</a>( <a class="code" href="classShowListViewItem.html">ShowListViewItem</a>* item )
+<a name="l00291"></a>00291 {
+<a name="l00292"></a>00292 <a class="code" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">m_pItem</a> = item;
+<a name="l00293"></a>00293 }
+<a name="l00294"></a>00294
+<a name="l00295"></a><a class="code" href="classShowRecordElem.html#e176bc1074c050afc56540849bc3664c">00295</a> <a class="code" href="classShowListViewItem.html">ShowListViewItem</a> * <a class="code" href="classShowRecordElem.html#e176bc1074c050afc56540849bc3664c">ShowRecordElem::viewItem</a>( )<span class="keyword"> const</span>
+<a name="l00296"></a>00296 <span class="keyword"></span>{
+<a name="l00297"></a>00297 <span class="keywordflow">return</span> <a class="code" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">m_pItem</a>;
+<a name="l00298"></a>00298 }
+<a name="l00299"></a>00299
+<a name="l00300"></a><a class="code" href="classShowRecordElem.html#fe3536020ed0f47f0ec4c97839068cc1">00300</a> <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#fe3536020ed0f47f0ec4c97839068cc1">ShowRecordElem::setFilter</a>( <a class="code" href="classFilterElem.html">FilterElem</a>* filter )
+<a name="l00301"></a>00301 {
+<a name="l00302"></a>00302 <a class="code" href="classShowRecordElem.html#cf1207160bae1cd017c282b808e44e02">m_pFilter</a> = filter;
+<a name="l00303"></a>00303 }
+<a name="l00304"></a>00304
+<a name="l00305"></a><a class="code" href="classShowRecordElem.html#6987a0066f420f62b5c9ec9d82ed7fb3">00305</a> <span class="keywordtype">bool</span> <a class="code" href="classShowRecordElem.html#6987a0066f420f62b5c9ec9d82ed7fb3">ShowRecordElem::isSelected</a>( )<span class="keyword"> const</span>
+<a name="l00306"></a>00306 <span class="keyword"></span>{
+<a name="l00307"></a>00307 <span class="keywordflow">if</span>( <a class="code" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">m_pItem</a> != NULL )
+<a name="l00308"></a>00308 <span class="keywordflow">return</span> <a class="code" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">m_pItem</a>-&gt;isSelected();
+<a name="l00309"></a>00309 <span class="keywordflow">else</span>
+<a name="l00310"></a>00310 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00311"></a>00311 }
+<a name="l00312"></a>00312
+<a name="l00313"></a><a class="code" href="classShowRecordElem.html#233ccd75f668ec868ec726120d8c71d9">00313</a> QString <a class="code" href="classShowRecordElem.html#233ccd75f668ec868ec726120d8c71d9">ShowRecordElem::strSizePrefix</a>( )<span class="keyword"> const</span>
+<a name="l00314"></a>00314 <span class="keyword"></span>{
+<a name="l00315"></a>00315 QString <a class="code" href="classShowRecordElem.html#4b4077ca5d47226ccb44b6d8373a4fbd">size</a>;
+<a name="l00316"></a>00316
+<a name="l00317"></a>00317 <span class="keywordflow">if</span>( <a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a> &gt;= 1024 * 1024 )
+<a name="l00318"></a>00318 {
+<a name="l00319"></a>00319 <span class="comment">//prefix is mega</span>
+<a name="l00320"></a>00320 size = QString( <span class="stringliteral">"%L1M"</span> ).arg( ( (<span class="keywordtype">double</span>)<a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a> / ( 1024 * 1024 ) ), 0, <span class="charliteral">'f'</span>, 1 );
+<a name="l00321"></a>00321 }
+<a name="l00322"></a>00322 <span class="keywordflow">else</span> <span class="keywordflow">if</span>( <a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a> &gt;= 1024 )
+<a name="l00323"></a>00323 {
+<a name="l00324"></a>00324 <span class="comment">//prefix is kilo</span>
+<a name="l00325"></a>00325 size = QString( <span class="stringliteral">"%L1K"</span> ).arg( ( (<span class="keywordtype">double</span>)<a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a> / 1024 ), 0, <span class="charliteral">'f'</span>, 1 );
+<a name="l00326"></a>00326 }
+<a name="l00327"></a>00327 <span class="keywordflow">else</span>
+<a name="l00328"></a>00328 <span class="comment">//no prefix</span>
+<a name="l00329"></a>00329 size = QString( <span class="stringliteral">"%L1"</span> ).arg( <a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a> );
+<a name="l00330"></a>00330
+<a name="l00331"></a>00331 <span class="keywordflow">return</span> size;
+<a name="l00332"></a>00332 }
+<a name="l00333"></a>00333
+<a name="l00334"></a><a class="code" href="classShowRecordElem.html#27af244fc090ac05fabde1becb7bf60d">00334</a> QString <a class="code" href="classShowRecordElem.html#27af244fc090ac05fabde1becb7bf60d">ShowRecordElem::decodeMailBody</a>( QByteArray body, <span class="keywordtype">bool</span> preferHTML )<span class="keyword"> const</span>
+<a name="l00335"></a>00335 <span class="keyword"></span>{
+<a name="l00336"></a>00336 QString charset; <span class="comment">//charset of the content</span>
+<a name="l00337"></a>00337 QString encoding; <span class="comment">//content transfer encoding</span>
+<a name="l00338"></a>00338
+<a name="l00339"></a>00339 <span class="comment">//cast given body to a QCString</span>
+<a name="l00340"></a>00340 <span class="comment">//class QCString needs a null terminated char array to create</span>
+<a name="l00341"></a>00341 <span class="comment">//an object. Therefore we append an null byte to the given mail body</span>
+<a name="l00342"></a>00342 body.resize( body.size() + 1 );
+<a name="l00343"></a>00343 body[ body.size() - 1 ] = <span class="charliteral">'\0'</span>;
+<a name="l00344"></a>00344 QCString strBody( (<span class="keywordtype">char</span> *)body.data() );
+<a name="l00345"></a>00345
+<a name="l00346"></a>00346 <span class="comment">//normalize line ends; remove all \r characters</span>
+<a name="l00347"></a>00347 <span class="keywordflow">for</span>( uint i = 0; i &lt; strBody.size(); i++ )
+<a name="l00348"></a>00348 <span class="keywordflow">if</span>( strBody[ i ] == <span class="charliteral">'\r'</span> )
+<a name="l00349"></a>00349 strBody.remove( i, 1 );
+<a name="l00350"></a>00350
+<a name="l00351"></a>00351 <span class="comment">//get boundary that is separating the parts of a multipart message</span>
+<a name="l00352"></a>00352 <span class="comment">//if the header doesn't contain a boundary attribute, this messsage</span>
+<a name="l00353"></a>00353 <span class="comment">//has just one part</span>
+<a name="l00354"></a>00354 QString boundary = <a class="code" href="classShowRecordElem.html#9c49db9d3ce2495c477c783dd5e5da7d">getBoundary</a>();
+<a name="l00355"></a>00355
+<a name="l00356"></a>00356 <span class="comment">//process body subject to it is a multipart messsage or not</span>
+<a name="l00357"></a>00357 <span class="keywordflow">if</span>( boundary == <span class="stringliteral">""</span> )
+<a name="l00358"></a>00358 {
+<a name="l00359"></a>00359 <span class="comment">//the message has just one body part</span>
+<a name="l00360"></a>00360
+<a name="l00361"></a>00361 <span class="comment">//get the position of the first blank line</span>
+<a name="l00362"></a>00362 <span class="keywordtype">int</span> posBlankLine = strBody.find( <span class="stringliteral">"\n\n"</span> );
+<a name="l00363"></a>00363
+<a name="l00364"></a>00364 <span class="comment">//truncate body; the found blank line is separating the</span>
+<a name="l00365"></a>00365 <span class="comment">//header from the message</span>
+<a name="l00366"></a>00366 strBody = strBody.mid( posBlankLine + 2 );
+<a name="l00367"></a>00367 <span class="keywordflow">while</span>( strBody[ 0 ] == <span class="charliteral">'\n'</span>)
+<a name="l00368"></a>00368 strBody.remove( 0, 1 );
+<a name="l00369"></a>00369
+<a name="l00370"></a>00370 <span class="comment">//get charset of the message; it is behind the</span>
+<a name="l00371"></a>00371 <span class="comment">//content type attribute in the header</span>
+<a name="l00372"></a>00372 charset = <a class="code" href="classShowRecordElem.html#4919b572763cc228320420059e29b0a7">getCharset</a>();
+<a name="l00373"></a>00373
+<a name="l00374"></a>00374 <span class="comment">//get transfer encoding type from the header</span>
+<a name="l00375"></a>00375 encoding = <a class="code" href="classShowRecordElem.html#9f0dcc62d28fbcec89b0af33c7e0c446">getTransferEncoding</a>();
+<a name="l00376"></a>00376 }
+<a name="l00377"></a>00377 <span class="keywordflow">else</span>
+<a name="l00378"></a>00378 {
+<a name="l00379"></a>00379 <span class="comment">//the message has multiple parts</span>
+<a name="l00380"></a>00380
+<a name="l00381"></a>00381 <span class="comment">//get positions of a plain text and html flag (value of the content type attribute)</span>
+<a name="l00382"></a>00382 <span class="keywordtype">int</span> posPlainFlag = strBody.find( <span class="stringliteral">"text/plain"</span>, 0, <span class="keyword">false</span> );
+<a name="l00383"></a>00383 <span class="keywordtype">int</span> posHTMLFlag = strBody.find( <span class="stringliteral">"text/html"</span>, 0, <span class="keyword">false</span> );
+<a name="l00384"></a>00384
+<a name="l00385"></a>00385 <span class="comment">//just decode the body, if a plain text or a HTML part is available</span>
+<a name="l00386"></a>00386 <span class="keywordflow">if</span>( posPlainFlag != -1 || posHTMLFlag != -1 )
+<a name="l00387"></a>00387 {
+<a name="l00388"></a>00388 <span class="comment">//do we want to take the HTML part?</span>
+<a name="l00389"></a>00389 <span class="keywordtype">bool</span> hasHTML = posHTMLFlag != -1;
+<a name="l00390"></a>00390 <span class="keywordtype">bool</span> takeHTML = ( hasHTML &amp;&amp; preferHTML ) || posPlainFlag == -1;
+<a name="l00391"></a>00391
+<a name="l00392"></a>00392 <span class="comment">//now we want to extract the designated part</span>
+<a name="l00393"></a>00393 <span class="comment">//While the (truncated) mail text (or the header at the first pass)</span>
+<a name="l00394"></a>00394 <span class="comment">//contains a boundary attribute we will extract the designated part</span>
+<a name="l00395"></a>00395 <span class="comment">//between the boundaries</span>
+<a name="l00396"></a>00396 <span class="keywordtype">int</span> posInside; <span class="comment">//a position inside the designated part</span>
+<a name="l00397"></a>00397 <span class="keywordflow">while</span>( boundary != <span class="stringliteral">""</span> )
+<a name="l00398"></a>00398 {
+<a name="l00399"></a>00399 <span class="comment">//get a position inside the designated part</span>
+<a name="l00400"></a>00400 <span class="keywordflow">if</span>( takeHTML )
+<a name="l00401"></a>00401 posInside = strBody.find( <span class="stringliteral">"text/html"</span>, 0, <span class="keyword">false</span> );
+<a name="l00402"></a>00402 <span class="keywordflow">else</span>
+<a name="l00403"></a>00403 posInside = strBody.find( <span class="stringliteral">"text/plain"</span>, 0, <span class="keyword">false</span> );
+<a name="l00404"></a>00404
+<a name="l00405"></a>00405 <span class="comment">//get length of the boundary</span>
+<a name="l00406"></a>00406 <span class="keywordtype">int</span> lengthBoundary = boundary.length();
+<a name="l00407"></a>00407
+<a name="l00408"></a>00408 <span class="comment">//calculate the begin and end of the part to extract</span>
+<a name="l00409"></a>00409 <span class="keywordtype">int</span> beginPart = strBody.findRev( boundary.ascii(), posInside ) + lengthBoundary + 1;
+<a name="l00410"></a>00410 <span class="keywordtype">int</span> lengthPart = strBody.findRev( <span class="charliteral">'\n'</span>, strBody.find( boundary.ascii(), posInside ) ) - beginPart;
+<a name="l00411"></a>00411
+<a name="l00412"></a>00412 strBody = strBody.mid( beginPart, lengthPart );
+<a name="l00413"></a>00413
+<a name="l00414"></a>00414 <span class="comment">//looking for a further boundary attribute</span>
+<a name="l00415"></a>00415 <span class="comment">//get the position of the first occurance of "boundary="</span>
+<a name="l00416"></a>00416 <span class="keywordtype">int</span> posBoundary = strBody.find( <span class="stringliteral">"boundary="</span>, 0, <span class="keyword">false</span> );
+<a name="l00417"></a>00417
+<a name="l00418"></a>00418 <span class="keywordflow">if</span>( posBoundary &gt;= 0 )
+<a name="l00419"></a>00419 {
+<a name="l00420"></a>00420 <span class="comment">//calculate positon of the first quote</span>
+<a name="l00421"></a>00421 <span class="keywordtype">int</span> posFirstQuote = posBoundary + 9;
+<a name="l00422"></a>00422
+<a name="l00423"></a>00423 <span class="comment">//get the position of closing quote</span>
+<a name="l00424"></a>00424 <span class="keywordtype">int</span> posSecondQuote = strBody.find( <span class="charliteral">'"'</span>, posFirstQuote + 1 );
+<a name="l00425"></a>00425
+<a name="l00426"></a>00426 <span class="comment">//get boundary string</span>
+<a name="l00427"></a>00427 boundary.append( strBody.mid( posFirstQuote + 1, posSecondQuote - posFirstQuote - 1 ) );
+<a name="l00428"></a>00428 }
+<a name="l00429"></a>00429 <span class="keywordflow">else</span>
+<a name="l00430"></a>00430 boundary = <span class="stringliteral">""</span>;
+<a name="l00431"></a>00431 }
+<a name="l00432"></a>00432
+<a name="l00433"></a>00433 <span class="comment">//now we get charset and transfer encoding if available in the extracted</span>
+<a name="l00434"></a>00434 <span class="comment">//part</span>
+<a name="l00435"></a>00435
+<a name="l00436"></a>00436 <span class="comment">//get the position of the first occurance of "charset="</span>
+<a name="l00437"></a>00437 <span class="keywordtype">int</span> posCharset = strBody.find( <span class="stringliteral">"charset="</span>, 0, <span class="keyword">false</span> );
+<a name="l00438"></a>00438
+<a name="l00439"></a>00439 <span class="comment">//continue, if a charset attribute was found</span>
+<a name="l00440"></a>00440 <span class="keywordflow">if</span>( posCharset &gt;= 0 )
+<a name="l00441"></a>00441 {
+<a name="l00442"></a>00442 <span class="comment">//calculate positon of the value</span>
+<a name="l00443"></a>00443 <span class="keywordtype">int</span> posBeginValue = posCharset + 8;
+<a name="l00444"></a>00444
+<a name="l00445"></a>00445 <span class="comment">//get end of the value</span>
+<a name="l00446"></a>00446 <span class="keywordtype">int</span> posEndValue = strBody.find( <span class="charliteral">'\n'</span>, posBeginValue ) - 1;
+<a name="l00447"></a>00447
+<a name="l00448"></a>00448 <span class="comment">//get charset</span>
+<a name="l00449"></a>00449 charset.append( strBody.mid( posBeginValue, posEndValue - posBeginValue + 1 ) );
+<a name="l00450"></a>00450
+<a name="l00451"></a>00451 <span class="comment">//remove quotes</span>
+<a name="l00452"></a>00452 charset.remove( <span class="charliteral">'"'</span> );
+<a name="l00453"></a>00453 <span class="comment">//remove all content after the first semicolon (inclusive)</span>
+<a name="l00454"></a>00454 <span class="keywordtype">int</span> posSemicolon = charset.find( <span class="charliteral">';'</span> );
+<a name="l00455"></a>00455 charset = charset.left( posSemicolon );
+<a name="l00456"></a>00456 }
+<a name="l00457"></a>00457
+<a name="l00458"></a>00458 <span class="comment">//get the position of the first occurance of "charset="</span>
+<a name="l00459"></a>00459 <span class="keywordtype">int</span> posEncoding = strBody.find( <span class="stringliteral">"Content-Transfer-Encoding:"</span>, 0, <span class="keyword">false</span> );
+<a name="l00460"></a>00460
+<a name="l00461"></a>00461 <span class="comment">//continue, if a charset attribute was found</span>
+<a name="l00462"></a>00462 <span class="keywordflow">if</span>( posEncoding &gt;= 0 )
+<a name="l00463"></a>00463 {
+<a name="l00464"></a>00464 <span class="comment">//calculate positon of the value</span>
+<a name="l00465"></a>00465 <span class="keywordtype">int</span> posBeginValue = posEncoding + 26;
+<a name="l00466"></a>00466
+<a name="l00467"></a>00467 <span class="comment">//get end of the value</span>
+<a name="l00468"></a>00468 <span class="keywordtype">int</span> posEndValue = strBody.find( <span class="charliteral">'\n'</span>, posBeginValue ) - 1;
+<a name="l00469"></a>00469
+<a name="l00470"></a>00470 <span class="comment">//get charset</span>
+<a name="l00471"></a>00471 encoding.append( strBody.mid( posBeginValue, posEndValue - posBeginValue + 1 ) );
+<a name="l00472"></a>00472
+<a name="l00473"></a>00473 <span class="comment">//remove quotes and spaces</span>
+<a name="l00474"></a>00474 encoding = encoding.stripWhiteSpace();
+<a name="l00475"></a>00475 encoding.remove( <span class="charliteral">'"'</span> );
+<a name="l00476"></a>00476 }
+<a name="l00477"></a>00477
+<a name="l00478"></a>00478 <span class="comment">//cut off the part header; the found blank line is separating the</span>
+<a name="l00479"></a>00479 <span class="comment">//part header from the message</span>
+<a name="l00480"></a>00480 <span class="keywordflow">if</span>( posCharset != -1 || posEncoding != -1 )
+<a name="l00481"></a>00481 {
+<a name="l00482"></a>00482 <span class="keywordtype">int</span> posBlankLine = strBody.find( <span class="stringliteral">"\n\n"</span> );
+<a name="l00483"></a>00483 strBody = strBody.mid( posBlankLine + 2 );
+<a name="l00484"></a>00484 <span class="keywordflow">while</span>( strBody[ 0 ] == <span class="charliteral">'\n'</span>)
+<a name="l00485"></a>00485 strBody.remove( 0, 1 );
+<a name="l00486"></a>00486 }
+<a name="l00487"></a>00487 }
+<a name="l00488"></a>00488 }
+<a name="l00489"></a>00489
+<a name="l00490"></a>00490 <span class="comment">//Good things come to those who wait. We have extract the message.</span>
+<a name="l00491"></a>00491 <span class="comment">//Now we have to decode the message, if it is encoded</span>
+<a name="l00492"></a>00492 <span class="keywordflow">if</span>( encoding == <span class="stringliteral">"quoted-printable"</span> )
+<a name="l00493"></a>00493 {
+<a name="l00494"></a>00494 strBody = KCodecs::quotedPrintableDecode( strBody );
+<a name="l00495"></a>00495 }
+<a name="l00496"></a>00496
+<a name="l00497"></a>00497 <span class="keywordflow">return</span> QString( strBody );
+<a name="l00498"></a>00498 }
+<a name="l00499"></a>00499
+<a name="l00500"></a><a class="code" href="classShowRecordElem.html#9c49db9d3ce2495c477c783dd5e5da7d">00500</a> QString <a class="code" href="classShowRecordElem.html#9c49db9d3ce2495c477c783dd5e5da7d">ShowRecordElem::getBoundary</a>( )<span class="keyword"> const</span>
+<a name="l00501"></a>00501 <span class="keyword"></span>{
+<a name="l00502"></a>00502 QString boundary;
+<a name="l00503"></a>00503
+<a name="l00504"></a>00504 <span class="comment">//check, whether it is a multipart message</span>
+<a name="l00505"></a>00505 <span class="keywordflow">if</span>( <a class="code" href="classShowRecordElem.html#c70dec4d7ff63aa1acffcc7229776990">m_content</a>.contains( <span class="stringliteral">"multipart"</span>, <span class="keyword">false</span> ) )
+<a name="l00506"></a>00506 {
+<a name="l00507"></a>00507 <span class="comment">//it is a multipart message</span>
+<a name="l00508"></a>00508
+<a name="l00509"></a>00509 <span class="comment">//get the position of the first occurance of "boundary="</span>
+<a name="l00510"></a>00510 <span class="keywordtype">int</span> posBoundary = <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>.find( <span class="stringliteral">"boundary="</span>, 0, <span class="keyword">false</span> );
+<a name="l00511"></a>00511
+<a name="l00512"></a>00512 <span class="comment">//continue, if a boundary attribute was found</span>
+<a name="l00513"></a>00513 <span class="keywordflow">if</span>( posBoundary &gt;= 0 )
+<a name="l00514"></a>00514 {
+<a name="l00515"></a>00515 <span class="comment">//calculate positon of the first quote</span>
+<a name="l00516"></a>00516 <span class="keywordtype">int</span> posFirstQuote = posBoundary + 9;
+<a name="l00517"></a>00517
+<a name="l00518"></a>00518 <span class="comment">//get the position of closing quote</span>
+<a name="l00519"></a>00519 <span class="keywordtype">int</span> posSecondQuote = <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>.find( <span class="charliteral">'"'</span>, posFirstQuote + 1 );
+<a name="l00520"></a>00520
+<a name="l00521"></a>00521 <span class="comment">//get boundary string</span>
+<a name="l00522"></a>00522 boundary.append( <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>.mid( posFirstQuote + 1, posSecondQuote - posFirstQuote - 1 ) );
+<a name="l00523"></a>00523 }
+<a name="l00524"></a>00524 }
+<a name="l00525"></a>00525
+<a name="l00526"></a>00526 <span class="keywordflow">return</span> boundary;
+<a name="l00527"></a>00527 }
+<a name="l00528"></a>00528
+<a name="l00529"></a><a class="code" href="classShowRecordElem.html#4919b572763cc228320420059e29b0a7">00529</a> QString <a class="code" href="classShowRecordElem.html#4919b572763cc228320420059e29b0a7">ShowRecordElem::getCharset</a>( )<span class="keyword"> const</span>
+<a name="l00530"></a>00530 <span class="keyword"></span>{
+<a name="l00531"></a>00531 QString charset;
+<a name="l00532"></a>00532
+<a name="l00533"></a>00533 <span class="comment">//get the position of the first occurance of "charset="</span>
+<a name="l00534"></a>00534 <span class="keywordtype">int</span> posCharset = <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>.find( <span class="stringliteral">"charset="</span>, 0, <span class="keyword">false</span> );
+<a name="l00535"></a>00535
+<a name="l00536"></a>00536 <span class="comment">//continue, if a charset attribute was found</span>
+<a name="l00537"></a>00537 <span class="keywordflow">if</span>( posCharset &gt;= 0 )
+<a name="l00538"></a>00538 {
+<a name="l00539"></a>00539 <span class="comment">//calculate positon of the value</span>
+<a name="l00540"></a>00540 <span class="keywordtype">int</span> posBeginValue = posCharset + 8;
+<a name="l00541"></a>00541
+<a name="l00542"></a>00542 <span class="comment">//get end of the value</span>
+<a name="l00543"></a>00543 <span class="keywordtype">int</span> posEndValue = <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>.find( <span class="charliteral">'\r'</span>, posBeginValue ) - 1;
+<a name="l00544"></a>00544
+<a name="l00545"></a>00545 <span class="comment">//get charset</span>
+<a name="l00546"></a>00546 charset.append( <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>.mid( posBeginValue, posEndValue - posBeginValue + 1 ) );
+<a name="l00547"></a>00547
+<a name="l00548"></a>00548 <span class="comment">//remove quotes</span>
+<a name="l00549"></a>00549 charset.remove( <span class="charliteral">'"'</span> );
+<a name="l00550"></a>00550 <span class="comment">//remove all content after the first semicolon (inclusive)</span>
+<a name="l00551"></a>00551 <span class="keywordtype">int</span> posSemicolon = charset.find( <span class="charliteral">';'</span> );
+<a name="l00552"></a>00552 charset = charset.left( posSemicolon );
+<a name="l00553"></a>00553 }
+<a name="l00554"></a>00554
+<a name="l00555"></a>00555 <span class="keywordflow">return</span> QString( charset );
+<a name="l00556"></a>00556 }
+<a name="l00557"></a>00557
+<a name="l00558"></a><a class="code" href="classShowRecordElem.html#9f0dcc62d28fbcec89b0af33c7e0c446">00558</a> QString <a class="code" href="classShowRecordElem.html#9f0dcc62d28fbcec89b0af33c7e0c446">ShowRecordElem::getTransferEncoding</a>( )<span class="keyword"> const</span>
+<a name="l00559"></a>00559 <span class="keyword"></span>{
+<a name="l00560"></a>00560 QString encoding;
+<a name="l00561"></a>00561
+<a name="l00562"></a>00562 <span class="comment">//get the position of the first occurance of "charset="</span>
+<a name="l00563"></a>00563 <span class="keywordtype">int</span> posEncoding = <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>.find( <span class="stringliteral">"Content-Transfer-Encoding:"</span>, 0, <span class="keyword">false</span> );
+<a name="l00564"></a>00564
+<a name="l00565"></a>00565 <span class="comment">//continue, if a charset attribute was found</span>
+<a name="l00566"></a>00566 <span class="keywordflow">if</span>( posEncoding &gt;= 0 )
+<a name="l00567"></a>00567 {
+<a name="l00568"></a>00568 <span class="comment">//calculate positon of the value</span>
+<a name="l00569"></a>00569 <span class="keywordtype">int</span> posBeginValue = posEncoding + 26;
+<a name="l00570"></a>00570
+<a name="l00571"></a>00571 <span class="comment">//get end of the value</span>
+<a name="l00572"></a>00572 <span class="keywordtype">int</span> posEndValue = <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>.find( <span class="charliteral">'\r'</span>, posBeginValue ) - 1;
+<a name="l00573"></a>00573
+<a name="l00574"></a>00574 <span class="comment">//get charset</span>
+<a name="l00575"></a>00575 encoding.append( <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>.mid( posBeginValue, posEndValue - posBeginValue + 1 ) );
+<a name="l00576"></a>00576
+<a name="l00577"></a>00577 <span class="comment">//remove quotes and spaces</span>
+<a name="l00578"></a>00578 encoding = encoding.stripWhiteSpace();
+<a name="l00579"></a>00579 encoding.remove( <span class="charliteral">'"'</span> );
+<a name="l00580"></a>00580 }
+<a name="l00581"></a>00581
+<a name="l00582"></a>00582 <span class="keywordflow">return</span> QString( encoding );
+<a name="l00583"></a>00583
+<a name="l00584"></a>00584 }
+<a name="l00585"></a>00585
+<a name="l00586"></a><a class="code" href="classShowRecordElem.html#62792e6386e65ac0050f2e02963254b0">00586</a> <span class="keywordtype">int</span> <a class="code" href="classShowRecordElem.html#62792e6386e65ac0050f2e02963254b0">ShowRecordElem::showHeader</a>( QString&amp; account )
+<a name="l00587"></a>00587 {
+<a name="l00588"></a>00588 <span class="comment">//show header</span>
+<a name="l00589"></a>00589 QString tsubject = <a class="code" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">subject</a>();
+<a name="l00590"></a>00590 QString tmailheader = <a class="code" href="classShowRecordElem.html#dd5d842c1abdd13fa03ac4a3f2f11150">header</a>();
+<a name="l00591"></a>00591
+<a name="l00592"></a>00592 <span class="comment">//create and open the window</span>
+<a name="l00593"></a>00593 <a class="code" href="classShowHeaderDialog.html">ShowHeaderDialog</a> dlg( kapp-&gt;mainWidget(), account, tsubject, tmailheader );
+<a name="l00594"></a>00594 <span class="keywordtype">int</span> ret = dlg.exec();
+<a name="l00595"></a>00595
+<a name="l00596"></a>00596 <span class="comment">//returns the matching value</span>
+<a name="l00597"></a>00597 <span class="keywordflow">return</span> ret == QDialog::Accepted ? <a class="code" href="classShowRecordElem.html#2b5bdb3ed3f940614135b9c9f1f13eb6">ShowRecordElem::continueShowHeaders</a> : <a class="code" href="classShowRecordElem.html#b6aceead6b70f3e3f5e6af530c5ac1af">ShowRecordElem::cancelShowHeaders</a>;
+<a name="l00598"></a>00598 }
+<a name="l00599"></a>00599
+<a name="l00600"></a>00600
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/showrecordelem_8h-source.html b/doc/html/showrecordelem_8h-source.html
new file mode 100644
index 0000000..fdce890
--- /dev/null
+++ b/doc/html/showrecordelem_8h-source.html
@@ -0,0 +1,202 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/showrecordelem.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>showrecordelem.h</h1><a href="showrecordelem_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> showrecord.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Thu Dec 28 2000</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2000-2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef SHOWRECORDELEM_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define SHOWRECORDELEM_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="comment">//Qt headers</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;qdom.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;qstring.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;qlistview.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;qdatetime.h&gt;</span>
+<a name="l00026"></a>00026
+<a name="l00027"></a>00027 <span class="comment">//KDE headers</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;klocale.h&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;kglobal.h&gt;</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;kdebug.h&gt;</span>
+<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;mimelib/datetime.h&gt;</span>
+<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;kmdcodec.h&gt;</span>
+<a name="l00033"></a>00033
+<a name="l00034"></a>00034 <span class="comment">//KShowmail headers</span>
+<a name="l00035"></a>00035 <span class="preprocessor">#include "<a class="code" href="showlistviewitem_8h.html">showlistviewitem.h</a>"</span>
+<a name="l00036"></a>00036 <span class="preprocessor">#include "<a class="code" href="decodeRFC2047_8h.html">decodeRFC2047.h</a>"</span>
+<a name="l00037"></a>00037 <span class="preprocessor">#include "<a class="code" href="constants_8h.html">constants.h</a>"</span>
+<a name="l00038"></a>00038 <span class="preprocessor">#include "<a class="code" href="kshowmailview_8h.html">kshowmailview.h</a>"</span>
+<a name="l00039"></a>00039 <span class="preprocessor">#include "<a class="code" href="showheaderdialog_8h.html">showheaderdialog.h</a>"</span>
+<a name="l00040"></a>00040 <span class="preprocessor">#include "<a class="code" href="headerfilter_8h.html">headerfilter.h</a>"</span>
+<a name="l00041"></a>00041 <span class="preprocessor">#include "<a class="code" href="filterlog_8h.html">filterlog.h</a>"</span>
+<a name="l00042"></a>00042
+<a name="l00043"></a>00043 <span class="keyword">using namespace </span>Constants;
+<a name="l00044"></a>00044
+<a name="l00045"></a>00045 <span class="comment">//forward class declarations</span>
+<a name="l00046"></a>00046 <span class="keyword">class </span><a class="code" href="classKshowmailView.html">KshowmailView</a>;
+<a name="l00047"></a>00047 <span class="keyword">class </span>FilterElem;
+<a name="l00048"></a>00048
+<a name="l00061"></a><a class="code" href="classShowRecordElem.html">00061</a> <span class="keyword">class </span><a class="code" href="classShowRecordElem.html">ShowRecordElem</a>
+<a name="l00062"></a>00062 {
+<a name="l00063"></a>00063
+<a name="l00064"></a>00064 <span class="keyword">public</span>:
+<a name="l00065"></a>00065
+<a name="l00070"></a><a class="code" href="classShowRecordElem.html#2b5bdb3ed3f940614135b9c9f1f13eb6">00070</a> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classShowRecordElem.html#2b5bdb3ed3f940614135b9c9f1f13eb6">continueShowHeaders</a>;
+<a name="l00071"></a>00071
+<a name="l00076"></a><a class="code" href="classShowRecordElem.html#b6aceead6b70f3e3f5e6af530c5ac1af">00076</a> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classShowRecordElem.html#b6aceead6b70f3e3f5e6af530c5ac1af">cancelShowHeaders</a>;
+<a name="l00077"></a>00077
+<a name="l00081"></a>00081 <a class="code" href="classShowRecordElem.html#aa3cd64818bfb990d5e37720cd29546c">ShowRecordElem</a> ();
+<a name="l00082"></a>00082
+<a name="l00089"></a>00089 <a class="code" href="classShowRecordElem.html#aa3cd64818bfb990d5e37720cd29546c">ShowRecordElem</a>( <span class="keywordtype">int</span> <a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>, QString&amp; uid, <span class="keywordtype">bool</span> <a class="code" href="classShowRecordElem.html#48485d7a0dfef669b6597c865a515290">isNew</a> );
+<a name="l00090"></a>00090
+<a name="l00096"></a>00096 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#28e7072cd68f18e1e07176b9c1bd5f72">setHeader</a>( <span class="keyword">const</span> QString&amp; <a class="code" href="classShowRecordElem.html#dd5d842c1abdd13fa03ac4a3f2f11150">header</a> );
+<a name="l00097"></a>00097
+<a name="l00102"></a>00102 QString <a class="code" href="classShowRecordElem.html#dd5d842c1abdd13fa03ac4a3f2f11150">header</a>() <span class="keyword">const</span>;
+<a name="l00103"></a>00103
+<a name="l00108"></a>00108 QString <a class="code" href="classShowRecordElem.html#a4d48b3072adb4f87f56ed2b5e35dbba">from</a>() <span class="keyword">const</span>;
+<a name="l00109"></a>00109
+<a name="l00114"></a>00114 QString <a class="code" href="classShowRecordElem.html#759a16f3424defc71b4cfd762b156fd1">to</a>() <span class="keyword">const</span>;
+<a name="l00115"></a>00115
+<a name="l00120"></a>00120 QString <a class="code" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">subject</a>() <span class="keyword">const</span>;
+<a name="l00121"></a>00121
+<a name="l00126"></a>00126 QString <a class="code" href="classShowRecordElem.html#8d655afdb7350fd4a27b551da7a8a797">content</a>() <span class="keyword">const</span>;
+<a name="l00127"></a>00127
+<a name="l00128"></a>00128
+<a name="l00134"></a>00134 QString <a class="code" href="classShowRecordElem.html#412ad2a7452c1f5390f2679f1d443292">date</a>() <span class="keyword">const</span>;
+<a name="l00135"></a>00135
+<a name="l00142"></a>00142 QString <a class="code" href="classShowRecordElem.html#0e554cd8f1e67b3e448054e8c6fdc91c">strUnixTime</a> () <span class="keyword">const</span>;
+<a name="l00143"></a>00143
+<a name="l00148"></a>00148 QDateTime <a class="code" href="classShowRecordElem.html#4c32fe918f4d6b65dc684c1604757c72">sentDateTime</a>() <span class="keyword">const</span>;
+<a name="l00149"></a>00149
+<a name="l00154"></a>00154 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#6d24c13e7de2fad247fff5549a96767d">setUIDL</a>( <span class="keyword">const</span> QString&amp; uid );
+<a name="l00155"></a>00155
+<a name="l00160"></a>00160 QString <a class="code" href="classShowRecordElem.html#835e045bf24090c4d6a6a9049c60e94c">uidl</a>() <span class="keyword">const</span>;
+<a name="l00161"></a>00161
+<a name="l00166"></a>00166 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#dd22d1f50be46bd9ecbbacec7606b3ed">setSize</a>( <span class="keywordtype">int</span> <a class="code" href="classShowRecordElem.html#4b4077ca5d47226ccb44b6d8373a4fbd">size</a> );
+<a name="l00167"></a>00167
+<a name="l00172"></a>00172 <span class="keywordtype">int</span> <a class="code" href="classShowRecordElem.html#4b4077ca5d47226ccb44b6d8373a4fbd">size</a>() <span class="keyword">const</span>;
+<a name="l00173"></a>00173
+<a name="l00178"></a>00178 QString <a class="code" href="classShowRecordElem.html#f5e3c42a0be5b06f414b5936d6a64056">strSize</a> () <span class="keyword">const</span>;
+<a name="l00179"></a>00179
+<a name="l00183"></a>00183 QString <a class="code" href="classShowRecordElem.html#233ccd75f668ec868ec726120d8c71d9">strSizePrefix</a>() <span class="keyword">const</span>;
+<a name="l00184"></a>00184
+<a name="l00189"></a>00189 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#4c6d52d5a2df4b7bb743128184ced8f4">setNew</a>( <span class="keywordtype">bool</span> isnew );
+<a name="l00190"></a>00190
+<a name="l00196"></a>00196 <span class="keywordtype">bool</span> <a class="code" href="classShowRecordElem.html#48485d7a0dfef669b6597c865a515290">isNew</a>() <span class="keyword">const</span>;
+<a name="l00197"></a>00197
+<a name="l00203"></a>00203 QString <a class="code" href="classShowRecordElem.html#f00398057086a7fbee1205c5d0f605a2">state</a>() <span class="keyword">const</span>;
+<a name="l00204"></a>00204
+<a name="l00209"></a>00209 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#1c31fc69dfe9794c6c77970192d455a5">setNumber</a>( <span class="keywordtype">int</span> n );
+<a name="l00210"></a>00210
+<a name="l00215"></a>00215 <span class="keywordtype">int</span> <a class="code" href="classShowRecordElem.html#62999d75baf9a6bff999c8621a419926">number</a>() <span class="keyword">const</span>;
+<a name="l00216"></a>00216
+<a name="l00223"></a>00223 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#e7f2ca5eb9a9bc95266a4f83f78cd76e">setViewItem</a>( <a class="code" href="classShowListViewItem.html">ShowListViewItem</a>* item );
+<a name="l00224"></a>00224
+<a name="l00231"></a>00231 <a class="code" href="classShowListViewItem.html">ShowListViewItem</a>* <a class="code" href="classShowRecordElem.html#e176bc1074c050afc56540849bc3664c">viewItem</a>() <span class="keyword">const</span>;
+<a name="l00232"></a>00232
+<a name="l00246"></a>00246 <a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">FilterAction_Type</a> <a class="code" href="classShowRecordElem.html#09ca2f0d70bdf8ed2bb7d75ef13bec12">applyHeaderFilter</a>( <a class="code" href="classHeaderFilter.html">HeaderFilter</a>* filter, QString account, QString&amp; mailbox, <a class="code" href="classFilterLog.html">FilterLog</a>* log = NULL );
+<a name="l00247"></a>00247
+<a name="l00255"></a>00255 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#97952e1293b679abc1891a240bd9e4f1">readOptions</a>( QDomElement&amp; elem );
+<a name="l00256"></a>00256
+<a name="l00263"></a>00263 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#fcabf6ba9c5b68ae2923bb70bf9f45b0">saveOptions</a>( QDomDocument&amp; doc, QDomElement&amp; parent );
+<a name="l00264"></a>00264
+<a name="l00270"></a>00270 <span class="keywordtype">bool</span> <a class="code" href="classShowRecordElem.html#6987a0066f420f62b5c9ec9d82ed7fb3">isSelected</a>() <span class="keyword">const</span>;
+<a name="l00271"></a>00271
+<a name="l00283"></a>00283 QString <a class="code" href="classShowRecordElem.html#27af244fc090ac05fabde1becb7bf60d">decodeMailBody</a>( QByteArray body, <span class="keywordtype">bool</span> preferHTML ) <span class="keyword">const</span>;
+<a name="l00284"></a>00284
+<a name="l00291"></a>00291 <span class="keywordtype">int</span> <a class="code" href="classShowRecordElem.html#62792e6386e65ac0050f2e02963254b0">showHeader</a>( QString&amp; account );
+<a name="l00292"></a>00292
+<a name="l00299"></a>00299 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#c467986ac8ce3c2219463028574a22c6">writeToMoveLog</a>( <a class="code" href="classFilterLog.html">FilterLog</a>* log, QString account, QString mailbox );
+<a name="l00300"></a>00300
+<a name="l00306"></a>00306 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#d015c9a856acf5ee5c5a942d3cdc39bc">writeToDeleteLog</a>( <a class="code" href="classFilterLog.html">FilterLog</a>* log, QString account );
+<a name="l00307"></a>00307
+<a name="l00311"></a>00311 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#8c138e5d2c33ec03231b8bf6ee719f7f">setMarkAtNextViewRefresh</a>();
+<a name="l00312"></a>00312
+<a name="l00313"></a>00313 <span class="keyword">private</span>:
+<a name="l00314"></a>00314
+<a name="l00318"></a><a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">00318</a> QCString <a class="code" href="classShowRecordElem.html#ca732c6667cb0424aab679785d24256a">m_header</a>;
+<a name="l00319"></a>00319
+<a name="l00323"></a><a class="code" href="classShowRecordElem.html#260019ad5471ede61b2a1958b8c31375">00323</a> QCString <a class="code" href="classShowRecordElem.html#260019ad5471ede61b2a1958b8c31375">m_from</a>;
+<a name="l00324"></a>00324
+<a name="l00328"></a><a class="code" href="classShowRecordElem.html#02de09b7b36dfcce893a1e79ff8ba34c">00328</a> QCString <a class="code" href="classShowRecordElem.html#02de09b7b36dfcce893a1e79ff8ba34c">m_to</a>;
+<a name="l00329"></a>00329
+<a name="l00333"></a><a class="code" href="classShowRecordElem.html#1c83a6d029a73795076161efd3842893">00333</a> QCString <a class="code" href="classShowRecordElem.html#1c83a6d029a73795076161efd3842893">m_subject</a>;
+<a name="l00334"></a>00334
+<a name="l00338"></a><a class="code" href="classShowRecordElem.html#b3f665656a06d88cea46345bcb1a51a9">00338</a> QDateTime <a class="code" href="classShowRecordElem.html#b3f665656a06d88cea46345bcb1a51a9">m_unixDate</a>;
+<a name="l00339"></a>00339
+<a name="l00343"></a><a class="code" href="classShowRecordElem.html#c70dec4d7ff63aa1acffcc7229776990">00343</a> QCString <a class="code" href="classShowRecordElem.html#c70dec4d7ff63aa1acffcc7229776990">m_content</a>;
+<a name="l00344"></a>00344
+<a name="l00348"></a><a class="code" href="classShowRecordElem.html#7da2621d1de438c9118fbcead3c23506">00348</a> QString <a class="code" href="classShowRecordElem.html#7da2621d1de438c9118fbcead3c23506">m_uid</a>;
+<a name="l00349"></a>00349
+<a name="l00353"></a><a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">00353</a> <span class="keywordtype">int</span> <a class="code" href="classShowRecordElem.html#3ef7da0fb8e84e7e672888aa349de622">m_size</a>;
+<a name="l00354"></a>00354
+<a name="l00358"></a><a class="code" href="classShowRecordElem.html#f9f2112f8e2b1c3dfef0286581a892b4">00358</a> <span class="keywordtype">bool</span> <a class="code" href="classShowRecordElem.html#f9f2112f8e2b1c3dfef0286581a892b4">m_new</a>;
+<a name="l00359"></a>00359
+<a name="l00363"></a><a class="code" href="classShowRecordElem.html#8583bafac2418ddd8c7d881926851f05">00363</a> <span class="keywordtype">int</span> <a class="code" href="classShowRecordElem.html#8583bafac2418ddd8c7d881926851f05">m_nNumber</a>;
+<a name="l00364"></a>00364
+<a name="l00371"></a><a class="code" href="classShowRecordElem.html#c3f6d14162aafdedf141489ad5d5307a">00371</a> <span class="keywordtype">bool</span> <a class="code" href="classShowRecordElem.html#c3f6d14162aafdedf141489ad5d5307a">markAtViewRefresh</a>;
+<a name="l00372"></a>00372
+<a name="l00378"></a><a class="code" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">00378</a> <a class="code" href="classShowListViewItem.html">ShowListViewItem</a>* <a class="code" href="classShowRecordElem.html#bf60523f76dbfb970f40d078b089aed3">m_pItem</a>;
+<a name="l00379"></a>00379
+<a name="l00386"></a><a class="code" href="classShowRecordElem.html#cf1207160bae1cd017c282b808e44e02">00386</a> FilterElem* <a class="code" href="classShowRecordElem.html#cf1207160bae1cd017c282b808e44e02">m_pFilter</a>;
+<a name="l00387"></a>00387
+<a name="l00399"></a>00399 QCString <a class="code" href="classShowRecordElem.html#8070b0cbba2b2281a78bfdae3334a981">scanHeader</a>( <span class="keyword">const</span> QString&amp; item ) <span class="keyword">const</span>;
+<a name="l00400"></a>00400
+<a name="l00405"></a>00405 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#373e98f7a94fd659ff1174ef7346de08">setFrom</a>( <span class="keyword">const</span> QCString&amp; <a class="code" href="classShowRecordElem.html#a4d48b3072adb4f87f56ed2b5e35dbba">from</a> );
+<a name="l00406"></a>00406
+<a name="l00411"></a>00411 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#fe4b012dfc137770f35879ea2264ba19">setTo</a>( <span class="keyword">const</span> QCString&amp; <a class="code" href="classShowRecordElem.html#759a16f3424defc71b4cfd762b156fd1">to</a> );
+<a name="l00412"></a>00412
+<a name="l00417"></a>00417 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#bad7c7440195e0284b42c79d281bfbf2">setSubject</a>( <span class="keyword">const</span> QCString&amp; <a class="code" href="classShowRecordElem.html#b3b6657b842bbd5e4759fe7f55534416">subject</a> );
+<a name="l00418"></a>00418
+<a name="l00423"></a>00423 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#7fe7272db1f8f38f6fa404611acf7b8d">setDate</a>( <span class="keyword">const</span> QCString&amp; <a class="code" href="classShowRecordElem.html#412ad2a7452c1f5390f2679f1d443292">date</a> );
+<a name="l00424"></a>00424
+<a name="l00429"></a>00429 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#8ab7746aad762c2c2e0fe80c4a496f9a">setContent</a>( <span class="keyword">const</span> QCString&amp; <a class="code" href="classShowRecordElem.html#8d655afdb7350fd4a27b551da7a8a797">content</a> );
+<a name="l00430"></a>00430
+<a name="l00436"></a>00436 <span class="keywordtype">void</span> <a class="code" href="classShowRecordElem.html#fe3536020ed0f47f0ec4c97839068cc1">setFilter</a>( FilterElem* filter );
+<a name="l00437"></a>00437
+<a name="l00443"></a>00443 QString <a class="code" href="classShowRecordElem.html#9c49db9d3ce2495c477c783dd5e5da7d">getBoundary</a>() <span class="keyword">const</span>;
+<a name="l00444"></a>00444
+<a name="l00450"></a>00450 QString <a class="code" href="classShowRecordElem.html#4919b572763cc228320420059e29b0a7">getCharset</a>() <span class="keyword">const</span>;
+<a name="l00451"></a>00451
+<a name="l00458"></a>00458 QString <a class="code" href="classShowRecordElem.html#9f0dcc62d28fbcec89b0af33c7e0c446">getTransferEncoding</a>() <span class="keyword">const</span>;
+<a name="l00459"></a>00459
+<a name="l00460"></a>00460 };
+<a name="l00461"></a>00461
+<a name="l00462"></a>00462 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/tab_b.gif b/doc/html/tab_b.gif
new file mode 100644
index 0000000..0d62348
--- /dev/null
+++ b/doc/html/tab_b.gif
Binary files differ
diff --git a/doc/html/tab_l.gif b/doc/html/tab_l.gif
new file mode 100644
index 0000000..9b1e633
--- /dev/null
+++ b/doc/html/tab_l.gif
Binary files differ
diff --git a/doc/html/tab_r.gif b/doc/html/tab_r.gif
new file mode 100644
index 0000000..ce9dd9f
--- /dev/null
+++ b/doc/html/tab_r.gif
Binary files differ
diff --git a/doc/html/tabs.css b/doc/html/tabs.css
new file mode 100644
index 0000000..a61552a
--- /dev/null
+++ b/doc/html/tabs.css
@@ -0,0 +1,102 @@
+/* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */
+
+DIV.tabs
+{
+ float : left;
+ width : 100%;
+ background : url("tab_b.gif") repeat-x bottom;
+ margin-bottom : 4px;
+}
+
+DIV.tabs UL
+{
+ margin : 0px;
+ padding-left : 10px;
+ list-style : none;
+}
+
+DIV.tabs LI, DIV.tabs FORM
+{
+ display : inline;
+ margin : 0px;
+ padding : 0px;
+}
+
+DIV.tabs FORM
+{
+ float : right;
+}
+
+DIV.tabs A
+{
+ float : left;
+ background : url("tab_r.gif") no-repeat right top;
+ border-bottom : 1px solid #84B0C7;
+ font-size : x-small;
+ font-weight : bold;
+ text-decoration : none;
+}
+
+DIV.tabs A:hover
+{
+ background-position: 100% -150px;
+}
+
+DIV.tabs A:link, DIV.tabs A:visited,
+DIV.tabs A:active, DIV.tabs A:hover
+{
+ color: #1A419D;
+}
+
+DIV.tabs SPAN
+{
+ float : left;
+ display : block;
+ background : url("tab_l.gif") no-repeat left top;
+ padding : 5px 9px;
+ white-space : nowrap;
+}
+
+DIV.tabs INPUT
+{
+ float : right;
+ display : inline;
+ font-size : 1em;
+}
+
+DIV.tabs TD
+{
+ font-size : x-small;
+ font-weight : bold;
+ text-decoration : none;
+}
+
+
+
+/* Commented Backslash Hack hides rule from IE5-Mac \*/
+DIV.tabs SPAN {float : none;}
+/* End IE5-Mac hack */
+
+DIV.tabs A:hover SPAN
+{
+ background-position: 0% -150px;
+}
+
+DIV.tabs LI#current A
+{
+ background-position: 100% -150px;
+ border-width : 0px;
+}
+
+DIV.tabs LI#current SPAN
+{
+ background-position: 0% -150px;
+ padding-bottom : 6px;
+}
+
+DIV.nav
+{
+ background : none;
+ border : none;
+ border-bottom : 1px solid #84B0C7;
+}
diff --git a/doc/html/types_8h-source.html b/doc/html/types_8h-source.html
new file mode 100644
index 0000000..1577e33
--- /dev/null
+++ b/doc/html/types_8h-source.html
@@ -0,0 +1,105 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/types.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>types.h</h1><a href="types_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">//</span>
+<a name="l00002"></a>00002 <span class="comment">// C++ Interface: types</span>
+<a name="l00003"></a>00003 <span class="comment">//</span>
+<a name="l00004"></a>00004 <span class="comment">// Description:</span>
+<a name="l00005"></a>00005 <span class="comment">// All specail types for KShowMail</span>
+<a name="l00006"></a>00006 <span class="comment">//</span>
+<a name="l00007"></a>00007 <span class="comment">//</span>
+<a name="l00008"></a>00008 <span class="comment">// Author: Ulrich Weigelt &lt;ulrich.weigelt@gmx.de&gt;, (C) 2007</span>
+<a name="l00009"></a>00009 <span class="comment">//</span>
+<a name="l00010"></a>00010 <span class="comment">// Copyright: See COPYING file that comes with this distribution</span>
+<a name="l00011"></a>00011 <span class="comment">//</span>
+<a name="l00012"></a>00012 <span class="comment">//</span>
+<a name="l00013"></a>00013
+<a name="l00014"></a>00014 <span class="preprocessor">#ifndef TYPES_H</span>
+<a name="l00015"></a>00015 <span class="preprocessor"></span><span class="preprocessor">#define TYPES_H</span>
+<a name="l00016"></a>00016 <span class="preprocessor"></span>
+<a name="l00017"></a>00017 <span class="comment">//Qt headers</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include &lt;qvaluelist.h&gt;</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;qmap.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;qstring.h&gt;</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="keyword">using namespace </span>std;
+<a name="l00023"></a>00023
+<a name="l00027"></a><a class="code" href="namespaceTypes.html">00027</a> <span class="keyword">namespace </span>Types
+<a name="l00028"></a>00028 {
+<a name="l00032"></a><a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565">00032</a> <span class="keyword">enum</span> <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565">State_Type</a> {<a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565c37aa546c58cdb9c8efabbbe513f8380">idle</a>,
+<a name="l00034"></a>00034 <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa565f49cd232f53f8851506c138924f2ec65">deleting</a>,
+<a name="l00036"></a>00036 <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa5653cde4c681a768eef7df3659c849a34b6">configure</a>,
+<a name="l00040"></a>00040 <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa56575f7f7187ee9497e63584b0ccb17a919">executing</a>,
+<a name="l00042"></a>00042 <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa5655ee02dbb2bbc5f45a1a2517f7536c77c">showing</a>,
+<a name="l00044"></a><a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa56592bd813e8e24cdf9c233a4cf26ebb691">00044</a> <a class="code" href="namespaceTypes.html#dc227eb5720632a8290561b001aaa56592bd813e8e24cdf9c233a4cf26ebb691">refreshing</a>
+<a name="l00045"></a>00045 };
+<a name="l00046"></a>00046
+<a name="l00050"></a><a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">00050</a> <span class="keyword">enum</span> <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6">AccountState_Type</a>
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052 <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6a15826a259a1b9518c05738511bca3c7">AccountIdle</a>,
+<a name="l00054"></a>00054 <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6c13599f1c51b33a59b319794917ccff5">AccountDeleting</a>,
+<a name="l00056"></a>00056 <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b63accada2afa1ad270e3b25c14cae5fd9">AccountDownloading</a>,
+<a name="l00058"></a><a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6ba5316f9cbdb41a05f75ebe4976865b9">00058</a> <a class="code" href="namespaceTypes.html#57c868019acd102e855ff50f6043c1b6ba5316f9cbdb41a05f75ebe4976865b9">AccountRefreshing</a>
+<a name="l00059"></a>00059 };
+<a name="l00060"></a>00060
+<a name="l00064"></a><a class="code" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">00064</a> <span class="keyword">typedef</span> QValueList&lt;int&gt; <a class="code" href="namespaceTypes.html#48fad16d3707caeaf47bb1e8fab4be55">MailNumberList_Type</a>;
+<a name="l00065"></a>00065
+<a name="l00071"></a><a class="code" href="namespaceTypes.html#ca963e9ff87e4dfc99a0123af22c0346">00071</a> <span class="keyword">typedef</span> QMap&lt;QString, bool&gt; <a class="code" href="namespaceTypes.html#ca963e9ff87e4dfc99a0123af22c0346">AccountTaskMap_Type</a>;
+<a name="l00072"></a>00072
+<a name="l00076"></a><a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">00076</a> <span class="keyword">enum</span> <a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">FilterAction_Type</a>
+<a name="l00077"></a>00077 {
+<a name="l00078"></a>00078 <a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf0e2f723024c86b001d2c0d50cc70e456">FActPass</a>,
+<a name="l00079"></a>00079 <a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf9de5e046888ae556dd3f4548957fcf10">FActDelete</a>,
+<a name="l00080"></a>00080 <a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf0b8c53628aabb517f41d6ccdf5bf5d4c">FActMark</a>,
+<a name="l00081"></a>00081 <a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf4f2a44934f9b85ed07832ccf32016462">FActMove</a>,
+<a name="l00082"></a>00082 <a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adfc54805588ea5ecd697098c55a3ec73a1">FActSpamcheck</a>,
+<a name="l00083"></a>00083 <a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf6b838ac6d09fdaade0e40f4a50d33b68">FActIgnore</a>,
+<a name="l00084"></a><a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adfb62372bfae14c67a307649aa9f2f7f34">00084</a> <a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adfb62372bfae14c67a307649aa9f2f7f34">FActNone</a>
+<a name="l00085"></a>00085 };
+<a name="l00086"></a>00086
+<a name="l00091"></a><a class="code" href="structTypes_1_1DownloadActionParams__Type.html">00091</a> <span class="keyword">struct </span><a class="code" href="structTypes_1_1DownloadActionParams__Type.html">DownloadActionParams_Type</a>
+<a name="l00092"></a>00092 {
+<a name="l00093"></a><a class="code" href="structTypes_1_1DownloadActionParams__Type.html#d41d45e85476d483baa76fd209ea4cff">00093</a> <a class="code" href="namespaceTypes.html#ce032cf029e8037fd21721b33e3a6adf">FilterAction_Type</a> <a class="code" href="structTypes_1_1DownloadActionParams__Type.html#d41d45e85476d483baa76fd209ea4cff">action</a>;
+<a name="l00094"></a><a class="code" href="structTypes_1_1DownloadActionParams__Type.html#2111052968efa3f277babdd0de6a5ed1">00094</a> QString <a class="code" href="structTypes_1_1DownloadActionParams__Type.html#2111052968efa3f277babdd0de6a5ed1">mailbox</a>;
+<a name="l00095"></a>00095 };
+<a name="l00096"></a>00096
+<a name="l00101"></a><a class="code" href="namespaceTypes.html#28b7da8de2bbe1b7a098d41242e78ab7">00101</a> <span class="keyword">typedef</span> QMap&lt;int, DownloadActionParams_Type&gt; <a class="code" href="namespaceTypes.html#28b7da8de2bbe1b7a098d41242e78ab7">MailToDownloadMap_Type</a>;
+<a name="l00102"></a>00102
+<a name="l00106"></a><a class="code" href="structTypes_1_1FilterCriteria__Type.html">00106</a> <span class="keyword">struct </span><a class="code" href="structTypes_1_1FilterCriteria__Type.html">FilterCriteria_Type</a>
+<a name="l00107"></a>00107 {
+<a name="l00108"></a><a class="code" href="structTypes_1_1FilterCriteria__Type.html#9866add14b0f3c62082e62e3b0992e9b">00108</a> <span class="keywordtype">int</span> <a class="code" href="structTypes_1_1FilterCriteria__Type.html#9866add14b0f3c62082e62e3b0992e9b">source</a>;
+<a name="l00109"></a><a class="code" href="structTypes_1_1FilterCriteria__Type.html#825ed5a5486fd08ea46073e108105681">00109</a> <span class="keywordtype">int</span> <a class="code" href="structTypes_1_1FilterCriteria__Type.html#825ed5a5486fd08ea46073e108105681">condition</a>;
+<a name="l00110"></a><a class="code" href="structTypes_1_1FilterCriteria__Type.html#ba4af96342c299a576bbe4d0628192f5">00110</a> uint <a class="code" href="structTypes_1_1FilterCriteria__Type.html#ba4af96342c299a576bbe4d0628192f5">numValue</a>;
+<a name="l00111"></a><a class="code" href="structTypes_1_1FilterCriteria__Type.html#30e8afe468fdbcc1483ddfec89602c92">00111</a> QString <a class="code" href="structTypes_1_1FilterCriteria__Type.html#30e8afe468fdbcc1483ddfec89602c92">txtValue</a>;
+<a name="l00112"></a><a class="code" href="structTypes_1_1FilterCriteria__Type.html#88f3fbe98218173cdb417423a890832c">00112</a> <span class="keywordtype">bool</span> <a class="code" href="structTypes_1_1FilterCriteria__Type.html#88f3fbe98218173cdb417423a890832c">cs</a>;
+<a name="l00113"></a>00113 };
+<a name="l00114"></a>00114
+<a name="l00118"></a><a class="code" href="namespaceTypes.html#2eaafd5612933c2e6ab8dd15593969a2">00118</a> <span class="keyword">typedef</span> list&lt;FilterCriteria_Type&gt; <a class="code" href="namespaceTypes.html#2eaafd5612933c2e6ab8dd15593969a2">FilterCriteriaList_Type</a>;
+<a name="l00119"></a>00119
+<a name="l00120"></a>00120 }
+<a name="l00121"></a>00121
+<a name="l00122"></a>00122 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/uniqueapp_8cpp-source.html b/doc/html/uniqueapp_8cpp-source.html
new file mode 100644
index 0000000..841c2e5
--- /dev/null
+++ b/doc/html/uniqueapp_8cpp-source.html
@@ -0,0 +1,99 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail: kshowmail/uniqueapp.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>uniqueapp.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> uniqueapp.cpp - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Mon Nov 19 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#include "uniqueapp.h"</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;iostream&gt;</span>
+<a name="l00020"></a>00020
+<a name="l00021"></a>00021
+<a name="l00022"></a><a class="code" href="classUniqueApp.html#ecfa67080f62f6ec776089de43e920ba">00022</a> <a class="code" href="classUniqueApp.html#ecfa67080f62f6ec776089de43e920ba">UniqueApp::UniqueApp</a>()
+<a name="l00023"></a>00023 {
+<a name="l00024"></a>00024 <a class="code" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a> = NULL;
+<a name="l00025"></a>00025 }
+<a name="l00026"></a>00026
+<a name="l00027"></a><a class="code" href="classUniqueApp.html#c0f5a87150f0c1a09ada9996fba1ffa2">00027</a> <a class="code" href="classUniqueApp.html#c0f5a87150f0c1a09ada9996fba1ffa2">UniqueApp::~UniqueApp</a>()
+<a name="l00028"></a>00028 {}
+<a name="l00029"></a>00029
+<a name="l00030"></a><a class="code" href="classUniqueApp.html#41127093415c53fea5560a51a83d0dde">00030</a> <span class="keywordtype">int</span> <a class="code" href="classUniqueApp.html#41127093415c53fea5560a51a83d0dde">UniqueApp::newInstance</a> ()
+<a name="l00031"></a>00031 {
+<a name="l00032"></a>00032 <span class="comment">//start our application</span>
+<a name="l00033"></a>00033 <span class="comment">//---------------------</span>
+<a name="l00034"></a>00034
+<a name="l00035"></a>00035 <span class="comment">//at the first invoke of newInstance() create a new instance of kshowmail</span>
+<a name="l00036"></a>00036 <span class="keywordflow">if</span> (<a class="code" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a> == NULL)
+<a name="l00037"></a>00037 {
+<a name="l00038"></a>00038 <a class="code" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a> = <span class="keyword">new</span> <a class="code" href="classKShowMailApp.html">KShowMailApp</a> ();
+<a name="l00039"></a>00039 }
+<a name="l00040"></a>00040
+<a name="l00041"></a>00041 <span class="comment">//frage das ConfigList-Objekt, ob die KShowMail beim Starten</span>
+<a name="l00042"></a>00042 <span class="comment">//normal oder nur in der Taskleiste gezeigt werden soll</span>
+<a name="l00043"></a>00043 <span class="keywordflow">if</span>( <a class="code" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a>-&gt;<a class="code" href="classKShowMailApp.html#5c7aa11169cab91aefb86d4b3cc7a767">m_ConfigList</a>.<a class="code" href="classConfigList.html#6b5567437e81508f071d31acb4509994">startMinimized</a>() )
+<a name="l00044"></a>00044 {
+<a name="l00045"></a>00045 <span class="comment">//lege die App auf die Taskleiste</span>
+<a name="l00046"></a>00046 <a class="code" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a>-&gt;showMinimized ();
+<a name="l00047"></a>00047 <a class="code" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a>-&gt;hide();
+<a name="l00048"></a>00048 }
+<a name="l00049"></a>00049 <span class="keywordflow">else</span>
+<a name="l00050"></a>00050 {
+<a name="l00051"></a>00051 <span class="comment">//zeige das Hauptfenster</span>
+<a name="l00052"></a>00052 <a class="code" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a>-&gt;showNormal ();
+<a name="l00053"></a>00053 <a class="code" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a>-&gt;raise();
+<a name="l00054"></a>00054 }
+<a name="l00055"></a>00055
+<a name="l00056"></a>00056 <span class="comment">//Kommandozeile-Argumente auswerten</span>
+<a name="l00057"></a>00057 <span class="comment">//---------------------------------</span>
+<a name="l00058"></a>00058
+<a name="l00059"></a>00059 <span class="comment">//die in main() eingelesenen Kommandozeile-Argumente in ein</span>
+<a name="l00060"></a>00060 <span class="comment">//KCmdLineArgs-Objekt ablegen</span>
+<a name="l00061"></a>00061 KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
+<a name="l00062"></a>00062
+<a name="l00063"></a>00063 <span class="comment">//wenn als Kommandozeilen-Argument "config" übergeben wurde,</span>
+<a name="l00064"></a>00064 <span class="comment">//starte jetzt den Konfigurationsdialog</span>
+<a name="l00065"></a>00065 <span class="keywordflow">if</span> ( args-&gt;isSet( CMDLINE_CONFIG ) )
+<a name="l00066"></a>00066 <a class="code" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a>-&gt;<a class="code" href="classKShowMailApp.html#9d907211db6387cf6e395c22a9642c3b">slotSetup</a>();
+<a name="l00067"></a>00067
+<a name="l00068"></a>00068 <span class="comment">//wenn als Kommandozeile-Argument "refresh" übergeben wurde,</span>
+<a name="l00069"></a>00069 <span class="comment">//schaue sofort nach neue Mails</span>
+<a name="l00070"></a>00070 <span class="keywordflow">if</span> ( args-&gt;isSet ( CMDLINE_REFRESH ) )
+<a name="l00071"></a>00071 <a class="code" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a>-&gt;<a class="code" href="classKShowMailApp.html#8c64c6da0904a063988211fc2e5b5ee7">slotRefresh</a>();
+<a name="l00072"></a>00072
+<a name="l00073"></a>00073 <span class="comment">//lösche alle Kommandozeilen-Argumente im Objekt</span>
+<a name="l00074"></a>00074 args-&gt;clear ();
+<a name="l00075"></a>00075
+<a name="l00076"></a>00076 <span class="keywordflow">return</span> 0;
+<a name="l00077"></a>00077 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Thu Jul 5 19:36:07 2007 for kshowmail by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/html/uniqueapp_8h-source.html b/doc/html/uniqueapp_8h-source.html
new file mode 100644
index 0000000..5a26d9b
--- /dev/null
+++ b/doc/html/uniqueapp_8h-source.html
@@ -0,0 +1,75 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>kshowmail.kdevelop: Daten/Documents/programmieren/kshowmail/kshowmail/kshowmail/uniqueapp.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.0 -->
+<div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="classes.html"><span>Classes</span></a></li>
+ <li id="current"><a href="files.html"><span>Files</span></a></li>
+ <li><a href="dirs.html"><span>Directories</span></a></li>
+ </ul></div>
+<div class="tabs">
+ <ul>
+ <li><a href="files.html"><span>File&nbsp;List</span></a></li>
+ <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
+ </ul></div>
+<div class="nav">
+<a class="el" href="dir_4c3e996e4ea01e6106d6ef3aca55c519.html">Daten</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_eb9956c7aa0624228561e224b45aacad.html">Documents</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_cf56118a1054db7be5b5087f628656ea.html">programmieren</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_c781d53ee57665ea2fc7bb307e109f21.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_741aef7887f9b78088ef0c30f6686ad1.html">kshowmail</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_656923b733374505e0e2f68ecb68d952.html">kshowmail</a></div>
+<h1>uniqueapp.h</h1><a href="uniqueapp_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/***************************************************************************</span>
+<a name="l00002"></a>00002 <span class="comment"> uniqueapp.h - description</span>
+<a name="l00003"></a>00003 <span class="comment"> -------------------</span>
+<a name="l00004"></a>00004 <span class="comment"> begin : Mon Nov 19 2001</span>
+<a name="l00005"></a>00005 <span class="comment"> copyright : (C) 2001 by Eggert Ehmke</span>
+<a name="l00006"></a>00006 <span class="comment"> email : eggert.ehmke@berlin.de</span>
+<a name="l00007"></a>00007 <span class="comment"> ***************************************************************************/</span>
+<a name="l00008"></a>00008
+<a name="l00009"></a>00009 <span class="comment">/***************************************************************************</span>
+<a name="l00010"></a>00010 <span class="comment"> * *</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free software; you can redistribute it and/or modify *</span>
+<a name="l00012"></a>00012 <span class="comment"> * it under the terms of the GNU General Public License as published by *</span>
+<a name="l00013"></a>00013 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span>
+<a name="l00014"></a>00014 <span class="comment"> * (at your option) any later version. *</span>
+<a name="l00015"></a>00015 <span class="comment"> * *</span>
+<a name="l00016"></a>00016 <span class="comment"> ***************************************************************************/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef UNIQUEAPP_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define UNIQUEAPP_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="comment">//KDE-Header</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;kwin.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;kcmdlineargs.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;kuniqueapplication.h&gt;</span>
+<a name="l00025"></a>00025
+<a name="l00026"></a>00026 <span class="comment">//KShowMail-Header</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include "<a class="code" href="kshowmail_8h.html">kshowmail.h</a>"</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include "<a class="code" href="constants_8h.html">constants.h</a>"</span>
+<a name="l00029"></a>00029
+<a name="l00030"></a>00030 <span class="keyword">using namespace </span>Constants;
+<a name="l00031"></a>00031
+<a name="l00037"></a><a class="code" href="classUniqueApp.html">00037</a> <span class="keyword">class </span><a class="code" href="classUniqueApp.html">UniqueApp</a> : <span class="keyword">public</span> KUniqueApplication {
+<a name="l00038"></a>00038
+<a name="l00039"></a>00039 <span class="keyword">public</span>:
+<a name="l00040"></a>00040
+<a name="l00044"></a>00044 <a class="code" href="classUniqueApp.html#ecfa67080f62f6ec776089de43e920ba">UniqueApp</a>();
+<a name="l00045"></a>00045
+<a name="l00049"></a>00049 <a class="code" href="classUniqueApp.html#c0f5a87150f0c1a09ada9996fba1ffa2">~UniqueApp</a>();
+<a name="l00050"></a>00050
+<a name="l00054"></a>00054 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classUniqueApp.html#41127093415c53fea5560a51a83d0dde">newInstance</a> ();
+<a name="l00055"></a>00055
+<a name="l00056"></a>00056
+<a name="l00057"></a>00057 <span class="keyword">private</span>:
+<a name="l00058"></a>00058
+<a name="l00062"></a><a class="code" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">00062</a> <a class="code" href="classKShowMailApp.html">KShowMailApp</a>* <a class="code" href="classUniqueApp.html#e886ded882ebbd15b4224780392a0e22">m_pApp</a>;
+<a name="l00063"></a>00063 };
+<a name="l00064"></a>00064
+<a name="l00065"></a>00065 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 1 21:59:49 2008 for kshowmail.kdevelop by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
+</body>
+</html>
diff --git a/doc/hu/Makefile.am b/doc/hu/Makefile.am
new file mode 100644
index 0000000..857fbfb
--- /dev/null
+++ b/doc/hu/Makefile.am
@@ -0,0 +1,10 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+
+
+EXTRA_DIST = index.docbook
+
+####### kdevelop will overwrite this part!!! (end)############
+
+KDE_LANG = hu
+KDE_DOCS = kshowmail
+
diff --git a/doc/hu/index.docbook b/doc/hu/index.docbook
new file mode 100644
index 0000000..7bca91e
--- /dev/null
+++ b/doc/hu/index.docbook
@@ -0,0 +1,481 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1-Based Variant V1.0//EN" "dtd/kdex.dtd" [
+ <!ENTITY kshowmail '<application>Kshowmail</application>'>
+ <!ENTITY kapp "&kshowmail;"><!-- replace kshowmail here -->
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % Hungarian "INCLUDE"><!-- change language only here -->
+
+
+ <!-- Do not define any other entities; instead, use the entities
+ from kde-genent.entities and $LANG/user.entities. -->
+]>
+<!-- kdoctemplate v0.8 October 1 1999
+ Minor update to "Credits and Licenses" section on August 24, 2000
+ Removed "Revision history" section on 22 January 2001 -->
+
+<!-- ................................................................ -->
+
+<!-- The language must NOT be changed here. -->
+
+<book lang="&language;">
+
+<!-- This header contains all of the meta-information for the document such
+as Authors, publish date, the abstract, and Keywords -->
+
+<bookinfo>
+<title>A Kshowmail K&eacute;zik&ouml;nyv</title>
+
+<authorgroup>
+<author>
+<firstname>Eggert</firstname>
+<surname>Ehmke</surname>
+<affiliation>
+<address><email>eggert.ehmke@berlin.de</email></address>
+</affiliation>
+</author>
+<author>
+<firstname>Allistar</firstname>
+<surname>Melville</surname>
+<affiliation>
+<address><email>allistar@silvermoon.co.nz</email></address>
+</affiliation>
+</author>
+</authorgroup>
+
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+
+<copyright>
+<year>2000</year>
+<year>2001</year>
+<year>2002</year>
+<year>2003</year>
+<year>2004</year>
+<holder>Eggert Ehmke</holder>
+</copyright>
+<!-- Translators: put here the copyright notice of the translation -->
+<!-- Put here the FDL notice. Read the explanation in fdl-notice.docbook
+ and in the FDL itself on how to use it. -->
+<legalnotice>&FDLNotice;</legalnotice>
+
+<!-- Date and version information of the documentation
+Don't forget to include this last date and this last revision number, we
+need them for translation coordination !
+Please respect the format of the date (DD/MM/YYYY) and of the version
+(V.MM.LL), it could be used by automation scripts.
+Do NOT change these in the translation. -->
+
+<date>09/10/2003</date>
+<releaseinfo>3.0.6</releaseinfo>
+
+<!-- Abstract about this handbook -->
+
+<abstract>
+<para>
+Ez a k&eacute;zik&ouml;nyv a Kshowmail 3.0.6 verzi&oacute;j&aacute;t &iacute;rja le
+</para>
+</abstract>
+
+<!-- This is a set of Keywords for indexing by search engines.
+Please at least include KDE, the KDE package it is in, the name
+ of your application, and a few relevant keywords. -->
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kshowmail</keyword>
+<keyword>kmail</keyword>
+<keyword>pop3</keyword>
+<keyword>&uuml;zenet ellen&ocirc;rz&ocirc;</keyword>
+</keywordset>
+
+</bookinfo>
+
+<!-- The contents of the documentation begin here. Label
+each chapter so with the id attribute. This is necessary for two reasons: it
+allows you to easily reference the chapter from other chapters of your
+document, and if there is no ID, the name of the generated HTML files will vary
+from time to time making it hard to manage for maintainers and for the CVS
+system. Any chapter labelled (OPTIONAL) may be left out at the author's
+discretion. Other chapters should not be left out in order to maintain a
+consistent documentation style across all KDE apps. -->
+
+<chapter id="introduction">
+<title>Bevezet&eacute;s</title>
+
+<!-- The introduction chapter contains a brief introduction for the
+application that explains what it does and where to report
+problems. Basically a long version of the abstract. Don't include a
+revision history. (see installation appendix comment) -->
+
+<para>
+Kshowmail egy KDE eszk&ouml;z amely a POP3 szerverre be&eacute;rkez&ocirc; &uuml;zeneteket figyeli.
+Az &uuml;zenetek fejl&eacute;ce &eacute;s az &uuml;zenet teljes tartalma megtekinthet&ocirc; an&eacute;lk&uuml;l, hogy let&ouml;lten&eacute;nk
+&ocirc;ket a helyi levelez&ocirc;rendszerbe.
+A nemk&iacute;v&aacute;natos &uuml;zenetek t&ouml;r&ouml;lhet&ocirc;k a szerverr&ocirc;l.
+Az &uuml;zenetek list&aacute;ja id&ocirc;kapcsol&oacute;k be&aacute;ll&iacute;t&aacute;val friss&iacute;thet&ocirc;.
+Sz&ucirc;r&ocirc;k hozhat&oacute;k l&eacute;tre az ismert rekl&aacute;m&uuml;zenetek &eacute;s egy&eacute;b m&aacute;s nemk&iacute;v&aacute;natos &uuml;zenetek kijel&ouml;l&eacute;s&eacute;re.
+A sz&ucirc;r&ocirc;k &aacute;ltal kijel&ouml;lt &uuml;zenetek automatikusan t&ouml;r&ouml;lhet&ocirc;k.
+&Uacute;j &uuml;zenetek &eacute;rkez&eacute;sekor hangjelz&eacute;s j&aacute;tszhat&oacute;.
+Felhaszn&aacute;l&oacute;i parancsok, mint p&eacute;ld&aacute;ul fetchmail vagy sendmail konfigur&aacute;lhat&oacute; a parancs men&uuml; seg&iacute;ts&eacute;g&eacute;vel.
+Speci&aacute;lis parancs defini&aacute;lhat&oacute; reklam&aacute;l&oacute; levelek k&uuml;ld&eacute;s&eacute;re nemk&iacute;v&aacute;natos rekl&aacute;m&uuml;zenetekre v&aacute;laszul.
+A program t&aacute;mogatja t&ouml;bb p&oacute;stal&aacute;da egyidej&ucirc; figyel&eacute;s&eacute;t.
+</para>
+</chapter>
+
+<chapter id="using-kshowmail">
+<title>A Kshowmail haszn&aacute;lata</title>
+
+<!-- This chapter should tell the user how to use your app. You should use as
+many sections (Chapter, Sect1, Sect3, etc...) as is necessary to fully document
+your application. -->
+
+<sect1 id="kshowmail-features">
+<title>A Kshowmail aszn&aacute;lata &aacute;ltal&aacute;noss&aacute;gbanban</title>
+<para>
+Adj meg n&eacute;h&aacute;ny p&oacute;stal&aacute;da bejelentkez&eacute;st az "Be&aacute;ll&iacute;t&aacute;sok" dial&oacute;gus seg&iacute;ts&eacute;g&eacute;vel. Kapcsol&oacute;dj r&aacute; az internetre.
+Az "&Uuml;zenetek friss&iacute;t&eacute;se" gomb megnyom&aacute;s&aacute;val list&aacute;zhatod a POP3 p&oacute;stal&aacute;d&aacute;kban tal&aacute;lhat&oacute; &uuml;zeneteket.
+Minden m&aacute;s men&uuml;pont &eacute;s men&uuml; elem mag&eacute;t&oacute;l &eacute;rtet&ocirc;d&ocirc;.
+
+J&oacute; sz&oacute;rakoz&aacute;st !
+</para>
+</sect1>
+<sect1 id="shortcuts">
+ <title>Gyorsbillenty&ucirc;k</title>
+ <variablelist>
+ <title>A program a k&ouml;vetkez&ocirc; gyorsbillenty&ucirc;ket haszn&aacute;lja:</title>
+ <varlistentry>
+ <term>F2</term>
+ <listitem>
+ <para>A kiv&aacute;lasztott &uuml;zenet fejl&eacute;c&eacute;nek megjelen&iacute;t&eacute;se</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F3</term>
+ <listitem>
+ <para>A kiv&aacute;lasztott &uuml;zenet teljes tartalm&aacute;nak megjelen&iacute;t&eacute;se</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F5</term>
+ <listitem>
+ <para>&Uuml;zenetek friss&iacute;t&eacute;se</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Shift-F5</term>
+ <listitem>
+ <para>Az &uuml;sszes &uuml;zenet friss&iacute;t&eacute;se</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F10</term>
+ <listitem>
+ <para>P&oacute;stal&aacute;da bejelentkez&eacute;sek be&aacute;ll&iacute;t&aacute;sa</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Del</term>
+ <listitem>
+ <para>A kijel&ouml;lt &uuml;zenetek t&ouml;rl&eacute;se a szerverr&ocirc;l</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Ctrl-C</term>
+ <listitem>
+ <para>&Uuml;zenetlista tiszt&iacute;t&aacute;sa.
+ (Az &uuml;zenete nem ke&uuml;lnek t&ouml;rl&eacute;sre a szerverr&ocirc;l)</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+</sect1>
+
+<sect1 id="filter">
+ <title>Sz&ucirc;r&ocirc;k</title>
+ <para>
+ A rekl&aacute;m&uuml;zenetek &eacute;s egy&eacute;b nemk&iacute;v&aacute;natos &uuml;zenetek kiv&aacute;laszt&aacute;s&aacute;ra sz&ucirc;r&ocirc;ket haszn&aacute;lhatunk.
+ Tetsz&ocirc;leges sz&aacute;m&uacute; sz&ucirc;r&ocirc; defini&aacute;l&aacute;s&aacute;ra van lehet&ocirc;s&eacute;g a programban.
+ A sz&ucirc;r&ocirc;k az &uuml;zenetlista friss&iacute;t&eacute;sekor ker&uuml;lnek alkalmaz&aacute;sra minden bej&ouml;v&ocirc; &uuml;zeneten.
+ </para>
+ <para>
+ A "Sz&ucirc;r&ocirc;k be&aacute;ll&iacute;t&aacute;sa" p&aacute;rbesz&eacute;dablakban kiv&aacute;laszthatsz egy sz&ucirc;r&ocirc;&aacute;llapotot.
+ "Ki"-kapcsolt jel&ouml;li, ha minden sz&ucirc;r&ocirc; ki van kapcsolva.
+ "Be"-kapcsolt jel&ouml;li, ha minden sz&ucirc;r&ocirc; be van kapcsolva.
+ A kisz&ucirc;rt levelek kiv&aacute;laszthat&oacute;k az &uuml;zenetlist&aacute;r&oacute;l &eacute;s k&eacute;zzel t&ouml;r&ouml;lhet&ocirc;k.
+ "Automatikus t&ouml;rl&eacute;s" &aacute;llapotban az &ouml;sszes kisz&ucirc;rt &uuml;zenet azonnal t&ouml;rl&eacute;sre ker&uuml;l.
+ Nagyon &oacute;vatosan b&aacute;njunk ezzel az &aacute;llapottal!
+ Aj&aacute;nlatos az &uacute;j sz&ucirc;r&ocirc;ket egy ideig a "be"-kapcsolt &aacute;llapotban tesztelni.
+ Az automatikusan t&ouml;rl&eacute;sre ker&uuml;lt &uuml;zeneteket a ~/.kde/share/apps/kshowmail/kshowmail.log &aacute;llom&aacute;nyban k&iacute;s&eacute;rhetj&uuml;k figyelemmel.
+ </para>
+
+ <para>
+ A sz&ucirc;r&ocirc;k egy vagy k&eacute;t egyeztet&eacute;si mint&aacute;t tartalmaznak, amelyek &ouml;sszekapcsolhat&oacute;k.
+ K&uuml;l&ouml;n&ouml;sen hat&eacute;kony mint&aacute;k defini&aacute;lhat&oacute;k szabv&aacute;nyos kifejez&eacute;sek seg&iacute;ts&eacute;g&eacute;vel.
+ Ebben a programban a Qt-k&ouml;nyvt&aacute;r szabv&aacute;nyos kifejez&eacute;seit haszn&aacute;ljuk;
+ r&eacute;szletes le&iacute;r&aacute;st a KRegExpEditor dokument&aacute;ci&oacute;j&aacute;ban vagy az interneten
+ el&eacute;rhet&ocirc;, szabv&aacute;nyos kifejez&eacute;sekr&ocirc;l sz&oacute;l&oacute; dokumentumokban tal&aacute;lhatsz.
+ <ulink url="help:/KRegExpEditor/whatIsARegExp.html">
+ Mi az, hogy Szabv&aacute;nyos Kifejez&eacute;s?
+ </ulink>
+ </para>
+
+ <sect2>
+ <title>P&eacute;ld&aacute;k Szabv&aacute;nyos Kifejez&eacute;sekre</title>
+ <para>
+ MS Corporation|Microsoft: Egyezik "MS Corporation"-nal vagy "Microsoft"-tal.
+ </para>
+ <para>
+ (mail|message) delivery: Egyezik "mail delivery"-vel vagy "message delivery"-vel.
+ </para>
+ <para>
+ ms (program )?security: Egyezik "ms security"-val vagy "ms program security"-val.
+ </para>
+ <para>
+ [\x0100-\xffff]: Egeyzik minden karakterrel az ami az ASCII karakterk&eacute;szleten k&iacute;v&uuml;l esik. (K&iacute;nai &eacute;s Koreai karakterek)
+ </para>
+ <para>
+ Ezek a mint&aacute;k tetsz&ocirc;legesen kombin&aacute;lhat&oacute;k.
+ </para>
+ </sect2>
+</sect1>
+
+<sect1 id="cmdline">
+<title>Parancs&eacute;rtelmez&ocirc; param&eacute;terek</title>
+<para>
+A lek&eacute;rdezend&ocirc; p&oacute;stal&aacute;da megadhat&oacute; a program ind&iacute;t&aacute;sakor mint param&eacute;ter.
+Amennyiben a -config kapcs&oacute;l&oacute; szerepel a param&eacute;terk&eacute;nt, a "Be&aacute;ll&iacute;t&aacute;sok" p&aacute;rbesz&eacute;dablak azonnal megny&iacute;lik a programind&iacute;t&aacute;s ut&aacute;n.
+Ez akkor lehet hasznos, ha a "L&eacute;pj ki a programb&oacute;l, ha nincs &uacute;j &uuml;zenet" m&oacute;dot &aacute;ll&iacute;tottuk be el&ocirc;z&ocirc;leg.
+A -refresh kapcsol&oacute; megad&aacute;sa eset&eacute;n a program ind&iacute;t&aacute;sa ut&aacute;n azonnal elindul a friss&iacute;t&eacute;si elj&aacute;r&aacute;s.
+</para>
+</sect1>
+<sect1 id="extprog">
+<title>K&uuml;ls&ocirc; programok</title>
+<para>
+Ha k&uuml;ls&ocirc; programot - mint p&eacute;ld&aacute;ul a fetchmail - akarunk ind&iacute;tani, adjunk egy bejegyz&eacute;st a parancs men&uuml;h&ouml;z.
+A &iacute;gy megadott parancsok nevei a "Tev&eacute;kenys&eacute;gek" men&uuml;pontban jelennek meg. Amennyiben a parancs neve tartalmazza a '&amp;' karaktert,
+az azt k&ouml;vet&ocirc; bet&ucirc; haszn&aacute;lhat&oacute; a parancshoz mint gyorsbillenty&ucirc;.
+</para>
+<para>A k&ouml;vetkez&ocirc; hivatkoz&aacute;sok haszn&aacute;lhat&oacute;k a parancs megad&aacute;sokor. Ezek a futtat&aacute;s sor&aacute;n az aktu&aacute;lis &eacute;rt&eacute;kekre fognak cser&aacute;l&ocirc;dni:</para>
+<para> &lt;user&gt; A felhaszn&aacute;l&oacute; neve</para>
+<para> &lt;passwd&gt; Jelsz&oacute;</para>
+<para> &lt;server&gt; Szerver</para>
+<para> &lt;header&gt; Az &uuml;zenetfejl&eacute;c egy &aacute;tmeneti &aacute;llom&aacute;nyban ker&uuml;l t&aacute;rol&aacute;sra. Ennek az &aacute;llom&aacute;nynak a neve ker&uuml;l ide behelyettes&iacute;t&eacute;sre.</para>
+<para> &lt;body&gt; Az &uuml;zenet tartalma egy &aacute;tmeneti &aacute;llom&aacute;nyban ker&uuml;l t&aacute;rol&aacute;sra. Ennek az &aacute;llom&aacute;nynak a neve ker&uuml;l ide behelyettes&iacute;t&eacute;sre.</para>
+</sect1>
+<sect1 id="complain">
+<title> Reklam&aacute;l&oacute;lev&eacute;l k&uuml;ld&eacute;se </title>
+<para>
+A reklam&aacute;l&oacute;lev&eacute;l k&uuml;ld&eacute;se egy nagyon speci&aacute;lis parancs.
+Hogy a maxim&aacute;lis rugalmass&aacute;got biztos&iacute;tsuk, szint&eacute;n k&uuml;ls&ocirc; parancsk&eacute;nt ker&uuml;lt megval&oacute;s&iacute;t&aacute;sra.
+Javasoln&aacute;m hogy Daniel Stenberg spam.pl nev&ucirc; perl programj&aacute;nak 0.20 vagy k&eacute;s&ocirc;bbi verzi&oacute;j&aacute;t haszn&aacute;ljuk.
+Innen t&ouml;lthet&ocirc; le: <ulink url="http://spam.sourceforge.net">http://spam.sourceforge.net.</ulink>
+&Ouml;sszekapcsol&aacute;sa a Kshowmail-lel a k&ouml;vetkez&ocirc; m&oacute;don t&ouml;rt&eacute;nik:
+</para>
+<para>1. Install&aacute;ljuk a spam.pl-t egy megfelel&ocirc; k&ouml;nyvt&aacute;rban, pl. a /usr/local/bin-ben.</para>
+<para>Hozzunkl&eacute;tre k&eacute;t &aacute;llom&aacute;nyt a ~/.spam/friends -t &eacute;s a ~/.spam/from -t.
+R&eacute;szleteket a spam.pl dokument&aacute;ci&oacute;j&aacute;ban tal&aacute;lhatsz.</para>
+<para>Hozzunk l&eacute;tre egy bejegyz&eacute;st a kshowmail "parancs" men&uuml;j&eacute;ben.
+A bejegyz&eacute;s nev&eacute;nek "complain"-nek kell lennie, egy&eacute;bk&eacute;nt nem fogja megfelel&ocirc;en felismerni a parancsot!
+Adjuk meg a k&ouml;vetkez&ocirc; sz&ouml;veget, mint parancssort:</para>
+<para> spam.pl -d &lt; &lt;body&gt;</para>
+<para> Ez elk&uuml;ldi az &uuml;zenet tartalm&aacute;t a spam.pl programnak.</para>
+<para/>
+<para>A nyomk&ouml;vet&eacute;s -d kapcsol&oacute; k&eacute;s&ocirc;bb kit&ouml;r&ouml;lhet&ocirc;, ha a dolgok j&oacute;l m&ucirc;k&ouml;dnek.
+A reklam&aacute;l&oacute;levelek t&eacute;nylegesen csak ezut&aacute;n ker&uuml;lnek elk&uuml;ld&eacute;sre.
+
+Sz&uuml;ks&eacute;g szerint egy&eacute;b kapcsol&oacute;k is haszn&aacute;lhat&oacute;k.</para>
+<para>K&ouml;r&uuml;ltekint&ocirc;en v&aacute;lsszuk meg a bejegyz&eacute;seket ~/.spam/friends &aacute;llom&aacute;nyban.
+Legal&aacute;bb a helyi domain-nek szerepelnie kell benne.
+
+Ennek a lehet&ocirc;s&eacute;gnek a haszn&aacute;lata a saj&aacute;t felel&ocirc;ss&eacute;ged!</para>
+<para>A "Reklam&aacute;ci&oacute; k&uuml;ld&eacute;se" gomb megnyom&aacute;sakor minden kijel&ouml;lt &uuml;zenetre v&aacute;laszul
+egy reklam&aacute;l&oacute; lev&eacute;l k&eacute;sz&uuml;l &eacute;s ker&uuml;l azonnal elk&uuml;ld&eacute;sre.
+A reklam&aacute;l&oacute;lev&eacute;l c&iacute;mzettj&eacute;t a spam.pl program hat&aacute;rozza meg.
+Ameddig a -d kapcsol&oacute; akt&iacute;v, csak egy &uuml;zenet jelenik meg ami le&iacute;rja, hogy mi t&ouml;rt&eacute;nne a val&oacute;j&aacute;ban ebben az esetben.
+A szolg&aacute;ltat&aacute;s bekapcsol&aacute;s&aacute;hoz t&ouml;r&ouml;lj&uuml;k a nyomk&ouml;vet&eacute;s kapcsol&oacute;t.</para>
+<para> M&aacute;s rekl&aacute;mlev&eacute;l azonos&iacute;t&oacute; program be&aacute;ll&iacute;t&aacute;sa is hasonl&oacute;an t&ouml;rt&eacute;nik.
+&Uuml;zenjetek, ha valami gond van!</para>
+</sect1>
+</chapter>
+
+<chapter id="faq">
+<title>K&eacute;rd&eacute;sek &eacute;s V&aacute;laszok</title>
+
+<!-- (OPTIONAL but recommended) This chapter should include all of the silly
+(and not-so-silly) newbie questions that fill up your mailbox. This chapter
+should be reserved for BRIEF questions and answers! If one question uses more
+than a page or so then it should probably be part of the
+"Using this Application" chapter instead. You should use links to
+cross-reference questions to the parts of your documentation that answer them.
+This is also a great place to provide pointers to other FAQ's if your users
+must do some complicated configuration on other programs in order for your
+application work. -->
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>Fejleszt&eacute;s alatt.</para>
+</question>
+<answer>
+<para>Fejleszt&eacute;s alatt.</para>
+</answer>
+</qandaentry>
+</qandaset>
+</chapter>
+
+<chapter id="credits">
+
+<!-- Include credits for the programmers, documentation writers, and
+contributors here. The license for your software should then be included below
+the credits with a reference to the appropriate license file included in the KDE
+distribution. -->
+
+<title>Szerz&ocirc;k &eacute;s Licnec</title>
+
+<para>
+&kapp;
+</para>
+<para>
+Program copyright 2000-2003 Eggert Ehmke <email>eggert.ehmke@berlin.de</email>
+</para>
+<para>
+Tov&aacute;bbi szerz&ocirc;t&aacute;rsak:
+<itemizedlist>
+<listitem>
+<para>
+Nicolas Vignal <email>nicolas.vignal@fnac.net</email> Aki RedHat RPM-eket &eacute;s a
+Francia ford&iacute;t&aacute;st adta.
+</para>
+</listitem>
+<listitem>
+<para>
+Edgardo Garcia <email>edyx@mindless.com</email> aki a spanyol ford&iacute;t&aacute;st adta
+</para>
+</listitem>
+<listitem>
+<para>
+Mattias Newzella <email>newzella@swipnet.se</email> aki a sv&eacute;d ford&iacute;t&aacute;st adta
+</para>
+</listitem>
+<listitem>
+<para>
+Sok felhaszn&aacute;l&oacute; seg&iacute;tett a program tesztel&eacute;s&eacute;ben
+&eacute;s adott rengeteg &ouml;tletet, amelyek most m&aacute;r a kshowmail r&eacute;szei.
+
+K&ouml;sz&ouml;net Mindannyiuknak!
+
+</para>
+</listitem>
+</itemizedlist>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove. Commercial development should -->
+<!-- replace this with their copyright and either remove it or re-set this.-->
+
+<!-- Determine which license your application is licensed under,
+ and delete all the remaining licenses below:
+
+ (NOTE: All documentation are licensed under the FDL,
+ regardless of what license the application uses) -->
+
+&underGPL; <!-- GPL License -->
+</chapter>
+
+<appendix id="installation">
+<title>Telep&iacute;t&eacute;s</title>
+
+<sect1 id="getting-kshowmail">
+<title>Honnan szerezhetj&uuml;k meg a Kshowmail-t?</title>
+
+<para>
+The actual version is to be found on
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+or on
+<ulink url="http://freshmeat.net">http://freshmeat.net</ulink>
+
+</para>
+</sect1>
+
+<sect1 id="requirements">
+<title>Futtat&aacute;si felt&eacute;telek</title>
+
+<!--
+List any special requirements for your application here. This should include:
+.Libraries or other software that is not included in kdesupport,
+kdelibs, or kdebase.
+.Hardware requirements like amount of RAM, disk space, graphics card
+capabilities, screen resolution, special expansion cards, etc.
+.Operating systems the app will run on. If your app is designed only for a
+specific OS, (you wrote a graphical LILO configurator for example) put this
+information here.
+-->
+
+<para>
+ A fejleszt&eacute;s &eacute;s tesztel&eacute;s SuSE 8.2 disztrib&uacute;ci&oacute; alatt t&ouml;rt&eacute;nik.
+ A kshowmail haszn&aacute;lat&aacute;hoz KDE 3.1.x and Qt 3.1.x.-re van sz&uuml;ks&eacute;ged.
+</para>
+
+<!-- For a list of updates, you may refer to the application web site
+or the ChangeLog file, or ... -->
+<para>
+A v&aacute;ltoz&aacute;sok list&aacute;j&aacute;t itt tal&aacute;lhatod meg:
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+</para>
+</sect1>
+
+<sect1 id="compilation">
+<title>Ford&iacute;t&aacute;s &eacute;s telep&iacute;t&eacute;s</title>
+
+<para>
+ A kshowmak ford&iacute;t&aacute;s&aacute;hoz &eacute;s telep&iacute;t&eacute;s&eacute;hez g&eacute;peld be a k&ouml;vetkez&ocirc; parancsokat a kshowmail alapk&ouml;nyvt&aacute;r&aacute;ban:
+ <screen width="40">
+ <prompt>%</prompt> <userinput>./configure</userinput>
+ vagy ak&aacute;r:
+ <prompt>%</prompt> <userinput>./configure --prefix=$KDEDIR</userinput>
+
+ <prompt>%</prompt> <userinput>make</userinput>
+
+ root-k&eacute;nt:
+ <prompt>%</prompt> <userinput>make install</userinput>
+ </screen>
+ Hasznos lehet a KDEDIR k&ouml;rneyzeti v&aacute;ltoz&oacute; be&aacute;ll&iacute;t&aacute;sa, miel&ocirc;tt nekikezden&eacute;nk ezeknek a l&eacute;p&eacute;seknek.
+</para>
+
+<para>
+ Mivel Kshowmail az autoconf-ot &eacute;s az automake-t haszn&aacute;lja, nem val&oacute;sz&iacute;n&ucirc; hogy gond lesz a ford&iacute;t&aacute;ssal.
+ Amennyiben m&eacute;gis el&ocirc;fordulna, k&eacute;rlek &iacute;rjatok.
+</para>
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/it/Makefile.am b/doc/it/Makefile.am
new file mode 100644
index 0000000..6e84e23
--- /dev/null
+++ b/doc/it/Makefile.am
@@ -0,0 +1,10 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+
+
+EXTRA_DIST = index.docbook
+
+####### kdevelop will overwrite this part!!! (end)############
+
+KDE_LANG = it
+KDE_DOCS = kshowmail
+
diff --git a/doc/it/index.docbook b/doc/it/index.docbook
new file mode 100644
index 0000000..a4145b4
--- /dev/null
+++ b/doc/it/index.docbook
@@ -0,0 +1,523 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1-Based Variant V1.0//EN" "dtd/kdex.dtd" [
+ <!ENTITY kshowmail '<application>Kshowmail</application>'>
+ <!ENTITY kapp "&kshowmail;"><!-- replace kshowmail here -->
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % Italian "INCLUDE"><!-- change language only here -->
+
+
+ <!-- Do not define any other entities; instead, use the entities
+ from kde-genent.entities and $LANG/user.entities. -->
+]>
+<!-- kdoctemplate v0.8 October 1 1999
+ Minor update to "Credits and Licenses" section on August 24, 2000
+ Removed "Revision history" section on 22 January 2001 -->
+
+<!-- ................................................................ -->
+
+<!-- The language must NOT be changed here. -->
+
+<book lang="&language;">
+
+<!-- This header contains all of the meta-information for the document such
+as Authors, publish date, the abstract, and Keywords -->
+
+<bookinfo>
+<title>Il Manuale di KShowmail</title>
+
+<authorgroup>
+<author>
+<firstname>Eggert</firstname>
+<surname>Ehmke</surname>
+<affiliation>
+<address><email>eggert.ehmke@berlin.de</email></address>
+</affiliation>
+</author>
+<author>
+<firstname>Allistar</firstname>
+<surname>Melville</surname>
+<affiliation>
+<address><email>allistar@silvermoon.co.nz</email></address>
+</affiliation>
+</author>
+</authorgroup>
+
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+
+<copyright>
+<year>2000</year>
+<year>2001</year>
+<year>2002</year>
+<year>2003</year>
+<year>2004</year>
+<holder>Eggert Ehmke</holder>
+</copyright>
+<!-- Translators: put here the copyright notice of the translation -->
+<!-- Put here the FDL notice. Read the explanation in fdl-notice.docbook
+ and in the FDL itself on how to use it. -->
+<legalnotice>&FDLNotice;</legalnotice>
+
+<!-- Date and version information of the documentation
+Don't forget to include this last date and this last revision number, we
+need them for translation coordination !
+Please respect the format of the date (DD/MM/YYYY) and of the version
+(V.MM.LL), it could be used by automation scripts.
+Do NOT change these in the translation. -->
+
+<date>31/01/2004</date>
+<releaseinfo>3.1.1</releaseinfo>
+
+<!-- Abstract about this handbook -->
+
+<abstract>
+<para>
+ Questo manuale descrive l'utilizzo di KShowmail 3.1.1
+</para>
+</abstract>
+
+<!-- This is a set of Keywords for indexing by search engines.
+Please at least include KDE, the KDE package it is in, the name
+ of your application, and a few relevant keywords. -->
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kshowmail</keyword>
+<keyword>kmail</keyword>
+<keyword>pop3</keyword>
+<keyword>mail checker</keyword>
+</keywordset>
+
+</bookinfo>
+
+<!-- The contents of the documentation begin here. Label
+each chapter so with the id attribute. This is necessary for two reasons: it
+allows you to easily reference the chapter from other chapters of your
+document, and if there is no ID, the name of the generated HTML files will vary
+from time to time making it hard to manage for maintainers and for the CVS
+system. Any chapter labelled (OPTIONAL) may be left out at the author's
+discretion. Other chapters should not be left out in order to maintain a
+consistent documentation style across all KDE apps. -->
+
+<chapter id="introduction">
+<title>Introduzione</title>
+
+<!-- The introduction chapter contains a brief introduction for the
+application that explains what it does and where to report
+problems. Basically a long version of the abstract. Don't include a
+revision history. (see installation appendix comment) -->
+
+<para>
+ KShowmail &egrave; uno strumento di KDE per monitorare le email su un server POP3.
+ Possono essere visualizzate sia solo le intestazioni che le email complete senza il bisogno
+ di scaricarle con il programma di posta.
+ Le email indesiderate possono essere cancellate direttamente dal server.
+ La lista delle email visualizzate pu&ograve; essere aggiornata automaticamente
+ attraverso dei timer configurabili.
+ I filtri possono essere impostati per segnalare spam e messaggi indesiderati.
+ I messaggi segnalati dai filtri possono essere eliminati dal server automaticamente .
+ Pu&ograve;essere eseguito un suono all'arrivo di nuovi messaggi.
+ Un menu dei comandi permette di eseguire comandi definiti dall'utente come ad esempio
+ i comandi dcop per lanciare kmail.
+ Pu&ograve; essere definito un comando speciale per inviare un email di lamentele contro lo spam.
+ Sono supportati account multipli.
+</para>
+</chapter>
+
+<chapter id="using-kshowmail">
+<title>Utilizzo di Kshowmail</title>
+
+<!-- This chapter should tell the user how to use your app. You should use as
+many sections (Chapter, Sect1, Sect3, etc...) as is necessary to fully document
+your application. -->
+
+<sect1 id="kshowmail-features">
+<title>Utilizzo generale</title>
+<para>
+ Aggiungi alcuni account nel dialogo di configurazione "Opzioni". Connettiti ad internet.
+ Ora puoi visualizzare la lista dei messaggi presenti sui server pop2 cliccando sul bottone "Aggiorna".
+ Tutti gli altri bottoni ed elementi dei menu dovrebbero essere autoesplicativi.
+ Divertiti!
+</para>
+</sect1>
+<sect1 id="shortcuts">
+ <title>Scorciatoie da tastiera</title>
+ <variablelist>
+ <title>Sono predefinite queste scorciatoie da tastiera:</title>
+ <varlistentry>
+ <term>F2</term>
+ <listitem>
+ <para>Visualizza le intestazioni dei messaggi selezionati</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F3</term>
+ <listitem>
+ <para>Visualizza completamente i messaggi selezionati</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F5</term>
+ <listitem>
+ <para>Aggiorna la lista dei messaggi presenti sul server</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Shift-F5</term>
+ <listitem>
+ <para>Forza l'aggiornamento</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F10</term>
+ <listitem>
+ <para>Configura gli account</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Del</term>
+ <listitem>
+ <para>Elimina dal server la posta selezionata</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Ctrl-C</term>
+ <listitem>
+ <para>Cancella la lista dei messaggi.
+ (Non verr&agrave; cancellato alcun messaggio.)</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+</sect1>
+
+<sect1 id="filter">
+ <title>Filtri</title>
+ <para>
+ I filtri possono essere usati per selezionare lo spam conosciuto e altri messaggi indesiderati.
+ Puoi definire quanti filtri ti pare.
+ Tali filtri verranno applicati a tutte le email ogni volta che aggiornerai la lista dei messaggi.
+ </para>
+ <para>
+ Nel Dialogo "Filtri" puoi selezionarne lo stato.
+ Nello stato "Non attivi" tutti i filtri sono disattivati.
+ Nello stato "Attivi" tutti i filtri sono in funzione.
+ I messaggi filtrati sono selezionati nella lista dei messaggi e possono essere eliminati manualmente.
+ Nello stato "Elimina Automaticamente" tutti i messaggi filtrati sono eliminati immediatamente.
+ Sii prudente quando selezioni questo stato!
+ Potrebbe essere utile testare prima i nuovi filtri alcune volte nello stato "Attivi".
+ Nel file ~/.kde/share/apps/kshowmail/kshowmail.log puoi controllare i messaggi che sono stati eliminati automaticamente.
+ </para>
+
+ <para>
+ Ogni filtro contiene una o due condizioni che possono essere collegate insieme.
+ Usando le espressioni regolari &egrave; possibile creare delle condizioni estremamente potenti.
+ In questo programma vengono utilizzate le espressioni regolari delle librerie Qt,
+ per informazioni dettagliate si pu&ograve; guardare la documentazione della classe KRegExpEditor,
+ o uno dei numerosi testi presenti su internet riguardanti le espressioni regolari.
+ <ulink url="help:/KRegExpEditor/whatIsARegExp.html">
+ Che cos'&egrave; un'espressione regolare?
+ </ulink>
+ </para>
+
+ <sect2>
+ <title>Esempi di Espressioni Regolari:</title>
+ <para>
+ MS Corporation|Microsoft: sia "MS Corporation" che "Microsoft" saranno riconosciute.
+ </para>
+ <para>
+ (mail|message) delivery: sia "mail delivery" che "message delivery" saranno riconosciute.
+ </para>
+ <para>
+ ms (program )?security: sia "ms security" che "ms program security" saranno riconosciute.
+ </para>
+ <para>
+ [\x0100-\xffff]: tutti i caratteri al di fuori del set di caratteri ASCII saranno riconosciuti (caratteri cinesi e koreani).
+ </para>
+ <para>
+ Questi esempi possono essere combinati a piacere.
+ </para>
+ </sect2>
+</sect1>
+
+<sect1 id="cmdline">
+<title>Parametri da linea di comando</title>
+<para>
+ Puoi fornire attraverso la linea di comando l'account da selezionare.
+ Se &egrave; settata l'opzione -config sulla linea di comando, il dialogo di configurazione partir&agrave; immediatamente all'avvio del programma.
+ Questo pu&ograve; essere utile se &egrave; attivata la funzione "Termina in caso di nessun nuovo messaggio".
+ L'opzione -refresh pu&ograve; essere utilizzata per avviare l'aggiornamento immediatamente all'avvio del programma.
+
+</para>
+</sect1>
+<sect1 id="extprog">
+<title>Programmi esterni</title>
+<para>
+Per avviare programmi esterni tipo kmail, aggiungi un elemento al menu dei comandi.
+I nomi dei comandi sono presenti nel menu Azioni. Se contengono il carattere '&amp;', la lettera seguente
+sar&agrave; utilizzata come scorciatoia da tastiera.
+</para>
+<para>I seguenti parametri sono segnaposto e saranno sostituiti dai valori reali:</para>
+<para> &lt;user&gt; Nome utente</para>
+<para> &lt;passwd&gt; Password</para>
+<para> &lt;server&gt; Server</para>
+<para> &lt;header&gt; L'intestazione del messaggio sar&agrave; copiata in un file temporaneo, qui verr&agrave; sostituito il nome del file.</para>
+<para> &lt;body&gt; Il corpo del messaggio sar&agrave; copiato in un file temporanea, qui verr&agrave; sostituito il nome del file.</para>
+<para>
+ Un utilizzo veramente interessante &egrave; rappresentato dal comando dcop che premette di richiamare
+ le funzioni selezionate di altri programmi KDE.
+ &Egrave; possibile creare un comando che richiama KMail e scarica i messaggi dal server:
+</para>
+<para>
+ <command>dcop kmail KMailIface checkMail</command>
+</para>
+<para>
+ Il programma di KDE kdcop &egrave; utile per provare le funzioni di altri programmi KDE.
+ </para>
+</sect1>
+<sect1 id="complain">
+<title>Mandare messaggi di lamentele</title>
+<para>
+ Il comando per invare messaggi di lamentele, &egrave;, un comando speciale.
+ Per mantenere una certa flessibilit&agrave;, &egrave; stato implementato anch'esso come comando esterno.
+ Suggerisco di usare il programma perl "spam.pl" versione 0.20 o successive di Danel Stenberg.
+ Pu&ograve; essere scaricato all'indirizzo <ulink url="http://spam.sourceforge.net">http://spam.sourceforge.net.</ulink>
+ Per farlo partire seguite questi passi:
+</para>
+<para>
+ 1. Installate spam.pl in una directory opportuna, diciamo /usr/local/bin.
+</para>
+<para>
+ 2. Create i files ~/.spam/friends e ~/.spam/from.
+ Sono disponibili maggiori dettagli nella documentazione di spam.pl.
+</para>
+<para>
+ 3. Create un elemento nel menu dei comandi di kshowmail.
+ Il nome dell'elemento deve essere "complain" !
+ Altrimenti il comando non verr&agrave; riconosciuto correttamente.
+ Inserite questo testo come linea di comando:
+
+</para>
+<para>
+ <command>spam.pl -d &lt; &lt;body&gt;</command>
+</para>
+<para>
+ Ci&ograve; provoca che il corpo del messaggio venga rediretto a spam.pl.
+</para>
+<para>
+ L'opzione di debug -d dovrebbe essere rimossa successivamente, se sei soddisfatto dei risultati.
+ Solo dopo verranno effettivamente inviati i messaggi di protesta.
+ Aggiungi altre opzioni a piacimento.
+</para>
+<para>
+ Scegli attentamente gli elementi giusti nel file ~/.spam/friends.
+ Come minimo dovrebbe essere inserito almeno il dominio locale.
+ Usate questa funzione a vostro rischio e pericolo !
+
+</para>
+<para>
+ Quando clicchi il tasto "Invia email di lamentele", per ogni messaggio
+ selezionato verranno generati ed inviati immediatamente uno o pi&ugrave; messaggi.
+ Il destinatario di questi messaggi &egrave; determinato automaticamente da spam.pl.
+ Quando l'opzione -d &egrave; attivata, verr&agrave; visualizzato solo un messaggio di quello che succederebbe.
+ Per attivare la funzione, rimuovere il flag di debug.
+</para>
+<para>
+ Se preferisci un altro programma anti spam, prova a configurarlo in una maniera simile.
+ Contattami se c'&egrave; qualche problema.
+
+</para>
+</sect1>
+</chapter>
+
+<chapter id="faq">
+<title>Domande e risposte</title>
+
+<!-- (OPTIONAL but recommended) This chapter should include all of the silly
+(and not-so-silly) newbie questions that fill up your mailbox. This chapter
+should be reserved for BRIEF questions and answers! If one question uses more
+than a page or so then it should probably be part of the
+"Using this Application" chapter instead. You should use links to
+cross-reference questions to the parts of your documentation that answer them.
+This is also a great place to provide pointers to other FAQ's if your users
+must do some complicated configuration on other programs in order for your
+application work. -->
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>Da aggiungere</para>
+</question>
+<answer>
+<para>Da aggiungere.</para>
+</answer>
+</qandaentry>
+</qandaset>
+</chapter>
+
+<chapter id="credits">
+
+<!-- Include credits for the programmers, documentation writers, and
+contributors here. The license for your software should then be included below
+the credits with a reference to the appropriate license file included in the KDE
+distribution. -->
+
+<title>Riconoscimenti e Licenza</title>
+
+<para>
+&kapp;
+</para>
+<para>
+Copyright del programma 2000-2003 Eggert Ehmke <email>eggert.ehmke@berlin.de</email>
+</para>
+<para>
+Hanno contribuito:
+<itemizedlist>
+<listitem>
+<para>
+Nicolas Vignal <email>nicolas.vignal@fnac.net</email> che ha fornito l'RPM per RedHat
+e la traduzione in francese.
+</para>
+</listitem>
+<listitem>
+<para>
+Edgardo Garcia <email>edyx@mindless.com</email> che ha fornito la traduzione in spagnolo.
+</para>
+</listitem>
+<listitem>
+<para>
+Mattias Newzella <email>newzella@swipnet.se</email> che ha fornito la traduzione in svedese.
+</para>
+</listitem>
+<listitem>
+<para>
+Sandor Laza <email>slaza@xs4all.nl</email> who provided the hungarian translation
+</para>
+</listitem>
+<listitem>
+<para>
+Gabriele Postorino <email>g.posto@tin.it</email> who provided the italian translation
+</para>
+</listitem>
+<listitem>
+<para>
+Molti utenti hanno portato avanti molti test e proposto nuove idee
+che ora sono parte di kshowmail.
+Voglio dire "Grazie" a tutti voi !
+</para>
+</listitem>
+</itemizedlist>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove. Commercial development should -->
+<!-- replace this with their copyright and either remove it or re-set this.-->
+
+<!-- Determine which license your application is licensed under,
+ and delete all the remaining licenses below:
+
+ (NOTE: All documentation are licensed under the FDL,
+ regardless of what license the application uses) -->
+
+&underGPL; <!-- GPL License -->
+</chapter>
+
+<appendix id="installation">
+<title>Installazione</title>
+
+<sect1 id="getting-kshowmail">
+<title>Come ottenere KShowmail</title>
+
+<para>
+L'ultima versione pu&ograve; essere scaricata da:
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+o da
+<ulink url="http://freshmeat.net">http://freshmeat.net</ulink>
+
+</para>
+</sect1>
+
+<sect1 id="requirements">
+<title>Requisiti</title>
+
+<!--
+List any special requirements for your application here. This should include:
+.Libraries or other software that is not included in kdesupport,
+kdelibs, or kdebase.
+.Hardware requirements like amount of RAM, disk space, graphics card
+capabilities, screen resolution, special expansion cards, etc.
+.Operating systems the app will run on. If your app is designed only for a
+specific OS, (you wrote a graphical LILO configurator for example) put this
+information here.
+-->
+
+<para>
+ Sviluppato e testato su SuSE 8.2.
+ Per usare con successo KShowmail hai bisono di KDE 3.1.x e di Qt 3.1.x
+</para>
+
+<!-- For a list of updates, you may refer to the application web site
+or the ChangeLog file, or ... -->
+<para>
+Puoi trovare la lista dei cambiamenti qui:
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+</para>
+</sect1>
+
+<sect1 id="compilation">
+<title>Compilazione ed installazione</title>
+
+<para>
+Per compilare ed installare KShwomail sul tuo sistema, digita i seguenti comandi nella cartella
+dei sorgenti di KShowmail:
+ <screen width="40">
+ <prompt>%</prompt> <userinput>./configure</userinput>
+ oppure:
+ <prompt>%</prompt> <userinput>./configure --prefix=$KDEDIR</userinput>
+
+ <prompt>%</prompt> <userinput>make</userinput>
+
+ come root:
+ <prompt>%</prompt> <userinput>make install</userinput>
+ </screen>
+ Potrebbe essere utile settare la variabile d'ambiende KDEDIR prima di questi passi.
+
+</para>
+
+<para>
+ Dato che KShowmail utilizza autoconf e automake, non dovresti avere problemi nel compilarlo.
+ Se incappi in qualche problema, per favore fammelo sapere.
+</para>
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/ru/Makefile.am b/doc/ru/Makefile.am
new file mode 100644
index 0000000..c8b53ac
--- /dev/null
+++ b/doc/ru/Makefile.am
@@ -0,0 +1,10 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+
+
+EXTRA_DIST = index.docbook
+
+####### kdevelop will overwrite this part!!! (end)############
+
+KDE_LANG = ru
+KDE_DOCS = kshowmail
+
diff --git a/doc/ru/index.docbook b/doc/ru/index.docbook
new file mode 100644
index 0000000..ae32c1f
--- /dev/null
+++ b/doc/ru/index.docbook
@@ -0,0 +1,517 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1-Based Variant V1.0//EN" "dtd/kdex.dtd" [
+ <!ENTITY kshowmail '<application>Kshowmail</application>'>
+ <!ENTITY kapp "&kshowmail;"><!-- replace kshowmail here -->
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % Russian "INCLUDE"><!-- change language only here -->
+
+
+ <!-- Do not define any other entities; instead, use the entities
+ from kde-genent.entities and $LANG/user.entities. -->
+]>
+<!-- kdoctemplate v0.8 October 1 1999
+ Minor update to "Credits and Licenses" section on August 24, 2000
+ Removed "Revision history" section on 22 January 2001 -->
+
+<!-- ................................................................ -->
+
+<!-- The language must NOT be changed here. -->
+
+<book lang="&language;">
+
+<!-- This header contains all of the meta-information for the document such
+as Authors, publish date, the abstract, and Keywords -->
+
+<bookinfo>
+<title>Руководство по Kshowmail</title>
+
+<authorgroup>
+<author>
+<firstname>Eggert</firstname>
+<surname>Ehmke</surname>
+<affiliation>
+<address><email>eggert.ehmke@berlin.de</email></address>
+</affiliation>
+</author>
+<author>
+<firstname>Allistar</firstname>
+<surname>Melville</surname>
+<affiliation>
+<address><email>allistar@silvermoon.co.nz</email></address>
+</affiliation>
+</author>
+</authorgroup>
+
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+
+<copyright>
+<year>2000</year>
+<year>2001</year>
+<year>2002</year>
+<year>2003</year>
+<year>2004</year>
+<year>2005</year>
+<holder>Eggert Ehmke</holder>
+</copyright>
+<!-- Translators: put here the copyright notice of the translation -->
+<!-- Put here the FDL notice. Read the explanation in fdl-notice.docbook
+ and in the FDL itself on how to use it. -->
+<legalnotice>&FDLNotice;</legalnotice>
+
+<!-- Date and version information of the documentation
+Don't forget to include this last date and this last revision number, we
+need them for translation coordination !
+Please respect the format of the date (DD/MM/YYYY) and of the version
+(V.MM.LL), it could be used by automation scripts.
+Do NOT change these in the translation. -->
+
+<date>01/02/2004</date>
+<releaseinfo>3.1.1</releaseinfo>
+
+<!-- Abstract about this handbook -->
+
+<abstract>
+<para>
+Это руководство описывает использование Kshowmail версии 3.1.1
+</para>
+</abstract>
+
+<!-- This is a set of Keywords for indexing by search engines.
+Please at least include KDE, the KDE package it is in, the name
+ of your application, and a few relevant keywords. -->
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kshowmail</keyword>
+<keyword>kmail</keyword>
+<keyword>pop3</keyword>
+<keyword>mail checker</keyword>
+</keywordset>
+
+</bookinfo>
+
+<!-- The contents of the documentation begin here. Label
+each chapter so with the id attribute. This is necessary for two reasons: it
+allows you to easily reference the chapter from other chapters of your
+document, and if there is no ID, the name of the generated HTML files will vary
+from time to time making it hard to manage for maintainers and for the CVS
+system. Any chapter labelled (OPTIONAL) may be left out at the author's
+discretion. Other chapters should not be left out in order to maintain a
+consistent documentation style across all KDE apps. -->
+
+<chapter id="introduction">
+<title>Введение</title>
+
+<!-- The introduction chapter contains a brief introduction for the
+application that explains what it does and where to report
+problems. Basically a long version of the abstract. Don't include a
+revision history. (see installation appendix comment) -->
+
+<para>
+Kshowmail - KDE-программа для мониторинга почты на POP3-сервере.
+Просмотр заголовка и сообщений целиком возможен без загрузки их в почтовый клиент.
+Нежелательная почта может быть удалена с сервера.
+Интервал опроса серверов может быть изменен в настройках.
+Фильтры используеются для пометки спама и нежелательных сообщений.
+Помеченные фильтрами сообщения могут быть автоматически удалены.
+При получении новой почты возможно воспроизведение звукового сигнала.
+A command menu allows user configurable commands like dcop commands to launch kmail.
+Командное меню позволяет использовать пользовательские команды (например, вызов kmail через dcop).
+Возможно определение специальной команды для отправки жалоб на спам-письма.
+Поддерживаются множественные почтовые ящики.
+</para>
+</chapter>
+
+<chapter id="using-kshowmail">
+<title>Использование Kshowmail</title>
+
+<!-- This chapter should tell the user how to use your app. You should use as
+many sections (Chapter, Sect1, Sect3, etc...) as is necessary to fully document
+your application. -->
+
+<sect1 id="kshowmail-features">
+<title>Общие принципы</title>
+<para>
+Добавьте несколько почтовых ящиков в диалоге "Настройки". Подключитесь к интернету. Теперь вы
+можете просмотреть почту, имеющуюся на заданных pop3-серверах, нажатием кнопки "Обновить".
+Действие остальных кнопок и пунктов меню должно быть понятно из их названий :) .
+Приятной работы!
+</para>
+</sect1>
+<sect1 id="shortcuts">
+ <title>Клавиатурные комбинации</title>
+ <variablelist>
+ <title>Используются следующие клавиатурные комбинации:</title>
+ <varlistentry>
+ <term>F2</term>
+ <listitem>
+ <para>Показать заголовки выбранных писем</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F3</term>
+ <listitem>
+ <para>Показать полностью выбранные письма</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F5</term>
+ <listitem>
+ <para>Обновить список писем</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Shift-F5</term>
+ <listitem>
+ <para>Принудительное обновление списка писем</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>F10</term>
+ <listitem>
+ <para>Настройки почтовых ящиков</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Del</term>
+ <listitem>
+ <para>Удалить выбранные сообщения с сервера</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Ctrl-C</term>
+ <listitem>
+ <para>Очистить список сообщений.
+ (Письма не будут удалены с сервера)</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+</sect1>
+
+<sect1 id="filter">
+ <title>Фильтры</title>
+ <para>
+ Фильтры используются для пометки спама и нежелательных сообщений.
+ Вы можете задать любое количество фильтров,
+ они будут применены ко всем письмам при каждом обновлении списка сообщений.
+ </para>
+ <para>
+ В диалоге "Фильтры" вы можете указать состояние фильтров - включены, выключены или
+ настроены на "автоматическое удаление". В последнем режиме все помеченные фильтрами сообщения
+ будут автоматически удалены с сервера. Пожалуйства, проверяйте свои фильтры перед активацией
+ данного режима! Возможно, полезным будет предварительное тестирование фильтров во "включенном"
+ состоянии без непосредственного удаление писем.
+ В файле ~/.kde/share/apps/kshowmail/kshowmail.log вы можете найти информацию обо всех автоматически
+ удаленных сообщениях.
+ </para>
+
+ <para>
+ Каждый фильтр состоит из одного или двух условий, которые могут быть связаны
+ друг с другом. Наиболее широкие возможности предоставляет использование регулярных
+ выражений. Для работы с регулярными выражениями используется библиотека Qt, для их подробного
+ описания смотрите документацию класса KRegExpEditor или одно из многочисленных руководств по
+ регулярным выражениям в интернете.
+ <ulink url="help:/KRegExpEditor/whatIsARegExp.html">
+ Что такое регулярное выражение?
+ </ulink>
+ </para>
+
+ <sect2>
+ <title>Примеры регулярных выражений</title>
+ <para>
+ MS Corporation|Microsoft: соответствует "MS Corporation" и "Microsoft"
+ </para>
+ <para>
+ (mail|message) delivery: соответствует "mail delivery" и "message delivery"
+ </para>
+ <para>
+ ms (program )?security: соответствует "ms security" и "ms program security"
+ </para>
+ <para>
+ [\x0100-\xffff]: соответствует всем символам за пределами ASCII (китайские, корейские символы)
+ </para>
+ <para>
+ Также приведенные шаблоны могут совмещены друг с другом..
+ </para>
+ </sect2>
+</sect1>
+
+<sect1 id="cmdline">
+<title>Параметры командной строки</title>
+<para>
+Вы можете указать в командной строке требуемый почтовый ящик.
+При указании опции -config в командной строке, будет немедленно запущен конфигурационный диалог..
+Это может быть полезно, если выбрана функция "Выход, если нет новой почты".
+Параметр -refresh может быть использовать для немедленного начала проверки почты после старта.
+</para>
+</sect1>
+<sect1 id="extprog">
+<title>Внешние программы</title>
+<para>
+Для запуска внешней программы (например, kmail), добавьте пункт в командное меню.
+Названия команд показываются в меню "Действия". Если название содержит символ '&amp;', следующая за ним буква будет
+использована как горячая клавиша для данного пункта.
+</para>
+<para> Следующие параметры заменяются на их действительные значения:</para>
+<para> &lt;user&gt; Имя пользователя</para>
+<para> &lt;passwd&gt; Пароль</para>
+<para> &lt;server&gt; Сервер</para>
+<para> &lt;header&gt; Заголовки сообщения будут скопированы во временный файл, имя которого будет передано в данном параметре.</para>
+<para> &lt;body&gt; Тело сообщения будет скопировано во временный файл, имя которого будет передано в данном параметре.</para>
+<para>
+ Очень эффективным является использование DCOP-команд, которые позволяет вызывать выбранные функции
+ других KDE-программ.
+ Вы можете создать команду, которая вызовет KMail для получения почты с сервера:
+</para>
+<para>
+ <command>dcop kmail KMailIface checkMail</command>
+</para>
+<para>
+ Программа kdcop полезна для исследования функций другий KDE-программ.
+</para>
+</sect1>
+<sect1 id="complain">
+<title> Отправка писем-жалоб на спам </title>
+<para>
+ Команда для отправки писем-жалоб является особенной командой.
+ Для большей гибкости, она была реализована как внешняя команда.
+ Рекомендуется использовать программу на perl "spam.pl" версии 0.20 или выше, ее автор - Daniel Stenberg.
+ Загрузить ее можно со страницы <ulink url="http://spam.sourceforge.net">http://spam.sourceforge.net.</ulink>
+ Чтобы настроить spam.pl для работы с kshowmail, следуйте инструкциям:
+</para>
+<para>
+ 1. Установите spam.pl в соответствующий каталог, например /usr/local/bin.
+</para>
+<para>
+ 2. Создайте файлы ~/.spam/friends и ~/.spam/from.
+ Подробности - в документации spam.pl.
+</para>
+<para>
+ 3. Создайте пункт в командном меню kshowmail.
+ Название пункта должно быть указано в виде "complain"!
+ В противном случае команда не будет распознана.
+ Введите данный текст как командную строку:
+</para>
+<para>
+ <command>spam.pl -d &lt; &lt;body&gt;</command>
+</para>
+<para>
+ В результате тело сообщения будет передано spam.pl.
+</para>
+<para>
+ Отладочный параметр -d может быть удален впоследствие, когда вы будет удовлетворены полученными результатами.
+ Только после этого письма со спам-жалобами будет реально отправляться.
+ Также вы можете добавить прочие необходимые вам опции.
+</para>
+<para>
+ Внимательное заполняйте файл ~/.spam/friends.
+ Как минимум, в нем должен быть указан ваш локальный домен.
+</para>
+<para>
+ После нажатия кнопки "Отправить спам-жалобы", для каждого выделенного сообщения будут созданы и немедленно отправлены
+ одно или несколько писем со спам-жалобами.
+ Получатель писем определяется spam.pl.
+ Пока опция -d присутствует, будет только показано сообщение с описанием предполагаемых действий.
+ Чтобы активировать отправку, удалите отладочный флаг.
+</para>
+<para>
+ Если вы предпочитаете использовать другие анти-спам программы, попытайтесь настроить их аналогичным образом. Вы можете
+ связаться с разработчиками, если у вас возникнул какие-либо затруднения.
+</para>
+</sect1>
+</chapter>
+
+<chapter id="faq">
+<title>Вопросы и ответы</title>
+
+<!-- (OPTIONAL but recommended) This chapter should include all of the silly
+(and not-so-silly) newbie questions that fill up your mailbox. This chapter
+should be reserved for BRIEF questions and answers! If one question uses more
+than a page or so then it should probably be part of the
+"Using this Application" chapter instead. You should use links to
+cross-reference questions to the parts of your documentation that answer them.
+This is also a great place to provide pointers to other FAQ's if your users
+must do some complicated configuration on other programs in order for your
+application work. -->
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>в следующей версии</para>
+</question>
+<answer>
+<para>в следующей версии</para>
+</answer>
+</qandaentry>
+</qandaset>
+</chapter>
+
+<chapter id="credits">
+
+<!-- Include credits for the programmers, documentation writers, and
+contributors here. The license for your software should then be included below
+the credits with a reference to the appropriate license file included in the KDE
+distribution. -->
+
+<title>Авторы и лицензия</title>
+
+<para>
+&kapp;
+</para>
+<para>
+Program copyright 2000-2003 Eggert Ehmke <email>eggert.ehmke@berlin.de</email>
+</para>
+<para>
+Contributors:
+<itemizedlist>
+<listitem>
+<para>
+Nicolas Vignal <email>nicolas.vignal@fnac.net</email> who provided RPMs for RedHat,
+and the french translation.
+</para>
+</listitem>
+<listitem>
+<para>
+Edgardo Garcia <email>edyx@mindless.com</email> who provided the spanish translation
+</para>
+</listitem>
+<listitem>
+<para>
+Mattias Newzella <email>newzella@swipnet.se</email> who provided the swedish translation
+</para>
+</listitem>
+<listitem>
+<para>
+Sandor Laza <email>slaza@xs4all.nl</email> who provided the hungarian translation
+</para>
+</listitem>
+<listitem>
+<para>
+Gabriele Postorino <email>g.posto@tin.it</email> who provided the italian translation
+</para>
+</listitem>
+<listitem>
+<para>
+Oleg Ivanov <email>saruman@unigsm.com</email> who provided the russian translation
+</para>
+</listitem>
+<listitem>
+<para>
+Много пользователей тестировали программу и предлагали различные идеи, которые
+теперь вошли в kshowmail. Авторы благодарят их всех!
+</para>
+</listitem>
+</itemizedlist>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove. Commercial development should -->
+<!-- replace this with their copyright and either remove it or re-set this.-->
+
+<!-- Determine which license your application is licensed under,
+ and delete all the remaining licenses below:
+
+ (NOTE: All documentation are licensed under the FDL,
+ regardless of what license the application uses) -->
+
+&underGPL; <!-- GPL License -->
+</chapter>
+
+<appendix id="installation">
+<title>Установка</title>
+
+<sect1 id="getting-kshowmail">
+<title>Как загрузить Kshowmail</title>
+
+<para>
+Последнюю версию можно найти на странице
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+
+</para>
+</sect1>
+
+<sect1 id="requirements">
+<title>Системные требования</title>
+
+<!--
+List any special requirements for your application here. This should include:
+.Libraries or other software that is not included in kdesupport,
+kdelibs, or kdebase.
+.Hardware requirements like amount of RAM, disk space, graphics card
+capabilities, screen resolution, special expansion cards, etc.
+.Operating systems the app will run on. If your app is designed only for a
+specific OS, (you wrote a graphical LILO configurator for example) put this
+information here.
+-->
+
+<para>
+ Разработавалась и тестировалась на SuSE 8.2 и Gentoo Linux.
+ Для использования KShowMail необходим KDE 3.4.x.
+</para>
+
+<!-- For a list of updates, you may refer to the application web site
+or the ChangeLog file, or ... -->
+<para>
+Список изменений можно найти на странице
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+</para>
+</sect1>
+
+<sect1 id="compilation">
+<title>Компиляция и установка</title>
+
+<para>
+ Чтобы скомпилировать и установить Kshowmail на вашей системе, зайдите в каталог с распакованным
+ исходным кодом и наберите:
+ <screen width="40">
+ <prompt>%</prompt> <userinput>./configure</userinput>
+ или:
+ <prompt>%</prompt> <userinput>./configure --prefix=$KDEDIR</userinput>
+
+ <prompt>%</prompt> <userinput>make</userinput>
+
+ как пользователь root:
+ <prompt>%</prompt> <userinput>make install</userinput>
+ </screen>
+ Может оказать полезным установить переменную окружения KDEDIR перед этим.
+</para>
+
+<para>
+ Поскольку Kshowmail использует autoconf и automake, компиляция не должна вызвать проблем на вашей системе.
+ При их возникновении, пожалуйства, свяжитесь с разработчиками.
+</para>
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/sv/Makefile.am b/doc/sv/Makefile.am
new file mode 100644
index 0000000..d2baa55
--- /dev/null
+++ b/doc/sv/Makefile.am
@@ -0,0 +1,9 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+
+
+EXTRA_DIST = index.docbook
+
+####### kdevelop will overwrite this part!!! (end)############
+
+KDE_LANG = sv
+KDE_DOCS = kshowmail
diff --git a/doc/sv/index.docbook b/doc/sv/index.docbook
new file mode 100644
index 0000000..1925365
--- /dev/null
+++ b/doc/sv/index.docbook
@@ -0,0 +1,370 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1-Based Variant V1.0//EN" "dtd/kdex.dtd" [
+ <!ENTITY kshowmail '<application>Kshowmail</application>'>
+ <!ENTITY kapp "&kshowmail;"><!-- replace kshowmail here -->
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % Swedish "INCLUDE"><!-- change language only here -->
+
+
+ <!-- Do not define any other entities; instead, use the entities
+ from kde-genent.entities and $LANG/user.entities. -->
+]>
+<!-- kdoctemplate v0.8 October 1 1999
+ Minor update to "Credits and Licenses" section on August 24, 2000
+ Removed "Revision history" section on 22 January 2001 -->
+
+<!-- ................................................................ -->
+
+<!-- The language must NOT be changed here. -->
+
+<book lang="&language;">
+
+<!-- This header contains all of the meta-information for the document such
+as Authors, publish date, the abstract, and Keywords -->
+
+<bookinfo>
+<title>Anv&auml;ndarmanual f&ouml;r Kshowmail</title>
+
+<authorgroup>
+<author>
+<firstname>Eggert</firstname>
+<surname>Ehmke</surname>
+<affiliation>
+<address><email>eggert.ehmke@berlin.de</email></address>
+</affiliation>
+</author>
+<author>
+<firstname>Allistar</firstname>
+<surname>Melville</surname>
+<affiliation>
+<address><email>allistar@silvermoon.co.nz</email></address>
+</affiliation>
+</author>
+</authorgroup>
+
+<!-- TRANS:ROLES_OF_TRANSLATORS -->
+
+<copyright>
+<year>2000</year>
+<year>2001</year>
+<year>2002</year>
+<year>2003</year>
+<holder>Eggert Ehmke</holder>
+</copyright>
+<!-- Translators: put here the copyright notice of the translation -->
+<!-- Put here the FDL notice. Read the explanation in fdl-notice.docbook
+ and in the FDL itself on how to use it. -->
+<legalnotice>&FDLNotice;</legalnotice>
+
+<!-- Date and version information of the documentation
+Don't forget to include this last date and this last revision number, we
+need them for translation coordination !
+Please respect the format of the date (DD/MM/YYYY) and of the version
+(V.MM.LL), it could be used by automation scripts.
+Do NOT change these in the translation. -->
+
+<date>02/20/2003</date>
+<releaseinfo>3.0.4</releaseinfo>
+
+<!-- Abstract about this handbook -->
+
+<abstract>
+<para>
+Den h&auml;r anv&auml;ndarmanualen behandlar Kshowmail version 3.0.4
+</para>
+</abstract>
+
+<!-- This is a set of Keywords for indexing by search engines.
+Please at least include KDE, the KDE package it is in, the name
+ of your application, and a few relevant keywords. -->
+
+<keywordset>
+<keyword>KDE</keyword>
+<keyword>kshowmail</keyword>
+<keyword>kmail</keyword>
+<keyword>pop3</keyword>
+<keyword>brevkontrollant</keyword>
+</keywordset>
+
+</bookinfo>
+
+<!-- The contents of the documentation begin here. Label
+each chapter so with the id attribute. This is necessary for two reasons: it
+allows you to easily reference the chapter from other chapters of your
+document, and if there is no ID, the name of the generated HTML files will vary
+from time to time making it hard to manage for maintainers and for the CVS
+system. Any chapter labelled (OPTIONAL) may be left out at the author's
+discretion. Other chapters should not be left out in order to maintain a
+consistent documentation style across all KDE apps. -->
+
+<chapter id="introduction">
+<title>Introduktion</title>
+
+<!-- The introduction chapter contains a brief introduction for the
+application that explains what it does and where to report
+problems. Basically a long version of the abstract. Don't include a
+revision history. (see installation appendix comment) -->
+
+<para>
+Kshowmail &auml;r ett KDE-verktyg f&ouml;r att bevaka brev p&aring; en POP3-server.
+Brevhuvuden och hela brev kan visas utan att ladda ned dem till den lokala e-postklienten.
+Otrevliga brev kan direkt tas bort fr&aring;n servern.
+Listan p&aring; breven som visas kan uppdateras med inst&auml;llningsbara tidtagare(timers).
+Ett ljud kan spelas upp om nya brev anl&auml;nder.
+En kommandomeny till&aring;ter anv&auml;ndaranpassade kommandon som till exempel fetchmail eller sendmail.
+Ett specialkommando kan definieras f&ouml;r att skicka klagom&aring;lsbrev mot o&ouml;nskad e-post(spam).
+Flera konton st&ouml;ds.
+</para>
+</chapter>
+
+<chapter id="using-kshowmail">
+<title>Att anv&auml;nda Kshowmail</title>
+
+<!-- This chapter should tell the user how to use your app. You should use as
+many sections (Chapter, Sect1, Sect3, etc...) as is necessary to fully document
+your application. -->
+
+<sect1 id="kshowmail-features">
+<title>Generell anv&auml;ndning</title>
+<para>
+L&auml;gg till n&aring;gra konton i konfigurationsdialogrutan "Inst&auml;llningar". Anslut till Internet. Nu kan du lista breven p&aring;
+pop3-servern genom att trycka p&aring; knappen "Uppdatera". Alla andra knappar och menyposter &auml;r
+sj&auml;lvf&ouml;rklarande.
+Delete-tangenten kan anv&auml;ndas f&ouml;r att ta bort brev.
+Ha s&aring; kul!
+</para>
+</sect1>
+<sect1 id="cmdline">
+<title>Kommandoradsparametrar</title>
+<para>
+Du kan tillhandah&aring;lla det valda kontot p&aring; kommandoraden.
+Om alternativet -config anges p&aring; kommandoraden s&aring; startas omedelbart konfigurationsdialogrutan.
+Det h&auml;r kan vara anv&auml;ndbart om funktionen "Avsluta Kshowmail om inga nya brev" &auml;r aktiverad.
+Alternativet -refresh kan anv&auml;ndas f&ouml;r att omedelbart starta uppdateringsprocessen.
+</para>
+</sect1>
+<sect1 id="extprog">
+<title>Externa program</title>
+<para>
+F&ouml;r att starta externa program som till exempel fetchmail, l&auml;gg till en post i Kommandon-menyn.
+Kommandonamn visas i menyn &Aring;tg&auml;rder. Om de inneh&aring;ller tecknet "&amp;", kommer f&ouml;ljande tecken att
+anv&auml;ndas som tangentbordsgenv&auml;g.
+</para>
+<para>
+F&ouml;ljande parametrar &auml;r alias och kommer att ers&auml;ttas med de faktiska v&auml;rdena:</para>
+<para> &lt;user&gt; Anv&auml;ndarnamn</para>
+<para> &lt;passwd&gt; L&ouml;senord</para>
+<para> &lt;server&gt; Server</para>
+<para> &lt;header&gt; Brevhuvudet kommer att kopieras till en tempor&auml;r fil, namnet p&aring; den h&auml;r filen kommer att ers&auml;ttas h&auml;r.</para>
+<para> &lt;body&gt; Brevkroppen kommer att kopieras till en tempor&auml;r fil, namnet p&aring; den h&auml;r filen kommer att ers&auml;ttas h&auml;r.</para>
+</sect1>
+<sect1 id="complain">
+<title> Att skicka klagom&aring;lsbrev </title>
+<para>
+Kommandot f&ouml;r att skicka klagom&aring;lsbrev &auml;r ett speciellt kommando.
+F&ouml;r att beh&aring;lla flexibilitet s&aring; har ocks&aring; det blivit implementerat som ett externt kommando.
+Jag f&ouml;resl&aring;r att perl-programmet "spam.pl" version 0.20 eller h&ouml;gre av Daniel Stenberg anv&auml;nds.
+Det kan h&auml;mtas p&aring; <ulink url="http://spam.sourceforge.net">http://spam.sourceforge.net.</ulink>
+F&ouml;r att anv&auml;nds det med Kshowmail, f&ouml;lj dessa steg:
+</para>
+<para>1. Installera spam.pl i en passande katalog, t ex /usr/local/bin.</para>
+<para>2. Skapa filerna ~/.spam/friends och ~/.spam/from.
+Fler detaljer finns i dokumentationen till spam.pl.</para>
+<para>3. Skapa en post i Kshowmails kommandomeny.
+Namnet p&aring; psoten m&aring;ste vara "complain"!
+Annars kommer inte kommandot att k&auml;nnas igen.
+Ange denna text som en kommandorad:</para>
+<para> spam.pl -d &lt; &lt;body&gt;</para>
+<para> Det h&auml;r f&aring;r brevkroppen att skickas till spam.pl.</para>
+<para/>
+<para> Fels&ouml;kningsalternativet -d kan senare tas bort om du &auml;r n&ouml;jd med resultatet.
+Endast d&aring; kommer klagom&aring;lsbrev att skickas.
+L&auml;gg till fler alternativ om du s&aring; &ouml;nskar.</para>
+<para>
+Var f&ouml;rsiktig s&aring; att du v&auml;ljer r&auml;tt poster i ~/.spam/friends-filen.
+&Aring;tminstone ska den lokala dom&auml;nen skrivas in h&auml;r.
+Anv&auml;nd den h&auml;r funktionen p&aring; egen risk!
+</para>
+<para>
+N&auml;r du trycker p&aring; knappen "Skicka klagom&aring;l" kommer det att f&ouml;r varje valt brev genereras
+ett eller flera klagom&aring;lsbrev som omedelbart kommer att skickas iv&auml;g.
+Mottagaren av de h&auml;r breven best&auml;ms av spam.pl.
+S&aring; l&auml;nge som alternativet -d &auml;r aktiverat, kommer endast ett meddelande att visas f&ouml;r att visa vad som
+egentligen skulle ha h&auml;nt. F&ouml;r att aktivera funktionen m&aring;ste du f&ouml;rst ta bort fels&ouml;kningsalternativet.
+</para>
+<para> Om du f&ouml;redrar att anv&auml;nda andra program f&ouml;r att hantera o&ouml;nskad e-post, f&ouml;rs&ouml;k d&aring; att st&auml;lla in
+dem p&aring; ett liknande s&auml;tt. Kontakta mig om du st&ouml;ter p&aring; problem.
+</para>
+</sect1>
+</chapter>
+
+<chapter id="faq">
+<title>Fr&aring;gor och Svar</title>
+
+<!-- (OPTIONAL but recommended) This chapter should include all of the silly
+(and not-so-silly) newbie questions that fill up your mailbox. This chapter
+should be reserved for BRIEF questions and answers! If one question uses more
+than a page or so then it should probably be part of the
+"Using this Application" chapter instead. You should use links to
+cross-reference questions to the parts of your documentation that answer them.
+This is also a great place to provide pointers to other FAQ's if your users
+must do some complicated configuration on other programs in order for your
+application work. -->
+
+&reporting.bugs;
+&updating.documentation;
+
+<qandaset id="faqlist">
+<qandaentry>
+<question>
+<para>Finns ej f&ouml;r tillf&auml;llet</para>
+</question>
+<answer>
+<para>Finns ej f&ouml;r tillf&auml;llet</para>
+</answer>
+</qandaentry>
+</qandaset>
+</chapter>
+
+<chapter id="credits">
+
+<!-- Include credits for the programmers, documentation writers, and
+contributors here. The license for your software should then be included below
+the credits with a reference to the appropriate license file included in the KDE
+distribution. -->
+
+<title>Tack till och licens</title>
+
+<para>
+&kapp;
+</para>
+<para>
+Programmet copyright 2000-2003 Eggert Ehmke <email>eggert.ehmke@berlin.de</email>
+</para>
+<para>
+Personer som bidragit:
+<itemizedlist>
+<listitem>
+<para>
+Nicolas Vignal <email>nicolas.vignal@fnac.net</email> som tillhandah&ouml;ll RPM:er f&ouml;r RedHat
+och den franska &ouml;vers&auml;ttningen.
+</para>
+</listitem>
+<listitem>
+<para>
+Edgardo Garcia <email>edyx@mindless.com</email> som tillhandah&ouml;ll den spanska &ouml;vers&auml;ttningen
+</para>
+</listitem>
+<listitem>
+<para>
+Mattias Newzella <email>newzella@swipnet.se</email> som tillhandah&ouml;ll den svenska &ouml;vers&auml;ttningen
+</para>
+</listitem>
+<listitem>
+<para>
+M&aring;nga anv&auml;ndare som gjorde tester och kom med m&aring;nga id&egrave;er som nu &auml;r implementerade i Kshowmail.
+Tack till alla er!
+</para>
+</listitem>
+</itemizedlist>
+</para>
+
+<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
+
+&underFDL; <!-- FDL: do not remove. Commercial development should -->
+<!-- replace this with their copyright and either remove it or re-set this.-->
+
+<!-- Determine which license your application is licensed under,
+ and delete all the remaining licenses below:
+
+ (NOTE: All documentation are licensed under the FDL,
+ regardless of what license the application uses) -->
+
+&underGPL; <!-- GPL License -->
+</chapter>
+
+<appendix id="installation">
+<title>Installation</title>
+
+<sect1 id="getting-kshowmail">
+<title>Att erh&aring;lla Kshowmail</title>
+
+<para>
+Den aktuella versionen kan hittas p&aring;
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink> eller p&aring;
+<ulink url="http://freshmeat.net">http://freshmeat.net</ulink>
+
+</para>
+</sect1>
+
+<sect1 id="requirements">
+<title>Krav</title>
+
+<!--
+List any special requirements for your application here. This should include:
+.Libraries or other software that is not included in kdesupport,
+kdelibs, or kdebase.
+.Hardware requirements like amount of RAM, disk space, graphics card
+capabilities, screen resolution, special expansion cards, etc.
+.Operating systems the app will run on. If your app is designed only for a
+specific OS, (you wrote a graphical LILO configurator for example) put this
+information here.
+-->
+
+<para>
+F&ouml;r att kunna anv&auml;nda Kshowmail m&aring;ste du ha KDE 3.1.x.
+</para>
+
+<!-- For a list of updates, you may refer to the application web site
+or the ChangeLog file, or ... -->
+<para>
+Du kan hitta en lista &ouml;ver &auml;ndringar p&aring;
+<ulink url="http://sourceforge.net/projects/kshowmail">
+http://sourceforge.net/projects/kshowmail</ulink>
+</para>
+</sect1>
+
+<sect1 id="compilation">
+<title>Kompilering och installation</title>
+
+<para>
+F&ouml;r att kompilera och installera Kshowmail p&aring; ditt system, ange f&ouml;ljande i baskatalogen p&aring; Kshowmail-distributionen:
+<screen width="40">
+<prompt>%</prompt> <userinput>./configure</userinput>
+<prompt>%</prompt> <userinput>make</userinput>
+<prompt>%</prompt> <userinput>make install</userinput>
+</screen>
+</para>
+
+<para>Eftersom Kshowmail anv&auml;nder autoconf och automake b&ouml;r du inte ha n&aring;gra problem med att kompilera det.
+Om du skulle st&ouml;ta p&aring; problem var d&aring; v&auml;nlig och rapportera det till mig.</para>
+
+</sect1>
+
+</appendix>
+
+&documentation.index;
+</book>
+<!--
+Local Variables:
+mode: sgml
+sgml-minimize-attributes:nil
+sgml-general-insert-case:lower
+sgml-indent-step:0
+sgml-indent-data:nil
+End:
+-->
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/kshowmail.lsm b/kshowmail.lsm
new file mode 100644
index 0000000..5f84dc4
--- /dev/null
+++ b/kshowmail.lsm
@@ -0,0 +1,14 @@
+Begin3
+Title: Kshowmail
+Version: 2.1
+Entered-date:
+Description:
+Keywords:
+Author: Eggert Ehmke <eggert.ehmke@berlin.de>
+Maintained-by: Eggert Ehmke <eggert.ehmke@berlin.de>
+Primary-site:
+Home-page: http://
+Original-site:
+Platforms: Linux and other Unices
+Copying-policy: GNU Public License
+End
diff --git a/kshowmail.spec b/kshowmail.spec
new file mode 100644
index 0000000..f810ee6
--- /dev/null
+++ b/kshowmail.spec
@@ -0,0 +1,120 @@
+# define for SuSE
+
+%if %{_vendor} == redhat
+%define suse_version 0
+%endif
+%if %{_vendor} == Mandriva
+%define suse_version 0
+%endif
+
+%define su10 0
+%if %{suse_version} == 1000 || %{suse_version} == 1010 || %{suse_version} == 1020 || %{suse_version} == 1030
+%define su10 1
+%endif
+%define su11 0
+%if %{suse_version} == 1100
+%define su11 1
+%endif
+%define su9 0
+%if %{suse_version} == 900 || %{suse_version} == 910 || %{suse_version} == 920 || %{suse_version} == 930
+%define su9 1
+%endif
+
+%define _prefix /usr
+%define configure_opts %nil
+
+Summary: POP mail checker for KDE
+Name: kshowmail
+Version: 3.3.1
+Release: 1
+License: GPL
+Vendor: Eggert Ehmke <eggert.ehmke@berlin.de>
+Url: http://www.sourceforge.net/projects/kshowmail
+
+Packager: D. Scott Barninger <barninger@fairfieldcomputers.com>
+Group: Mail
+Source: http://prdownloads.sourceforge.net/kshowmail/%{name}-%{version}.tar.gz
+#Patch: %{name}-%{version}-patch
+BuildRoot: /var/tmp/kshowmail-root
+
+%if %{su10} || %{su11}
+Requires: qt3 >= 3.3, kdelibs3 >= 3.4
+BuildRequires: qt3-devel >= 3.3, kdelibs3-devel >= 3.4, kdepim3-devel
+%else
+Requires: qt >= 3.2, kdelibs >= 3.1
+BuildRequires: qt-devel >= 3.2, kdelibs-devel >= 3.1, kdepim3-devel
+%endif
+
+%description
+kShowmail is a KDE tool for watching for email on POP3 servers.
+Headers and complete email messages can be displayed, and email can
+be deleted without downloading. The information can be refreshed via timers,
+and a sound can be played when new email arrives. External programs like
+fetchmail/sendmail can be called via configurable menu entries or if new mail
+arrives. Spam complaints can also be sent via configurable menus.
+
+# SuSE turns off stripping of binaries by default. In order to get
+# stripped packages we must generate debug package. RedHat and Mandriva
+# turn debug packages on by default but strip binaries regardless.
+%if %{su9} || %{su10}
+%debug_package
+%endif
+
+%prep
+%setup
+#%patch -p1
+
+./configure %{configure_opts}
+
+%build
+
+make
+
+%install
+[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
+make install DESTDIR=$RPM_BUILD_ROOT
+
+cd $RPM_BUILD_ROOT
+find . -type d | sed '1,2d;s,^\.,\%attr(-\,root\,root) \%dir ,' > $RPM_BUILD_DIR/file.list.kshowmail
+find . -type f | sed 's,^\.,\%attr(-\,root\,root) ,' >> $RPM_BUILD_DIR/file.list.kshowmail
+find . -type l | sed 's,^\.,\%attr(-\,root\,root) ,' >> $RPM_BUILD_DIR/file.list.kshowmail
+
+%clean
+[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
+rm -rf $RPM_BUILD_DIR/kshowmail-%{version}
+rm -rf ../file.list.kshowmail
+
+
+%files -f ../file.list.kshowmail
+%doc AUTHORS ChangeLog COPYING README ReleaseNotes
+
+%changelog
+* Sun Apr 20 2008 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- 3.3.0 release, fix if tag for debug package
+* Sun Feb 03 2008 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- add debug package to strip suse
+* Sat Oct 27 2007 <scott at fairfieldcomputers dot com>
+- add SuSE 10.3
+* Fri Jul 06 2007 <scott at fairfieldcomputers dot com>
+- added docs files
+* Sat Apr 21 2007 <scott at fairfieldcomputers dot com>
+- remove parallel build setup
+* Sat Apr 14 2007 <scott at fairfieldcomputers dot com>
+- remove all configure options so 64 bit will work
+- set prefix to /usr
+- move kdepim3-devel to buildrequires
+* Fri Mar 30 2007 <scott at fairfieldcomputers dot com>
+- add additional 64 bit configure options
+* Sun Mar 18 2007 <scott at fairfieldcomputers dot com>
+- add suse platform detection
+- change make install-strip target to make install
+* Sun Feb 25 2007 <scott at fairfieldcomputers dot com>
+- add kdepim-devel build requirement
+* Sun Dec 17 2006 <scott at fairfieldcomputers dot com>
+- add 64 bit support
+* Tue Jan 24 2006 <scott at fairfieldcomputers dot com>
+- patch showrecordelem.cpp for SuSE 10.0 build
+- define SuSE prefix to /opt/kde3
+* Sat Sep 13 2003 <scott at fairfieldcomputers dot com>
+- initial spec file modified from original by ian geiser <geiseri at msoe dot edu>
+- for RedHat
diff --git a/kshowmail/AlertDlg.ui b/kshowmail/AlertDlg.ui
new file mode 100644
index 0000000..506a530
--- /dev/null
+++ b/kshowmail/AlertDlg.ui
@@ -0,0 +1,114 @@
+<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+<class>AlertDlg</class>
+<widget class="QDialog">
+ <property name="name">
+ <cstring>AlertDlg</cstring>
+ </property>
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>271</width>
+ <height>127</height>
+ </rect>
+ </property>
+ <property name="caption">
+ <string>KShowmail</string>
+ </property>
+ <grid>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QPushButton" row="2" column="2">
+ <property name="name">
+ <cstring>m_ButtonIgnore</cstring>
+ </property>
+ <property name="text">
+ <string>Ignore</string>
+ </property>
+ </widget>
+ <widget class="QPushButton" row="2" column="0" rowspan="1" colspan="2">
+ <property name="name">
+ <cstring>m_ButtonOk</cstring>
+ </property>
+ <property name="text">
+ <string>Show main window</string>
+ </property>
+ </widget>
+ <widget class="QLabel" row="0" column="0" rowspan="2" colspan="1">
+ <property name="name">
+ <cstring>PixmapLabel2</cstring>
+ </property>
+ <property name="pixmap">
+ <pixmap>image0</pixmap>
+ </property>
+ <property name="scaledContents">
+ <bool>true</bool>
+ </property>
+ </widget>
+ <widget class="QLabel" row="0" column="1" rowspan="1" colspan="2">
+ <property name="name">
+ <cstring>QLabel_1</cstring>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>14</pointsize>
+ <bold>1</bold>
+ <italic>1</italic>
+ </font>
+ </property>
+ <property name="text">
+ <string>New mail</string>
+ </property>
+ </widget>
+ <widget class="QLabel" row="1" column="1" rowspan="1" colspan="2">
+ <property name="name">
+ <cstring>QLabel_2</cstring>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>14</pointsize>
+ <bold>1</bold>
+ <italic>1</italic>
+ </font>
+ </property>
+ <property name="text">
+ <string>has arrived !</string>
+ </property>
+ </widget>
+ </grid>
+</widget>
+<images>
+ <image name="image0">
+ <data format="XPM.GZ" length="6670">789ced96db4e23471086ef790a8bba4351ade7e81945b98031272fc7656177897231278319836db0394579f7d454550ff6d86683b41b4511db5bb43f4fd3d57fffd53d7c586b7c3dda6fac7d58b91bc7e35eda482fe3dbc65a36b9be7efafd8fdffe5c59758306fdb72cb761affeb2b27a3c6ea48d83c14d5e02b609a0c9ff98ed92ada6955a41c9901bb6e5f9a9b0dd543e17760261489903331eb292ed267d239c289bf97c61331f9c289bf191b01bb8168fdf2fd9b11c5d2f7c346c87fcbc63d8e1f1f0593970f83998dfd7f96058b24be3953bc2aed98f436593df628e9da0c9fb8307257bb69b7abcb9782bec35953f2987c2f024dc0a5b0ef34838b0dc9879c3b08edf638e7dc3cf25fbb6edaade96b01be8f35de16afc99615fd6b3a96cf23f32c7663fb12c0e68394e53c7df0bbbaa0706c2d5efdf08b73c1d7f673890e7a7caa1f27ac981e3653eebc51361df12bf90fd0a5d3f54ffdac2a115bbcc7de1384e84797d611ae7f21cb91e62b75aef8370188632fe4a388e538fb9104e6c9dbf279c1ade14ce6dc987ec47e2ba81aed7136e197fb799b340f5e24038b7251f364b4e3de33f4e84533b93e743655d1f8e8433bbeb3347c2d57c41c9991758eac78e709c8729f35838f5938cc7f7853393afa79c2b17c2b9797ea99c67725f6c19ce653d0fc25d5b18b8feb3dc577f41c6e7a11724cc87c2b1a77e39caea1fa0b0f103bf29c7525f3031acfe5f08a7b1eabb16ce0ce7c2b9591fd767eed37d24e7f748b895e9fe1d0b937fb2de583913467d1e5a7a1f7c5136faba86a5def04638337e5e0957fb9b1ad6fdd4dfefdaa9acffc2b08ecf94631d0fca5da90fe0fb88ccf13c395f1bcaa19ecf4761d22beb15fdb49f5a2f7c5f757d735fe393b0e36abdbbc2aeabfacf94cdfdf85539d5fbec5ad86b0a6328ec9bfb6247d8ec3f26c25d53efb1b2ea43beffbaddea7db52b5cbd5f2e2b167fd795cdfb0c84cdfb01b785cd7a8fc73fb7bde778cff19ee3bf900301e31f1d7339124c31c39c22a596f3cf14bb14171497143d8e2b8a62aaef735c53dc500c28861c23ca728b77351d098ea94d34ee354bd91eaa78c4277ca6b68e1b94c1b47e1591e618d127c03665d99cca11bfaa618bfb6d9ebf873bdcefb28e624a43841dfc887b14fbaca38d0778b840c798669318cf6978e656d067f97434a5a154d0c763caf6094ff033a929739ccee448bea3e10acf74e62f34a37cfa3ae34344ed1b9ed32e37d1521d764d87acfd5e75dcab2ad150cce870f4933ba5417478e853961606eac7ac8e173f8c86172d575a47219e01620f407240cc1aa6fc8004cf21a5c864af209ff3235dd05efc28380ae8aa8a75ad296911cd1a55fdf08d7ecc9c0bb8804bcde12c3917436efd257ed41af4e0aad400e5eacba0bd876bd5f0a5565366fd91e62896f851d7d0861b18d01a47d40f61447ccb3edcc178e65c88e303d660a258e847dd87a21e30610d8f3367dbd4d4b486653a92f97301035a3bf9401aeee1013b544fbbf048fc201a6058d3307c831f5a4bf0844378a20c7d1a1d41b94bebf4a9800dca52f611b4e7bca080cda57ed4cf76af3a171cb045f755edbb053e488b5ef563ea3c900e52401515d1ae44b00d3bb47bec0355c2036e72dfa1756fd0b8ce8c1ffd257ed4efa71efb31a29d296054cec635d6865d9a7b041dee3f963db53de8e8ec13fe39307ec07e4d47fd4c57679b341d704d850b6ba95653d37ecce48817dc4fe65df7720b3ec3e1d4b998f7a1cc70445a2a3fe6742cbc9f66eea86738aeeea785e7a2d440d15fa82359f2ded6905b0a3e2dbd9fc469f3fd3ff7a3d0be2f5a48c3cbfbfbfbfd223fe087b79a1f94a5fd13da692dc71ddec2c9a24627c9a6d1f9db7bf83c9be3780ca7704a7f112d6f87af35d85fd8cefeddbf77df73bce778cff1bfcef1d7af2b7f0349d57768</data>
+ </image>
+</images>
+<connections>
+ <connection>
+ <sender>m_ButtonIgnore</sender>
+ <signal>clicked()</signal>
+ <receiver>AlertDlg</receiver>
+ <slot>reject()</slot>
+ </connection>
+ <connection>
+ <sender>m_ButtonOk</sender>
+ <signal>clicked()</signal>
+ <receiver>AlertDlg</receiver>
+ <slot>accept()</slot>
+ </connection>
+ <connection>
+ <sender>m_ButtonOk</sender>
+ <signal>clicked()</signal>
+ <receiver>AlertDlg</receiver>
+ <slot>slotOk()</slot>
+ </connection>
+</connections>
+<tabstops>
+ <tabstop>m_ButtonOk</tabstop>
+ <tabstop>m_ButtonIgnore</tabstop>
+</tabstops>
+<slots>
+ <slot>slotOk()</slot>
+</slots>
+<layoutdefaults spacing="6" margin="11"/>
+</UI>
diff --git a/kshowmail/Makefile.am b/kshowmail/Makefile.am
new file mode 100644
index 0000000..bf6eda0
--- /dev/null
+++ b/kshowmail/Makefile.am
@@ -0,0 +1,60 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+bin_PROGRAMS = kshowmail
+
+## INCLUDES were found outside kdevelop specific part
+
+kshowmail_SOURCES = AlertDlg.ui alertdialog.cpp configelem.cpp configlist.cpp \
+ decodeRFC2047.cpp encryption.cpp filteritem.cpp filteritemcriteria.cpp filterlog.cpp \
+ filterlogentry.cpp headerfilter.cpp kfeedback.cpp kshowmail.cpp kshowmaildoc.cpp \
+ kshowmaildock.cpp kshowmailfeedback.cpp kshowmailview.cpp kwalletaccess.cpp main.cpp \
+ senderlistfilter.cpp serverdialog.cpp showheaderdialog.cpp showlistviewitem.cpp \
+ showmaildialog.cpp showrecord.cpp showrecordelem.cpp uniqueapp.cpp filterlogview.cpp \
+ filterlogviewdeleteditem.cpp filterlogviewmoveditem.cpp
+kshowmail_LDADD = $(LIB_KUTILS) -lmimelib $(LIB_KFILE) $(LIB_KDEUI) \
+ $(LIB_KDECORE) $(LIB_QT) $(LIBSOCKET)
+
+
+EXTRA_DIST = main.cpp kshowmail.cpp kshowmail.h kshowmaildoc.cpp kshowmaildoc.h commandentry.cpp commandentry.h kshowmailview.cpp kshowmailview.h OptionDlg.ui OptionDlg.h optiondialog.cpp optiondialog.h ServerDlg.ui serverdialog.cpp serverdialog.h EditDlg.ui editdialog.cpp editdialog.h commanddialog.cpp commanddialog.h CommandDlg.ui commandlist.cpp commandlist.h CommandEntryDlg.ui commandentrydialog.cpp commandentrydialog.h configelem.cpp configelem.h kshowmaildock.cpp kshowmaildock.h configlist.cpp configlist.h AlertDlg.ui alertdialog.cpp alertdialog.h uniqueapp.cpp uniqueapp.h showrecordelem.cpp showrecordelem.h showrecord.cpp showrecord.h kshowmail.desktop decodeRFC2047.h decodeRFC2047.cpp showlistviewitem.cpp showlistviewitem.h kfeedback.cpp kfeedback.h kshowmailfeedback.cpp filter.cpp filter.h filterelem.cpp filterelem.h filterdialog.cpp filterdialog.h FilterDlg.ui FilterEntryDlg.ui filterentrydialog.cpp filterentrydialog.h filterlist.cpp filterlist.h logger.cpp logger.h
+
+
+####### kdevelop will overwrite this part!!! (end)############
+# this 10 paths are KDE specific. Use them:
+# kde_htmldir Where your docs should go to. (contains lang subdirs)
+# kde_appsdir Where your application file (.kdelnk) should go to.
+# kde_icondir Where your icon should go to.
+# kde_minidir Where your mini icon should go to.
+# kde_datadir Where you install application data. (Use a subdir)
+# kde_locale Where translation files should go to.(contains lang subdirs)
+# kde_cgidir Where cgi-bin executables should go to.
+# kde_confdir Where config files should go to.
+# kde_mimedir Where mimetypes should go to.
+# kde_toolbardir Where general toolbar icons should go to.
+# kde_wallpaperdir Where general wallpapers should go to.
+
+# set the include path for X, qt and KDE
+INCLUDES = $(all_includes)
+
+METASOURCES = AUTO
+
+# the library search path.
+kshowmail_LDFLAGS = $(all_libraries) $(KDE_RPATH)
+
+rcdir = $(kde_datadir)/kshowmail
+rc_DATA = kshowmailui.rc
+
+messages: rc.cpp
+ LIST=`find . -name \*.h -o -name \*.hh -o -name \*.H -o -name \*.hxx -o -name \*.hpp -o -name \*.cpp -o -name \*.cc -o -name \*.cxx -o -name \*.ecpp -o -name \*.C`; \
+ if test -n "$$LIST"; then \
+ $(XGETTEXT) $$LIST -o $(podir)/kshowmail.pot; \
+ fi
+
+noinst_HEADERS = constants.h encryption.h filteritem.h filteritemcriteria.h \
+ filterlog.h filterlogentry.h headerfilter.h kshowmail.desktop kwalletaccess.h \
+ senderlistfilter.h showheaderdialog.h showmaildialog.h types.h filterlogview.h \
+ filterlogviewdeleteditem.h filterlogviewmoveditem.h
+
+shelldesktopdir = $(kde_appsdir)/Internet
+shelldesktop_DATA = kshowmail.desktop
+
+KDE_ICON = kshowmail
+SUBDIRS = kcmconfigs
diff --git a/kshowmail/alertdialog.cpp b/kshowmail/alertdialog.cpp
new file mode 100644
index 0000000..b80f976
--- /dev/null
+++ b/kshowmail/alertdialog.cpp
@@ -0,0 +1,39 @@
+/***************************************************************************
+ alertdialog.cpp - description
+ -------------------
+ begin : Sun Nov 4 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#include "alertdialog.h"
+
+AlertDialog::AlertDialog(QWidget *parent, const char *name ):
+ AlertDlg(parent,name,true)
+{
+ // position the dialog at the upper left corner of the main window.
+ // if the main window is iconized, the last position on screen is used.
+ setGeometry (parent->x (), parent->y (), width (), height ());
+
+ // now show the dialog
+ show ();
+}
+
+AlertDialog::~AlertDialog()
+{
+}
+
+void AlertDialog::slotOk ()
+{
+ emit signalOk ();
+}
+
diff --git a/kshowmail/alertdialog.h b/kshowmail/alertdialog.h
new file mode 100644
index 0000000..ba1cb2b
--- /dev/null
+++ b/kshowmail/alertdialog.h
@@ -0,0 +1,40 @@
+/***************************************************************************
+ alertdialog.h - description
+ -------------------
+ begin : Sun Nov 4 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef ALERTDIALOG_H
+#define ALERTDIALOG_H
+
+#include <qwidget.h>
+#include "AlertDlg.h"
+
+/**
+ *@author Eggert Ehmke
+ */
+
+class AlertDialog : public AlertDlg
+{
+ Q_OBJECT
+public:
+ AlertDialog(QWidget *parent=0, const char *name=0);
+ ~AlertDialog();
+public slots:
+ void slotOk ();
+signals:
+ void signalOk ();
+};
+
+#endif
diff --git a/kshowmail/configelem.cpp b/kshowmail/configelem.cpp
new file mode 100644
index 0000000..9941c75
--- /dev/null
+++ b/kshowmail/configelem.cpp
@@ -0,0 +1,1759 @@
+/***************************************************************************
+ ConfigElem.cpp - description
+ -------------------
+ begin : Tue May 9 2000
+ copyright : (C) 2000-2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#include "configelem.h"
+
+int const ConfigElem::continueShowHeaders( 0 );
+int const ConfigElem::cancelShowHeaders( 1 );
+
+
+ConfigElem::ConfigElem( ) : QObject()
+{
+ //initialize account
+ init();
+
+ //set default values
+ m_url.setProtocol( "pop3" );
+ m_url.setPort( 110 );
+ m_bActive = false;
+ appConfig = NULL;
+ m_strAccount = "";
+}
+
+ConfigElem::ConfigElem( ConfigList* config ) : QObject()
+{
+ //initialize account
+ init();
+
+ m_url.setProtocol( "pop3" );
+ m_url.setPort (110);
+
+ m_bActive = false;
+
+ appConfig = config;
+
+}
+
+ConfigElem::ConfigElem( ConfigElem* pElem ) : QObject()
+{
+ //initialize account
+ init();
+
+ //set active by default
+ m_bActive = pElem->isActive();
+
+ //copy some interesting stuff from the sample
+ //the url object contains all necessary information about the server
+ m_strAccount = pElem->getAccountName();
+ m_url = pElem->getURL();
+ appConfig = pElem->appConfig;
+
+}
+
+ConfigElem::ConfigElem( ConfigList* config, const QString& account ) : QObject()
+{
+ //initialize account
+ init();
+
+ //set account name
+ m_strAccount = account;
+
+ //deactivate it by default
+ m_bActive = false;
+
+ //set the pointer to the general app configuration
+ appConfig = config;
+}
+
+void ConfigElem::init( )
+{
+ //initialize timeout timer
+ pop3Timer = new QTimer( this );
+ connect( pop3Timer, SIGNAL( timeout() ), this, SLOT( slotTimeout() ) );
+
+ //state is idle
+ state = AccountIdle;
+
+ //create new empty mail list
+ m_pshowrecord = new ShowRecord();
+
+ //the account has no appropriate account list view item yet
+ m_pViewItem = NULL;
+
+ //set default values
+ PasswordStorage = DEFAULT_ACCOUNT_PASSWORD_STORAGE;
+ filterApplied = false;
+ deletionPerformedByFilters = false;
+ refreshPerformedByFilters = false;
+ downloadActionsInvoked = false;
+
+ //initialize counters
+ moveCounter = 0;
+ nmbDeletedMailsLastRefresh = 0;
+ nmbDeletedMailsLastStart = 0;
+ nmbMovedMailsLastRefresh = 0;
+ nmbMovedMailsLastStart = 0;
+ nmbIgnoredMails = 0;
+}
+
+
+ConfigElem::~ConfigElem()
+{
+ // do not delete m_pshowrecord here
+}
+
+void ConfigElem::saveOptions( QDomDocument& doc, QDomElement& parent )
+{
+ //get application config
+ KConfig* config = KApplication::kApplication()->config();
+
+ //save the active state
+ config->setGroup( getAccountName() );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_ACTIVE, m_bActive );
+ config->sync();
+
+ //save the stored mails inside this account
+ parent.setAttribute( ATTRIBUTE_ACCOUNT_NAME, m_strAccount );
+ m_pshowrecord->saveOptions( doc, parent );
+}
+
+void ConfigElem::readStoredMails( QDomElement& parent )
+{
+ //get mails
+ m_pshowrecord->readStoredMails( parent );
+}
+
+
+int ConfigElem::count()
+{
+ return m_pshowrecord->count();
+}
+
+bool ConfigElem::isActive( ) const
+{
+ return m_bActive;
+}
+
+void ConfigElem::setActive( bool active )
+{
+ m_bActive = active;
+}
+
+QString ConfigElem::getAccountName( ) const
+{
+ return m_strAccount;
+}
+
+void ConfigElem::setAccountName( QString name )
+{
+ if( name != NULL )
+ m_strAccount = name;
+}
+
+QString ConfigElem::getPassword( ) const
+{
+ return m_url.pass();
+}
+
+void ConfigElem::setPassword( const QString& password )
+{
+ m_url.setPass( password );
+}
+
+KURL ConfigElem::getURL( ) const
+{
+ return m_url;
+}
+
+bool ConfigElem::hasPassword( ) const
+{
+ return m_url.hasPass();
+}
+
+void ConfigElem::setListViewItem( QListViewItem* item )
+{
+ m_pViewItem = item;
+}
+
+QListViewItem * ConfigElem::getListViewItem( )
+{
+ return m_pViewItem;
+}
+
+bool ConfigElem::isSelected( ) const
+{
+ if( m_pViewItem == NULL )
+
+ return false;
+
+ else
+
+ return m_pViewItem->isSelected();
+}
+
+void ConfigElem::clearMailList( )
+{
+ if( m_pshowrecord == NULL )
+ //there is no mail list yet, create a one
+ m_pshowrecord = new ShowRecord;
+ else
+ //clear the existing mail list
+ m_pshowrecord->clear();
+}
+
+void ConfigElem::setHost( const QString& host )
+{
+ m_url.setHost( host );
+}
+
+void ConfigElem::setProtocol( const QString& protocol )
+{
+ m_url.setProtocol( protocol );
+}
+
+void ConfigElem::setPort( unsigned short int port )
+{
+ m_url.setPort( port );
+}
+
+void ConfigElem::setUser( const QString & user )
+{
+ m_url.setUser( user );
+}
+
+QString ConfigElem::getUser( ) const
+{
+ return m_url.user();
+}
+
+QString ConfigElem::getHost( ) const
+{
+ return m_url.host();
+}
+
+void ConfigElem::deleteSelectedMails( )
+{
+ //return if this account has no selected mails or
+ //the account is not idle or the account is not active
+ if( !m_pshowrecord->hasSelectedMails() || state != AccountIdle || !isActive() )
+ {
+ emit sigDeleteReady( m_strAccount );
+ return;
+ }
+
+ //check whether we have a password for this account
+ //if not, ask for it
+ //return when no password is available
+ if( !assertPassword() )
+ {
+ emit sigDeleteReady( m_strAccount );
+ return;
+ }
+
+ //get the numbers of all selected mails
+ MailsToDelete = m_pshowrecord->getSelectedMails();
+ if( MailsToDelete.empty() )
+ {
+ kdError() << "ConfigElem::deleteSelectedMails (Account " << m_strAccount << "): The account has selected mails to delete but ShowRecord::getSelectedMails has returned an empty list." << endl;
+ emit sigDeleteReady( m_strAccount );
+ return;
+ }
+
+ //set account state
+ state = AccountDeleting;
+
+ //start the deleting of all mails in MailsToDelete
+ deleteNextMail();
+}
+
+bool ConfigElem::assertPassword( bool force )
+{
+ //is a password stored?
+ if ( !hasPassword() || force )
+ {
+ //no password found, we will ask the user!
+ //set normal cursor
+ while( QApplication::overrideCursor() )
+ QApplication::restoreOverrideCursor();
+
+ QCString password; //for the password dialog to store the password
+ int result = KPasswordDialog::getPassword( password, i18n( "Please type in the password for %1" ).arg( getAccountName() ) );
+
+ //set waiting cursor
+ QApplication::setOverrideCursor( Qt::waitCursor );
+
+ //let's look, what the user has done :o)
+ if( result == KPasswordDialog::Accepted )
+ {
+ //the user has clicked OK in the password dialog
+ //store the password
+ setPassword( password );
+
+ //save password in file or KWallet
+ KConfig* config = KApplication::kApplication()->config();
+ config->setGroup( getAccountName() );
+
+ if( PasswordStorage == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE )
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, crypt( m_url ) );
+ else
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, QString::null );
+
+ if( PasswordStorage == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET )
+ KWalletAccess::savePassword( getAccountName(), m_url.pass() );
+
+ config->sync();
+
+ //emit configuration changed signal
+ emit ( sigConfigChanged() );
+
+ //tell we have a password
+ return true;
+ }
+ else
+ //the user has clicked Cancel in the password dialog; we don't have a password
+ return false;
+ }
+ else
+ //we have already a password for this account
+ return true;
+
+}
+
+void ConfigElem::deleteNextMail( )
+{
+ //if the list of mails to delete is empty, finalize the deletion and return
+ if( MailsToDelete.empty() )
+ {
+ if( deletionPerformedByFilters )
+ {
+ applyFiltersDeleted();
+ }
+ else
+ {
+ commitDeletion();
+ }
+ return;
+ }
+
+ //start job
+ startKIOJob( QString( "/remove/%1" ).arg( *MailsToDelete.begin() ) );
+ connect( pop3Job, SIGNAL( result( KIO::Job* ) ), this, SLOT( slotMailDeleted( KIO::Job* ) ) );
+}
+
+void ConfigElem::slotMailDeleted( KIO::Job* job )
+{
+ //stop timeout timer
+ pop3Timer->stop();
+
+ //check for errors
+ //if an error is occured, the deletion will be canceled
+ //or will ask for a new password
+ if( job->error() == KIO::ERR_COULD_NOT_LOGIN )
+ {
+ //login failed, ask for a new password
+ job->showErrorDialog();
+ bool res = assertPassword( true );
+ if( res == false )
+ {
+ //we have not got a new password; cancel delete
+ if( deletionPerformedByFilters )
+ {
+ applyFiltersDeleted();
+ }
+ else
+ {
+ slotFinalizeDeletion( NULL );
+ }
+ return;
+ }
+ //if we have got a new password, it jumps to the end of the if-statement
+ }
+ else if( job->error() != 0 )
+ {
+ //unknown error, show message and cancel delete
+ job->showErrorDialog();
+ if( deletionPerformedByFilters )
+ {
+ applyFiltersDeleted();
+ }
+ else
+ {
+ slotFinalizeDeletion( NULL );
+ }
+ return;
+ }
+ else
+ {
+ //operation was successful
+ //remove the deleted mail from the internal mail list
+ m_pshowrecord->removeMail( *MailsToDelete.begin() );
+
+ //remove the first item of the list of mails to delete
+ MailsToDelete.remove( MailsToDelete.begin() );
+
+ //if the list of mails to delete is empty, finalize the deletion and return
+ if( MailsToDelete.empty() )
+ {
+ if( deletionPerformedByFilters )
+ {
+ applyFiltersDeleted();
+ }
+ else
+ {
+ commitDeletion();
+ }
+ return;
+ }
+ }
+
+ //delete next mail in list
+ deleteNextMail();
+
+
+}
+
+void ConfigElem::slotFinalizeDeletion( KIO::Job* )
+{
+ //stop timeout time
+ pop3Timer->stop();
+
+ //set account state to idle
+ state = AccountIdle;
+
+ //emit signal to report the deletion is ready
+ emit sigDeleteReady( m_strAccount );
+}
+
+void ConfigElem::startKIOJob( const QString & path )
+{
+ KIO::MetaData options; //options for the pop3 job
+
+ //set options
+ options.insert( "progress", "off" );
+ options.insert( "pipelining", "off" );
+
+ if( useTLS )
+ options.insert( "tls", "on" );
+ else
+ options.insert( "tls", "off" );
+
+ //Where is secure login?
+ //I have decided against a configurable secure login because the used POP3 kioslave
+ //always tries to login with APOP, if the server has sent a timestap (inside of the greeting string) for this authentification type.
+ //It just follows the auth-metadata, if the server doesn't support APOP (no timestamp inside of the greeting string).
+ //But I think, there is no server, which support a SASL authentification without also provide APOP.
+ //Ulrich Weigelt
+
+ //set the given command and parameters
+ m_url.setPath( path );
+
+ //print debug message
+ kdDebug() << "ConfigElem::startKIOJob: start KIO job on URL " << m_url.url() << endl;
+
+ //start the job and get handle to it
+ pop3Job = KIO::get( m_url, false, false );
+
+ //put options to the job
+ pop3Job->addMetaData( options );
+
+ //start timeout timer
+ pop3Timer->start( getTimeoutTime() * 1000, true );
+}
+
+Types::AccountState_Type ConfigElem::getState( )
+{
+ return state;
+}
+
+void ConfigElem::commitDeletion( )
+{
+ //start job to commit
+ startKIOJob( QString( "/commit" ) );
+ connect( pop3Job, SIGNAL( result( KIO::Job* ) ), this, SLOT( slotFinalizeDeletion( KIO::Job* ) ) );
+}
+
+unsigned int ConfigElem::getTimeoutTime( )
+{
+ //return default time, if the configuration is not accessable
+ if( appConfig == NULL )
+ return DEFAULT_TIMEOUT_TIME;
+
+ //get time from configuration
+ unsigned int time = appConfig->getTimeoutTime();
+
+ //take minimum time, if get time is less
+ if( time < MINIMUM_TIMEOUT_TIME )
+ time = MINIMUM_TIMEOUT_TIME;
+
+ return time;
+}
+
+void ConfigElem::slotTimeout( )
+{
+ //kill a running job
+ if( pop3Job != NULL )
+ pop3Job->kill( true );
+
+ //show error message (during refresh if desired only)
+ kdError() << "Timeout error!" << endl;
+
+ if( state != AccountRefreshing || appConfig->showConnectionErrors() )
+ KMessageBox::error( NULL, QString( i18n( "Time out on %1. The operation could not be finished on time" ) ).arg( m_strAccount ), i18n( "Time Out" ) );
+
+ //call the appropriate finalize methode
+ switch( state )
+ {
+ case AccountIdle : break;
+ case AccountDeleting : slotFinalizeDeletion( NULL ); break;
+ case AccountDownloading : slotFinalizeShowMail( NULL ); break;
+ case AccountRefreshing : cancelRefresh(); break;
+
+ default : break;
+ }
+}
+
+QStringList ConfigElem::getSelectedSubjects( ) const
+{
+ return m_pshowrecord->getSelectedSubjects();
+}
+
+bool ConfigElem::hasSelectedMails( )
+{
+ return m_pshowrecord->hasSelectedMails();
+}
+
+void ConfigElem::showSelectedMails( )
+{
+ //return if this account has no selected mails or
+ //the account is not idle or the account is not active
+ if( !m_pshowrecord->hasSelectedMails() || state != AccountIdle || !isActive() )
+ {
+ emit sigShowBodiesReady( m_strAccount );
+ return;
+ }
+
+ //check whether we have a password for this account
+ //if not, ask for it
+ //return when no password is available
+ if( !assertPassword() )
+ {
+ emit sigShowBodiesReady( m_strAccount );
+ return;
+ }
+
+ //get the numbers of all selected mails
+ MailsToShow = m_pshowrecord->getSelectedMails();
+ if( MailsToShow.empty() )
+ {
+ kdError() << "ConfigElem::showSelectedMails (Account " << m_strAccount << "): The account has selected mails to show but ShowRecord::getSelectedMails has returned an empty list." << endl;
+ emit sigShowBodiesReady( m_strAccount );
+ return;
+ }
+
+ //set account state
+ state = AccountDownloading;
+
+ //start the deleting of all mails in MailsToDelete
+ showNextMail();
+
+}
+
+void ConfigElem::showNextMail( )
+{
+ //if the list of mails to show is empty, finalize it and return
+ if( MailsToShow.empty() )
+ {
+ slotFinalizeShowMail( NULL );
+ return;
+ }
+
+ //clear the class variable mailbody, which contains the downloaded mail body
+ mailbody.resize( 0 );
+
+ //start job
+ startKIOJob( QString( "/download/%1" ).arg( *MailsToShow.begin() ) );
+ connect( pop3Job, SIGNAL( data( KIO::Job*, const QByteArray & ) ), SLOT( slotDataMailBody( KIO::Job*, const QByteArray & ) ) );
+ connect( pop3Job, SIGNAL( result( KIO::Job* ) ), this, SLOT( slotBodyDownloaded( KIO::Job* ) ) );
+
+}
+
+void ConfigElem::slotBodyDownloaded( KIO::Job * job )
+{
+ //stop timeout timer
+ pop3Timer->stop();
+
+ //check for errors
+ //if an error has occured, the download will be canceled
+ //or will ask for a new password
+ if( job->error() == KIO::ERR_COULD_NOT_LOGIN )
+ {
+ //login failed, ask for a new password
+ job->showErrorDialog();
+ bool res = assertPassword( true );
+ if( res == false )
+ {
+ //we have not got a new password; cancel delete
+ slotFinalizeShowMail( NULL );
+ return;
+ }
+ //if we have got a new password, jump to the end of the if-statement
+ }
+ else if( job->error() != 0 )
+ {
+ job->showErrorDialog();
+ slotFinalizeShowMail( NULL );
+ return;
+ }
+ else
+ {
+ //succesful download
+ //show mail
+ int currentMail = *MailsToShow.begin();
+ QString tsender = m_pshowrecord->getSenderOf( currentMail );
+ QString tdate = m_pshowrecord->getDateOf( currentMail );
+ QString tsize = m_pshowrecord->getSizeOf( currentMail );
+ QString tsubject = m_pshowrecord->getSubjectOf( currentMail );
+ QString tmailbody( m_pshowrecord->decodeMailBody( mailbody, currentMail, appConfig->allowHTML() ) );
+
+ //emit signal to notify the opening of a window
+ emit sigMessageWindowOpened();
+
+ //create and open the window
+ ShowMailDialog dlg( kapp->mainWidget(), m_strAccount, appConfig->allowHTML(), tsender, tdate, tsize, tsubject, tmailbody );
+ int ret = dlg.exec();
+
+ //emit signal to notify the closing of a window
+ emit sigMessageWindowClosed();
+
+ //cancel the download if desired
+ if( ret == KDialogBase::Rejected )
+ {
+ MailsToShow.clear();
+ commitDownloading();
+ return;
+ }
+
+ //remove the first item of the list of mails to show
+ MailsToShow.remove( MailsToShow.begin() );
+
+ //if the list of mails is empty, finalize the showing and return
+ if( MailsToShow.empty() )
+ {
+ commitDownloading();
+ return;
+ }
+ }
+
+
+ //show next mail in list
+ showNextMail();
+}
+
+void ConfigElem::slotFinalizeShowMail( KIO::Job* )
+{
+ //stop timeout time
+ pop3Timer->stop();
+
+ //set account state to idle
+ state = AccountIdle;
+
+ //emit signal to report the download is ready
+ emit sigShowBodiesReady( m_strAccount );
+}
+
+void ConfigElem::slotDataMailBody( KIO::Job *, const QByteArray & datas )
+{
+ if( !datas.isEmpty() )
+ {
+ //we get the next part of the mail
+ //append it
+ uint lastSize = mailbody.size();
+ mailbody.resize( lastSize + datas.size() );
+ for( uint i = 0; i < datas.size(); i++ )
+ mailbody[ lastSize + i ] = datas[ i ];
+ }
+}
+
+void ConfigElem::commitDownloading( )
+{
+ //start job to commit
+ startKIOJob( QString( "/commit" ) );
+ connect( pop3Job, SIGNAL( result( KIO::Job* ) ), this, SLOT( slotFinalizeShowMail( KIO::Job* ) ) );
+}
+
+void ConfigElem::refreshMailList( FilterLog* log )
+{
+ //store pointer to log
+ if( log != NULL )
+ FLog = log;
+
+ //return, if account is not active
+ if( !isActive() )
+ {
+ emit sigRefreshReady( m_strAccount );
+ return;
+ }
+
+ //check whether we have a password for this account
+ //if not, ask for it
+ //return when no password is available
+ if( !assertPassword() )
+ {
+ emit sigRefreshReady( m_strAccount );
+ return;
+ }
+
+ //create a new ShowRecord instance
+ //When the refresh has finished successfully, this will
+ //replace the old mail list
+ tempMailList = new ShowRecord();
+
+ //set account state
+ state = AccountRefreshing;
+
+ //init counter
+ if( !refreshPerformedByFilters )
+ {
+ nmbDeletedMailsLastRefresh = 0;
+ nmbMovedMailsLastRefresh = 0;
+ nmbIgnoredMails = 0;
+ }
+
+ //the first step is to get the UIDs
+ getUIDs();
+}
+
+void ConfigElem::getUIDs( )
+{
+ //clears the QString list, which contains all received UIDs
+ receivedUIDs.clear();
+
+ //start job
+ startKIOJob( QString( "/uidl" ) );
+ connect( pop3Job, SIGNAL( data( KIO::Job*, const QByteArray & ) ), SLOT( slotReceiveUID( KIO::Job*, const QByteArray & ) ) );
+ connect( pop3Job, SIGNAL( result( KIO::Job* ) ), this, SLOT( slotUIDsReceived( KIO::Job* ) ) );
+
+}
+
+void ConfigElem::slotReceiveUID( KIO::Job*, const QByteArray& data )
+{
+ //return, when data is empty
+ if( data.isEmpty() ) return;
+
+ //cast the data to QString
+ QString uid( data );
+
+ //insert the uid at the end of the UID list
+ receivedUIDs.append( uid );
+}
+
+void ConfigElem::slotUIDsReceived( KIO::Job * job )
+{
+ int number; //an extracted mail number
+ QString uid; //an extracted uid
+ bool corruptData = false; //set to TRUE, if a data is corrupt
+ bool isNew = false; //state of the received mail
+
+ //stop timeout timer
+ pop3Timer->stop();
+
+ //check for errors
+ //if an error has occured, the refresh will be canceled
+ //or will ask for a new password
+ if( job->error() == KIO::ERR_COULD_NOT_LOGIN )
+ {
+ //login failed, ask for a new password
+ job->showErrorDialog();
+ bool res = assertPassword( true );
+ if( res == true )
+ {
+ //we have got a new password, try again
+ delete tempMailList;
+ refreshMailList();
+ }
+ else
+ //we have not got a new password; cancel refresh
+ cancelRefresh();
+
+ return;
+ }
+ else if( job->error() != 0 )
+ {
+ //show error message if desired
+ if( appConfig->showConnectionErrors() )
+ job->showErrorDialog();
+
+ cancelRefresh();
+ return;
+ }
+
+ //analyze UIDs
+ if( !receivedUIDs.isEmpty() )
+ {
+ //iterate over all UIDs in the list
+ for ( QStringList::Iterator it = receivedUIDs.begin(); it != receivedUIDs.end(); ++it )
+ {
+ QString line = *it;
+
+ //every line has the format "number UID", e.g.: 1 bf10d38018de7c1d628d65288d722f6a
+ //get the position of the separating space
+ int positionOfSpace = line.find( " " );
+
+ //if no space was found, the line is corrupt
+ if( positionOfSpace == -1 )
+ {
+ kdError() << "ConfigElem::slotUIDsReceived: get a corrupt UID from " << dynamic_cast<KIO::SimpleJob*>(job)->url().host() << ". No space. : " << line << endl;
+ corruptData = true;
+ }
+ else
+ {
+ //extract mail number and uid
+ bool isNumber;
+ number = line.left( positionOfSpace ).toInt( &isNumber );
+ //check number
+ if( !isNumber )
+ {
+ //the first part is not a number
+ kdError() << "ConfigElem::slotUIDsReceived: get a corrupt UID from " << dynamic_cast<KIO::SimpleJob*>(job)->url().host() << ". No number found at begin. : " << line << endl;
+ corruptData = true;
+ }
+ else
+ {
+ //number is ok; extract uid
+ uid = line.mid( positionOfSpace + 1 );
+
+ //determine about new mail or not
+ if( !m_pshowrecord->hasMail( uid ) )
+ {
+ //the old list doesn't contain a mail with this uid
+ //the mail is new
+ isNew = true;
+ }
+ else if( ( appConfig->keepNew() || refreshPerformedByFilters ) && m_pshowrecord->isNew( uid ) )
+ {
+ //the mail is already in the old list
+ //but we will leave the state of formerly new mails, because the user wants it or this refresh is performed by filters
+ isNew = true;
+ }
+ else
+ isNew = false;
+
+ //append mail to the list
+ tempMailList->appendNewMail( number, uid, isNew );
+
+ }
+ }
+ }
+
+ //if the data are ok, start the second step: get sizes
+ //otherwise cancel the refresh
+ if( !corruptData )
+ getSizes();
+ else
+ cancelRefresh();
+ }
+ else
+ {
+ //we haven't received any UIDs. The account has no mails.
+ //finalize the refresh
+ swapMailLists();
+ }
+
+}
+
+void ConfigElem::cancelRefresh()
+{
+ //print error message
+ kdError() << m_strAccount << ": " << "Refresh canceled" << endl;
+
+ //delete the new mail list
+ delete tempMailList;
+
+ //delete old mail list and create a new empty one
+ delete m_pshowrecord;
+ m_pshowrecord = new ShowRecord();
+
+ //emit signal
+ emit sigRefreshReady( m_strAccount );
+
+ //set account state to idle
+ state = AccountIdle;
+
+ //we don't need an error message, because the KIO job has shown one
+}
+
+void ConfigElem::slotFinalizeRefresh( KIO::Job* )
+{
+ //stop timeout time
+ pop3Timer->stop();
+
+ //unset the flag
+ refreshPerformedByFilters = false;
+
+ //emit signal
+ emit sigRefreshReady( m_strAccount );
+
+ //set account state to idle
+ state = AccountIdle;
+
+
+}
+
+void ConfigElem::commitRefresh( )
+{
+ //start job to commit
+ startKIOJob( QString( "/commit" ) );
+ connect( pop3Job, SIGNAL( result( KIO::Job* ) ), this, SLOT( slotFinalizeRefresh( KIO::Job* ) ) );
+}
+
+void ConfigElem::getSizes( )
+{
+ //clears the QString list, which contains all received UIDs
+ receivedSizes.clear();
+
+ //start job
+ startKIOJob( QString( "/index" ) );
+ connect( pop3Job, SIGNAL( data( KIO::Job*, const QByteArray & ) ), SLOT( slotReceiveSize( KIO::Job*, const QByteArray & ) ) );
+ connect( pop3Job, SIGNAL( result( KIO::Job* ) ), this, SLOT( slotSizesReceived( KIO::Job* ) ) );
+
+}
+
+void ConfigElem::slotSizesReceived( KIO::Job * job )
+{
+ int number; //an extracted mail number
+ long size; //an extracted size
+ bool corruptData = false; //set to TRUE, if a data is corrupt
+
+ //stop timeout timer
+ pop3Timer->stop();
+
+ //check for errors
+ //if an error has occured, the refresh will be canceled
+ if( job->error() != 0 )
+ {
+ //show error message if desired
+ if( appConfig->showConnectionErrors() )
+ job->showErrorDialog();
+ cancelRefresh();
+ return;
+ }
+
+ //analyze UIDs
+ if( !receivedSizes.isEmpty() )
+ {
+ //iterate over all sizes in the list
+ for ( QStringList::Iterator it = receivedSizes.begin(); it != receivedSizes.end(); ++it )
+ {
+ QString line = *it;
+
+ //every line has the format "number size", e.g.: 1 1234
+ //get the position of the separating space
+ int positionOfSpace = line.find( " " );
+
+ //if no space was found, the line is corrupt
+ if( positionOfSpace == -1 )
+ {
+ kdError() << "ConfigElem::slotSizesReceived: get a corrupt size from " << dynamic_cast<KIO::SimpleJob*>(job)->url().host() << ". No space. : " << line << endl;
+ corruptData = true;
+ }
+ else
+ {
+ //extract mail number and size
+ bool isNumber;
+ number = line.left( positionOfSpace ).toInt( &isNumber );
+ //check number
+ if( !isNumber )
+ {
+ //the first part is not a number
+ kdError() << "ConfigElem::slotSizesReceived: get a corrupt size from " << dynamic_cast<KIO::SimpleJob*>(job)->url().host() << ". No number found at begin. : " << line << endl;
+ corruptData = true;
+ }
+ else
+ {
+ //number is ok; extract size
+ size = line.mid( positionOfSpace + 1 ).toLong( &isNumber );
+
+ //check size
+ if( !isNumber )
+ {
+ //the second part of the string is not a number
+ kdError() << "ConfigElem::slotSizesReceived: get a corrupt size from " << dynamic_cast<KIO::SimpleJob*>(job)->url().host() << ". No size found at end. : " << line << endl;
+ corruptData = true;
+ }
+ else
+ {
+ //size is ok
+ //set it
+ tempMailList->setSize( number, size );
+ }
+ }
+ }
+ }
+
+ //if the data are ok, start the third step: get headers
+ //otherwise cancel the refresh
+ if( !corruptData )
+ getHeaders();
+ else
+ cancelRefresh();
+ }
+}
+
+void ConfigElem::slotReceiveSize( KIO::Job *, const QByteArray & data )
+{
+ //return, when data is empty
+ if( data.isEmpty() ) return;
+
+ //cast the data to QString
+ QString size( data );
+
+ //insert the uid at the end of the sizes list
+ receivedSizes.append( size );
+
+}
+
+void ConfigElem::getHeaders( )
+{
+ //get the numbers of all new mails
+ newMails = tempMailList->getNewMails();
+ if( newMails.empty() )
+ {
+ //no new mails available; copy the known headers from the old mail list
+ copyHeaders();
+ return;
+ }
+
+ //get the headers
+ getNextHeader();
+}
+
+void ConfigElem::getNextHeader( )
+{
+ //if the list of mails empty, copy the known headers from the old mail list
+ if( newMails.empty() )
+ {
+ copyHeaders();
+ return;
+ }
+
+ //clear temporary header store
+ receivedHeader.resize( 0 );
+
+ //start job
+ startKIOJob( QString( "/headers/%1" ).arg( *newMails.begin() ) );
+ connect( pop3Job, SIGNAL( data( KIO::Job*, const QByteArray & ) ), this, SLOT( slotReceiveHeader( KIO::Job*, const QByteArray & ) ) );
+ connect( pop3Job, SIGNAL( result( KIO::Job* ) ), this, SLOT( slotHeaderDownloaded( KIO::Job* ) ) );
+
+}
+
+void ConfigElem::slotHeaderDownloaded( KIO::Job * job )
+{
+ //stop timeout timer
+ pop3Timer->stop();
+
+ //check for errors
+ //if an error is occured, the download will be canceled
+ if( job->error() != 0 )
+ {
+ //show error message if desired
+ if( appConfig->showConnectionErrors() )
+ job->showErrorDialog();
+
+ cancelRefresh();
+ return;
+ }
+
+ //store header
+ tempMailList->setHeader( *newMails.begin(), QString( receivedHeader ) );
+
+ //remove the first item of the list of new mails
+ newMails.remove( newMails.begin() );
+
+ //if the list of new mails is empty, copy the headers of old mails to the new list
+ if( newMails.empty() )
+ {
+ copyHeaders();
+ return;
+ }
+
+ //get next header
+ getNextHeader();
+}
+
+void ConfigElem::copyHeaders( )
+{
+ //get the UIDs of the old mails in the temporary mail list
+ QStringList UIDs = tempMailList->getUIDsOfOldMails();
+
+ //iterate over all members of the list,
+ //get the header from the old list and store it in the new one
+ QStringList::iterator it;
+ for ( it = UIDs.begin(); it != UIDs.end(); ++it )
+ {
+ QString header = m_pshowrecord->getHeaderOf( *it );
+ tempMailList->setHeader( *it, header );
+ }
+
+ //now we have the a complete new mail list
+ swapMailLists();
+}
+
+void ConfigElem::slotReceiveHeader( KIO::Job *, const QByteArray & data )
+{
+ if( !data.isEmpty() )
+ {
+ //we get the next part of the mail
+ //append it
+ uint lastSize = receivedHeader.size();
+ receivedHeader.resize( lastSize + data.size() );
+ for( uint i = 0; i < data.size(); i++ )
+ receivedHeader[ lastSize + i ] = data[ i ];
+ }
+}
+
+int ConfigElem::getNumberNewMails( )
+{
+ return m_pshowrecord->getNumberNewMails();
+}
+
+int ConfigElem::getNumberMails( )
+{
+ return m_pshowrecord->getNumberMails();
+}
+
+long ConfigElem::getTotalSize( )
+{
+ return m_pshowrecord->getTotalSize();
+}
+
+void ConfigElem::fillMailListView( KshowmailView* view )
+{
+ m_pshowrecord->fillMailListView( view, m_strAccount );
+}
+
+void ConfigElem::refreshAccountListItem( )
+{
+ if( m_pViewItem != NULL )
+ {
+ if( isActive() )
+ {
+ m_pViewItem->setText( 4, QString( "%1" ).arg( getNumberMails(), 3 ) );
+ m_pViewItem->setText( 5, QString( "%1" ).arg( getTotalSize(), 8 ) );
+ }
+ else
+ {
+ m_pViewItem->setText( 4, QString( "???" ) );
+ m_pViewItem->setText( 5, QString( "???" ) );
+ }
+ }
+}
+
+void ConfigElem::killPOP3Job( )
+{
+ //just try to kill, if it is not idle
+ if( state != AccountIdle )
+ {
+ //kill a running job
+ if( pop3Job != NULL )
+ pop3Job->kill( true );
+
+ //stop timeout timer
+ pop3Timer->stop();
+
+ //call the appropriate finalize method
+ switch( state )
+ {
+ case AccountDeleting : slotFinalizeDeletion( NULL ); break;
+ case AccountDownloading : slotFinalizeShowMail( NULL ); break;
+ case AccountRefreshing : cancelRefresh(); break;
+
+ default : break;
+ }
+ }
+}
+
+int ConfigElem::showSelectedHeaders( )
+{
+ //return, if no mails are selected
+ if( !hasSelectedMails() )
+ return ConfigElem::continueShowHeaders;
+
+ //order the mail list to show the headers of the selected mails
+ int ret = m_pshowrecord->showSelectedHeaders( m_strAccount );
+
+ return ret == ShowRecord::continueShowHeaders ? ConfigElem::continueShowHeaders : ConfigElem::cancelShowHeaders;
+}
+
+void ConfigElem::printSetup( ) const
+{
+ kdDebug() << "Setup of " << m_strAccount << ":" << endl;
+ kdDebug() << "Host: " << m_url.host() << endl;
+ kdDebug() << "Protocol: " << m_url.protocol() << endl;
+ kdDebug() << "Port: " << m_url.port() << endl;
+ kdDebug() << "User: " << m_url.user() << endl;
+ kdDebug() << "Password: " << m_url.pass() << endl;
+
+ switch( PasswordStorage )
+ {
+ case CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE : kdDebug() << "Password Storage: don't save" << endl; break;
+ case CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE : kdDebug() << "Password Storage: save in file" << endl; break;
+ case CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET : kdDebug() << "Password Storage: use KWallet" << endl; break;
+ default : kdDebug() << "Password Storage: invalid value" << endl;
+
+ }
+
+ kdDebug() << "active: " << m_bActive << endl << endl;
+
+
+}
+
+void ConfigElem::setPasswordStorage( int storage )
+{
+ if( storage == CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE ||
+ storage == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE ||
+ storage == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET )
+
+ PasswordStorage = storage;
+
+ else
+
+ PasswordStorage = DEFAULT_ACCOUNT_PASSWORD_STORAGE;
+}
+
+int ConfigElem::getPasswordStorage( ) const
+{
+ return PasswordStorage;
+}
+
+QString ConfigElem::getProtocol( bool upperCase ) const
+{
+ if( upperCase )
+ return m_url.protocol().upper();
+ else
+ return m_url.protocol();
+}
+
+unsigned short int ConfigElem::getPort( ) const
+{
+ return m_url.port();
+}
+
+void ConfigElem::setTLS( bool tls )
+{
+ useTLS = tls;
+}
+
+bool ConfigElem::getTLS( ) const
+{
+ return useTLS;
+}
+
+void ConfigElem::reloadFilterSettings( )
+{
+ headerFilter.load();
+}
+
+void ConfigElem::applyFilters( )
+{
+ //are we executed by the MOVE routines?
+ if( !downloadActionsInvoked )
+ {
+ //this is the first call (at the current refresh cycle) of this methode
+ //we get the lists of mails to delete an move and call the MOVE routines if necessary
+
+ //OK, the filters were applied
+ filterApplied = true;
+
+ //order the mail list to apply the header filters
+ //it returns lists of mail numbers which shall be deleted or moved
+ //the marking will be done by the mail list itself
+ //the mail list removes all mails which shall be ignored itself
+ MailsToDelete.clear();
+ m_pshowrecord->applyHeaderFilter( &headerFilter, getAccountName(), MailsToDelete, MailsToDownload, nmbIgnoredMails, FLog );
+ nmbDeletedMailsLastRefresh += MailsToDelete.count();
+ nmbDeletedMailsLastStart += MailsToDelete.count();
+
+ //This part will be executed, if mails shall be downloaded
+ if( !MailsToDownload.empty() )
+ {
+ downloadActionsInvoked = true;
+ doDownloadActions();
+
+ //we quit this methode at this point, because after the bodies are downloaded and written this methode will recalled.
+ //At this time the else branch of this IF-statement will be executed and the methode continues
+ return;
+ }
+
+ }
+ else
+ {
+ //this is the second call (at the current refresh cycle) of this methode.
+ //it is called by the Move routines.
+ //the downloading of the mailbodies and writing it to the mailboxes has ended.
+ //A second call was just exceuted, if there was mails to move
+ downloadActionsInvoked = false;
+
+ //after an move error there are maybe some mails leftover in MailsToMove
+ MailsToDownload.clear();
+ }
+
+
+
+ //we have get the list of mails to delete and the all mails to move are written to its mailboxes
+ //now we delete this mails (the moved mails too)
+
+ if( !MailsToDelete.empty() )
+ {
+ //there are mails to delete
+ //we delete they
+ //after the delete cycle has done its job, it will call applyFiltersDeleted()
+ deletionPerformedByFilters = true; //this is set to indicate the deletion is performed by filters and not by user
+ //the deletion methodes need it to decide on branch targets
+ deleteNextMail();
+ }
+ else
+ {
+ //if we need not to start a second refresh cycle (no mails was deleted or moved)
+ //we just commit the refresh and let the filter applied flag to false for the next regular refresh
+ commitRefresh();
+ filterApplied = false;
+ }
+}
+
+void ConfigElem::swapMailLists( )
+{
+ //delete old mail list
+ delete m_pshowrecord;
+
+ //assign the new list
+ if( tempMailList != NULL )
+ m_pshowrecord = tempMailList;
+ else
+ m_pshowrecord = new ShowRecord();
+
+ //if the filters were not applied yet, we do it now
+ //applyFilters() will either start a second refresh cycle if it did some deletions
+ //or call commitRefresh() to commit the refresh cycle.
+ //if the filters were already applied we commit the refresh.
+ if( filterApplied | !headerFilter.isActive() )
+ {
+ commitRefresh();
+ filterApplied = false;
+ return;
+ }
+ else
+ {
+ applyFilters();
+ return;
+ }
+}
+
+void ConfigElem::applyFiltersDeleted( )
+{
+ //unset the flag
+ deletionPerformedByFilters = false;
+
+ //start the second refresh cycle
+ refreshPerformedByFilters = true;
+
+ //this sends a commit and restart the refresh
+ commitBeforeRefresh();
+ return;
+ //refreshMailList();
+}
+
+
+bool ConfigElem::writeToMailBox( const QString & mail, const QString & box )
+{
+ QDir mailDir( box );
+
+ //check whether the given path is a maildir
+ if( !isMailDir( mailDir ) )
+ {
+ //show an error message
+ KMessageBox::error( NULL, i18n( QString( "%1 is not a mailbox." ).arg( box ) ) );
+ return false;
+ }
+
+ //create unique file name according http://cr.yp.to/proto/maildir.html
+ QString partTime = QString::number( time( NULL ) ); //left part, output of time()
+
+ char hname[256]; //right part, the hostname
+ QString partHostname;
+ if( gethostname( hname, 255 ) == 0 )
+ partHostname = QString( hname );
+ else
+ {
+ //the hostname is not readable
+ //show an error message and exit
+ KMessageBox::error( NULL, i18n( QString( "Can't read the hostname of your computer. But KShowmail need it to write a mail into the mailbox." ) ) );
+ return false;
+ }
+
+ QString partPID = QString::number( getpid() ); //middle part, the PID
+
+ QString partCounter = QString::number( moveCounter++ );
+
+ QString uniqueName( partTime + "." + partPID + partCounter + "." + partHostname );
+
+ //build absolute path
+ mailDir.cd( "tmp" );
+ QString absFile = mailDir.filePath( uniqueName );
+
+ //and writing!
+ QFile file( absFile );
+ if( file.open( IO_WriteOnly ) )
+ {
+ QTextStream stream( &file );
+ stream << mail << endl;
+ file.close();
+ }
+ else
+ {
+ KMessageBox::detailedError( NULL, i18n( QString( "Could not file a mail to %1." ) ).arg( box ), i18n( file.errorString() ) );
+ return false;
+ }
+
+ //now we move it to the "new" subdirectory
+ mailDir.cdUp();
+ mailDir.cd( "new" );
+ QString absNewFile = mailDir.filePath( uniqueName );
+
+ if( rename( absFile.ascii(), absNewFile.ascii() ) == -1 )
+ {
+ KMessageBox::error( NULL, i18n( QString( "Could not move a mail from %1 to %2." ) ).arg( absFile ).arg( absNewFile ) );
+ return false;
+ }
+
+ //the writing was successful
+ return true;
+}
+
+void ConfigElem::doDownloadActions()
+{
+ //get first mail
+ getNextMailForDownloadActions();
+}
+
+bool ConfigElem::isMailDir( const QDir & path )
+{
+ //get a list of all subdirectories in this directory
+ const QStringList entries = path.entryList( QDir::Dirs | QDir::Readable | QDir::Writable | QDir::Hidden, QDir::Name | QDir::IgnoreCase | QDir::LocaleAware );
+
+ //a maildir folder must contains the folders "cur", "new" and "tmp"
+ bool curFound = false;
+ bool newFound = false;
+ bool tmpFound = false;
+
+ //iterate over all directories and look for the three necessary dirs
+ QStringList::const_iterator it = entries.begin();
+ while( it != entries.end() && !( curFound && newFound && tmpFound ) )
+ {
+ if( *it == "tmp" )
+ tmpFound = true;
+ else if( *it == "cur" )
+ curFound = true;
+ else if( *it == "new" )
+ newFound = true;
+
+ ++it;
+ }
+
+ return curFound && newFound && tmpFound;
+}
+
+void ConfigElem::getNextMailForDownloadActions()
+{
+ //if the list of mails to move is empty return to applyFilters
+ if( MailsToDownload.empty() )
+ {
+ applyFilters();
+ return;
+ }
+
+ //clear the class variable mailbody, which contains the downloaded mail body
+ mailbody.resize( 0 );
+
+ //start job
+ startKIOJob( QString( "/download/%1" ).arg( MailsToDownload.begin().key() ) );
+ connect( pop3Job, SIGNAL( data( KIO::Job*, const QByteArray & ) ), SLOT( slotDataMailBody( KIO::Job*, const QByteArray & ) ) );
+ connect( pop3Job, SIGNAL( result( KIO::Job* ) ), this, SLOT( slotMailDownloadedForAction( KIO::Job* ) ) );
+
+}
+
+void ConfigElem::slotMailDownloadedForAction(KIO::Job * job)
+{
+ //stop timeout timer
+ pop3Timer->stop();
+
+ //check for errors
+ //if an error has occured, the download will be canceled
+ //or will ask for a new password
+ if( job->error() == KIO::ERR_COULD_NOT_LOGIN )
+ {
+ //login failed, ask for a new password
+ job->showErrorDialog();
+ bool res = assertPassword( true );
+ if( res == false )
+ {
+ //we have not got a new password; cancel delete
+ applyFilters();
+ return;
+ }
+ //if we have got a new password, jump to the end of the if-statement
+ }
+ else if( job->error() != 0 )
+ {
+ job->showErrorDialog();
+ applyFilters();
+ return;
+ }
+ else
+ {
+ //succesful download
+ //do action
+ MailToDownloadMap_Type::Iterator firstMail = MailsToDownload.begin();
+ int currentMailNumber = firstMail.key(); //get mail number
+ QString currentMailBox( firstMail.data().mailbox ); //get mailbox
+ QString mail( mailbody ); //convert mailtext
+ FilterAction_Type action = firstMail.data().action; //get action
+
+ bool resultMove = false; //TRUE - mail is written into the mailbox
+ bool resultSpam = false; //TRUE - mail is Spam
+ bool deleteIt = false; //TRUE - mail shall be deleted
+ bool resultAction = false; //True - the action was succesful performed
+
+ switch( action )
+ {
+ case FActMove : resultMove = writeToMailBox( mail, currentMailBox );
+ //log entry is made by ShowRecordElem::applyHeaderFilter
+ if( resultMove == true )
+ {
+ nmbMovedMailsLastRefresh++;
+ nmbMovedMailsLastStart++;
+
+ resultAction = true;
+ deleteIt = true;
+ }
+ else
+ {
+ resultAction = false;
+ deleteIt = false;
+ }
+ break;
+
+ case FActSpamcheck : resultSpam = isSpam( mailbody ); //it is spam?
+ if( resultSpam == true ) //yes, it is spam! Arrgghh! Torture it!!!
+ {
+ switch( appConfig->getSpamAction() )
+ {
+ case FActMove : resultMove = writeToMailBox( mail, appConfig->getSpamMailbox() );
+ if( resultMove == true )
+ {
+ nmbMovedMailsLastRefresh++;
+ nmbMovedMailsLastStart++;
+
+ if( FLog != NULL )
+ m_pshowrecord->writeToMoveLog( FLog, currentMailNumber, getAccountName(), appConfig->getSpamMailbox() );
+ resultAction = true;
+ deleteIt = true;
+ }
+ else
+ {
+ resultAction = false;
+ deleteIt = false;
+ }
+ break;
+
+ case FActMark : m_pshowrecord->setMarkAtNextViewRefresh( currentMailNumber );
+ resultAction = true;
+ deleteIt = false;
+ break;
+
+ case FActDelete : if( FLog != NULL )
+ m_pshowrecord->writeToDeleteLog( FLog, currentMailNumber, getAccountName() );
+
+ nmbDeletedMailsLastRefresh++;
+ nmbDeletedMailsLastStart++;
+ resultAction = true;
+ deleteIt = true;
+ break;
+
+ default : kdError() << "invalid action for spam mail" << endl;
+ resultAction = false;
+ deleteIt = false;
+ break;
+
+ }
+ }
+ else //mail is not spam
+ {
+ resultAction = true;
+ deleteIt = false;
+ }
+ break;
+
+ default : deleteIt = false;
+ resultAction = false;
+
+ }
+
+ if( resultAction == true )
+ {
+ //Action was successful
+ //remove this mail from the list
+ MailsToDownload.remove( firstMail );
+
+ //maybe add this mail to list of mails to delete
+ if( deleteIt )
+ MailsToDelete.append( currentMailNumber );
+ }
+ else
+ {
+ //Action was not successful
+ //returns to applyFilters() to continue the filtering
+ applyFilters();
+ return;
+ }
+
+
+ //if the list of mails is empty, return to applyFilters() to continue the filtering
+ if( MailsToDownload.empty() )
+ {
+ applyFilters();
+ return;
+ }
+ }
+
+
+ //show next mail in list
+ getNextMailForDownloadActions();
+}
+
+bool ConfigElem::isSpam( QByteArray mail ) const
+{
+ //check for a running spamassassin
+ if( !isSpamAssassinRunning() )
+ {
+ KMessageBox::information( NULL, i18n( "You want to check your mails for spam, but SpamAssassin is not running.\nKShowmail skips the spam check." ), i18n( "SpamAssassin is not running" ), "ConfigElemNoSpamAssassinRunning" );
+ return false;
+ }
+
+ //append an \0 at the end of the string
+ int size = mail.size();
+ if( mail[ size - 1 ] != '\0' )
+ {
+ mail.resize( size + 1 );
+ mail[ size ] = '\0';
+ }
+
+ //calls spmac and get an file pointer to stdin of it
+ FILE *write_fp;
+ write_fp = popen( "spamc -E", "w" );
+
+ //forward the mail to SpamAssassin
+ if( write_fp != NULL )
+ {
+ fwrite( mail.data(), sizeof( char), mail.size(), write_fp );
+
+ //check exit code of spamc and return result
+ int excode = pclose( write_fp );
+ if( excode == 0 )
+ return false;
+ else
+ return true;
+ }
+ else
+ {
+ kdError() << "Could not call the command spamc of SpamAssassin." << endl;
+ return false;
+ }
+
+ return false;
+}
+
+bool ConfigElem::isSpamAssassinRunning( ) const
+{
+ FILE *read_fp;
+ char buffer[ BUFSIZ + 1 ];
+ int chars_read;
+ bool found = false;
+
+ memset( buffer, '\0', sizeof( buffer ) );
+ read_fp = popen( "ps -eo comm", "r" );
+ if( read_fp != NULL )
+ {
+ chars_read = fread( buffer, sizeof( char ), BUFSIZ, read_fp );
+ while( chars_read > 0 )
+ {
+ buffer[ chars_read - 1 ] = '\0';
+ QString output( buffer );
+ found = output.contains( NAME_SPAMASSASSIN_DAEMON ) > 0;
+ chars_read = fread( buffer, sizeof( char ), BUFSIZ, read_fp );
+ }
+ pclose( read_fp );
+ }
+
+ return found;
+}
+
+int ConfigElem::numberDeletedMailsLastRefresh( )
+{
+ return nmbDeletedMailsLastRefresh;
+}
+
+int ConfigElem::numberDeletedMailsStart( )
+{
+ return nmbDeletedMailsLastStart;
+}
+
+int ConfigElem::numberMovedMailsLastRefresh( )
+{
+ return nmbMovedMailsLastRefresh;
+}
+
+int ConfigElem::numberMovedMailsStart( )
+{
+ return nmbMovedMailsLastStart;
+}
+
+int ConfigElem::numberIgnoredMails( )
+{
+ return nmbIgnoredMails;
+}
+
+QStringList ConfigElem::getSelectedSenders( ) const
+{
+ return m_pshowrecord->getSelectedSenders();
+}
+
+
+
+
+void ConfigElem::commitBeforeRefresh()
+{
+ //start job to commit
+ startKIOJob( QString( "/commit" ) );
+ connect( pop3Job, SIGNAL( result( KIO::Job* ) ), this, SLOT( slotCommitBeforeRefreshDone( KIO::Job* ) ) );
+
+}
+
+void ConfigElem::slotCommitBeforeRefreshDone(KIO::Job *)
+{
+ //after a commit was send, we start a new refresh cyle
+ refreshMailList();
+} \ No newline at end of file
diff --git a/kshowmail/configelem.h b/kshowmail/configelem.h
new file mode 100644
index 0000000..14f79ca
--- /dev/null
+++ b/kshowmail/configelem.h
@@ -0,0 +1,1097 @@
+/***************************************************************************
+ configelem.h - description
+ -------------------
+ begin : Tue May 9 2000
+ copyright : (C) 2000-2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef CONFIGELEM_H
+#define CONFIGELEM_H
+
+//C headers
+#include <time.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <stdio.h>
+
+//QT headers
+#include <qstring.h>
+#include <qlistview.h>
+#include <qdom.h>
+#include <qobject.h>
+#include <qtimer.h>
+#include <qregexp.h>
+#include <qdir.h>
+#include <qfile.h>
+#include <qtextstream.h>
+
+//KDE headers
+#include <kurl.h>
+#include <kconfig.h>
+#include <kdebug.h>
+#include <kpassdlg.h>
+#include <kio/job.h>
+#include <kio/global.h>
+#include <kmessagebox.h>
+#include <kapplication.h>
+
+//KShowmail headers
+#include "showrecord.h"
+#include "constants.h"
+#include "types.h"
+#include "configlist.h"
+#include "showmaildialog.h"
+#include "decodeRFC2047.h"
+#include "kshowmailview.h"
+#include "encryption.h"
+#include "kwalletaccess.h"
+#include "headerfilter.h"
+#include "filterlog.h"
+
+
+
+using namespace Constants;
+using namespace Types;
+using namespace Encryption;
+
+//forward class declarations
+class KshowmailView;
+class ConfigList;
+class ShowRecordElem;
+class ShowRecord;
+
+/**
+ * @brief Represents a mail account.
+ *
+ * Contains all datas of the account like server, user password and so on.
+ * It also contains the mails read from the server.
+ * Used in class ConfigList and ConfigAccounts.
+ *
+ * @see ShowRecord
+ * @see ConfigList
+ * @see ConfigAccounts::Accounts
+ * @author Eggert Ehmke <eggert.ehmke@berlin.de>
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class ConfigElem : public QObject {
+
+ Q_OBJECT
+
+ public:
+
+ /**
+ * Returned by showSelectedHeaders(), if the user has
+ * clicked OK.
+ */
+ static const int continueShowHeaders;
+
+ /**
+ * Returned by showSelectedHeaders(), if the user has
+ * clicked Cancel.
+ */
+ static const int cancelShowHeaders;
+
+ /**
+ * General Constructor
+ * Warning: The pointer to the application configuration (ConfigList)
+ * will not be set.
+ */
+ ConfigElem();
+
+ /**
+ * Default Constructor
+ * @param config pointer to the general app configuration
+ */
+ ConfigElem ( ConfigList* config );
+
+ /**
+ * Copy Constructor.
+ * It doesn't copy the mail list but creates a new empty one.
+ * The pointer to the appropriate account list view item is set
+ * to NULL.The new account is active by default.
+ * @param pElem the account which will be copied
+ */
+ ConfigElem( ConfigElem* pElem );
+
+ /**
+ * Constructs a account which is called like the given name.
+ * Creates a empty mail list. Sets the pointer to the appropriate
+ * account list view item to NULL. The account is deactivated by default.
+ * The url doesn't contain any server informations.
+ * @param config pointer to the general app configuration
+ * @param account name of the new account
+ */
+ ConfigElem( ConfigList* config, const QString& account );
+
+ /**
+ * Destructor
+ * Does nothing.
+ */
+ ~ConfigElem();
+
+ /**
+ * Returns whether the account is active.
+ * @return TRUE - account is active; FALSE - account is not active
+ */
+ bool isActive() const;
+
+ /**
+ * Sets the account active.
+ * @param active TRUE - active account; FALSE - deactivate account
+ */
+ void setActive( bool active );
+
+ /**
+ * Gets the account name.
+ * @return account name
+ */
+ QString getAccountName() const;
+
+ /**
+ * Sets the account name.
+ * @param name the account name
+ */
+ void setAccountName( QString name );
+
+ /**
+ * Gets the account password.
+ * @return password
+ */
+ QString getPassword() const;
+
+ /**
+ * Sets the account password. To save it in the configuration file
+ * call saveOptions().
+ * @param password new password
+ */
+ void setPassword( const QString& password );
+
+ /**
+ * Returns whether a password is stored.
+ * @return TRUE - there is password stored; FALSE - no password stored
+ */
+ bool hasPassword() const;
+
+ /**
+ * Returns the url of this account.
+ * @return url
+ */
+ KURL getURL() const;
+
+ /**
+ * Sets the pointer to the item in the account list view item.
+ * @see m_pViewItem
+ * @param item account list view item
+ */
+ void setListViewItem( QListViewItem* item );
+
+ /**
+ * Returns the pointer to the account list view item.
+ * @see m_pViewItem
+ * @return pointer to the appropriate list view item
+ */
+ QListViewItem* getListViewItem();
+
+ /**
+ * Returns TRUE, if the appropriate list view item is selected.
+ * @return TRUE - list view item is selected
+ * @return FALSE - list view item is not selected
+ */
+ bool isSelected() const;
+
+ /**
+ * Clears the mail list or creates a new one.
+ */
+ void clearMailList();
+
+ /**
+ * Sets the host name.
+ * @param host host name
+ */
+ void setHost( const QString& host );
+
+ /**
+ * Returns the hostname.
+ * @return the name of the host or QString::null if no host is set
+ */
+ QString getHost() const;
+
+ /**
+ * Sets the protocol.
+ * @param protocol the protocol
+ */
+ void setProtocol( const QString& protocol );
+
+ /**
+ * Returns the protocol.
+ * @param upperCase TRUE - transforms the protocol string to upper case
+ * @return protocol
+ */
+ QString getProtocol( bool upperCase = false ) const;
+
+ /**
+ * Enable or disable TLS.
+ * @param tls TRUE: use TLS; FALSE: don't use TLS
+ */
+ void setTLS( bool tls );
+
+ /**
+ * Returns whether TLS is enabled.
+ * @return TRUE: TLS is enabled
+ * @return FALSE: TLS is disabled
+ */
+ bool getTLS() const;
+
+ /**
+ * Sets the port.
+ * @param port the port
+ */
+ void setPort( unsigned short int port );
+
+ /**
+ * Returns the port number.
+ * @return port number
+ */
+ unsigned short int getPort() const;
+
+ /**
+ * Sets the user.
+ * @param user username
+ */
+ void setUser( const QString& user );
+
+ /**
+ * Returns the user name.
+ * @return the user name or QString::null if there is no user name
+ */
+ QString getUser() const;
+
+ /**
+ * Sets the password storage type.
+ * The Constants are defined in constants.h
+ * @param storage type of password storage; valid values are: CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET
+ */
+ void setPasswordStorage( int storage );
+
+ /**
+ * Returns the password storage type.
+ * The Constants are defined in constants.h.
+ * @return type of password storage; valid values are: CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET
+ */
+ int getPasswordStorage() const;
+
+
+ /**
+ * Saves the stored mails into the given
+ * DOM document. It doesn't create a new DOM element but used the given one.
+ * Saves the setup into the application config.
+ * @param doc DOM document which contains all application settings, mails and account settings
+ * @param parent DOM element in which all settings and mails of this account will be saved
+ */
+ void saveOptions( QDomDocument& doc, QDomElement& parent );
+
+ /**
+ * Gets the stored mails.
+ * @param parent DOM element which contains the mails of this account
+ */
+ void readStoredMails( QDomElement& parent );
+
+ /**
+ * Returns the number of stored mails.
+ * @return number of mails
+ */
+ int count();
+
+ /**
+ * Deletes all selected mails.
+ * This just starts the deletion and returns after then.
+ * When the deletion is ready the signal sigDeleteReady will be emitted.
+ */
+ void deleteSelectedMails();
+
+ /**
+ * Downloads and shows the bodies of all selected mails.
+ * This just starts the download and returns after then.
+ * When the download is ready and the body is shown the sigShowBodiesReady
+ * will be emitted.
+ */
+ void showSelectedMails();
+
+ /**
+ * Opens a dialog to ask for a password, stores it temporarily in the account settings and
+ * emits the signal sigConfigChanged.
+ * Does not open a dialog if a password is already stored in the account settings.
+ * @param force ask for a new password even if a password is stored
+ * @return TRUE - a password is available
+ * @return FALSE - no password is available
+ */
+ bool assertPassword( bool force = false );
+
+ /**
+ * Returns the state of the account.
+ * @return account state
+ */
+ Types::AccountState_Type getState();
+
+ /**
+ * Returns the subjects of the selected mails.
+ * @return subjects of selected mails
+ */
+ QStringList getSelectedSubjects() const;
+
+ /**
+ * Returns whether there are mails in the list that are selected
+ * in the list view.
+ * @return TRUE - there are selected mails
+ * @return FALSE - there aren't selected mails
+ */
+ bool hasSelectedMails();
+
+ /**
+ * Refreshes the mail list.
+ * This just starts the refresh and returns after then.
+ * When the refresh is ready, the signal sigRefreshReady
+ * will be emitted.
+ * @param log Pointer to the filter log
+ * @see sigRefreshReady
+ */
+ void refreshMailList( FilterLog* log = NULL );
+
+ /**
+ * Returns the number of new mails.
+ * @return number of new mails
+ */
+ int getNumberNewMails();
+
+ /**
+ * Returns the number of mails.
+ * @return number of mails
+ */
+ int getNumberMails();
+
+ /**
+ * Returns the total size of all mails.
+ * @return total size
+ */
+ long getTotalSize();
+
+ /**
+ * Creates for every mail a list view item and insert it
+ * into the mail list view.
+ * @param view pointer to the application view
+ */
+ void fillMailListView( KshowmailView* view );
+
+ /**
+ * Refreshes the appropriate entry of the account list
+ * (number of mails and total size)
+ * Uses the pointer to the list view item stored in m_pViewItem.
+ */
+ void refreshAccountListItem();
+
+ /**
+ * Kills a running pop3 job.
+ */
+ void killPOP3Job();
+
+ /**
+ * Shows the headers of all selected mails.
+ * @return continueShowHeaders - the user has clicked OK. The invoking function will show the next header
+ * @return cancelShowHeaders - the user has clicked Cancel. The invoking function will not show the next header.
+ * @return continueShowHeaders - no mails of this account are selected
+ */
+ int showSelectedHeaders();
+
+ /**
+ * Prints the setup to stdout.
+ */
+ void printSetup() const;
+
+ /**
+ * Reloads the settings of the filters.
+ * It just calls the load() methode of the header filter.
+ */
+ void reloadFilterSettings();
+
+ /**
+ * Returns the number of deleted mails by last refresh.
+ * @return number of deleted mails by last refresh
+ */
+ int numberDeletedMailsLastRefresh();
+
+ /**
+ * Returns the number of deleted mails since start.
+ * @return number of deleted mails since start
+ */
+ int numberDeletedMailsStart();
+
+ /**
+ * Returns the number of moved mails by last refresh.
+ * @return number of moved mails by last refresh
+ */
+ int numberMovedMailsLastRefresh();
+
+ /**
+ * Returns the number of moved mails since start.
+ * @return number of moved mails since start
+ */
+ int numberMovedMailsStart();
+
+ /**
+ * Returns the number of ignored mails by last refresh.
+ * @return number of ignored mails by last refresh
+ */
+ int numberIgnoredMails();
+
+ /**
+ * Returns the senders of the selected mails
+ * @return senders of the selected mails
+ */
+ QStringList getSelectedSenders() const;
+
+
+ private:
+
+ /**
+ * Pointer to the configuration of the application.
+ * Set by the constructors.
+ */
+ ConfigList* appConfig;
+
+ /**
+ * Pointer to the filter log.
+ * Will be set by refreshMailList() at every refresh.
+ */
+ FilterLog* FLog;
+
+ /**
+ * State of the account.
+ */
+ Types::AccountState_Type state;
+
+ /**
+ * Type of password storage.
+ * valid values are: CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET
+ * The Constants are defined in constants.h
+ * @see saveOptions()
+ * @see setPasswordStorage()
+ */
+ int PasswordStorage;
+
+ /**
+ * TRUE - account is active; FALSE - account is not active
+ */
+ bool m_bActive;
+
+ /**
+ * Account Name
+ */
+ QString m_strAccount;
+
+ /**
+ * Pointer to the appropriate item in the account list view.
+ */
+ QListViewItem* m_pViewItem;
+
+ /**
+ * List which contains all read mails from the server.
+ */
+ ShowRecord* m_pshowrecord;
+
+ /**
+ * Uniform Resource Locator of the account on the pop3 server.
+ */
+ KURL m_url;
+
+ /**
+ * Type of secure login.
+ * See constants.h for valid values (CONFIG_VALUE_ACCOUNT_SECLOGIN_...)
+ */
+ int secureLoginType;
+
+ /**
+ * False: TLS is enabled
+ */
+ bool useTLS;
+
+ /**
+ * Contains a downloaded mail body.
+ * Will be set by slotDataMailBody() and read by slotBodyDownloaded().
+ */
+ QByteArray mailbody;
+
+ /**
+ * Contains the numbers of mails which will be deleted.
+ * Set by deleteSelectedMails() and applyFilters() and used by deleteNextMail() to get
+ * the number of the next mail to delete.
+ * @see deleteSelectedMails()
+ * @see deleteNextMail()
+ * @see applyFilters()
+ */
+ MailNumberList_Type MailsToDelete;
+
+ /**
+ * Contains the numbers of the mails shall be moved for actions like moving to mailbox or spam check.
+ * Contains also some parameters (like mailbox) about the action which have to be performed.
+ * Set and used by applyFilters().
+ * @see applyFilters()
+ */
+ MailToDownloadMap_Type MailsToDownload;
+
+ /**
+ * Contains the numbers of mails for which the bodies will be shown.
+ * Set by showSelectedMails() and used by showNextMail() to get
+ * the number of the next mail to show.
+ * @see showSelectedMails()
+ * @see showNextMail()
+ */
+ MailNumberList_Type MailsToShow;
+
+ /**
+ * Contains the numbers of new mails.
+ * Set by getHeaders() and used by getNextHeader() to download
+ * the headers of the new mails.
+ * @see getHeaders()
+ * @see getNextHeader()
+ */
+ MailNumberList_Type newMails;
+
+ /**
+ * Pointer to a launched pop3 job.
+ */
+ KIO::TransferJob* pop3Job;
+
+ /**
+ * timeout timer. Will be started together with every pop3 job.
+ * If it runs down, slotTimeout() will be invoked.
+ */
+ QTimer* pop3Timer;
+
+ /**
+ * While refreshing, this ShowRecord instance will be used to
+ * build a new mail list. After that this pointer will be assigned
+ * to m_pshowrecord.
+ */
+ ShowRecord* tempMailList;
+
+ /**
+ * List of received mail UIDs (unique ID).
+ * Used by slotReceiveUID() and slotUIDsReceived().
+ */
+ QStringList receivedUIDs;
+
+ /**
+ * List of received mail sizes.
+ * Used by slotReceiveSize() and slotSizesReceived().
+ */
+ QStringList receivedSizes;
+
+ /**
+ * A received mail header.
+ * Set by slotReceiveHeader() and used by slotHeaderDownloaded().
+ */
+ QByteArray receivedHeader;
+
+ /**
+ * Every account has is own header filter instance.
+ */
+ HeaderFilter headerFilter;
+
+ /**
+ * This is a flag whether the filters was applied during a refresh cycle.
+ * If the some mails was deleted (recommend by the filter), we need a actual
+ * list of mails from the server. Therefore a second refresh cycle will be started.
+ * To avoid a never-ending loop this flag will be set to TRUE by applyFilters().
+ * If the second refresh is running this one will not invoke the filters.
+ */
+ bool filterApplied;
+
+ /**
+ * This flag is set by applyFilters() to indicate the deletion cycle is performed by filters and not by user.
+ * The deletion methodes need it to decide on branch targets
+ */
+ bool deletionPerformedByFilters;
+
+ /**
+ * This flag is set by applyFiltersDeleted() to indicate the refresh cycle is the second one after a deletion which was performed by filters.
+ * The refresh cycle need it to hold the remaining mails as new.
+ */
+ bool refreshPerformedByFilters;
+
+ /**
+ * This flag is set to TRUE by applyFilters() to indicate the mailbodies are downloading and writing to the mailboxes or spam checking.
+ * When this is ended, applyFilters() will be called again and it reset this flag
+ */
+ bool downloadActionsInvoked;
+
+ /**
+ * Counter for moving to create an unique file name
+ */
+ int moveCounter;
+
+ /**
+ * Number of deleted mails by last refresh.
+ */
+ int nmbDeletedMailsLastRefresh;
+
+ /**
+ * Number of deleted mails since start.
+ */
+ int nmbDeletedMailsLastStart;
+
+ /**
+ * Number of moved mails by last refresh.
+ */
+ int nmbMovedMailsLastRefresh;
+
+ /**
+ * Number of moved mails since start.
+ */
+ int nmbMovedMailsLastStart;
+
+ /**
+ * Number of ignored mails by last refresh.
+ */
+ int nmbIgnoredMails;
+
+ /**
+ * Initializes the account.
+ */
+ void init();
+
+ /**
+ * Deletes the first mail of MailsToDelete.
+ * After a succesful deletion this mail will be removed from the list
+ * by slotMailDeleted() and this method will be invoked again.
+ * If the list is empty, it will call commitDelete.
+ * @see slotMailDeleted()
+ * @see MailsToDelete
+ */
+ void deleteNextMail();
+
+ /**
+ * Commits the deletion.
+ * Starts a pop3 job that will do the commit. Its signal
+ * result is connected with slotFinalizeDeletion().
+ * @see slotFinalizeDeletion()
+ */
+ void commitDeletion();
+
+ /**
+ * Shows the body of the first mail in MailsToShow.
+ * After a succesful download and opening of the window this
+ * mail will be removed from the list by slotBodyDownloaded() and this
+ * method will be invoked again.
+ * If the list is empty, it will call commitDownloading().
+ * @see commitDownloading()
+ * @see slotBodyDownloaded()
+ */
+ void showNextMail();
+
+ /**
+ * Commits the downloading of mail bodies.
+ * Starts a pop3 job that will do the commit. Its signal
+ * result is connected with slotFinalizeShowMail().
+ * @see slotFinalizeShowMail()
+ */
+ void commitDownloading();
+
+ /**
+ * Creates a POP3 transfer job (KIO Job), which will be stored in pop3Job.
+ * @param path command and parameters of the job as URL path
+ */
+ void startKIOJob( const QString& path );
+
+ /**
+ * Returns the timeout time in seconds which is stored in the
+ * general configuration of the application.
+ * Returns POP3_DEFAULT_TIMEOUT_TIME (defined in constants.h),
+ * if no time is available.
+ * Returns POP3_MINIMUM_TIMEOUT_TIME (defined in constants.h),
+ * if the get time is less than POP3_MINIMUM_TIMEOUT_TIME.
+ * @return seconds to timeout
+ */
+ unsigned int getTimeoutTime();
+
+ /**
+ * First step of the refresh cycle.
+ * Gets the UIDs of the available mails from the server.
+ * It starts a KIO job to get the UIDs. The UIDs will be stored
+ * in receivedUIDs by slotReceiveUID().
+ * When the job is ready, it will invoke slotUIDsReceived().
+ */
+ void getUIDs();
+
+ /**
+ * Second step of the refresh cycle.
+ * Gets the sizes of the available mails from the server.
+ * It starts a KIO job to get these. The Sizes will be temporarily
+ * stored in receivedSizes by slotReceiveSize().
+ * When the job is ready, it will invoke slotSizesReceived().
+ */
+ void getSizes();
+
+ /**
+ * Third step of the refresh cycle.
+ * Gets the header of the new mails from the server.
+ */
+ void getHeaders();
+
+ /**
+ * Get the header of the first mail in newMails.
+ * After a succesful download this
+ * mail will be removed from the list by slotHeaderDownloaded() and this
+ * method will be invoked again.
+ * If the list is empty, it will call copyHeaders() to get the known
+ * headers from the old mail list (m_pshowrecord).
+ * @see copyHeaders()
+ * @see slotHeaderDownloaded()
+ */
+ void getNextHeader();
+
+ /**
+ * Fourth step of the refresh cycle.
+ * Copies the known headers of the old mails from the
+ * old mail list to the new one.
+ * At the end it invokes swapMailLists().
+ */
+ void copyHeaders();
+
+ /**
+ * Sixth step of the refresh cycle.
+ * Applies the filters to the mails in the mail list.
+ * Invoked by swapMailLists().
+ * This methode maybe starts a new refresh cycle because after a deletion or moving we need a
+ * actual list of mails on the server.
+ * To avoid a never-ending loop you must not call this methode during the second refresh cycle.
+ * Therefore it sets filterApplied to TRUE.
+ * @see filterApplied
+ * @see applyFiltersDeleted()
+ */
+ void applyFilters();
+
+ /**
+ * If there are mails to delete by filters applyFilters will call the regular deletion cycle of this class with set byFilter-flag.
+ * Therefore the deletion will not branch to commitDeletion() but to this methode.
+ * This performs a second refresh cycle to get an effective mail list from the server.
+ * This new cycle will not apply the filters again, because the flag filterApplied is set to TRUE.
+ * @see applyFilters()
+ * @see filterApplied
+ */
+ void applyFiltersDeleted();
+
+ /**
+ * Cancels the refresh. Will be invoked, when a pop3 job has
+ * reported an error.
+ */
+ void cancelRefresh();
+
+ /**
+ * Commits the refresh.
+ * Starts a pop3 job that will do the commit. Its signal
+ * result is connected with slotFinalizeRefresh().
+ * Invoked by copyHeaders() if the filters was applied or applyFilters()
+ * if not second refresh was necessary.
+ * @see slotFinalizeRefresh()
+ * @see applyFilters()
+ */
+ void commitRefresh();
+
+ /**
+ * Send a commit and restart the refresh cycle
+ * We restart the refresh to get a fresh maillist after a deletion performed by the filter.
+ * We need a commit before because the mails server only after a commit reorders the mail numbers
+ */
+ void commitBeforeRefresh();
+
+ /**
+ * Fifth step of the refresh cycle.
+ * Copies the pointer to the temporary list to m_pshowrecord.
+ * Invoked by copyHeaders() and slotUIDsReceived().
+ * The temporary list will be the current mail list.
+ * At the end it invokes commitRefresh() if the filters were applied
+ * (filterApplied == TRUE) or deactive or it invokes
+ * applyFilters() if the filters were not
+ * applied (filterApplied == FALSE).
+ * @see m_pshowrecord
+ * @see copyHeaders()
+ * @see slotUIDsReceived()
+ * @see commitRefresh()
+ * @see filterApplied
+ */
+ void swapMailLists();
+
+ /**
+ * Does all filter actions for which we have to download the mails
+ * These are:
+ * Moving, spam check
+ * It doesn't removes they from the server.
+ */
+ void doDownloadActions();
+
+ /**
+ * Gets the body of the first mail in MailsToDownload.
+ * After a succesful download and writing into the mailbox this
+ * mail will be removed from the list by slotMailDownloadedforDownloadActions() and this
+ * method will be invoked again.
+ * If the list is empty, it will call applyFilters() to continue the filtering.
+ * @see applyFilters()
+ * @see slotMailDownloadedforDownloadActions()
+ */
+ void getNextMailForDownloadActions();
+
+ /**
+ * Returns whether the given directory is a maildir directory
+ * @param path the directory for test
+ * @return TRUE - directory is a maildir directory
+ */
+ bool isMailDir( const QDir& path );
+
+ /**
+ * Writes the given mail into the mailbox.
+ * @param mail the Mail
+ * @param box path to the mailbox
+ * @return TRUE - Writing was succesful
+ */
+ bool writeToMailBox( const QString& mail, const QString& box );
+
+ private slots:
+
+ /**
+ * Connected with signal result of the launched pop3 job.
+ * Removes the deleted mail from the internal mail list (m_pshowrecord).
+ * Removes the first mail from MailsToDelete and invokes
+ * deleteNextMail() again to delete the next mail.
+ * If the list is empty after it has removed the first item, it will call
+ * commitDelete().
+ * If an error is occured, it will call slotFinalizeDeletion().
+ * @param job job which has emit the result signal
+ * @see deleteNextMail()
+ * @see MailsToDelete
+ * @see pop3Job
+ * @see slotFinalizeDeletion()
+ */
+ void slotMailDeleted( KIO::Job* job );
+
+ /**
+ * Connected with the signal result of the job which commits the deletion.
+ * Finalizes the deletion of mails.
+ * Emits signal sigDeleteReady.
+ * @see deleteNextMail()
+ * @see slotMailDeleted()
+ * @see sigDeleteReady
+ */
+ void slotFinalizeDeletion( KIO::Job* );
+
+ /**
+ * Connected with signal result of the launched pop3 job to
+ * download a mail body.
+ * Opens a window (class ShowMailDialog) with the downloaded mail body.
+ * Removes the first mail from MailsToShow and invokes showNextMail()
+ * again to show the next mail.
+ * If the list is empty after it has removed the first item, it will call
+ * commitDownloading().
+ * If an error is occured, it will call slotFinalizeShowMail().
+ * @param job job which has emit the result signal
+ * @see showNextMail()
+ * @see commitDownloading()
+ * @see MailsToShow
+ * @see pop3Job
+ * @see slotFinalizeShowMail()
+ * @see ShowMailDialog
+ */
+ void slotBodyDownloaded( KIO::Job* job );
+
+ /**
+ * Connected with signal result of the launched pop3 job to
+ * download a mail to write it into a mailbox or do a spam check.
+ * Maybe it puts the number of the downloaded mail into the list of mails to delete (MailsToDelete).
+ * Removes the first mail from MailsToMove and invokes getNextMailForMove()
+ * again to get and write the next mail.
+ * If the list is empty after it has removed the first item, it will call
+ * applyFilters() to continue the filtering.
+ * If an error is occured the current mail will not put into MailsToDelete. And it returns
+ * to applyFilters() immediately.
+ * @param job job which has emit the result signal
+ * @see MailsToDownload
+ * @see getNextMailForDownloadActions()
+ * @see applyFilters()
+ */
+ void slotMailDownloadedForAction( KIO::Job* job );
+
+ /**
+ * Connected with signal data of the launched pop3 job to
+ * download a mail body.
+ * Receives the downloaded data from the job. This lot will be called
+ * several times during the donwload. At the last one the array is empty.
+ * It extracts the body from the downloaded data and stores it in DownloadedMailBody.
+ * @param datas the downloaded mail
+ */
+ void slotDataMailBody( KIO::Job*, const QByteArray & datas );
+
+ /**
+ * Connected with the signal result of the job which commits the download
+ * of the mail bodies.
+ * Finalizes the downloading and showing of the selected mails.
+ * Emits signal sigShowBodiesReady and sets account state to idle.
+ * @see showNextMail()
+ * @see slotBodyDownloaded()
+ * @see sigShowBodiesReady
+ */
+ void slotFinalizeShowMail( KIO::Job* );
+
+ /**
+ * Connected with signal timeout() of the timeout timer pop3Timer.
+ * Will be called when the timer is run down, if the pop3 job
+ * has not ended on time.
+ * It kills a running pop3 job and invokes the appropriate finalize slot
+ * of the running operation.
+ */
+ void slotTimeout();
+
+ /**
+ * Connected with the signal "data" of the pop3 transfer job which gets mail
+ * UIDs (Unique ID). Therefore it will be called when the job has received
+ * an UIDL from the server. Every received UID causes a call of this slot.
+ * When the job ends, it causes a last call but with an empty data array.
+ * The UIDs will be stored in receivedUIDs.
+ * @param data received data, which contain an uid
+ */
+ void slotReceiveUID( KIO::Job*, const QByteArray& data );
+
+ /**
+ * Connected with signal result of the launched pop3 job to get the UIDs.
+ * Will be invoked, when all UIDs are received and stored in receivedUIDs.
+ * Analyzes the received UID datas and creates new ShowRecordElem instances
+ * in the new mail list accordingly.
+ * @param job job which has emitted the result signal
+ */
+ void slotUIDsReceived( KIO::Job* job );
+
+ /**
+ * Connected with the signal "data" of the pop3 transfer job which gets mail
+ * Sizes. Therefore it will be called when the job has received
+ * a size from the server. Every received size causes a call of this slot.
+ * When the job ends, it causes a last call but with an empty data array.
+ * The UIDs will be stored in receivedSizes.
+ * @param data received data, which contain a size
+ */
+ void slotReceiveSize( KIO::Job*, const QByteArray& data );
+
+ /**
+ * Connected with signal result of the launched pop3 job to get the Sizes.
+ * Will be invoked, when all Sizes are received and stored in receivedSizes.
+ * Analyzes the received datas and writes these in the appropriate mail instances.
+ * @param job job which has emitted the result signal
+ */
+ void slotSizesReceived( KIO::Job* job );
+
+
+ /**
+ * Connected with signal result of the job which commits the refresh.
+ * Finalizes a succesful refresh.
+ * Emits sigRefreshReady and sets account state to idle
+ */
+ void slotFinalizeRefresh( KIO::Job* );
+
+ /**
+ * Connected with signal result of the launched pop3 job.
+ * Stores the received headers into the appropriate instance of the mail list.
+ * Removes the first mail from newMails and invokes
+ * getNextHeader() again to get the next header.
+ * If the list is empty after it has removed the first item, it will call
+ * copyHeaders().
+ * If an error has occured, it will call cancelRefresh().
+ * @param job job which has emit the result signal
+ * @see getNextHeader()
+ * @see newMails
+ * @see pop3Job
+ * @see cancelRefresh()
+ * @see copyHeaders()
+ */
+ void slotHeaderDownloaded( KIO::Job* job );
+
+ /**
+ * Connected with the signal "data" of the pop3 transfer job which gets a mail
+ * header. Therefore it will be called when the job has received
+ * a part of the header from the server.
+ * When the job ends, it causes a last call but with an empty data array.
+ * The complete header will be stored in receivedHeader.
+ * @param data received data, which contains a header part
+ */
+ void slotReceiveHeader( KIO::Job*, const QByteArray& data );
+
+ /**
+ * Connected with the result signal of the pop3 job launched by commitBeforeRefresh()
+ * Restarts a second refresh cycle after a deletion performed by the filter.
+ * @see commitBeforeRefresh
+ * @see applyFiltersDeleted
+ */
+ void slotCommitBeforeRefreshDone( KIO::Job* );
+
+
+ signals:
+
+ /**
+ * Will be emitted when all selected mails are deleted.
+ * @param account name of the account, which has emitted this signal
+ */
+ void sigDeleteReady( QString account );
+
+ /**
+ * Will be emitted when the bodies of all selected mails are
+ * downloaded and shown.
+ * @param account name of the account, which has emitted this signal
+ */
+ void sigShowBodiesReady( QString account );
+
+ /**
+ * Will be emitted when the settings have been changed.
+ */
+ void sigConfigChanged();
+
+ /**
+ * Will be emitted, when a window to show a message was opened.
+ */
+ void sigMessageWindowOpened();
+
+ /**
+ * Will be emitted, when a window to show a message was closed.
+ */
+ void sigMessageWindowClosed();
+
+ /**
+ * Will be emitted, when the mail list was refreshed.
+ * @param account name of the account, which has emitted this signal
+ */
+ void sigRefreshReady( QString account );
+
+ protected:
+
+ /**
+ * Forwards the given mail to SpamAssassin and returns the test result
+ * @param mail the mail to test
+ * @return TRUE - mail is spam
+ */
+ bool isSpam( QByteArray mail ) const;
+
+ /**
+ * Looks for a running spamd daemon of SpamAssassin.
+ * @return TRUE - SpamAssassin is running
+ */
+ bool isSpamAssassinRunning() const;
+
+
+
+};
+#endif
diff --git a/kshowmail/configlist.cpp b/kshowmail/configlist.cpp
new file mode 100644
index 0000000..0098550
--- /dev/null
+++ b/kshowmail/configlist.cpp
@@ -0,0 +1,1203 @@
+/***************************************************************************
+ configlist.cpp - description
+ -------------------
+ begin : Tue May 9 2000
+ copyright : (C) 2000-2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+
+ 26 Sep 2002 - Allow for columns to be hidden. Allistar Melville
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+#include <stdio.h>
+#include <stdlib.h>
+
+#include <qfile.h>
+
+#include <kconfig.h>
+#include <ksavefile.h>
+#include <kapplication.h>
+#include <kstandarddirs.h>
+#include <kaudioplayer.h>
+#include <kdebug.h>
+
+#include "configlist.h"
+
+ConfigList::ConfigList() : QObject()
+{
+ setAutoDelete (true);
+
+ //assume, no window to show a mail is open at beginning
+ ctrOpenMessageWindows = 0;
+
+ //set default values
+ m_bShowMessage = DEFAULT_ACTION_NEW_MAIL_ALERTWINDOW;
+ m_bShowMainWindow = DEFAULT_ACTION_NEW_MAIL_MAINWINDOW;
+ m_bBeep = DEFAULT_ACTION_NEW_MAIL_BEEP;
+ m_bSound = DEFAULT_ACTION_NEW_MAIL_SOUND;
+ m_bCommand = DEFAULT_ACTION_NEW_MAIL_COMMAND;
+ m_bMinimize = DEFAULT_ACTION_NO_NEW_MAIL_MINIMIZE;
+ m_bTerminate = DEFAULT_ACTION_NO_NEW_MAIL_TERMINATE;
+
+ m_bConfirmClose = DEFAULT_CONFIRM_CLOSE;
+ m_bConfirmDelete = DEFAULT_CONFIRM_DELETE;
+ m_bStartMinimized = DEFAULT_START_MINIMIZED;
+ m_bCloseMinimizes = DEFAULT_CLOSE_TO_TRAY;
+ m_bMinimizeToTray = DEFAULT_MINIMIZE_TO_TRAY;
+ m_bShowConnectionErrors = DEFAULT_SHOW_CONNECTION_ERRORS;
+ m_bKeepNew = DEFAULT_KEEP_NEW;
+ m_nInitTimer = DEFAULT_INITIAL_TIME;
+ m_nIntervalTimer = DEFAULT_INTERVAL_TIME;
+ m_nPop3Timer = DEFAULT_TIMEOUT_TIME;
+
+}
+
+int ConfigList::compareItems( QCollection::Item item1, QCollection::Item item2 )
+{
+ ConfigElem* p1 = (ConfigElem*)item1;
+ ConfigElem* p2 = (ConfigElem*)item2;
+
+ return strcmp( p1->getAccountName(), p2->getAccountName() );
+}
+
+QCollection::Item ConfigList::newItem( QCollection::Item item )
+{
+ return new ConfigElem( (ConfigElem*)item );
+}
+
+void ConfigList::saveOptions ()
+{
+ kdDebug () << "ConfigList::saveOptions" << endl;
+
+ //create XML document
+ QDomDocument doc( "KShowmail" );
+
+ //create root element
+ QDomElement accounts = doc.createElement( ROOT_ELEMENT );
+
+ //create for every account an element
+ //the account saves its mails into this element
+ //after that the element will be appended to the root element
+ int i = 0;
+ ConfigElem* account = NULL; //current processed account
+ QPtrListIterator<ConfigElem> it( *this ); //iterator for the account list
+
+ //iterate over all accounts
+ while( ( account = it.current() ) != NULL )
+ {
+ //increment iterator to next account
+ ++it;
+
+ //save mails
+ QDomElement accElem = doc.createElement( QString( ACCOUNT_ELEMENT ) + QString( "%1" ).arg( i++ ) );
+ account->saveOptions( doc, accElem ); //account saves the mails into given XML document and the setup into the application config file
+ accounts.appendChild( accElem );
+
+ }
+
+ //append root element to XML document
+ doc.appendChild( accounts );
+
+ //save XML document
+ QCString str = doc.toCString(); //convert XML document to a string
+ QString cachefilename = locateLocal( "config", MAIL_FILE ); //get file path
+ KSaveFile file( cachefilename, 0600 ); //create file
+
+ if( file.status() != 0 )
+ {
+ kdError() << "Couldn't save mail cache. " << strerror( file.status() );
+ return;
+ }
+
+ //write data
+ file.file()->writeBlock( str.data(), str.length() );
+
+ //close file
+ if( !file.close() )
+ {
+ kdError () << "Couldn't save mail cache. " << strerror(file.status());
+ return;
+ }
+}
+
+
+void ConfigList::setList (QListView* list)
+{
+ QPixmap pix (::locate ("data", "kshowmail/pics/ok.png"));
+ list->clear ();
+ int nIndex = at ();
+ QListViewItem* last = NULL;
+ for (ConfigElem* pElem = first(); pElem; pElem = next())
+ {
+ last = new QListViewItem (list, last, "", pElem->getAccountName(), pElem->getURL().host(), pElem->getURL().user(), "?");
+ pElem->setListViewItem( last );
+ if (pElem->isActive())
+ pElem->getListViewItem()->setPixmap (0, pix);
+ }
+
+ if (nIndex >= 0)
+ {
+ at (nIndex);
+// list->setCurrentItem (nIndex);
+ }
+}
+
+
+bool ConfigList::setItem (const char* item)
+{
+ int nPos = at ();
+ ConfigElem* pActive = new ConfigElem (this, item);
+ bool result = (find (pActive) >= 0);
+ delete pActive;
+ if (result)
+ return true;
+ else
+ {
+ at (nPos);
+ return false;
+ }
+}
+
+void ConfigList::beep ()
+{
+ if (m_bBeep)
+ kapp->beep ();
+}
+
+void ConfigList::playSound ()
+{
+ if (m_bSound)
+ playSound (m_strSoundFile);
+}
+
+void ConfigList::playSound (const char* file)
+{
+ KAudioPlayer::play(file);
+}
+
+int ConfigList::getRefreshTimeInterval( ) const
+{
+ return m_nIntervalTimer;
+}
+
+void ConfigList::setRefreshTimeInterval( unsigned int interval )
+{
+ m_nIntervalTimer = interval;
+}
+
+bool ConfigList::AutoRefreshOn( ) const
+{
+ return ( m_nIntervalTimer > 0 );
+}
+
+bool ConfigList::hasActiveAccounts( )
+{
+ bool activeAccountFound = false; //when a active account was found, this will be set to TRUE
+ ConfigElem* currentAccount; //saved current account
+ ConfigElem* Account; //used by the search
+
+ //save the current account
+ currentAccount = current();
+
+ //get the first account
+ Account = first();
+
+ //looking for an active account
+ while( Account != NULL && !activeAccountFound )
+ {
+ //have we found one?
+ activeAccountFound = Account->isActive();
+
+ //get next account
+ Account = next();
+ }
+
+ //set the saved account to current
+ if( currentAccount != NULL )
+ findRef( currentAccount );
+
+ //return the result
+ return activeAccountFound;
+}
+
+
+uint ConfigList::getTimeoutTime( ) const
+{
+ return m_nPop3Timer;
+}
+
+void ConfigList::setTimeoutTime( uint time )
+{
+ if( time < MINIMUM_TIMEOUT_TIME )
+ m_nPop3Timer = MINIMUM_TIMEOUT_TIME;
+ else
+ m_nPop3Timer = time;
+}
+
+ConfigElem* ConfigList::getSelectedAccount( )
+{
+ //get the first account in the list
+ ConfigElem* account = first();
+
+ //return NULL if there are no accounts
+ if( account == NULL )
+ return NULL;
+
+ //return the account, if it is selected
+ if( account->isSelected() )
+ return account;
+
+ //iterate over all accounts
+ bool selectedAccountFound = false; //is TRUE, if a selected account was found
+ while( account != NULL && !selectedAccountFound )
+ {
+ //get next account
+ account = next();
+
+ //is the account selected?
+ if( account != NULL )
+ selectedAccountFound = account->isSelected();
+ else
+ selectedAccountFound = false;
+ }
+
+ //return the current account if we have found a selected account
+ //otherwise return FALSE
+ if( selectedAccountFound )
+ return account;
+ else
+ return NULL;
+}
+
+void ConfigList::deleteSelectedMails( )
+{
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //account to process
+
+ //clear the map, which contains the names of the accounts,
+ //which have gotten an order to delete
+ AccountDeletionMap.clear();
+
+ //refresh connects
+ connectAccounts();
+
+ //inserts an item for every account which will get an order to delete
+ //its selected mails. The key is the account name and the data is TRUE.
+ //it is important to do this in a seperate iteration because this avoids
+ //race conditions
+ while( ( account = it.current() ) != NULL )
+ {
+ //insert item
+ AccountDeletionMap.insert( account->getAccountName(), true );
+
+ //get next account
+ ++it;
+ }
+
+ //order all accounts to delete its selected mail
+ it.toFirst();
+ while( ( account = it.current() ) != NULL )
+ {
+ account->deleteSelectedMails();
+
+ //get next account
+ ++it;
+ }
+}
+
+void ConfigList::slotAccountConfigChanged( )
+{
+ emit sigConfigChanged();
+}
+
+void ConfigList::slotCheckDeletionState( QString account )
+{
+ bool accountDeleting = false; //set to TRUE if an account is still deleting
+ AccountTaskMap_Type::Iterator it; //iterator over the account deletion map
+
+ //set the appropriate item in AccountDeletionMap to FALSE
+ AccountDeletionMap[ account ] = false;
+
+ //iterate over the account deletion map to check, whether all accounts
+ //are ready
+ for ( it = AccountDeletionMap.begin(); it != AccountDeletionMap.end(); ++it )
+ {
+ if( *it == true )
+ accountDeleting = true;
+ }
+
+ //emit sigDeleteReady if all accounts are ready
+ if( !accountDeleting )
+ emit sigDeleteReady();
+}
+
+void ConfigList::connectAccounts( )
+{
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //account to connect
+
+ while( ( account = it.current() ) != NULL )
+ {
+ //disconnect old connections
+ account->disconnect();
+
+ //connect
+ connect( account, SIGNAL( sigConfigChanged() ), this, SLOT( slotAccountConfigChanged() ) );
+ connect( account, SIGNAL( sigDeleteReady( QString ) ), this, SLOT( slotCheckDeletionState( QString ) ) );
+ connect( account, SIGNAL( sigShowBodiesReady( QString ) ), this, SLOT( slotCheckShowBodiesState( QString ) ) );
+ connect( account, SIGNAL( sigMessageWindowOpened() ), this, SLOT( slotMessageWindowOpened() ) );
+ connect( account, SIGNAL( sigMessageWindowClosed() ), this, SLOT( slotMessageWindowClosed() ) );
+ connect( account, SIGNAL( sigRefreshReady( QString ) ), this, SLOT( slotCheckRefreshState( QString ) ) );
+
+ //get next account
+ ++it;
+ }
+}
+
+void ConfigList::setConfirmDeletion( bool confirm )
+{
+ m_bConfirmDelete = confirm;
+}
+
+bool ConfigList::confirmDeletion( )
+{
+ return m_bConfirmDelete;
+}
+
+QStringList ConfigList::getSelectedSubjects( ) const
+{
+ QStringList subjects; //contains all subjects
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //current account
+
+ while( ( account = it.current() ) != NULL )
+ {
+ //get subjects of the current account and append them to the list
+ subjects += account->getSelectedSubjects();
+
+ //get next account
+ ++it;
+ }
+
+ return subjects;
+}
+
+bool ConfigList::hasSelectedMails( )
+{
+ bool foundSelected = false; //set to TRUE, when an account with selected mails was found
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //current account
+
+ while( ( account = it.current() ) != NULL && !foundSelected )
+ {
+ foundSelected = account->hasSelectedMails();
+
+ //get next account
+ ++it;
+ }
+
+ return foundSelected;
+
+}
+
+void ConfigList::showSelectedMails( )
+{
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //account to process
+
+ //clear the map, which contains the names of the accounts,
+ //which have gotten an order to show mails
+ AccountShowBodiesMap.clear();
+
+ //refresh connects
+ connectAccounts();
+
+ //inserts an item for every account which will get an order to show
+ //its selected mails. The key is the account name and the data is TRUE.
+ //it is important to do this in a seperate iteration because this avoids
+ //race conditions
+ while( ( account = it.current() ) != NULL )
+ {
+ //insert item
+ AccountShowBodiesMap.insert( account->getAccountName(), true );
+
+ //get next account
+ ++it;
+ }
+
+ //order all accounts to show its selected mail
+ it.toFirst();
+ while( ( account = it.current() ) != NULL )
+ {
+ account->showSelectedMails();
+
+ //get next account
+ ++it;
+ }
+
+}
+
+void ConfigList::slotCheckShowBodiesState( QString account )
+{
+ bool accountDownloading = false; //set to TRUE if an account is downloading mail body yet
+ AccountTaskMap_Type::Iterator it; //iterator over the account map
+
+ //set the appropriate item in AccountShowBodiesMap to FALSE
+ AccountShowBodiesMap[ account ] = false;
+
+ //iterate over the account map to check, whether all accounts
+ //are ready
+ for ( it = AccountShowBodiesMap.begin(); it != AccountShowBodiesMap.end(); ++it )
+ {
+ if( *it == true )
+ accountDownloading = true;
+ }
+
+ //emit sigShowBodiesReady if all accounts are ready
+ //and assume all windows to show the mails are closed
+ if( !accountDownloading )
+ {
+ emit sigShowBodiesReady();
+ ctrOpenMessageWindows = 0;
+ }
+}
+
+void ConfigList::setAllowHTML( bool allowHTML )
+{
+ m_bAllowHTML = allowHTML;
+}
+
+bool ConfigList::allowHTML( ) const
+{
+ return m_bAllowHTML;
+}
+
+void ConfigList::slotMessageWindowOpened( )
+{
+ //increment the window counter
+ ctrOpenMessageWindows++;
+
+ //if the counter was incremented from zero
+ //(the first window was opened), emit the
+ //signal
+ if( ctrOpenMessageWindows == 1 )
+ emit sigMessageWindowOpened();
+}
+
+void ConfigList::slotMessageWindowClosed( )
+{
+ //decrement the window counter
+ ctrOpenMessageWindows--;
+ if( ctrOpenMessageWindows < 0 )
+ ctrOpenMessageWindows = 0;
+
+ //if counter is zero (all windows was closed),
+ //emit signal
+ if( ctrOpenMessageWindows == 0 )
+ emit sigAllMessageWindowsClosed();
+}
+
+void ConfigList::refreshMailLists( FilterLog* log )
+{
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //account to process
+
+ //return, if no accounts available
+ if( count() == 0 )
+ {
+ emit sigRefreshReady();
+ return;
+ }
+
+ //clear the map, which contains the names of the accounts,
+ //which have gotten an order to show mails
+ AccountRefreshMap.clear();
+
+ //refresh connects
+ connectAccounts();
+
+ //inserts an item for every account which will get an order to refresh
+ //its mail list. The key is the account name and the data is TRUE.
+ //it is important to do this in a seperate iteration because this avoids
+ //race conditions
+ while( ( account = it.current() ) != NULL )
+ {
+ //insert item
+ AccountRefreshMap.insert( account->getAccountName(), true );
+
+ //get next account
+ ++it;
+ }
+
+ //order all accounts to refresh their mail lists
+ it.toFirst();
+ while( ( account = it.current() ) != NULL )
+ {
+ account->refreshMailList( log );
+
+ //get next account
+ ++it;
+ }
+
+}
+
+void ConfigList::slotCheckRefreshState( QString account )
+{
+ bool accountRefreshing = false; //set to TRUE if an account is still refreshing
+ AccountTaskMap_Type::Iterator it; //iterator over the account map
+
+ //set the appropriate item in AccountRefreshMap to FALSE
+ AccountRefreshMap[ account ] = false;
+
+ //iterate over the account map to check whether all accounts
+ //are ready
+ for ( it = AccountRefreshMap.begin(); it != AccountRefreshMap.end(); ++it )
+ {
+ if( *it == true )
+ accountRefreshing = true;
+ }
+
+ //emit sigRefreshReady if all accounts are ready
+ if( !accountRefreshing )
+ {
+ emit sigRefreshReady();
+ }
+
+}
+
+int ConfigList::getNumberNewMails( )
+{
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //account to process
+ int number = 0; //number of new mails
+
+ //iterate over all accounts and sum up the number of new mails
+ while( ( account = it.current() ) != NULL )
+ {
+ if( account->isActive() )
+ number += account->getNumberNewMails();
+
+ //get next account
+ ++it;
+ }
+
+ return number;
+}
+
+int ConfigList::getNumberMails( )
+{
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //account to process
+ int number = 0; //number of mails
+
+ //iterate over all accounts and sum up the number of mails
+ while( ( account = it.current() ) != NULL )
+ {
+ if( account->isActive() )
+ number += account->getNumberMails();
+
+ //get next account
+ ++it;
+ }
+
+ return number;
+}
+
+long ConfigList::getTotalSize( )
+{
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //account to process
+ long size = 0; //total size of all mails
+
+ //iterate over all accounts and sum up the size of all mails
+ while( ( account = it.current() ) != NULL )
+ {
+ if( account->isActive() )
+ size += account->getTotalSize();
+
+ //get next account
+ ++it;
+ }
+
+ return size;
+}
+
+void ConfigList::fillMailListView( KshowmailView * view )
+{
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //account to process
+
+ //iterate over all accounts and order the active accounts to fill their mails
+ //into the list view
+ while( ( account = it.current() ) != NULL )
+ {
+ if( account->isActive() )
+ account->fillMailListView( view );
+
+ //get next account
+ ++it;
+ }
+
+}
+
+bool ConfigList::showMainWindowForNewMails( )
+{
+ return m_bShowMainWindow;
+}
+
+bool ConfigList::showAlertMessageForNewMails( )
+{
+ return m_bShowMessage;
+}
+
+bool ConfigList::quitNoNewMails( )
+{
+ return m_bTerminate;
+}
+
+bool ConfigList::minimizeMainWindowNoNewMails( )
+{
+ return m_bMinimize;
+}
+
+int ConfigList::getInitTime( )
+{
+ return m_nInitTimer;
+}
+
+void ConfigList::setInitTime( int time )
+{
+ if( time >= 0 )
+ m_nInitTimer = time;
+ else
+ m_nInitTimer = 0;
+}
+
+bool ConfigList::hasInitTime( )
+{
+ return m_nInitTimer > 0;
+}
+
+void ConfigList::refreshAccountList( )
+{
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //account to process
+
+ //iterate over all accounts and order the account to refresh its
+ //account list view item
+ while( ( account = it.current() ) != NULL )
+ {
+ account->refreshAccountListItem();
+
+ //get next account
+ ++it;
+ }
+
+}
+
+void ConfigList::killPOP3Jobs( )
+{
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //account to process
+
+ //iterate over all accounts and order the account to kill
+ //a running pop3 job
+ while( ( account = it.current() ) != NULL )
+ {
+ account->killPOP3Job();
+
+ //get next account
+ ++it;
+ }
+}
+
+void ConfigList::showSelectedHeaders( )
+{
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //account to process
+ int showNextHeader = ConfigElem::continueShowHeaders; //return value of ConfigElem::showSelectedHeaders
+
+ //iterate over all accounts and order the account to show
+ //the headers of all selected mails.
+ while( ( account = it.current() ) != NULL && showNextHeader == ConfigElem::continueShowHeaders )
+ {
+ if( account->hasSelectedMails() )
+ showNextHeader = account->showSelectedHeaders();
+
+ //get next account
+ ++it;
+ }
+}
+
+void ConfigList::refreshSetup( KListView* view )
+{
+ //get application config object (kshowmailrc)
+ config = KApplication::kApplication()->config();
+
+ //read actions group
+ config->setGroup( CONFIG_GROUP_ACTIONS );
+
+ m_bShowMessage = config->readBoolEntry( CONFIG_ENTRY_NEW_MAIL_ALERTWINDOW, DEFAULT_ACTION_NEW_MAIL_ALERTWINDOW );
+ m_bShowMainWindow = config->readBoolEntry( CONFIG_ENTRY_NEW_MAIL_MAINWINDOW, DEFAULT_ACTION_NEW_MAIL_MAINWINDOW );
+ m_bBeep = config->readBoolEntry( CONFIG_ENTRY_NEW_MAIL_BEEP, DEFAULT_ACTION_NEW_MAIL_BEEP );
+ m_bSound = config->readBoolEntry( CONFIG_ENTRY_NEW_MAIL_SOUND, DEFAULT_ACTION_NEW_MAIL_SOUND );
+ m_strSoundFile = config->readEntry( CONFIG_ENTRY_NEW_MAIL_SOUNDPATH );
+ m_bCommand = config->readBoolEntry( CONFIG_ENTRY_NEW_MAIL_COMMAND, DEFAULT_ACTION_NEW_MAIL_COMMAND );
+ m_strCommandPath = config->readEntry( CONFIG_ENTRY_NEW_MAIL_COMMANDPATH );
+ m_bMinimize = config->readBoolEntry( CONFIG_ENTRY_NO_NEW_MAIL_MINIMIZE, DEFAULT_ACTION_NO_NEW_MAIL_MINIMIZE );
+ m_bTerminate = config->readBoolEntry( CONFIG_ENTRY_NO_NEW_MAIL_TERMINATE, DEFAULT_ACTION_NO_NEW_MAIL_TERMINATE );
+
+ //read general group
+ config->setGroup( CONFIG_GROUP_GENERAL );
+ m_bConfirmClose = config->readBoolEntry( CONFIG_ENTRY_CONFIRM_CLOSE, DEFAULT_CONFIRM_CLOSE );
+ m_bConfirmDelete = config->readBoolEntry( CONFIG_ENTRY_CONFIRM_DELETE, DEFAULT_CONFIRM_DELETE );
+ m_bStartMinimized = config->readBoolEntry( CONFIG_ENTRY_START_MINIMIZED, DEFAULT_START_MINIMIZED );
+ m_bCloseMinimizes = config->readBoolEntry( CONFIG_ENTRY_CLOSE_TO_TRAY, DEFAULT_CLOSE_TO_TRAY );
+ m_bMinimizeToTray = config->readBoolEntry( CONFIG_ENTRY_MINIMIZE_TO_TRAY, DEFAULT_MINIMIZE_TO_TRAY );
+ m_bShowConnectionErrors = config->readBoolEntry( CONFIG_ENTRY_SHOW_CONNECTION_ERRORS, DEFAULT_SHOW_CONNECTION_ERRORS );
+ m_bKeepNew = config->readBoolEntry( CONFIG_ENTRY_KEEP_NEW, DEFAULT_KEEP_NEW );
+
+ m_nInitTimer = config->readNumEntry( CONFIG_ENTRY_INITIAL_TIME, DEFAULT_INITIAL_TIME );
+ m_nIntervalTimer = config->readNumEntry( CONFIG_ENTRY_INTERVAL_TIME, DEFAULT_INTERVAL_TIME);
+ m_nPop3Timer = config->readNumEntry( CONFIG_ENTRY_TIMEOUT_TIME, DEFAULT_TIMEOUT_TIME );
+
+ //read display group
+ config->setGroup( CONFIG_GROUP_VIEW );
+ m_bAllowHTML = config->readBoolEntry( CONFIG_ENTRY_VIEW_USE_HTML, DEFAULT_VIEW_USE_HTML );
+
+ //read Spam configs
+ config->setGroup( CONFIG_GROUP_SPAMCHECK );
+ int intSpamAction = config->readNumEntry( CONFIG_ENTRY_SPAMCHECK_ACTION, DEFAULT_SPAMCHECK_ACTION );
+
+ switch( intSpamAction )
+ {
+ case CONFIG_VALUE_SPAMCHECK_ACTION_DELETE : spamAction = FActDelete; break;
+ case CONFIG_VALUE_SPAMCHECK_ACTION_MARK : spamAction = FActMark; break;
+ case CONFIG_VALUE_SPAMCHECK_ACTION_MOVE : spamAction = FActMove; break;
+ default :
+ kdError() << "Invalid value in " << CONFIG_ENTRY_SPAMCHECK_ACTION << ". Set default value." << endl;
+ switch( DEFAULT_SPAMCHECK_ACTION )
+ {
+ case CONFIG_VALUE_SPAMCHECK_ACTION_DELETE : spamAction = FActDelete; break;
+ case CONFIG_VALUE_SPAMCHECK_ACTION_MARK : spamAction = FActMark; break;
+ case CONFIG_VALUE_SPAMCHECK_ACTION_MOVE : spamAction = FActMove; break;
+ default : spamAction = FActMark; break;
+ }
+
+ }
+
+ if( spamAction == FActMove )
+ spamMailbox = config->readEntry( CONFIG_ENTRY_SPAMCHECK_MOVE_MAILBOX, DEFAULT_SPAMCHECK_ACTION_MOVE_MAILBOX );
+
+
+ //read account configuration and setup accounts
+ //---------------------------------------------
+
+ //get account names from the config file
+ config->setGroup( CONFIG_GROUP_ACCOUNTS );
+ QStringList accounts = config->readListEntry( CONFIG_ENTRY_ACCOUNTS_LIST, QStringList() );
+
+ //remove deleted accounts from the account list
+ //accounts are deleted, if the are in ConfigList yet, but not in the list of the config file (accounts)
+ ConfigElem* accountDel = NULL; //current processed account
+ QPtrListIterator<ConfigElem> iter( *this ); //iterator for the account list (ConfigList)
+
+ //iterate over all accounts (ConfigList)
+ while( ( accountDel = iter.current() ) != NULL )
+ {
+ //increment iterator to get next account
+ ++iter;
+
+ //search for the current account in the account list of the config file
+ QStringList::Iterator foundAccount = accounts.find( accountDel->getAccountName() );
+
+ //remove account from ConfigList, if it is not in the list of the config file
+ if( foundAccount == accounts.end() )
+ remove( accountDel );
+ }
+
+ //add or edit accounts
+ ConfigElem* acc;
+ //iterate over all items of the account list of the config file
+ for( QStringList::Iterator it = accounts.begin(); it != accounts.end(); ++it )
+ {
+ //create a new account, if it is not in the list yet (ConfigList)
+ //or get the account
+ if( !hasAccount( *it ) )
+ {
+ //create new account
+ acc = new ConfigElem( this, *it );
+ inSort( acc );
+
+ //the pointer list inserts a copy of the new account object
+ //we have to delete the original
+ delete acc;
+ }
+
+ //get account from ConfigList
+ acc = getAccount( *it );
+
+ //get the setup of the account from the config file and setup the account
+ config->setGroup( *it );
+
+ acc->setHost( config->readEntry( CONFIG_ENTRY_ACCOUNT_SERVER, DEFAULT_ACCOUNT_SERVER ) );
+
+ //set protocol and security
+ //if the read protocol is POP3 and SSL is enabled, the account protocol will set to "pop3s"
+ QString proto = config->readEntry( CONFIG_ENTRY_ACCOUNT_PROTOCOL, DEFAULT_ACCOUNT_PROTOCOL ).lower();
+ int secureTransfer = config->readNumEntry( CONFIG_ENTRY_ACCOUNT_SECTRANSFER, DEFAULT_ACCOUNT_SECTRANSFER );
+
+ if( proto == "pop3" && secureTransfer == CONFIG_VALUE_ACCOUNT_SECTRANSFER_SSL )
+ {
+ acc->setProtocol( "pop3s" );
+ }
+ else
+ {
+ acc->setProtocol( proto );
+ }
+
+ if( secureTransfer == CONFIG_VALUE_ACCOUNT_SECTRANSFER_TLS )
+ acc->setTLS( true );
+ else
+ acc->setTLS( false );
+
+
+ acc->setPort( config->readNumEntry( CONFIG_ENTRY_ACCOUNT_PORT, DEFAULT_ACCOUNT_PORT_POP3 ) );
+ acc->setUser( config->readEntry( CONFIG_ENTRY_ACCOUNT_USER, DEFAULT_ACCOUNT_USER ) );
+ acc->setActive( config->readBoolEntry( CONFIG_ENTRY_ACCOUNT_ACTIVE, DEFAULT_ACCOUNT_ACTIVE ) );
+ int StorageType = config->readNumEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, DEFAULT_ACCOUNT_PASSWORD_STORAGE );
+
+ switch( StorageType )
+ {
+ case CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE:
+ acc->setPasswordStorage( CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE );
+ acc->setPassword( QString::null );
+ break;
+
+ case CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE:
+ acc->setPasswordStorage( CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE );
+ acc->setPassword( Encryption::decrypt( config->readEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, DEFAULT_ACCOUNT_PASSWORD ) ) );
+ break;
+
+ case CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET:
+ acc->setPasswordStorage( CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET );
+ acc->setPassword( KWalletAccess::getPassword( *it ) );
+ break;
+
+ default:
+ acc->setPasswordStorage( DEFAULT_ACCOUNT_PASSWORD_STORAGE );
+ acc->setPassword( QString::null );
+ }
+
+ //order the account to reloads its filter setup
+ acc->reloadFilterSettings();
+ }
+
+ //connect the signals of the accounts with ConfigList
+ connectAccounts();
+
+ //refresh account list view
+ setList( view );
+}
+
+void ConfigList::executeNewMailCommand( )
+{
+ if( m_bCommand )
+ {
+ if( m_strCommandPath != QString::null && m_strCommandPath != "" )
+ {
+ KShellProcess proc; //process handler to execute the binary
+
+ proc << m_strCommandPath;
+
+ proc.start( KShellProcess::DontCare );
+ }
+ }
+}
+
+bool ConfigList::keepNew( )
+{
+ return m_bKeepNew;
+}
+
+bool ConfigList::confirmClose( ) const
+{
+ return m_bConfirmClose;
+}
+
+bool ConfigList::startMinimized( ) const
+{
+ return m_bStartMinimized;
+}
+
+bool ConfigList::closeToTray( ) const
+{
+ return m_bCloseMinimizes;
+}
+
+bool ConfigList::minimizesToTray( ) const
+{
+ return m_bMinimizeToTray;
+}
+
+bool ConfigList::showConnectionErrors( ) const
+{
+ return m_bShowConnectionErrors;
+}
+
+bool ConfigList::hasAccount( const QString & name ) const
+{
+ bool found = false; //TRUE if we have found the given account
+ ConfigElem* account; //account from which we want to get its name
+ QPtrListIterator<ConfigElem> it( *this ); //iterator for the account list
+
+ //iterate over all accounts
+ while( ( account = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next account
+ ++it;
+
+ //if current account is the searched one set found to TRUE
+ if( account->getAccountName() == name )
+ found = true;
+ }
+
+ return found;
+}
+
+ConfigElem * ConfigList::getAccount( const QString & name ) const
+{
+ bool found = false; //TRUE if we have found the given account
+ ConfigElem* account = NULL; //account from which we want to get its name
+ QPtrListIterator<ConfigElem> it( *this ); //iterator for the account list
+ ConfigElem* returnValue = NULL;
+
+ //iterate over all accounts
+ while( ( account = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next account
+ ++it;
+
+ //if current account is the searched one set found to TRUE
+ if( account->getAccountName() == name )
+ {
+ found = true;
+ returnValue = account;
+ }
+ }
+
+ return returnValue;
+}
+
+void ConfigList::printSetup( )
+{
+ ConfigElem* account = NULL; //account from which we want to print the setup
+ QPtrListIterator<ConfigElem> it( *this ); //iterator for the account list
+
+ //iterate over all accounts
+ while( ( account = it.current() ) != NULL )
+ {
+ //increment iterator to next account
+ ++it;
+
+ //print setup
+ account->printSetup();
+ }
+}
+
+void ConfigList::readStoredMails( )
+{
+ //open file
+ QString MailFileName = locateLocal( "config", MAIL_FILE );
+ QFile file( MailFileName );
+ bool fileOpen = file.open( IO_ReadOnly );
+
+ //return, if the file could not be opened
+ if( !fileOpen )
+ {
+ kdError() << "ConfigList::readStoredMails: File " << MailFileName << " could not be opened." << endl;
+ return;
+ }
+
+ //create DOM document with the content read from the file
+ QDomDocument doc( MAIL_FILE_DOCTYPE );
+ QString* errorMsg = new QString();
+
+ bool success = doc.setContent( &file );
+ if( !success )
+ {
+ kdError() << "ConfigList::readStoredMails: Invalid content in " << MAIL_FILE << ". " << *errorMsg << endl;
+ }
+
+ //get the root element
+ QDomElement accounts = doc.namedItem ( ROOT_ELEMENT ).toElement();
+
+ //get the first account element
+ QDomNode accNode = accounts.firstChild();
+
+ //get all account elements
+ while( !accNode.isNull() )
+ {
+ //convert account node to DOM element
+ QDomElement accElem = accNode.toElement();
+
+ //get the account name
+ QString accName = accElem.attribute( ATTRIBUTE_ACCOUNT_NAME );
+
+ //get the proper account object
+ ConfigElem* account = getAccount( accName );
+
+ //order the account to read its stored mails
+ account->readStoredMails( accElem );
+
+ //get next account node
+ accNode = accNode.nextSibling();
+ }
+
+ //close file
+ file.close();
+}
+
+FilterAction_Type ConfigList::getSpamAction( )
+{
+ return spamAction;
+}
+
+QString ConfigList::getSpamMailbox( )
+{
+ return spamMailbox;
+}
+
+int ConfigList::numberDeletedMailsLastRefresh( )
+{
+ ConfigElem* account = NULL;
+ QPtrListIterator<ConfigElem> it( *this ); //iterator for the account list
+ int number = 0;
+
+ //iterate over all accounts
+ while( ( account = it.current() ) != NULL )
+ {
+ //increment iterator to next account
+ ++it;
+
+ number += account->numberDeletedMailsLastRefresh();
+ }
+
+ return number;
+}
+
+int ConfigList::numberDeletedMailsStart( )
+{
+ ConfigElem* account = NULL;
+ QPtrListIterator<ConfigElem> it( *this ); //iterator for the account list
+ int number = 0;
+
+ //iterate over all accounts
+ while( ( account = it.current() ) != NULL )
+ {
+ //increment iterator to next account
+ ++it;
+
+ number += account->numberDeletedMailsStart();
+ }
+
+ return number;
+}
+
+int ConfigList::numberMovedMailsLastRefresh( )
+{
+ ConfigElem* account = NULL;
+ QPtrListIterator<ConfigElem> it( *this ); //iterator for the account list
+ int number = 0;
+
+ //iterate over all accounts
+ while( ( account = it.current() ) != NULL )
+ {
+ //increment iterator to next account
+ ++it;
+
+ number += account->numberMovedMailsLastRefresh();
+ }
+
+ return number;
+}
+
+int ConfigList::numberMovedMailsStart( )
+{
+ ConfigElem* account = NULL;
+ QPtrListIterator<ConfigElem> it( *this ); //iterator for the account list
+ int number = 0;
+
+ //iterate over all accounts
+ while( ( account = it.current() ) != NULL )
+ {
+ //increment iterator to next account
+ ++it;
+
+ number += account->numberMovedMailsStart();
+ }
+
+ return number;
+}
+
+int ConfigList::numberIgnoredMails( )
+{
+ ConfigElem* account = NULL;
+ QPtrListIterator<ConfigElem> it( *this ); //iterator for the account list
+ int number = 0;
+
+ //iterate over all accounts
+ while( ( account = it.current() ) != NULL )
+ {
+ //increment iterator to next account
+ ++it;
+
+ number += account->numberIgnoredMails();
+ }
+
+ return number;
+}
+
+QStringList ConfigList::getSelectedSenders( ) const
+{
+ QStringList senders; //contains all senders
+ QPtrListIterator<ConfigElem> it( *this ); //to iterate over all accounts
+ ConfigElem* account; //current account
+
+ while( ( account = it.current() ) != NULL )
+ {
+ //get senders of the current account and append them to the list
+ senders += account->getSelectedSenders();
+
+ //get next account
+ ++it;
+ }
+
+ return senders;
+}
+
+void ConfigList::refreshFilterSetup( )
+{
+ ConfigElem* account; //account
+ QPtrListIterator<ConfigElem> it( *this ); //iterator for the account list
+
+ //iterate over all accounts
+ while( ( account = it.current() ) != NULL )
+ {
+ //increment iterator to next account
+ ++it;
+
+ //reload filter setup of the current account
+ account->reloadFilterSettings();
+ }
+
+}
+
+
diff --git a/kshowmail/configlist.h b/kshowmail/configlist.h
new file mode 100644
index 0000000..97418cd
--- /dev/null
+++ b/kshowmail/configlist.h
@@ -0,0 +1,734 @@
+/***************************************************************************
+ configlist.h - description
+ -------------------
+ begin : Tue May 9 2000
+ copyright : (C) 2000-2001 by Eggert Ehmke
+ (C) 2007 by Ulrich Weigelt
+ email : eggert.ehmke@berlin.de
+ ulrich.weigelt@gmx.de
+
+ 26 Sep 2002 - Allow for columns to be hidden. Allistar Melville
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef CONFIGLIST_H
+#define CONFIGLIST_H
+
+//Qt header
+#include <qptrlist.h>
+#include <qlistview.h>
+#include <qobject.h>
+
+//KDE headers
+#include <kcombobox.h>
+#include <kprocess.h>
+#include <kdebug.h>
+
+//KShowmail headers
+#include "configelem.h"
+#include "constants.h"
+#include "kshowmailview.h"
+#include "types.h"
+#include "encryption.h"
+#include "kwalletaccess.h"
+#include "filteritem.h"
+#include "headerfilter.h"
+#include "filterlog.h"
+
+using namespace Constants;
+using namespace Types;
+using namespace Encryption;
+
+class ConfigElem;
+class KshowmailView;
+
+/**
+ * Contains the application and account settings. The account
+ * settings are stored in ConfigElem objects.
+ * @author Eggert Ehmke
+ * @author Ulrich Weigelt
+ */
+class ConfigList : public QObject, public QPtrList<ConfigElem>
+{
+
+ Q_OBJECT
+
+ public:
+
+ /**
+ * Constructor.
+ */
+ ConfigList ();
+
+ /**
+ * Destructor
+ */
+ virtual ~ConfigList () {};
+
+ /**
+ * Reads the setup from the configuration file (kshowmailrc) and
+ * sets the properties.
+ * @param view pointer to the account list view
+ */
+ void refreshSetup( KListView* view );
+
+ /**
+ * Reloads the filter settings
+ */
+ void refreshFilterSetup();
+
+ /**
+ * Returns the auto refresh time interval.
+ * @return refresh time interval [minutes]
+ */
+ int getRefreshTimeInterval() const;
+
+ /**
+ * Sets the auto refresh time interval.
+ * @param interval the new time interval [minutes]
+ */
+ void setRefreshTimeInterval( unsigned int interval );
+
+ /**
+ * Returns whether auto refresh is on.
+ * @return TRUE - auto refresh is on; FALSE - auto refresh is off
+ */
+ bool AutoRefreshOn() const;
+
+ /**
+ * Sets whether the user has to confirm a deletion.
+ * @param confirm TRUE - user has to confirm; FALSE - the user does not have to confirm
+ */
+ void setConfirmDeletion( bool confirm );
+
+ /**
+ * Returns whether the user has to confirm a deletion.
+ * @return TRUE - the user has to confirm
+ * @return FALSE - the user does not have to confirm
+ */
+ bool confirmDeletion();
+
+ /**
+ * Returns whether the user has to confirm window close.
+ * @return TRUE - user has to confirm
+ * @return FALSE - user does not have to confirm
+ */
+ bool confirmClose() const;
+
+ /**
+ * Returns whether the app shall start minimized.
+ * @return TRUE - start minimized
+ * @return FALSE - don't start minimized
+ */
+ bool startMinimized() const;
+
+ /**
+ * Returns whether the close button leaves the application running in tray.
+ * @return TRUE - leaves running
+ * @return FALSE - app will be closed
+ */
+ bool closeToTray() const;
+
+ /**
+ * Returns whether minimizes to the tray rather than to the taskbar.
+ * @return TRUE - minimizes to the tray
+ * @return FALSE - minimizes to the taskbar
+ */
+ bool minimizesToTray() const;
+
+ /**
+ * Returns whether connection errors will be shown during refresh.
+ * @return TRUE - show errors
+ * @return FALSE - don't show errors
+ */
+ bool showConnectionErrors() const;
+
+ /**
+ * Sets whether the mail show dialog has to use HTML.
+ * @param allowHTML TRUE - the dialog has to use HTML; FALSE - the dialog must not use HTML
+ * @see m_bAllowHTML
+ * */
+ void setAllowHTML( bool allowHTML );
+
+ /**
+ * Returns whether the mail show dialog has to use HTML.
+ * @return TRUE - the dialog has to use HTML
+ * @return FALSE - the dialog must not use HTML
+ * @see m_bAllowHTML
+ */
+ bool allowHTML() const;
+
+ /**
+ * Returns whether there are active accounts.
+ * Doesn't set the current account.
+ * @return TRUE - Yes, there are active accounts (at least one :o) ); FALSE - no active accounts
+ */
+ bool hasActiveAccounts();
+
+ /**
+ * Returns the number of seconds the application will be wait for a pop3 job.
+ * @return seconds to timeout
+ */
+ uint getTimeoutTime() const;
+
+ /**
+ * Sets the number of seconds the application will be wait for a pop3 job.
+ * Minimum time is POP3_MINIMUM_TIMEOUT_TIME seconds.
+ * @param time seconds to timeout
+ * @see constants.h
+ */
+ void setTimeoutTime( uint time );
+
+ /**
+ * Returns the first account, for which an appropriate item is
+ * selected in the account list view.
+ * @return pointer to the selected account object
+ * @return NULL - no account is selected
+ */
+ ConfigElem* getSelectedAccount();
+
+ /**
+ * Deletes all selected mails from the servers and the mail lists.
+ * This just starts the deletion and returns after then. When all
+ * accounts are ready the signal sigDeleteReady will be emitted.
+ */
+ void deleteSelectedMails();
+
+ /**
+ * Connects the signals of the accounts with the slots of this
+ * class.
+ * It is necessary to do this after an account has been appended to the
+ * list and it is a good idea to call this method before you invoke
+ * an operation on an account that may emit a signal.
+ * The reason is that the pointer list seemingly often changes the
+ * adresses of the inserted accounts. After that the connections are corrupt.
+ */
+ void connectAccounts();
+
+ /**
+ * Returns the subjects of the selected mails.
+ * @return subjects of selected mails
+ */
+ QStringList getSelectedSubjects() const;
+
+ /**
+ * Returns whether there are mails in this list which are selected
+ * in the list view.
+ * @return TRUE - there are selected mails
+ * @return FALSE - there aren't selected mails
+ */
+ bool hasSelectedMails();
+
+ /**
+ * Downloads and shows the bodies of the selected mails.
+ * This just starts the download and returns after then. When all
+ * bodies are downloaded and shown the signal sigShowBodiesReady will be
+ * emitted.
+ */
+ void showSelectedMails();
+
+ /**
+ * Refreshes the mail list of all accounts.
+ * This just starts the refresh and returns after then. When all
+ * accounts have refreshed their mail list the signal sigRefreshReady will be
+ * emitted.
+ * @param log Pointer to the filter log.
+ */
+ void refreshMailLists( FilterLog* log = NULL );
+
+ /**
+ * Returns the number of new mails.
+ * @return number of new mails
+ */
+ int getNumberNewMails();
+
+ /**
+ * Returns the number of mails.
+ * @return number of mails
+ */
+ int getNumberMails();
+
+ /**
+ * Returns the total size of all mails.
+ * @return total size
+ */
+ long getTotalSize();
+
+ /**
+ * Creates for every mail a list view item and inserts it
+ * into the mail list view.
+ * @param view pointer to the application view
+ */
+ void fillMailListView( KshowmailView* view );
+
+ /**
+ * Returns whether the main window will be shown, if
+ * new mails was received.
+ * @return TRUE - main window will be shown
+ * @return FALSE - main window will not be shown
+ */
+ bool showMainWindowForNewMails();
+
+ /**
+ * Returns whether an alert message will be shown if
+ * new mails were received.
+ * @return TRUE - will be shown
+ * @return FALSE - will not be shown
+ */
+ bool showAlertMessageForNewMails();
+
+ /**
+ * Returns whether the app will be terminated if
+ * no new mails were received.
+ * @return TRUE - will be terminated
+ * @return FALSE - will not be terminated
+ */
+ bool quitNoNewMails();
+
+ /**
+ * Returns whether the main window will be minimized, if
+ * no new mails were received.
+ * @return TRUE - main window will be minimized
+ * @return FALSE - main window will not be minimized
+ */
+ bool minimizeMainWindowNoNewMails();
+
+ /**
+ * Returns the configured time to the first refresh.
+ * @return time to the first refresh (seconds)
+ */
+ int getInitTime();
+
+ /**
+ * Sets the time to the first refresh.
+ * @param time time (seconds) to the first refresh
+ */
+ void setInitTime( int time );
+
+ /**
+ * Returns whether a time to first refresh is configured.
+ * @return TRUE - init time configured
+ * @return FALSE - no init time configured
+ */
+ bool hasInitTime();
+
+ /**
+ * Refreshes the account list (number of mails and total size).
+ */
+ void refreshAccountList();
+
+ /**
+ * Kills all running pop3 jobs.
+ */
+ void killPOP3Jobs();
+
+ /**
+ * Shows the headers of all selected mails.
+ */
+ void showSelectedHeaders();
+
+ /**
+ * Executes the configure new mail command.
+ * Does nothing, if the command option is switched off (m_bCommand == false).
+ */
+ void executeNewMailCommand();
+
+ /**
+ * Returns whether all new mails will keep new status until the app is closed.
+ * @return TRUE - mails keep new status at next refresh
+ * @return FALSE - mails don't keep new status at next refresh
+ */
+ bool keepNew();
+
+ /**
+ * Prints the setup.
+ */
+ void printSetup();
+
+ /**
+ * Saves the current mails data and the account setups.
+ * The mails data will be saved into an XML file (kshowmail.xml).
+ * The account setups will be saved into the application config file (kshowmailrc).
+ */
+ void saveOptions();
+
+ /**
+ * Reads stored mails data.
+ * At every setup saving (e.g. at exit) the mails data will be stored into the file kshowmail.xml.
+ * At application start we read this file to identify mails which are not new at first refresh.
+ */
+ void readStoredMails();
+
+ /**
+ * Returns the action to used on spam mails
+ * @return action to used on spam mails
+ */
+ FilterAction_Type getSpamAction();
+
+ /**
+ * Returns the mailbox for spam mails
+ * @return mailbox for spam
+ */
+ QString getSpamMailbox();
+
+ /**
+ * Returns the number of deleted mails by last refresh.
+ * @return number of deleted mails by last refresh
+ */
+ int numberDeletedMailsLastRefresh();
+
+ /**
+ * Returns the number of deleted mails since start.
+ * @return number of deleted mails since start
+ */
+ int numberDeletedMailsStart();
+
+ /**
+ * Returns the number of moved mails by last refresh.
+ * @return number of moved mails by last refresh
+ */
+ int numberMovedMailsLastRefresh();
+
+ /**
+ * Returns the number of moved mails since start.
+ * @return number of moved mails since start
+ */
+ int numberMovedMailsStart();
+
+ /**
+ * Returns the number of ignored mails by last refresh.
+ * @return number of ignored mails by last refresh
+ */
+ int numberIgnoredMails();
+
+ /**
+ * Returns the senders of the selected mails
+ * @return senders of the selected mails
+ */
+ QStringList getSelectedSenders() const;
+
+ bool setItem (const char* item);
+ void setList (QListView* list);
+ void beep ();
+ void playSound ();
+ void playSound (const char* file);
+
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * Time in minutes to the next automatic refresh.
+ */
+ int m_nIntervalTimer;
+
+ /**
+ * Number of seconds the application will wait for a pop3 job to complete.
+ */
+ uint m_nPop3Timer;
+
+ /**
+ * This map is used by the delete methods.
+ * deleteSelectedMails() clears it and after that inserts for every account
+ * an item. The Key is the account name and the data is TRUE.
+ * When slotCheckDeletionState() is invoked by a signal sent by an account,
+ * this slot will set the appropriate item data to FALSE. If the data of all
+ * items are set to FALSE, the method will know all accounts have ended the
+ * deletion and will emit sigDeleteReady.
+ * @see deleteSelectedMails()
+ * @see slotCheckDeletionState()
+ */
+ AccountTaskMap_Type AccountDeletionMap;
+
+ /**
+ * This map is used by the methods to show the mail body.
+ * showSelectedMails() clears it and after that inserts for every account
+ * an item. The Key is the account name and the data is TRUE.
+ * When slotCheckShowBodiesState() is invoked by a signal sent by an account,
+ * this slot will set the appropriate item data to FALSE. If the data of all
+ * items are set to FALSE, the method will know all accounts have shown the
+ * mail body and will emit sigShowBodiesReady.
+ * @see showSelectedMails()
+ * @see slotCheckShowBodiesState()
+ */
+ AccountTaskMap_Type AccountShowBodiesMap;
+
+ /**
+ * This map is used by the methods to refresh the account mail lists.
+ * refreshMailLists() clears it and after that inserts for every account
+ * an item. The Key ist the account name and the data is TRUE.
+ * When slotCheckRefreshState() is invoked by a signal sent by an account,
+ * this slot will set the appropriate item data to FALSE. If the data of all
+ * items are set to FALSE, the method will know all accounts have refreshed their
+ * mail list and will emit sigRefreshReady.
+ * @see refreshMailLists()
+ * @see slotCheckRefreshState()
+ */
+ AccountTaskMap_Type AccountRefreshMap;
+
+ /**
+ * TRUE - the user has to confirm a deletion,
+ * FALSE - the user does not have to confirm a deletion
+ */
+ bool m_bConfirmDelete;
+
+ /**
+ * TRUE - allow HTML formatting in the mail show dialog box
+ * FALSE - don't allow HTML formatting
+ * @see setAllowHTML()
+ * @see allowHTML()
+ */
+ bool m_bAllowHTML;
+
+ /**
+ * Number of windows, which have been opened by the accounts to show mails.
+ * Used by slotMessageWindowOpened() and slotMessageWindowClosed().
+ * @see slotMessageWindowOpened
+ * @see slotMessageWindowClosed
+ */
+ int ctrOpenMessageWindows;
+
+ /**
+ * Contains the time (seconds) to first refresh.
+ * @see setInitTime()
+ * @see getInitTime()
+ */
+ int m_nInitTimer;
+
+ /**
+ * TRUE - If a new mail is arrived an alert window will be shown.
+ */
+ bool m_bShowMessage;
+
+ /**
+ * TRUE - If a new mail is arrived the main window will be shown.
+ */
+ bool m_bShowMainWindow;
+
+ /**
+ * TRUE - If a new mail is arrived the system will beep.
+ */
+ bool m_bBeep;
+
+ /**
+ * TRUE - If a new mail is arrived a sound will be played.
+ */
+ bool m_bSound;
+
+ /**
+ * Sound file which will be played if a new mail is arrived.
+ */
+ QString m_strSoundFile;
+
+ /**
+ * TRUE - If a new mail is arrived a command will be executed.
+ */
+ bool m_bCommand;
+
+ /**
+ * Path to command which will be executed if a new mail is arrived.
+ */
+ QString m_strCommandPath;
+
+ /**
+ * TRUE - If no new mail is arrived the application will be ended.
+ */
+ bool m_bTerminate;
+
+ /**
+ * TRUE - If no new mail is arrived the main window will be minimized.
+ */
+ bool m_bMinimize;
+
+ /**
+ * TRUE - If a connection error occures during refresh an error message will be shown.
+ */
+ bool m_bShowConnectionErrors;
+
+ /**
+ * TRUE - The user has to confirm window close.
+ */
+ bool m_bConfirmClose;
+
+ /**
+ * TRUE - the app starts minimized.
+ */
+ bool m_bStartMinimized;
+
+ /**
+ * TRUE - the close button leaves the application running in tray
+ */
+ bool m_bCloseMinimizes;
+
+ /**
+ * TRUE - minimizes to the tray rather than to the taskbar
+ */
+ bool m_bMinimizeToTray;
+
+ /**
+ * TRUE - mails keep new until termination
+ */
+ bool m_bKeepNew;
+
+ /**
+ * Mailbox for Spam, if configured
+ */
+ QString spamMailbox;
+
+ /**
+ * Action which shall be done, if the mail is Spam
+ */
+ FilterAction_Type spamAction;
+
+
+ protected:
+
+ /**
+ * Makes a copy from the given account object and returns the pointer to it.
+ * Reimplementation of QPtrList::newItem().
+ * Used by QPtrList to add new items.
+ * @param item account object
+ * @return pointer to the new account object
+ */
+ virtual QCollection::Item newItem( QCollection::Item item );
+
+ /**
+ * Compares two ConfigElem objects.
+ * Reimplementation of QPtrList::compareItems(). Used by inSort().
+ * @param item1 account 1
+ * @param item2 account 2
+ * @return 0 if account name 1 == account name 2
+ * @return nonzero if account name 2 != account name 2
+ */
+ virtual int compareItems( QCollection::Item item1, QCollection::Item item2 );
+
+ /**
+ * Returns whether the given account is in the list
+ * @param name name of the searched account
+ * @return TRUE - account is existent
+ * @return FALSE - account is not existent
+ */
+ bool hasAccount( const QString& name ) const;
+
+ /**
+ * Returns the pointer to the account named like the given name.
+ * @param name of the searched account
+ * @return account or NULL, if the account was not found
+ */
+ ConfigElem* getAccount( const QString& name ) const;
+
+ protected slots:
+
+ /**
+ * Connected with signal sigConfigChanged of all accounts.
+ * Emits the signal sigConfigChanged.
+ */
+ void slotAccountConfigChanged();
+
+ /**
+ * Connected with signal sigDeleteReady of all accounts.
+ * When an account has sent this signal its appropriate item
+ * in AccountDeletionMap will set to FALSE.
+ * When all accounts have done the deletion it will emit signal
+ * sigDeleteReady.
+ * @param account name of the account which has emitted the signal
+ * @see AccountDeletionMap
+ */
+ void slotCheckDeletionState( QString account );
+
+ /**
+ * Connected with signal sigShowBodiesReady of all accounts.
+ * When an account has sent this signal its appropriate item
+ * in AccountShowBodiesMap will set to FALSE.
+ * When all accounts have shown the mail it will emit signal
+ * sigShowBodiesReady.
+ * @param account name of the account which has emitted the signal
+ * @see AccountShowBodiesMap
+ */
+ void slotCheckShowBodiesState( QString account );
+
+ /**
+ * Connected with signal sigMessageWindowOpened of all accounts.
+ * When an account has sent this signal the counter ctrOpenMessageWindows
+ * will be incremented.
+ * When the counter was incremented from zero (the first window was opened)
+ * the signal sigMessageWindowOpened will be emitted.
+ * @see ctrOpenMessageWindows
+ * @see sigMessageWindowOpened
+ */
+ void slotMessageWindowOpened();
+
+ /**
+ * Connected with signal sigMessageWindowClosed of all accounts.
+ * When an account has sent this signal the counter ctrOpenMessageWindows
+ * will be decremented.
+ * When the counter has reached zero the signal sigAllMessageWindowsClosed
+ * will be emitted.
+ * @see ctrOpenMessageWindows
+ * @see sigAllMessageWindowsClosed
+ */
+ void slotMessageWindowClosed();
+
+ /**
+ * Connected with signal sigRefreshReady of all accounts.
+ * When an account has sent this signal its appropriate item
+ * in AccountRefreshMap will set to FALSE.
+ * When all accounts have refreshed their mail list it will emit
+ * signal sigRefreshReady.
+ * @param account name of the account which has emitted the signal
+ * @see AccountRefreshMap
+ */
+ void slotCheckRefreshState( QString account );
+
+ signals:
+
+ /**
+ * Will be emitted when the configuration of an account or of the app
+ * was changed.
+ */
+ void sigConfigChanged();
+
+ /**
+ * Will be emitted when all selected mails are deleted.
+ */
+ void sigDeleteReady();
+
+ /**
+ * Will be emitted when all selected mails are shown.
+ */
+ void sigShowBodiesReady();
+
+ /**
+ * Will be emitted by slotMessageWindowOpened when an account has
+ * opened a window to show a mail.
+ * @see slotMessageWindowOpened
+ */
+ void sigMessageWindowOpened();
+
+ /**
+ * Will be emitted by slotMessageWindowClosed when all accounts have
+ * closed their windows to show mails.
+ * @see slotMessageWindowClosed
+ */
+ void sigAllMessageWindowsClosed();
+
+ /**
+ * Will be emitted, when all accounts have refreshed their mail list.
+ */
+ void sigRefreshReady();
+
+};
+
+#endif
diff --git a/kshowmail/constants.h b/kshowmail/constants.h
new file mode 100644
index 0000000..fe91a2a
--- /dev/null
+++ b/kshowmail/constants.h
@@ -0,0 +1,367 @@
+//
+// C++ Interface: constants
+//
+// Description:
+// Containts all constants.
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+
+#ifndef CONSTANTS_H
+#define CONSTANTS_H
+
+/**
+ * Contains all constants.
+ */
+namespace Constants
+{
+ /**
+ * Command Line Options
+ */
+ //option for show config dialog at start
+ #define CMDLINE_CONFIG "configure"
+ #define CMDLINE_CONFIG_SHORT "c"
+ //option for looking for new mails at start
+ #define CMDLINE_REFRESH "refresh"
+ #define CMDLINE_REFRESH_SHORT "r"
+
+ /**
+ * Defaults
+ */
+ //general defaults
+ #define DEFAULT_CONFIRM_CLOSE false
+ #define DEFAULT_CONFIRM_DELETE true
+ #define DEFAULT_START_MINIMIZED false
+ #define DEFAULT_CLOSE_TO_TRAY true
+ #define DEFAULT_MINIMIZE_TO_TRAY true
+ #define DEFAULT_SHOW_CONNECTION_ERRORS true
+ #define DEFAULT_KEEP_NEW false
+
+ #define DEFAULT_INITIAL_TIME 0
+ #define DEFAULT_INTERVAL_TIME 0
+ #define MINIMUM_TIMEOUT_TIME 5
+ #define DEFAULT_TIMEOUT_TIME 30
+
+ //default actions
+ #define DEFAULT_ACTION_NEW_MAIL_ALERTWINDOW true
+ #define DEFAULT_ACTION_NEW_MAIL_MAINWINDOW false
+ #define DEFAULT_ACTION_NEW_MAIL_BEEP false
+ #define DEFAULT_ACTION_NEW_MAIL_SOUND false
+ #define DEFAULT_ACTION_NEW_MAIL_COMMAND false
+ #define DEFAULT_ACTION_NO_NEW_MAIL_MINIMIZE false
+ #define DEFAULT_ACTION_NO_NEW_MAIL_TERMINATE false
+
+ //default display options
+ #define DEFAULT_DISPLAY_ACCOUNT_ACTIVE true
+ #define DEFAULT_DISPLAY_ACCOUNT_ACCOUNT true
+ #define DEFAULT_DISPLAY_ACCOUNT_SERVER true
+ #define DEFAULT_DISPLAY_ACCOUNT_USER true
+ #define DEFAULT_DISPLAY_ACCOUNT_MESSAGES true
+ #define DEFAULT_DISPLAY_ACCOUNT_SIZE true
+ #define DEFAULT_DISPLAY_MESSAGE_NUMBER true
+ #define DEFAULT_DISPLAY_MESSAGE_ACCOUNT true
+ #define DEFAULT_DISPLAY_MESSAGE_FROM true
+ #define DEFAULT_DISPLAY_MESSAGE_TO true
+ #define DEFAULT_DISPLAY_MESSAGE_SUBJECT true
+ #define DEFAULT_DISPLAY_MESSAGE_DATE true
+ #define DEFAULT_DISPLAY_MESSAGE_SIZE true
+ #define DEFAULT_DISPLAY_MESSAGE_CONTENT true
+ #define DEFAULT_DISPLAY_MESSAGE_STATE true
+
+ //default view options
+ #define DEFAULT_VIEW_USE_HTML false
+
+ //default column widthes
+ #define DEFAULT_WIDTH_ACCOUNT_ACTIVE 50
+ #define DEFAULT_WIDTH_ACCOUNT_ACCOUNT 100
+ #define DEFAULT_WIDTH_ACCOUNT_SERVER 100
+ #define DEFAULT_WIDTH_ACCOUNT_USER 100
+ #define DEFAULT_WIDTH_ACCOUNT_MESSAGES 80
+ #define DEFAULT_WIDTH_ACCOUNT_SIZE 80
+ #define DEFAULT_WIDTH_MESSAGE_NUMBER 50
+ #define DEFAULT_WIDTH_MESSAGE_ACCOUNT 100
+ #define DEFAULT_WIDTH_MESSAGE_FROM 200
+ #define DEFAULT_WIDTH_MESSAGE_TO 200
+ #define DEFAULT_WIDTH_MESSAGE_SUBJECT 350
+ #define DEFAULT_WIDTH_MESSAGE_DATE 100
+ #define DEFAULT_WIDTH_MESSAGE_SIZE 80
+ #define DEFAULT_WIDTH_MESSAGE_CONTENT 80
+ #define DEFAULT_WIDTH_MESSAGE_STATE 50
+
+ //account defaults
+ #define DEFAULT_ACCOUNT_NAME ""
+ #define DEFAULT_ACCOUNT_SERVER ""
+ #define DEFAULT_ACCOUNT_PROTOCOL "POP3"
+ #define DEFAULT_ACCOUNT_PORT_POP3 110
+ #define DEFAULT_ACCOUNT_PORT_POP3SSL 995
+ #define DEFAULT_ACCOUNT_USER ""
+ #define DEFAULT_ACCOUNT_PASSWORD ""
+ #define DEFAULT_ACCOUNT_PASSWORD_STORAGE 1
+ //1: don't save, 2: save in file, 3: use KWallet
+ #define DEFAULT_ACCOUNT_ACTIVE true
+ #define DEFAULT_ACCOUNT_SECTRANSFER 1
+ //1: no secure transfer, 2: SSL, 3: TLS
+
+ //filter defaults
+ #define DEFAULT_FILTER_ACTIVE false
+ #define DEFAULT_FILTER_OTHERS_ACTION 1
+ //1: Pass, 2: Delete, 3: Mark, 4: Move to Mailbox, 5: Spamcheck, 6: Ignore
+ #define DEFAULT_FILTER_BLACKLIST_ACTION 1
+ //1: Delete, 2: Mark
+ #define DEFAULT_FILTER_NAME "New Filter"
+ #define DEFAULT_FILTER_CRITERIA_LINKAGE 1
+ //1: Match all (AND); 2: Match any (OR)
+ #define DEFAULT_FILTER_CRITERIA_SOURCE 1
+ //1: From, 2: To, 3: Size (Bytes), 4: Subject, 5: Header, 6: Account
+ #define DEFAULT_FILTER_CRITERIA_COND_TEXT 1
+ //1: contains, 2: doesn't contains, 3: equals, 4: doesn't equal, 5: matches regular expression, 6: doesn't match regular expression
+ #define DEFAULT_FILTER_CRITERIA_COND_NUM 3
+ //1: is equal to, 2: is not equal to, 3: is greater than, 4: is greater than or equal to, 5: is less than, 6: is less than or equal to
+ #define DEFAULT_FILTER_CRITERIA_SIZE 20000
+ #define DEFAULT_FILTER_CRITERIA_CASE_SENSITIVE false
+ #define DEFAULT_FILTER_ACTION 1
+ //1: Pass, 2: Delete, 3: Mark, 4: Move to Mailbox, 5: Spamcheck, 6: Ignore
+ #define DEFAULT_FILTER_ACTION_MOVE_MAILBOX ""
+
+ //Spam check defaults
+ #define DEFAULT_SPAMCHECK_ACTION 3
+ //2: Delete, 3: Mark, 4: Move to Mailbox
+ #define DEFAULT_SPAMCHECK_ACTION_MOVE_MAILBOX ""
+
+
+ //Log Defaults
+ #define DEFAULT_LOG_LOG_DELETED_MAILS true
+ #define DEFAULT_LOG_LOG_MOVED_MAILS true
+ //the log entires will be deleted after some days (constant value is "days") or at app exit (value is "exit")
+ #define DEFAULT_LOG_REMOVE_DELETED_MAILS "days"
+ #define DEFAULT_LOG_REMOVE_MOVED_MAILS "exit"
+ //number of days the entries will be stored
+ #define DEFAULT_LOG_HOLDDAYS_DELETED_MAILS 7
+ #define DEFAULT_LOG_HOLDDAYS_MOVED_MAILS 7
+
+ /**
+ * XML file to store mails
+ */
+ #define MAIL_FILE "kshowmail.xml"
+ #define MAIL_FILE_DOCTYPE "KShowmail"
+ #define ROOT_ELEMENT "accounts"
+ #define ACCOUNT_ELEMENT "account"
+ #define ATTRIBUTE_ACCOUNT_NAME "account"
+ #define ATTRIBUTE_MAIL_UID "uidl"
+ #define ATTRIBUTE_MAIL_SIZE "size"
+ #define ATTRIBUTE_MAIL_NUMBER "number"
+ #define ITEM_MAIL_HEADER "header"
+ #define ITEM_MESSAGE "message"
+
+ /**
+ * Log
+ */
+ #define LOG_FILE "kshowmaillog.xml"
+ #define LOG_DOCTYPE "KShowmailLog"
+ #define LOG_ROOT_ELEMENT "DeletedMails"
+ #define LOG_ENTRY_ELEMENT "LogEntry"
+ #define LOG_ENTRY_ATTRIBUTE_DATETIME "DateTime"
+ #define LOG_ENTRY_ATTRIBUTE_SENDER "Sender"
+ #define LOG_ENTRY_ATTRIBUTE_ACCOUNT "Account"
+ #define LOG_ENTRY_ATTRIBUTE_SUBJECT "Subject"
+
+ /**
+ * Geometry
+ */
+ //Size of the view, which shows the mail text
+ #define WIDTH_VIEW_MAILBODY 500
+ #define HEIGHT_VIEW_MAILBODY 400
+
+ //Size of the view, which shows the mail header
+ #define WIDTH_VIEW_MAILHEADER 500
+ #define HEIGHT_VIEW_MAILHEADER 400
+
+ //Size of the text comparative value line of the filter criteria widget
+ #define WIDTH_FILTER_TEXT_VALUE_LINE 300
+
+ /**
+ * Configuration file
+ */
+ #define CONFIG_GROUP_GENERAL "General"
+ #define CONFIG_ENTRY_CONFIRM_CLOSE "confirmClose"
+ #define CONFIG_ENTRY_CONFIRM_DELETE "confirmDelete"
+ #define CONFIG_ENTRY_START_MINIMIZED "startMinimized"
+ #define CONFIG_ENTRY_CLOSE_TO_TRAY "closeToTray"
+ #define CONFIG_ENTRY_MINIMIZE_TO_TRAY "minimizeToTray"
+ #define CONFIG_ENTRY_SHOW_CONNECTION_ERRORS "showConnectionErrors"
+ #define CONFIG_ENTRY_KEEP_NEW "keepMailsNew"
+ #define CONFIG_ENTRY_INITIAL_TIME "InitialTime"
+ #define CONFIG_ENTRY_INTERVAL_TIME "IntervalTime"
+ #define CONFIG_ENTRY_TIMEOUT_TIME "TimeoutTime"
+
+ #define CONFIG_GROUP_ACTIONS "Actions"
+ #define CONFIG_ENTRY_NEW_MAIL_ALERTWINDOW "showAlertMessageIfNewMail"
+ #define CONFIG_ENTRY_NEW_MAIL_MAINWINDOW "showMainWindowIfNewMail"
+ #define CONFIG_ENTRY_NEW_MAIL_BEEP "beepIfNewMail"
+ #define CONFIG_ENTRY_NEW_MAIL_SOUND "playSoundIfNewMail"
+ #define CONFIG_ENTRY_NEW_MAIL_SOUNDPATH "PathToSoundFile"
+ #define CONFIG_ENTRY_NEW_MAIL_COMMAND "executeCommandIfNewMail"
+ #define CONFIG_ENTRY_NEW_MAIL_COMMANDPATH "Command"
+ #define CONFIG_ENTRY_NO_NEW_MAIL_TERMINATE "exitIfNoNewMails"
+ #define CONFIG_ENTRY_NO_NEW_MAIL_MINIMIZE "minimizeMainWindowIfNoNewMails"
+
+ #define CONFIG_GROUP_VIEW "View"
+ #define CONFIG_ENTRY_VIEW_USE_HTML "useHTML"
+
+ #define CONFIG_GROUP_ACCOUNT_LIST "LayoutAccountList"
+ #define CONFIG_ENTRY_DISPLAY_ACCOUNT_ACTIVE "showAccountListActiveColumn"
+ #define CONFIG_ENTRY_DISPLAY_ACCOUNT_ACCOUNT "showAccountListAccountColumn"
+ #define CONFIG_ENTRY_DISPLAY_ACCOUNT_SERVER "showAccountListServerColumn"
+ #define CONFIG_ENTRY_DISPLAY_ACCOUNT_USER "showAccountListUserColumn"
+ #define CONFIG_ENTRY_DISPLAY_ACCOUNT_MESSAGES "showAccountListMessagesColumn"
+ #define CONFIG_ENTRY_DISPLAY_ACCOUNT_SIZE "showAccountListSizeColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_ACTIVE "oldWidthAccountListActiveColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_ACCOUNT "oldWidthAccountListAccountColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_SERVER "oldWidthAccountListServerColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_USER "oldWidthAccountListUserColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_MESSAGES "oldWidthAccountListMessagesColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_SIZE "oldWidthAccountListSizeColumn"
+
+
+ #define CONFIG_GROUP_MESSAGE_LIST "LayoutMessageList"
+ #define CONFIG_ENTRY_DISPLAY_MESSAGE_NUMBER "showMessageListNumberColumn"
+ #define CONFIG_ENTRY_DISPLAY_MESSAGE_ACCOUNT "showMessageListAccountColumn"
+ #define CONFIG_ENTRY_DISPLAY_MESSAGE_FROM "showMessageListFromColumn"
+ #define CONFIG_ENTRY_DISPLAY_MESSAGE_TO "showMessageListToColumn"
+ #define CONFIG_ENTRY_DISPLAY_MESSAGE_SUBJECT "showMessageListSubjectColumn"
+ #define CONFIG_ENTRY_DISPLAY_MESSAGE_DATE "showMessageListDateColumn"
+ #define CONFIG_ENTRY_DISPLAY_MESSAGE_SIZE "showMessageListSizeColumn"
+ #define CONFIG_ENTRY_DISPLAY_MESSAGE_CONTENT "showMessageListContentColumn"
+ #define CONFIG_ENTRY_DISPLAY_MESSAGE_STATE "showMessageListStateColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_NUMBER "oldWidthMessageListNumberColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_ACCOUNT "oldWidthMessageListAccountColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_FROM "oldWidthMessageListFromColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_TO "oldWidthMessageListToColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_SUBJECT "oldWidthMessageListSubjectColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_DATE "oldWidthMessageListDateColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_SIZE "oldWidthMessageListSizeColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_CONTENT "oldWidthMessageListContentColumn"
+ #define CONFIG_ENTRY_OLD_WIDTH_MESSAGE_STATE "oldWidthMessageListStateColumn"
+
+ #define CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE 1
+ #define CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE 2
+ #define CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET 3
+ #define CONFIG_VALUE_ACCOUNT_SECTRANSFER_NONE 1
+ #define CONFIG_VALUE_ACCOUNT_SECTRANSFER_SSL 2
+ #define CONFIG_VALUE_ACCOUNT_SECTRANSFER_TLS 3
+
+ #define CONFIG_GROUP_ACCOUNTS "Accounts"
+ #define CONFIG_ENTRY_ACCOUNTS_LIST "NamesList"
+
+ #define CONFIG_ENTRY_ACCOUNT_NAME "Name"
+ #define CONFIG_ENTRY_ACCOUNT_SERVER "Server"
+ #define CONFIG_ENTRY_ACCOUNT_PROTOCOL "Protocol"
+ #define CONFIG_ENTRY_ACCOUNT_PORT "Port"
+ #define CONFIG_ENTRY_ACCOUNT_USER "User"
+ #define CONFIG_ENTRY_ACCOUNT_PASSWORD "Password"
+ #define CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE "PasswordStorage"
+ #define CONFIG_ENTRY_ACCOUNT_ACTIVE "Active"
+ #define CONFIG_ENTRY_ACCOUNT_SECTRANSFER "SecureTransfer"
+
+
+ //general filter
+ #define CONFIG_GROUP_FILTER "Filter"
+
+ #define CONFIG_ENTRY_FILTER_ACTIVE "Active"
+
+ #define CONFIG_VALUE_FILTER_OTHERS_ACTION_PASS 1
+ #define CONFIG_VALUE_FILTER_OTHERS_ACTION_DELETE 2
+ #define CONFIG_VALUE_FILTER_OTHERS_ACTION_MARK 3
+ #define CONFIG_VALUE_FILTER_OTHERS_ACTION_MOVE 4
+ #define CONFIG_VALUE_FILTER_OTHERS_ACTION_SPAMCHECK 5
+ #define CONFIG_VALUE_FILTER_OTHERS_ACTION_IGNORE 6
+
+ #define CONFIG_ENTRY_FILTER_OTHERS_ACTION "ActionForOthers"
+ #define CONFIG_ENTRY_FILTER_OTHERS_MAILBOX "MailboxForOthers"
+
+ #define CONFIG_VALUE_FILTER_BLACKLIST_ACTION_DELETE 1
+ #define CONFIG_VALUE_FILTER_BLACKLIST_ACTION_MARK 2
+
+ #define CONFIG_ENTRY_FILTER_BLACKLIST_ACTION "ActionBlacklist"
+ #define CONFIG_ENTRY_FILTER_BLACKLIST "Blacklist"
+ #define CONFIG_ENTRY_FILTER_WHITELIST "Whitelist"
+ #define CONFIG_ENTRY_FILTER_NUMBER_OF_FILTERS "NumberFilters"
+
+ //single filter
+ #define CONFIG_ENTRY_FILTER_NAME "Name"
+ #define CONFIG_ENTRY_FILTER_CRITERIA_LINKAGE "CriteriaLinkage"
+ #define CONFIG_ENTRY_FILTER_CRITERIA_NUMBER "CriteriaNumber"
+ #define CONFIG_ENTRY_FILTER_CRITERIA_SOURCE "CriteriaSource"
+ #define CONFIG_ENTRY_FILTER_CRITERIA_CONDITION "CriteriaCondition"
+ #define CONFIG_ENTRY_FILTER_CRITERIA_VALUE "CriteriaValue"
+ #define CONFIG_ENTRY_FILTER_CRITERIA_CASESENSITIVE "CriteriaCaseSensitive"
+ #define CONFIG_ENTRY_FILTER_ACTION "Action"
+ #define CONFIG_ENTRY_FILTER_MOVE_MAILBOX "Mailbox"
+
+ #define CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL 1
+ #define CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY 2
+
+ #define CONFIG_VALUE_FILTER_CRITERIA_SOURCE_FROM 1
+ #define CONFIG_VALUE_FILTER_CRITERIA_SOURCE_TO 2
+ #define CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SIZE 3
+ #define CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SUBJECT 4
+ #define CONFIG_VALUE_FILTER_CRITERIA_SOURCE_HEADER 5
+ #define CONFIG_VALUE_FILTER_CRITERIA_SOURCE_ACCOUNT 6
+
+ #define CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_CONTAINS 1
+ #define CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_CONTAINS 2
+ #define CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_EQUALS 3
+ #define CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_EQUALS 4
+ #define CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_REGEXPR 5
+ #define CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_REGEXPR 6
+
+ #define CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_EQUAL 1
+ #define CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_NOT_EQUAL 2
+ #define CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER 3
+ #define CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER_EQUAL 4
+ #define CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS 5
+ #define CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS_EQUAL 6
+
+ #define CONFIG_VALUE_FILTER_ACTION_PASS 1
+ #define CONFIG_VALUE_FILTER_ACTION_DELETE 2
+ #define CONFIG_VALUE_FILTER_ACTION_MARK 3
+ #define CONFIG_VALUE_FILTER_ACTION_MOVE 4
+ #define CONFIG_VALUE_FILTER_ACTION_SPAMCHECK 5
+ #define CONFIG_VALUE_FILTER_ACTION_IGNORE 6
+
+ //Spamcheck
+ #define CONFIG_GROUP_SPAMCHECK "Spamcheck"
+
+ #define CONFIG_ENTRY_SPAMCHECK_ACTION "Action"
+ #define CONFIG_ENTRY_SPAMCHECK_MOVE_MAILBOX "Mailbox"
+
+ #define CONFIG_VALUE_SPAMCHECK_ACTION_DELETE 2
+ #define CONFIG_VALUE_SPAMCHECK_ACTION_MARK 3
+ #define CONFIG_VALUE_SPAMCHECK_ACTION_MOVE 4
+
+ //Log
+ #define CONFIG_GROUP_LOG "Log"
+ #define CONFIG_ENTRY_LOG_LOG_DELETED_MAILS "LogDeletedMails"
+ #define CONFIG_ENTRY_LOG_LOG_MOVED_MAILS "LogMovedMails"
+ #define CONFIG_ENTRY_LOG_REMOVE_DELETED_MAILS "RemoveEventOfDeletedMails"
+ #define CONFIG_ENTRY_LOG_REMOVE_MOVED_MAILS "RemoveEvendOfMovedMails"
+ #define CONFIG_ENTRY_LOG_HOLDDAYS_DELETED_MAILS "HoldDaysOfDeletedMails"
+ #define CONFIG_ENTRY_LOG_HOLDDAYS_MOVED_MAILS "HoldDaysOfMovedMails"
+
+ #define CONFIG_VALUE_LOG_REMOVE_MAILS_AT_EXIT "exit"
+ #define CONFIG_VALUE_LOG_REMOVE_MAILS_AFTER_DAYS "days"
+
+ //Status Bar
+ #define STATUSBAR_FIELD_STATE 1
+ #define STATUSBAR_FIELD_FILTER 2
+ #define STATUSBAR_FIELD_NEXT_REFRESH 3
+ #define STATUSBAR_FIELD_LAST_REFRESH 4
+
+ //Misc
+ #define NAME_SPAMASSASSIN_DAEMON "spamd"
+}
+#endif
diff --git a/kshowmail/decodeRFC2047.cpp b/kshowmail/decodeRFC2047.cpp
new file mode 100644
index 0000000..adf53de
--- /dev/null
+++ b/kshowmail/decodeRFC2047.cpp
@@ -0,0 +1,182 @@
+/***************************************************************************
+ decodeRFC2047.cpp - description
+ -------------------
+ begin : Mon Jan 28 2002
+ copyright : (C) 2002 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+
+#include "decodeRFC2047.h"
+
+/*
+ * These functions have been adapted from the KMail program
+ */
+
+QCString decodeQuotedPrintable(const QCString& aStr)
+{
+ QCString bStr = aStr;
+ if (aStr.isNull())
+ bStr = "";
+
+ DwString dwsrc(bStr.data());
+ DwString dwdest;
+
+ DwDecodeQuotedPrintable(dwsrc, dwdest);
+ return dwdest.c_str();
+}
+
+QCString decodeBase64(const QCString& aStr)
+{
+ QCString bStr = aStr;
+ if (aStr.isNull())
+ bStr = "";
+ while (bStr.length() < 16) bStr += "=";
+
+ DwString dwsrc(bStr.data(), bStr.length());
+ DwString dwdest;
+ QCString result;
+
+ DwDecodeBase64(dwsrc, dwdest);
+ result = dwdest.c_str();
+ return result;
+}
+
+QTextCodec* codecForName(const QCString& _str)
+{
+ if (_str.isEmpty()) return NULL;
+ if (_str.lower() == "shift_jis" || _str.lower() == "shift-jis")
+ return QTextCodec::codecForName("sjis");
+ return QTextCodec::codecForName(_str.lower().replace(
+ QRegExp("windows"), "cp") );
+}
+
+QString Codecs::decodeRFC2047(const QCString& aStr)
+{
+ QString result;
+ QCString charset;
+ char *pos, *beg, *end, *mid;
+ QCString str, cstr, LWSP_buffer;
+ char encoding, ch;
+ bool valid, lastWasEncodedWord=FALSE;
+ const int maxLen=200;
+ int i;
+
+ if (aStr.find("=?") < 0)
+ return QString::fromLocal8Bit(aStr).replace(QRegExp("\n[\t ]")," ");
+
+ for (pos=aStr.data(); *pos; pos++)
+ {
+ // line unfolding
+ if ( pos[0] == '\r' && pos[1] == '\n' ) {
+ pos++;
+ continue;
+ }
+ if ( pos[0] == '\n' )
+ continue;
+ // collect LWSP after encoded-words,
+ // because we might need to throw it out
+ // (when the next word is an encoded-word)
+ if ( lastWasEncodedWord && ( pos[0] == ' ' || pos[0] == '\t' ) )
+ {
+ LWSP_buffer += pos[0];
+ continue;
+ }
+ // verbatimly copy normal text
+ if (pos[0]!='=' || pos[1]!='?')
+ {
+ result += LWSP_buffer + pos[0];
+ LWSP_buffer = 0;
+ lastWasEncodedWord = FALSE;
+ continue;
+ }
+ // found possible encoded-word
+ beg = pos+2;
+ end = beg;
+ valid = TRUE;
+ // parse charset name
+ charset = "";
+ for (i=2,pos+=2; i<maxLen && (*pos!='?'&&(*pos==' '||ispunct(*pos)||isalnum(*pos))); i++)
+ {
+ charset += *pos;
+ pos++;
+ }
+ if (*pos!='?' || i<4 || i>=maxLen) valid = FALSE;
+ else
+ {
+ // get encoding and check delimiting question marks
+ encoding = toupper(pos[1]);
+ if (pos[2]!='?' || (encoding!='Q' && encoding!='B'))
+ valid = FALSE;
+ pos+=3;
+ i+=3;
+ }
+ if (valid)
+ {
+ mid = pos;
+ // search for end of encoded part
+ while (i<maxLen && *pos && !(*pos=='?' && *(pos+1)=='='))
+ {
+ i++;
+ pos++;
+ }
+ end = pos+2;//end now points to the first char after the encoded string
+ if (i>=maxLen || !*pos)
+ valid = FALSE;
+ }
+ if (valid)
+ {
+ // valid encoding: decode and throw away separating LWSP
+ ch = *pos;
+ *pos = '\0';
+ str = QCString(mid).left((int)(mid - pos - 1));
+ if (encoding == 'Q')
+ {
+ // decode quoted printable text
+ for (i=str.length()-1; i>=0; i--)
+ if (str[i]=='_')
+ str[i]=' ';
+ cstr = decodeQuotedPrintable(str);
+ }
+ else
+ {
+ // decode base64 text
+ cstr = decodeBase64(str);
+ }
+ QTextCodec *codec = codecForName(charset);
+ if (!codec)
+ codec = codecForName(KGlobal::locale()->encoding());
+ if (codec)
+ result += codec->toUnicode(cstr);
+ else
+ result += QString::fromLocal8Bit(cstr);
+ lastWasEncodedWord = TRUE;
+
+ *pos = ch;
+ pos = end -1;
+ }
+ else
+ {
+ // invalid encoding, keep separating LWSP.
+ //result += "=?";
+ //pos = beg -1; // because pos gets increased shortly afterwards
+ pos = beg - 2;
+ result += LWSP_buffer;
+ result += *pos++;
+ result += *pos;
+ lastWasEncodedWord = FALSE;
+ }
+ LWSP_buffer = 0;
+ }
+ return result;
+}
+
diff --git a/kshowmail/decodeRFC2047.h b/kshowmail/decodeRFC2047.h
new file mode 100644
index 0000000..d4822a9
--- /dev/null
+++ b/kshowmail/decodeRFC2047.h
@@ -0,0 +1,51 @@
+/***************************************************************************
+ decodeRFC2047.h - description
+ -------------------
+ begin : Mon Jan 28 2002
+ copyright : (C) 2002 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+#ifndef DECODE_RFC2047_H
+#define DECODE_RFC2047_H
+
+#include <ctype.h>
+#include <stdlib.h>
+
+//Qt header
+#include <qtextcodec.h>
+#include <qregexp.h>
+#include <qstring.h>
+#include <qcstring.h>
+
+//KDE header
+#include <klocale.h>
+#include <kglobal.h>
+#include <mimelib/mimepp.h>
+
+
+/**
+ * Contains functions to decode and encode parts of a mail.
+ */
+namespace Codecs
+{
+
+ /**
+ * Decodes a string which is coded according RFC 2047.
+ * Adapted from KMail.
+ * @param aStr the coded string
+ * @return the decoded representation of the given string
+ */
+ QString decodeRFC2047( const QCString& aStr );
+
+}
+
+#endif
diff --git a/kshowmail/encryption.cpp b/kshowmail/encryption.cpp
new file mode 100644
index 0000000..dd3bcec
--- /dev/null
+++ b/kshowmail/encryption.cpp
@@ -0,0 +1,85 @@
+//
+// C++ Implementation: encryption
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "encryption.h"
+
+//used in crypt() and decrypt()
+static const char scramble1 [50] = "C6FDC7A1EDFBB6FEE3DBF5BEBAEFDDF7ABC6FDC7A1EDFBB6";
+static const char hexstr [17] = "0123456789ABCDEF";
+
+int Encryption::hexbyt( const char c )
+{
+ if( c >= '0' && c <= '9' )
+ return c - '0';
+ else
+ return c - 'A' + 10;
+}
+
+const QString Encryption::crypt( const KURL& url )
+{
+ char result[50];
+ char scramble2[50];
+ QString hexresult;
+
+ memset (result, 0, 50);
+ memset (scramble2, 0, 50);
+ int pos = url.pass().length () + 1;
+ unsigned int free = 50 - pos;
+
+ if( url.user().length() <= free )
+ {
+ strcpy( &scramble2[pos], url.user() );
+ pos += url.user().length();
+ free -= url.user().length();
+ }
+ else
+ {
+ memcpy( &scramble2[pos], url.user().latin1(), free );
+ free = 0;
+ }
+
+ if( url.host().length() <= free )
+ {
+ strcpy( &scramble2[pos], url.host() );
+ pos += url.host().length();
+ free -= url.host().length();
+ }
+ else
+ {
+ memcpy( &scramble2[pos], url.host().latin1(), free );
+ free = 0;
+ }
+
+ memcpy( result, url.pass().latin1(), url.pass().length() );
+ for (int i = 0; i <= 31; i++)
+ {
+ result[i] = (char)( result[i] ^ ( scramble1[i] ^ scramble2[i] ) );
+ hexresult += hexstr[ result[i] / 16 ];
+ hexresult += hexstr[ result[i] % 16 ];
+ }
+
+ return hexresult;
+}
+
+const QString Encryption::decrypt( const QString& pass )
+{
+ char result[50];
+
+ memset( result, 0, 50 );
+ int i;
+ for( i = 0; i <= 31; i++ )
+ {
+ result[i] = (char)hexbyt( pass[ i * 2 ] ) * 16 + hexbyt( pass[ i * 2 + 1 ] );
+ result[i] = (char)( result[i] ^ scramble1[i] );
+ }
+
+ return result;
+}
diff --git a/kshowmail/encryption.h b/kshowmail/encryption.h
new file mode 100644
index 0000000..376cc26
--- /dev/null
+++ b/kshowmail/encryption.h
@@ -0,0 +1,46 @@
+//
+// C++ Interface: encryption
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+
+//Qt headers
+#include <qstring.h>
+
+//KDE headers
+#include <kurl.h>
+
+/**
+ * @brief Provides functions to crypt and decrypt a password.
+ */
+namespace Encryption
+{
+ /**
+ * Transforms the given hex numeric character to integer.
+ * For example: a given '2' will transformed to 2; 'B' to 12.
+ * @param c character to transform [0..9, 'A'..'F']; no lower case letters
+ * @return integer value of the given character
+ */
+ int hexbyt( const char c );
+
+ /**
+ * Encrypts the the password in the given url and returns it.
+ * The encryption algorithm uses host and user name to crypt the password.
+ * @param url the url with password, host and user name
+ * @return encrypted password
+ */
+ const QString crypt( const KURL& url );
+
+ /**
+ * Decrypts the given encrypted password.
+ * @param pass encrypted password
+ * @return decrypted password
+ */
+ const QString decrypt( const QString& pass );
+}
diff --git a/kshowmail/filteritem.cpp b/kshowmail/filteritem.cpp
new file mode 100644
index 0000000..97c284b
--- /dev/null
+++ b/kshowmail/filteritem.cpp
@@ -0,0 +1,166 @@
+//
+// C++ Implementation: filteritem
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "filteritem.h"
+
+FilterItem::FilterItem( uint filterNr )
+{
+ //get the application config object
+ config = KApplication::kApplication()->config();
+
+ //save number
+ filterNumber = filterNr;
+
+ //set config group
+ config->setGroup( QString( "%1%2" ).arg( CONFIG_GROUP_FILTER ).arg( filterNr ) );
+
+ //get name
+ name = config->readEntry( CONFIG_ENTRY_FILTER_NAME );
+
+ //get number of criterias
+ numberCriterias = config->readNumEntry( CONFIG_ENTRY_FILTER_CRITERIA_NUMBER );
+
+ //get criteria linkage
+ switch( config->readNumEntry( CONFIG_ENTRY_FILTER_CRITERIA_LINKAGE, DEFAULT_FILTER_CRITERIA_LINKAGE ) )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL : linkage = LinkAll; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY : linkage = LinkAny; break;
+ default : kdError() << "FilterItem::FilterItem(): Unknown linkage value read. Set ALL. ( Filter " << filterNumber << ")" << endl;
+ linkage = LinkAll;
+ break;
+ }
+
+ //get action
+ switch( config->readNumEntry( CONFIG_ENTRY_FILTER_ACTION, DEFAULT_FILTER_ACTION ) )
+ {
+ case CONFIG_VALUE_FILTER_ACTION_PASS : action = FActPass; break;
+ case CONFIG_VALUE_FILTER_ACTION_DELETE : action = FActDelete; break;
+ case CONFIG_VALUE_FILTER_ACTION_MARK : action = FActMark; break;
+ case CONFIG_VALUE_FILTER_ACTION_MOVE : action = FActMove; break;
+ case CONFIG_VALUE_FILTER_ACTION_IGNORE : action = FActIgnore; break;
+ case CONFIG_VALUE_FILTER_ACTION_SPAMCHECK : action = FActSpamcheck; break;
+ default : kdError() << "FilterItem::FilterItem(): Unknown filter action read. Set PASS. (Filter " << filterNumber << ")" << endl;
+ action = FActPass;
+ break;
+ }
+
+ //get mailbox name if filter action is move
+ if( action == FActMove )
+ {
+ mailbox = config->readEntry( CONFIG_ENTRY_FILTER_MOVE_MAILBOX );
+ if( mailbox.isNull() || mailbox.isEmpty() )
+ {
+ kdWarning() << "Filter " << filterNumber << ": No mailbox name found. Set default: " << DEFAULT_FILTER_ACTION_MOVE_MAILBOX << endl;
+ mailbox = QString( DEFAULT_FILTER_ACTION_MOVE_MAILBOX );
+ }
+ }
+
+ //now we get the criterias
+ criterias.setAutoDelete( true ); //the list shall delete all criterias if it will be deleted itself
+ for( uint critNr = 1; critNr <= numberCriterias; critNr++ )
+ {
+ criterias.append( new FilterItemCriteria( filterNr, critNr ) ); //a new created criteria loads its settings itself
+ }
+}
+
+
+FilterItem::~FilterItem()
+{
+}
+
+FilterAction_Type FilterItem::check( QString from, QString to, uint size, QString subject, QString header, QString account, QString& mailboxName ) const
+{
+ bool match = false; //TRUE, if filter matches
+
+ //return NONE if no criterias available
+ if( criterias.isEmpty() ) return FActNone;
+
+ //get iterator
+ QPtrListIterator<FilterItemCriteria> it( criterias );
+
+ FilterItemCriteria* crit;
+
+ //check criterias
+ if( linkage == LinkAll )
+ {
+ match = true;
+ while( ( crit = it.current() ) != NULL && match )
+ {
+ ++it;
+
+ match = match && crit->check( from, to, size, subject, header, account );
+ }
+ }
+ else if( linkage == LinkAny )
+ {
+ match = false;
+ while( ( crit = it.current() ) != NULL && !match )
+ {
+ ++it;
+
+ match = crit->check( from, to, size, subject, header, account );
+ }
+ }
+ else
+ kdError() << "FilterItem::check(): Unknown linkage (Filter " << filterNumber << ")" << endl;
+
+ //return action if filter matches
+ if( match )
+ {
+ //set mailbox name if neccessary
+ if( action == FActMove )
+ {
+ mailboxName.remove( 0, mailboxName.length() );
+ mailboxName.append( mailbox );
+ }
+
+ return action;
+ }
+
+ //default return value, filter doesn't match
+ return FActNone;
+}
+
+void FilterItem::print( ) const
+{
+ kdDebug() << "Settings of filter " << filterNumber << ":" << endl;
+ kdDebug() << "Name: " << name << endl;
+ kdDebug() << "Number of criterias: " << numberCriterias << endl;
+
+ switch( linkage )
+ {
+ case LinkAll : kdDebug() << "Criteria Linkage: ALL (AND)" << endl; break;
+ case LinkAny : kdDebug() << "Criteria Linkage: ANY (OR)" << endl; break;
+ default : kdDebug() << "Unknown Criteria LInkage" << endl; break;
+ }
+
+ switch( action )
+ {
+ case FActPass : kdDebug() << "Action: PASS" << endl; break;
+ case FActDelete : kdDebug() << "Action: DELETE" << endl; break;
+ case FActMark : kdDebug() << "Action: MARK" << endl; break;
+ case FActMove : kdDebug() << "Action: MOVE to " << mailbox << endl; break;
+ case FActSpamcheck : kdDebug() << "Action: SPAMCHECK" << endl; break;
+ case FActIgnore : kdDebug() << "Action: IGNORE" << endl; break;
+ default : kdDebug() << "Unknown Action" << endl; break;
+ }
+
+ kdDebug() << "Criterias:" << endl;
+ QPtrListIterator<FilterItemCriteria> it( criterias );
+ FilterItemCriteria* crit;
+ while( ( crit = it.current() ) != NULL )
+ {
+ ++it;
+ crit->print();
+ }
+}
+
+
diff --git a/kshowmail/filteritem.h b/kshowmail/filteritem.h
new file mode 100644
index 0000000..291bc65
--- /dev/null
+++ b/kshowmail/filteritem.h
@@ -0,0 +1,117 @@
+//
+// C++ Interface: filteritem
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef FILTERITEM_H
+#define FILTERITEM_H
+
+//Qt headers
+#include <qstring.h>
+#include <qptrlist.h>
+
+//KDE headers
+#include <kapplication.h>
+#include <kdebug.h>
+#include <kconfig.h>
+
+//KShowmail headers
+#include "filteritemcriteria.h"
+#include "constants.h"
+#include "types.h"
+
+using namespace Types;
+
+/**
+ * This is a filter item. It contains a list of criterias (class FilterItemCriteria).
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class FilterItem{
+
+ public:
+
+ /**
+ * Constructor
+ * Loads the settings from the config file
+ * @param filterNr Number of the filter
+ */
+ FilterItem( uint filterNr );
+
+ /**
+ * Destructor
+ */
+ ~FilterItem();
+
+ /**
+ * Prints the settings.
+ */
+ void print() const;
+
+ /**
+ * Checks the given mail header.
+ * @param from Sender
+ * @param to Addressee
+ * @param size Size
+ * @param subject Subject
+ * @param header Header
+ * @param account Account
+ * @param mailboxName contains the mailbox name after call, if filter action is MOVE
+ * @return recommend action
+ */
+ FilterAction_Type check( QString from, QString to, uint size, QString subject, QString header, QString account, QString& mailboxName ) const;
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * Filter number. Just for messages.
+ */
+ uint filterNumber;
+
+ /**
+ * Filter name. Just for messages.
+ */
+ QString name;
+
+ /**
+ * Number of criterias
+ */
+ uint numberCriterias;
+
+ /**
+ * Type of criteria linkage
+ */
+ enum Linkage_Type{ LinkAll, LinkAny };
+
+ /**
+ * Criteria Linkage
+ */
+ Linkage_Type linkage;
+
+ /**
+ * Filter Action
+ */
+ FilterAction_Type action;
+
+ /**
+ * Mailbox Name for move action
+ */
+ QString mailbox;
+
+ /**
+ * This list holds the criterias.
+ */
+ QPtrList<FilterItemCriteria> criterias;
+};
+
+#endif
diff --git a/kshowmail/filteritemcriteria.cpp b/kshowmail/filteritemcriteria.cpp
new file mode 100644
index 0000000..5577a6a
--- /dev/null
+++ b/kshowmail/filteritemcriteria.cpp
@@ -0,0 +1,241 @@
+//
+// C++ Implementation: filteritemcriteria
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "filteritemcriteria.h"
+
+FilterItemCriteria::FilterItemCriteria( uint FilterNr, uint CritNr )
+{
+ //get the application config object
+ config = KApplication::kApplication()->config();
+
+ //save numbers
+ FilterNumber = FilterNr;
+ CriteriaNumber = CritNr;
+
+ //get setup
+ //---------
+
+ //set group
+ config->setGroup( QString( "%1%2" ).arg( CONFIG_GROUP_FILTER ).arg( FilterNr ) );
+
+ //get source
+ switch( config->readNumEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_SOURCE ).arg( CritNr ), DEFAULT_FILTER_CRITERIA_SOURCE ) )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_FROM : source = SrcFrom; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_TO : source = SrcTo; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SUBJECT : source = SrcSubject; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SIZE : source = SrcSize; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_HEADER : source = SrcHeader; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_ACCOUNT : source = SrcAccount; break;
+ default : source = SrcFrom; break;
+ }
+
+ //get condition
+ if( source == SrcSize )
+ {
+ switch( config->readNumEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_CONDITION ).arg( CritNr ), DEFAULT_FILTER_CRITERIA_COND_NUM ) )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_EQUAL : numCondition = NumCondEqual; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_NOT_EQUAL : numCondition = NumCondNotEqual; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER : numCondition = NumCondGreater; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER_EQUAL : numCondition = NumCondGreaterEqual; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS : numCondition = NumCondLess; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS_EQUAL : numCondition = NumCondLessEqual; break;
+ default : numCondition = NumCondGreater; break;
+ }
+ }
+ else
+ {
+ switch( config->readNumEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_CONDITION ).arg( CritNr ), DEFAULT_FILTER_CRITERIA_COND_TEXT ) )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_CONTAINS : txtCondition = TxtCondContains; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_CONTAINS : txtCondition = TxtCondNotContains; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_EQUALS : txtCondition = TxtCondEqual; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_EQUALS : txtCondition = TxtCondNotEqual; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_REGEXPR : txtCondition = TxtCondRegExpr; break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_REGEXPR : txtCondition = TxtCondNotRegExpr; break;
+ default : txtCondition = TxtCondContains; break;
+ }
+
+ cs = config->readBoolEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_CASESENSITIVE ).arg( CritNr ), DEFAULT_FILTER_CRITERIA_CASE_SENSITIVE );
+ }
+
+ //get Value
+ if( source == SrcSize )
+ {
+ numValue = config->readUnsignedNumEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_VALUE ).arg( CritNr ) );
+ }
+ else
+ {
+ txtValue = config->readEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_VALUE ).arg( CritNr ) );
+ }
+
+}
+
+FilterItemCriteria::~FilterItemCriteria()
+{
+}
+
+bool FilterItemCriteria::check( QString from, QString to, uint size, QString subject, QString header, QString account ) const
+{
+ switch( source )
+ {
+ case SrcFrom : return checkText( from ); break;
+ case SrcTo : return checkText( to ); break;
+ case SrcHeader : return checkText( header ); break;
+ case SrcSize : return checkNum( size ); break;
+ case SrcSubject : return checkText( subject ); break;
+ case SrcAccount : return checkText( account ); break;
+ default : return false;
+ }
+
+ //this is the default
+ return false;
+}
+
+bool FilterItemCriteria::checkText( QString value ) const
+{
+ //return false if the source is not text
+ if( source != SrcFrom && source != SrcTo && source != SrcHeader && source != SrcSubject && source != SrcAccount )
+ {
+ kdError() << "FilterItemCriteria::checkText: The source is not text. (Filter " << FilterNumber << ", Criteria " << CriteriaNumber << ")" << endl;
+ return false;
+ }
+
+ //return false if given value is not valid
+ if( value.isNull() || value.isEmpty() )
+ {
+ kdError() << "FilterItemCriteria::checkText: The given value is empty or null. (Filter " << FilterNumber << ", Criteria " << CriteriaNumber << ")" << endl;
+ return false;
+ }
+
+ //return false if the value of this criteria is an empty string
+ if( txtValue.isEmpty() || txtValue.isNull() )
+ {
+ kdWarning() << "There is no value for Filter " << FilterNumber << "/Criteria " << CriteriaNumber << endl;
+ }
+
+ switch( txtCondition )
+ {
+ case TxtCondContains : return value.contains( txtValue, cs ) > 0; break;
+
+ case TxtCondNotContains : return value.contains( txtValue, cs ) < 1; break;
+
+ case TxtCondEqual : if( cs )
+ {
+ return value.localeAwareCompare( txtValue ) == 0;
+ }
+ else
+ {
+ return QString::localeAwareCompare( txtValue.upper(), value.upper() ) == 0;
+ }
+ break;
+
+ case TxtCondNotEqual : if( cs )
+ return value.localeAwareCompare( txtValue ) != 0;
+ else
+ return value.localeAwareCompare( txtValue.upper(), value.upper() ) != 0;
+ break;
+
+ case TxtCondRegExpr : return value.find( QRegExp( txtValue ) ) != -1; break;
+
+ case TxtCondNotRegExpr : return value.find( QRegExp( txtValue ) ) == -1; break;
+
+ default : return false;
+ }
+
+ //default
+ return false;
+}
+
+bool FilterItemCriteria::checkNum( uint value ) const
+{
+ //return false if the source is not numeric
+ if ( source != SrcSize )
+ {
+ kdError() << "FilterItemCriteria::checkNum: The source is not numeric." << endl;
+ return false;
+ }
+
+ switch( numCondition )
+ {
+ case NumCondEqual : return value == numValue; break;
+ case NumCondNotEqual : return value != numValue; break;
+ case NumCondGreater : return value > numValue; break;
+ case NumCondGreaterEqual : return value >= numValue; break;
+ case NumCondLess : return value < numValue; break;
+ case NumCondLessEqual : return value <= numValue; break;
+ default : kdError() << "FilterItemCriteria::checkNum: Unknown numeric condiction. Return false." << endl;
+ }
+
+ //default
+ return false;
+}
+
+void FilterItemCriteria::print( ) const
+{
+ QString output;
+
+ output.append( QString( "Criteria %1 of Filter %2: Source: " ).arg( CriteriaNumber ).arg( FilterNumber ) );
+
+ switch( source )
+ {
+ case SrcFrom : output.append( "From" ); break;
+ case SrcTo : output.append( "To" ); break;
+ case SrcAccount : output.append( "Account" ); break;
+ case SrcHeader : output.append( "Header" ); break;
+ case SrcSize : output.append( "Size" ); break;
+ case SrcSubject : output.append( "Subject" ); break;
+ default : output.append( "unknown" ); break;
+ }
+
+ output.append( "; Condition: " );
+
+ if( source == SrcSize )
+ {
+ switch( numCondition )
+ {
+ case NumCondEqual : output.append( QString( "equals %1" ).arg( numValue ) ); break;
+ case NumCondGreater : output.append( QString( "greater than %1" ).arg( numValue ) ); break;
+ case NumCondGreaterEqual : output.append( QString( "greater than or equals %1" ).arg( numValue ) ); break;
+ case NumCondLess : output.append( QString( "less than %1" ).arg( numValue ) ); break;
+ case NumCondLessEqual : output.append( QString( "less than or equals %1" ).arg( numValue ) ); break;
+ case NumCondNotEqual : output.append( QString( "not equals %1" ).arg( numValue ) ); break;
+ default : output.append( QString( "unknown; Value: %1" ).arg( numValue ) ); break;
+ }
+ }
+ else
+ {
+ switch( txtCondition )
+ {
+ case TxtCondContains : output.append( QString( "contains %1" ).arg( txtValue ) ); break;
+ case TxtCondEqual : output.append( QString( "equals %1" ).arg( txtValue ) ); break;
+ case TxtCondNotContains : output.append( QString( "not contains %1" ).arg( txtValue ) ); break;
+ case TxtCondNotEqual : output.append( QString( "not equals %1" ).arg( txtValue ) ); break;
+ case TxtCondRegExpr : output.append( QString( "matches to regular expression %1" ).arg( txtValue ) ); break;
+ case TxtCondNotRegExpr : output.append( QString( "doesn't match to regular expression %1" ).arg( txtValue ) ); break;
+ default : output.append( QString( "unknown; Value: %1" ).arg( txtValue ) ); break;
+ }
+
+ if( txtCondition != TxtCondRegExpr && txtCondition != TxtCondNotRegExpr )
+ {
+ if( cs )
+ output.append( " (case sensitive)" );
+ else
+ output.append( " (not case sensitive)" );
+ }
+ }
+
+ kdDebug() << output << endl;
+}
+
+
+
diff --git a/kshowmail/filteritemcriteria.h b/kshowmail/filteritemcriteria.h
new file mode 100644
index 0000000..eaa4d49
--- /dev/null
+++ b/kshowmail/filteritemcriteria.h
@@ -0,0 +1,146 @@
+//
+// C++ Interface: filteritemcriteria
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef FILTERITEMCRITERIA_H
+#define FILTERITEMCRITERIA_H
+
+//Qt headers
+#include <qstring.h>
+#include <qregexp.h>
+
+//KDE headers
+#include <kapplication.h>
+#include <kconfig.h>
+#include <kdebug.h>
+
+//Kshowmail headers
+#include "types.h"
+#include "constants.h"
+
+/**
+ * @brief This is a criteria of a filter item.
+ * For using create an object and call check().
+ * It gets its configuration itself from the config file at creation time. You can't reload the setup.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class FilterItemCriteria{
+
+ public:
+
+ /**
+ * Constructor
+ * @param FilterNr number of the filter item
+ * @param CritNr number of this criteria
+ */
+ FilterItemCriteria( uint FilterNr, uint CritNr );
+
+ /**
+ * Destructor
+ */
+ ~FilterItemCriteria();
+
+ /**
+ * Checks for match.
+ * @param from Sender
+ * @param to Addressee
+ * @param size Size
+ * @param subject Subject
+ * @param header Header
+ * @param account Account
+ * @return TRUE - the criteria matches; FALSE - the criteria doesn't match
+ */
+ bool check( QString from, QString to, uint size, QString subject, QString header, QString account ) const;
+
+ /**
+ * Prints the settings.
+ */
+ void print() const;
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * Types of source.
+ */
+ enum Source_Type{ SrcFrom, SrcTo, SrcSize, SrcSubject, SrcHeader, SrcAccount };
+
+ /**
+ * Source of the criteria.
+ */
+ Source_Type source;
+
+ /**
+ * Text Condition Types
+ */
+ enum TextCondition_Type{ TxtCondContains, TxtCondNotContains, TxtCondEqual, TxtCondNotEqual, TxtCondRegExpr, TxtCondNotRegExpr };
+
+ /**
+ * Numeric Condition Types
+ */
+ enum NumCondition_Type{ NumCondEqual, NumCondNotEqual, NumCondGreater, NumCondGreaterEqual, NumCondLess, NumCondLessEqual };
+
+ /**
+ * Text Condition
+ */
+ TextCondition_Type txtCondition;
+
+ /**
+ * Numeric Condition
+ */
+ NumCondition_Type numCondition;
+
+ /**
+ * Text Value
+ */
+ QString txtValue;
+
+ /**
+ * Numeric Value
+ */
+ uint numValue;
+
+ /**
+ * Case Sensitive; used by text condition
+ */
+ bool cs;
+
+ /**
+ * Filter number. Just for error messages.
+ */
+ uint FilterNumber;
+
+ /**
+ * Criteria number. Just for error messages.
+ */
+ uint CriteriaNumber;
+
+ protected:
+
+ /**
+ * Compares a text value.
+ * @param value Value to compare
+ * @return TRUE - value matches; FALSE - value doesn't match
+ */
+ bool checkText( QString value ) const;
+
+ /**
+ * Compares a numeric value.
+ * @param value Value to compare
+ * @return TRUE - value matches; FALSE - value doesn't match
+ */
+ bool checkNum( uint value ) const;
+};
+
+#endif
diff --git a/kshowmail/filterlog.cpp b/kshowmail/filterlog.cpp
new file mode 100644
index 0000000..73665cd
--- /dev/null
+++ b/kshowmail/filterlog.cpp
@@ -0,0 +1,235 @@
+//
+// C++ Implementation: filterlog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "filterlog.h"
+
+FilterLog::FilterLog()
+{
+ //get the application config object
+ config = KApplication::kApplication()->config();
+
+ //load the setup
+ loadSetup();
+
+ //load stored entries
+ load();
+}
+
+
+FilterLog::~FilterLog()
+{
+}
+
+void FilterLog::addDeletedMail(const QDateTime & dateTime, const QString & sender, const QString & account, const QString & subject)
+{
+ if( logDeletedMails )
+ addEntry( FActDelete, dateTime, sender, account, subject, "" );
+}
+
+void FilterLog::addMovedMail(const QDateTime & dateTime, const QString & sender, const QString & account, const QString & subject, const QString & mailbox)
+{
+ if( logMovedMails )
+ addEntry( FActMove, dateTime, sender, account, subject, mailbox );
+}
+
+void FilterLog::addEntry(FilterAction_Type action, const QDateTime & dateTime, const QString & sender, const QString & account, const QString & subject, const QString & mailbox)
+{
+ //create entry
+ FilterLogEntry entry = FilterLogEntry( action, dateTime, sender, account, subject, mailbox );
+
+ //add entry to the appropriate list
+ switch( action )
+ {
+ case FActDelete : listDeletedMails.append( entry ); break;
+ case FActMove : listMovedMails.append( entry ); break;
+ default : kdError( "FilterLog::addEntry: Could not relate the following mail:" );
+ entry.print();
+ break;
+ }
+}
+
+void FilterLog::print()
+{
+ kdDebug() << "Log state:" << endl;
+ kdDebug() << "----------" << endl;
+
+ //print all entries about deleted mails
+ kdDebug() << "Deleted mails:" << endl;
+ LogEntryList::iterator it;
+ for ( it = listDeletedMails.begin(); it != listDeletedMails.end(); ++it )
+ (*it).print();
+
+ kdDebug() << endl;
+
+ //print all entries about moved mails
+ kdDebug() << "Moved mails:" << endl;
+ for ( it = listMovedMails.begin(); it != listMovedMails.end(); ++it )
+ (*it).print();
+}
+
+void FilterLog::clearDeletedMailsLog()
+{
+ listDeletedMails.clear();
+}
+
+void FilterLog::clearMovedMailsLog()
+{
+ listMovedMails.clear();
+}
+
+void FilterLog::save()
+{
+ //maybe we have to remove old entries, calculate minimum date
+ QDateTime minTime = QDateTime::currentDateTime();
+ minTime = minTime.addDays( daysStoreDeletedMails * -1 );
+
+ //we need a XML document
+ QDomDocument doc( LOG_DOCTYPE );
+
+ //and a root element
+ QDomElement rootElem = doc.createElement( LOG_ROOT_ELEMENT );
+ doc.appendChild( rootElem );
+
+ //store the entries of the deleted mails list into the document
+ //if the user want it
+ if( deletedMailsStorageMode != exit )
+ {
+ LogEntryList::iterator it;
+ for ( it = listDeletedMails.begin(); it != listDeletedMails.end(); ++it )
+ {
+ if( (*it).getDate() >= minTime )
+ (*it).save( doc, rootElem );
+ }
+ }
+
+
+ //get the name of the file to save
+ QString filename = locateLocal( "appdata", LOG_FILE );
+
+ //and save
+ QFile file( filename );
+
+ if ( file.open( IO_WriteOnly ) ) //open file
+ {
+ QTextStream stream( &file );
+ doc.save( stream, 2 );
+ file.close();
+ }
+ else
+ {
+ KMessageBox::error( NULL, i18n( "Could not save the filter log." ) );
+ }
+}
+
+void FilterLog::load()
+{
+ //maybe we have to remove old entries, calculate minimum date
+ QDateTime minTime = QDateTime::currentDateTime();
+ minTime = minTime.addDays( daysStoreDeletedMails * -1 );
+
+ //we need a XML document
+ QDomDocument doc( LOG_DOCTYPE );
+
+ //get the name of the file
+ QString filename = locateLocal( "appdata", LOG_FILE );
+
+ //load the log from file into the DOM document
+ QFile file( filename );
+
+ if ( !file.open( IO_ReadOnly ) )
+ return; //return, if the file can't opened
+
+ if ( !doc.setContent( &file ) ) {
+ file.close(); //return, if the content of the file is invalid
+ return;
+ }
+
+ //the content was loaded, close the file
+ file.close();
+
+ //iterate over all DOM elements and generate the log entries
+ QDomElement docElem = doc.documentElement(); //get root element
+
+ //return, if the root element is not LOG_ROOT_ELEMENT
+ if( docElem.tagName() != LOG_ROOT_ELEMENT ) return;
+
+ QDomNode n = docElem.firstChild(); //get first child (this is the first log entry)
+ while( !n.isNull() )
+ {
+ QDomElement e = n.toElement(); //try to convert the node to an element.
+ if( !e.isNull() )
+ {
+ if( e.tagName() == LOG_ENTRY_ELEMENT )
+ {
+ //add the read entry to the list of deleted mails
+ QDateTime mailTime = QDateTime::fromString( e.attribute( LOG_ENTRY_ATTRIBUTE_DATETIME ), Qt::ISODate );
+ if( mailTime >= minTime )
+ addDeletedMail( mailTime,
+ e.attribute( LOG_ENTRY_ATTRIBUTE_SENDER ),
+ e.attribute( LOG_ENTRY_ATTRIBUTE_ACCOUNT ),
+ e.attribute( LOG_ENTRY_ATTRIBUTE_SUBJECT ) );
+ }
+ }
+ n = n.nextSibling(); //get next child
+ }
+}
+
+LogEntryList FilterLog::getDeletedMails( )
+{
+ return listDeletedMails;
+}
+
+LogEntryList FilterLog::getMovedMails( )
+{
+ return listMovedMails;
+}
+
+void FilterLog::loadSetup( )
+{
+ config->setGroup( CONFIG_GROUP_LOG );
+
+ logDeletedMails = config->readBoolEntry( CONFIG_ENTRY_LOG_LOG_DELETED_MAILS, DEFAULT_LOG_LOG_DELETED_MAILS );
+ logMovedMails = config->readBoolEntry( CONFIG_ENTRY_LOG_LOG_MOVED_MAILS, DEFAULT_LOG_LOG_MOVED_MAILS );
+
+ if( logDeletedMails )
+ {
+ QString storageMode = config->readEntry(CONFIG_ENTRY_LOG_REMOVE_DELETED_MAILS, DEFAULT_LOG_REMOVE_DELETED_MAILS );
+ if( storageMode == CONFIG_VALUE_LOG_REMOVE_MAILS_AT_EXIT )
+ deletedMailsStorageMode = exit;
+ else if( storageMode == CONFIG_VALUE_LOG_REMOVE_MAILS_AFTER_DAYS )
+ deletedMailsStorageMode = days;
+ else
+ deletedMailsStorageMode = days;
+
+ if( deletedMailsStorageMode == days )
+ daysStoreDeletedMails = config->readNumEntry( CONFIG_ENTRY_LOG_HOLDDAYS_DELETED_MAILS, DEFAULT_LOG_HOLDDAYS_DELETED_MAILS );
+ else
+ daysStoreDeletedMails = 7;
+ }
+ else
+ {
+ deletedMailsStorageMode = days;
+ daysStoreDeletedMails = 7;
+ }
+}
+
+int FilterLog::numberDeletedMails( )
+{
+ return listDeletedMails.count();
+}
+
+int FilterLog::numberMovedMails( )
+{
+ return listMovedMails.count();
+}
+
+
+
diff --git a/kshowmail/filterlog.h b/kshowmail/filterlog.h
new file mode 100644
index 0000000..9896796
--- /dev/null
+++ b/kshowmail/filterlog.h
@@ -0,0 +1,183 @@
+//
+// C++ Interface: filterlog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef FILTERLOG_H
+#define FILTERLOG_H
+
+//Qt headers
+#include <qvaluelist.h>
+#include <qdatetime.h>
+#include <qdom.h>
+#include <qfile.h>
+#include <qtextstream.h>
+
+//KDE headers
+#include <kdebug.h>
+#include <kmessagebox.h>
+#include <klocale.h>
+#include <kstandarddirs.h>
+#include <kapplication.h>
+#include <kconfig.h>
+
+//KShowmail headers
+#include "filterlogentry.h"
+#include "constants.h"
+
+/**
+ * @brief This is the log of the filters.
+ * It holds two lists of entry objects (class FilterLogEntry). One for the deleted mails and the other one for
+ * the moved mails.
+ *
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+
+typedef QValueList<FilterLogEntry> LogEntryList;
+
+
+class FilterLog{
+
+
+ public:
+
+ /**
+ * Default constructor
+ */
+ FilterLog();
+
+ /**
+ * Destructor
+ */
+ ~FilterLog();
+
+ /**
+ * Adds an entry about a deleted mail.
+ * @param dateTime date and time on which the mail was sent
+ * @param sender sender of the mail
+ * @param account Account which has received the mail
+ * @param subject Subject of the mail
+ */
+ void addDeletedMail( const QDateTime& dateTime, const QString& sender, const QString& account, const QString& subject );
+
+ /**
+ * Adds an entry about a moved mail.
+ * @param dateTime date and time on which the mail was sent
+ * @param sender sender of the mail
+ * @param account Account which has received the mail
+ * @param subject Subject of the mail
+ * @param mailbox mailbox
+ */
+ void addMovedMail( const QDateTime& dateTime, const QString& sender, const QString& account, const QString& subject, const QString& mailbox );
+
+ /**
+ * Prints the log state.
+ */
+ void print();
+
+ /**
+ * Clears the log of deleted mails.
+ */
+ void clearDeletedMailsLog();
+
+ /**
+ * Clears the log of moved mails.
+ */
+ void clearMovedMailsLog();
+
+ /**
+ * Saved the log of deleted mails as XML document.
+ */
+ void save();
+
+ /**
+ * Loads the log of deleted mails from the XML document and get settings.
+ */
+ void load();
+
+ /**
+ * Returns a copy of the list of deleted mails.
+ * @return copy of the deleted mails list
+ */
+ LogEntryList getDeletedMails();
+
+ /**
+ * Retruns a copy of the list of moved mails.
+ * @return copy of the moved mails list
+ */
+ LogEntryList getMovedMails();
+
+ /**
+ * Loads the settings
+ */
+ void loadSetup();
+
+ /**
+ * Returns the number of logged deleted mails.
+ * @return number of logged deleted mails
+ */
+ int numberDeletedMails();
+
+ /**
+ * Returns the number of logged moved mails.
+ * @return number of logged moved mails
+ */
+ int numberMovedMails();
+
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * List of entries about deleted mails.
+ */
+ LogEntryList listDeletedMails;
+
+ /**
+ * List of entries about moved mails.
+ */
+ LogEntryList listMovedMails;
+
+ /**
+ * TRUE - the log accepts orders to log deleted mails
+ */
+ bool logDeletedMails;
+
+ /**
+ * TRUE - the log accepts orders to log moved mails
+ */
+ bool logMovedMails;
+
+ /**
+ * exit - hold log of deleted mails until application exit
+ * days - hold log some days
+ */
+ enum{ exit, days } deletedMailsStorageMode;
+
+ /**
+ * Time (days) a entry of a deleted mail will be stored.
+ */
+ unsigned int daysStoreDeletedMails;
+
+ protected:
+
+ /**
+ * adds an entry.
+ * The target list will be coose on the basis of the given filter action.
+ */
+ void addEntry( FilterAction_Type action, const QDateTime& dateTime, const QString& sender, const QString& account, const QString& subject, const QString& mailbox = QString::null );
+
+};
+
+
+#endif
diff --git a/kshowmail/filterlogentry.cpp b/kshowmail/filterlogentry.cpp
new file mode 100644
index 0000000..8f9af1c
--- /dev/null
+++ b/kshowmail/filterlogentry.cpp
@@ -0,0 +1,145 @@
+
+
+//
+// C++ Implementation: filterlogentry
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "filterlogentry.h"
+
+FilterLogEntry::FilterLogEntry()
+{
+ //set default values
+ sentDateTime.setDate( QDate( 2007, 11, 7 ) );
+ sentDateTime.setTime( QTime( 19, 05 ) );
+ act = FActNone;
+}
+
+FilterLogEntry::FilterLogEntry( FilterAction_Type action, const QDateTime& dateTime, const QString& sender, const QString& account, const QString& subject, const QString& mailbox)
+ : act( action ), sentDateTime( dateTime ), sender( sender ), account( account ), subject( subject ), mailbox( mailbox )
+{
+}
+
+FilterLogEntry::~FilterLogEntry()
+{
+}
+
+void FilterLogEntry::print()
+{
+ QString strAction;
+ switch( act )
+ {
+ case FActPass : strAction = "Passed"; break;
+ case FActDelete : strAction = "Deleted"; break;
+ case FActMark : strAction = "Marked"; break;
+ case FActSpamcheck : strAction = "forwarded to check for spam"; break;
+ case FActMove : strAction = QString( "moved to %1" ).arg( mailbox); break;
+ case FActNone : strAction = "no Action (THIS IS AN ERROR!)"; break;
+ default : strAction = "ERROR! UNKNOWN ACTION"; break;
+ }
+
+ kdDebug() << sentDateTime.toString( Qt::LocalDate ) << ";" << account << ";" << sender << ";" << subject << ";" << strAction << endl;
+}
+
+FilterLogEntry::FilterLogEntry(const FilterLogEntry & ent)
+{
+ this->sentDateTime = ent.sentDateTime;
+ this->account = ent.account;
+ this->sender = ent.sender;
+ this->subject = ent.subject;
+ this->act = ent.act;
+ this->mailbox = ent.mailbox;
+}
+
+FilterLogEntry& FilterLogEntry::operator=( const FilterLogEntry & ent )
+{
+ if( this == &ent ) return *this;
+
+ this->sentDateTime = ent.sentDateTime;
+ this->account = ent.account;
+ this->sender = ent.sender;
+ this->subject = ent.subject;
+ this->mailbox = ent.mailbox;
+ this->act = ent.act;
+
+ return *this;
+}
+
+bool FilterLogEntry::isOlder( uint days )
+{
+ return sentDateTime.date().addDays( days ) < QDate::currentDate();
+}
+
+bool FilterLogEntry::operator== ( const FilterLogEntry& ent ) const
+{
+ return sentDateTime == ent.sentDateTime;
+}
+
+bool FilterLogEntry::operator!=( const FilterLogEntry& ent ) const
+{
+ return sentDateTime != ent.sentDateTime;
+}
+
+bool FilterLogEntry::operator>( const FilterLogEntry& ent ) const
+{
+ return sentDateTime > ent.sentDateTime;
+}
+
+bool FilterLogEntry::operator>=( const FilterLogEntry& ent ) const
+{
+ return sentDateTime >= ent.sentDateTime;
+}
+
+bool FilterLogEntry::operator<( const FilterLogEntry& ent ) const
+{
+ return sentDateTime < ent.sentDateTime;
+}
+
+bool FilterLogEntry::operator<=( const FilterLogEntry & ent ) const
+{
+ return sentDateTime <= ent.sentDateTime;
+}
+
+void FilterLogEntry::save( QDomDocument& doc, QDomElement& parent )
+{
+ //create a new element and store the entry
+ QDomElement elem = doc.createElement( LOG_ENTRY_ELEMENT );
+ elem.setAttribute( LOG_ENTRY_ATTRIBUTE_DATETIME, sentDateTime.toString( Qt::ISODate) );
+ elem.setAttribute( LOG_ENTRY_ATTRIBUTE_SENDER, sender );
+ elem.setAttribute( LOG_ENTRY_ATTRIBUTE_ACCOUNT, account );
+ elem.setAttribute( LOG_ENTRY_ATTRIBUTE_SUBJECT, subject );
+
+ //add entry element to the log (parent) element
+ parent.appendChild( elem );
+}
+
+QDateTime FilterLogEntry::getDate( )
+{
+ return sentDateTime;
+}
+
+QString FilterLogEntry::getSender( )
+{
+ return sender;
+}
+
+QString FilterLogEntry::getAccount( )
+{
+ return account;
+}
+
+QString FilterLogEntry::getSubject( )
+{
+ return subject;
+}
+
+QString FilterLogEntry::getMailbox( )
+{
+ return mailbox;
+}
diff --git a/kshowmail/filterlogentry.h b/kshowmail/filterlogentry.h
new file mode 100644
index 0000000..9dbd1be
--- /dev/null
+++ b/kshowmail/filterlogentry.h
@@ -0,0 +1,196 @@
+//
+// C++ Interface: filterlogentry
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef FILTERLOGENTRY_H
+#define FILTERLOGENTRY_H
+
+//Qt headers
+#include <qdatetime.h>
+#include <qstring.h>
+#include <qdom.h>
+
+//KDE headers
+#include <kdebug.h>
+
+//KShowmail headers
+#include "types.h"
+#include "constants.h"
+
+using namespace Types;
+
+/**
+ * @brief An Object of this class contains the datas about a deleted or moved mail.
+ * These objects are stored in the lists of the filter log.
+ *
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+
+class FilterLogEntry{
+
+ public:
+
+ /**
+ * Default constructor
+ */
+ FilterLogEntry();
+
+ /**
+ * General constructor
+ * @param action executed action
+ * @param dateTime date and time on which the mail was sent
+ * @param sender sender of the mail
+ * @param account Account which has received the mail
+ * @param subject Subject of the mail
+ * @param mailbox mailbox where the mails was moved
+ */
+ FilterLogEntry( FilterAction_Type action, const QDateTime& dateTime, const QString& sender, const QString& account, const QString& subject, const QString& mailbox = QString::null );
+
+ /**
+ * Copy Constructor
+ * @param ent source entry
+ */
+ FilterLogEntry( const FilterLogEntry& ent );
+
+ /**
+ * Destructor
+ */
+ ~FilterLogEntry();
+
+ /**
+ * Assignment operator
+ * @param ent source entry
+ */
+ FilterLogEntry& operator=( const FilterLogEntry& ent );
+
+ /**
+ * Compares this entry with the given entry
+ * @param ent entry to compare
+ * @return TRUE - the time of this entry is equal to te time of the given entry.
+ */
+ bool operator==( const FilterLogEntry& ent ) const;
+
+ /**
+ * Compares this entry with the given entry
+ * @param ent entry to compare
+ * @return TRUE - the time of this entry is not equal to the time of the given entry.
+ */
+ bool operator!=( const FilterLogEntry& ent ) const;
+
+ /**
+ * Compares this entry with the given entry
+ * @param ent entry to compare
+ * @return TRUE - the time of this entry is later than the time of the given entry.
+ */
+ bool operator>( const FilterLogEntry& ent ) const;
+
+ /**
+ * Compares this entry with the given entry
+ * @param ent entry to compare
+ * @return TRUE - the time of this entry is later than or equal to the time of the given entry.
+ */
+ bool operator>=( const FilterLogEntry& ent ) const;
+
+ /**
+ * Compares this entry with the given entry
+ * @param ent entry to compare
+ * @return TRUE - the time of this entry is earlier than the time of the given entry.
+ */
+ bool operator<( const FilterLogEntry& ent ) const;
+
+ /**
+ * Compares this entry with the given entry
+ * @param ent entry to compare
+ * @return TRUE - the time of this entry is earlier than or equal to the time of the given entry.
+ */
+ bool operator<=( const FilterLogEntry& ent ) const;
+
+ /**
+ * Prints the datas of this entry to Stdout.
+ */
+ void print();
+
+ /**
+ * Returns whether the mail of this entry is older than the given number of days.
+ * @param days number of days to compare
+ * @return TRUE - the mail is older than the given date
+ */
+ bool isOlder( uint days );
+
+ /**
+ * Stores the entry into the given DOM document as child of the given DOM element.
+ */
+ void save( QDomDocument& doc, QDomElement& parent );
+
+ /**
+ * Returns the date and time of send
+ * @return send date and time
+ */
+ QDateTime getDate();
+
+ /**
+ * Returns the sender.
+ * @return Sender
+ */
+ QString getSender();
+
+ /**
+ * Returns the account.
+ * @return Account
+ */
+ QString getAccount();
+
+ /**
+ * Returns the subject
+ * @return Subject
+ */
+ QString getSubject();
+
+ /**
+ * Returns the mailbox
+ * @return mailbox
+ */
+ QString getMailbox();
+
+ private:
+
+ /**
+ * executed action
+ */
+ FilterAction_Type act;
+
+ /**
+ * Delivery date and time
+ */
+ QDateTime sentDateTime;
+
+ /**
+ * Sender
+ */
+ QString sender;
+
+ /**
+ * Account
+ */
+ QString account;
+
+ /**
+ * Subject
+ */
+ QString subject;
+
+ /**
+ * mailbox if the mails was moved
+ */
+ QString mailbox;
+
+};
+
+#endif
diff --git a/kshowmail/filterlogview.cpp b/kshowmail/filterlogview.cpp
new file mode 100644
index 0000000..22a4a54
--- /dev/null
+++ b/kshowmail/filterlogview.cpp
@@ -0,0 +1,121 @@
+//
+// C++ Implementation: filterlogview
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "filterlogview.h"
+
+FilterLogView::FilterLogView( QWidget *parent, FilterLog* log )
+ : KDialogBase( parent, "FilterLogView", true, QString::null, Ok, Ok, true )
+{
+ //save the log pointer
+ this->log = log;
+
+ //set caption
+ setCaption( i18n( "Filter Log View" ) );
+
+ //main widget
+ QWidget* pgMain = new QWidget( this );
+ setMainWidget( pgMain );
+
+ //basic layout
+ QVBoxLayout* layMain = new QVBoxLayout( pgMain, 0, spacingHint() );
+
+ //view of deleted views
+ QLabel* lblDeletedMails = new QLabel( i18n( "Deleted Mails:"), pgMain, "lblDeletedMails" );
+ layMain->addWidget( lblDeletedMails );
+
+ lstViewDeleted = new KListView( pgMain, "lstViewDeleted" );
+ lstViewDeleted->addColumn( i18n( "Date" ) );
+ lstViewDeleted->addColumn( i18n( "Sender" ) );
+ lstViewDeleted->addColumn( i18n( "Account" ) );
+ lstViewDeleted->addColumn( i18n( "Subject" ) );
+ lstViewDeleted->setColumnWidthMode( 0, QListView::Maximum );
+ lstViewDeleted->setColumnWidthMode( 1, QListView::Maximum );
+ lstViewDeleted->setColumnWidthMode( 2, QListView::Maximum );
+ lstViewDeleted->setColumnWidthMode( 3, QListView::Maximum );
+ lstViewDeleted->setResizeMode( QListView::NoColumn );
+ lstViewDeleted->setSortColumn( 0 );
+ lstViewDeleted->setSortOrder( Qt::Ascending );
+ layMain->addWidget( lstViewDeleted );
+
+ KPushButton* btnClearDeleted = new KPushButton( KStdGuiItem::clear(), pgMain, "btnClearDeleted" );
+ QToolTip::add( btnClearDeleted, i18n( "Clear the list of deleted mails" ) );
+ connect( btnClearDeleted, SIGNAL( clicked() ), this, SLOT( slotClearDeletedMails() ) );
+ btnClearDeleted->setSizePolicy( QSizePolicy::Maximum, QSizePolicy::Fixed );
+ layMain->addWidget( btnClearDeleted );
+
+ //create a seperator
+ layMain->addWidget( new KSeparator( pgMain ) );
+
+ //view of deleted views
+ QLabel* lblMovedMails = new QLabel( i18n( "Moved Mails:"), pgMain, "lblMovedMails" );
+ layMain->addWidget( lblMovedMails );
+
+ lstViewMoved = new KListView( pgMain, "lstViewMoved" );
+ lstViewMoved->addColumn( i18n( "Date" ) );
+ lstViewMoved->addColumn( i18n( "Sender" ) );
+ lstViewMoved->addColumn( i18n( "Account" ) );
+ lstViewMoved->addColumn( i18n( "Moved To" ) );
+ lstViewMoved->addColumn( i18n( "Subject" ) );
+ lstViewMoved->setColumnWidthMode( 0, QListView::Maximum );
+ lstViewMoved->setColumnWidthMode( 1, QListView::Maximum );
+ lstViewMoved->setColumnWidthMode( 2, QListView::Maximum );
+ lstViewMoved->setColumnWidthMode( 3, QListView::Maximum );
+ lstViewMoved->setColumnWidthMode( 4, QListView::Maximum );
+ lstViewMoved->setResizeMode( QListView::NoColumn );
+ lstViewMoved->setSortColumn( 0 );
+ lstViewMoved->setSortOrder( Qt::Ascending );
+ layMain->addWidget( lstViewMoved );
+
+ KPushButton* btnClearMoved = new KPushButton( KStdGuiItem::clear(), pgMain, "btnClearMoved" );
+ QToolTip::add( btnClearMoved, i18n( "Clear the list of moved mails" ) );
+ connect( btnClearMoved, SIGNAL( clicked() ), this, SLOT( slotClearMovedMails() ) );
+ btnClearMoved->setSizePolicy( QSizePolicy::Maximum, QSizePolicy::Fixed );
+ layMain->addWidget( btnClearMoved );
+
+ //now we load the content for the list views
+ LogEntryList listDeletedMails = log->getDeletedMails();
+ LogEntryList::iterator it;
+ for( it = listDeletedMails.begin(); it != listDeletedMails.end(); it++ )
+ {
+ //create a new list view item
+ FilterLogViewDeletedItem* item = new FilterLogViewDeletedItem( lstViewDeleted );
+ item->setValues( (*it).getDate(), (*it).getSender(), (*it).getAccount(), (*it).getSubject() );
+ }
+
+ LogEntryList listMovedMails = log->getMovedMails();
+ for( it = listMovedMails.begin(); it != listMovedMails.end(); it++ )
+ {
+ //create a new list view item
+ FilterLogViewMovedItem* item = new FilterLogViewMovedItem( lstViewMoved );
+ item->setValues( (*it).getDate(), (*it).getSender(), (*it).getAccount(), (*it).getMailbox(), (*it).getSubject() );
+ }
+}
+
+
+FilterLogView::~FilterLogView()
+{
+}
+
+void FilterLogView::slotClearDeletedMails( )
+{
+ log->clearDeletedMailsLog();
+ lstViewDeleted->clear();
+
+}
+
+void FilterLogView::slotClearMovedMails( )
+{
+ log->clearMovedMailsLog();
+ lstViewMoved->clear();
+}
+
+
+#include "filterlogview.moc"
diff --git a/kshowmail/filterlogview.h b/kshowmail/filterlogview.h
new file mode 100644
index 0000000..a138de8
--- /dev/null
+++ b/kshowmail/filterlogview.h
@@ -0,0 +1,87 @@
+//
+// C++ Interface: filterlogview
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef FILTERLOGVIEW_H
+#define FILTERLOGVIEW_H
+
+//Qt headers
+#include <qlabel.h>
+#include <qlayout.h>
+#include <qtooltip.h>
+
+//KDE headers
+#include <kdialogbase.h>
+#include <klocale.h>
+#include <klistview.h>
+#include <kpushbutton.h>
+#include <kstdguiitem.h>
+#include <kseparator.h>
+
+//KShowmail headers
+#include "filterlog.h"
+#include "filterlogviewdeleteditem.h"
+#include "filterlogviewmoveditem.h"
+
+/**
+ * @brief This dialog box shows the filter log.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class FilterLogView : public KDialogBase
+{
+
+Q_OBJECT
+
+ public:
+
+ /**
+ * General constructor
+ * @param parent pointer to the parent widget
+ * @param log pointer to the filter log
+ */
+ FilterLogView( QWidget* parent = NULL, FilterLog* log = NULL );
+
+ /**
+ * Destructor
+ */
+ ~FilterLogView();
+
+ private:
+
+ /**
+ * Pointer to the filter log.
+ */
+ FilterLog* log;
+
+ /**
+ * List view of deleted mails
+ */
+ KListView* lstViewDeleted;
+
+ /**
+ * List view of moved mails
+ */
+ KListView* lstViewMoved;
+
+ private slots:
+
+ /**
+ * Clears the list of deleted mails.
+ */
+ void slotClearDeletedMails();
+
+ /**
+ * Clears th elist of moved mails.
+ */
+ void slotClearMovedMails();
+
+};
+
+#endif
diff --git a/kshowmail/filterlogviewdeleteditem.cpp b/kshowmail/filterlogviewdeleteditem.cpp
new file mode 100644
index 0000000..587f079
--- /dev/null
+++ b/kshowmail/filterlogviewdeleteditem.cpp
@@ -0,0 +1,58 @@
+//
+// C++ Implementation: filterlogviewdeleteditem
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2008
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "filterlogviewdeleteditem.h"
+
+FilterLogViewDeletedItem::FilterLogViewDeletedItem( KListView* parent )
+ : KListViewItem( parent )
+{
+}
+
+
+FilterLogViewDeletedItem::~FilterLogViewDeletedItem()
+{
+}
+
+void FilterLogViewDeletedItem::setValues( QDateTime date, QString sender, QString account, QString subject )
+{
+ //store values
+ this->date = date;
+ this->sender = sender;
+ this->account = account;
+ this->subject = subject;
+
+ //set column text
+ setText( ColDate, date.toString( Qt::LocalDate ) );
+ setText( ColSender, sender );
+ setText( ColAccount, account );
+ setText( ColSubject, subject );
+}
+
+int FilterLogViewDeletedItem::compare( QListViewItem * i, int col, bool ascending ) const
+{
+ if( col == ColDate )
+ {
+ if( this->date < ((FilterLogViewDeletedItem*)i)->getDate() ) return -1;
+ if( this->date > ((FilterLogViewDeletedItem*)i)->getDate() ) return 1;
+ else return 0;
+ }
+ else
+ return key( col, ascending ).compare( i->key( col, ascending) );
+
+}
+
+QDateTime FilterLogViewDeletedItem::getDate( )
+{
+ return date;
+}
+
+
+
diff --git a/kshowmail/filterlogviewdeleteditem.h b/kshowmail/filterlogviewdeleteditem.h
new file mode 100644
index 0000000..6692106
--- /dev/null
+++ b/kshowmail/filterlogviewdeleteditem.h
@@ -0,0 +1,95 @@
+//
+// C++ Interface: filterlogviewdeleteditem
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2008
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef FILTERLOGVIEWDELETEDITEM_H
+#define FILTERLOGVIEWDELETEDITEM_H
+
+//Qt Headers
+#include <qdatetime.h>
+
+//KDE headers
+#include <klistview.h>
+
+/**
+ * @brief Item of the filter log view of deleted mails
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class FilterLogViewDeletedItem : public KListViewItem
+{
+
+ public:
+
+ /**
+ * Column Numbers.
+ */
+ enum Column{ ColDate = 0, ColSender = 1, ColAccount = 2, ColSubject = 3 };
+
+ /**
+ * Constructor
+ * @param parent the log view of this items
+ */
+ FilterLogViewDeletedItem( KListView* parent );
+
+ /**
+ * Destrutor
+ */
+ ~FilterLogViewDeletedItem();
+
+ /**
+ * Sets the column values.
+ * @param date date and time at which the mail was sent
+ * @param sender sender of the mail
+ * @param account account
+ * @param subject mail subject
+ */
+ void setValues( QDateTime date, QString sender, QString account, QString subject );
+
+ /**
+ * Reimplemantation of QListViewItem::compare.
+ * Compares this list view item to i using the column col in ascending order. Returns <0 if this item is less than i,
+ * 0 if they are equal and >0 if this item is greater than i. The parameter ascneding will be ignored.
+ * @param i pointer to the second view item
+ * @param col number of the sorted column
+ * @param ascending ignored
+ */
+ virtual int compare( QListViewItem* i, int col, bool ascending ) const;
+
+ /**
+ * Returns the date of sent
+ * @return date of sent
+ */
+ QDateTime getDate();
+
+
+ private:
+
+ /**
+ * sent date and time
+ */
+ QDateTime date;
+
+ /**
+ * sender of the mail
+ */
+ QString sender;
+
+ /**
+ * Account
+ */
+ QString account;
+
+ /**
+ * mail subject
+ */
+ QString subject;
+};
+
+#endif
diff --git a/kshowmail/filterlogviewmoveditem.cpp b/kshowmail/filterlogviewmoveditem.cpp
new file mode 100644
index 0000000..80b02ba
--- /dev/null
+++ b/kshowmail/filterlogviewmoveditem.cpp
@@ -0,0 +1,58 @@
+//
+// C++ Implementation: filterlogviewmoveditem
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2008
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "filterlogviewmoveditem.h"
+
+FilterLogViewMovedItem::FilterLogViewMovedItem( KListView * parent )
+ : KListViewItem( parent )
+{
+}
+
+
+FilterLogViewMovedItem::~FilterLogViewMovedItem()
+{
+}
+
+void FilterLogViewMovedItem::setValues( QDateTime date, QString sender, QString account, QString mailbox, QString subject )
+{
+ //store values
+ this->date = date;
+ this->sender = sender;
+ this->account = account;
+ this->mailbox = mailbox;
+ this->subject = subject;
+
+ //set column text
+ setText( ColDate, date.toString( Qt::LocalDate ) );
+ setText( ColSender, sender );
+ setText( ColAccount, account );
+ setText( ColMailbox, mailbox );
+ setText( ColSubject, subject );
+}
+
+int FilterLogViewMovedItem::compare( QListViewItem * i, int col, bool ascending ) const
+{
+ if( col == ColDate )
+ {
+ if( this->date < ((FilterLogViewMovedItem*)i)->getDate() ) return -1;
+ if( this->date > ((FilterLogViewMovedItem*)i)->getDate() ) return 1;
+ else return 0;
+ }
+ else
+ return key( col, ascending ).compare( i->key( col, ascending) );
+
+}
+
+QDateTime FilterLogViewMovedItem::getDate( )
+{
+ return date;
+}
+
diff --git a/kshowmail/filterlogviewmoveditem.h b/kshowmail/filterlogviewmoveditem.h
new file mode 100644
index 0000000..9a7a7f8
--- /dev/null
+++ b/kshowmail/filterlogviewmoveditem.h
@@ -0,0 +1,101 @@
+//
+// C++ Interface: filterlogviewmoveditem
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2008
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef FILTERLOGVIEWMOVEDITEM_H
+#define FILTERLOGVIEWMOVEDITEM_H
+
+//Qt Headers
+#include <qdatetime.h>
+
+//KDE headers
+#include <klistview.h>
+
+/**
+ * @brief Item of the filter log view of moved mails
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class FilterLogViewMovedItem : public KListViewItem
+{
+
+ public:
+
+ /**
+ * Column Numbers.
+ */
+ enum Column{ ColDate = 0, ColSender = 1, ColAccount = 2, ColMailbox = 3, ColSubject = 4 };
+
+ /**
+ * Constructor
+ * @param parent the log view of this items
+ */
+ FilterLogViewMovedItem( KListView* parent);
+
+ /**
+ * Destructor
+ */
+ ~FilterLogViewMovedItem();
+
+ /**
+ * Sets the column values.
+ * @param date date and time at which the mail was sent
+ * @param sender sender of the mail
+ * @param account account
+ * @param mailbox mailbox to which the mail was moved
+ * @param subject mail subject
+ */
+ void setValues( QDateTime date, QString sender, QString account, QString mailbox, QString subject );
+
+ /**
+ * Reimplemantation of QListViewItem::compare.
+ * Compares this list view item to i using the column col in ascending order. Returns <0 if this item is less than i,
+ * 0 if they are equal and >0 if this item is greater than i. The parameter ascneding will be ignored.
+ * @param i pointer to the second view item
+ * @param col number of the sorted column
+ * @param ascending ignored
+ */
+ virtual int compare( QListViewItem* i, int col, bool ascending ) const;
+
+ /**
+ * Returns the date of sent
+ * @return date of sent
+ */
+ QDateTime getDate();
+
+
+ private:
+
+ /**
+ * sent date and time
+ */
+ QDateTime date;
+
+ /**
+ * sender of the mail
+ */
+ QString sender;
+
+ /**
+ * Account
+ */
+ QString account;
+
+ /**
+ * mail subject
+ */
+ QString subject;
+
+ /**
+ * mailbox
+ */
+ QString mailbox;
+};
+
+#endif
diff --git a/kshowmail/headerfilter.cpp b/kshowmail/headerfilter.cpp
new file mode 100644
index 0000000..10bedf0
--- /dev/null
+++ b/kshowmail/headerfilter.cpp
@@ -0,0 +1,151 @@
+//
+// C++ Implementation: headerfilter
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "headerfilter.h"
+
+HeaderFilter::HeaderFilter()
+{
+ //get the application config object
+ config = KApplication::kApplication()->config();
+
+ //the filter list shall delete all filters if it will be deleted itself
+ filters.setAutoDelete( true );
+
+ //load settings
+ load();
+}
+
+
+HeaderFilter::~HeaderFilter()
+{
+}
+
+FilterAction_Type HeaderFilter::check( QString from, QString to, uint size, QString subject, QString header, QString account, QString& mailboxName ) const
+{
+ //return PASS, if filter is not active
+ if( !active )
+ return FActPass;
+
+ //check for matching with blacklist or whitelist
+ FilterAction_Type action = senderlist.check( from );
+ if( action != FActNone ) return action;
+
+ //check for matching with filters
+ QPtrListIterator<FilterItem> it( filters );
+ FilterItem* filter;
+ while( ( filter = it.current() ) != NULL )
+ {
+ ++it;
+ action = filter->check( from, to, size, subject, header, account, mailboxName );
+
+ if( action != FActNone ) return action;
+ }
+
+ //no matching; return default action
+ if( defaultAction == FActMove )
+ {
+ mailboxName.remove( 0, mailboxName.length() );
+ mailboxName.append( mailbox );
+ }
+ return defaultAction;
+
+}
+
+void HeaderFilter::load( )
+{
+ //order sender list to load its settings
+ senderlist.load();
+
+ //set group
+ config->setGroup( CONFIG_GROUP_FILTER );
+
+ //get filter active state
+ active = config->readBoolEntry( CONFIG_ENTRY_FILTER_ACTIVE, DEFAULT_FILTER_ACTIVE );
+
+ //get number of filter items
+ numberFilterItems = config->readNumEntry( CONFIG_ENTRY_FILTER_NUMBER_OF_FILTERS, 0 );
+
+ //get default action
+ switch( config->readNumEntry( CONFIG_ENTRY_FILTER_OTHERS_ACTION, DEFAULT_FILTER_OTHERS_ACTION ) )
+ {
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_PASS : defaultAction = FActPass; break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_DELETE : defaultAction = FActDelete; break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_MARK : defaultAction = FActMark; break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_MOVE : defaultAction = FActMove; break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_IGNORE : defaultAction = FActIgnore; break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_SPAMCHECK : defaultAction = FActSpamcheck; break;
+ default : kdError() << "Header Filter: Unknown default filter action. Set PASS." << endl;
+ defaultAction = FActPass;
+ break;
+ }
+
+ //get mailbox name if default action is MOVE
+ if( defaultAction == FActMove )
+ mailbox = config->readEntry( CONFIG_ENTRY_FILTER_OTHERS_MAILBOX, DEFAULT_FILTER_ACTION_MOVE_MAILBOX );
+
+ //now we get the filters
+ //first clear the list
+ filters.clear();
+
+ for( uint filterNr = 1; filterNr <= numberFilterItems; filterNr++ )
+ {
+ filters.append( new FilterItem( filterNr ) ); //a new created filter item loads its settings itself
+ }
+}
+
+void HeaderFilter::print( )
+{
+ kdDebug() << "Header Filter Settings:" << endl;
+ kdDebug() << "-----------------------" << endl;
+
+ //print active state
+ if( active )
+ kdDebug() << "Header filter is active." << endl;
+ else
+ kdDebug() << "Header filter is not active." << endl;
+
+ //print settings of black and white list
+ senderlist.print();
+
+ //print filters
+ kdDebug() << endl;
+ kdDebug() << "Number of filters: " << numberFilterItems << endl << endl;
+
+ QPtrListIterator<FilterItem> it( filters );
+ FilterItem* filter;
+ while( ( filter = it.current() ) != NULL )
+ {
+ ++it;
+ filter->print();
+ kdDebug() << endl;
+ }
+
+ //print default action for not matched mails
+ switch( defaultAction )
+ {
+ case FActPass : kdDebug() << "Default action for other mails: PASS" << endl; break;
+ case FActDelete : kdDebug() << "Default action for other mails: DELETE" << endl; break;
+ case FActMark : kdDebug() << "Default action for other mails: MARK" << endl; break;
+ case FActIgnore : kdDebug() << "Default action for other mails: IGNORE" << endl;
+ case FActMove : kdDebug() << "Default action for other mails: MOVE to " << mailbox << endl; break;
+ case FActSpamcheck : kdDebug() << "Default action for other mails: SPAMCHECK" << endl; break;
+ default : kdDebug() << "Unknown default action for other mails" << endl; break;
+ }
+
+
+}
+
+bool HeaderFilter::isActive()
+{
+ return active;
+}
+
+
diff --git a/kshowmail/headerfilter.h b/kshowmail/headerfilter.h
new file mode 100644
index 0000000..c17a626
--- /dev/null
+++ b/kshowmail/headerfilter.h
@@ -0,0 +1,117 @@
+//
+// C++ Interface: headerfilter
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef HEADERFILTER_H
+#define HEADERFILTER_H
+
+//Qt headers
+#include <qstring.h>
+#include <qptrlist.h>
+
+//KDE headers
+#include <kapplication.h>
+#include <kdebug.h>
+#include <kconfig.h>
+
+//KShowmail headers
+#include "constants.h"
+#include "types.h"
+#include "filteritem.h"
+#include "senderlistfilter.h"
+
+/**
+ * @brief This is the mail header filter.
+ * Call check() with some header datas of the mail to get the configured action for this mail.
+ * If the settings was changed by the config GUI you have to call load().
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class HeaderFilter{
+
+ public:
+
+ /**
+ * Constructor
+ */
+ HeaderFilter();
+
+ /**
+ * Destructor
+ */
+ ~HeaderFilter();
+
+ /**
+ * Checks the given mail header.
+ * @param from Sender
+ * @param to Addressee
+ * @param size Size
+ * @param subject Subject
+ * @param header Header
+ * @param account Account
+ * @param mailboxName contains the mailbox name after call, if filter action is MOVE
+ * @return recommend action
+ */
+ FilterAction_Type check( QString from, QString to, uint size, QString subject, QString header, QString account, QString& mailboxName ) const;
+
+ /**
+ * Loads the settings from the application config file.
+ */
+ void load();
+
+ /**
+ * Prints the settings
+ */
+ void print();
+
+ /**
+ * Returns the filter active state.
+ * @return TRUE - filter is active
+ */
+ bool isActive();
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * TRUE - filter is active
+ */
+ bool active;
+
+ /**
+ * Default action, if no filter matches
+ */
+ FilterAction_Type defaultAction;
+
+ /**
+ * mailbox name if default action is MOVE
+ */
+ QString mailbox;
+
+ /**
+ * Number of filter items
+ */
+ uint numberFilterItems;
+
+ /**
+ * Black and White lists
+ */
+ SenderListFilter senderlist;
+
+ /**
+ * This list holds the filter items
+ */
+ QPtrList<FilterItem> filters;
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/Makefile.am b/kshowmail/kcmconfigs/Makefile.am
new file mode 100644
index 0000000..94cd555
--- /dev/null
+++ b/kshowmail/kcmconfigs/Makefile.am
@@ -0,0 +1,36 @@
+INCLUDES = $(all_includes)
+METASOURCES = AUTO
+kde_module_LTLIBRARIES = kcm_kshowmailconfigaccounts.la \
+ kcm_kshowmailconfigactions.la kcm_kshowmailconfigdisplay.la kcm_kshowmailconfigfilter.la \
+ kcm_kshowmailconfiggeneral.la kcm_kshowmailconfiglog.la kcm_kshowmailconfigspamcheck.la
+kcm_kshowmailconfigactions_la_LDFLAGS = -avoid-version -module $(all_libraries)
+noinst_HEADERS = accountsetupdialog.h accountsetupitem.h configaccounts.h \
+ configactions.h configdisplay.h configfilter.h configgeneral.h configlog.h \
+ configspamcheck.h encryption.h filtercriteriawidget.h filtersetupdialog.h \
+ filtersetupitem.h kwalletaccess.h mailboxwizard.h mailboxwizardlistitem.h \
+ senderlistdialog.h
+kcm_kshowmailconfigactions_la_SOURCES = configactions.cpp
+kde_services_DATA = kshowmailconfigaccounts.desktop \
+ kshowmailconfigactions.desktop kshowmailconfigdisplay.desktop kshowmailconfigfilter.desktop \
+ kshowmailconfiggeneral.desktop kshowmailconfiglog.desktop kshowmailconfigspamcheck.desktop
+kcm_kshowmailconfiggeneral_la_LDFLAGS = -avoid-version -module\
+ $(all_libraries)
+kcm_kshowmailconfiggeneral_la_SOURCES = configgeneral.cpp
+kcm_kshowmailconfigdisplay_la_LDFLAGS = -avoid-version -module\
+ $(all_libraries)
+kcm_kshowmailconfigdisplay_la_SOURCES = configdisplay.cpp
+kcm_kshowmailconfigaccounts_la_LDFLAGS = -avoid-version -module\
+ $(all_libraries)
+kcm_kshowmailconfigaccounts_la_SOURCES = configaccounts.cpp \
+ accountsetupitem.cpp accountsetupdialog.cpp encryption.cpp kwalletaccess.cpp
+kcm_kshowmailconfigfilter_la_LDFLAGS = -avoid-version -module\
+ $(all_libraries)
+kcm_kshowmailconfigfilter_la_SOURCES = configfilter.cpp senderlistdialog.cpp \
+ filtersetupitem.cpp filtersetupdialog.cpp filtercriteriawidget.cpp mailboxwizard.cpp \
+ mailboxwizardlistitem.cpp
+kcm_kshowmailconfiglog_la_LDFLAGS = $(all_libraries) -avoid-version -module
+kcm_kshowmailconfiglog_la_SOURCES = configlog.cpp
+kcm_kshowmailconfigspamcheck_la_LDFLAGS = $(all_libraries) -avoid-version \
+ -module
+kcm_kshowmailconfigspamcheck_la_SOURCES = configspamcheck.cpp mailboxwizard.cpp \
+ mailboxwizardlistitem.cpp
diff --git a/kshowmail/kcmconfigs/accountsetupdialog.cpp b/kshowmail/kcmconfigs/accountsetupdialog.cpp
new file mode 100644
index 0000000..6c6fe22
--- /dev/null
+++ b/kshowmail/kcmconfigs/accountsetupdialog.cpp
@@ -0,0 +1,362 @@
+//
+// C++ Implementation: accountsetupdialog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "accountsetupdialog.h"
+
+AccountSetupDialog::AccountSetupDialog( QWidget* parent, KListView* view, AccountSetupItem* item )
+ : KDialogBase( parent, "AccountSetupDialog", true, QString::null, Ok|Cancel, Ok, true )
+{
+ //save pointer to account and view
+ account = item;
+ ListView = view;
+
+ //tab widget
+ KTabWidget* tabs = new KTabWidget( this, "tabs" );
+ tabs->setMargin( 10 );
+
+ //pages
+ QWidget* pgGeneral = new QWidget( this );
+ QWidget* pgSecurity = new QWidget( this );
+ setMainWidget( tabs );
+
+ //layouts of general page
+ QVBoxLayout* layGeneral = new QVBoxLayout( pgGeneral, 0, spacingHint() );
+ QGridLayout* layTop = new QGridLayout( layGeneral, 5, 2 );
+
+ //layouts of security page
+ QVBoxLayout* laySecurity = new QVBoxLayout( pgSecurity, 0, spacingHint() );
+ laySecurity->setAlignment( Qt::AlignTop );
+
+ //upper items
+ QLabel* lblAccount = new QLabel( i18n( "Account:" ), pgGeneral, "lblAccount" );
+ txtAccount = new KLineEdit( pgGeneral, "txtAccount" );
+ txtAccount->setFocus();
+ QToolTip::add( lblAccount, i18n( "Unique Account Name" ) );
+ QToolTip::add( txtAccount, i18n( "Unique Account Name" ) );
+ layTop->addWidget( lblAccount, 0, 0 );
+ layTop->addWidget( txtAccount, 0, 1 );
+
+ QLabel* lblServer = new QLabel( i18n( "Server:" ), pgGeneral, "lblServer" );
+ txtServer = new KLineEdit( pgGeneral, "txtServer" );
+ QToolTip::add( lblServer, i18n( "Server Name" ) );
+ QToolTip::add( txtServer, i18n( "Server Name" ) );
+ layTop->addWidget( lblServer, 1, 0 );
+ layTop->addWidget( txtServer, 1, 1 );
+
+ QLabel* lblProtocol = new QLabel( i18n( "Protocol:" ), pgGeneral, "lblProtocol" );
+ cboProtocol = new KComboBox( pgGeneral, "cboProtocol" );
+ cboProtocol->insertItem( "POP3" ); //currently KShowmail just supports POP3
+ QToolTip::add( lblProtocol, i18n( "Protocol, which shall be used to get the mails from the server. Currently KShowmail just supports POP3.") );
+ QToolTip::add( cboProtocol, i18n( "Protocol, which shall be used to get the mails from the server. Currently KShowmail just supports POP3.") );
+ layTop->addWidget( lblProtocol, 2, 0 );
+ layTop->addWidget( cboProtocol, 2, 1 );
+
+ QLabel* lblPort = new QLabel( i18n( "Port:" ), pgGeneral, "lblPort" );
+ spbPort = new QSpinBox( 0, 65535, 1, pgGeneral, "spbPort" );
+ spbPort->setValue( DEFAULT_ACCOUNT_PORT_POP3 );
+ QToolTip::add( lblPort, i18n( "Port Number. Normally POP3 uses port 110." ) );
+ QToolTip::add( spbPort, i18n( "Port Number. Normally POP3 uses port 110." ) );
+ layTop->addWidget( lblPort, 3, 0 );
+ layTop->addWidget( spbPort, 3, 1 );
+
+ QLabel* lblUser = new QLabel( i18n( "User:" ), pgGeneral, "lblUser" );
+ txtUser = new KLineEdit( pgGeneral, "txtUser" );
+ QToolTip::add( lblUser, i18n( "To authenticate to the mail server you need an user name." ) );
+ QToolTip::add( txtUser, i18n( "To authenticate to the mail server you need an user name." ) );
+ layTop->addWidget( lblUser, 4, 0 );
+ layTop->addWidget( txtUser, 4, 1 );
+
+ //password groupbox and layouts
+ QGroupBox* gboxPassword = new QGroupBox( 0, Qt::Horizontal, i18n( "Password" ), pgGeneral, "gboxPassword" );
+ layGeneral->addWidget( gboxPassword );
+
+ QVBoxLayout* layPassword = new QVBoxLayout( gboxPassword->layout(), spacingHint() );
+ QGridLayout* layPasswordStorage = new QGridLayout( layPassword, 2, 2, spacingHint() );
+
+
+ //radio buttons to set storage of the password
+ grpPasswordStorage = new QButtonGroup( NULL, "grpPasswordStorage" );
+ connect( grpPasswordStorage, SIGNAL( clicked( int ) ), this, SLOT( slotPasswordStorageChanged( int ) ) );
+
+ QRadioButton* btnPasswordDontSave = new QRadioButton( i18n( "Don't save" ), gboxPassword, "btnPasswordDontSave" );
+ QRadioButton* btnPasswordSaveFile = new QRadioButton( i18n( "Save password"), gboxPassword, "btnPasswordSaveFile" );
+ QRadioButton* btnPasswordSaveKWallet = new QRadioButton( i18n( "Use KWallet" ), gboxPassword, "btnPasswordSaveKWallet" );
+ grpPasswordStorage->insert( btnPasswordDontSave, ID_BUTTON_PASSWORD_DONT_SAVE );
+ grpPasswordStorage->insert( btnPasswordSaveFile, ID_BUTTON_PASSWORD_SAVE_FILE );
+ grpPasswordStorage->insert( btnPasswordSaveKWallet, ID_BUTTON_PASSWORD_SAVE_KWALLET );
+ QToolTip::add( btnPasswordDontSave, i18n( "Don't save password. KShowmail will ask you for it at first server connect." ) );
+ QToolTip::add( btnPasswordSaveFile, i18n( "Save password in the configuration file. Not recommended, because the password is just lightly encrypted" ) );
+ QToolTip::add( btnPasswordSaveKWallet, i18n( "Use KWallet to save the password. Maybe you have to type in the KWallet master password at first server connect." ) );
+ layPasswordStorage->addWidget( btnPasswordDontSave, 0, 0 );
+ layPasswordStorage->addWidget( btnPasswordSaveFile, 0, 1 );
+ layPasswordStorage->addWidget( btnPasswordSaveKWallet, 1, 0 );
+
+ //password edit line
+ txtPassword = new KPasswordEdit( gboxPassword, "txtUser" );
+ layPassword->addWidget( txtPassword );
+
+ //set password defaults
+ grpPasswordStorage->setButton( DEFAULT_ACCOUNT_PASSWORD_STORAGE );
+ slotPasswordStorageChanged( DEFAULT_ACCOUNT_PASSWORD_STORAGE );
+
+ //active check box
+ QGridLayout* layActive = new QGridLayout( layGeneral, 1, 1 );
+ layActive->setAlignment( Qt::AlignCenter );
+ chkActive = new QCheckBox( i18n( "Active"), pgGeneral, "chkActive" );
+ QToolTip::add( chkActive, i18n( "Select it to activate this account." ) );
+ layActive->addWidget( chkActive, 0, 0 );
+ chkActive->setChecked( DEFAULT_ACCOUNT_ACTIVE );
+
+ //secure transfer groupbox and layouts
+ QGroupBox* gboxSecureTransfer = new QGroupBox( 0, Qt::Horizontal, i18n( "Encryption" ), pgSecurity, "gboxSecureTransfer" );
+ gboxSecureTransfer->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Maximum ) );
+ laySecurity->addWidget( gboxSecureTransfer );
+
+ QHBoxLayout* laySecureTransfer = new QHBoxLayout( gboxSecureTransfer->layout(), spacingHint() );
+
+ //radio buttons to set secure transfer
+ grpSecureTransfer = new QButtonGroup( NULL, "grpSecureTransfer" );
+ connect( grpSecureTransfer, SIGNAL( clicked( int ) ), this, SLOT( slotSecureTransferChanged ( int ) ) );
+
+ QRadioButton* btnSecureTransferNone = new QRadioButton( i18n( "None" ), gboxSecureTransfer, "btnSecureTransferNone" );
+ QRadioButton* btnSecureTransferSSL = new QRadioButton( i18n( "SSL"), gboxSecureTransfer, "btnSecureTransferSSL" );
+ QRadioButton* btnSecureTransferTLS = new QRadioButton( i18n( "TLS" ), gboxSecureTransfer, "btnSecureTransferTLS" );
+ grpSecureTransfer->insert( btnSecureTransferNone, ID_BUTTON_SECTRANSFER_NONE );
+ grpSecureTransfer->insert( btnSecureTransferSSL, ID_BUTTON_SECTRANSFER_SSL );
+ grpSecureTransfer->insert( btnSecureTransferTLS, ID_BUTTON_SECTRANSFER_TLS );
+ QToolTip::add( btnSecureTransferNone, i18n( "The download of the mail header and body will not be encrypted. Use this, if your provider doesn't make a secure transfer available." ) );
+ QToolTip::add( btnSecureTransferSSL, i18n( "Secure Sockets Layer (SSL), is a cryptographic protocol that provides secure communications on the Internet." ) );
+ QToolTip::add( btnSecureTransferTLS, i18n( "Transport Layer Security (TLS) is a cryptographic protocol that provides secure communications on the Internet. It is the successor of SSL." ) );
+ laySecureTransfer->addWidget( btnSecureTransferNone );
+ laySecureTransfer->addWidget( btnSecureTransferSSL );
+ laySecureTransfer->addWidget( btnSecureTransferTLS );
+
+ grpSecureTransfer->setButton( DEFAULT_ACCOUNT_SECTRANSFER );
+
+ //set pages to tab widget
+ tabs->addTab( pgGeneral, i18n( "General" ) );
+ tabs->addTab( pgSecurity, i18n( "Security" ) );
+
+ //set caption
+ if( item == NULL )
+ setCaption( i18n( "New account" ) );
+ else
+ setCaption( i18n( "Edit account" ) );
+
+ //write values of the given account into the dialog items
+ if( account != NULL )
+ fillDialog();
+
+
+}
+
+
+AccountSetupDialog::~AccountSetupDialog()
+{
+}
+
+void AccountSetupDialog::slotPasswordStorageChanged( int id )
+{
+ if( id == ID_BUTTON_PASSWORD_DONT_SAVE )
+ {
+ txtPassword->setEnabled( false );
+ txtPassword->clear();
+ }
+ else
+ txtPassword->setEnabled( true );
+}
+
+void AccountSetupDialog::slotOk( )
+{
+ //check for necessary values
+ if( txtAccount->text() == "" )
+ {
+ KMessageBox::error( this, i18n( "Please enter an account name." ) );
+ return;
+ }
+ if( txtServer->text() == "" )
+ {
+ KMessageBox::error( this, i18n( "Please enter an server." ) );
+ return;
+ }
+
+ if( txtUser->text() == "" )
+ {
+ KMessageBox::error( this, i18n( "Please enter an user name." ) );
+ return;
+ }
+
+ //test for unique account name
+ //we will only test if the account is new or if the
+ //name in the dialog is different from the name of the account object
+ bool test = false;
+ if( account == NULL )
+ test = true;
+ else if( account != NULL && account->getAccountName() != txtAccount->text() )
+ test = true;
+ else
+ test = false;
+
+ if( test )
+ {
+ //OK, we want to test
+ AccountSetupItem* item = NULL;
+ int index = 0;
+ bool equality = false;
+
+ do
+ {
+ item = (AccountSetupItem*)( ListView->itemAtIndex( index ) );
+ if( item != NULL )
+ {
+ index++;
+ equality = item->getAccountName() == txtAccount->text();
+ }
+ } while( item != NULL && !equality );
+
+ //exit method if we have found an account with the same name
+ if( equality )
+ {
+ KMessageBox::error( this, i18n( "There is already an account named %1. Please choose another name." ).arg( txtAccount->text() ) );
+ return;
+ }
+
+ }
+
+
+ //create a new account item if necessary
+ if( account == NULL )
+ account = new AccountSetupItem( ListView );
+
+ //show a warning if the account name was changend
+ if( account->getAccountName() != DEFAULT_ACCOUNT_NAME && account->getAccountName() != txtAccount->text() )
+ KMessageBox::information( this, i18n( "You have changed the account name. The account will lose all downloaded mail headers. Please perform a refresh." ) );
+
+ //set column text
+ account->setText( 0, txtAccount->text() );
+
+ //write values into account item
+ account->setAccountName( txtAccount->text() );
+ account->setServer( txtServer->text() );
+ account->setProtocol( cboProtocol->currentText() );
+ account->setPort( spbPort->value() );
+ account->setUser( txtUser->text() );
+
+ //get the password
+ //the class KPasswordEdit doesn't have a method to set the password
+ //therefore we use setText(). But if we use this method, KPasswordEdit::password()
+ //will return an empty string. If the user has typed in a new password, KPasswordEdit::password()
+ //will return the correct password
+ QString pass;
+ if( txtPassword->password() == "" || txtPassword->password() == QString::null )
+ pass = txtPassword->text();
+ else
+ pass = txtPassword->password();
+
+ switch( grpPasswordStorage->selectedId() )
+ {
+ case ID_BUTTON_PASSWORD_DONT_SAVE : account->setPasswordStorageType( CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE );
+ account->setPassword( QString::null );
+ break;
+ case ID_BUTTON_PASSWORD_SAVE_FILE : account->setPasswordStorageType( CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE );
+ account->setPassword( pass );
+ break;
+ case ID_BUTTON_PASSWORD_SAVE_KWALLET : account->setPasswordStorageType( CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET );
+ account->setPassword( pass );
+ break;
+ default : account->setPasswordStorageType( -1 );
+ account->setPassword( QString::null );
+ }
+
+ account->setActive( chkActive->isChecked() );
+
+ switch( grpSecureTransfer->selectedId() )
+ {
+ case ID_BUTTON_SECTRANSFER_NONE : account->setTransferSecurity( CONFIG_VALUE_ACCOUNT_SECTRANSFER_NONE ); break;
+ case ID_BUTTON_SECTRANSFER_SSL : account->setTransferSecurity( CONFIG_VALUE_ACCOUNT_SECTRANSFER_SSL ); break;
+ case ID_BUTTON_SECTRANSFER_TLS : account->setTransferSecurity( CONFIG_VALUE_ACCOUNT_SECTRANSFER_TLS ); break;
+ default : account->setTransferSecurity( DEFAULT_ACCOUNT_SECTRANSFER ); break;
+ }
+
+ //call slot of super class to close the dialog
+ KDialogBase::slotOk();
+}
+
+void AccountSetupDialog::fillDialog( )
+{
+ //check for valid account pointer
+ if( account == NULL )
+ {
+ kdError() << "AccountSetupDialog::fillDialog: invalid pointer to account item." << endl;
+ return;
+ }
+
+ txtAccount->setText( account->getAccountName() );
+ txtServer->setText( account->getServer() );
+ cboProtocol->setCurrentText( account->getProtocol().upper() );
+
+ if( account->getPort() >= 0 && account->getPort() <= 65535 )
+ spbPort->setValue( account->getPort() );
+ else
+ spbPort->setValue( DEFAULT_ACCOUNT_PORT_POP3 );
+
+ txtUser->setText( account->getUser() );
+
+ int type = account->getPasswordStorageType();
+ if( type != CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE && type != CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE && type != CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET )
+ type = DEFAULT_ACCOUNT_PASSWORD_STORAGE;
+
+ switch( type )
+ {
+ case CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE : grpPasswordStorage->setButton( ID_BUTTON_PASSWORD_DONT_SAVE );
+ txtPassword->setEnabled( false );
+ txtPassword->clear();
+ break;
+ case CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE : grpPasswordStorage->setButton( ID_BUTTON_PASSWORD_SAVE_FILE );
+ txtPassword->setEnabled( true );
+ txtPassword->setText( account->getPassword() );
+ break;
+ case CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET : grpPasswordStorage->setButton( ID_BUTTON_PASSWORD_SAVE_KWALLET );
+ txtPassword->setEnabled( true );
+ txtPassword->setText( account->getPassword() );
+ break;
+ default : grpPasswordStorage->setButton( 1 );
+ txtPassword->clear();
+ }
+
+ chkActive->setChecked( account->getActive() );
+
+ int transferSecurity = account->getTransferSecurity();
+ if( transferSecurity != CONFIG_VALUE_ACCOUNT_SECTRANSFER_NONE && transferSecurity != CONFIG_VALUE_ACCOUNT_SECTRANSFER_SSL && transferSecurity != CONFIG_VALUE_ACCOUNT_SECTRANSFER_TLS )
+ transferSecurity = DEFAULT_ACCOUNT_SECTRANSFER;
+
+ switch( transferSecurity )
+ {
+ case CONFIG_VALUE_ACCOUNT_SECTRANSFER_NONE : grpSecureTransfer->setButton( ID_BUTTON_SECTRANSFER_NONE ); break;
+ case CONFIG_VALUE_ACCOUNT_SECTRANSFER_SSL : grpSecureTransfer->setButton( ID_BUTTON_SECTRANSFER_SSL ); break;
+ case CONFIG_VALUE_ACCOUNT_SECTRANSFER_TLS : grpSecureTransfer->setButton( ID_BUTTON_SECTRANSFER_TLS ); break;
+ default : grpSecureTransfer->setButton( ID_BUTTON_SECTRANSFER_NONE ); break;
+ }
+}
+
+void AccountSetupDialog::slotSecureTransferChanged( int id )
+{
+ switch( id )
+ {
+ case ID_BUTTON_SECTRANSFER_NONE : spbPort->setValue( DEFAULT_ACCOUNT_PORT_POP3 ); break;
+ case ID_BUTTON_SECTRANSFER_SSL : spbPort->setValue( DEFAULT_ACCOUNT_PORT_POP3SSL ); break;
+ case ID_BUTTON_SECTRANSFER_TLS : spbPort->setValue( DEFAULT_ACCOUNT_PORT_POP3 ); break;
+ }
+}
+
+
+
+#include "accountsetupdialog.moc"
diff --git a/kshowmail/kcmconfigs/accountsetupdialog.h b/kshowmail/kcmconfigs/accountsetupdialog.h
new file mode 100644
index 0000000..756f51e
--- /dev/null
+++ b/kshowmail/kcmconfigs/accountsetupdialog.h
@@ -0,0 +1,165 @@
+//
+// C++ Interface: accountsetupdialog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef ACCOUNTSETUPDIALOG_H
+#define ACCOUNTSETUPDIALOG_H
+
+//Qt headers
+#include <qlayout.h>
+#include <qlabel.h>
+#include <qtooltip.h>
+#include <qspinbox.h>
+#include <qgroupbox.h>
+#include <qbuttongroup.h>
+#include <qradiobutton.h>
+#include <qcheckbox.h>
+
+//KDE headers
+#include <kdialogbase.h>
+#include <klocale.h>
+#include <klineedit.h>
+#include <kcombobox.h>
+#include <kdebug.h>
+#include <kmessagebox.h>
+#include <kpassdlg.h>
+#include <ktabwidget.h>
+
+//KShowmail headers
+#include "accountsetupitem.h"
+#include "../constants.h"
+
+//radio button IDs
+#define ID_BUTTON_PASSWORD_DONT_SAVE 1
+#define ID_BUTTON_PASSWORD_SAVE_FILE 2
+#define ID_BUTTON_PASSWORD_SAVE_KWALLET 3
+#define ID_BUTTON_SECLOGIN_NONE 1
+#define ID_BUTTON_SECLOGIN_APOP 2
+#define ID_BUTTON_SECLOGIN_SASL 3
+#define ID_BUTTON_SECTRANSFER_NONE 1
+#define ID_BUTTON_SECTRANSFER_SSL 2
+#define ID_BUTTON_SECTRANSFER_TLS 3
+
+/**
+ * @brief Dialog to setup an account.
+ *
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class AccountSetupDialog : public KDialogBase
+{
+Q_OBJECT
+
+ public:
+
+ /**
+ * General constructor
+ * @param parent parent of the dialog
+ * @param view view which shows the items
+ * @param item account to setup; if NULL, a new item will be created
+ */
+ AccountSetupDialog( QWidget* parent, KListView* view, AccountSetupItem* item = NULL );
+
+ /**
+ * Destructor
+ */
+ ~AccountSetupDialog();
+
+ private:
+
+ /**
+ * account to setup
+ */
+ AccountSetupItem* account;
+
+ /**
+ * View which shows the account items.
+ */
+ KListView* ListView;
+
+ /**
+ * Edit line which contains the unique account name.
+ */
+ KLineEdit* txtAccount;
+
+ /**
+ * Edit line which contains the server name.
+ */
+ KLineEdit* txtServer;
+
+ /**
+ * Combo box to choose the protocol.
+ */
+ KComboBox* cboProtocol;
+
+ /**
+ * Spinbox to choose the tcp port.
+ */
+ QSpinBox* spbPort;
+
+ /**
+ * Edit line which contains the user name.
+ */
+ KLineEdit* txtUser;
+
+ /**
+ * Edit line which contains the password.
+ */
+ KPasswordEdit* txtPassword;
+
+ /**
+ * Check box to select whether the account is active or not.
+ */
+ QCheckBox* chkActive;
+
+ /**
+ * Combines the radio buttons of password storage.
+ */
+ QButtonGroup* grpPasswordStorage;
+
+ /**
+ * Combines the radio buttons of secure transfer.
+ */
+ QButtonGroup* grpSecureTransfer;
+
+ protected slots:
+
+ /**
+ * Connected with the password button group.
+ * Enabled or disabled the password edit line.
+ * @param id button identifier
+ */
+ void slotPasswordStorageChanged( int id );
+
+ /**
+ * Connected with the secure transfer button group.
+ * Changes the port number.
+ * @param id button identifier
+ */
+ void slotSecureTransferChanged( int id );
+
+ /**
+ * Overwritten method of KDialogBase.
+ * Called if OK was clicked.
+ * Stores the entered values into the given account item.
+ * If no item was given it creates a new one.
+ * After then it invokes slotOk() of KDialogBase.
+ */
+ void slotOk();
+
+ protected:
+
+ /**
+ * Writes the values of the account into the dialog items.
+ */
+ void fillDialog();
+
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/accountsetupitem.cpp b/kshowmail/kcmconfigs/accountsetupitem.cpp
new file mode 100644
index 0000000..f9f8431
--- /dev/null
+++ b/kshowmail/kcmconfigs/accountsetupitem.cpp
@@ -0,0 +1,207 @@
+//
+// C++ Implementation: accountsetupitem
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "accountsetupitem.h"
+
+AccountSetupItem::AccountSetupItem( KListView* parent )
+ : KListViewItem( parent )
+{
+ init();
+
+}
+
+AccountSetupItem::AccountSetupItem( KListView * parent, QString & name )
+ : KListViewItem( parent )
+{
+ init();
+
+ //save account name
+ _account = name;
+
+ //set column text
+ setText( 0, getAccountName() );
+}
+
+AccountSetupItem::~AccountSetupItem()
+{
+}
+
+void AccountSetupItem::init( )
+{
+ //set default values
+ _account = DEFAULT_ACCOUNT_NAME;
+ _server = DEFAULT_ACCOUNT_SERVER;
+ _protocol = DEFAULT_ACCOUNT_PROTOCOL;
+ _port = DEFAULT_ACCOUNT_PORT_POP3;
+ _user = DEFAULT_ACCOUNT_USER;
+ _password = DEFAULT_ACCOUNT_PASSWORD;
+ _passwordStorage = DEFAULT_ACCOUNT_PASSWORD_STORAGE;
+ _active = DEFAULT_ACCOUNT_ACTIVE;
+ _transferSecurity = DEFAULT_ACCOUNT_SECTRANSFER;
+
+ //get application config object (kshowmailrc)
+ config = KApplication::kApplication()->config();
+}
+
+void AccountSetupItem::setAccountName( const QString & name )
+{
+ _account = name;
+}
+
+QString AccountSetupItem::getAccountName( ) const
+{
+ return _account;
+}
+
+void AccountSetupItem::setServer( const QString & server )
+{
+ _server = server;
+}
+
+QString AccountSetupItem::getServer( ) const
+{
+ return _server;
+}
+
+void AccountSetupItem::setProtocol( const QString & protocol )
+{
+ _protocol = protocol;
+}
+
+QString AccountSetupItem::getProtocol( ) const
+{
+ return _protocol;
+}
+
+void AccountSetupItem::setPort( int port )
+{
+ if( port >= 0 && port <= 65535 )
+ _port = port;
+ else
+ _port = DEFAULT_ACCOUNT_PORT_POP3;
+}
+
+int AccountSetupItem::getPort( ) const
+{
+ return _port;
+}
+
+void AccountSetupItem::setUser( const QString & user )
+{
+ _user = user;
+}
+
+QString AccountSetupItem::getUser( ) const
+{
+ return _user;
+}
+
+void AccountSetupItem::setPassword( const QString & password )
+{
+ _password = password;
+}
+
+QString AccountSetupItem::getPassword( ) const
+{
+ return _password;
+}
+
+void AccountSetupItem::setPasswordStorageType( int type )
+{
+ if( type == CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE || type == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE || type == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET )
+ _passwordStorage = type;
+ else
+ _passwordStorage = DEFAULT_ACCOUNT_PASSWORD_STORAGE;
+}
+
+int AccountSetupItem::getPasswordStorageType( ) const
+{
+ return _passwordStorage;
+}
+
+void AccountSetupItem::setActive( bool active )
+{
+ _active = active;
+}
+
+bool AccountSetupItem::getActive( ) const
+{
+ return _active;
+}
+
+void AccountSetupItem::save() const
+{
+ config->setGroup( getAccountName() );
+
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_NAME, getAccountName() );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_SERVER, getServer() );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PROTOCOL, getProtocol().upper() );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PORT, getPort() );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_USER, getUser() );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, getPasswordStorageType() );
+
+ //save crypted password
+ KURL url;
+ url.setUser( getUser() );
+ url.setHost( getServer() );
+ url.setPass( getPassword() );
+
+ if( getPasswordStorageType() == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE )
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, crypt( url ) );
+ else
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, QString::null );
+
+ //save password in KWallet if desired
+ if( getPasswordStorageType() == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET )
+ KWalletAccess::savePassword( getAccountName(), getPassword() );
+
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_ACTIVE, getActive() );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_SECTRANSFER, getTransferSecurity() );
+
+}
+
+void AccountSetupItem::load( )
+{
+ config->setGroup( getAccountName() );
+
+ _server = config->readEntry( CONFIG_ENTRY_ACCOUNT_SERVER, DEFAULT_ACCOUNT_SERVER );
+ _protocol = config->readEntry( CONFIG_ENTRY_ACCOUNT_PROTOCOL, DEFAULT_ACCOUNT_PROTOCOL );
+ _port = config->readNumEntry( CONFIG_ENTRY_ACCOUNT_PORT, DEFAULT_ACCOUNT_PORT_POP3 );
+ _user = config->readEntry( CONFIG_ENTRY_ACCOUNT_USER, DEFAULT_ACCOUNT_USER );
+ _passwordStorage = config->readNumEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, DEFAULT_ACCOUNT_PASSWORD_STORAGE );
+
+ if( _passwordStorage == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE )
+ _password = decrypt( config->readEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, DEFAULT_ACCOUNT_PASSWORD ) );
+ else if( _passwordStorage == CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET )
+ _password = KWalletAccess::getPassword( getAccountName() );
+ else
+ _password = QString::null;
+
+ _active = config->readBoolEntry( CONFIG_ENTRY_ACCOUNT_ACTIVE, DEFAULT_ACCOUNT_ACTIVE );
+ _transferSecurity = config->readNumEntry( CONFIG_ENTRY_ACCOUNT_SECTRANSFER, DEFAULT_ACCOUNT_SECTRANSFER );
+}
+
+void AccountSetupItem::setTransferSecurity( int type )
+{
+ if( type == CONFIG_VALUE_ACCOUNT_SECTRANSFER_NONE || type == CONFIG_VALUE_ACCOUNT_SECTRANSFER_SSL || type == CONFIG_VALUE_ACCOUNT_SECTRANSFER_TLS )
+ _transferSecurity = type;
+ else
+ _transferSecurity = DEFAULT_ACCOUNT_SECTRANSFER;
+}
+
+int AccountSetupItem::getTransferSecurity( ) const
+{
+ return _transferSecurity;
+}
+
+
+
+
diff --git a/kshowmail/kcmconfigs/accountsetupitem.h b/kshowmail/kcmconfigs/accountsetupitem.h
new file mode 100644
index 0000000..fe85eee
--- /dev/null
+++ b/kshowmail/kcmconfigs/accountsetupitem.h
@@ -0,0 +1,242 @@
+//
+// C++ Interface: accountsetupitem
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef ACCOUNTSETUPITEM_H
+#define ACCOUNTSETUPITEM_H
+
+//KDE headers
+#include <klistview.h>
+#include <kconfig.h>
+#include <kurl.h>
+#include <kapplication.h>
+
+//KShowmail headers
+#include "../constants.h"
+#include "encryption.h"
+#include "kwalletaccess.h"
+
+using namespace Encryption;
+
+/**
+ * @brief This class is used in ConfigAccounts to show the available accounts in the list view and to store an account setup.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class AccountSetupItem : public KListViewItem
+{
+ public:
+
+ /**
+ * General Constructor
+ * @param parent the list view
+ */
+ AccountSetupItem( KListView* parent );
+
+ /**
+ * Constructor
+ * @param parent the list view
+ * @param name account name
+ */
+ AccountSetupItem( KListView* parent, QString& name );
+
+ /**
+ * Destructor
+ */
+ ~AccountSetupItem();
+
+ /**
+ * Sets account name
+ * @param name account name
+ */
+ void setAccountName( const QString& name );
+
+ /**
+ * Returns the account name.
+ * @return account name
+ */
+ QString getAccountName() const;
+
+ /**
+ * Sets the server.
+ * @param server server
+ */
+ void setServer( const QString& server );
+
+ /**
+ * Returns the server.
+ * @return server
+ */
+ QString getServer() const;
+
+ /**
+ * Sets the protocol.
+ * @param protocol protocol
+ */
+ void setProtocol( const QString& protocol );
+
+ /**
+ * Returns the protocol.
+ * @return protocol
+ */
+ QString getProtocol() const;
+
+ /**
+ * Sets the port number.
+ * @param port port number
+ */
+ void setPort( int port );
+
+ /**
+ * Returns the port number.
+ * @return port number (0..65535)
+ */
+ int getPort() const;
+
+ /**
+ * Sets the user name.
+ * @param user user name
+ */
+ void setUser( const QString& user );
+
+ /**
+ * Returns the user name.
+ * @return user name
+ */
+ QString getUser() const;
+
+ /**
+ * Sets the password.
+ * @param password password
+ */
+ void setPassword( const QString& password );
+
+ /**
+ * Returns the password.
+ * @return password
+ */
+ QString getPassword() const;
+
+ /**
+ * Sets the password storage type.
+ * See constants.h for valid values
+ * @param type password storage type (CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE or CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET)
+ */
+ void setPasswordStorageType( int type );
+
+ /**
+ * Returns the password storage type.
+ * See constants.h for valid values (CONFIG_VALUE_ACCOUNT_PASSWORD_...)
+ * @return storage type
+ */
+ int getPasswordStorageType() const;
+
+ /**
+ * Sets whether the account is active.
+ * @param active TRUE - account is active; FALSE - account is not active
+ */
+ void setActive( bool active );
+
+ /**
+ * Returns whether the account is active.
+ * @return TRUE - account is active
+ * @return FALSE - account is not active
+ */
+ bool getActive() const;
+
+ /**
+ * Sets the transfer security.
+ * See constants.h for valid values.
+ * @param type transfer security type (CONFIG_VALUE_ACCOUNT_SECTRANSFER_NONE, CONFIG_VALUE_ACCOUNT_SECTRANSFER_SSL, CONFIG_VALUE_ACCOUNT_SECTRANSFER_TLS)
+ */
+ void setTransferSecurity( int type );
+
+ /**
+ * Returns the transfer security.
+ * seee constants.h for valid values (CONFIG_VALUE_ACCOUNT_SECTRANSFER_...)
+ * @return transfer security
+ */
+ int getTransferSecurity() const;
+
+ /**
+ * Saves this account into applications config.
+ * All values are placed in a group called like the account name.
+ */
+ void save() const;
+
+ /**
+ * Loads the options of this account from the application config.
+ */
+ void load();
+
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * Account name
+ */
+ QString _account;
+
+ /**
+ * Server
+ */
+ QString _server;
+
+ /**
+ * Protocol
+ */
+ QString _protocol;
+
+ /**
+ * Port
+ */
+ int _port;
+
+ /**
+ * User Name
+ */
+ QString _user;
+
+ /**
+ * Password
+ */
+ QString _password;
+
+ /**
+ * TRUE - account is active
+ */
+ bool _active;
+
+ /**
+ * password storage type
+ * Values are defined in constants.h (CONFIG_VALUE_ACCOUNT_PASSWORD_...)
+ */
+ int _passwordStorage;
+
+ /**
+ * transfer security
+ * Values are defined in constants.h (CONFIG_VALUE_ACCOUNT_SECTRANSFER_...)
+ */
+ int _transferSecurity;
+
+ protected:
+
+ /**
+ * Initializes the object.
+ */
+ void init();
+
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/configaccounts.cpp b/kshowmail/kcmconfigs/configaccounts.cpp
new file mode 100644
index 0000000..3cb6d6c
--- /dev/null
+++ b/kshowmail/kcmconfigs/configaccounts.cpp
@@ -0,0 +1,203 @@
+//
+// C++ Implementation: configaccounts
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "configaccounts.h"
+
+typedef KGenericFactory<ConfigAccounts, QWidget> ConfigAccountsFactory;
+
+K_EXPORT_COMPONENT_FACTORY( kcm_kshowmailconfigaccounts, ConfigAccountsFactory(
+ "kcm_kshowmailconfigaccounts" ) );
+
+ConfigAccounts::ConfigAccounts( QWidget * parent, const char * name, const QStringList & args )
+ : KCModule( ConfigAccountsFactory::instance(), parent, args )
+{
+ //set the module name
+ if ( !name )
+ setName( "configaccounts" );
+
+ //build GUI
+ //---------
+
+ //main layout
+ QHBoxLayout* layMain = new QHBoxLayout( this, 0, 10 );
+
+ //account list view
+ AccountListView = new KListView( this, "AccountListView" );
+ AccountListView->addColumn( i18n( "Name" ) );
+ AccountListView->setColumnWidthMode( 0, QListView::Maximum );
+ AccountListView->setResizeMode( QListView::LastColumn );
+
+ layMain->addWidget( AccountListView );
+
+ //button layout
+ QVBoxLayout* layButtons = new QVBoxLayout( layMain );
+
+ //Buttons
+ btnAdd = new KPushButton( KStdGuiItem::add(), this, "btnAdd" );
+ layButtons->addWidget( btnAdd );
+ btnAdd->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Maximum );
+ connect( btnAdd, SIGNAL( clicked() ), this, SLOT( slotAdd() ) );
+
+ btnEdit = new KPushButton( KStdGuiItem::configure(), this, "btnEdit" );
+ layButtons->addWidget( btnEdit );
+ btnEdit->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Maximum );
+ connect( btnEdit, SIGNAL( clicked() ), this, SLOT( slotEdit() ) );
+
+ btnRemove = new KPushButton( KStdGuiItem::remove(), this, "btnRemove" );
+ layButtons->addWidget( btnRemove );
+ btnRemove->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Maximum );
+ connect( btnRemove, SIGNAL( clicked() ), this, SLOT( slotRemove() ) );
+
+ layButtons->addItem( new QSpacerItem( 1, 1, QSizePolicy::Minimum, QSizePolicy::Expanding ) );
+
+
+ //get application config object (kshowmailrc)
+ config = KApplication::kApplication()->config();
+
+ //load configured values
+ load();
+
+}
+
+ConfigAccounts::~ConfigAccounts()
+{
+}
+
+void ConfigAccounts::load()
+{
+ //get list of account names
+ config->setGroup( CONFIG_GROUP_ACCOUNTS );
+ QStringList accounts = config->readListEntry( CONFIG_ENTRY_ACCOUNTS_LIST, QStringList() );
+
+ //create list view items and order accounts to load their config
+ for( QStringList::Iterator it = accounts.begin(); it != accounts.end(); ++it )
+ {
+ //create item
+ AccountSetupItem* item = new AccountSetupItem( AccountListView, *it );
+
+ //load item config
+ item->load();
+
+ }
+}
+
+void ConfigAccounts::save()
+{
+ config->setGroup( CONFIG_GROUP_ACCOUNTS );
+
+ //get old account list from config file to remove old account entries
+ QStringList oldList = config->readListEntry( CONFIG_ENTRY_ACCOUNTS_LIST, QStringList() );
+
+ //remove all account entries
+ for( QStringList::Iterator it = oldList.begin(); it != oldList.end(); ++it )
+ {
+ config->deleteGroup( *it );
+ }
+
+
+ //write a list with all account names into the config
+ QStringList accounts; //list of all account names
+ AccountSetupItem* item = NULL;
+ int index = 0;
+
+ do //get all account names
+ {
+ item = (AccountSetupItem*)( AccountListView->itemAtIndex( index ) );
+ if( item != NULL )
+ {
+ index++;
+ accounts.append( item->getAccountName() );
+ }
+ } while( item != NULL );
+
+ config->writeEntry( CONFIG_ENTRY_ACCOUNTS_LIST, accounts ); //write list of account names
+
+ //order the items to save their configuration
+ index = 0;
+ item = NULL;
+ do
+ {
+ item = (AccountSetupItem*)( AccountListView->itemAtIndex( index ) );
+ if( item != NULL )
+ {
+ index++;
+ item->save();
+ }
+ } while( item != NULL );
+
+ //write configuration to disk
+ config->sync();
+}
+
+void ConfigAccounts::defaults()
+{
+}
+
+void ConfigAccounts::slotChanged( )
+{
+ KCModule::changed();
+}
+
+void ConfigAccounts::slotAdd( )
+{
+ //open setup dialog
+ AccountSetupDialog* dlg = new AccountSetupDialog( this, AccountListView, NULL );
+ int res = dlg->exec();
+
+ //inform application setup dialog about changes
+ if( res == KDialogBase::Accepted )
+ slotChanged();
+
+ //delete dialog
+ delete dlg;
+}
+
+void ConfigAccounts::slotEdit( )
+{
+ //get selected item
+ AccountSetupItem* account = (AccountSetupItem*)( AccountListView->selectedItem() );
+
+ //test item
+ if( account == NULL )
+ return;
+
+ //open dialog
+ AccountSetupDialog* dlg = new AccountSetupDialog( this, AccountListView, account );
+ int res = dlg->exec();
+
+ //inform application setup dialog about changes
+ if( res == KDialogBase::Accepted )
+ slotChanged();
+
+ //delete dialog
+ delete dlg;
+}
+
+void ConfigAccounts::slotRemove( )
+{
+ //get selected item
+ AccountSetupItem* account = (AccountSetupItem*)( AccountListView->selectedItem() );
+
+ //test item
+ if( account == NULL )
+ return;
+
+ //remove item
+ int result = KMessageBox::questionYesNo( this, i18n( "Do you really want to remove account %1?").arg( account->getAccountName() ) );
+ if( result == KMessageBox::Yes )
+ {
+ delete account;
+ slotChanged();
+ }
+}
+
+
+#include "configaccounts.moc"
diff --git a/kshowmail/kcmconfigs/configaccounts.h b/kshowmail/kcmconfigs/configaccounts.h
new file mode 100644
index 0000000..e2f4e53
--- /dev/null
+++ b/kshowmail/kcmconfigs/configaccounts.h
@@ -0,0 +1,131 @@
+//
+// C++ Interface: configaccounts
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef CONFIGACCOUNTS_H
+#define CONFIGACCOUNTS_H
+
+//Qt headers
+#include <qlayout.h>
+
+//KDE headers
+#include <kcmodule.h>
+#include <kgenericfactory.h>
+#include <kapplication.h>
+#include <kconfig.h>
+#include <klistview.h>
+#include <kpushbutton.h>
+#include <kstdguiitem.h>
+#include <kmessagebox.h>
+
+//kshowmail headers
+#include "../constants.h"
+#include "accountsetupdialog.h"
+#include "accountsetupitem.h"
+
+/**
+ * @brief Part of the setup dialog (KShowMailApp::SetupDialog) to configure the accounts.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class ConfigAccounts : public KCModule
+{
+Q_OBJECT
+
+ public:
+
+ /**
+ * Generic Constructor
+ */
+ ConfigAccounts( QWidget *parent = 0, const char *name = 0, const QStringList &args = QStringList() );
+
+ /**
+ * Destructor
+ */
+ ~ConfigAccounts();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to reflect the current settings stored in the
+ * config file.
+ */
+ virtual void load();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to default values.
+ * This method is called when the user clicks the "Default" button.
+ */
+ virtual void defaults();
+
+ /**
+ * Overloaded method of KCModule.
+ * Stores the config information as shown in the user interface in the
+ * config file.
+ * Is called when the user clicks "Apply" or "Ok".
+ */
+ virtual void save();
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * Account List View
+ */
+ KListView* AccountListView;
+
+ /**
+ * Button to add a new account
+ */
+ KPushButton* btnAdd;
+
+ /**
+ * Button to edit an account
+ */
+ KPushButton* btnEdit;
+
+ /**
+ * Button to remove an account
+ */
+ KPushButton* btnRemove;
+
+ private slots:
+
+ /**
+ * Connected with the configuration items.
+ * Calls the slot changed() of KCModule to notify the dialog about the change.
+ */
+ void slotChanged();
+
+ /**
+ * Connected with button btnAdd.
+ * Opens the account setup dialog with an account item pointer of NULL.
+ * If the user has clicked OK, the dialog will create a new account item with
+ * the entered values and adds it to the list view.
+ */
+ void slotAdd();
+
+ /**
+ * Connected with button btnEdit.
+ * Opens the account setup with the selected account item.
+ */
+ void slotEdit();
+
+ /**
+ * Connected with button btnRemove.
+ * Removes the selected item.
+ */
+ void slotRemove();
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/configactions.cpp b/kshowmail/kcmconfigs/configactions.cpp
new file mode 100644
index 0000000..583d767
--- /dev/null
+++ b/kshowmail/kcmconfigs/configactions.cpp
@@ -0,0 +1,267 @@
+//
+// C++ Implementation: configactions
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "configactions.h"
+
+typedef KGenericFactory<ConfigActions, QWidget> ConfigActionsFactory;
+
+K_EXPORT_COMPONENT_FACTORY( kcm_kshowmailconfigactions, ConfigActionsFactory(
+ "kcm_kshowmailconfigactions" ) );
+
+ConfigActions::ConfigActions( QWidget * parent, const char * name, const QStringList & args )
+ : KCModule( ConfigActionsFactory::instance(), parent, args )
+{
+ //set the module name
+ if ( !name )
+ setName( "configactions" );
+
+ //build GUI
+ //---------
+
+ //main layout
+ QVBoxLayout* layMain = new QVBoxLayout( this, 0, 10 );
+
+ //two boxes to seperate the action if new mail or if no new mail
+ QGroupBox* gboxNewMails = new QGroupBox( 0, Qt::Horizontal, i18n( "Action if new &mail" ), this, "gboxNewMails" );
+ QGroupBox* gboxNoNewMails = new QGroupBox( 2, Qt::Vertical, i18n( "Action if &no mail" ), this, "gboxNoNewMails" );
+ gboxNoNewMails->layout()->setSpacing( 20 );
+ layMain->addWidget( gboxNewMails );
+ layMain->addWidget( gboxNoNewMails );
+
+ //layouts for the upper group box
+ QVBoxLayout* layMainNewMails = new QVBoxLayout( gboxNewMails->layout(), 10 );
+ QGridLayout* layMainNewMailsTop = new QGridLayout( layMainNewMails, 2, 2, 10 );
+ QGridLayout* layMainNewMailsDown = new QGridLayout( layMainNewMails, 2, 4, 10 );
+
+ //items for the upper group box
+ chkNewMailsAlertWindow = new QCheckBox( i18n( "Show message box" ), gboxNewMails, "chkNewMailsAlertWindow" );
+ QToolTip::add( chkNewMailsAlertWindow, i18n( "Show message if new mail arrives" ) );
+ layMainNewMailsTop->addWidget( chkNewMailsAlertWindow, 0, 0 );
+
+ chkNewMailsMainWindow = new QCheckBox( i18n( "Show main window" ), gboxNewMails, "chkNewMailsMainWindow" );
+ QToolTip::add( chkNewMailsMainWindow, i18n( "Show main window if new mail arrives" ) );
+ layMainNewMailsTop->addWidget( chkNewMailsMainWindow, 0, 1 );
+
+ chkNewMailsBeep = new QCheckBox( i18n( "&Beep" ), gboxNewMails, "chkNewMailsBeep" );
+ QToolTip::add( chkNewMailsBeep, i18n( "Beeps the internal speaker if new mail" ) );
+ layMainNewMailsTop->addWidget( chkNewMailsBeep, 1, 0 );
+
+ chkNewMailsSound = new QCheckBox( i18n( "Sound:" ), gboxNewMails, "chkNewMailsSound" );
+ QToolTip::add( chkNewMailsSound, i18n( "Plays sound if new mail" ) );
+ layMainNewMailsDown->addWidget( chkNewMailsSound, 0, 0 );
+
+ btnNewMailsPlaySound = new KPushButton( KGuiItem( QString(), QString( "player_play" ), i18n( "Play the selected sound file" ), i18n( "Play the selected sound file" ) ), gboxNewMails, "btnNewMailsPlaySound" );
+ layMainNewMailsDown->addWidget( btnNewMailsPlaySound, 0, 1 );
+
+ txtNewMailsSound = new KLineEdit( gboxNewMails, "txtNewMailsSound" );
+ layMainNewMailsDown->addWidget( txtNewMailsSound, 0, 2 );
+
+ btnNewMailsChooseSound = new KPushButton( KGuiItem( QString(), QString( "folder" ), i18n( "Press to select sound file" ), i18n( "Press to select sound file" ) ), gboxNewMails, "btnNewMailsChooseSound" );
+ layMainNewMailsDown->addWidget( btnNewMailsChooseSound, 0, 3 );
+
+ chkNewMailsCommand = new QCheckBox( i18n( "Command:" ), gboxNewMails, "chkNewMailsCommand" );
+ QToolTip::add( chkNewMailsCommand, i18n( "Starts external program if new mail" ) );
+ layMainNewMailsDown->addWidget( chkNewMailsCommand, 1, 0 );
+
+ btnNewMailsExecCommand = new KPushButton( KGuiItem( QString(), QString( "exec" ), i18n( "Start the selected program" ), i18n( "Start the selected program" ) ), gboxNewMails, "btnNewMailsExecCommand" );
+ layMainNewMailsDown->addWidget( btnNewMailsExecCommand, 1, 1 );
+
+ txtNewMailsCommand = new KLineEdit( gboxNewMails, "txtNewMailsCommand" );
+ layMainNewMailsDown->addWidget( txtNewMailsCommand, 1, 2 );
+
+ btnNewMailsChooseCommand = new KPushButton( KGuiItem( QString(), QString( "folder" ), i18n( "Select external command" ), i18n( "Select external command" ) ), gboxNewMails, "btnNewMailsChooseCommand" );
+ layMainNewMailsDown->addWidget( btnNewMailsChooseCommand, 1, 3 );
+
+ //items for the lower group box
+ chkNoNewMailsMinimize = new QCheckBox( i18n( "Minimi&ze" ), gboxNoNewMails, "chkNoNewMailsMinimize" );
+ QToolTip::add( chkNoNewMailsMinimize, i18n( "Minimize window if no new mail" ) );
+
+ chkNoNewMailsTerminate = new QCheckBox( i18n( "Terminate" ), gboxNoNewMails, "chkNoNewMailsTerminate" );
+ QToolTip::add( chkNoNewMailsTerminate, i18n( "Terminate kshowmail if no new mail" ) );
+
+ //connect file choose buttons
+ connect( btnNewMailsChooseSound, SIGNAL( clicked() ), this, SLOT( slotChooseSound() ) );
+ connect( btnNewMailsChooseCommand, SIGNAL( clicked() ), this, SLOT( slotChooseCommand() ) );
+
+ //connect test buttons
+ connect( btnNewMailsPlaySound, SIGNAL( clicked() ), this, SLOT( slotPlaySound() ) );
+ connect( btnNewMailsExecCommand, SIGNAL( clicked() ), this, SLOT( slotExecuteCommand() ) );
+
+ //connect sound and command check boxes to enable or disable the configuration items
+ connect( chkNewMailsSound, SIGNAL( toggled( bool ) ), this, SLOT( slotSoundToggled( bool ) ) );
+ connect( chkNewMailsCommand, SIGNAL( toggled( bool ) ), this, SLOT( slotCommandToggled( bool ) ) );
+
+ //connect all configuration items with slot changed() to notify the dialog about changes
+ connect( chkNewMailsAlertWindow, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkNewMailsMainWindow, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkNewMailsBeep, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkNewMailsSound, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkNewMailsCommand, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( txtNewMailsSound, SIGNAL( textChanged( const QString& ) ), this, SLOT( slotChanged() ) );
+ connect( txtNewMailsCommand, SIGNAL( textChanged( const QString& ) ), this, SLOT( slotChanged() ) );
+ connect( chkNoNewMailsMinimize, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkNoNewMailsTerminate, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+
+
+
+ //get application config object (kshowmailrc)
+ config = KApplication::kApplication()->config();
+
+ //load configured values
+ load();
+
+}
+
+
+ConfigActions::~ConfigActions()
+{
+}
+
+void ConfigActions::load( )
+{
+ config->setGroup( CONFIG_GROUP_ACTIONS );
+
+ chkNewMailsAlertWindow->setChecked( config->readBoolEntry( CONFIG_ENTRY_NEW_MAIL_ALERTWINDOW, DEFAULT_ACTION_NEW_MAIL_ALERTWINDOW ) );
+ chkNewMailsMainWindow->setChecked( config->readBoolEntry( CONFIG_ENTRY_NEW_MAIL_MAINWINDOW, DEFAULT_ACTION_NEW_MAIL_MAINWINDOW ) );
+ chkNewMailsBeep->setChecked( config->readBoolEntry( CONFIG_ENTRY_NEW_MAIL_BEEP, DEFAULT_ACTION_NEW_MAIL_BEEP ) );
+ chkNewMailsSound->setChecked( config->readBoolEntry( CONFIG_ENTRY_NEW_MAIL_SOUND, DEFAULT_ACTION_NEW_MAIL_SOUND ) );
+ chkNewMailsCommand->setChecked( config->readBoolEntry( CONFIG_ENTRY_NEW_MAIL_COMMAND, DEFAULT_ACTION_NEW_MAIL_COMMAND ) );
+ chkNoNewMailsTerminate->setChecked( config->readBoolEntry( CONFIG_ENTRY_NO_NEW_MAIL_TERMINATE, DEFAULT_ACTION_NO_NEW_MAIL_TERMINATE ) );
+ chkNoNewMailsMinimize->setChecked( config->readBoolEntry( CONFIG_ENTRY_NO_NEW_MAIL_MINIMIZE, DEFAULT_ACTION_NO_NEW_MAIL_MINIMIZE ) );
+
+ txtNewMailsSound->setText( config->readEntry( CONFIG_ENTRY_NEW_MAIL_SOUNDPATH ) );
+ txtNewMailsCommand->setText( config->readEntry( CONFIG_ENTRY_NEW_MAIL_COMMANDPATH ) );
+
+ //enable or disable configuration items of sound and command
+ slotSoundToggled( chkNewMailsSound->isChecked() );
+ slotCommandToggled( chkNewMailsCommand->isChecked() );
+}
+
+void ConfigActions::defaults( )
+{
+ chkNewMailsAlertWindow->setChecked( DEFAULT_ACTION_NEW_MAIL_ALERTWINDOW );
+ chkNewMailsMainWindow->setChecked( DEFAULT_ACTION_NEW_MAIL_MAINWINDOW );
+ chkNewMailsBeep->setChecked( DEFAULT_ACTION_NEW_MAIL_BEEP );
+ chkNewMailsSound->setChecked( DEFAULT_ACTION_NEW_MAIL_SOUND );
+ chkNewMailsCommand->setChecked( DEFAULT_ACTION_NEW_MAIL_COMMAND );
+ chkNoNewMailsTerminate->setChecked( DEFAULT_ACTION_NO_NEW_MAIL_TERMINATE );
+ chkNoNewMailsMinimize->setChecked( DEFAULT_ACTION_NO_NEW_MAIL_MINIMIZE );
+
+ //enable or disable configuration items of sound and command
+ slotSoundToggled( chkNewMailsSound->isChecked() );
+ slotCommandToggled( chkNewMailsCommand->isChecked() );
+}
+
+void ConfigActions::save( )
+{
+ config->setGroup( CONFIG_GROUP_ACTIONS );
+ config->writeEntry( CONFIG_ENTRY_NEW_MAIL_ALERTWINDOW, chkNewMailsAlertWindow->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_NEW_MAIL_MAINWINDOW, chkNewMailsMainWindow->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_NEW_MAIL_BEEP, chkNewMailsBeep->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_NEW_MAIL_SOUND, chkNewMailsSound->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_NEW_MAIL_SOUNDPATH, txtNewMailsSound->text() );
+ config->writeEntry( CONFIG_ENTRY_NEW_MAIL_COMMAND, chkNewMailsCommand->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_NEW_MAIL_COMMANDPATH, txtNewMailsCommand->text() );
+ config->writeEntry( CONFIG_ENTRY_NO_NEW_MAIL_TERMINATE, chkNoNewMailsTerminate->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_NO_NEW_MAIL_MINIMIZE, chkNoNewMailsMinimize->isChecked() );
+
+ //write configuration to disk
+ config->sync();
+}
+
+void ConfigActions::slotChooseSound( )
+{
+ QString startPath; //start path of the file dialog
+
+ //get sounds directory of kshowmail
+ KStandardDirs stdDirs;
+ QString soundPath = stdDirs.findResource( "data", "kshowmail/sounds/" );
+
+ //get start path of the file dialog
+ if( txtNewMailsSound->text() != "" )
+ {
+ startPath = txtNewMailsSound->text();
+ }
+ else if( soundPath != QString::null )
+ {
+ startPath = soundPath;
+ }
+ else
+ {
+ startPath = QString::null;
+ }
+
+ //open file dialog
+ QString path = KFileDialog::getOpenFileName( startPath, "*.wav *.ogg|" + i18n( "Sound files (*.wav, *.ogg)" ) + "\n*.*|" + i18n( "All files (*)" ), this, i18n("Select Sound File") );
+
+ //write selected path into the edit line
+ if( path != QString::null )
+ txtNewMailsSound->setText( path );
+}
+
+void ConfigActions::slotChooseCommand( )
+{
+ //open file dialog
+ QString path = KFileDialog::getOpenFileName( QString::null, "", this, i18n("Select external command") );
+
+ //write selected path into the edit line
+ if( path != QString::null )
+ txtNewMailsCommand->setText( path );
+}
+
+void ConfigActions::slotPlaySound( )
+{
+ QString path = txtNewMailsSound->text();
+
+ if( path != QString::null )
+ KAudioPlayer::play( path );
+}
+
+void ConfigActions::slotExecuteCommand( )
+{
+ QString path = txtNewMailsCommand->text();
+
+ if( path != QString::null )
+ {
+ KShellProcess proc; //process handler to execute the binary
+
+ proc << path;
+
+ proc.start( KShellProcess::DontCare );
+ }
+}
+
+void ConfigActions::slotSoundToggled( bool on )
+{
+ btnNewMailsPlaySound->setEnabled( on );
+ txtNewMailsSound->setEnabled( on );
+ btnNewMailsChooseSound->setEnabled( on );
+}
+
+void ConfigActions::slotCommandToggled( bool on )
+{
+ btnNewMailsExecCommand->setEnabled( on );
+ txtNewMailsCommand->setEnabled( on );
+ btnNewMailsChooseCommand->setEnabled( on );
+}
+
+void ConfigActions::slotChanged( )
+{
+ KCModule::changed();
+}
+
+
+#include "configactions.moc"
+
+
+
+
+
diff --git a/kshowmail/kcmconfigs/configactions.h b/kshowmail/kcmconfigs/configactions.h
new file mode 100644
index 0000000..901984f
--- /dev/null
+++ b/kshowmail/kcmconfigs/configactions.h
@@ -0,0 +1,202 @@
+//
+// C++ Interface: configactions
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef CONFIGACTIONS_H
+#define CONFIGACTIONS_H
+
+#include <string.h>
+
+//QT headers
+#include <qlayout.h>
+#include <qgroupbox.h>
+#include <qcheckbox.h>
+#include <qtooltip.h>
+
+//KDE headers
+#include <kcmodule.h>
+#include <kgenericfactory.h>
+#include <kpushbutton.h>
+#include <klineedit.h>
+#include <kdebug.h>
+#include <kapplication.h>
+#include <kfiledialog.h>
+#include <kaudioplayer.h>
+#include <kprocess.h>
+#include <kmessagebox.h>
+#include <kstandarddirs.h>
+
+//kshowmail headers
+#include "../constants.h"
+
+/**
+ * @brief Part of the setup dialog (KShowMailApp::SetupDialog) to configure the actions.
+ *
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class ConfigActions : public KCModule
+{
+Q_OBJECT
+
+ public:
+ /**
+ * Generic Constructor
+ */
+ ConfigActions( QWidget *parent = 0, const char *name = 0, const QStringList &args = QStringList() );
+
+ /**
+ * Destructor
+ */
+ ~ConfigActions();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to reflect the current settings stored in the
+ * config file.
+ */
+ virtual void load();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to default values.
+ * This method is called when the user clicks the "Default" button.
+ */
+ virtual void defaults();
+
+ /**
+ * Overloaded method of KCModule.
+ * Stores the config information as shown in the user interface in the
+ * config file.
+ * Is called when the user clicks "Apply" or "Ok".
+ */
+ virtual void save();
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * Check box to select whether an alert message will be shown if a new mail is arrived.
+ */
+ QCheckBox* chkNewMailsAlertWindow;
+
+ /**
+ * Check box to select whether the main window will be shown if a new mail is arrived.
+ */
+ QCheckBox* chkNewMailsMainWindow;
+
+ /**
+ * Check box to select whether the system beep will be played if a new mail is arrived.
+ */
+ QCheckBox* chkNewMailsBeep;
+
+ /**
+ * Check box to select whether a sound will be played if a new mail is arrived.
+ */
+ QCheckBox* chkNewMailsSound;
+
+ /**
+ * Check box to select whether a command will be executed if a new mail is arrived.
+ */
+ QCheckBox* chkNewMailsCommand;
+
+ /**
+ * Button to test the sound which will be played if a new mail is arrived.
+ */
+ KPushButton* btnNewMailsPlaySound;
+
+ /**
+ * Button to test the command which will be executed if a new mail is arrived.
+ */
+ KPushButton* btnNewMailsExecCommand;
+
+ /**
+ * Edit line which contains the path to the sound file which will be played if a new mail is arrived.
+ */
+ KLineEdit* txtNewMailsSound;
+
+ /**
+ * Edit line which contains the path to the command which will be executed if a new mail is arrived.
+ */
+ KLineEdit* txtNewMailsCommand;
+
+ /**
+ * Button to open a file dialog to choose the sound file which will be played if a new is arrived.
+ */
+ KPushButton* btnNewMailsChooseSound;
+
+ /**
+ * Button to open a file dialog to choose the command which will be executed if a new mail is arrived.
+ */
+ KPushButton* btnNewMailsChooseCommand;
+
+ /**
+ * Check box to select whether the main window will be minimized if no new mail is arrived.
+ */
+ QCheckBox* chkNoNewMailsMinimize;
+
+ /**
+ * Check box to select whether the application will be terminated if no new mail is arrived.
+ */
+ QCheckBox* chkNoNewMailsTerminate;
+
+ private slots:
+
+ /**
+ * Connected with button btnNewMailsChooseSound.
+ * Opens a file dialog to choose the sound file which will be played.
+ * Writes the chosen path into the edit line txtNewMailsSound.
+ */
+ void slotChooseSound();
+
+ /**
+ * Connected with button btnNewMailsChooseCommand.
+ * Opens a file dialog to choose the command which shall be executed.
+ * Writes the chosen path into the edit line txtNewMailsCommand.
+ */
+ void slotChooseCommand();
+
+ /**
+ * Connected with button btnNewMailsPlaySound.
+ * Plays the sound.
+ */
+ void slotPlaySound();
+
+ /**
+ * Connected with button btnNewMailsExecCommand.
+ * Executes the coommand.
+ */
+ void slotExecuteCommand();
+
+ /**
+ * Connected with check box chkNewMailsSound.
+ * Enable or disable the sound configuration items.
+ * @param on TRUE - box is checked; FALSE - box is not checked
+ */
+ void slotSoundToggled( bool on );
+
+ /**
+ * Connected with check box chkNewMailsCommand.
+ * Enable or disable the command configuration items.
+ * @param on TRUE - box is checked; FALSE - box is not checked
+ */
+ void slotCommandToggled( bool on );
+
+ /**
+ * Connected with the configuration items.
+ * Calls the slot changed() of KCModule to notify the dialog about the change.
+ */
+ void slotChanged();
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/configdisplay.cpp b/kshowmail/kcmconfigs/configdisplay.cpp
new file mode 100644
index 0000000..e93027c
--- /dev/null
+++ b/kshowmail/kcmconfigs/configdisplay.cpp
@@ -0,0 +1,221 @@
+//
+// C++ Implementation: configdisplay
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "configdisplay.h"
+
+typedef KGenericFactory<ConfigDisplay, QWidget> ConfigDisplayFactory;
+
+K_EXPORT_COMPONENT_FACTORY( kcm_kshowmailconfigdisplay, ConfigDisplayFactory(
+ "kcm_kshowmailconfigdisplay" ) );
+
+ConfigDisplay::ConfigDisplay( QWidget * parent, const char * name, const QStringList & args )
+ : KCModule( ConfigDisplayFactory::instance(), parent, args )
+{
+ //set the module name
+ if ( !name )
+ setName( "configdisplay" );
+
+ //build GUI
+ //---------
+
+ //main layout
+ QVBoxLayout* layMain = new QVBoxLayout( this, 0, 10 );
+
+ //group boxes
+ QGroupBox* gboxAccountlist = new QGroupBox( 0, Qt::Horizontal, i18n( "Account list" ), this, "gboxAccountlist" );
+ layMain->addWidget( gboxAccountlist );
+ QGroupBox* gboxMessagelist = new QGroupBox( 0, Qt::Horizontal, i18n( "Mail list" ), this, "gboxMessagelist" );
+ layMain->addWidget( gboxMessagelist );
+ QGroupBox* gboxMessageContent = new QGroupBox( 0, Qt::Horizontal, i18n( "Mail content" ), this, "gboxMessageContent" );
+ layMain->addWidget( gboxMessageContent );
+
+ //group box layouts
+ QGridLayout* layAccountlist = new QGridLayout( gboxAccountlist->layout(), 3, 2, 10 );
+ QGridLayout* layMessagelist = new QGridLayout( gboxMessagelist->layout(), 5, 2, 10 );
+ QGridLayout* layMessageContent = new QGridLayout( gboxMessageContent->layout(), 1, 1, 10 );
+
+ //create items
+ chkAccountlistActive = new QCheckBox( i18n( "Active" ), gboxAccountlist, "chkAccountlistActive" );
+ QToolTip::add( chkAccountlistActive, i18n( "To switch on/off the 'Active' column in the account list" ) );
+ layAccountlist->addWidget( chkAccountlistActive, 0, 0 );
+
+ chkAccountlistAccount = new QCheckBox( i18n( "Account" ), gboxAccountlist, "chkAccountlistAccount" );
+ QToolTip::add( chkAccountlistAccount, i18n( "To switch on/off the 'Account' column in the account list" ) );
+ layAccountlist->addWidget( chkAccountlistAccount, 0, 1 );
+
+ chkAccountlistServer = new QCheckBox( i18n( "Server" ), gboxAccountlist, "chkAccountlistServer" );
+ QToolTip::add( chkAccountlistServer, i18n( "To switch on/off the 'Server' column in the account list" ) );
+ layAccountlist->addWidget( chkAccountlistServer, 1, 0 );
+
+ chkAccountlistUser = new QCheckBox( i18n( "User" ), gboxAccountlist, "chkAccountlistUser" );
+ QToolTip::add( chkAccountlistUser, i18n( "To switch on/off the 'User' column in the account list" ) );
+ layAccountlist->addWidget( chkAccountlistUser, 1, 1 );
+
+ chkAccountlistMessages = new QCheckBox( i18n( "Messages" ), gboxAccountlist, "chkAccountlistMessages" );
+ QToolTip::add( chkAccountlistMessages, i18n( "To switch on/off the 'Messages' column in the account list" ) );
+ layAccountlist->addWidget( chkAccountlistMessages, 2, 0 );
+
+ chkAccountlistSize = new QCheckBox( i18n( "Si&ze" ), gboxAccountlist, "chkAccountlistSize" );
+ QToolTip::add( chkAccountlistSize, i18n( "To switch on/off the 'Size' column in the account list" ) );
+ layAccountlist->addWidget( chkAccountlistSize, 2, 1 );
+
+ chkMessagelistNumber = new QCheckBox( i18n( "Number" ), gboxMessagelist, "chkMessagelistNumber" );
+ QToolTip::add( chkMessagelistNumber, i18n( "To switch on/off the 'Number' column in the message list" ) );
+ layMessagelist->addWidget( chkMessagelistNumber, 0, 0 );
+
+ chkMessagelistAccount = new QCheckBox( i18n( "Account" ), gboxMessagelist, "chkMessagelistAccount" );
+ QToolTip::add( chkMessagelistAccount, i18n( "To switch on/off the 'Account' column in the message list" ) );
+ layMessagelist->addWidget( chkMessagelistAccount, 0, 1 );
+
+ chkMessagelistFrom = new QCheckBox( i18n( "From" ), gboxMessagelist, "chkMessagelistFrom" );
+ QToolTip::add( chkMessagelistFrom, i18n( "To switch on/off the 'From' column in the message list" ) );
+ layMessagelist->addWidget( chkMessagelistFrom, 1, 0 );
+
+ chkMessagelistTo = new QCheckBox( i18n( "To" ), gboxMessagelist, "chkMessagelistTo" );
+ QToolTip::add( chkMessagelistTo, i18n( "To switch on/off the 'To' column in the message list" ) );
+ layMessagelist->addWidget( chkMessagelistTo, 1, 1 );
+
+ chkMessagelistSubject = new QCheckBox( i18n( "Su&bject" ), gboxMessagelist, "chkMessagelistSubject" );
+ QToolTip::add( chkMessagelistSubject, i18n( "To switch on/off the 'Subject' column in the message list" ) );
+ layMessagelist->addWidget( chkMessagelistSubject, 2, 0 );
+
+ chkMessagelistDate = new QCheckBox( i18n( "Date" ), gboxMessagelist, "chkMessagelistDate" );
+ QToolTip::add( chkMessagelistDate, i18n( "To switch on/off the 'Date' column in the message list" ) );
+ layMessagelist->addWidget( chkMessagelistDate, 2, 1 );
+
+ chkMessagelistSize = new QCheckBox( i18n( "Size" ), gboxMessagelist, "chkMessagelistSize" );
+ QToolTip::add( chkMessagelistSize, i18n( "To switch on/off the 'Size' column in the message list" ) );
+ layMessagelist->addWidget( chkMessagelistSize, 3, 0 );
+
+ chkMessagelistContent = new QCheckBox( i18n( "Content" ), gboxMessagelist, "chkMessagelistContent" );
+ QToolTip::add( chkMessagelistContent, i18n( "To switch on/off the 'Content' column in the message list" ) );
+ layMessagelist->addWidget( chkMessagelistContent, 3, 1 );
+
+ chkMessagelistState = new QCheckBox( i18n( "State" ), gboxMessagelist, "chkMessagelistState" );
+ QToolTip::add( chkMessagelistState, i18n( "To switch on/off the 'State' column in the message list" ) );
+ layMessagelist->addWidget( chkMessagelistState, 4, 0 );
+
+ chkAllowHTML = new QCheckBox( i18n( "Allow HTML" ), gboxMessageContent, "chkAllowHTML" );
+ QToolTip::add( chkAllowHTML, i18n( "To switch on/off HTML in the message view") );
+ layMessageContent->addWidget( chkAllowHTML, 0, 0 );
+
+ //connect all configuration itmes with slot changed() to notify the dialog about changes
+ connect( chkAccountlistActive, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkAccountlistAccount, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkAccountlistServer, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkAccountlistUser, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkAccountlistMessages, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkAccountlistSize, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkMessagelistNumber, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkMessagelistAccount, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkMessagelistFrom, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkMessagelistTo, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkMessagelistSubject, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkMessagelistDate, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkMessagelistSize, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkMessagelistContent, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkMessagelistState, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkAllowHTML, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+
+
+ //get application config object (kshowmailrc)
+ config = KApplication::kApplication()->config();
+
+ //load configurated values
+ load();
+}
+
+ConfigDisplay::~ConfigDisplay()
+{
+}
+
+void ConfigDisplay::slotChanged( )
+{
+ KCModule::changed();
+}
+
+void ConfigDisplay::load( )
+{
+ config->setGroup( CONFIG_GROUP_ACCOUNT_LIST );
+ chkAccountlistActive->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_ACCOUNT_ACTIVE, DEFAULT_DISPLAY_ACCOUNT_ACTIVE ) );
+ chkAccountlistAccount->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_ACCOUNT_ACCOUNT, DEFAULT_DISPLAY_ACCOUNT_ACCOUNT ) );
+ chkAccountlistServer->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_ACCOUNT_SERVER, DEFAULT_DISPLAY_ACCOUNT_SERVER ) );
+ chkAccountlistUser->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_ACCOUNT_USER, DEFAULT_DISPLAY_ACCOUNT_USER ) );
+ chkAccountlistMessages->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_ACCOUNT_MESSAGES, DEFAULT_DISPLAY_ACCOUNT_MESSAGES ) );
+ chkAccountlistSize->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_ACCOUNT_SIZE, DEFAULT_DISPLAY_ACCOUNT_SIZE ) );
+
+ config->setGroup( CONFIG_GROUP_MESSAGE_LIST );
+ chkMessagelistNumber->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_NUMBER, DEFAULT_DISPLAY_MESSAGE_NUMBER ) );
+ chkMessagelistAccount->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_ACCOUNT, DEFAULT_DISPLAY_MESSAGE_ACCOUNT ) );
+ chkMessagelistFrom->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_FROM, DEFAULT_DISPLAY_MESSAGE_FROM ) );
+ chkMessagelistTo->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_TO, DEFAULT_DISPLAY_MESSAGE_TO ) );
+ chkMessagelistSubject->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_SUBJECT, DEFAULT_DISPLAY_MESSAGE_SUBJECT ) );
+ chkMessagelistDate->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_DATE, DEFAULT_DISPLAY_MESSAGE_DATE ) );
+ chkMessagelistSize->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_SIZE, DEFAULT_DISPLAY_MESSAGE_SIZE ) );
+ chkMessagelistContent->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_CONTENT, DEFAULT_DISPLAY_MESSAGE_CONTENT ) );
+ chkMessagelistState->setChecked( config->readBoolEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_STATE, DEFAULT_DISPLAY_MESSAGE_STATE ) );
+
+ config->setGroup( CONFIG_GROUP_VIEW );
+ chkAllowHTML->setChecked( config->readBoolEntry( CONFIG_ENTRY_VIEW_USE_HTML, DEFAULT_VIEW_USE_HTML ) );
+
+}
+
+void ConfigDisplay::save()
+{
+ config->setGroup( CONFIG_GROUP_ACCOUNT_LIST );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_ACCOUNT_ACTIVE, chkAccountlistActive->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_ACCOUNT_ACCOUNT, chkAccountlistAccount->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_ACCOUNT_SERVER, chkAccountlistServer->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_ACCOUNT_USER, chkAccountlistUser->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_ACCOUNT_MESSAGES, chkAccountlistMessages->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_ACCOUNT_SIZE, chkAccountlistSize->isChecked() );
+
+ config->setGroup( CONFIG_GROUP_MESSAGE_LIST );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_NUMBER, chkMessagelistNumber->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_ACCOUNT, chkMessagelistAccount->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_FROM, chkMessagelistFrom->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_TO, chkMessagelistTo->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_SUBJECT, chkMessagelistSubject->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_DATE, chkMessagelistDate->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_SIZE, chkMessagelistSize->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_CONTENT, chkMessagelistContent->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_DISPLAY_MESSAGE_STATE, chkMessagelistState->isChecked() );
+
+ config->setGroup( CONFIG_GROUP_VIEW );
+ config->writeEntry( CONFIG_ENTRY_VIEW_USE_HTML, chkAllowHTML->isChecked() );
+
+ //write configuration to disk
+ config->sync();
+}
+
+void ConfigDisplay::defaults()
+{
+ chkAccountlistActive->setChecked( DEFAULT_DISPLAY_ACCOUNT_ACTIVE );
+ chkAccountlistAccount->setChecked( DEFAULT_DISPLAY_ACCOUNT_ACCOUNT );
+ chkAccountlistServer->setChecked( DEFAULT_DISPLAY_ACCOUNT_SERVER );
+ chkAccountlistUser->setChecked( DEFAULT_DISPLAY_ACCOUNT_USER );
+ chkAccountlistMessages->setChecked( DEFAULT_DISPLAY_ACCOUNT_MESSAGES );
+ chkAccountlistSize->setChecked( DEFAULT_DISPLAY_ACCOUNT_SIZE );
+
+ chkMessagelistNumber->setChecked( DEFAULT_DISPLAY_MESSAGE_NUMBER );
+ chkMessagelistAccount->setChecked( DEFAULT_DISPLAY_MESSAGE_ACCOUNT );
+ chkMessagelistFrom->setChecked( DEFAULT_DISPLAY_MESSAGE_FROM );
+ chkMessagelistTo->setChecked( DEFAULT_DISPLAY_MESSAGE_TO );
+ chkMessagelistSubject->setChecked( DEFAULT_DISPLAY_MESSAGE_SUBJECT );
+ chkMessagelistDate->setChecked( DEFAULT_DISPLAY_MESSAGE_DATE );
+ chkMessagelistSize->setChecked( DEFAULT_DISPLAY_MESSAGE_SIZE );
+ chkMessagelistContent->setChecked( DEFAULT_DISPLAY_MESSAGE_CONTENT );
+ chkMessagelistState->setChecked( DEFAULT_DISPLAY_MESSAGE_STATE );
+
+ chkAllowHTML->setChecked( DEFAULT_VIEW_USE_HTML );
+
+}
+#include "configdisplay.moc"
diff --git a/kshowmail/kcmconfigs/configdisplay.h b/kshowmail/kcmconfigs/configdisplay.h
new file mode 100644
index 0000000..847b20b
--- /dev/null
+++ b/kshowmail/kcmconfigs/configdisplay.h
@@ -0,0 +1,169 @@
+//
+// C++ Interface: configdisplay
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef CONFIGDISPLAY_H
+#define CONFIGDISPLAY_H
+
+//Qt headers
+#include <qlayout.h>
+#include <qgroupbox.h>
+#include <qcheckbox.h>
+#include <qlabel.h>
+#include <qtooltip.h>
+
+//KDE headers
+#include <kcmodule.h>
+#include <kconfig.h>
+#include <kgenericfactory.h>
+#include <kapplication.h>
+
+//KShowmail headers
+#include <../constants.h>
+
+
+/**
+ * @brief Part of the setup dialog (KShowMailApp::SetupDialog) to configure the display.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class ConfigDisplay : public KCModule
+{
+Q_OBJECT
+
+ public:
+ /**
+ * Generic Constructor
+ */
+ ConfigDisplay( QWidget *parent = 0, const char *name = 0, const QStringList &args = QStringList() );
+
+ /**
+ * Destructor
+ */
+ ~ConfigDisplay();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to reflect the current settings stored in the
+ * config file.
+ */
+ virtual void load();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to default values.
+ * This method is called when the user clicks the "Default" button.
+ */
+ virtual void defaults();
+
+ /**
+ * Overloaded method of KCModule.
+ * Stores the config information as shown in the user interface in the
+ * config file.
+ * Is called when the user clicks "Apply" or "Ok".
+ */
+ virtual void save();
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * Check box to switch on/off the "Active" column in the account list.
+ */
+ QCheckBox* chkAccountlistActive;
+
+ /**
+ * Check box to switch on/off the "Account" column in the account list.
+ */
+ QCheckBox* chkAccountlistAccount;
+
+ /**
+ * Check box to switch on/off the "Server" column in the account list.
+ */
+ QCheckBox* chkAccountlistServer;
+
+ /**
+ * Check box to switch on/off the "User" column in the account list.
+ */
+ QCheckBox* chkAccountlistUser;
+
+ /**
+ * Check box to switch on/off the "Messages" column in the account list.
+ */
+ QCheckBox* chkAccountlistMessages;
+
+ /**
+ * Check box to switch on/off the "Size" column in the account list.
+ */
+ QCheckBox* chkAccountlistSize;
+
+ /**
+ * Check box to switch on/off the "Number" column in the message list.
+ */
+ QCheckBox* chkMessagelistNumber;
+
+ /**
+ * Check box to switch on/off the "Account" column in the message list.
+ */
+ QCheckBox* chkMessagelistAccount;
+
+ /**
+ * Check box to switch on/off the "From" column in the message list.
+ */
+ QCheckBox* chkMessagelistFrom;
+
+ /**
+ * Check box to switch on/off the "To" column in the message list.
+ */
+ QCheckBox* chkMessagelistTo;
+
+ /**
+ * Check box to switch on/off the "Subject" column in the message list.
+ */
+ QCheckBox* chkMessagelistSubject;
+
+ /**
+ * Check box to switch on/off the "Date" column in the message list.
+ */
+ QCheckBox* chkMessagelistDate;
+
+ /**
+ * Check box to switch on/off the "Size" column in the message list.
+ */
+ QCheckBox* chkMessagelistSize;
+
+ /**
+ * Check box to switch on/off the "Content" column in the message list.
+ */
+ QCheckBox* chkMessagelistContent;
+
+ /**
+ * Check box to switch on/off the "State" column in the message list.
+ */
+ QCheckBox* chkMessagelistState;
+
+ /**
+ * Check box to switch on/off HTML in the message view.
+ */
+ QCheckBox* chkAllowHTML;
+
+ public slots:
+
+ /**
+ * Connected with the configuration items.
+ * Calls the slot changed() of KCModule to notify the dialog about the change.
+ */
+ void slotChanged();
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/configfilter.cpp b/kshowmail/kcmconfigs/configfilter.cpp
new file mode 100644
index 0000000..c999361
--- /dev/null
+++ b/kshowmail/kcmconfigs/configfilter.cpp
@@ -0,0 +1,613 @@
+//
+// C++ Implementation: configfilter
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "configfilter.h"
+
+typedef KGenericFactory<ConfigFilter, QWidget> ConfigFilterFactory;
+
+K_EXPORT_COMPONENT_FACTORY( kcm_kshowmailconfigfilter, ConfigFilterFactory(
+ "kcm_kshowmailconfigfilter" ) );
+
+ConfigFilter::ConfigFilter( QWidget * parent, const char * name, const QStringList & args )
+ : KCModule( ConfigFilterFactory::instance(), parent, args )
+{
+ //set the module name
+ if ( !name )
+ setName( "configfilter" );
+
+ //build GUI
+ //---------
+
+ //main layout
+ QVBoxLayout* layMain = new QVBoxLayout( this, 0, 10 );
+
+ //check box to activate the filter
+ chkActivateFilter = new QCheckBox( i18n( "Activate Filter" ), this, "chkActivateFilter" );
+ layMain->addWidget( chkActivateFilter );
+ QToolTip::add( chkActivateFilter, i18n( "Check to activate the header filter." ) );
+ connect( chkActivateFilter, SIGNAL( toggled( bool ) ), this, SLOT( slotFilterActiveToggled( bool ) ) );
+ connect( chkActivateFilter, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+
+ //GUI of sender lists
+ //-------------------
+ gboxSenderLists = new QGroupBox( 0, Qt::Horizontal, i18n( "First Check: Sender Lists" ), this, "gboxSenderLists" );
+ QHBoxLayout* laySender = new QHBoxLayout( gboxSenderLists->layout(), 10 );
+ layMain->addWidget( gboxSenderLists );
+
+ btnOpenWhitelist = new KPushButton( KGuiItem( QString( i18n( "Whitelist") ), QString( "mail_forward" ) ), gboxSenderLists, "btnOpenWhitelist" );
+ QToolTip::add( btnOpenWhitelist, i18n( "Click here to edit the list of senders whose mails shall pass the filter." ) );
+ laySender->addWidget( btnOpenWhitelist );
+ laySender->setStretchFactor( btnOpenWhitelist, 3 );
+ btnOpenWhitelist->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Minimum ) );
+ connect( btnOpenWhitelist, SIGNAL( clicked() ), this, SLOT( slotOpenWhitelist() ) );
+
+ btnOpenBlacklist = new KPushButton( KGuiItem( QString( i18n( "Blacklist" ) ), QString( "mail_delete" ) ), gboxSenderLists, "btnOpenBlacklist" );
+ QToolTip::add( btnOpenBlacklist, i18n( "Click here to edit the list of senders whose mails shall be deleted or marked." ) );
+ laySender->addWidget( btnOpenBlacklist );
+ laySender->setStretchFactor( btnOpenBlacklist, 3 );
+ btnOpenBlacklist->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Minimum ) );
+ connect( btnOpenBlacklist, SIGNAL( clicked() ), this, SLOT( slotOpenBlacklist() ) );
+
+ laySender->insertStretch( 0, 2 );
+ laySender->insertStretch( 2, 2 );
+ laySender->insertStretch( 4, 2 );
+
+ //GUI of filters
+ //--------------
+ gboxFilters = new QGroupBox( 0, Qt::Horizontal, i18n( "Second Check: Filters" ), this, "gboxFilters" );
+ QHBoxLayout* layFilters = new QHBoxLayout( gboxFilters->layout(), 10 );
+ layMain->addWidget( gboxFilters );
+
+ listFilters = new KListView( gboxFilters, "listFilters" );
+ listFilters->addColumn( i18n( "No." ) );
+ listFilters->addColumn( i18n( "Name" ) );
+ listFilters->addColumn( i18n( "Action" ) );
+ layFilters->addWidget( listFilters );
+ listFilters->setColumnWidthMode( 0, QListView::Maximum );
+ listFilters->setColumnWidthMode( 1, QListView::Maximum );
+ listFilters->setColumnWidthMode( 2, QListView::Maximum );
+ listFilters->setResizeMode( QListView::LastColumn );
+ listFilters->setColumnAlignment( 0, Qt::AlignHCenter );
+ listFilters->setSorting( 0 ); //the list is sorted by filter number
+ listFilters->setAllColumnsShowFocus( true );
+
+ QVBoxLayout* layFiltersButtons = new QVBoxLayout( layFilters, 10 );
+ btnAdd = new KPushButton( KStdGuiItem::add(), gboxFilters, "btnAdd" );
+ btnEdit = new KPushButton( KStdGuiItem::configure(), gboxFilters, "btnEdit" );
+ btnRemove = new KPushButton( KStdGuiItem::remove(), gboxFilters, "btnRemove" );
+ btnMoveTop = new KPushButton( KGuiItem( "", "top", i18n( "Moves the selected filter at the top" ) ), gboxFilters, "btnMoveTop" );
+ btnMoveUp = new KPushButton( KGuiItem( "", "up", i18n( "Moves the selected filter up" ) ), gboxFilters, "btnMoveUp" );
+ btnMoveDown = new KPushButton( KGuiItem( "", "down", i18n( "Moves the selected filter down" ) ), gboxFilters, "btnMoveDown" );
+ btnMoveBottom = new KPushButton( KGuiItem( "", "bottom", i18n( "Moves the selected filter at the bottm" ) ), gboxFilters, "btnMoveBottom" );
+ btnAdd->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Maximum );
+ btnEdit->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Maximum );
+ btnRemove->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Maximum );
+ btnMoveTop->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Maximum );
+ btnMoveUp->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Maximum );
+ btnMoveDown->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Maximum );
+ btnMoveBottom->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Maximum );
+ layFiltersButtons->addWidget( btnAdd );
+ layFiltersButtons->addWidget( btnEdit );
+ layFiltersButtons->addWidget( btnRemove );
+ layFiltersButtons->addItem( new QSpacerItem( 1, 1, QSizePolicy::Minimum, QSizePolicy::Expanding ) );
+ layFiltersButtons->addWidget( btnMoveTop );
+ layFiltersButtons->addWidget( btnMoveUp );
+ layFiltersButtons->addWidget( btnMoveDown );
+ layFiltersButtons->addWidget( btnMoveBottom );
+ connect( btnAdd, SIGNAL( clicked() ), this, SLOT( slotAdd() ) );
+ connect( btnEdit, SIGNAL( clicked() ), this, SLOT( slotEdit() ) );
+ connect( btnRemove, SIGNAL( clicked() ), this, SLOT( slotRemove() ) );
+ connect( btnMoveTop, SIGNAL( clicked() ), this, SLOT( slotMoveTop() ) );
+ connect( btnMoveBottom, SIGNAL( clicked() ), this, SLOT( slotMoveBottom() ) );
+ connect( btnMoveUp, SIGNAL( clicked() ), this, SLOT( slotMoveUp() ) );
+ connect( btnMoveDown, SIGNAL( clicked() ), this, SLOT( slotMoveDown() ) );
+
+
+ //GUI of Others
+ //-------------
+ gboxOthers = new QGroupBox( 0, Qt::Horizontal, i18n( "Third Check: Action for all others" ), this, "gboxOthers" );
+ QHBoxLayout* layOthers = new QHBoxLayout( gboxOthers->layout(), 10 );
+ layMain->addWidget( gboxOthers );
+
+ //create combobox to select action
+ cmbActionOthers = new KComboBox( gboxOthers, "cmbActionOthers" );
+ layOthers->addWidget( cmbActionOthers );
+ QToolTip::add( cmbActionOthers, i18n( "Choose the action for all mails which are not filtered by the steps before." ) );
+ connect( cmbActionOthers, SIGNAL( activated( int ) ), this, SLOT( slotOtherActionChanged( int ) ) );
+ connect( cmbActionOthers, SIGNAL( activated( int ) ), this, SLOT( slotChanged() ) );
+
+ //insert items
+ cmbActionOthers->insertItem( i18n( "Show" ), ID_COMBO_FILTER_OTHERS_ACTION_PASS );
+ cmbActionOthers->insertItem( i18n( "Delete" ), ID_COMBO_FILTER_OTHERS_ACTION_DELETE );
+ cmbActionOthers->insertItem( i18n( "Mark" ), ID_COMBO_FILTER_OTHERS_ACTION_MARK );
+ cmbActionOthers->insertItem( i18n( "Move" ), ID_COMBO_FILTER_OTHERS_ACTION_MOVE );
+ cmbActionOthers->insertItem( i18n( "Spamcheck" ), ID_COMBO_FILTER_OTHERS_ACTION_SPAMCHECK );
+ cmbActionOthers->insertItem( i18n( "Ignore" ), ID_COMBO_FILTER_OTHERS_ACTION_IGNORE );
+
+ //create edit line to defined the mailbox for move
+ txtMailbox = new KLineEdit( gboxOthers );
+ layOthers->addWidget( txtMailbox );
+ connect( txtMailbox, SIGNAL( textChanged( const QString & ) ), this, SLOT( slotChanged() ) );
+
+ //create wizard button to configure mailbox
+ btnMailboxWizard= new KPushButton( KGuiItem( QString::null, "wizard" ), gboxOthers );
+ layOthers->addWidget( btnMailboxWizard );
+ QToolTip::add( btnMailboxWizard, i18n( "Choose the mailbox" ) );
+ connect( btnMailboxWizard, SIGNAL( clicked() ), this, SLOT( slotOpenMailBoxWizard() ) );
+
+ //set defaults
+ switch( DEFAULT_FILTER_OTHERS_ACTION )
+ {
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_PASS : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_PASS ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_DELETE : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_DELETE ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_MARK : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_MARK ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_MOVE : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_MOVE ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_IGNORE : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_IGNORE ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_SPAMCHECK : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_SPAMCHECK ); break;
+ }
+ chkActivateFilter->setChecked( DEFAULT_FILTER_ACTIVE );
+
+ //enable or disable widgets
+ slotOtherActionChanged( cmbActionOthers->currentItem() );
+ slotFilterActiveToggled( DEFAULT_FILTER_ACTIVE );
+
+ //get application config object (kshowmailrc)
+ config = KApplication::kApplication()->config();
+
+ //init counter for filter item numbering. This variable contains the last assigned number of a filter setup item.
+ //Because it is initialized with zero, the first filter number is 1.
+ lastFilterNumber = 0;
+
+ //load configured values
+ load();
+}
+
+
+ConfigFilter::~ConfigFilter()
+{
+}
+
+void ConfigFilter::load( )
+{
+ config->setGroup( CONFIG_GROUP_FILTER );
+
+ //load filter active state
+ chkActivateFilter->setChecked( config->readBoolEntry( CONFIG_ENTRY_FILTER_ACTIVE, DEFAULT_FILTER_ACTIVE ) );
+ slotFilterActiveToggled( chkActivateFilter->isOn() );
+
+ //load other action
+ switch( config->readNumEntry( CONFIG_ENTRY_FILTER_OTHERS_ACTION, DEFAULT_FILTER_OTHERS_ACTION ) )
+ {
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_PASS : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_PASS ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_DELETE : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_DELETE ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_MARK : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_MARK ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_MOVE : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_MOVE ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_IGNORE : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_IGNORE ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_SPAMCHECK : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_SPAMCHECK ); break;
+ }
+
+ //get mailbox name
+ if( config->readNumEntry( CONFIG_ENTRY_FILTER_OTHERS_ACTION, DEFAULT_FILTER_OTHERS_ACTION ) == CONFIG_VALUE_FILTER_OTHERS_ACTION_MOVE )
+ txtMailbox->setText( config->readEntry( CONFIG_ENTRY_FILTER_OTHERS_MAILBOX, DEFAULT_FILTER_ACTION_MOVE_MAILBOX ) );
+ else
+ txtMailbox->clear();
+
+ //enable or disable widgets for other action
+ slotOtherActionChanged( cmbActionOthers->currentItem() );
+
+ //get number of filters
+ uint numFilters = config->readNumEntry( CONFIG_ENTRY_FILTER_NUMBER_OF_FILTERS, 0 );
+
+ //create filter setup items and load theirs settings
+ for( uint ctr = 1; ctr <= numFilters; ctr++ )
+ {
+ //create filter item
+ FilterSetupItem* item = new FilterSetupItem( listFilters, ctr );
+
+ //load settings
+ item->load();
+ }
+
+ //set filter index counter
+ lastFilterNumber = numFilters;
+}
+
+void ConfigFilter::defaults( )
+{
+ switch( DEFAULT_FILTER_OTHERS_ACTION )
+ {
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_PASS : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_PASS ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_DELETE : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_DELETE ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_MARK : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_MARK ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_MOVE : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_MOVE ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_IGNORE : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_IGNORE ); break;
+ case CONFIG_VALUE_FILTER_OTHERS_ACTION_SPAMCHECK : cmbActionOthers->setCurrentItem( ID_COMBO_FILTER_OTHERS_ACTION_SPAMCHECK ); break;
+ }
+
+ if( DEFAULT_FILTER_OTHERS_ACTION == CONFIG_VALUE_FILTER_OTHERS_ACTION_MOVE )
+ txtMailbox->setText( QString( DEFAULT_FILTER_ACTION_MOVE_MAILBOX ) );
+ else
+ txtMailbox->clear();
+
+ //enable or disable widgets for other action
+ slotOtherActionChanged( cmbActionOthers->currentItem() );
+
+ slotChanged();
+}
+
+void ConfigFilter::save( )
+{
+ config->setGroup( CONFIG_GROUP_FILTER );
+
+ //save filter active state
+ config->writeEntry( CONFIG_ENTRY_FILTER_ACTIVE, chkActivateFilter->isOn() );
+
+ //save other action
+ switch( cmbActionOthers->currentItem() )
+ {
+ case ID_COMBO_FILTER_OTHERS_ACTION_PASS : config->writeEntry( CONFIG_ENTRY_FILTER_OTHERS_ACTION, CONFIG_VALUE_FILTER_OTHERS_ACTION_PASS ); break;
+ case ID_COMBO_FILTER_OTHERS_ACTION_DELETE : config->writeEntry( CONFIG_ENTRY_FILTER_OTHERS_ACTION, CONFIG_VALUE_FILTER_OTHERS_ACTION_DELETE ); break;
+ case ID_COMBO_FILTER_OTHERS_ACTION_MARK : config->writeEntry( CONFIG_ENTRY_FILTER_OTHERS_ACTION, CONFIG_VALUE_FILTER_OTHERS_ACTION_MARK ); break;
+ case ID_COMBO_FILTER_OTHERS_ACTION_MOVE : config->writeEntry( CONFIG_ENTRY_FILTER_OTHERS_ACTION, CONFIG_VALUE_FILTER_OTHERS_ACTION_MOVE ); break;
+ case ID_COMBO_FILTER_OTHERS_ACTION_IGNORE : config->writeEntry( CONFIG_ENTRY_FILTER_OTHERS_ACTION, CONFIG_VALUE_FILTER_OTHERS_ACTION_IGNORE ); break;
+ case ID_COMBO_FILTER_OTHERS_ACTION_SPAMCHECK : config->writeEntry( CONFIG_ENTRY_FILTER_OTHERS_ACTION, CONFIG_VALUE_FILTER_OTHERS_ACTION_SPAMCHECK ); break;
+ default : config->writeEntry( CONFIG_ENTRY_FILTER_OTHERS_ACTION, DEFAULT_FILTER_OTHERS_ACTION ); break;
+ }
+
+ //save mailbox name
+ if( cmbActionOthers->currentItem() == ID_COMBO_FILTER_OTHERS_ACTION_MOVE )
+ {
+ config->writeEntry( CONFIG_ENTRY_FILTER_OTHERS_MAILBOX, txtMailbox->text() );
+ }
+ else
+ {
+ config->deleteEntry( CONFIG_ENTRY_FILTER_OTHERS_MAILBOX );
+ }
+
+ //get old number of filters
+ uint oldNumFilter = config->readNumEntry( CONFIG_ENTRY_FILTER_NUMBER_OF_FILTERS, 0 );
+
+ //save current number of filters
+ config->writeEntry( CONFIG_ENTRY_FILTER_NUMBER_OF_FILTERS, lastFilterNumber );
+
+ //delete surplus filter configurations
+ if( oldNumFilter > lastFilterNumber )
+ {
+ for( uint ctr = lastFilterNumber + 1; ctr <= oldNumFilter; ctr++ )
+ {
+ config->deleteGroup( QString( "%1%2" ).arg( CONFIG_GROUP_FILTER ).arg( ctr ) );
+ }
+ }
+
+ //save the filters
+ QListViewItemIterator it( listFilters );
+
+ while( it.current() )
+ {
+ ( (FilterSetupItem*)it.current() )->save();
+
+ //get next item
+ ++it;
+ }
+
+
+ config->sync();
+}
+
+void ConfigFilter::slotChanged( )
+{
+ KCModule::changed();
+}
+
+void ConfigFilter::slotOpenWhitelist( )
+{
+ //open list dialog
+ SenderListDialog* dlg = new SenderListDialog( this, SenderListDialog::White, "dlgWhiteList" );
+ dlg->exec();
+
+ //delete dialog
+ delete dlg;
+}
+
+void ConfigFilter::slotOpenBlacklist( )
+{
+ //open list dialog
+ SenderListDialog* dlg = new SenderListDialog( this, SenderListDialog::Black, "dlgBlackList" );
+ dlg->exec();
+
+ //delete dialog
+ delete dlg;
+}
+
+void ConfigFilter::slotAdd( )
+{
+ //create a new filter setup item
+ FilterSetupItem* item = new FilterSetupItem( listFilters , lastFilterNumber + 1 );
+
+ //open setup dialog
+ FilterSetupDialog* dlg = new FilterSetupDialog( this, item );
+ int res = dlg->exec();
+
+ if( res == KDialogBase::Accepted )
+ {
+ //inform application setup dialog about changes
+ slotChanged();
+
+ //increase variable for the last assigned filter number
+ lastFilterNumber++;
+ }
+ else
+ //delete new item because the user don't want it
+ delete item;
+
+ //delete dialog
+ delete dlg;
+}
+
+void ConfigFilter::slotEdit( )
+{
+ //get selected item
+ FilterSetupItem* item = (FilterSetupItem*)listFilters->selectedItem();
+
+ //return if no item selected
+ if( item == NULL ) return;
+
+ //open setup dialog
+ FilterSetupDialog* dlg = new FilterSetupDialog( this, item );
+ int res = dlg->exec();
+
+ //inform application setup dialog about changes
+ if( res == KDialogBase::Accepted )
+ slotChanged();
+
+ //delete dialog
+ delete dlg;
+
+}
+
+void ConfigFilter::slotRemove( )
+{
+ //get selected item
+ FilterSetupItem* item = (FilterSetupItem*)listFilters->selectedItem();
+
+ if( item != NULL )
+ {
+ //get number of the item
+ uint num = item->getNumber();
+
+ //delete item
+ delete item;
+
+ //decrease the number of all filter items after the removed one
+ decreaseNumbers( num + 1 );
+
+ //decrease last assigned number
+ lastFilterNumber--;
+
+ //inform application setup dialog about changes
+ slotChanged();
+ }
+}
+
+void ConfigFilter::slotOtherActionChanged( int index )
+{
+ switch( index )
+ {
+ case ID_COMBO_FILTER_OTHERS_ACTION_MOVE : txtMailbox->setEnabled( true );
+ if( txtMailbox->text() == "" ) txtMailbox->setText( DEFAULT_FILTER_ACTION_MOVE_MAILBOX );
+ btnMailboxWizard->setHidden( false );
+ break;
+ default : txtMailbox->setEnabled( false );
+ btnMailboxWizard->setHidden( true );
+ break;
+ }
+}
+
+void ConfigFilter::decreaseNumbers( uint number )
+{
+ //get an iterator of the list view
+ QListViewItemIterator it( listFilters );
+
+ //iterate over the filter list
+ while( it.current() )
+ {
+ //get number of current filter item
+ uint curNumber = ( (FilterSetupItem*)it.current() )->getNumber();
+
+ //decrease current number, if the given number is lesser or equals
+ if( curNumber >= number && curNumber > 0 )
+ ( (FilterSetupItem*)it.current() )->setNumber( curNumber - 1 );
+
+ //get next item
+ ++it;
+ }
+}
+
+void ConfigFilter::slotMoveTop( )
+{
+ //get selected item
+ FilterSetupItem* item = (FilterSetupItem*)listFilters->selectedItem();
+
+ if( item != NULL )
+ {
+ //get number of the item
+ uint num = item->getNumber();
+
+ if( num > 1 )
+ {
+ //set number of the selected to zero, this will move it at the top
+ item->setNumber( 0 );
+
+ //now we move all items after the old position one step up
+ decreaseNumbers( num + 1 );
+
+ //at last we add one to all numbers
+ QListViewItemIterator it( listFilters );
+
+ while( it.current() )
+ {
+ uint curNumber = ( (FilterSetupItem*)it.current() )->getNumber();
+ ( (FilterSetupItem*)it.current() )->setNumber( curNumber + 1 );
+
+ ++it;
+ }
+
+ //refresh list view
+ listFilters->sort();
+
+ //inform application setup dialog about changes
+ slotChanged();
+
+ }
+ }
+
+
+}
+
+void ConfigFilter::slotMoveBottom( )
+{
+ //get selected item
+ FilterSetupItem* item = (FilterSetupItem*)listFilters->selectedItem();
+
+ if( item != NULL )
+ {
+ //get number of the item
+ uint num = item->getNumber();
+
+ if( num < lastFilterNumber )
+ {
+ //move the selected item at the bottom
+ item->setNumber( lastFilterNumber + 1 );
+
+ //move all items after the old position one step up (decrease number)
+ decreaseNumbers( num + 1 );
+
+ //refresh list view
+ listFilters->sort();
+
+ //inform application setup dialog about changes
+ slotChanged();
+ }
+
+ }
+}
+
+void ConfigFilter::slotMoveUp( )
+{
+ //get selected item
+ FilterSetupItem* item = (FilterSetupItem*)listFilters->selectedItem();
+
+ if( item != NULL )
+ {
+ //get number of the item
+ uint num = item->getNumber();
+
+ if( num > 1 )
+ {
+ //get item before the selected one
+ FilterSetupItem* itemBefore = getFilterItem( num - 1 );
+
+ if( itemBefore != NULL )
+ {
+ //swap numbers
+ item->setNumber( num - 1 );
+ itemBefore->setNumber( num );
+
+ //inform application setup dialog about changes
+ slotChanged();
+
+ }
+ }
+ //refresh list view
+ listFilters->sort();
+ }
+}
+
+void ConfigFilter::slotMoveDown( )
+{
+ //get selected item
+ FilterSetupItem* item = (FilterSetupItem*)listFilters->selectedItem();
+
+ if( item != NULL )
+ {
+ //get number of the item
+ uint num = item->getNumber();
+
+ if( num < lastFilterNumber )
+ {
+ //get item behind the selected one
+ FilterSetupItem* itemBehind = getFilterItem( num + 1 );
+
+ if( itemBehind != NULL )
+ {
+ //swap numbers
+ item->setNumber( num + 1 );
+ itemBehind->setNumber( num );
+
+ //inform application setup dialog about changes
+ slotChanged();
+
+ }
+ }
+ //refresh list view
+ listFilters->sort();
+ }
+}
+
+FilterSetupItem* ConfigFilter::getFilterItem( uint num )
+{
+ FilterSetupItem* foundItem = NULL;
+ bool found = false;
+
+ //get Iterator
+ QListViewItemIterator it( listFilters );
+
+ //iterate over th elist to look for the item
+ while( it.current() && !found )
+ {
+ //get current number
+ uint curNumber = ( (FilterSetupItem*)it.current() )->getNumber();
+
+ //have we found it?
+ if( curNumber == num )
+ {
+ foundItem = (FilterSetupItem*)it.current();
+
+ found = true;
+ }
+
+ ++it;
+ }
+
+ return foundItem;
+}
+
+void ConfigFilter::slotFilterActiveToggled( bool filterOn )
+{
+ gboxSenderLists->setEnabled( filterOn );
+ gboxFilters->setEnabled( filterOn );
+ gboxOthers->setEnabled( filterOn );
+}
+
+void ConfigFilter::slotOpenMailBoxWizard( )
+{
+ MailBoxWizard wizard( this, "malboxwizard" );
+ wizard.setCaption( i18n( "Mailbox Select" ) );
+ int res = wizard.exec();
+
+ if( res == QDialog::Accepted )
+ txtMailbox->setText( wizard.getPath() );
+
+}
+
+
+
+#include "configfilter.moc"
diff --git a/kshowmail/kcmconfigs/configfilter.h b/kshowmail/kcmconfigs/configfilter.h
new file mode 100644
index 0000000..9d37c82
--- /dev/null
+++ b/kshowmail/kcmconfigs/configfilter.h
@@ -0,0 +1,288 @@
+//
+// C++ Interface: configfilter
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef CONFIGFILTER_H
+#define CONFIGFILTER_H
+
+//QT headers
+#include <qlayout.h>
+#include <qgroupbox.h>
+#include <qtooltip.h>
+#include <qcheckbox.h>
+
+//KDE headers
+#include <kcmodule.h>
+#include <kconfig.h>
+#include <kgenericfactory.h>
+#include <kapplication.h>
+#include <klistview.h>
+#include <kpushbutton.h>
+#include <kcombobox.h>
+#include <klineedit.h>
+
+//Kshowmail headers
+#include "../constants.h"
+#include "senderlistdialog.h"
+#include "filtersetupdialog.h"
+#include "mailboxwizard.h"
+
+//radio button IDs
+#define ID_COMBO_FILTER_OTHERS_ACTION_PASS 0
+#define ID_COMBO_FILTER_OTHERS_ACTION_DELETE 1
+#define ID_COMBO_FILTER_OTHERS_ACTION_MARK 2
+#define ID_COMBO_FILTER_OTHERS_ACTION_MOVE 3
+#define ID_COMBO_FILTER_OTHERS_ACTION_SPAMCHECK 4
+#define ID_COMBO_FILTER_OTHERS_ACTION_IGNORE 5
+
+
+/**
+ * @brief Part of the setup dialog (KShowMailApp::SetupDialog) to configure the filter.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class ConfigFilter : public KCModule
+{
+Q_OBJECT
+
+ public:
+
+ /**
+ * Generic constructor
+ */
+ ConfigFilter( QWidget* parent = 0, const char* name = 0, const QStringList &args = QStringList() );
+
+ /**
+ * Destructor
+ */
+ ~ConfigFilter();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to reflect the current settings stored in the
+ * config file.
+ */
+ virtual void load();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to default values.
+ * This method is called when the user clicks the "Default" button.
+ */
+ virtual void defaults();
+
+ /**
+ * Overloaded method of KCModule.
+ * Stores the config information as shown in the user interface in the
+ * config file.
+ * Is called when the user clicks "Apply" or "Ok".
+ */
+ virtual void save();
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * Check box to activate the filter
+ */
+ QCheckBox* chkActivateFilter;
+
+ /**
+ * Group box for sender lists.
+ */
+ QGroupBox* gboxSenderLists;
+
+ /**
+ * Group box for filter items.
+ */
+ QGroupBox* gboxFilters;
+
+ /**
+ * Group box for other action.
+ */
+ QGroupBox* gboxOthers;
+
+ /**
+ * Button to open the Blacklist.
+ */
+ KPushButton* btnOpenBlacklist;
+
+ /**
+ * Button to open the Whitelist.
+ */
+ KPushButton* btnOpenWhitelist;
+
+ /**
+ * List of filters
+ */
+ KListView* listFilters;
+
+ /**
+ * Button to move a filter at top.
+ */
+ KPushButton* btnMoveTop;
+
+ /**
+ * Button to move a filter at bottom.
+ */
+ KPushButton* btnMoveBottom;
+
+ /**
+ * Button to move a filter up.
+ */
+ KPushButton* btnMoveUp;
+
+ /**
+ * Button to move a filter down.
+ */
+ KPushButton* btnMoveDown;
+
+ /**
+ * Button to add a new filter.
+ */
+ KPushButton* btnAdd;
+
+ /**
+ * Button to edit a filter.
+ */
+ KPushButton* btnEdit;
+
+ /**
+ * Button to remove a filter.
+ */
+ KPushButton* btnRemove;
+
+ /**
+ * Combobox to select the action for the rest of mails.
+ */
+ KComboBox* cmbActionOthers;
+
+ /**
+ * If selected, the other mails will be moved to the mailbox which is written in this edit line.
+ */
+ KLineEdit* txtMailbox;
+
+ /**
+ * This button opens a wizard which will help to get the right mailbox
+ */
+ KPushButton* btnMailboxWizard;
+
+ /**
+ * The last assigned number of a filter setup item.
+ * It is set to zero by the constructor. Therefore the first filter number is 1.
+ */
+ uint lastFilterNumber;
+
+ private slots:
+
+ /**
+ * Connected with the configuration items.
+ * Calls the slot changed() of KCModule to notify the dialog about the change.
+ */
+ void slotChanged();
+
+ /**
+ * Connected with the button btnOpenWhitelist.
+ * Creates and opens a dialog to edit the whitelist.
+ */
+ void slotOpenWhitelist();
+
+ /**
+ * Connected with the button btnOpenBlacklist.
+ * Creates and opens a dialog to edit the blacklist.
+ */
+ void slotOpenBlacklist();
+
+ /**
+ * Connected with button btnAdd.
+ * Opens the account setup dialog with an account item pointer of NULL.
+ * If the user has clicked OK, the dialog will create a new account item with
+ * the entered values and adds it to the list view.
+ */
+ void slotAdd();
+
+ /**
+ * Connected with button btnEdit.
+ * Opens the account setup with the selected account item.
+ */
+ void slotEdit();
+
+ /**
+ * Connected with button btnRemove.
+ * Removes the selected item.
+ */
+ void slotRemove();
+
+ /**
+ * Connected with combobox cmbActionOthers.
+ * Enables or disables additional widgets for action configuration.
+ * @param index position (index) of the selected action
+ */
+ void slotOtherActionChanged( int index );
+
+ /**
+ * Connected with button btnMoveTop.
+ * Moves the selected filter item at the top of the list, i.e. the number of this item will be the least one.
+ */
+ void slotMoveTop();
+
+ /**
+ * Connected with button btnMoveBottom.
+ * Moves the selected filter item at the bottom of the list, i.e. the number of this item will be the greatest one.
+ */
+ void slotMoveBottom();
+
+ /**
+ * Connected with button btnMoveUp.
+ * Moves the selected filter item up, i.e. the number of this item will be decreased.
+ */
+ void slotMoveUp();
+
+ /**
+ * Connected with button btnMoveDown.
+ * Moves the selected filter item down, i.e. the number of this item will be increased.
+ */
+ void slotMoveDown();
+
+ /**
+ * Connected with chkActivateFilter, signal toggled().
+ * Enabled or disabled the other widget of this GUI.
+ * @param filterOn TRUE - filter is active; FALSE - filter is not active
+ */
+ void slotFilterActiveToggled( bool filterOn );
+
+ /**
+ * Connected with button btnMailboxWizard.
+ * Opens a wizard to configure the mailbox
+ */
+ void slotOpenMailBoxWizard();
+
+
+ protected:
+
+ /**
+ * Decrease the numbers of these filter setup items whose number is greater than or equals num.
+ * @param number start number of renumbering
+ */
+ void decreaseNumbers( uint number );
+
+ /**
+ * Returns the pointer to the filter setup item with number num. Returns 0 if no item found.
+ * @param num number of the searched filter item
+ * @return pointer to the found item
+ */
+ FilterSetupItem* getFilterItem( uint num );
+
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/configgeneral.cpp b/kshowmail/kcmconfigs/configgeneral.cpp
new file mode 100644
index 0000000..0bffeca
--- /dev/null
+++ b/kshowmail/kcmconfigs/configgeneral.cpp
@@ -0,0 +1,181 @@
+//
+// C++ Implementation: configgeneral
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "configgeneral.h"
+
+typedef KGenericFactory<ConfigGeneral, QWidget> ConfigGeneralFactory;
+
+K_EXPORT_COMPONENT_FACTORY( kcm_kshowmailconfiggeneral, ConfigGeneralFactory(
+ "kcm_kshowmailconfiggeneral" ) );
+
+ConfigGeneral::ConfigGeneral( QWidget * parent, const char * name, const QStringList & args )
+ : KCModule( ConfigGeneralFactory::instance(), parent, args )
+{
+ //set the module name
+ if ( !name )
+ setName( "configgeneral" );
+
+ //build GUI
+ //---------
+
+ //main layout
+ QVBoxLayout* layMain = new QVBoxLayout( this, 0, 10 );
+
+ //layout for check buttons (upper half)
+ QGridLayout* layMainTop = new QGridLayout( layMain, 4, 2, 15 );
+ layMainTop->setMargin( 20 );
+
+ //group box for timers
+ QGroupBox* gboxTimers = new QGroupBox( 0, Qt::Horizontal, i18n( "&Timers" ), this, "gboxTimers" );
+ layMain->addWidget( gboxTimers );
+
+ //layouts for timers
+ QGridLayout* layTimers = new QGridLayout( gboxTimers->layout(),3, 3, 20 );
+
+ //create items
+ chkConfirmClose = new QCheckBox( i18n( "Confirm Close" ), this, "chkConfirmClose" );
+ QToolTip::add( chkConfirmClose, i18n( "If checked, window close must be confirmed" ) );
+ layMainTop->addWidget( chkConfirmClose, 0, 0 );
+
+ chkConfirmDelete = new QCheckBox( i18n( "Confirm delete" ), this, "chkConfirmDelete" );
+ QToolTip::add( chkConfirmDelete, i18n( "If checked, message delete must be confirmed" ) );
+ layMainTop->addWidget( chkConfirmDelete, 0, 1 );
+
+ chkStartMinimized = new QCheckBox( i18n( "Start Minimi&zed" ), this, "chkStartMinimized" );
+ QToolTip::add( chkStartMinimized, i18n( "Application is started as icon" ) );
+ layMainTop->addWidget( chkStartMinimized, 1, 0 );
+
+ chkCloseToTray = new QCheckBox( i18n( "Close to tray" ), this, "chkCloseToTray" );
+ QToolTip::add( chkCloseToTray, i18n( "Close button leaves the application running in tray" ) );
+ layMainTop->addWidget( chkCloseToTray, 1, 1 );
+
+ chkMinimizeToTray = new QCheckBox( i18n( "Minimize to tray" ), this, "chkMinimizeToTray" );
+ QToolTip::add( chkMinimizeToTray, i18n( "Minimizes to the tray rather than to the taskbar" ) );
+ layMainTop->addWidget( chkMinimizeToTray, 2, 0 );
+
+ chkShowConnectionErrors = new QCheckBox( i18n( "Show Connection Errors during refresh" ), this, "chkShowConnectionErrors" );
+ QToolTip::add( chkShowConnectionErrors, i18n( "If a connection error occurs during refresh (e.g. unknown server), an error message will be shown. During other actions, this error always will be shown" ) );
+ layMainTop->addWidget( chkShowConnectionErrors, 2, 1 );
+
+ chkKeepNew = new QCheckBox( i18n( "&Keep mail as new" ), this, "chkKeepNew" );
+ QToolTip::add( chkKeepNew, i18n( "Keep mail as new until termination" ) );
+ layMainTop->addWidget( chkKeepNew, 3, 0 );
+
+ QLabel* lblTimerInitial = new QLabel( i18n( "Initial Timer:" ), gboxTimers, "lblTimerInitial" );
+ QLabel* lblInitialUnit = new QLabel( i18n( "[Seconds]" ), gboxTimers, "lblInitialUnit" );
+ spbInitial = new QSpinBox( 0, 99999, 1, gboxTimers, "spbInitial" );
+ QToolTip::add( spbInitial, i18n( "Seconds until first automatic logon (0 = no automatic)" ) );
+ QToolTip::add( lblTimerInitial, i18n( "Seconds until first automatic logon (0 = no automatic)" ) );
+ layTimers->addWidget( lblTimerInitial, 0, 0 );
+ layTimers->addWidget( spbInitial, 0, 1 );
+ layTimers->addWidget( lblInitialUnit, 0, 2 );
+
+ QLabel* lblTimerInterval = new QLabel( i18n( "Interval Timer:" ), gboxTimers, "lblTimerInterval" );
+ QLabel* lblIntervalUnit = new QLabel( i18n( "[Minutes]" ), gboxTimers, "lblIntervalUnit" );
+ spbInterval = new QSpinBox( 0, 99999, 1, gboxTimers, "spbInterval" );
+ QToolTip::add( spbInterval, i18n( "Minutes between automatic logon (0 = no automatic)" ) );
+ QToolTip::add( lblTimerInterval, i18n( "Minutes between automatic logon (0 = no automatic)" ) );
+ layTimers->addWidget( lblTimerInterval, 1, 0 );
+ layTimers->addWidget( spbInterval, 1, 1 );
+ layTimers->addWidget( lblIntervalUnit, 1, 2 );
+
+ QLabel* lblTimerTimeout = new QLabel( i18n( "Timeout:" ), gboxTimers, "lblTimerTimeout" );
+ QLabel* lblTimeoutUnit = new QLabel( i18n( "[Seconds]" ), gboxTimers, "lblTimeoutUnit" );
+ spbTimeout = new QSpinBox( MINIMUM_TIMEOUT_TIME, 99999, 1, gboxTimers, "spbTimeout" );
+ QToolTip::add( spbTimeout, i18n( "Seconds until a server connect will be canceled" ) );
+ QToolTip::add( lblTimerTimeout, i18n( "Seconds until a server connect will be canceled" ) );
+ layTimers->addWidget( lblTimerTimeout, 2, 0 );
+ layTimers->addWidget( spbTimeout, 2, 1 );
+ layTimers->addWidget( lblTimeoutUnit, 2, 2 );
+
+
+ //connect all configuration itmes with slot changed() to notify the dialog about changes
+ connect( chkConfirmClose, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkConfirmDelete, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkStartMinimized, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkCloseToTray, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkMinimizeToTray, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkShowConnectionErrors, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkKeepNew, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( spbInitial, SIGNAL( valueChanged( int ) ), this, SLOT( slotChanged() ) );
+ connect( spbInterval, SIGNAL( valueChanged( int ) ), this, SLOT( slotChanged() ) );
+ connect( spbTimeout, SIGNAL( valueChanged( int ) ), this, SLOT( slotChanged() ) );
+
+
+ //get application config object (kshowmailrc)
+ config = KApplication::kApplication()->config();
+
+ //load configurated values
+ load();
+
+}
+
+ConfigGeneral::~ConfigGeneral()
+{
+}
+
+void ConfigGeneral::load( )
+{
+ config->setGroup( CONFIG_GROUP_GENERAL );
+
+ chkConfirmClose->setChecked( config->readBoolEntry( CONFIG_ENTRY_CONFIRM_CLOSE, DEFAULT_CONFIRM_CLOSE ) );
+ chkConfirmDelete->setChecked( config->readBoolEntry( CONFIG_ENTRY_CONFIRM_DELETE, DEFAULT_CONFIRM_DELETE ) );
+ chkStartMinimized->setChecked( config->readBoolEntry( CONFIG_ENTRY_START_MINIMIZED, DEFAULT_START_MINIMIZED ) );
+ chkCloseToTray->setChecked( config->readBoolEntry( CONFIG_ENTRY_CLOSE_TO_TRAY, DEFAULT_CLOSE_TO_TRAY ) );
+ chkMinimizeToTray->setChecked( config->readBoolEntry( CONFIG_ENTRY_MINIMIZE_TO_TRAY, DEFAULT_MINIMIZE_TO_TRAY ) );
+ chkShowConnectionErrors->setChecked( config->readBoolEntry( CONFIG_ENTRY_SHOW_CONNECTION_ERRORS, DEFAULT_SHOW_CONNECTION_ERRORS ) );
+ chkKeepNew->setChecked( config->readBoolEntry( CONFIG_ENTRY_KEEP_NEW, DEFAULT_KEEP_NEW ) );
+
+ spbInitial->setValue( config->readNumEntry( CONFIG_ENTRY_INITIAL_TIME, DEFAULT_INITIAL_TIME ) );
+ spbInterval->setValue( config->readNumEntry( CONFIG_ENTRY_INTERVAL_TIME, DEFAULT_INTERVAL_TIME) );
+ spbTimeout->setValue( config->readNumEntry( CONFIG_ENTRY_TIMEOUT_TIME, DEFAULT_TIMEOUT_TIME) );
+}
+
+void ConfigGeneral::defaults( )
+{
+ chkConfirmClose->setChecked( DEFAULT_CONFIRM_CLOSE );
+ chkConfirmDelete->setChecked( DEFAULT_CONFIRM_DELETE );
+ chkStartMinimized->setChecked( DEFAULT_START_MINIMIZED );
+ chkCloseToTray->setChecked( DEFAULT_CLOSE_TO_TRAY );
+ chkMinimizeToTray->setChecked( DEFAULT_MINIMIZE_TO_TRAY );
+ chkShowConnectionErrors->setChecked( DEFAULT_SHOW_CONNECTION_ERRORS );
+ chkKeepNew->setChecked( DEFAULT_KEEP_NEW );
+
+ spbInitial->setValue( DEFAULT_INITIAL_TIME );
+ spbInterval->setValue( DEFAULT_INTERVAL_TIME );
+ spbTimeout->setValue( DEFAULT_TIMEOUT_TIME );
+}
+
+void ConfigGeneral::save( )
+{
+ config->setGroup( CONFIG_GROUP_GENERAL );
+
+ config->writeEntry( CONFIG_ENTRY_CONFIRM_CLOSE, chkConfirmClose->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_CONFIRM_DELETE, chkConfirmDelete->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_START_MINIMIZED, chkStartMinimized->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_CLOSE_TO_TRAY, chkCloseToTray->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_MINIMIZE_TO_TRAY, chkMinimizeToTray->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_SHOW_CONNECTION_ERRORS, chkShowConnectionErrors->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_KEEP_NEW, chkKeepNew->isChecked() );
+ config->writeEntry( CONFIG_ENTRY_INITIAL_TIME, spbInitial->value() );
+ config->writeEntry( CONFIG_ENTRY_INTERVAL_TIME, spbInterval->value() );
+ config->writeEntry( CONFIG_ENTRY_TIMEOUT_TIME, spbTimeout->value() );
+
+ //write configuration to disk
+ config->sync();
+}
+
+void ConfigGeneral::slotChanged( )
+{
+ KCModule::changed();
+}
+
+#include "configgeneral.moc"
diff --git a/kshowmail/kcmconfigs/configgeneral.h b/kshowmail/kcmconfigs/configgeneral.h
new file mode 100644
index 0000000..c61ef67
--- /dev/null
+++ b/kshowmail/kcmconfigs/configgeneral.h
@@ -0,0 +1,141 @@
+//
+// C++ Interface: configgeneral
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef CONFIGGENERAL_H
+#define CONFIGGENERAL_H
+
+//Qt headers
+#include <qlayout.h>
+#include <qgroupbox.h>
+#include <qcheckbox.h>
+#include <qspinbox.h>
+#include <qtooltip.h>
+#include <qlabel.h>
+
+//KDE headers
+#include <kcmodule.h>
+#include <kconfig.h>
+#include <kgenericfactory.h>
+#include <kapplication.h>
+
+//KShowmail headers
+#include <../constants.h>
+
+/**
+ * @brief Part of the setup dialog (KShowMailApp::SetupDialog) to configure general things.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class ConfigGeneral : public KCModule
+{
+Q_OBJECT
+
+ public:
+
+ /**
+ * Generic Constructor
+ */
+ ConfigGeneral( QWidget *parent = 0, const char *name = 0, const QStringList &args = QStringList() );
+
+ /**
+ * Destructor
+ */
+ ~ConfigGeneral();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to reflect the current settings stored in the
+ * config file.
+ */
+ virtual void load();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to default values.
+ * This method is called when the user clicks the "Default" button.
+ */
+ virtual void defaults();
+
+ /**
+ * Overloaded method of KCModule.
+ * Stores the config information as shown in the user interface in the
+ * config file.
+ * Is called when the user clicks "Apply" or "Ok".
+ */
+ virtual void save();
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * Check box to select whether window closing must be confirmed.
+ */
+ QCheckBox* chkConfirmClose;
+
+ /**
+ * Check box to select whether deleting must be confirmed.
+ */
+ QCheckBox* chkConfirmDelete;
+
+ /**
+ * Check box to select whether the main window will be minimized at start.
+ */
+ QCheckBox* chkStartMinimized;
+
+ /**
+ * Check box to select whether the close button leave the application running in tray.
+ */
+ QCheckBox* chkCloseToTray;
+
+ /**
+ * Check box to select whether minimizes to the tray rather than to the taskbar.
+ */
+ QCheckBox* chkMinimizeToTray;
+
+ /**
+ * Check box to select whether connection errors will be shown.
+ */
+ QCheckBox* chkShowConnectionErrors;
+
+ /**
+ * Check box to select whether mails will be kept as new until termination.
+ */
+ QCheckBox* chkKeepNew;
+
+ /**
+ * Spin box to set the initial timer.
+ */
+ QSpinBox* spbInitial;
+
+ /**
+ * Spin box to set the interval timer.
+ */
+ QSpinBox* spbInterval;
+
+ /**
+ * Spin box to set the time out timer.
+ */
+ QSpinBox* spbTimeout;
+
+ public slots:
+
+ /**
+ * Connected with the configuration items.
+ * Calls the slot changed() of KCModule to notify the dialog about the change.
+ */
+ void slotChanged();
+
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/configlog.cpp b/kshowmail/kcmconfigs/configlog.cpp
new file mode 100644
index 0000000..e7eb51d
--- /dev/null
+++ b/kshowmail/kcmconfigs/configlog.cpp
@@ -0,0 +1,255 @@
+//
+// C++ Implementation: configlog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "configlog.h"
+
+typedef KGenericFactory<ConfigLog, QWidget> ConfigLogFactory;
+
+K_EXPORT_COMPONENT_FACTORY( kcm_kshowmailconfiglog, ConfigLogFactory(
+ "kcm_kshowmailconfiglog" ) );
+
+ConfigLog::ConfigLog( QWidget * parent, const char * name, const QStringList & args )
+ : KCModule( ConfigLogFactory::instance(), parent, args )
+{
+ //set the module name
+ if ( !name )
+ setName( "configlog" );
+
+ //build GUI
+ //---------
+ //main layout
+ QVBoxLayout* layMain = new QVBoxLayout( this, 0, 10 );
+
+ //widgets for deleted mails log
+ QVBoxLayout* layDelMails = new QVBoxLayout( layMain, 10, "layDelMails" );
+
+ chkLogDeletedMails = new QCheckBox( i18n( "Log mails deleted by filter" ), this, "chkLogDeletedMails" );
+ layDelMails->addWidget( chkLogDeletedMails );
+ QToolTip::add( chkLogDeletedMails, i18n( "Check to activate the log of mails deleted by filter." ) );
+ connect( chkLogDeletedMails, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkLogDeletedMails, SIGNAL( toggled( bool ) ), this, SLOT( slotChangeItems() ) );
+
+ QVBoxLayout* layDelMailsConfig = new QVBoxLayout( layDelMails, 10, "layDelMailsConfig" );
+ layDelMailsConfig->setMargin( 10 );
+
+ grpDelMailsRemove = new QButtonGroup( NULL, "grpDelMailsRemove" );
+ connect( grpDelMailsRemove, SIGNAL( clicked( int ) ), this, SLOT( slotChanged() ) );
+ connect( grpDelMailsRemove, SIGNAL( clicked( int ) ), this, SLOT( slotChangeItems() ) );
+ btnDelMailsRemoveExit = new QRadioButton( i18n( "Remove log entries at exit" ), this, "btnDelMailsRemoveExit" );
+ grpDelMailsRemove->insert( btnDelMailsRemoveExit, ID_BUTTON_REMOVE_AT_EXIT );
+ layDelMailsConfig->addWidget( btnDelMailsRemoveExit );
+
+ QHBoxLayout* layDelMailsConfigDays = new QHBoxLayout( layDelMailsConfig, 0, "layDelMailsConfigDays" );
+ layDelMailsConfigDays->setAlignment( Qt::AlignLeft );
+ btnDelMailsRemoveDays = new QRadioButton( i18n( "Remove log entries after" ), this, "btnDelMailsRemoveDays" );
+ grpDelMailsRemove->insert( btnDelMailsRemoveDays, ID_BUTTON_REMOVE_AFTER_DAYS );
+ layDelMailsConfigDays->addWidget( btnDelMailsRemoveDays );
+ spbDelDays = new QSpinBox( 1, 999999, 1, this, "spbDelDays" );
+ connect( spbDelDays, SIGNAL( valueChanged( int ) ), this, SLOT( slotChanged() ) );
+ connect( spbDelDays, SIGNAL( valueChanged( int ) ), this, SLOT( slotChangeItems() ) );
+ spbDelDays->setSuffix( i18n( " Days" ) );
+ spbDelDays->setSizePolicy( QSizePolicy::Maximum, QSizePolicy::Minimum );
+ layDelMailsConfigDays->addWidget( spbDelDays );
+
+
+ //widgets for moved mails log
+ QVBoxLayout* layMovMails = new QVBoxLayout( layMain, 10, "layMovMails" );
+
+ chkLogMovedMails = new QCheckBox( i18n( "Log mails moved by filter" ), this, "chkLogMovedMails" );
+ layMovMails->addWidget( chkLogMovedMails );
+ QToolTip::add( chkLogMovedMails, i18n( "Check to activate the log of mails moved by filter." ) );
+ connect( chkLogMovedMails, SIGNAL( toggled( bool ) ), this, SLOT( slotChanged() ) );
+ connect( chkLogMovedMails, SIGNAL( toggled( bool ) ), this, SLOT( slotChangeItems() ) );
+
+ QVBoxLayout* layMovMailsConfig = new QVBoxLayout( layMovMails, 10, "layMovMailsConfig" );
+ layMovMailsConfig->setMargin( 10 );
+
+ grpMovMailsRemove = new QButtonGroup( NULL, "grpMovMailsRemove" );
+ connect( grpMovMailsRemove, SIGNAL( clicked( int ) ), this, SLOT( slotChanged() ) );
+ connect( grpMovMailsRemove, SIGNAL( clicked( int ) ), this, SLOT( slotChangeItems() ) );
+ btnMovMailsRemoveExit = new QRadioButton( i18n( "Remove log entries at exit" ), this, "btnMovMailsRemoveExit" );
+ grpMovMailsRemove->insert( btnMovMailsRemoveExit, ID_BUTTON_REMOVE_AT_EXIT );
+ layMovMailsConfig->addWidget( btnMovMailsRemoveExit );
+
+ QHBoxLayout* layMovMailsConfigDays = new QHBoxLayout( layMovMailsConfig, 0, "layMovMailsConfigDays" );
+ layMovMailsConfigDays->setAlignment( Qt::AlignLeft );
+ btnMovMailsRemoveDays = new QRadioButton( i18n( "Remove log entries after" ), this, "btnMovMailsRemoveDays" );
+ grpMovMailsRemove->insert( btnMovMailsRemoveDays, ID_BUTTON_REMOVE_AFTER_DAYS );
+ layMovMailsConfigDays->addWidget( btnMovMailsRemoveDays );
+ spbMovDays = new QSpinBox( 1, 999999, 1, this, "spbMovDays" );
+ connect( spbMovDays, SIGNAL( valueChanged( int ) ), this, SLOT( slotChanged() ) );
+ connect( spbMovDays, SIGNAL( valueChanged( int ) ), this, SLOT( slotChangeItems() ) );
+ spbMovDays->setSuffix( i18n( " Days" ) );
+ spbMovDays->setSizePolicy( QSizePolicy::Maximum, QSizePolicy::Minimum );
+ layMovMailsConfigDays->addWidget( spbMovDays );
+
+ //the log of moved mails is not saved yet, maybe later...
+ btnMovMailsRemoveExit->setHidden( true );
+ btnMovMailsRemoveDays->setHidden( true );
+ spbMovDays->setHidden( true );
+
+ //get application config object (kshowmailrc)
+ config = KApplication::kApplication()->config();
+
+ //load configured values
+ load();
+}
+
+ConfigLog::~ConfigLog()
+{
+}
+
+void ConfigLog::load()
+{
+ //set group
+ config->setGroup( CONFIG_GROUP_LOG );
+
+ //load settings
+ chkLogDeletedMails->setChecked( config->readBoolEntry( CONFIG_ENTRY_LOG_LOG_DELETED_MAILS, DEFAULT_LOG_LOG_DELETED_MAILS ) );
+ chkLogMovedMails->setChecked( config->readBoolEntry( CONFIG_ENTRY_LOG_LOG_MOVED_MAILS, DEFAULT_LOG_LOG_MOVED_MAILS ) );
+
+ if( config->readEntry( CONFIG_ENTRY_LOG_REMOVE_DELETED_MAILS, DEFAULT_LOG_REMOVE_DELETED_MAILS ) == CONFIG_VALUE_LOG_REMOVE_MAILS_AT_EXIT )
+ grpDelMailsRemove->setButton( ID_BUTTON_REMOVE_AT_EXIT );
+ else if( config->readEntry( CONFIG_ENTRY_LOG_REMOVE_DELETED_MAILS, DEFAULT_LOG_REMOVE_DELETED_MAILS ) == CONFIG_VALUE_LOG_REMOVE_MAILS_AFTER_DAYS )
+ grpDelMailsRemove->setButton( ID_BUTTON_REMOVE_AFTER_DAYS );
+ else
+ if( DEFAULT_LOG_REMOVE_DELETED_MAILS == CONFIG_VALUE_LOG_REMOVE_MAILS_AT_EXIT )
+ grpDelMailsRemove->setButton( ID_BUTTON_REMOVE_AT_EXIT );
+ else
+ grpDelMailsRemove->setButton( ID_BUTTON_REMOVE_AFTER_DAYS );
+
+ if( config->readEntry( CONFIG_ENTRY_LOG_REMOVE_MOVED_MAILS, DEFAULT_LOG_REMOVE_MOVED_MAILS ) == CONFIG_VALUE_LOG_REMOVE_MAILS_AT_EXIT )
+ grpMovMailsRemove->setButton( ID_BUTTON_REMOVE_AT_EXIT );
+ else if( config->readEntry( CONFIG_ENTRY_LOG_REMOVE_MOVED_MAILS, DEFAULT_LOG_REMOVE_MOVED_MAILS ) == CONFIG_VALUE_LOG_REMOVE_MAILS_AFTER_DAYS )
+ grpMovMailsRemove->setButton( ID_BUTTON_REMOVE_AFTER_DAYS );
+ else
+ if( DEFAULT_LOG_REMOVE_MOVED_MAILS == CONFIG_VALUE_LOG_REMOVE_MAILS_AT_EXIT )
+ grpMovMailsRemove->setButton( ID_BUTTON_REMOVE_AT_EXIT );
+ else
+ grpMovMailsRemove->setButton( ID_BUTTON_REMOVE_AFTER_DAYS );
+
+ spbDelDays->setValue( config->readNumEntry( CONFIG_ENTRY_LOG_HOLDDAYS_DELETED_MAILS, DEFAULT_LOG_HOLDDAYS_DELETED_MAILS ) );
+ spbMovDays->setValue( config->readNumEntry( CONFIG_ENTRY_LOG_HOLDDAYS_MOVED_MAILS, DEFAULT_LOG_HOLDDAYS_MOVED_MAILS ) );
+
+ //enable or disable Items
+ slotChangeItems();
+}
+
+void ConfigLog::defaults()
+{
+ if( DEFAULT_LOG_LOG_DELETED_MAILS )
+ chkLogDeletedMails->setChecked( true );
+ else
+ chkLogMovedMails->setChecked( false );
+
+ if( DEFAULT_LOG_LOG_MOVED_MAILS )
+ chkLogMovedMails->setChecked( true );
+ else
+ chkLogMovedMails->setChecked( false );
+
+ if( DEFAULT_LOG_REMOVE_DELETED_MAILS == CONFIG_VALUE_LOG_REMOVE_MAILS_AT_EXIT )
+ grpDelMailsRemove->setButton( ID_BUTTON_REMOVE_AT_EXIT );
+ else if( DEFAULT_LOG_REMOVE_DELETED_MAILS == CONFIG_VALUE_LOG_REMOVE_MAILS_AFTER_DAYS )
+ grpDelMailsRemove->setButton( ID_BUTTON_REMOVE_AFTER_DAYS );
+ else
+ grpDelMailsRemove->setButton( ID_BUTTON_REMOVE_AFTER_DAYS );
+
+ if( DEFAULT_LOG_REMOVE_MOVED_MAILS == CONFIG_VALUE_LOG_REMOVE_MAILS_AT_EXIT )
+ grpMovMailsRemove->setButton( ID_BUTTON_REMOVE_AT_EXIT );
+ else if( DEFAULT_LOG_REMOVE_MOVED_MAILS == CONFIG_VALUE_LOG_REMOVE_MAILS_AFTER_DAYS )
+ grpMovMailsRemove->setButton( ID_BUTTON_REMOVE_AFTER_DAYS );
+ else
+ grpMovMailsRemove->setButton( ID_BUTTON_REMOVE_AFTER_DAYS );
+
+ spbDelDays->setValue( DEFAULT_LOG_HOLDDAYS_DELETED_MAILS );
+ spbMovDays->setValue( DEFAULT_LOG_HOLDDAYS_MOVED_MAILS );
+
+ //enable or disable Items
+ slotChangeItems();
+
+ slotChanged();
+}
+
+void ConfigLog::save()
+{
+ //set group
+ config->setGroup( CONFIG_GROUP_LOG );
+
+ //write settings
+ config->writeEntry( CONFIG_ENTRY_LOG_LOG_DELETED_MAILS, chkLogDeletedMails->isOn() );
+ config->writeEntry( CONFIG_ENTRY_LOG_LOG_MOVED_MAILS, chkLogMovedMails->isOn() );
+
+ switch( grpDelMailsRemove->selectedId() )
+ {
+ case ID_BUTTON_REMOVE_AT_EXIT : config->writeEntry( CONFIG_ENTRY_LOG_REMOVE_DELETED_MAILS, CONFIG_VALUE_LOG_REMOVE_MAILS_AT_EXIT ); break;
+ case ID_BUTTON_REMOVE_AFTER_DAYS : config->writeEntry( CONFIG_ENTRY_LOG_REMOVE_DELETED_MAILS, CONFIG_VALUE_LOG_REMOVE_MAILS_AFTER_DAYS ); break;
+ default : config->writeEntry( CONFIG_ENTRY_LOG_REMOVE_DELETED_MAILS, CONFIG_VALUE_LOG_REMOVE_MAILS_AFTER_DAYS ); break;
+ }
+
+ switch( grpMovMailsRemove->selectedId() )
+ {
+ case ID_BUTTON_REMOVE_AT_EXIT : config->writeEntry( CONFIG_ENTRY_LOG_REMOVE_MOVED_MAILS, CONFIG_VALUE_LOG_REMOVE_MAILS_AT_EXIT ); break;
+ case ID_BUTTON_REMOVE_AFTER_DAYS : config->writeEntry( CONFIG_ENTRY_LOG_REMOVE_MOVED_MAILS, CONFIG_VALUE_LOG_REMOVE_MAILS_AFTER_DAYS ); break;
+ default : config->writeEntry( CONFIG_ENTRY_LOG_REMOVE_MOVED_MAILS, CONFIG_VALUE_LOG_REMOVE_MAILS_AT_EXIT ); break;
+ }
+
+ config->writeEntry( CONFIG_ENTRY_LOG_HOLDDAYS_DELETED_MAILS, spbDelDays->value() );
+ config->writeEntry( CONFIG_ENTRY_LOG_HOLDDAYS_MOVED_MAILS, spbMovDays->value() );
+}
+
+void ConfigLog::slotChanged()
+{
+ KCModule::changed();
+}
+
+void ConfigLog::slotChangeItems()
+{
+ if( chkLogDeletedMails->isChecked() )
+ {
+ btnDelMailsRemoveExit->setEnabled( true );
+ btnDelMailsRemoveDays->setEnabled( true );
+ spbDelDays->setEnabled( true );
+ switch( grpDelMailsRemove->selectedId() )
+ {
+ case ID_BUTTON_REMOVE_AFTER_DAYS : spbDelDays->setEnabled( true ); break;
+ case ID_BUTTON_REMOVE_AT_EXIT : spbDelDays->setEnabled( false ); break;
+ default : spbDelDays->setEnabled( true ); break;
+ }
+ }
+ else
+ {
+ btnDelMailsRemoveExit->setEnabled( false );
+ btnDelMailsRemoveDays->setEnabled( false );
+ spbDelDays->setEnabled( false );
+ }
+
+ if( chkLogMovedMails->isChecked() )
+ {
+ btnMovMailsRemoveExit->setEnabled( true );
+ btnMovMailsRemoveDays->setEnabled( true );
+ spbMovDays->setEnabled( true );
+ switch( grpMovMailsRemove->selectedId() )
+ {
+ case ID_BUTTON_REMOVE_AFTER_DAYS : spbMovDays->setEnabled( true ); break;
+ case ID_BUTTON_REMOVE_AT_EXIT : spbMovDays->setEnabled( false ); break;
+ default : spbMovDays->setEnabled( true ); break;
+ }
+ }
+ else
+ {
+ btnMovMailsRemoveExit->setEnabled( false );
+ btnMovMailsRemoveDays->setEnabled( false );
+ spbMovDays->setEnabled( false );
+ }
+}
+
+
+#include "configlog.moc"
diff --git a/kshowmail/kcmconfigs/configlog.h b/kshowmail/kcmconfigs/configlog.h
new file mode 100644
index 0000000..84e6fd4
--- /dev/null
+++ b/kshowmail/kcmconfigs/configlog.h
@@ -0,0 +1,152 @@
+//
+// C++ Interface: configlog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef CONFIGLOG_H
+#define CONFIGLOG_H
+
+//button IDs
+#define ID_BUTTON_REMOVE_AT_EXIT 1
+#define ID_BUTTON_REMOVE_AFTER_DAYS 2
+
+//qt headers
+#include <qlayout.h>
+#include <qgroupbox.h>
+#include <qtooltip.h>
+#include <qcheckbox.h>
+#include <qradiobutton.h>
+#include <qbuttongroup.h>
+#include <qspinbox.h>
+
+//KDE headers
+#include <kcmodule.h>
+#include <kconfig.h>
+#include <kgenericfactory.h>
+#include <kapplication.h>
+
+//Kshowmail headers
+#include "../constants.h"
+
+
+/**
+ * @brief Part of the setup dialog (KShowMailApp::SetupDialog) to configure the log.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class ConfigLog : public KCModule
+{
+Q_OBJECT
+
+ public:
+
+ /**
+ * Generic constructor
+ */
+ ConfigLog( QWidget* parent = 0, const char* name = 0, const QStringList &args = QStringList() );
+
+ /**
+ * Destructor
+ */
+ ~ConfigLog();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to reflect the current settings stored in the
+ * config file.
+ */
+ virtual void load();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to default values.
+ * This method is called when the user clicks the "Default" button.
+ */
+ virtual void defaults();
+
+ /**
+ * Overloaded method of KCModule.
+ * Stores the config information as shown in the user interface in the
+ * config file.
+ * Is called when the user clicks "Apply" or "Ok".
+ */
+ virtual void save();
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * Checkbox to activate log of deleted mails
+ */
+ QCheckBox* chkLogDeletedMails;
+
+ /**
+ * Checkbox to activate log of moved mails
+ */
+ QCheckBox* chkLogMovedMails;
+
+ /**
+ * Combines the radio buttons to select the kind of removing log entries of deleted mails
+ */
+ QButtonGroup* grpDelMailsRemove;
+
+ /**
+ * Combines the radio buttons to select the kind of removing log entries of moved mails
+ */
+ QButtonGroup* grpMovMailsRemove;
+
+ /**
+ * Spinbox to select the number of days to remove.
+ */
+ QSpinBox* spbDelDays;
+
+ /**
+ * Spinbox to select the number of days to remove.
+ */
+ QSpinBox* spbMovDays;
+
+ /**
+ * Radio button to select the removing of entries about deleted mails at application exit.
+ */
+ QRadioButton* btnDelMailsRemoveExit;
+
+ /**
+ * Radio button to select the removing of entries about deleted mails after some days.
+ */
+ QRadioButton* btnDelMailsRemoveDays;
+
+ /**
+ * Radio button to select the removing of entries about moved mails at application exit.
+ */
+ QRadioButton* btnMovMailsRemoveExit;
+
+ /**
+ * Radio button to select the removing of entries about moved mails after some days.
+ */
+ QRadioButton* btnMovMailsRemoveDays;
+
+ private slots:
+
+ /**
+ * Connected with the configuration items.
+ * Calls the slot changed() of KCModule to notify the dialog about the change.
+ */
+ void slotChanged();
+
+ /**
+ * Connected with the checkboxes and radiobuttons.
+ * Enables or disables the dialog items.
+ */
+ void slotChangeItems();
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/configspamcheck.cpp b/kshowmail/kcmconfigs/configspamcheck.cpp
new file mode 100644
index 0000000..44f7ef7
--- /dev/null
+++ b/kshowmail/kcmconfigs/configspamcheck.cpp
@@ -0,0 +1,236 @@
+//
+// C++ Implementation: configspamcheck
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2008
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "configspamcheck.h"
+
+
+typedef KGenericFactory<ConfigSpamcheck, QWidget> ConfigSpamcheckFactory;
+
+K_EXPORT_COMPONENT_FACTORY( kcm_kshowmailconfigspamcheck, ConfigSpamcheckFactory(
+ "kcm_kshowmailconfigspamcheck" ) );
+
+
+ConfigSpamcheck::ConfigSpamcheck(QWidget * parent, const char * name, const QStringList & args)
+ : KCModule( ConfigSpamcheckFactory::instance(), parent, args )
+{
+ //set the module name
+ if ( !name )
+ setName( "configfilter" );
+
+ //build GUI
+ //---------
+
+ //main layout
+ QVBoxLayout* layMain = new QVBoxLayout( this, 0, 10 );
+
+ //description
+ QLabel* lblDescription = new QLabel( this, "lblDescription" );
+ lblDescription->setAlignment( Qt::WordBreak );
+ lblDescription->setText( QString( "<i>%1</i>" ).arg( i18n( "KShowmail uses SpamAssassin to check the mails for spam. You have to install, configure and start the SpamAssassin daemon, before you can use this service." ) ) );
+ lblDescription->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Maximum );
+ layMain->addWidget( lblDescription );
+
+ //Test button
+ btnTest = new KPushButton( KStdGuiItem::test(), this, "btnTest" );
+ btnTest->setSizePolicy( QSizePolicy::Maximum, QSizePolicy::Maximum );
+ layMain->addWidget( btnTest );
+ connect( btnTest, SIGNAL( clicked() ), this, SLOT( slotTestSpamAssassin() ) );
+
+ //action
+ gboxAction = new QGroupBox( 0, Qt::Horizontal, i18n( "Action for Spam" ), this, "gboxAction" );
+ QHBoxLayout* layAction = new QHBoxLayout( gboxAction->layout(), 10 );
+ layMain->addWidget( gboxAction );
+
+ cmbAction = new KComboBox( gboxAction, "cmbAction" );
+ layAction->addWidget( cmbAction );
+ QToolTip::add( cmbAction, i18n( "Choose the action for spam mails." ) );
+ connect( cmbAction, SIGNAL( activated( int ) ), this, SLOT( slotActionChanged( int ) ) );
+ connect( cmbAction, SIGNAL( activated( int ) ), this, SLOT( slotChanged() ) );
+
+ //insert items
+ cmbAction->insertItem( i18n( "Delete" ), ID_SPAM_ACTION_BUTTONS_DELETE );
+ cmbAction->insertItem( i18n( "Mark" ), ID_SPAM_ACTION_BUTTONS_MARK );
+ cmbAction->insertItem( i18n( "Move" ), ID_SPAM_ACTION_BUTTONS_MOVE );
+
+ //create edit line to defined the mailbox for move
+ txtMailbox = new KLineEdit( gboxAction );
+ layAction->addWidget( txtMailbox );
+ connect( txtMailbox, SIGNAL( textChanged( const QString & ) ), this, SLOT( slotChanged() ) );
+
+ //create wizard button to configure mailbox
+ btnMailboxWizard= new KPushButton( KGuiItem( QString::null, "wizard" ), gboxAction );
+ layAction->addWidget( btnMailboxWizard );
+ QToolTip::add( btnMailboxWizard, i18n( "Choose the mailbox" ) );
+ connect( btnMailboxWizard, SIGNAL( clicked() ), this, SLOT( slotOpenMailBoxWizard() ) );
+
+ //set defaults
+ switch( DEFAULT_SPAMCHECK_ACTION )
+ {
+ case CONFIG_VALUE_SPAMCHECK_ACTION_DELETE : cmbAction->setCurrentItem( ID_SPAM_ACTION_BUTTONS_DELETE ); break;
+ case CONFIG_VALUE_SPAMCHECK_ACTION_MARK : cmbAction->setCurrentItem( ID_SPAM_ACTION_BUTTONS_MARK ); break;
+ case CONFIG_VALUE_SPAMCHECK_ACTION_MOVE : cmbAction->setCurrentItem( ID_SPAM_ACTION_BUTTONS_MOVE ); break;
+ }
+
+ txtMailbox->setText( DEFAULT_SPAMCHECK_ACTION_MOVE_MAILBOX );
+
+ //enable or disable widgets
+ slotActionChanged( cmbAction->currentItem() );
+ gboxAction->setEnabled( isSpamAssassinRunning() );
+
+ //get application config object (kshowmailrc)
+ config = KApplication::kApplication()->config();
+
+ //load configured values
+ load();
+}
+
+ConfigSpamcheck::~ConfigSpamcheck()
+{
+}
+
+void ConfigSpamcheck::load()
+{
+ config->setGroup( CONFIG_GROUP_SPAMCHECK );
+
+ //load action
+ switch( config->readNumEntry( CONFIG_ENTRY_SPAMCHECK_ACTION, DEFAULT_SPAMCHECK_ACTION ) )
+ {
+ case CONFIG_VALUE_SPAMCHECK_ACTION_DELETE : cmbAction->setCurrentItem( ID_SPAM_ACTION_BUTTONS_DELETE ); break;
+ case CONFIG_VALUE_SPAMCHECK_ACTION_MARK : cmbAction->setCurrentItem( ID_SPAM_ACTION_BUTTONS_MARK ); break;
+ case CONFIG_VALUE_SPAMCHECK_ACTION_MOVE : cmbAction->setCurrentItem( ID_SPAM_ACTION_BUTTONS_MOVE ); break;
+ }
+
+ //get mailbox name
+ if( config->readNumEntry( CONFIG_ENTRY_SPAMCHECK_ACTION, DEFAULT_SPAMCHECK_ACTION ) == CONFIG_VALUE_SPAMCHECK_ACTION_MOVE )
+ txtMailbox->setText( config->readEntry( CONFIG_ENTRY_SPAMCHECK_MOVE_MAILBOX, DEFAULT_SPAMCHECK_ACTION_MOVE_MAILBOX ) );
+ else
+ txtMailbox->clear();
+
+ //enable or disable widgets for other action
+ slotActionChanged( cmbAction->currentItem() );
+}
+
+void ConfigSpamcheck::defaults()
+{
+ switch( DEFAULT_SPAMCHECK_ACTION )
+ {
+ case CONFIG_VALUE_SPAMCHECK_ACTION_DELETE : cmbAction->setCurrentItem( ID_SPAM_ACTION_BUTTONS_DELETE ); break;
+ case CONFIG_VALUE_SPAMCHECK_ACTION_MARK : cmbAction->setCurrentItem( ID_SPAM_ACTION_BUTTONS_MARK ); break;
+ case CONFIG_VALUE_SPAMCHECK_ACTION_MOVE : cmbAction->setCurrentItem( ID_SPAM_ACTION_BUTTONS_MOVE ); break;
+ }
+
+ if( DEFAULT_SPAMCHECK_ACTION == CONFIG_VALUE_SPAMCHECK_ACTION_MOVE )
+ txtMailbox->setText( QString( DEFAULT_SPAMCHECK_ACTION_MOVE_MAILBOX ) );
+ else
+ txtMailbox->clear();
+
+ //enable or disable widgets for other action
+ slotActionChanged( cmbAction->currentItem() );
+
+ slotChanged();
+}
+
+void ConfigSpamcheck::save()
+{
+ config->setGroup( CONFIG_GROUP_SPAMCHECK );
+
+ //save action
+ switch( cmbAction->currentItem() )
+ {
+ case ID_SPAM_ACTION_BUTTONS_DELETE : config->writeEntry( CONFIG_ENTRY_SPAMCHECK_ACTION, CONFIG_VALUE_SPAMCHECK_ACTION_DELETE ); break;
+ case ID_SPAM_ACTION_BUTTONS_MARK : config->writeEntry( CONFIG_ENTRY_SPAMCHECK_ACTION, CONFIG_VALUE_SPAMCHECK_ACTION_MARK ); break;
+ case ID_SPAM_ACTION_BUTTONS_MOVE : config->writeEntry( CONFIG_ENTRY_SPAMCHECK_ACTION, CONFIG_VALUE_SPAMCHECK_ACTION_MOVE ); break;
+ default : config->writeEntry( CONFIG_ENTRY_SPAMCHECK_ACTION, DEFAULT_SPAMCHECK_ACTION ); break;
+ }
+
+ //save mailbox name
+ if( cmbAction->currentItem() == ID_SPAM_ACTION_BUTTONS_MOVE )
+ {
+ config->writeEntry( CONFIG_ENTRY_SPAMCHECK_MOVE_MAILBOX, txtMailbox->text() );
+ }
+ else
+ {
+ config->deleteEntry( CONFIG_ENTRY_SPAMCHECK_MOVE_MAILBOX );
+ }
+
+ config->sync();
+}
+
+void ConfigSpamcheck::slotChanged()
+{
+ KCModule::changed();
+}
+
+void ConfigSpamcheck::slotActionChanged( int index )
+{
+ switch( index )
+ {
+ case ID_SPAM_ACTION_BUTTONS_MOVE : txtMailbox->setEnabled( true );
+ if( txtMailbox->text() == "" )
+ txtMailbox->setText( DEFAULT_FILTER_ACTION_MOVE_MAILBOX );
+ btnMailboxWizard->setHidden( false );
+ break;
+ default : txtMailbox->setEnabled( false );
+ btnMailboxWizard->setHidden( true );
+ break;
+ }
+}
+
+void ConfigSpamcheck::slotOpenMailBoxWizard( )
+{
+ MailBoxWizard wizard( this, "malboxwizard" );
+ wizard.setCaption( i18n( "Mailbox Select" ) );
+ int res = wizard.exec();
+
+ if( res == QDialog::Accepted )
+ txtMailbox->setText( wizard.getPath() );
+}
+
+bool ConfigSpamcheck::isSpamAssassinRunning( ) const
+{
+ FILE *read_fp;
+ char buffer[ BUFSIZ + 1 ];
+ int chars_read;
+ bool found = false;
+
+ memset( buffer, '\0', sizeof( buffer ) );
+ read_fp = popen( "ps -eo comm", "r" );
+ if( read_fp != NULL )
+ {
+ chars_read = fread( buffer, sizeof( char ), BUFSIZ, read_fp );
+ while( chars_read > 0 )
+ {
+ buffer[ chars_read - 1 ] = '\0';
+ QString output( buffer );
+ found = output.contains( NAME_SPAMASSASSIN_DAEMON ) > 0;
+ chars_read = fread( buffer, sizeof( char ), BUFSIZ, read_fp );
+ }
+ pclose( read_fp );
+ }
+
+ return found;
+}
+
+void ConfigSpamcheck::slotTestSpamAssassin( )
+{
+ if( isSpamAssassinRunning() )
+ {
+ KMessageBox::information( this, i18n( "SpamAssassin is running." ), i18n( "Check for SpamAssassin" ) );
+ gboxAction->setEnabled( true );
+ }
+ else
+ {
+ KMessageBox::information( this, i18n( "SpamAssassin is not running." ), i18n( "Check for SpamAssassin" ) );
+ gboxAction->setEnabled( false );
+ }
+}
+
+#include "configspamcheck.moc"
diff --git a/kshowmail/kcmconfigs/configspamcheck.h b/kshowmail/kcmconfigs/configspamcheck.h
new file mode 100644
index 0000000..d2af35c
--- /dev/null
+++ b/kshowmail/kcmconfigs/configspamcheck.h
@@ -0,0 +1,161 @@
+//
+// C++ Interface: configspamcheck
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2008
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef CONFIGSPAMCHECK_H
+#define CONFIGSPAMCHECK_H
+
+//C-headers
+#include <unistd.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+
+//Qt headers
+#include <qlayout.h>
+#include <qlabel.h>
+#include <qgroupbox.h>
+#include <qtooltip.h>
+
+//KDE headers
+#include <kcmodule.h>
+#include <kconfig.h>
+#include <kgenericfactory.h>
+#include <kapplication.h>
+#include <kpushbutton.h>
+#include <kstdguiitem.h>
+#include <kcombobox.h>
+#include <klineedit.h>
+#include <kmessagebox.h>
+
+//Kshowmail headers
+#include "../constants.h"
+#include "mailboxwizard.h"
+
+//radio button IDs
+#define ID_SPAM_ACTION_BUTTONS_DELETE 0
+#define ID_SPAM_ACTION_BUTTONS_MARK 1
+#define ID_SPAM_ACTION_BUTTONS_MOVE 2
+
+
+/**
+ * @brief Part of the setup dialog (KShowMailApp::SetupDialog) to configure the spam check.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class ConfigSpamcheck : public KCModule
+{
+
+Q_OBJECT
+
+
+ public:
+ /**
+ * Generic constructor
+ */
+ ConfigSpamcheck( QWidget* parent = 0, const char* name = 0, const QStringList &args = QStringList() );
+
+ /**
+ * Destructor
+ */
+ ~ConfigSpamcheck();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to reflect the current settings stored in the
+ * config file.
+ */
+ virtual void load();
+
+ /**
+ * Overloaded method of KCModule.
+ * Sets the user interface elements to default values.
+ * This method is called when the user clicks the "Default" button.
+ */
+ virtual void defaults();
+
+ /**
+ * Overloaded method of KCModule.
+ * Stores the config information as shown in the user interface in the
+ * config file.
+ * Is called when the user clicks "Apply" or "Ok".
+ */
+ virtual void save();
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * Button to test for a running SpamAssassin
+ */
+ KPushButton* btnTest;
+
+ /**
+ * Combobox to select the action for spam.
+ */
+ KComboBox* cmbAction;
+
+ /**
+ * If selected, the spam mails will be moved to the mailbox which is written in this edit line.
+ */
+ KLineEdit* txtMailbox;
+
+ /**
+ * This button opens a wizard which will help to get the right mailbox
+ */
+ KPushButton* btnMailboxWizard;
+
+ /**
+ * Contains the widgets of action configuration.
+ */
+ QGroupBox* gboxAction;
+
+ private slots:
+
+ /**
+ * Connected with the configuration items.
+ * Calls the slot changed() of KCModule to notify the dialog about the change.
+ */
+ void slotChanged();
+
+ /**
+ * Connected with combobox cmbAction.
+ * Enables or disables additional widgets for action configuration.
+ * @param index position (index) of the selected action
+ */
+ void slotActionChanged( int index );
+
+ /**
+ * Connected with button btnMailboxWizard.
+ * Opens a wizard to configure the mailbox
+ */
+ void slotOpenMailBoxWizard();
+
+ /**
+ * Connected with btnTest.
+ * Tests whether SpamAssassin is running and shows a message box containing the result.
+ * Enables or disables the action widgets.
+ */
+ void slotTestSpamAssassin();
+
+ protected:
+
+ /**
+ * Looks for a running spamd daemon of SpamAssassin.
+ * @return TRUE - SpamAssassin is running
+ */
+ bool isSpamAssassinRunning() const;
+
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/encryption.cpp b/kshowmail/kcmconfigs/encryption.cpp
new file mode 100644
index 0000000..dd3bcec
--- /dev/null
+++ b/kshowmail/kcmconfigs/encryption.cpp
@@ -0,0 +1,85 @@
+//
+// C++ Implementation: encryption
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "encryption.h"
+
+//used in crypt() and decrypt()
+static const char scramble1 [50] = "C6FDC7A1EDFBB6FEE3DBF5BEBAEFDDF7ABC6FDC7A1EDFBB6";
+static const char hexstr [17] = "0123456789ABCDEF";
+
+int Encryption::hexbyt( const char c )
+{
+ if( c >= '0' && c <= '9' )
+ return c - '0';
+ else
+ return c - 'A' + 10;
+}
+
+const QString Encryption::crypt( const KURL& url )
+{
+ char result[50];
+ char scramble2[50];
+ QString hexresult;
+
+ memset (result, 0, 50);
+ memset (scramble2, 0, 50);
+ int pos = url.pass().length () + 1;
+ unsigned int free = 50 - pos;
+
+ if( url.user().length() <= free )
+ {
+ strcpy( &scramble2[pos], url.user() );
+ pos += url.user().length();
+ free -= url.user().length();
+ }
+ else
+ {
+ memcpy( &scramble2[pos], url.user().latin1(), free );
+ free = 0;
+ }
+
+ if( url.host().length() <= free )
+ {
+ strcpy( &scramble2[pos], url.host() );
+ pos += url.host().length();
+ free -= url.host().length();
+ }
+ else
+ {
+ memcpy( &scramble2[pos], url.host().latin1(), free );
+ free = 0;
+ }
+
+ memcpy( result, url.pass().latin1(), url.pass().length() );
+ for (int i = 0; i <= 31; i++)
+ {
+ result[i] = (char)( result[i] ^ ( scramble1[i] ^ scramble2[i] ) );
+ hexresult += hexstr[ result[i] / 16 ];
+ hexresult += hexstr[ result[i] % 16 ];
+ }
+
+ return hexresult;
+}
+
+const QString Encryption::decrypt( const QString& pass )
+{
+ char result[50];
+
+ memset( result, 0, 50 );
+ int i;
+ for( i = 0; i <= 31; i++ )
+ {
+ result[i] = (char)hexbyt( pass[ i * 2 ] ) * 16 + hexbyt( pass[ i * 2 + 1 ] );
+ result[i] = (char)( result[i] ^ scramble1[i] );
+ }
+
+ return result;
+}
diff --git a/kshowmail/kcmconfigs/encryption.h b/kshowmail/kcmconfigs/encryption.h
new file mode 100644
index 0000000..376cc26
--- /dev/null
+++ b/kshowmail/kcmconfigs/encryption.h
@@ -0,0 +1,46 @@
+//
+// C++ Interface: encryption
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+
+//Qt headers
+#include <qstring.h>
+
+//KDE headers
+#include <kurl.h>
+
+/**
+ * @brief Provides functions to crypt and decrypt a password.
+ */
+namespace Encryption
+{
+ /**
+ * Transforms the given hex numeric character to integer.
+ * For example: a given '2' will transformed to 2; 'B' to 12.
+ * @param c character to transform [0..9, 'A'..'F']; no lower case letters
+ * @return integer value of the given character
+ */
+ int hexbyt( const char c );
+
+ /**
+ * Encrypts the the password in the given url and returns it.
+ * The encryption algorithm uses host and user name to crypt the password.
+ * @param url the url with password, host and user name
+ * @return encrypted password
+ */
+ const QString crypt( const KURL& url );
+
+ /**
+ * Decrypts the given encrypted password.
+ * @param pass encrypted password
+ * @return decrypted password
+ */
+ const QString decrypt( const QString& pass );
+}
diff --git a/kshowmail/kcmconfigs/filtercriteriawidget.cpp b/kshowmail/kcmconfigs/filtercriteriawidget.cpp
new file mode 100644
index 0000000..c7ea8c5
--- /dev/null
+++ b/kshowmail/kcmconfigs/filtercriteriawidget.cpp
@@ -0,0 +1,338 @@
+//
+// C++ Implementation: filtercriteriawidget
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "filtercriteriawidget.h"
+
+FilterCriteriaWidget::FilterCriteriaWidget( QWidget *parent, const char *name )
+ : QWidget( parent, name )
+{
+ //this is the main layout
+ QVBoxLayout* layMain = new QVBoxLayout( this, 0, KDialog::spacingHint(), "layMain" );
+
+ //and now the layouts of the first and second line
+ QHBoxLayout* layLine1 = new QHBoxLayout( layMain, KDialog::spacingHint(), "layLine1" );
+ QHBoxLayout* layLine2 = new QHBoxLayout( layMain, KDialog::spacingHint(), "layLine2" );
+
+ //Source Select
+ cmbSource = new KComboBox( this, "cmbSource" );
+ cmbSource->insertItem( i18n( "From" ), ID_COMBO_SOURCE_FROM );
+ cmbSource->insertItem( i18n( "To" ), ID_COMBO_SOURCE_TO );
+ cmbSource->insertItem( i18n( "Size (Bytes)" ), ID_COMBO_SOURCE_SIZE );
+ cmbSource->insertItem( i18n( "Subject" ), ID_COMBO_SOURCE_SUBJECT );
+ cmbSource->insertItem( i18n( "Header" ), ID_COMBO_SOURCE_HEADER );
+ cmbSource->insertItem( i18n( "Account" ), ID_COMBO_SOURCE_ACCOUNT );
+ layLine1->addWidget( cmbSource );
+ connect( cmbSource, SIGNAL( activated( int ) ), this, SLOT( slotSetWidgets() ) );
+
+ switch( DEFAULT_FILTER_CRITERIA_SOURCE )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_FROM : cmbSource->setCurrentItem( ID_COMBO_SOURCE_FROM ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_TO : cmbSource->setCurrentItem( ID_COMBO_SOURCE_TO ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SIZE : cmbSource->setCurrentItem( ID_COMBO_SOURCE_SIZE ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SUBJECT : cmbSource->setCurrentItem( ID_COMBO_SOURCE_SUBJECT ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_HEADER : cmbSource->setCurrentItem( ID_COMBO_SOURCE_HEADER ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_ACCOUNT : cmbSource->setCurrentItem( ID_COMBO_SOURCE_ACCOUNT ); break;
+ default : cmbSource->setCurrentItem( ID_COMBO_SOURCE_FROM ); break;
+ }
+
+ //Comboboxes to select the condition between source and value
+ cmbConditionText = new KComboBox( this, "cmbConditionText" );
+ cmbConditionText->insertItem( i18n( "contains" ), ID_COMBO_COND_TEXT_CONTAINS );
+ cmbConditionText->insertItem( i18n( "does not contain" ), ID_COMBO_COND_TEXT_NOT_CONTAINS );
+ cmbConditionText->insertItem( i18n( "equals" ), ID_COMBO_COND_TEXT_EQUALS );
+ cmbConditionText->insertItem( i18n( "does not equal" ), ID_COMBO_COND_TEXT_NOT_EQUALS );
+ cmbConditionText->insertItem( i18n( "matches regular expression" ), ID_COMBO_COND_TEXT_REGEXPR );
+ cmbConditionText->insertItem( i18n( "does not match reg. expr." ), ID_COMBO_COND_TEXT_NOT_REGEXPR );
+ layLine1->addWidget( cmbConditionText );
+ connect( cmbConditionText, SIGNAL( activated( int ) ), this, SLOT( slotSetWidgets() ) );
+
+ switch( DEFAULT_FILTER_CRITERIA_COND_TEXT )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_CONTAINS : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_CONTAINS );break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_CONTAINS : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_NOT_CONTAINS );break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_EQUALS : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_EQUALS );break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_EQUALS : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_NOT_EQUALS );break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_REGEXPR : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_REGEXPR );break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_REGEXPR : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_NOT_REGEXPR );break;
+ default : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_CONTAINS ); break;
+ }
+
+ cmbConditionNum = new KComboBox( this, "cmbConditionNum" );
+ cmbConditionNum->insertItem( i18n( "is equal to" ), ID_COMBO_COND_NUM_EQUAL );
+ cmbConditionNum->insertItem( i18n( "is not equal to" ), ID_COMBO_COND_NUM_NOT_EQUAL );
+ cmbConditionNum->insertItem( i18n( "is greater than" ), ID_COMBO_COND_NUM_GREATER );
+ cmbConditionNum->insertItem( i18n( "is greater than or equal to" ), ID_COMBO_COND_NUM_GREATER_EQUAL );
+ cmbConditionNum->insertItem( i18n( "is less than" ), ID_COMBO_COND_NUM_LESS );
+ cmbConditionNum->insertItem( i18n( "is less than or equal to" ), ID_COMBO_COND_NUM_LESS_EQUAL );
+ layLine1->addWidget( cmbConditionNum );
+
+ switch( DEFAULT_FILTER_CRITERIA_COND_NUM )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_EQUAL : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_EQUAL ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_NOT_EQUAL : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_NOT_EQUAL ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_GREATER ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER_EQUAL : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_GREATER_EQUAL ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_LESS ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS_EQUAL : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_LESS_EQUAL ); break;
+ default : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_EQUAL ); break;
+ }
+
+ //edit line and spin box which hold the comparation values
+ txtCompValueText = new KLineEdit( this, "txtCompValueText" );
+ txtCompValueText->setMinimumWidth( WIDTH_FILTER_TEXT_VALUE_LINE );
+ layLine1->addWidget( txtCompValueText );
+
+ spbCompValueNum = new KIntNumInput( DEFAULT_FILTER_CRITERIA_SIZE, this, 10, "spbCompValueNum" );
+ spbCompValueNum->setMinValue( 0 );
+ spbCompValueNum->setSuffix( " Bytes" );
+ layLine1->addWidget( spbCompValueNum );
+
+ //Button to open the regular expression editor
+ btnOpenRegExpEditor = new KPushButton( KGuiItem( "", "edit", "Edit Regualar Expression" ), this, "btnOpenRegExpEditor" );
+ layLine1->addWidget( btnOpenRegExpEditor );
+ connect( btnOpenRegExpEditor, SIGNAL( clicked() ), this, SLOT( slotOpenRegExpEditor() ) );
+
+ //check whether the KRegExpEditor is available
+ kRegExpEditorAvailable = !KTrader::self()->query( "KRegExpEditor/KRegExpEditor" ).isEmpty();
+
+ //checkbox to select case sensitve
+ chkCaseSensitive = new QCheckBox( i18n( "Case sensitive" ), this, "chkCaseSensitive" );
+ chkCaseSensitive->setChecked( DEFAULT_FILTER_CRITERIA_CASE_SENSITIVE ); //set default
+ layLine2->addWidget( chkCaseSensitive );
+
+ //separator to the next criteria widget
+ layMain->addWidget( new KSeparator( this ) );
+
+ //set widgets dependent on criteria source
+ slotSetWidgets();
+}
+
+
+FilterCriteriaWidget::~FilterCriteriaWidget()
+{
+}
+
+void FilterCriteriaWidget::slotSetWidgets( )
+{
+ switch( cmbSource->currentItem() )
+ {
+ case ID_COMBO_SOURCE_FROM : cmbConditionNum->setHidden( true );
+ spbCompValueNum->setHidden( true );
+ cmbConditionText->setHidden( false );
+ txtCompValueText->setHidden( false );
+ chkCaseSensitive->setHidden( false );
+ break;
+ case ID_COMBO_SOURCE_TO : cmbConditionNum->setHidden( true );
+ spbCompValueNum->setHidden( true );
+ cmbConditionText->setHidden( false );
+ txtCompValueText->setHidden( false );
+ chkCaseSensitive->setHidden( false );
+ break;
+ case ID_COMBO_SOURCE_SIZE : cmbConditionNum->setHidden( false );
+ spbCompValueNum->setHidden( false );
+ cmbConditionText->setHidden( true );
+ txtCompValueText->setHidden( true );
+ chkCaseSensitive->setHidden( true );
+ break;
+ case ID_COMBO_SOURCE_SUBJECT : cmbConditionNum->setHidden( true );
+ spbCompValueNum->setHidden( true );
+ cmbConditionText->setHidden( false );
+ txtCompValueText->setHidden( false );
+ chkCaseSensitive->setHidden( false );
+ break;
+ case ID_COMBO_SOURCE_HEADER : cmbConditionNum->setHidden( true );
+ spbCompValueNum->setHidden( true );
+ cmbConditionText->setHidden( false );
+ txtCompValueText->setHidden( false );
+ chkCaseSensitive->setHidden( false );
+ break;
+ case ID_COMBO_SOURCE_ACCOUNT : cmbConditionNum->setHidden( true );
+ spbCompValueNum->setHidden( true );
+ cmbConditionText->setHidden( false );
+ txtCompValueText->setHidden( false );
+ chkCaseSensitive->setHidden( false );
+ break;
+ default: cmbConditionNum->setHidden( true );
+ spbCompValueNum->setHidden( true );
+ cmbConditionText->setHidden( false );
+ txtCompValueText->setHidden( false );
+ chkCaseSensitive->setHidden( false );
+ break;
+ }
+
+ //show or hide widgets of regular expressions
+ if( !cmbConditionText->isHidden() && ( cmbConditionText->currentItem() == ID_COMBO_COND_TEXT_REGEXPR || cmbConditionText->currentItem() == ID_COMBO_COND_TEXT_NOT_REGEXPR ) )
+ {
+ if( kRegExpEditorAvailable )
+ btnOpenRegExpEditor->setHidden( false );
+
+ //we don't need case sensitve for regular expressions
+ chkCaseSensitive->setHidden( true );
+ }
+ else
+ {
+ btnOpenRegExpEditor->setHidden( true );
+ }
+}
+
+void FilterCriteriaWidget::slotOpenRegExpEditor( )
+{
+ QDialog* editorDialog = KParts::ComponentFactory::createInstanceFromQuery<QDialog>( "KRegExpEditor/KRegExpEditor" );
+
+ if( editorDialog != NULL )
+ {
+ //kdeutils was installed, so the dialog was found fetch the editor interface
+ KRegExpEditorInterface* editor = static_cast<KRegExpEditorInterface*>( editorDialog->qt_cast( "KRegExpEditorInterface" ) );
+ if( editor == NULL )
+ {
+ KMessageBox::error( this, i18n( "The Regular Expression Editor could not be initilized." ) );
+ return;
+ }
+
+ //use the editor.
+ editor->setRegExp( txtCompValueText->text() );
+
+ //exec the dialog
+ if( editorDialog->exec() == QDialog::Accepted )
+ txtCompValueText->setText( editor->regExp() );
+
+ //delete dialog
+ delete editorDialog;
+ }
+ else
+ KMessageBox::error( this, i18n( "The Regular Expression Editor is not available." ) );
+
+}
+
+void FilterCriteriaWidget::setNumCriteria( int source, int condition, uint value )
+{
+ //set source
+ switch( source )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SIZE : cmbSource->setCurrentItem( ID_COMBO_SOURCE_SIZE ); break;
+ default : kdError() << "FilterCriteriaWidget::setNumCriteria: invalid source parameter." << endl;
+ return;
+ }
+
+ //show or hide widgets
+ slotSetWidgets();
+
+ //set condition
+ switch( condition )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_EQUAL : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_EQUAL ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_NOT_EQUAL : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_NOT_EQUAL ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_GREATER ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER_EQUAL : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_GREATER_EQUAL ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_LESS ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS_EQUAL : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_LESS_EQUAL ); break;
+ default : cmbConditionNum->setCurrentItem( ID_COMBO_COND_NUM_EQUAL ); break;
+ }
+
+ //set comparison value
+ spbCompValueNum->setValue( value );
+
+ //show or hide widgets
+ slotSetWidgets();
+}
+
+void FilterCriteriaWidget::setTextCriteria( int source, int condition, QString value, bool cs )
+{
+ //set source
+ switch( source )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_FROM : cmbSource->setCurrentItem( ID_COMBO_SOURCE_FROM ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_TO : cmbSource->setCurrentItem( ID_COMBO_SOURCE_TO ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SUBJECT : cmbSource->setCurrentItem( ID_COMBO_SOURCE_SUBJECT ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_HEADER : cmbSource->setCurrentItem( ID_COMBO_SOURCE_HEADER ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_ACCOUNT : cmbSource->setCurrentItem( ID_COMBO_SOURCE_ACCOUNT ); break;
+ default : kdError() << "FilterCriteriaWidget::setTextCriteria: invalid source parameter." << endl;
+ return;
+ }
+
+ //set condition
+ switch( condition )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_CONTAINS : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_CONTAINS );break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_CONTAINS : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_NOT_CONTAINS );break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_EQUALS : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_EQUALS );break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_EQUALS : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_NOT_EQUALS );break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_REGEXPR : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_REGEXPR );break;
+ case CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_REGEXPR : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_NOT_REGEXPR );break;
+ default : cmbConditionText->setCurrentItem( ID_COMBO_COND_TEXT_CONTAINS ); break;
+ }
+
+ //set value
+ txtCompValueText->setText( value );
+
+ //set case sensitve
+ chkCaseSensitive->setChecked( cs );
+
+ //show or hide widgets
+ slotSetWidgets();
+
+}
+
+FilterCriteria_Type FilterCriteriaWidget::getValues()
+{
+ FilterCriteria_Type crit; //return value
+
+ switch( cmbSource->currentItem() )
+ {
+ case ID_COMBO_SOURCE_FROM : crit.source = CONFIG_VALUE_FILTER_CRITERIA_SOURCE_FROM; break;
+ case ID_COMBO_SOURCE_TO : crit.source = CONFIG_VALUE_FILTER_CRITERIA_SOURCE_TO; break;
+ case ID_COMBO_SOURCE_SIZE : crit.source = CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SIZE; break;
+ case ID_COMBO_SOURCE_SUBJECT : crit.source = CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SUBJECT; break;
+ case ID_COMBO_SOURCE_HEADER : crit.source = CONFIG_VALUE_FILTER_CRITERIA_SOURCE_HEADER; break;
+ case ID_COMBO_SOURCE_ACCOUNT : crit.source = CONFIG_VALUE_FILTER_CRITERIA_SOURCE_ACCOUNT; break;
+ default : crit.source = 99; break;
+ }
+
+ if( crit.source == CONFIG_VALUE_FILTER_CRITERIA_SOURCE_FROM ||
+ crit.source == CONFIG_VALUE_FILTER_CRITERIA_SOURCE_TO ||
+ crit.source == CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SUBJECT ||
+ crit.source == CONFIG_VALUE_FILTER_CRITERIA_SOURCE_HEADER ||
+ crit.source == CONFIG_VALUE_FILTER_CRITERIA_SOURCE_ACCOUNT )
+ {
+ switch( cmbConditionText->currentItem() )
+ {
+ case ID_COMBO_COND_TEXT_CONTAINS : crit.condition = CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_CONTAINS; break;
+ case ID_COMBO_COND_TEXT_NOT_CONTAINS : crit.condition = CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_CONTAINS; break;
+ case ID_COMBO_COND_TEXT_EQUALS : crit.condition = CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_EQUALS; break;
+ case ID_COMBO_COND_TEXT_NOT_EQUALS : crit.condition = CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_EQUALS; break;
+ case ID_COMBO_COND_TEXT_REGEXPR : crit.condition = CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_REGEXPR; break;
+ case ID_COMBO_COND_TEXT_NOT_REGEXPR : crit.condition = CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_REGEXPR; break;
+ default : crit.condition = 99; break;
+ }
+ } else if ( crit.source == CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SIZE )
+ {
+ switch( cmbConditionNum->currentItem() )
+ {
+ case ID_COMBO_COND_NUM_EQUAL : crit.condition = CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_EQUAL; break;
+ case ID_COMBO_COND_NUM_NOT_EQUAL : crit.condition = CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_NOT_EQUAL; break;
+ case ID_COMBO_COND_NUM_GREATER : crit.condition = CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER; break;
+ case ID_COMBO_COND_NUM_GREATER_EQUAL : crit.condition = CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER_EQUAL; break;
+ case ID_COMBO_COND_NUM_LESS : crit.condition = CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS; break;
+ case ID_COMBO_COND_NUM_LESS_EQUAL : crit.condition = CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS_EQUAL; break;
+ default : crit.condition = 99;
+ }
+ } else
+ crit.condition = 99;
+
+ crit.txtValue = txtCompValueText->text();
+ crit.numValue = spbCompValueNum->value();
+ crit.cs = chkCaseSensitive->isChecked();
+
+ return crit;
+}
+
+
+#include "filtercriteriawidget.moc"
diff --git a/kshowmail/kcmconfigs/filtercriteriawidget.h b/kshowmail/kcmconfigs/filtercriteriawidget.h
new file mode 100644
index 0000000..14721c2
--- /dev/null
+++ b/kshowmail/kcmconfigs/filtercriteriawidget.h
@@ -0,0 +1,163 @@
+//
+// C++ Interface: filtercriteriawidget
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef FILTERCRITERIAWIDGET_H
+#define FILTERCRITERIAWIDGET_H
+
+//Qt headers
+#include <qwidget.h>
+#include <qlayout.h>
+#include <qcheckbox.h>
+
+//KDE headers
+#include <klineedit.h>
+#include <kseparator.h>
+#include <kdialog.h>
+#include <kcombobox.h>
+#include <klocale.h>
+#include <knuminput.h>
+#include <kpushbutton.h>
+#include <kregexpeditorinterface.h>
+#include <ktrader.h>
+#include <kdebug.h>
+#include <kmessagebox.h>
+#include <kparts/componentfactory.h>
+
+//KShowmail headers
+#include <../constants.h>
+#include <../types.h>
+
+//ComboBox IDs
+#define ID_COMBO_SOURCE_FROM 0
+#define ID_COMBO_SOURCE_TO 1
+#define ID_COMBO_SOURCE_SIZE 2
+#define ID_COMBO_SOURCE_SUBJECT 3
+#define ID_COMBO_SOURCE_HEADER 4
+#define ID_COMBO_SOURCE_ACCOUNT 5
+
+#define ID_COMBO_COND_TEXT_CONTAINS 0
+#define ID_COMBO_COND_TEXT_NOT_CONTAINS 1
+#define ID_COMBO_COND_TEXT_EQUALS 2
+#define ID_COMBO_COND_TEXT_NOT_EQUALS 3
+#define ID_COMBO_COND_TEXT_REGEXPR 4
+#define ID_COMBO_COND_TEXT_NOT_REGEXPR 5
+
+#define ID_COMBO_COND_NUM_EQUAL 0
+#define ID_COMBO_COND_NUM_NOT_EQUAL 1
+#define ID_COMBO_COND_NUM_GREATER 2
+#define ID_COMBO_COND_NUM_GREATER_EQUAL 3
+#define ID_COMBO_COND_NUM_LESS 4
+#define ID_COMBO_COND_NUM_LESS_EQUAL 5
+
+using namespace Types;
+
+/**
+ * @brief Part of the filter setup dialog (class FilterSetupDialog) to show a criteria of the selected filter.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class FilterCriteriaWidget : public QWidget
+{
+
+Q_OBJECT
+
+ public:
+
+ /**
+ * Constructor
+ */
+ FilterCriteriaWidget( QWidget *parent = 0, const char *name = 0 );
+
+ /**
+ * Destructor
+ */
+ ~FilterCriteriaWidget();
+
+ /**
+ * Sets the values of a numeric criteria.
+ * @param source Object of Comparison (see constants.h for valid values)
+ * @param condition Condition of the comparison (see constants.h for valid values)
+ * @param value comparison value
+ */
+ void setNumCriteria( int source, int condition, uint value );
+
+ /**
+ * Sets the values of a text criteria.
+ * @param source Object of Comparison (see constants.h for valid values)
+ * @param condition Condition of the comparison (see constants.h for valid values)
+ * @param value comparison string
+ * @param cs TRUE - comparison is case sensitive; FALSE - comparison is not case sensitive
+ */
+ void setTextCriteria( int source, int condition, QString value, bool cs );
+
+ /**
+ * Returns the values of the criteria.
+ * @return criteria values
+ */
+ FilterCriteria_Type getValues();
+
+ private:
+
+ /**
+ * Combobox to select the source of the criteria.
+ */
+ KComboBox* cmbSource;
+
+ /**
+ * Combobox to select the condition of a text source (From, To, ...)
+ */
+ KComboBox* cmbConditionText;
+
+ /**
+ * Combobox to select the condition of a numeric source (Size, ...)
+ */
+ KComboBox* cmbConditionNum;
+
+ /**
+ * Line for a text comparative value.
+ */
+ KLineEdit* txtCompValueText;
+
+ /**
+ * Spin Box for a numeric comparative value.
+ */
+ KIntNumInput* spbCompValueNum;
+
+ /**
+ * Checkbox to select case sensitive.
+ */
+ QCheckBox* chkCaseSensitive;
+
+ /**
+ * Button to open the regular expression editor.
+ */
+ KPushButton* btnOpenRegExpEditor;
+
+ /**
+ * TRUE - KRegExpEditor is installed and available.
+ */
+ bool kRegExpEditorAvailable;
+
+
+ private slots:
+
+ /**
+ * Connected with combobox cmbSource.
+ * Hides or shows the widgets dependent on the criteria source (text or numeric).
+ */
+ void slotSetWidgets();
+
+ /**
+ * Opens the editor for regular expressions.
+ */
+ void slotOpenRegExpEditor();
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/filtersetupdialog.cpp b/kshowmail/kcmconfigs/filtersetupdialog.cpp
new file mode 100644
index 0000000..58e390b
--- /dev/null
+++ b/kshowmail/kcmconfigs/filtersetupdialog.cpp
@@ -0,0 +1,451 @@
+//
+// C++ Implementation: filtersetupdialog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "filtersetupdialog.h"
+
+FilterSetupDialog::FilterSetupDialog( QWidget* parent, FilterSetupItem* item )
+ : KDialogBase( parent, "FilterSetupDialog", true, QString::null, Ok|Cancel, Ok, true )
+{
+ //save pointer to account and view
+ filter = item;
+
+ //set caption
+ if( item != NULL )
+ if( item->getName() == DEFAULT_FILTER_NAME )
+ setCaption( i18n( "New filter" ) );
+ else
+ setCaption( i18n( "Edit filter" ) );
+
+ //create main widget and layout
+ QWidget* pgMain = new QWidget( this );
+ setMainWidget( pgMain );
+ QVBoxLayout* layMain = new QVBoxLayout( pgMain, 0, spacingHint() );
+
+ //create filter name widgets
+ QHBoxLayout* layName = new QHBoxLayout( layMain, spacingHint() );
+ QLabel* lblName = new QLabel( i18n( "Name:" ), pgMain, "lblName" );
+ layName->addWidget( lblName );
+ txtName = new KLineEdit( pgMain, "txtName" );
+ layName->addWidget( txtName );
+
+ //create group boxes and layouts for rules and action
+ QGroupBox* gboxCriteria = new QGroupBox( 0, Qt::Horizontal, i18n( "Filter Criterias" ), pgMain, "gboxCriteria" );
+ QVBoxLayout* layCriteria = new QVBoxLayout( gboxCriteria->layout(), spacingHint() );
+ layMain->addWidget( gboxCriteria );
+
+ QGroupBox* gboxAction = new QGroupBox( 0, Qt::Horizontal, i18n( "Filter Action" ), pgMain, "gboxAction" );
+ QHBoxLayout* layAction = new QHBoxLayout( gboxAction->layout(), spacingHint() );
+ layMain->addWidget( gboxAction );
+
+ //radio buttons to select the kind of linkage between filter criterias
+ QHBoxLayout* layLinkage = new QHBoxLayout( layCriteria, spacingHint(), "layLinkage" );
+ grpLinkage = new QButtonGroup( NULL, "grpLinkage" );
+
+ QRadioButton* btnMatchAll = new QRadioButton( i18n( "Match all of the following" ), gboxCriteria, "btnMatchAll" );
+ QRadioButton* btnMatchAny = new QRadioButton( i18n( "Match any of the following" ), gboxCriteria, "btnMatchAny" );
+ grpLinkage->insert( btnMatchAll, ID_BUTTON_LINKAGE_MATCH_ALL );
+ grpLinkage->insert( btnMatchAny, ID_BUTTON_LINKAGE_MATCH_ANY );
+ layLinkage->addWidget( btnMatchAll );
+ layLinkage->addWidget( btnMatchAny );
+
+ switch( DEFAULT_FILTER_CRITERIA_LINKAGE )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL : grpLinkage->setButton( ID_BUTTON_LINKAGE_MATCH_ALL ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY : grpLinkage->setButton( ID_BUTTON_LINKAGE_MATCH_ANY ); break;
+ default : grpLinkage->setButton( ID_BUTTON_LINKAGE_MATCH_ALL ); break;
+ }
+
+ //this widget holds one or more criterias (class FilterCriteriaWidget)
+ wdgCriteriasHolding = new QWidget( gboxCriteria, "gboxCriteria" );
+ layCriteriasHolding = new QVBoxLayout( wdgCriteriasHolding, 0, spacingHint(), "layCriteriasHolding" );
+ layCriteria->addWidget( wdgCriteriasHolding );
+
+ //buttons to add or remove criterias
+ QHBoxLayout* layButtons = new QHBoxLayout( layCriteria, spacingHint(), "layButtons" );
+ btnAddCriteria = new KPushButton( KGuiItem( i18n( "More" ), "button_more", i18n( "Add a further criteria." ) ), gboxCriteria, "btnAddCriteria" );
+ btnRemoveCriteria = new KPushButton( KGuiItem( i18n( "Fewer" ), "button_fewer", i18n( "Remove the last criteria." ) ), gboxCriteria, "btnRemoveCriteria" );
+ btnAddCriteria->setSizePolicy( QSizePolicy::Maximum, QSizePolicy::Fixed );
+ btnRemoveCriteria->setSizePolicy( QSizePolicy::Maximum, QSizePolicy::Fixed );
+ layButtons->addWidget( btnAddCriteria );
+ layButtons->addWidget( btnRemoveCriteria );
+ layButtons->addStretch();
+ connect( btnAddCriteria, SIGNAL( clicked() ), this, SLOT( slotAddCriteriaWidget() ) );
+ connect( btnRemoveCriteria, SIGNAL( clicked() ), this, SLOT( slotRemoveCriteriaWidget() ) );
+
+ //create combobox to select action
+ cmbAction = new KComboBox( gboxAction, "cmbAction" );
+ layAction->addWidget( cmbAction );
+ QToolTip::add( cmbAction, i18n( "Choose the action for all mails which are filtered by this filter." ) );
+ connect( cmbAction, SIGNAL( activated( int ) ), this, SLOT( slotActionChanged( int ) ) );
+
+ //insert items
+ cmbAction->insertItem( i18n( "Show" ), ID_COMBO_FILTER_ACTION_PASS );
+ cmbAction->insertItem( i18n( "Delete" ), ID_COMBO_FILTER_ACTION_DELETE );
+ cmbAction->insertItem( i18n( "Mark" ), ID_COMBO_FILTER_ACTION_MARK );
+ cmbAction->insertItem( i18n( "Move" ), ID_COMBO_FILTER_ACTION_MOVE );
+ cmbAction->insertItem( i18n( "Spamcheck" ), ID_COMBO_FILTER_ACTION_SPAMCHECK );
+ cmbAction->insertItem( i18n( "Ignore" ), ID_COMBO_FILTER_ACTION_IGNORE );
+
+ //create edit line to defined the mailbox for move
+ txtMailbox = new KLineEdit( gboxAction );
+ layAction->addWidget( txtMailbox );
+
+ //create wizard button to configure mailbox
+ btnMailboxWizard= new KPushButton( KGuiItem( QString::null, "wizard" ), gboxAction );
+ layAction->addWidget( btnMailboxWizard );
+ QToolTip::add( btnMailboxWizard, i18n( "Choose the mailbox" ) );
+ connect( btnMailboxWizard, SIGNAL( clicked() ), this, SLOT( slotOpenMailBoxWizard() ) );
+
+ //set default action
+ switch( DEFAULT_FILTER_ACTION )
+ {
+ case CONFIG_VALUE_FILTER_ACTION_PASS : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_PASS ); break;
+ case CONFIG_VALUE_FILTER_ACTION_DELETE : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_DELETE ); break;
+ case CONFIG_VALUE_FILTER_ACTION_MARK : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_MARK ); break;
+ case CONFIG_VALUE_FILTER_ACTION_MOVE : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_MOVE ); break;
+ case CONFIG_VALUE_FILTER_ACTION_SPAMCHECK : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_SPAMCHECK ); break;
+ case CONFIG_VALUE_FILTER_ACTION_IGNORE : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_IGNORE ); break;
+ }
+
+ //enable or disable action widgets
+ slotActionChanged( cmbAction->currentItem() );
+
+ //this adds a first empty criteria widget at the dialog if the given setup item pointer is null
+ //(this means we want to create a new filter)
+ if( item == NULL )
+ {
+ slotAddCriteriaWidget();
+ }
+
+ //write values of the given filter into the dialog items
+ if( filter != NULL )
+ fillDialog();
+}
+
+
+FilterSetupDialog::~FilterSetupDialog()
+{
+}
+
+void FilterSetupDialog::fillDialog( )
+{
+ //check for valid pointer to the setup item
+ if( filter == NULL )
+ {
+ kdError() << "FilterSetupDialog::fillDialog: The given pointer to the filter setup item is NULL." << endl;
+ return;
+ }
+
+ //set filter name
+ txtName->setText( filter->getName() );
+
+ //set linkage
+ switch( filter->getCriteriaLinkage() )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL : grpLinkage->setButton( ID_BUTTON_LINKAGE_MATCH_ALL ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY : grpLinkage->setButton( ID_BUTTON_LINKAGE_MATCH_ANY ); break;
+ default : kdError() << "FilterSetupDialog::fillDialog: The Filter Setup Item of filter " << filter->getName() << " has returned an invalid linkage value. Set default value." << endl;
+ switch( DEFAULT_FILTER_CRITERIA_LINKAGE )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL : grpLinkage->setButton( ID_BUTTON_LINKAGE_MATCH_ALL ); break;
+ case CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY : grpLinkage->setButton( ID_BUTTON_LINKAGE_MATCH_ANY ); break;
+ default: kdError() << "FilterSetupDialog::fillDialog: The default value DEFAULT_FILTER_CRITERIA_LINKAGE in constants.h is also invalid. Set linkage to ALL." << endl;
+ grpLinkage->setButton( ID_BUTTON_LINKAGE_MATCH_ALL );
+ break;
+ }
+ break;
+ }
+
+ //set criterias
+ FilterCriteriaList_Type criteriaList = filter->getCriteriaList();
+
+ if( !criteriaList.empty() )
+ {
+ FilterCriteriaList_Type::iterator it;
+ for( it = criteriaList.begin(); it != criteriaList.end(); ++it )
+ {
+ //get source and condition
+ int source = (*it).source;
+ int condition = (*it).condition;
+
+ //depend on the source we add a numeric or text criteria
+ switch( source )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_FROM :
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_TO :
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SUBJECT :
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_HEADER :
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_ACCOUNT : addCriteriaWidget( source, condition, (*it).txtValue, (*it).cs ); break;
+
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SIZE : addCriteriaWidget( source, condition, (*it).numValue ); break;
+ default : kdError() << "FilterSetupDialog::fillDialog: The Filter Setup Item of filter " << filter->getName() << " has returned an invalid criteria. Add an empty criteria." << endl;
+ break;
+ }
+ }
+ }
+ else
+ //just add a empty criteria widget
+ slotAddCriteriaWidget();
+
+
+ //set action
+ switch( filter->getAction() )
+ {
+ case CONFIG_VALUE_FILTER_ACTION_PASS : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_PASS ); break;
+ case CONFIG_VALUE_FILTER_ACTION_DELETE : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_DELETE ); break;
+ case CONFIG_VALUE_FILTER_ACTION_MARK : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_MARK ); break;
+ case CONFIG_VALUE_FILTER_ACTION_MOVE : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_MOVE ); break;
+ case CONFIG_VALUE_FILTER_ACTION_IGNORE : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_IGNORE ); break;
+ case CONFIG_VALUE_FILTER_ACTION_SPAMCHECK : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_SPAMCHECK ); break;
+ default : kdError() << "FilterSetupDialog:: fillDialog: The Filter Setup Item of filter " << filter->getName() << " has returned an invalid action value. Set default value." << endl;
+ switch( DEFAULT_FILTER_ACTION )
+ {
+ case CONFIG_VALUE_FILTER_ACTION_PASS : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_PASS ); break;
+ case CONFIG_VALUE_FILTER_ACTION_DELETE : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_DELETE ); break;
+ case CONFIG_VALUE_FILTER_ACTION_MARK : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_MARK ); break;
+ case CONFIG_VALUE_FILTER_ACTION_MOVE : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_MOVE ); break;
+ case CONFIG_VALUE_FILTER_ACTION_IGNORE : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_IGNORE ); break;
+ case CONFIG_VALUE_FILTER_ACTION_SPAMCHECK : cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_SPAMCHECK ); break;
+ default: kdError() << "FilterSetupDialog::fillDialog: The default value DEFAULT_FILTER_ACTION in constants.h is also invalid. Set action to PASS." << endl;
+ cmbAction->setCurrentItem( ID_COMBO_FILTER_ACTION_PASS );
+ break;
+ }
+ }
+
+ //set mailbox name if action is MOVE
+ if( filter->getAction() == CONFIG_VALUE_FILTER_ACTION_MOVE )
+ txtMailbox->setText( filter->getMailBox() );
+
+ //enable or disable action widgets
+ slotActionChanged( cmbAction->currentItem() );
+
+}
+
+FilterCriteriaWidget* FilterSetupDialog::slotAddCriteriaWidget( )
+{
+ //create a new widget
+ FilterCriteriaWidget* crit = new FilterCriteriaWidget( wdgCriteriasHolding );
+ crit->setHidden( false ); //the new widgets are hidden by default
+
+ //insert it into the layout
+ layCriteriasHolding->addWidget( crit );
+
+ //hide remove button if necessary
+ const QObjectList* critList = wdgCriteriasHolding->children();
+
+ if( critList != NULL )
+ {
+ if( critList->count() <= 2 )
+ btnRemoveCriteria->setEnabled( false );
+ else
+ btnRemoveCriteria->setEnabled( true );
+ }
+
+
+
+ return crit;
+}
+
+void FilterSetupDialog::slotRemoveCriteriaWidget( )
+{
+ //get a list of all criteria widgets
+ const QObjectList* critList = wdgCriteriasHolding->children();
+
+ //return, if the pointer to the list is invalid
+ if( critList == NULL )
+ {
+ kdError() << "FilterSetupDialog::slotRemoveCriteriaWidget: No object found in the criteria widget holding." << endl;;
+ return;
+ }
+
+ //return, if the holding widget doesn't contain a criteria widget
+ //the count of children has to be greater than 2, because the layout is the first child
+ //and one criteria must always be present.
+ if( critList->count() <= 2 ) return;
+
+ //get iterator
+ QObjectListIterator it( *critList );
+
+ //get last child
+ QObject* obj = it.toLast();
+
+ //remove last child
+ if( obj->isA( "FilterCriteriaWidget" ) )
+ {
+ ((QWidget*)obj)->setHidden( true );
+ layCriteriasHolding->remove( (QWidget*)obj );
+ wdgCriteriasHolding->removeChild( obj );
+ }
+ else
+ kdError() << "FilterSetupDialog::slotRemoveCriteriaWidget: the last object of the criteria widget holding is not a criteria widget." << endl;
+
+ //hide remove button if necessary
+ if( critList->count() <= 2 )
+ btnRemoveCriteria->setEnabled( false );
+ else
+ btnRemoveCriteria->setEnabled( true );
+
+}
+
+void FilterSetupDialog::addCriteriaWidget( int source, int condition, uint value )
+{
+ //check source and condition
+ if( source != CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SIZE )
+ {
+ kdError() << "FilterSetupDialog::addCriteriaWidget: invalid source parameter." << endl;
+ return;
+ }
+
+ if( condition != CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_EQUAL &&
+ condition != CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_NOT_EQUAL &&
+ condition != CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER &&
+ condition != CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER_EQUAL &&
+ condition != CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS &&
+ condition != CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS_EQUAL )
+ {
+ kdError() << "FilterSetupDialog::addCriteriaWidget: invalid condition parameter." << endl;
+ return;
+ }
+
+ //create widget
+ FilterCriteriaWidget* crit = slotAddCriteriaWidget();
+
+ //set values
+ crit->setNumCriteria( source, condition, value );
+}
+
+void FilterSetupDialog::addCriteriaWidget( int source, int condition, QString value, bool cs )
+{
+ //check source and condition
+ if( source != CONFIG_VALUE_FILTER_CRITERIA_SOURCE_FROM &&
+ source != CONFIG_VALUE_FILTER_CRITERIA_SOURCE_TO &&
+ source != CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SUBJECT &&
+ source != CONFIG_VALUE_FILTER_CRITERIA_SOURCE_HEADER &&
+ source != CONFIG_VALUE_FILTER_CRITERIA_SOURCE_ACCOUNT )
+ {
+ kdError() << "FilterSetupDialog::addCriteriaWidget: invalid source parameter." << endl;
+ return;
+ }
+
+ if( condition != CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_CONTAINS &&
+ condition != CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_CONTAINS &&
+ condition != CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_EQUALS &&
+ condition != CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_EQUALS &&
+ condition != CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_REGEXPR &&
+ condition != CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_REGEXPR )
+ {
+ kdError() << "FilterSetupDialog::addCriteriaWidget: invalid condition parameter." << endl;
+ return;
+ }
+
+ //create widget
+ FilterCriteriaWidget* crit = slotAddCriteriaWidget();
+
+ //set values
+ crit->setTextCriteria( source, condition, value, cs );
+
+}
+
+void FilterSetupDialog::slotOk()
+{
+
+ //here we write the settings back to the filter setup item
+
+ //filter name
+ filter->setName( txtName->text() );
+
+ //linkage
+ switch( grpLinkage->selectedId() )
+ {
+ case ID_BUTTON_LINKAGE_MATCH_ALL : filter->setCriteriaLinkage( CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL ); break;
+ case ID_BUTTON_LINKAGE_MATCH_ANY : filter->setCriteriaLinkage( CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY ); break;
+ default : kdDebug() << "FilterSetupDialog::slotOk: Invalid linkage value. Set default value." << endl;
+ filter->setCriteriaLinkage( DEFAULT_FILTER_CRITERIA_LINKAGE ); break;
+ }
+
+ //action
+ switch( cmbAction->currentItem() )
+ {
+ case ID_COMBO_FILTER_ACTION_PASS : filter->setAction( CONFIG_VALUE_FILTER_ACTION_PASS ); break;
+ case ID_COMBO_FILTER_ACTION_DELETE : filter->setAction( CONFIG_VALUE_FILTER_ACTION_DELETE ); break;
+ case ID_COMBO_FILTER_ACTION_MARK : filter->setAction( CONFIG_VALUE_FILTER_ACTION_MARK ); break;
+ case ID_COMBO_FILTER_ACTION_MOVE : filter->setAction( CONFIG_VALUE_FILTER_ACTION_MOVE ); break;
+ case ID_COMBO_FILTER_ACTION_IGNORE : filter->setAction( CONFIG_VALUE_FILTER_ACTION_IGNORE ); break;
+ case ID_COMBO_FILTER_ACTION_SPAMCHECK : filter->setAction( CONFIG_VALUE_FILTER_ACTION_SPAMCHECK ); break;
+ default : kdDebug() << "FilterSetupDialog::slotOk: Invalid action value. Set default value." << endl;
+ filter->setAction( DEFAULT_FILTER_ACTION ); break;
+ }
+
+ //mailbox name if action is MOVE
+ if( cmbAction->currentItem() == ID_COMBO_FILTER_ACTION_MOVE )
+ filter->setMailBox( txtMailbox->text() );
+
+ //criteria widgets
+
+ //get list of all children of the criterias holding widget
+ const QObjectList* children = wdgCriteriasHolding->children();
+
+ //get iterator of the list
+ QObjectListIterator it( *children );
+
+ QObject* obj; //current child object
+ FilterCriteriaList_Type critList; //list of criterias; will be give to the filter setup item
+
+ //iterate over the children list
+ while ( ( obj = it.current() ) != NULL )
+ {
+ //get next child
+ ++it;
+
+ if( obj->isA( "FilterCriteriaWidget" ) ) //check for criteria object
+ {
+ //get the values of the criteria
+ FilterCriteria_Type crit = ( (FilterCriteriaWidget*)obj )->getValues();
+
+ //append the new criteria at the end of the criteria list
+ critList.push_back( crit );
+ }
+ }
+
+ //pass criteria list to filter setup item
+ filter->setCriteriaList( critList );
+
+ //call slot of super class to close the dialog
+ KDialogBase::slotOk();
+}
+
+void FilterSetupDialog::slotActionChanged( int index )
+{
+ switch( index )
+ {
+ case ID_COMBO_FILTER_ACTION_MOVE : txtMailbox->setEnabled( true );
+ if( txtMailbox->text() == "" ) txtMailbox->setText( DEFAULT_FILTER_ACTION_MOVE_MAILBOX );
+ btnMailboxWizard->setHidden( false );
+ break;
+ default : txtMailbox->setEnabled( false );
+ btnMailboxWizard->setHidden( true );
+ break;
+ }
+}
+
+void FilterSetupDialog::slotOpenMailBoxWizard( )
+{
+ MailBoxWizard wizard( this, "malboxwizard" );
+ wizard.setCaption( i18n( "Mailbox Select" ) );
+ int res = wizard.exec();
+
+ if( res == QDialog::Accepted )
+ txtMailbox->setText( wizard.getPath() );
+
+}
+
+
+#include "filtersetupdialog.moc"
diff --git a/kshowmail/kcmconfigs/filtersetupdialog.h b/kshowmail/kcmconfigs/filtersetupdialog.h
new file mode 100644
index 0000000..a9fd761
--- /dev/null
+++ b/kshowmail/kcmconfigs/filtersetupdialog.h
@@ -0,0 +1,191 @@
+//
+// C++ Interface: filtersetupdialog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef FILTERSETUPDIALOG_H
+#define FILTERSETUPDIALOG_H
+
+//button IDs
+#define ID_BUTTON_LINKAGE_MATCH_ALL 1
+#define ID_BUTTON_LINKAGE_MATCH_ANY 2
+
+//Qt headers
+#include <qlayout.h>
+#include <qgroupbox.h>
+#include <qbuttongroup.h>
+#include <qradiobutton.h>
+#include <qvbox.h>
+#include <qobjectlist.h>
+#include <qtooltip.h>
+#include <qlabel.h>
+
+//KDE headers
+#include <kdialogbase.h>
+#include <klocale.h>
+#include <kpushbutton.h>
+#include <kcombobox.h>
+#include <klineedit.h>
+
+//KShowmail headers
+#include "filtersetupitem.h"
+#include "filtercriteriawidget.h"
+#include "../constants.h"
+#include "mailboxwizard.h"
+
+//IDs of the action combo box
+#define ID_COMBO_FILTER_ACTION_PASS 0
+#define ID_COMBO_FILTER_ACTION_DELETE 1
+#define ID_COMBO_FILTER_ACTION_MARK 2
+#define ID_COMBO_FILTER_ACTION_MOVE 3
+#define ID_COMBO_FILTER_ACTION_SPAMCHECK 4
+#define ID_COMBO_FILTER_ACTION_IGNORE 5
+
+/**
+ * @brief Dialog to setup a filter.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class FilterSetupDialog : public KDialogBase
+{
+
+ Q_OBJECT
+
+ public:
+ /**
+ * General constructor
+ * @param parent parent of the dialog
+ * @param item filter to setup;
+ */
+ FilterSetupDialog( QWidget* parent, FilterSetupItem* item = NULL );
+
+ /**
+ * Destructor
+ */
+ ~FilterSetupDialog();
+
+ private:
+
+ /**
+ * filter to setup
+ */
+ FilterSetupItem* filter;
+
+ /**
+ * View which shows the filter items.
+ */
+ KListView* ListView;
+
+ /**
+ * Contains the filter name.
+ */
+ KLineEdit* txtName;
+
+ /**
+ * Combines the radio buttons to select the kind of linkage between the criterias.
+ */
+ QButtonGroup* grpLinkage;
+
+ /**
+ * This widget holds one ore more filter criteria dialogs (class FilterCriteriaWidget).
+ */
+ QWidget* wdgCriteriasHolding;
+
+ /**
+ * Layout for wdgCriterias.
+ */
+ QVBoxLayout* layCriteriasHolding;
+
+ /**
+ * Button to add a criteria dialog.
+ */
+ KPushButton* btnAddCriteria;
+
+ /**
+ * Button to remove the last criteria.
+ */
+ KPushButton* btnRemoveCriteria;
+
+ /**
+ * Combobox to select the action.
+ */
+ KComboBox* cmbAction;
+
+ /**
+ * If selected, the mails will be moved to the mailbox which is written in this edit line.
+ */
+ KLineEdit* txtMailbox;
+
+ /**
+ * This button opens a wizard which will help to get the right mailbox
+ */
+ KPushButton* btnMailboxWizard;
+
+
+ protected:
+
+ /**
+ * Writes the values of the given filter into the dialog items.
+ */
+ void fillDialog();
+
+ /**
+ * Adds a criteria widget dialog with values for numeric comparison.
+ * @param source Object of Comparison. It accepts only numeric objects (e.g. Size) (see constants.h for valid values)
+ * @param condition Condition of the comparison (see constants.h for valid values)
+ * @param value comparison value
+ */
+ void addCriteriaWidget( int source, int condition, uint value );
+
+ /**
+ * Adds a criteria widget dialog with values for text comparison.
+ * @param source Object of Comparison. It accepts only text objects (e.g. Subject) (see constants.h for valid values)
+ * @param condition Condition of the comparison (see constants.h for valid values)
+ * @param value comparison string
+ * @param cs TRUE - comparison is case sensitive; FALSE - comparison is not case sensitive
+ */
+ void addCriteriaWidget( int source, int condition, QString value, bool cs );
+
+
+ protected slots:
+
+ /**
+ * Overwritten method of KDialogBase.
+ * Called if OK was clicked.
+ * Stores the entered values into the given account item.
+ * If no item was given it creates a new one.
+ * After then it invokes slotOk() of KDialogBase.
+ */
+ void slotOk();
+
+ /**
+ * Connected with combobox cmbAction.
+ * Enables or disables additional widgets for action configuration.
+ * @param index position (index) of the selected action
+ */
+ void slotActionChanged( int index );
+
+ /**
+ * Adds a empty critera dialog widget.
+ * @return Pointer to the new widget
+ */
+ FilterCriteriaWidget* slotAddCriteriaWidget();
+
+ /**
+ * Removes the last criteria dialog widget.
+ */
+ void slotRemoveCriteriaWidget();
+
+ /**
+ * Connected with button btnMailboxWizard.
+ * Opens a wizard to configure the mailbox
+ */
+ void slotOpenMailBoxWizard();
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/filtersetupitem.cpp b/kshowmail/kcmconfigs/filtersetupitem.cpp
new file mode 100644
index 0000000..ef16a53
--- /dev/null
+++ b/kshowmail/kcmconfigs/filtersetupitem.cpp
@@ -0,0 +1,347 @@
+//
+// C++ Implementation: filtersetupitem
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "filtersetupitem.h"
+
+FilterSetupItem::FilterSetupItem( KListView* parent )
+ : KListViewItem( parent )
+{
+ //set default number
+ number = 0;
+
+ init();
+}
+
+FilterSetupItem::FilterSetupItem( KListView* parent, uint num )
+ : KListViewItem( parent )
+{
+ //store the given filter number
+ number = num;
+
+ init();
+}
+
+FilterSetupItem::~FilterSetupItem()
+{
+}
+
+void FilterSetupItem::init( )
+{
+ //get application config object (kshowmailrc)
+ config = KApplication::kApplication()->config();
+
+ //set default values
+ setName( i18n( DEFAULT_FILTER_NAME ) );
+ setCriteriaLinkage( DEFAULT_FILTER_CRITERIA_LINKAGE );
+ setAction( DEFAULT_FILTER_ACTION );
+
+ //show number in column
+ setText( ColNumber, QString("%1").arg( number ) );
+}
+
+void FilterSetupItem::setName( QString name )
+{
+ this->name = name;
+
+ //show name in the list view
+ setText( ColName, name );
+}
+
+QString FilterSetupItem::getName( ) const
+{
+ return name;
+}
+
+void FilterSetupItem::setNumber( uint number )
+{
+ this->number = number;
+
+ //show number in column
+ setText( ColNumber, QString("%1").arg( number ) );
+}
+
+void FilterSetupItem::setAction( int action )
+{
+ if( action == CONFIG_VALUE_FILTER_ACTION_PASS ||
+ action == CONFIG_VALUE_FILTER_ACTION_DELETE ||
+ action == CONFIG_VALUE_FILTER_ACTION_MARK ||
+ action == CONFIG_VALUE_FILTER_ACTION_MOVE ||
+ action == CONFIG_VALUE_FILTER_ACTION_IGNORE ||
+ action == CONFIG_VALUE_FILTER_ACTION_SPAMCHECK )
+ {
+ this->action = action;
+ }
+ else
+ {
+ kdError() << "FilterSetupItem::setAction: Invalid parameter for action given. Parameter: " << action << endl;
+ this->action = DEFAULT_FILTER_ACTION;
+ return;
+ }
+
+ //update the text of the rule column
+ updateActionColumn();
+}
+
+void FilterSetupItem::save( )
+{
+ //build group name
+ QString group;
+ group = QString( "%1%2" ).arg( CONFIG_GROUP_FILTER ).arg( number );
+
+ //first delete the group to clear it of old criteria entries
+ config->deleteGroup( group );
+
+ //set group
+ config->setGroup( group );
+
+ //write entries
+ config->writeEntry( CONFIG_ENTRY_FILTER_NAME, name );
+
+ if( linkage == CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL ||
+ linkage == CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY )
+ {
+ config->writeEntry( CONFIG_ENTRY_FILTER_CRITERIA_LINKAGE, linkage );
+ }
+ else
+ {
+ config->writeEntry( CONFIG_ENTRY_FILTER_CRITERIA_LINKAGE, DEFAULT_FILTER_CRITERIA_LINKAGE );
+ }
+
+ if( action == CONFIG_VALUE_FILTER_ACTION_PASS ||
+ action == CONFIG_VALUE_FILTER_ACTION_DELETE ||
+ action == CONFIG_VALUE_FILTER_ACTION_MARK ||
+ action == CONFIG_VALUE_FILTER_ACTION_MOVE ||
+ action == CONFIG_VALUE_FILTER_ACTION_IGNORE ||
+ action == CONFIG_VALUE_FILTER_ACTION_SPAMCHECK )
+ {
+ config->writeEntry( CONFIG_ENTRY_FILTER_ACTION, action );
+ }
+ else
+ {
+ config->writeEntry( CONFIG_ENTRY_FILTER_ACTION, DEFAULT_FILTER_ACTION );
+ }
+
+ //write action parameter
+ switch( action )
+ {
+ case CONFIG_VALUE_FILTER_ACTION_MOVE :
+ config->writeEntry( CONFIG_ENTRY_FILTER_MOVE_MAILBOX, mailbox );
+ break;
+
+ default: break;
+ }
+
+ //write criteria list and number of criterias
+ if( !criteriaList.empty() )
+ {
+ config->writeEntry( CONFIG_ENTRY_FILTER_CRITERIA_NUMBER, criteriaList.size() );
+
+ int ctr = 0; //number of the current criteria
+ FilterCriteriaList_Type::iterator it;
+ for( it = criteriaList.begin(); it != criteriaList.end(); ++it )
+ {
+ ctr++;
+
+ config->writeEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_SOURCE ).arg( ctr ), (*it).source );
+ config->writeEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_CONDITION ).arg( ctr ), (*it).condition );
+
+ switch( (*it).source )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_FROM :
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_TO :
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SUBJECT :
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_HEADER :
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_ACCOUNT : config->writeEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_VALUE ).arg( ctr ), (*it).txtValue );
+ config->writeEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_CASESENSITIVE ).arg( ctr ), (*it).cs );
+ break;
+
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SIZE : config->writeEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_VALUE ).arg( ctr ), (*it).numValue );
+ break;
+ }
+ }
+ }
+ else
+ {
+ config->writeEntry( CONFIG_ENTRY_FILTER_CRITERIA_NUMBER, 0 );
+ }
+
+}
+
+void FilterSetupItem::setCriteriaLinkage( int linkage )
+{
+ if( linkage == CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL ||
+ linkage == CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY )
+ {
+ this->linkage = linkage;
+ }
+ else
+ {
+ kdError() << "FilterSetupItem::setCriteriaLinkage: Invalid parameter for criteria linkage given. Parameter: " << linkage << endl;
+ this->linkage = DEFAULT_FILTER_CRITERIA_LINKAGE;
+ return;
+ }
+
+}
+
+void FilterSetupItem::setCriteriaList( FilterCriteriaList_Type list )
+{
+ criteriaList = list;
+}
+
+void FilterSetupItem::setMailBox( QString mailbox )
+{
+ this->mailbox = mailbox;
+
+ //update the text of the rule column
+ updateActionColumn();
+}
+
+int FilterSetupItem::getCriteriaLinkage( ) const
+{
+ return linkage;
+}
+
+int FilterSetupItem::getAction( ) const
+{
+ return action;
+}
+
+QString FilterSetupItem::getMailBox( ) const
+{
+ if( action == CONFIG_VALUE_FILTER_ACTION_MOVE )
+ return mailbox;
+ else
+ return QString( "" );
+}
+
+FilterCriteriaList_Type FilterSetupItem::getCriteriaList( ) const
+{
+ return criteriaList;
+}
+
+uint FilterSetupItem::getNumber( ) const
+{
+ return number;
+}
+
+int FilterSetupItem::compare( QListViewItem * i, int col, bool ascending ) const
+{
+ if( col == ColNumber )
+ {
+ return text( ColNumber ).toInt() - i->text( ColNumber ).toInt();
+ }
+ else
+ return key( col, ascending ).compare( i->key( col, ascending) );
+
+}
+
+void FilterSetupItem::updateActionColumn( )
+{
+ QString strAction; //filter action
+
+ //build action
+ switch( action )
+ {
+ case CONFIG_VALUE_FILTER_ACTION_PASS : strAction = i18n( "Show" ); break;
+ case CONFIG_VALUE_FILTER_ACTION_DELETE : strAction = i18n( "Delete" ); break;
+ case CONFIG_VALUE_FILTER_ACTION_MARK : strAction = i18n( "Mark" ); break;
+ case CONFIG_VALUE_FILTER_ACTION_MOVE : strAction = i18n( "Move to %1").arg( mailbox ); break;
+ case CONFIG_VALUE_FILTER_ACTION_IGNORE : strAction = i18n( "Ignore"); break;
+ case CONFIG_VALUE_FILTER_ACTION_SPAMCHECK : strAction = i18n( "Check for spam" ); break;
+ default : strAction = i18n( "Unknown action" ); break;
+ }
+
+ //set text
+ setText( ColAction, QString( " %1" ).arg( strAction ) );
+}
+
+void FilterSetupItem::load( )
+{
+ //set group
+ config->setGroup( QString( "%1%2" ).arg( CONFIG_GROUP_FILTER ).arg( number ) );
+
+ //get name
+ setName( config->readEntry( CONFIG_ENTRY_FILTER_NAME, DEFAULT_FILTER_NAME ) );
+
+ //get linkage
+ setCriteriaLinkage( config->readNumEntry( CONFIG_ENTRY_FILTER_CRITERIA_LINKAGE, DEFAULT_FILTER_CRITERIA_LINKAGE ) );
+ if( linkage != CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL && linkage != CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY )
+ setCriteriaLinkage( DEFAULT_FILTER_CRITERIA_LINKAGE );
+
+ //get action
+ setAction( config->readNumEntry( CONFIG_ENTRY_FILTER_ACTION, DEFAULT_FILTER_ACTION ) );
+ if( action != CONFIG_VALUE_FILTER_ACTION_PASS &&
+ action != CONFIG_VALUE_FILTER_ACTION_DELETE &&
+ action != CONFIG_VALUE_FILTER_ACTION_MARK &&
+ action != CONFIG_VALUE_FILTER_ACTION_MOVE &&
+ action != CONFIG_VALUE_FILTER_ACTION_IGNORE &&
+ action != CONFIG_VALUE_FILTER_ACTION_SPAMCHECK )
+ setAction( DEFAULT_FILTER_ACTION );
+
+ //get action parameter
+ switch( action )
+ {
+ case CONFIG_VALUE_FILTER_ACTION_MOVE : setMailBox( config->readEntry( CONFIG_ENTRY_FILTER_MOVE_MAILBOX, DEFAULT_FILTER_ACTION_MOVE_MAILBOX ) ); break;
+ default : setMailBox( QString::null );
+ }
+
+ //get number of criterias
+ uint numCrit = config->readNumEntry( CONFIG_ENTRY_FILTER_CRITERIA_NUMBER, 0 );
+
+ //get criterias
+ for( uint ctr = 1; ctr <= numCrit; ctr++ )
+ {
+ struct FilterCriteria_Type crit;
+
+ crit.source = config->readNumEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_SOURCE ).arg( ctr ), DEFAULT_FILTER_CRITERIA_SOURCE );
+ if( crit.source != CONFIG_VALUE_FILTER_CRITERIA_SOURCE_FROM &&
+ crit.source != CONFIG_VALUE_FILTER_CRITERIA_SOURCE_TO &&
+ crit.source != CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SUBJECT &&
+ crit.source != CONFIG_VALUE_FILTER_CRITERIA_SOURCE_HEADER &&
+ crit.source != CONFIG_VALUE_FILTER_CRITERIA_SOURCE_ACCOUNT &&
+ crit.source != CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SIZE )
+ crit.source = DEFAULT_FILTER_CRITERIA_SOURCE;
+
+ switch( crit.source )
+ {
+ case CONFIG_VALUE_FILTER_CRITERIA_SOURCE_SIZE : crit.condition = config->readNumEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_CONDITION ).arg( ctr ), DEFAULT_FILTER_CRITERIA_COND_NUM );
+ if( crit.condition != CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_EQUAL &&
+ crit.condition != CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_NOT_EQUAL &&
+ crit.condition != CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER &&
+ crit.condition != CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_GREATER_EQUAL &&
+ crit.condition != CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS &&
+ crit.condition != CONFIG_VALUE_FILTER_CRITERIA_COND_NUM_LESS_EQUAL )
+ crit.condition = DEFAULT_FILTER_CRITERIA_COND_NUM;
+ crit.numValue = config->readNumEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_VALUE ).arg( ctr ), DEFAULT_FILTER_CRITERIA_SIZE );
+ break;
+
+ default : crit.condition = config->readNumEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_CONDITION ).arg( ctr ), DEFAULT_FILTER_CRITERIA_COND_TEXT );
+ if( crit.condition != CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_CONTAINS &&
+ crit.condition != CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_CONTAINS &&
+ crit.condition != CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_EQUALS &&
+ crit.condition != CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_EQUALS &&
+ crit.condition != CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_REGEXPR &&
+ crit.condition != CONFIG_VALUE_FILTER_CRITERIA_COND_TEXT_NOT_REGEXPR )
+ crit.condition = DEFAULT_FILTER_CRITERIA_COND_TEXT;
+ crit.txtValue = config->readEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_VALUE ).arg( ctr ) );
+ crit.cs = config->readBoolEntry( QString( "%1%2" ).arg( CONFIG_ENTRY_FILTER_CRITERIA_CASESENSITIVE ).arg( ctr ), DEFAULT_FILTER_CRITERIA_CASE_SENSITIVE );
+ break;
+ }
+
+ criteriaList.push_back( crit );
+
+ }
+
+
+}
+
+
+
diff --git a/kshowmail/kcmconfigs/filtersetupitem.h b/kshowmail/kcmconfigs/filtersetupitem.h
new file mode 100644
index 0000000..1d1bf02
--- /dev/null
+++ b/kshowmail/kcmconfigs/filtersetupitem.h
@@ -0,0 +1,240 @@
+//
+// C++ Interface: filtersetupitem
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef FILTERSETUPITEM_H
+#define FILTERSETUPITEM_H
+
+//KDE headers
+#include <klistview.h>
+#include <kapplication.h>
+#include <kconfig.h>
+#include <kdebug.h>
+#include <klocale.h>
+
+//KShowmail headers
+#include "../constants.h"
+#include "../types.h"
+
+using namespace Types;
+
+/**
+ * @brief This class is used in ConfigFilter to show the available filters in the list view and to store a filter setup.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class FilterSetupItem : public KListViewItem
+{
+
+ public:
+
+ /**
+ * Column Numbers.
+ */
+ enum Column{ ColNumber = 0, ColName = 1, ColAction = 2 };
+
+ /**
+ * General Constructor
+ * @param parent the list view
+ */
+ FilterSetupItem( KListView* parent );
+
+ /**
+ * Constructor
+ * @param parent the list view
+ * @param num filter number
+ */
+ FilterSetupItem( KListView* parent, uint num );
+
+ /**
+ * Destructor
+ */
+ ~FilterSetupItem();
+
+ /**
+ * Sets the filter name.
+ * @param name filter name
+ * @see name
+ * @see getName
+ */
+ void setName( QString name );
+
+ /**
+ * Returns the name of this filter.
+ * @return filter name
+ * @see name
+ * @see setName
+ */
+ QString getName() const;
+
+ /**
+ * Sets the filter number.
+ * @param number filter number.
+ * @see number
+ * @see getNumber
+ */
+ void setNumber( uint number );
+
+ /**
+ * Returns the filter number.
+ * @return filter number
+ * @see number
+ * @see setNumber
+ */
+ uint getNumber() const;
+
+ /**
+ * Sets the action. See constants.h for valid values (CONFIG_VALUE_FILTER_ACTION...).
+ * @param action
+ * @see getAction
+ * @see action
+ */
+ void setAction( int action );
+
+ /**
+ * Returns the action of this filter.
+ * See constants.h for possible values (CONFIG_VALUE_FILTER_ACTION...).
+ * @return action code
+ * @see setAction
+ * @see action
+ */
+ int getAction() const;
+
+ /**
+ * Sets the mailbox of a move action.
+ * @param mailbox name of the mailbox
+ * @see setMailBox
+ * @see mailbox
+ */
+ void setMailBox( QString mailbox );
+
+ /**
+ * Returns the mailbox name of a move action if this action is selected. Otherwise it returns an empty string.
+ * @return mailbox name
+ * @see setMailBox
+ * @see mailbox
+ */
+ QString getMailBox() const;
+
+ /**
+ * Sets the criteria linkage.
+ * Valid values are CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL (all criterias have to satisy) or CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY (at least one criteria has to satisy ).
+ * @param linkage criteria linkage
+ * @see linkage
+ */
+ void setCriteriaLinkage( int linkage );
+
+ /**
+ * Returns the criteria linkage.
+ * Possible values are CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL (all criterias have to satisy) or CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY (at least one criteria has to satisy ).
+ * @return criteria linkage
+ * @see setCriteriaLinkage
+ * @see linkage
+ */
+ int getCriteriaLinkage() const;
+
+ /**
+ * Sets the criteria list.
+ * @param list criteria list
+ * @see criteriaList
+ * @see getCriteriaList
+ * @see Types::FilterCriteriaList_Type
+ */
+ void setCriteriaList( FilterCriteriaList_Type list );
+
+ /**
+ * Returns the criteria list.
+ * @return criteria list
+ * @see criteriaList
+ * @see setCriteriaList
+ * @see Types::FilterCriteriaList_Type
+ */
+ FilterCriteriaList_Type getCriteriaList() const;
+
+ /**
+ * Saves the settings to the configuration file.
+ * The group is named CONFIG_GROUP_FILTER + filter number, e.g. Filter12.
+ */
+ void save();
+
+ /**
+ * Reimplemantation of QListViewItem::compare.
+ * Compares this list view item to i using the column col in ascending order. Reutrns <0 if this item is less than i,
+ * 0 if they are equal and >0 if this item is greater than i. The parameter ascneding will be ignored.
+ * @param i pointer to the second view item
+ * @param col number of the sorted column
+ * @param ascending ignored
+ */
+ virtual int compare( QListViewItem* i, int col, bool ascending ) const;
+
+ /**
+ * Reads the settings from the config file.
+ * The group is named CONFIG_GROUP_FILTER + filter number, e.g. Filter12.
+ */
+ void load();
+
+
+ private:
+
+ /**
+ * filter name
+ */
+ QString name;
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * List of filter criterias.
+ */
+ FilterCriteriaList_Type criteriaList;
+
+ /**
+ * Filter Action
+ * See constants.h for valid values (CONFIG_VALUE_FILTER_ACTION...).
+ */
+ int action;
+
+ /**
+ * Contains the mailbox name if the move action is selected.
+ */
+ QString mailbox;
+
+ /**
+ * Filter Number.
+ * The filters will be showed and run through in ascending order. The first number is "0".
+ */
+ uint number;
+
+ /**
+ * Criteria Linkage.
+ * Valid values are CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ALL (all criterias have to satisy) or CONFIG_VALUE_FILTER_CRITERIA_LINKAGE_MATCH_ANY (at least one criteria has to satisy ).
+ */
+ int linkage;
+
+ protected:
+
+ /**
+ * Initializes the object.
+ */
+ void init();
+
+ /**
+ * Updates the text of the rule column.
+ */
+ void updateActionColumn();
+
+
+
+
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/kshowmailconfigaccounts.desktop b/kshowmail/kcmconfigs/kshowmailconfigaccounts.desktop
new file mode 100644
index 0000000..e8da1f9
--- /dev/null
+++ b/kshowmail/kcmconfigs/kshowmailconfigaccounts.desktop
@@ -0,0 +1,20 @@
+[Desktop Entry]
+Encoding=UTF-8
+Type=Service
+Name=Accounts
+Name[de]=Konten
+Name[es]=Cuentas
+Comment=Accounts
+Comment[de]=Konten
+Comment[es]=Cuentas
+Icon=network
+ServiceTypes=KCModule
+
+X-KDE-ModuleType=Library
+X-KDE-Library=kshowmailconfigaccounts
+X-KDE-CfgDlgHierarchy=
+X-KDE-FactoryName=kshowmailconfigaccounts
+X-KDE-IsHiddenByDefault=
+X-KDE-RootOnly=
+X-KDE-Weight=5
+X-KDE-ParentApp=kshowmail
diff --git a/kshowmail/kcmconfigs/kshowmailconfigactions.desktop b/kshowmail/kcmconfigs/kshowmailconfigactions.desktop
new file mode 100644
index 0000000..a925df8
--- /dev/null
+++ b/kshowmail/kcmconfigs/kshowmailconfigactions.desktop
@@ -0,0 +1,20 @@
+[Desktop Entry]
+Encoding=UTF-8
+Type=Service
+Name=Actions
+Name[de]=Aktionen
+Name[es]=Acciones
+Comment=actions
+Comment[de]=Aktionen
+Comment[es]=Acciones
+Icon=launch
+ServiceTypes=KCModule
+
+X-KDE-ModuleType=Library
+X-KDE-Library=kshowmailconfigactions
+X-KDE-CfgDlgHierarchy=
+X-KDE-FactoryName=kshowmailconfigactions
+X-KDE-IsHiddenByDefault=
+X-KDE-RootOnly=
+X-KDE-Weight=2
+X-KDE-ParentApp=kshowmail
diff --git a/kshowmail/kcmconfigs/kshowmailconfigdisplay.desktop b/kshowmail/kcmconfigs/kshowmailconfigdisplay.desktop
new file mode 100644
index 0000000..ac5e02b
--- /dev/null
+++ b/kshowmail/kcmconfigs/kshowmailconfigdisplay.desktop
@@ -0,0 +1,19 @@
+[Desktop Entry]
+Encoding=UTF-8
+Type=Service
+Name=Display
+Name[de]=Erscheinungsbild
+Name[es]=Visualización
+Comment=Display Options
+Comment[de]=Erscheinungsbild
+Comment[es]=Opciones de visualización
+Icon=looknfeel
+ServiceTypes=KCModule
+X-KDE-ModuleType=Library
+X-KDE-Library=kshowmailconfigdisplay
+X-KDE-CfgDlgHierarchy=
+X-KDE-FactoryName=kshowmailconfigdisplay
+X-KDE-IsHiddenByDefault=
+X-KDE-RootOnly=
+X-KDE-Weight=3
+X-KDE-ParentApp=kshowmail \ No newline at end of file
diff --git a/kshowmail/kcmconfigs/kshowmailconfigfilter.desktop b/kshowmail/kcmconfigs/kshowmailconfigfilter.desktop
new file mode 100644
index 0000000..cd6b801
--- /dev/null
+++ b/kshowmail/kcmconfigs/kshowmailconfigfilter.desktop
@@ -0,0 +1,19 @@
+[Desktop Entry]
+Type=Service
+Name=Filter
+Name[de]=Filter
+Name[es]=Filtro
+Comment=Filter
+Comment[de]=Filter
+Comment[es]=Filtro
+Icon=filter
+ServiceTypes=KCModule
+
+X-KDE-ModuleType=Library
+X-KDE-Library=kshowmailconfigfilter
+X-KDE-CfgDlgHierarchy=
+X-KDE-FactoryName=kshowmailconfigfilter
+X-KDE-IsHiddenByDefault=
+X-KDE-RootOnly=
+X-KDE-Weight=6
+X-KDE-ParentApp=kshowmail
diff --git a/kshowmail/kcmconfigs/kshowmailconfiggeneral.desktop b/kshowmail/kcmconfigs/kshowmailconfiggeneral.desktop
new file mode 100644
index 0000000..1f4db6d
--- /dev/null
+++ b/kshowmail/kcmconfigs/kshowmailconfiggeneral.desktop
@@ -0,0 +1,19 @@
+[Desktop Entry]
+Encoding=UTF-8
+Type=Service
+Name=General
+Name[de]=Allgemeines
+Name[es]=General
+Comment=General Options
+Comment[de]=Allgemeine Einstellungen
+Comment[es]=Opciones generales
+Icon=exec
+ServiceTypes=KCModule
+X-KDE-ModuleType=Library
+X-KDE-Library=kshowmailconfiggeneral
+X-KDE-CfgDlgHierarchy=
+X-KDE-FactoryName=kshowmailconfiggeneral
+X-KDE-IsHiddenByDefault=
+X-KDE-RootOnly=
+X-KDE-Weight=4
+X-KDE-ParentApp=kshowmail \ No newline at end of file
diff --git a/kshowmail/kcmconfigs/kshowmailconfiglog.desktop b/kshowmail/kcmconfigs/kshowmailconfiglog.desktop
new file mode 100644
index 0000000..4a5dc5f
--- /dev/null
+++ b/kshowmail/kcmconfigs/kshowmailconfiglog.desktop
@@ -0,0 +1,16 @@
+[Desktop Entry]
+Encoding=UTF-8
+Type=Service
+Name=Log
+Name[de]=Log
+Name[es]=Registro
+Comment=Log
+Comment[de]=Log
+Comment[es]=Registro
+Icon=kedit
+ServiceTypes=KCModule
+X-KDE-ModuleType=Library
+X-KDE-Library=kshowmailconfiglog
+X-KDE-FactoryName=kshowmailconfiglog
+X-KDE-Weight=7
+X-KDE-ParentApp=kshowmail
diff --git a/kshowmail/kcmconfigs/kshowmailconfigspamcheck.desktop b/kshowmail/kcmconfigs/kshowmailconfigspamcheck.desktop
new file mode 100644
index 0000000..5f6cb3b
--- /dev/null
+++ b/kshowmail/kcmconfigs/kshowmailconfigspamcheck.desktop
@@ -0,0 +1,20 @@
+[Desktop Entry]
+Type=Service
+Name=Spam Checking
+Name[de]=Spam-Prüfung
+Name[es]=Análisis de spam
+Comment=Checking for Spam
+Comment[de]=Prüfung auf Spam
+Comment[es]=Analizar el spam
+Icon=kfind
+ServiceTypes=KCModule
+
+X-KDE-ModuleType=Library
+X-KDE-Library=kshowmailconfigspamcheck
+X-KDE-CfgDlgHierarchy=
+X-KDE-FactoryName=kshowmailconfigspamcheck
+X-KDE-IsHiddenByDefault=
+X-KDE-RootOnly=
+X-KDE-Weight=6
+X-KDE-ParentApp=kshowmail
+
diff --git a/kshowmail/kcmconfigs/kwalletaccess.cpp b/kshowmail/kcmconfigs/kwalletaccess.cpp
new file mode 100644
index 0000000..20dccc6
--- /dev/null
+++ b/kshowmail/kcmconfigs/kwalletaccess.cpp
@@ -0,0 +1,137 @@
+//
+// C++ Implementation: kwalletaccess
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "kwalletaccess.h"
+
+
+bool KWalletAccess::savePassword( const QString & account, const QString & password )
+{
+ //check for enabled KWallet
+ if( !KWallet::Wallet::isEnabled() )
+ {
+ KMessageBox::error( NULL, i18n( "KWallet is not available." ) );
+ return false;
+ }
+
+ //get wallet name for network data
+ QString name = KWallet::Wallet::NetworkWallet();
+ if( name == "" || name == QString::null )
+ {
+ KMessageBox::error( NULL, i18n( "Could not get wallet name for network datas from KWallet." ) );
+ return false;
+ }
+
+ //open wallet
+ //we want to create a connection object just at first call of this function
+ static KWallet::Wallet* wallet;
+
+ if( wallet == NULL )
+ {
+ wallet = KWallet::Wallet::openWallet( name );
+ }
+ else if( !wallet->isOpen() )
+ {
+ delete wallet;
+ wallet = KWallet::Wallet::openWallet( name );
+ }
+
+ if( wallet == NULL )
+ {
+ KMessageBox::error( NULL, i18n( "Could not open KWallet." ) );
+ return false;
+ }
+
+ //create kshowmail folder if it does not exist
+ if( !wallet->hasFolder( "KShowmail" ) )
+ {
+ bool createFolderSuccess = wallet->createFolder( "KShowmail" );
+
+ if( !createFolderSuccess )
+ {
+ KMessageBox::error( NULL, i18n( "Could not create folder for KShowmail in KWallet." ) );
+ return false;
+ }
+ }
+
+ //set folder
+ bool setFolderSuccess = wallet->setFolder( "KShowmail" );
+ if( !setFolderSuccess )
+ {
+ KMessageBox::error( NULL, i18n( "Could not open folder for KShowmail in KWallet." ) );
+ return false;
+ }
+
+ //write password
+ int writePasswordSuccess = wallet->writePassword( account, password );
+ if( writePasswordSuccess != 0 )
+ {
+ KMessageBox::error( NULL, i18n( "Could not save password in KWallet." ) );
+ return false;
+ }
+
+
+ return true;
+}
+
+QString KWalletAccess::getPassword( const QString & account )
+{
+ //check for enabled KWallet
+ if( !KWallet::Wallet::isEnabled() )
+ {
+ KMessageBox::error( NULL, i18n( "KWallet is not available." ) );
+ return QString::null;
+ }
+
+ //get wallet name for network data
+ QString name = KWallet::Wallet::NetworkWallet();
+ if( name == "" || name == QString::null )
+ {
+ KMessageBox::error( NULL, i18n( "Could not get wallet name for network datas from KWallet." ) );
+ return QString::null;
+ }
+
+ //open wallet
+ //we want to create a connection object just at first call of this function
+ static KWallet::Wallet* wallet;
+
+ if( wallet == NULL )
+ {
+ wallet = KWallet::Wallet::openWallet( name );
+ }
+ else if( !wallet->isOpen() )
+ {
+ delete wallet;
+ wallet = KWallet::Wallet::openWallet( name );
+ }
+
+ if( wallet == NULL )
+ {
+ KMessageBox::error( NULL, i18n( "Could not open KWallet." ) );
+ return QString::null;
+ }
+
+ //set folder
+ bool setFolderSuccess = wallet->setFolder( "KShowmail" );
+ if( !setFolderSuccess )
+ {
+ KMessageBox::error( NULL, i18n( "Could not open folder for KShowmail in KWallet." ) );
+ return QString::null;
+ }
+
+ //read password
+ QString password;
+
+ int readPasswordSuccess = wallet->readPassword( account, password );
+ if( readPasswordSuccess != 0 )
+ {
+ KMessageBox::error( NULL, i18n( "Could not get password of account %1 from KWallet." ).arg( account) );
+ return QString::null;
+ }
+
+ return password;
+}
diff --git a/kshowmail/kcmconfigs/kwalletaccess.h b/kshowmail/kcmconfigs/kwalletaccess.h
new file mode 100644
index 0000000..8e9c537
--- /dev/null
+++ b/kshowmail/kcmconfigs/kwalletaccess.h
@@ -0,0 +1,45 @@
+//
+// C++ Interface: kwalletaccess
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef KWALLETACCESS_H
+#define KWALLETACCESS_H
+
+//Qt headers
+#include <qstring.h>
+
+//KDE headers
+#include <kwallet.h>
+#include <kmessagebox.h>
+#include <kdebug.h>
+#include <klocale.h>
+
+/**
+ * @brief Provides routines to save and read passwords using KWallet.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+namespace KWalletAccess
+{
+
+ /**
+ * Saves the given password into KWallet.
+ * @param account account name
+ * @param password the password
+ * @return TRUE - password successfully saved
+ * @return FALSE - password could not be saved
+ */
+ bool savePassword( const QString& account, const QString& password );
+
+ /**
+ * Returns the password of the given account.
+ * @param account account name
+ * @return the password or QString::null, if the sought password is not stored in KWallet.
+ */
+ QString getPassword( const QString& account );
+}
+
+#endif
diff --git a/kshowmail/kcmconfigs/mailboxwizard.cpp b/kshowmail/kcmconfigs/mailboxwizard.cpp
new file mode 100644
index 0000000..d6ab904
--- /dev/null
+++ b/kshowmail/kcmconfigs/mailboxwizard.cpp
@@ -0,0 +1,164 @@
+//
+// C++ Implementation: mailboxwizard
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2008
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "mailboxwizard.h"
+
+MailBoxWizard::MailBoxWizard( QWidget* parent, const char* name )
+ : QWizard( parent, name, true )
+{
+
+ //this is page one
+ //in this the user can chosse his mail directory
+ //----------------------------------------------
+ QWidget* page1 = new QWidget( this, "page1" );
+ QHBoxLayout* layMain1 = new QHBoxLayout( page1, 0, 10 );
+
+ txtMailDir = new KLineEdit( page1, "txtMailDir" );
+ layMain1->addWidget( txtMailDir );
+
+ btnMailDir = new KPushButton( KGuiItem( QString(), QString( "folder" ), i18n( "Press to choose the mail directory" ), i18n( "Press to choose the mail directory" ) ), page1, "btnMailDir" );
+ btnMailDir->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed );
+ layMain1->addWidget( btnMailDir );
+ connect( btnMailDir, SIGNAL( clicked() ), this, SLOT( slotOpenDirDialog() ) );
+
+ title1 = i18n( "Please choose the path to the mailboxes.\nKShowmail supports only MailDir boxes." );
+ addPage( page1, title1 );
+
+
+ //this is page two
+ //in this the user can choose the mailbox
+ //---------------------------------------
+ QWidget* page2 = new QWidget( this, "page2" );
+ QHBoxLayout* layMain2 = new QHBoxLayout( page2, 0, 10 );
+
+ lstMailboxes = new KListView( page2, "lstMailboxes" );
+ lstMailboxes->addColumn( "Mailbox" );
+ lstMailboxes->setRootIsDecorated( true );
+ layMain2->addWidget( lstMailboxes );
+
+ title2 = i18n( "Please choose the mailbox" );
+ addPage( page2, title2 );
+ setFinishEnabled( page2, true );
+
+ connect( this, SIGNAL( selected( const QString& ) ), this, SLOT( slotPageChanged( const QString& ) ) );
+}
+
+
+MailBoxWizard::~MailBoxWizard()
+{
+}
+
+void MailBoxWizard::slotOpenDirDialog( )
+{
+ //save old path
+ QString oldPath = txtMailDir->text();
+
+ //get new path
+ QString path = KFileDialog::getExistingDirectory( oldPath, this, i18n( "Choose the mailbox directory") );
+
+ //put new or old path in the edit line
+ if( path == QString::null )
+ txtMailDir->setText( oldPath );
+ else
+ txtMailDir->setText( path );
+}
+
+void MailBoxWizard::slotPageChanged( const QString& pageTitle )
+{
+ //just we looking for mailboxes if the page 2 was opened
+ if( pageTitle == title2 )
+ {
+ //clear all entries
+ lstMailboxes->clear();
+
+ //create an directory object to browse the given directory
+ QDir mailDir( txtMailDir->text() );
+ if( mailDir.isReadable() ) //is the dir readable?
+ {
+ //get a list of all entries in this directory
+ const QStringList entries = mailDir.entryList( QDir::Dirs | QDir::Readable | QDir::Writable | QDir::Hidden, QDir::Name | QDir::IgnoreCase | QDir::LocaleAware );
+
+ for( QStringList::const_iterator it = entries.begin(); it != entries.end(); ++it )
+ {
+ //add an entry to the mailbox list
+ QDir newMailDir( mailDir );
+ newMailDir.cd( (*it) );
+ if( (*it) != ".." && (*it) != "." && isMailDir( newMailDir ) )
+ addMailBoxListItem( *it, mailDir );
+ }
+ }
+ }
+
+}
+
+bool MailBoxWizard::isMailDir( const QDir & path )
+{
+ //get a list of all subdirectories in this directory
+ const QStringList entries = path.entryList( QDir::Dirs | QDir::Readable | QDir::Writable | QDir::Hidden, QDir::Name | QDir::IgnoreCase | QDir::LocaleAware );
+
+ //a maildir folder must contains the folders "cur", "new" and "tmp"
+ bool curFound = false;
+ bool newFound = false;
+ bool tmpFound = false;
+
+ //iterate over all directories and look for the three necessary dirs
+ QStringList::const_iterator it = entries.begin();
+ while( it != entries.end() && !( curFound && newFound && tmpFound ) )
+ {
+ if( *it == "tmp" )
+ tmpFound = true;
+ else if( *it == "cur" )
+ curFound = true;
+ else if( *it == "new" )
+ newFound = true;
+
+ ++it;
+ }
+
+ return curFound && newFound && tmpFound;
+}
+
+void MailBoxWizard::addMailBoxListItem( QString boxname, QDir path )
+{
+ //translate some default mailboxes
+ QString boxnameTrans;
+ if( boxname.lower() == "inbox" )
+ boxnameTrans = i18n( "Inbox" );
+ else if( boxname.lower() == "outbox" )
+ boxnameTrans = i18n( "Outbox" );
+ else if( boxname.lower() == "drafts" )
+ boxnameTrans = i18n( "Drafts" );
+ else if( boxname.lower() == "sent-mail" )
+ boxnameTrans = i18n( "sent-mail" );
+ else if( boxname.lower() == "trash" )
+ boxnameTrans = i18n( "Trash" );
+ else
+ boxnameTrans = boxname;
+
+ //create item
+ MailBoxWizardListItem* newItem;
+ newItem = new MailBoxWizardListItem( lstMailboxes, boxnameTrans, path.absPath() + "/" + boxname + "/" );
+
+
+}
+
+QString MailBoxWizard::getPath( )
+{
+ MailBoxWizardListItem* item = (MailBoxWizardListItem*)lstMailboxes->selectedItem();
+
+ QString path = QString::null;
+ if( item != NULL )
+ path = item->getPath();
+
+ return path;
+}
+
+#include "mailboxwizard.moc"
diff --git a/kshowmail/kcmconfigs/mailboxwizard.h b/kshowmail/kcmconfigs/mailboxwizard.h
new file mode 100644
index 0000000..2c32b7a
--- /dev/null
+++ b/kshowmail/kcmconfigs/mailboxwizard.h
@@ -0,0 +1,131 @@
+//
+// C++ Interface: mailboxwizard
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2008
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef MAILBOXWIZARD_H
+#define MAILBOXWIZARD_H
+
+//C-headers
+#include <stdlib.h>
+
+//Qt headers
+#include <qwizard.h>
+#include <qwidget.h>
+#include <qlayout.h>
+#include <qdir.h>
+#include <qregexp.h>
+#include <qfileinfo.h>
+#include <qmap.h>
+
+//KDE headers
+#include <klocale.h>
+#include <klineedit.h>
+#include <kpushbutton.h>
+#include <kfiledialog.h>
+#include <klistview.h>
+#include <kstandarddirs.h>
+#include <kconfig.h>
+#include <kdebug.h>
+
+//Kshowmail headers
+#include "../constants.h"
+#include "mailboxwizardlistitem.h"
+
+/**
+ * Wizard to configure the mailbox to which a filteres mail shall be moved.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class MailBoxWizard : public QWizard
+{
+
+ Q_OBJECT
+
+ public:
+
+ /**
+ * Constructor
+ */
+ MailBoxWizard( QWidget* parent = 0, const char* name = 0 );
+
+ /**
+ * Destructor
+ */
+ ~MailBoxWizard();
+
+ /**
+ * Returns the absolute path of the selected mailbox.
+ * @return the path
+ */
+ QString getPath();
+
+ private:
+
+ /**
+ * This contains the path to the mail directory
+ */
+ KLineEdit* txtMailDir;
+
+ /**
+ * This button opens a file dialog to slecht the mail directory
+ */
+ KPushButton* btnMailDir;
+
+ /**
+ * This view shows the available mailboxes in the selected directory
+ */
+ KListView* lstMailboxes;
+
+ /**
+ * Title of page 1.
+ * Set by constructor
+ */
+ QString title1;
+
+ /**
+ * Title of page 2.
+ * Set by Constructor.
+ */
+ QString title2;
+
+ /**
+ * Returns whether the given directory is a maildir directory
+ * @param path the directory for test
+ * @return TRUE - directory is a maildir directory
+ */
+ bool isMailDir( const QDir& path );
+
+ /**
+ * Adds a new mailbox list view item to the mailbox list or to a given parent item.
+ * @param boxname name of the mailbox
+ * @param path path to the directory of this mailbox
+ */
+ void addMailBoxListItem( QString boxname, QDir path );
+
+
+
+ private slots:
+
+ /**
+ * Connected with btnMailDir.
+ * Opens a file dialog to choose the mail directory.
+ */
+ void slotOpenDirDialog();
+
+ /**
+ * Connected with the signal selected of this wizard.
+ * Searchs for mailboxes inside the path typed in page1.
+ * @param pageTitle title of the selected page
+ */
+ void slotPageChanged( const QString& pageTitle );
+
+
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/mailboxwizardlistitem.cpp b/kshowmail/kcmconfigs/mailboxwizardlistitem.cpp
new file mode 100644
index 0000000..4afdc2a
--- /dev/null
+++ b/kshowmail/kcmconfigs/mailboxwizardlistitem.cpp
@@ -0,0 +1,28 @@
+//
+// C++ Implementation: mailboxwizardlistitem
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2008
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "mailboxwizardlistitem.h"
+
+MailBoxWizardListItem::~MailBoxWizardListItem()
+{
+}
+
+MailBoxWizardListItem::MailBoxWizardListItem( QListView* parent, QString label, QString path )
+ : KListViewItem( parent, label )
+{
+ this->path = path;
+}
+
+QString MailBoxWizardListItem::getPath( )
+{
+ return path;
+}
+
diff --git a/kshowmail/kcmconfigs/mailboxwizardlistitem.h b/kshowmail/kcmconfigs/mailboxwizardlistitem.h
new file mode 100644
index 0000000..603a9c8
--- /dev/null
+++ b/kshowmail/kcmconfigs/mailboxwizardlistitem.h
@@ -0,0 +1,61 @@
+//
+// C++ Interface: mailboxwizardlistitem
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2008
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef MAILBOXWIZARDLISTITEM_H
+#define MAILBOXWIZARDLISTITEM_H
+
+//Qt-Headers
+#include <qlistview.h>
+
+//KDE-Headers
+#include <klistview.h>
+
+/**
+ * This is a list item in the mailbox list of the mailbox wizard
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class MailBoxWizardListItem : public KListViewItem
+{
+
+ public:
+
+ /**
+ * Constructor
+ * Constructs a new top-level entry in the mailbox list.
+ * @param parent pointer to mailbox list.
+ * @param label column content
+ * @param path the absolute path to this mailbox
+ */
+ MailBoxWizardListItem( QListView* parent, QString label, QString path );
+
+ /**
+ * Destructor
+ */
+ ~MailBoxWizardListItem();
+
+ /**
+ * Returns the path to this mailbox.
+ * @return path to this mailbox
+ */
+ QString getPath();
+
+ private:
+
+ /**
+ * The path to this mailbox
+ */
+ QString path;
+
+
+
+};
+
+#endif
diff --git a/kshowmail/kcmconfigs/senderlistdialog.cpp b/kshowmail/kcmconfigs/senderlistdialog.cpp
new file mode 100644
index 0000000..c30804c
--- /dev/null
+++ b/kshowmail/kcmconfigs/senderlistdialog.cpp
@@ -0,0 +1,151 @@
+//
+// C++ Implementation: senderlistdialog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "senderlistdialog.h"
+
+SenderListDialog::SenderListDialog(QWidget *parent, ListType list, const char *name)
+ : KDialogBase( parent, name, true, QString::null, Ok|Cancel, Ok, true )
+{
+ //save list type
+ this->list = list;
+
+ //get application config object (kshowmailrc)
+ config = KApplication::kApplication()->config();
+
+ //set caption
+ if( list == White )
+ setCaption( "Whitelist" );
+ else
+ setCaption( "Blacklist" );
+
+ //build GUI
+ //---------
+
+ //main widget and layout
+ QWidget* wdgMain = new QWidget( this );
+ setMainWidget( wdgMain );
+ QVBoxLayout* layMain = new QVBoxLayout( wdgMain, 0, spacingHint() );
+
+ //edit frame
+ editFrame = new KEditListBox( wdgMain, "editFrame", true, KEditListBox::Add | KEditListBox::Remove );
+ editFrame->setTitle( i18n( "List" ) );
+ if( list == White )
+ QToolTip::add( editFrame->listBox(), i18n( "A mail whose sender is listed here will pass the filter.\nA mail will be accepted, if its From line incloses a list entry.\nE.g. a line of\n\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is accepted by the entries\nUlrich Weigelt\nulrich.weigelt@gmx.de\n\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>" ) );
+ else
+ QToolTip::add( editFrame->listBox(), i18n( "A mail whose sender is listed here will be hold up by the filter.\nA mail will be stopped, if its From line incloses a list entry.\nE.g. a line of\n\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is filtered by the entries\nUlrich Weigelt\nulrich.weigelt@gmx.de\n\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>" ) );
+
+ layMain->addWidget( editFrame );
+
+ connect( editFrame->addButton(), SIGNAL( clicked() ), this, SLOT( slotSort() ) );
+ connect( editFrame->lineEdit(), SIGNAL( returnPressed( const QString & ) ), this, SLOT( slotSort() ) );
+
+ //this radio buttons we just need in the blacklist
+ if( list == Black )
+ {
+ QGroupBox* gboxAction = new QGroupBox( 0, Qt::Horizontal, i18n( "Action" ), wdgMain, "gboxAction" );
+ QHBoxLayout* layAction = new QHBoxLayout( gboxAction->layout(), 10 );
+ layMain->addWidget( gboxAction );
+
+ grpAction = new QButtonGroup( NULL, "grpAction" );
+ QRadioButton* btnDelete = new QRadioButton( i18n( "Delete"), gboxAction, "btnDelete" );
+ QRadioButton* btnMark = new QRadioButton( i18n( "Mark" ), gboxAction, "btnMark" );
+
+ grpAction->insert( btnDelete, ID_BUTTON_FILTER_SENDERLIST_DELETE );
+ grpAction->insert( btnMark, ID_BUTTON_FILTER_SENDERLIST_MARK );
+
+ QToolTip::add( btnDelete, i18n( "The mails will be deleted." ) );
+ QToolTip::add( btnMark, i18n( "The mails will be marked." ) );
+
+ layAction->addWidget( btnDelete );
+ layAction->addWidget( btnMark );
+
+ //set default
+ switch( DEFAULT_FILTER_BLACKLIST_ACTION )
+ {
+ case CONFIG_VALUE_FILTER_BLACKLIST_ACTION_DELETE : grpAction->setButton( ID_BUTTON_FILTER_SENDERLIST_DELETE ); break;
+ case CONFIG_VALUE_FILTER_BLACKLIST_ACTION_MARK : grpAction->setButton( ID_BUTTON_FILTER_SENDERLIST_MARK ); break;
+ default : grpAction->setButton( ID_BUTTON_FILTER_SENDERLIST_DELETE ); break;
+ }
+ }
+ //set size
+ setGeometry( 50, 50, (int)( this->width() / 2 ), this->height() );
+
+ //get values
+ fillDialog();
+}
+
+
+SenderListDialog::~SenderListDialog()
+{
+}
+
+void SenderListDialog::slotSort( )
+{
+ editFrame->listBox()->sort();
+}
+
+void SenderListDialog::slotOk( )
+{
+ //set config group
+ config->setGroup( CONFIG_GROUP_FILTER );
+
+ //save the list of senders
+ if( list == Black )
+ config->writeEntry( CONFIG_ENTRY_FILTER_BLACKLIST, editFrame->items() );
+ else
+ config->writeEntry( CONFIG_ENTRY_FILTER_WHITELIST, editFrame->items() );
+
+ //save blacklist action
+ if( list == Black )
+ {
+ int action = grpAction->selectedId();
+ if( action != ID_BUTTON_FILTER_SENDERLIST_DELETE && action != ID_BUTTON_FILTER_SENDERLIST_MARK )
+ action = DEFAULT_FILTER_BLACKLIST_ACTION;
+
+ switch( action )
+ {
+ case ID_BUTTON_FILTER_SENDERLIST_DELETE : config->writeEntry( CONFIG_ENTRY_FILTER_BLACKLIST_ACTION, CONFIG_VALUE_FILTER_BLACKLIST_ACTION_DELETE ); break;
+ case ID_BUTTON_FILTER_SENDERLIST_MARK : config->writeEntry( CONFIG_ENTRY_FILTER_BLACKLIST_ACTION, CONFIG_VALUE_FILTER_BLACKLIST_ACTION_MARK ); break;
+ default : config->writeEntry( CONFIG_ENTRY_FILTER_BLACKLIST_ACTION, CONFIG_VALUE_FILTER_BLACKLIST_ACTION_DELETE ); break;
+ }
+ }
+
+ config->sync();
+
+ //call slot of super class to close the dialog
+ KDialogBase::slotOk();
+}
+
+void SenderListDialog::fillDialog( )
+{
+ //set config group
+ config->setGroup( CONFIG_GROUP_FILTER );
+
+ //get list of senders
+ if( list == Black )
+ editFrame->setItems( config->readListEntry( CONFIG_ENTRY_FILTER_BLACKLIST ) );
+ else
+ editFrame->setItems( config->readListEntry( CONFIG_ENTRY_FILTER_WHITELIST ) );
+
+ //get blacklist action
+ if( list == Black )
+ {
+ switch( config->readNumEntry( CONFIG_ENTRY_FILTER_BLACKLIST_ACTION, DEFAULT_FILTER_BLACKLIST_ACTION ) )
+ {
+ case CONFIG_VALUE_FILTER_BLACKLIST_ACTION_DELETE : grpAction->setButton( ID_BUTTON_FILTER_SENDERLIST_DELETE ); break;
+ case CONFIG_VALUE_FILTER_BLACKLIST_ACTION_MARK : grpAction->setButton( ID_BUTTON_FILTER_SENDERLIST_MARK ); break;
+ default : grpAction->setButton( ID_BUTTON_FILTER_SENDERLIST_DELETE ); break;
+ }
+ }
+}
+
+
+#include "senderlistdialog.moc"
diff --git a/kshowmail/kcmconfigs/senderlistdialog.h b/kshowmail/kcmconfigs/senderlistdialog.h
new file mode 100644
index 0000000..eeb0661
--- /dev/null
+++ b/kshowmail/kcmconfigs/senderlistdialog.h
@@ -0,0 +1,112 @@
+//
+// C++ Interface: senderlistdialog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef SENDERLISTDIALOG_H
+#define SENDERLISTDIALOG_H
+
+//Qt headers
+#include <qlayout.h>
+#include <qtooltip.h>
+#include <qradiobutton.h>
+#include <qbuttongroup.h>
+#include <qpushbutton.h>
+
+//KDE headers
+#include <kdialogbase.h>
+#include <kapplication.h>
+#include <keditlistbox.h>
+#include <klocale.h>
+#include <klineedit.h>
+#include <kconfig.h>
+
+//KShowmail headers
+#include "../constants.h"
+
+//Button IDs
+#define ID_BUTTON_FILTER_SENDERLIST_DELETE 1
+#define ID_BUTTON_FILTER_SENDERLIST_MARK 2
+
+/**
+ * @brief This is a dialog to edit the blacklist and whitelist. It is used by the class ConfigFilter.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class SenderListDialog : public KDialogBase
+{
+
+ Q_OBJECT
+
+ public:
+
+ /**
+ * Type of list.
+ */
+ enum ListType { Black, White };
+
+ /**
+ * Constructor
+ * @param parent parent widget
+ * @param list list which shall be opened
+ * @param name widget name
+ */
+ SenderListDialog( QWidget *parent = 0, ListType list = Black, const char *name = 0 );
+
+ /**
+ * Destructor
+ */
+ ~SenderListDialog();
+
+ private:
+
+ /**
+ * list which shall be opened
+ */
+ ListType list;
+
+ /**
+ * Application Config Object
+ */
+ KConfig* config;
+
+ /**
+ * Edit Frame
+ */
+ KEditListBox* editFrame;
+
+ /**
+ * Combines the action radio buttons for the blacklist.
+ */
+ QButtonGroup* grpAction;
+
+ /**
+ * Reads the entries for the dialog from the config file fill them in it.
+ */
+ void fillDialog();
+
+ private slots:
+
+ /**
+ * Connected with add button of the edit frame.
+ * Sorts the content of the list box.
+ */
+ void slotSort();
+
+ /**
+ * Overwritten method of KDialogBase.
+ * Called if OK was clicked.
+ * Stores the entered values.
+ * After then it invokes slotOk() of KDialogBase.
+ */
+ void slotOk();
+
+
+};
+
+#endif
diff --git a/kshowmail/kfeedback.cpp b/kshowmail/kfeedback.cpp
new file mode 100644
index 0000000..daadfe8
--- /dev/null
+++ b/kshowmail/kfeedback.cpp
@@ -0,0 +1,504 @@
+
+/*
+ * File name: kfeedback.cpp
+ * Summary: User feedback form
+ * License: LGPL - See file COPYING.LIB for details.
+ * Author: Stefan Hundhammer <sh@suse.de>
+ * modified by Eggert Ehmke <eggert.ehmke@berlin.de>
+ *
+ * Updated: 2002-02-24
+ *
+ * $Id: kfeedback.cpp,v 1.3 2007/03/18 15:05:39 kuddel-fl Exp $
+ *
+ */
+
+
+#include <qheader.h>
+#include <qlayout.h>
+#include <qlabel.h>
+#include <qmultilineedit.h>
+#include <qhbox.h>
+
+#include <kglobal.h>
+#include <kapplication.h>
+#include <klocale.h>
+#include <kdebug.h>
+#include <kaboutdata.h>
+#include <kiconloader.h>
+#include <kurl.h>
+#include <kdeversion.h>
+
+#include "kfeedback.h"
+
+
+KFeedbackDialog::KFeedbackDialog( const QString & feedbackMailAddress, const QString & helpTopic )
+ : KDialogBase( Plain, i18n( "Feedback" ), Apply | ( helpTopic.isEmpty() ? Cancel : Cancel | Help ), Apply )
+{
+ QVBoxLayout * layout = new QVBoxLayout( plainPage(), 0, spacingHint() );
+ // setButtonApplyText( i18n( "&Mail this..." ) ); deprecated
+ setButtonApply(KGuiItem (i18n( "&Mail this..." )));
+
+ if ( ! helpTopic.isEmpty() )
+ setHelp( helpTopic );
+
+ _form = new KFeedbackForm( feedbackMailAddress, plainPage() );
+ CHECK_PTR( _form );
+
+ layout->addWidget( _form );
+ checkSendButton();
+
+ connect( this, SIGNAL( applyClicked() ),
+ _form, SLOT ( sendMail() ) );
+
+ connect( _form, SIGNAL( mailSent() ),
+ this, SLOT ( hide() ) );
+
+ connect( _form, SIGNAL( mailSent() ),
+ this, SIGNAL( mailSent() ) );
+
+ connect( _form, SIGNAL( checkComplete() ),
+ this, SLOT ( checkSendButton() ) );
+}
+
+
+KFeedbackDialog::~KFeedbackDialog()
+{
+ // NOP
+}
+
+
+void
+KFeedbackDialog::checkSendButton()
+{
+ enableButtonApply( _form->readyToSend() );
+}
+
+
+
+
+
+KFeedbackForm::KFeedbackForm( const QString & feedbackMailAddress,
+ QWidget * parent )
+ : QVBox( parent )
+ , _feedbackMailAddress( feedbackMailAddress )
+{
+ //
+ // Explanation above the question list
+ //
+
+ QLabel * label = new QLabel( i18n( "<p><b>Please tell us your opinion about this program.</b></p>"
+ "<p>You will be able to review everything in your mailer "
+ "before any mail is sent.<br>"
+ "Nothing will be sent behind your back.</p>"
+ ), this );
+ //
+ // Question list
+ //
+
+ _questionList = new KFeedbackQuestionList( this );
+ CHECK_PTR( _questionList );
+
+ connect( _questionList, SIGNAL( checkComplete() ),
+ this, SLOT ( slotCheckComplete() ) );
+
+
+ //
+ // Explanation below the question list
+ //
+
+ QHBox * hbox = new QHBox( this );
+ CHECK_PTR( hbox );
+
+ QSizePolicy pol( QSizePolicy::Fixed, QSizePolicy::Fixed ); // hor / vert
+
+ label = new QLabel( i18n( "Questions marked with " ), hbox );
+ CHECK_PTR( label );
+ label->setSizePolicy( pol );
+
+ label = new QLabel( hbox );
+ CHECK_PTR( label );
+ label->setPixmap( KGlobal::iconLoader()->loadIcon( "edit", KIcon::Small ) );
+ label->setSizePolicy( pol );
+
+ label = new QLabel( i18n( " must be answered before a mail can be sent.") , hbox );
+ CHECK_PTR( label );
+ label->setSizePolicy( pol );
+
+ new QWidget( hbox ); // Fill any leftover space to the right.
+
+
+ //
+ // Free-text comment field
+ //
+
+ label = new QLabel( "\n" + i18n( "&Additional comments:" ), this ); CHECK_PTR( label );
+ _comment = new QMultiLineEdit( this ); CHECK_PTR( _comment );
+
+ label->setBuddy( _comment );
+#if (QT_VERSION < 300)
+ _comment->setFixedVisibleLines( 5 );
+#endif
+ _comment->setWordWrap( QMultiLineEdit::FixedColumnWidth );
+ _comment->setWrapColumnOrWidth( 70 );
+}
+
+
+KFeedbackForm::~KFeedbackForm()
+{
+ // NOP
+}
+
+
+void
+KFeedbackForm::sendMail()
+{
+ //
+ // Build mail subject
+ //
+
+ QString subject;
+
+ const KAboutData * aboutData = KGlobal::instance()->aboutData();
+
+ if ( aboutData )
+ subject = aboutData->programName() + "-" + aboutData->version();
+ else
+ subject = kapp->name();
+
+ subject += " user feedback";
+
+
+ //
+ // Build mail body
+ //
+
+ QString body = subject + "\n\n"
+ + formatComment()
+ + _questionList->result();
+
+
+ //
+ // Build "mailto:" URL from all this
+ //
+
+ KURL mail;
+ mail.setProtocol( "mailto" );
+ mail.setPath( _feedbackMailAddress );
+ mail.setQuery( "?subject=" + KURL::encode_string( subject ) +
+ "&body=" + KURL::encode_string( body ) );
+
+ // TODO: Check for maximum command line length.
+ //
+ // The hard part with this is how to get this from all that 'autoconf'
+ // stuff into 'config.h' or some other include file without hardcoding
+ // anything - this is too system dependent.
+
+
+ //
+ // Actually send mail
+ //
+
+ kapp->invokeMailer( mail );
+
+ emit mailSent();
+}
+
+
+void
+KFeedbackForm::slotCheckComplete()
+{
+ emit checkComplete();
+}
+
+
+QString
+KFeedbackForm::formatComment()
+{
+ QString result = _comment->text();
+
+ if ( ! result.isEmpty() )
+ {
+ result = "<comment>\n" + result + "\n</comment>\n\n";
+ }
+
+ return result;
+}
+
+
+bool
+KFeedbackForm::readyToSend()
+{
+ return _questionList->isComplete();
+}
+
+
+
+
+
+
+KFeedbackQuestionList::KFeedbackQuestionList( QWidget *parent )
+ : QListView( parent )
+{
+ addColumn( "" );
+ header()->hide();
+}
+
+
+KFeedbackQuestionList::~KFeedbackQuestionList()
+{
+ // NOP
+}
+
+
+bool
+KFeedbackQuestionList::isComplete()
+{
+ KFeedbackQuestion * question = firstQuestion();
+
+ while ( question )
+ {
+ if ( question->isRequired() && ! question->isAnswered() )
+ return false;
+
+ question = question->nextQuestion();
+ }
+
+ return true;
+}
+
+
+QString KFeedbackQuestionList::result()
+{
+ QString res;
+ KFeedbackQuestion * question = firstQuestion();
+
+ while ( question )
+ {
+ res += question->result();
+
+ question = question->nextQuestion();
+ }
+ res += "Compiled on KDE version: ";
+ res += KDE_VERSION_STRING;
+
+ return res;
+}
+
+
+KFeedbackQuestion* KFeedbackQuestionList::addQuestion( const QString & text,
+ const QString & id,
+ bool exclusiveAnswer,
+ bool required )
+{
+ KFeedbackQuestion * question = new KFeedbackQuestion( this, text, id,
+ exclusiveAnswer,
+ required );
+ CHECK_PTR( question );
+
+ return question;
+}
+
+
+void
+KFeedbackQuestionList::addYesNoQuestion( const QString & text,
+ const QString & id,
+ bool required )
+{
+
+ KFeedbackQuestion * question = new KFeedbackQuestion( this, text, id,
+ true, // exclusive
+ required );
+ CHECK_PTR( question );
+ question->addAnswer( i18n( "yes" ), "yes" );
+ question->addAnswer( i18n( "no" ), "no" );
+}
+
+
+void
+KFeedbackQuestionList::questionAnswered()
+{
+ emit checkComplete();
+}
+
+void
+KFeedbackQuestionList::questionAdded( KFeedbackQuestion * question)
+{
+ if ( question->isRequired() )
+ emit checkComplete();
+}
+
+
+
+
+
+static int nextNo = 0;
+
+KFeedbackQuestion::KFeedbackQuestion( KFeedbackQuestionList * parent,
+ const QString & text,
+ const QString & id,
+ bool exclusiveAnswer,
+ bool required,
+ bool open )
+ : QCheckListItem( parent, text )
+ , _id( id )
+ , _exclusiveAnswer( exclusiveAnswer )
+ , _required( required )
+{
+ if ( required )
+ {
+ setPixmap( 0, KGlobal::iconLoader()->loadIcon( "edit", KIcon::Small ) );
+ }
+
+ setOpen( open );
+ _no = nextNo++;
+
+ parent->questionAdded( this );
+}
+
+
+void
+KFeedbackQuestion::addAnswer( const QString & text,
+ const QString & id )
+{
+ new KFeedbackAnswer( this, text, id, _exclusiveAnswer );
+}
+
+
+bool
+KFeedbackQuestion::isAnswered()
+{
+ if ( ! _exclusiveAnswer )
+ {
+ /**
+ * If any number of answers is permitted for this question, this
+ * question is always considered to be answered.
+ **/
+
+ return true;
+ }
+
+
+ /**
+ * If this question requires an exclusive answer, exactly one of them
+ * should be checked. We don't need to bother about more than one being
+ * checked here - QListView does that for us.
+ **/
+
+ KFeedbackAnswer *answer = firstAnswer();
+
+ while ( answer )
+ {
+ if ( answer->isChecked() )
+ return true;
+
+ answer = answer->nextAnswer();
+ }
+
+ return false;
+}
+
+
+QString
+KFeedbackQuestion::result()
+{
+ QString res;
+ int answers = 0;
+
+ KFeedbackAnswer *answer = firstAnswer();
+
+ while ( answer )
+ {
+ if ( answer->isChecked() )
+ {
+ res += _id + "=\"" + answer->id() + "\"\n";
+ answers++;
+ }
+
+ answer = answer->nextAnswer();
+ }
+
+ if ( answers > 1 )
+ {
+ res = "\n" + res + "\n";
+ }
+
+ return res;
+}
+
+
+QString
+KFeedbackQuestion::text()
+{
+ return QCheckListItem::text(0);
+}
+
+
+QString
+KFeedbackQuestion::key( int, bool ) const
+{
+ QString no;
+ no.sprintf( "%08d", _no );
+
+ return no;
+}
+
+
+KFeedbackQuestionList *
+KFeedbackQuestion::questionList() const
+{
+ return dynamic_cast<KFeedbackQuestionList *>( listView() );
+}
+
+
+
+
+
+
+
+KFeedbackAnswer::KFeedbackAnswer( KFeedbackQuestion * parent,
+ const QString & text,
+ const QString & id,
+ bool exclusive )
+ : QCheckListItem( parent,
+ text,
+ exclusive
+ ? QCheckListItem::RadioButton
+ : QCheckListItem::CheckBox )
+ , _id( id )
+{
+ _no = nextNo++;
+}
+
+
+QString
+KFeedbackAnswer::text()
+{
+ return QCheckListItem::text(0);
+}
+
+
+QString
+KFeedbackAnswer::key( int, bool ) const
+{
+ QString no;
+ no.sprintf( "%08d", _no );
+
+ return no;
+}
+
+
+void
+KFeedbackAnswer::stateChange( bool newState )
+{
+ if ( newState && question()->isRequired() )
+ {
+ KFeedbackQuestionList * list = question()->questionList();
+
+ if ( list )
+ list->questionAnswered();
+ }
+}
+
+
+
+// EOF
diff --git a/kshowmail/kfeedback.h b/kshowmail/kfeedback.h
new file mode 100644
index 0000000..620ace7
--- /dev/null
+++ b/kshowmail/kfeedback.h
@@ -0,0 +1,463 @@
+/*
+ * File name: kfeedback.h
+ * Summary: User feedback form and mailing utilities
+ * License: LGPL - See file COPYING.LIB for details.
+ * Author: Stefan Hundhammer <sh@suse.de>
+ *
+ * Updated: 2002-02-24
+ *
+ * $Id: kfeedback.h,v 1.2 2007/03/18 15:05:39 kuddel-fl Exp $
+ *
+ */
+
+
+#ifndef KFeedback_h
+#define KFeedback_h
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <qlistview.h>
+#include <qvbox.h>
+#include <kdialogbase.h>
+
+
+#ifndef NOT_USED
+# define NOT_USED(PARAM) ( (void) (PARAM) )
+#endif
+
+
+class KFeedbackForm;
+class KFeedbackQuestionList;
+class KFeedbackQuestion;
+class KFeedbackAnswer;
+class QMultiLineEdit;
+
+
+/**
+ * Dialog containing a @ref KFeedbackForm and all the infrastructure for
+ * sending a mail etc.
+ **/
+class KFeedbackDialog: public KDialogBase
+{
+ Q_OBJECT
+
+public:
+
+ /**
+ * Constructor.
+ **/
+ KFeedbackDialog( const QString & feedbackMailAddress,
+ const QString & helpTopic = QString::null );
+
+
+ /**
+ * Destructor.
+ **/
+ virtual ~KFeedbackDialog();
+
+
+ /**
+ * Returns the internal @KFeedbackForm
+ **/
+ KFeedbackForm *form() { return _form; }
+
+
+public slots:
+
+ /**
+ * Check if sufficient information is available to send a mail now and
+ * enable / disable the "send mail" button accordingly.
+ **/
+ void checkSendButton();
+
+
+signals:
+ /**
+ * Emitted when the user has sent the feedback mail - i.e. when he clicked
+ * on the "Send mail" button and the mail has successfully been forwarded
+ * to the mailer. He can still choose not to send the mail from within the
+ * mailer, though.
+ **/
+ void mailSent();
+
+
+protected:
+
+ KFeedbackForm * _form;
+};
+
+
+/**
+ * User feedback form:
+ *
+ * User is asked a list of questions, the answers of which will be sent via
+ * mail back to a feedback mail address.
+ **/
+class KFeedbackForm: public QVBox
+{
+ Q_OBJECT
+
+public:
+ /**
+ * Constructor.
+ **/
+ KFeedbackForm( const QString & feedbackMailAddress,
+ QWidget * parent );
+
+ /**
+ * Destructor.
+ **/
+ virtual ~KFeedbackForm();
+
+
+public slots:
+
+ /**
+ * Compose a mail from the user's answers and send it to the feedback mail
+ * address passed to the constructor.
+ *
+ * This method will check with @ref readyToSend() if the mail can be sent
+ * with the questions answered until now and prompt the user to answer more
+ * questions if not.
+ *
+ * Connect the @ref mailSent() signal if you are interested when exactly
+ * all this was successful.
+ **/
+ virtual void sendMail();
+
+
+public:
+
+ /**
+ * Checks if the mail is ready to send, i.e. if all required fields are
+ * filled.
+ **/
+ virtual bool readyToSend();
+
+ /**
+ * Returns the @ref KFeedbackQuestionList .
+ **/
+ KFeedbackQuestionList * questionList() { return _questionList; }
+
+
+signals:
+ /**
+ * Emitted when the user has sent the feedback mail - i.e. when he clicked
+ * on the "Send mail" button and the mail has successfully been forwarded
+ * to the mailer. He can still choose not to send the mail from within the
+ * mailer, though.
+ **/
+ void mailSent();
+
+ /**
+ * Emitted when it is time to check for completeness of all information in
+ * this form: Either when a new question is added or when a question is
+ * answered.
+ **/
+ void checkComplete();
+
+
+protected slots:
+ /**
+ * Check for completeness of this form.
+ **/
+ void slotCheckComplete();
+
+
+protected:
+
+ /**
+ * Format the "personal comments" field for sending mail.
+ **/
+ QString formatComment();
+
+
+ QString _feedbackMailAddress;
+ KFeedbackQuestionList * _questionList;
+ QMultiLineEdit * _comment;
+};
+
+
+
+/**
+ * List of feedback questions presented in a @ref QListView widget.
+ **/
+class KFeedbackQuestionList: public QListView
+{
+ Q_OBJECT
+
+public:
+
+ /**
+ * Constructor.
+ **/
+ KFeedbackQuestionList( QWidget *parent );
+
+ /**
+ * Destructor.
+ **/
+ virtual ~KFeedbackQuestionList();
+
+ /**
+ * Returns whether or not this question list is answered satisfactorily,
+ * i.e. if all questions marked as "required" are answered.
+ **/
+ virtual bool isComplete();
+
+ /**
+ * The result of all answered questions in ASCII.
+ **/
+ QString result();
+
+ /**
+ * Add a yes/no question to the list.
+ *
+ * 'text' is the text the user will see (in his native language).
+ *
+ * 'id' is what will be sent with the feedback mail, thus it should be
+ * unique within the application, yet human readable (preferably English)
+ * and not contain any weird characters that might confuse scripts that are
+ * later used to automatically parse those mails.
+ * Examples: "would_recommend_to_a_friend"
+ *
+ * Set 'required' to 'true' if answering this question is required to
+ * successfully complete this form.
+ *
+ * Returns a pointer to this question so you can add answers.
+ **/
+
+ KFeedbackQuestion * addQuestion( const QString & text,
+ const QString & id,
+ bool exclusiveAnswer = true,
+ bool required = false );
+
+ /**
+ * Add a yes/no question to the list.
+ **/
+ void addYesNoQuestion( const QString & text,
+ const QString & id,
+ bool required = false );
+
+ /**
+ * Returns the first question of that list.
+ * Use @ref KFeedbackQuestion::next() to get the next one.
+ **/
+ KFeedbackQuestion * firstQuestion() const
+ { return (KFeedbackQuestion *) QListView::firstChild(); }
+
+ /**
+ * Notify the list that another question has been answered.
+ * Emits the @ref checkComplete() signal when all required questions are
+ * answered.
+ **/
+ void questionAnswered();
+
+ /**
+ * Notify the list that another question has been added.
+ * Emits the @ref checkComplete() signal when a required question is
+ * added.
+ **/
+ void questionAdded( KFeedbackQuestion * question );
+
+signals:
+ /**
+ * Emitted when all required questions are answered.
+ **/
+ void checkComplete();
+};
+
+
+/**
+ * A user feedback question to be inserted into a @ref KFeedbackQuestionList.
+ **/
+class KFeedbackQuestion: public QCheckListItem
+{
+public:
+
+ /**
+ * Constructor.
+ *
+ * The parent @ref KFeedbackQuestionList assumes ownership of this object,
+ * so don't delete it unless you want to delete it from the question list
+ * as well.
+ *
+ * 'text' is the text the user will see (in his native language).
+ *
+ * 'id' is what will be sent with the feedback mail, thus it should be
+ * unique within the application, yet human readable (preferably English)
+ * and not contain any weird characters that might confuse scripts that are
+ * later used to automatically parse those mails.
+ * Examples: "features_not_liked", "stability"
+ *
+ * Set 'required' to 'true' if answering this question is required to
+ * successfully complete this form.
+ *
+ * Set 'exclusiveAnswer' to 'true' if only one of all answers may be
+ * checked at any one time, to 'false' if multiple answers are allowed.
+ **/
+ KFeedbackQuestion( KFeedbackQuestionList * parent,
+ const QString & text,
+ const QString & id,
+ bool exclusiveAnswer = true,
+ bool required = false,
+ bool open = true );
+
+ /**
+ * Add an answer to this question. Again, 'text' is what the user will see
+ * (translated to his native language), 'id' is what you will get back with
+ * the mail. The answer IDs need only be unique for that question; answers
+ * to other questions may have the same ID.
+ **/
+ void addAnswer( const QString & text,
+ const QString & id );
+
+ /**
+ * Returns if answering this question is required.
+ **/
+ bool isRequired() { return _required; }
+
+ /**
+ * Returns if this question is answered satisfactorily.
+ **/
+ bool isAnswered();
+
+ /**
+ * The result of this question in ASCII, e.g.
+ * recommend="yes"
+ * or
+ * features_i_like="builtin_tetris"
+ * features_i_like="pink_elephant"
+ * features_i_like="studlycapslyfier"
+ **/
+ QString result();
+
+ /**
+ * Return this question's ID.
+ **/
+ QString id() { return _id; }
+
+ /**
+ * Return this question's text.
+ **/
+ QString text();
+
+ /**
+ * Returns whether or not this question requires an exclusive answer.
+ **/
+ bool exclusiveAnswer() { return _exclusiveAnswer; }
+
+
+ /**
+ * Returns the sort key.
+ *
+ * Reimplemented from @ref QListViewItem to maintain insertion order.
+ **/
+ virtual QString key( int column, bool ascending ) const;
+
+ /**
+ * Returns the next question or 0 if there is no more.
+ **/
+ KFeedbackQuestion * nextQuestion() const
+ { return (KFeedbackQuestion *) QListViewItem::nextSibling(); }
+
+ /**
+ * Returns the first possible answer to this question.
+ * Use @ref KFeedbackAnswer::nextAnswer() to get the next one.
+ **/
+ KFeedbackAnswer * firstAnswer() const
+ { return (KFeedbackAnswer *) QListViewItem::firstChild(); }
+
+ /**
+ * Returns the @ref KFeedbackQuestionList this question belongs to or 0 if
+ * the parent is no @ref KFeedbackQuestionList.
+ **/
+ KFeedbackQuestionList * questionList() const;
+
+
+protected:
+
+ QString _id;
+ bool _exclusiveAnswer;
+ bool _required;
+ int _no;
+};
+
+
+class KFeedbackAnswer: public QCheckListItem
+{
+public:
+ /**
+ * Constructor.
+ *
+ * 'exclusive' tells the type of answer: One of many allowed or any number
+ * of many.
+ **/
+ KFeedbackAnswer( KFeedbackQuestion * parent,
+ const QString & text,
+ const QString & id,
+ bool exclusive = true );
+
+ /**
+ * Return this answer's ID.
+ **/
+ QString id() { return _id; }
+
+ /**
+ * Return this answer's text.
+ **/
+ QString text();
+
+ /**
+ * Returns whether or not this is an exclusive answer.
+ **/
+ bool isExclusive() { return _exclusive; }
+
+ /**
+ * Returns whether or not this answer is checked.
+ **/
+ bool isChecked() { return QCheckListItem::isOn(); }
+
+ /**
+ * Returns the next possible answer or 0 if there is no more.
+ **/
+ KFeedbackAnswer * nextAnswer() const
+ { return (KFeedbackAnswer *) QListViewItem::nextSibling(); }
+
+ /**
+ * Returns the question to this answer.
+ **/
+ KFeedbackQuestion * question() const
+ { return (KFeedbackQuestion *) QListViewItem::parent(); }
+
+ /**
+ * Returns the sort key.
+ *
+ * Reimplemented from @ref QListViewItem to maintain insertion order.
+ **/
+ virtual QString key( int column, bool ascending ) const;
+
+
+ /**
+ * On/off change.
+ *
+ * Reimplemented from @ref QCheckListItem to monitor answering required
+ * questions. This method notifies the @ref KFeedbackQuestionList whenever
+ * a required question is being answered.
+ **/
+ virtual void stateChange( bool newState );
+
+protected:
+
+ QString _id;
+ bool _exclusive;
+ int _no;
+};
+
+
+
+#endif // KFeedback_h
+
+
+// EOF
diff --git a/kshowmail/kshowmail.cpp b/kshowmail/kshowmail.cpp
new file mode 100644
index 0000000..16e9db6
--- /dev/null
+++ b/kshowmail/kshowmail.cpp
@@ -0,0 +1,861 @@
+/***************************************************************************
+ kshowmail.cpp - description
+ -------------------
+ begin : Sat May 6 12:13:57 MEST 2000
+ copyright : (C) 2000-2002 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+
+ 26 Sep 2002 - Allow for columns to be hidden. Allistar Melville
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#include "kshowmail.h"
+
+using namespace KIO;
+
+KAboutData* KShowMailApp::m_pAbout;
+
+KShowMailApp::KShowMailApp()
+{
+ //set up actions
+ initActions();
+
+ // create GUI from ui resource file
+ setXMLFile( "kshowmailui.rc", true );
+ createGUI();
+
+ //the main window settings will be saved automatically
+ setAutoSaveSettings();
+
+ //initiate GUI parts
+ initStatusBar();
+ initDocument();
+ initView();
+
+ //the application is idle at beginning
+ m_state = idle;
+
+ //the setup dialog will be created in slotSetup() at first use
+ SetupDialog = NULL;
+
+ m_pTimer = new QTimer (this);
+ m_pAlertDialog = NULL;
+ m_pDockWindow = new KShowMailDock (this, m_actionRefresh);
+ m_bForceClose = false;
+
+
+ //read the setup
+ m_ConfigList.refreshSetup( m_pView->m_pListAccounts );
+
+ //load stored mails
+ m_ConfigList.readStoredMails();
+
+ //connect signals with slots
+
+ connect (m_pDockWindow, SIGNAL (quitSelected ()), SLOT (slotForceClose ()));
+ connect (m_pTimer, SIGNAL (timeout ()), SLOT (slotRefresh ()));
+ connect (m_pView->m_pListAccounts, SIGNAL (currentChanged(QListViewItem*)), SLOT(slotAccountActivated(QListViewItem*)));
+ connect (m_pView, SIGNAL (signalActiveChanged()), SLOT (slotRefreshView()));
+
+ connect( &m_ConfigList, SIGNAL( sigDeleteReady() ), this, SLOT( slotDeletionReady() ) );
+ connect( &m_ConfigList, SIGNAL( sigShowBodiesReady() ), this, SLOT( slotShowMessageReady() ) );
+ connect( &m_ConfigList, SIGNAL( sigMessageWindowOpened() ), this, SLOT( slotNormalCursor() ) );
+ connect( &m_ConfigList, SIGNAL( sigAllMessageWindowsClosed() ), this, SLOT( slotWaitingCursor() ) );
+ connect( &m_ConfigList, SIGNAL( sigRefreshReady() ), this, SLOT( slotRefreshReady() ) );
+
+ //show welcome message
+ KMessageBox::information( NULL, i18n( "Thank You for using KShowmail.\nPlease use the feedback dialog to tell us your experience with this program." ), i18n("Welcome"), "WelcomeMessage" );
+
+ // this starts the one-second-interval timer
+ // this is a QObject method
+ startTimer (1000);
+
+ //we are ready to take off! Lets initiate the first refresh (if desired)
+ initFirstRefresh();
+}
+
+KShowMailApp::~KShowMailApp()
+{
+ kdDebug() << "cleaning up" << endl;
+ delete m_pTimer;
+ delete m_pDockWindow;
+ kdDebug() << "cleanup finished" << endl;
+}
+
+/**
+ * This is reimplemented from QObject
+ */
+void KShowMailApp::timerEvent (QTimerEvent *)
+{
+ if (m_nSecondsToGo)
+ {
+ QTime time;
+ time = time.addSecs (m_nSecondsToGo--);
+ QCString msg (i18n("Autorefresh: %1").arg (time.toString()));
+ statusBar()->changeItem( msg, STATUSBAR_FIELD_NEXT_REFRESH );
+ }
+ else
+ statusBar()->changeItem( "", STATUSBAR_FIELD_NEXT_REFRESH );
+
+ // if busy, animate the traybar
+ if ( m_state == refreshing || m_state == deleting )
+ {
+ static int color = 0;
+ color = (color+1)%2;
+ switch (color)
+ {
+ case 0:
+ m_pDockWindow->clear ();
+ break;
+ default:
+ m_pDockWindow->drawText ("?", Qt::red);
+ }
+ }
+}
+
+
+
+void KShowMailApp::initActions ()
+{
+ // file menu
+ KStdAction::quit( this, SLOT( slotFileQuit() ), actionCollection() );
+
+ // action menu
+ m_actionRefresh = new KAction( i18n( "&Refresh messages" ), "reload", Key_F5, this, SLOT( slotRefresh() ), actionCollection(), "refresh" );
+ new KAction( i18n( "Show &header of highlighted messages" ), "letter-closed", Key_F2, this, SLOT( slotShowHeader() ), actionCollection(), "show_header" );
+ new KAction( i18n( "Show &complete highlighted messages" ), "letter-open", Key_F3, this, SLOT( slotShowMessage() ), actionCollection(), "show_complete" );
+ new KAction( i18n( "&Delete highlighted messages" ), "eraser", Key_Delete, this, SLOT( slotDelete() ), actionCollection(), "delete" );
+ new KAction( i18n( "S&top current transfer" ), "stop", 0, this, SLOT( slotStop() ), actionCollection(), "stop" );
+ new KAction( i18n( "Show Filter Log" ), "log", Key_F4, this, SLOT( slotShowFilterLog() ), actionCollection(), "show_filterlog" );
+ new KAction( i18n( "Add sender to whitelist" ), "add_user", 0, this, SLOT( slotAddToWhitelist() ), actionCollection(), "addWhitelist" );
+ new KAction( i18n( "Add sender to blacklist" ), "delete_user", 0, this, SLOT( slotAddToBlacklist() ), actionCollection(), "addBlacklist" );
+
+ // setup menu
+ KStdAction::preferences( this, SLOT( slotSetup() ), actionCollection() );
+ KStdAction::configureToolbars( this, SLOT( slotEditToolbars() ), actionCollection() );
+
+ //create menu items for toggle tool and status bar
+ setStandardToolBarMenuEnabled( true );
+ createStandardStatusBarAction();
+
+ //help menu
+ new KAction( i18n( "Send &Feedback Mail" ), "email", 0, this, SLOT( slotSendFeedbackMail() ),actionCollection(), "sendFeedback" );
+
+ //for account context menu
+ new KAction(i18n( "Setup &account" ), "tool", 0, this, SLOT( slotSetupAccount() ), actionCollection(), "setupAccount" );
+}
+
+
+void KShowMailApp::initStatusBar()
+{
+ statusBar()->insertItem( i18n( "Ready." ), STATUSBAR_FIELD_STATE );
+ statusBar()->insertItem( "", STATUSBAR_FIELD_FILTER, 1 );
+ statusBar()->setItemAlignment( STATUSBAR_FIELD_FILTER, AlignLeft | AlignVCenter );
+ statusBar()->insertItem( "", STATUSBAR_FIELD_NEXT_REFRESH );
+ statusBar()->insertItem( "", STATUSBAR_FIELD_LAST_REFRESH );
+
+ QToolTip::add( statusBar(), i18n( "Shows the number of deleted, moved or ignored mails by the filter.\nThe positions denotes:\nby last refresh / since application start / listed by the log" ) );
+
+ refreshFilterStatusBar();
+}
+
+void KShowMailApp::initDocument()
+{
+ m_pDoc = new KshowmailDoc(this);
+ m_pDoc->newDocument();
+}
+
+void KShowMailApp::initView()
+{
+ ////////////////////////////////////////////////////////////////////
+ // create the main widget here that is managed by KMainWindow's view-region and
+ // connect the widget to your document to display document contents.
+
+ m_pView = new KshowmailView(this);
+ m_pDoc->addView(m_pView);
+ setCentralWidget(m_pView);
+}
+
+void KShowMailApp::slotSaveOptions()
+{
+ KConfig* config = KGlobal::config();
+
+ //order application parts to save their setup
+ m_pView->saveOptions( config );
+ m_ConfigList.saveOptions ();
+ fLog.save();
+
+ //save config to file
+ config->sync ();
+
+}
+
+bool KShowMailApp::queryClose()
+{
+ bool result;
+ kdDebug() << "KShowMailApp::queryClose()" << endl;
+
+ if (m_bForceClose) {
+ // We are forced to close app - so just do it
+ kdDebug() << "forced exit" << endl;
+ result = true;
+ } else if( m_ConfigList.closeToTray() ) {
+ // Don't close - close button must minimize the window
+ result = false;
+ kdDebug() << "ignoring close request and minimizing the window" << endl;
+ KMainWindow* w = memberList->first();
+ w->hide();
+ } else {
+ // Need to ask user first
+ result = askCloseConfirmation();
+ }
+ return result;
+}
+
+bool KShowMailApp::queryExit()
+{
+ kdDebug() << "KShowMailApp::queryExit()" << endl;
+ slotSaveOptions ();
+
+ return true;
+}
+
+/////////////////////////////////////////////////////////////////////
+// SLOT IMPLEMENTATION
+/////////////////////////////////////////////////////////////////////
+
+void KShowMailApp::slotFileQuit()
+{
+ kdDebug () << "KShowMailApp::slotFileQuit()" << endl;
+ if(memberList && askCloseConfirmation())
+ {
+ m_bForceClose = true; // Forcing the closing
+ KMainWindow* w = memberList->first();
+ w->close();
+ }
+}
+
+
+void KShowMailApp::slotSetupAccount()
+{
+ //just open the dialog, if the app is idle
+ if (m_state != idle)
+ {
+ kapp->beep();
+ return;
+ }
+
+ //set application state
+ m_state = configure;
+
+ //stop the refresh timer
+ stopRefreshTimer();
+
+ //get account to configure
+ ConfigElem* pConfig = m_ConfigList.getSelectedAccount();
+
+ if( pConfig != NULL )
+ {
+ //open dialog
+ //the dialog sets the new options directly in the account
+ ServerDialog dlg( this, pConfig );
+
+ if( dlg.exec() == QDialog::Accepted )
+ {
+ //if OK was clicked, refresh the account list view
+ slotConfChanged();
+ }
+ }
+
+ //we are ready, set application state to idle and initiate next refresh
+ m_state = idle;
+ initNextRefresh();
+}
+
+void KShowMailApp::slotAccountActivated (QListViewItem* pItem)
+{
+ QPtrListIterator<ConfigElem> it(m_ConfigList);
+ // this is = not == !!!
+ while (ConfigElem* pConfig = it())
+ {
+ if (pConfig->getListViewItem() == pItem)
+ {
+ setCaption (pConfig->getAccountName());
+ return;
+ }
+ }
+}
+
+void KShowMailApp::slotAlertDestroyed()
+{
+ m_pAlertDialog = NULL;
+}
+
+void KShowMailApp::slotAlertOk ()
+{
+ //switch main window to normal view
+ showNormal();
+ raise();
+}
+
+void KShowMailApp::slotRefresh()
+{
+ //return, if the app is not idle
+ if ( m_state != idle )
+ {
+ kapp->beep();
+ initNextRefresh();
+ return;
+ }
+
+ //stop the refresh timer
+ stopRefreshTimer();
+
+ //set the state
+ m_state = refreshing;
+
+ //show status message
+ slotStatusMsg( i18n( "Refreshing ..." ) );
+
+ //set waiting cursor
+ QApplication::setOverrideCursor( Qt::waitCursor );
+
+ //order the account list to refresh its mail lists
+ m_ConfigList.refreshMailLists( &fLog );
+
+ return;
+}
+
+void KShowMailApp::slotStop ()
+{
+ if (m_state == idle)
+ {
+ kapp->beep ();
+ return;
+ }
+ kdDebug() << "KShowMailApp::slotStop" << endl;
+
+ //kill all running pop3 jobs
+ m_ConfigList.killPOP3Jobs();
+
+ slotRefreshView ();
+
+ // make sure the view is refreshed before the state gets idle again
+ // bug #853651
+
+ //set state to idle
+ m_state = idle;
+
+ //set normal cursor
+ //might be more than one override cursor ...
+ while (QApplication::overrideCursor())
+ QApplication::restoreOverrideCursor ();
+
+ //print status message
+ slotStatusMsg(i18n("Job was stopped"));
+}
+
+void KShowMailApp::slotRefreshView ()
+{
+
+ //clear mail list view
+ m_pView->clearMailListView();
+
+ //fill mail list view
+ m_ConfigList.fillMailListView( m_pView );
+
+ //refresh account list
+ m_ConfigList.refreshAccountList();
+
+ //get some informations
+ int numberMails = m_ConfigList.getNumberMails();
+ bool hasNewMails = m_ConfigList.getNumberNewMails() > 0;
+
+ //draw number of mails into dock
+ if( hasNewMails )
+ //draw red number, because we have new mails
+ m_pDockWindow->drawNumber( numberMails, Qt::red );
+ else
+ //we haven't new mails, draw black
+ m_pDockWindow->drawNumber( numberMails, Qt::black );
+
+ //show message in status bar
+ long totalSize = m_ConfigList.getTotalSize();
+ slotStatusMsg( i18n( "%1 message(s) with a total of %2 bytes are waiting" ).arg( numberMails ).arg( totalSize ) );
+
+ //refresh filter view in the status bar
+ refreshFilterStatusBar();
+}
+
+void KShowMailApp::slotDelete()
+{
+ //just delete, if no operation is running
+ if( m_state != idle )
+ {
+ kapp->beep();
+ return;
+ }
+
+ //return, if no mails are selected
+ if( !m_ConfigList.hasSelectedMails() )
+ return;
+
+ //confirm deletion if required
+ if( m_ConfigList.confirmDeletion() )
+ {
+ //get subjects off all selected mails
+ QStringList subjects = m_ConfigList.getSelectedSubjects();
+
+ //show question
+ int answer = KMessageBox::questionYesNoList( this, i18n( "Do you want to delete these mails?"), subjects, i18n( "Delete?" ) );
+
+ if( answer == KMessageBox::No )
+ return;
+ }
+
+ //set the state
+ m_state = deleting;
+
+ //show status message
+ slotStatusMsg( i18n( "Deleting Mail(s) ..." ) );
+
+ //set waiting cursor
+ QApplication::setOverrideCursor( Qt::waitCursor );
+
+ //order the account list to delete the selected mails
+ //test!
+ m_ConfigList.deleteSelectedMails();
+}
+
+void KShowMailApp::slotShowHeader ()
+{
+ //only show headers, if the app is idle
+ if( m_state != idle )
+ {
+ kapp->beep ();
+ return;
+ }
+
+ //show the headers
+ m_ConfigList.showSelectedHeaders();
+
+}
+
+void KShowMailApp::slotShowMessage ()
+{
+ //return, if application is not idle
+ if( m_state != idle )
+ {
+ kapp->beep ();
+ return;
+ }
+
+ //return, if no mails are selected
+ if( !m_ConfigList.hasSelectedMails() )
+ return;
+
+ //set the state
+ m_state = showing;
+
+ //show status message
+ slotStatusMsg( i18n( "Downloading ..." ) );
+
+ //set waiting cursor
+ QApplication::setOverrideCursor( Qt::waitCursor );
+
+ //order the account list to show the selected mails
+ m_ConfigList.showSelectedMails();
+}
+
+void KShowMailApp::slotStatusMsg(const QString& text)
+{
+ //get current time
+ // added by Gustavo Zamorano to include time
+ QString sTime = QTime::currentTime ().toString ();
+
+ //clear status bar
+ statusBar()->clear();
+
+ //set given text
+ statusBar()->changeItem( text, STATUSBAR_FIELD_STATE );
+
+ //set current time
+ statusBar()->changeItem( i18n( "Last Refresh: %1" ).arg( sTime ), STATUSBAR_FIELD_LAST_REFRESH );
+}
+
+void KShowMailApp::slotStatusHelpMsg(const QString &text)
+{
+ statusBar()->message(text, 2000);
+}
+
+
+
+
+bool KShowMailApp::event(QEvent *e)
+{
+ // to hide the taskbar button; any better solution ??
+ if ((e->type() == QEvent::Hide) && m_ConfigList.minimizesToTray() ) {
+ hide ();
+ }
+
+ return(KMainWindow::event(e));
+}
+
+void KShowMailApp::slotForceClose()
+{
+ m_bForceClose = true;
+}
+
+bool KShowMailApp::askCloseConfirmation()
+{
+ bool result;
+
+ if( m_ConfigList.confirmClose() ) {
+ // Need to ask user
+ result = (KMessageBox::questionYesNo (this, i18n ("KShowmail will be closed.\n"
+ "Are you sure?")) == KMessageBox::Yes);
+ } else {
+ // User doesn't want to be asked - just close it
+ result = true;
+ }
+
+ return result;
+}
+
+void KShowMailApp::slotDeletionReady( )
+{
+ //set state to idle
+ m_state = idle;
+
+ //set normal cursor
+ while( QApplication::overrideCursor() )
+ QApplication::restoreOverrideCursor();
+
+ //show status message
+ slotStatusMsg( i18n( "Ready." ) );
+
+ //refresh mail list
+ slotRefresh();
+}
+
+void KShowMailApp::slotShowMessageReady( )
+{
+ //set state to idle
+ m_state = idle;
+
+ //set normal cursor
+ while( QApplication::overrideCursor() )
+ QApplication::restoreOverrideCursor();
+
+ //show status message
+ slotStatusMsg( i18n( "Ready." ) );
+
+
+}
+
+void KShowMailApp::slotNormalCursor( )
+{
+ //set normal cursor
+ while( QApplication::overrideCursor() )
+ QApplication::restoreOverrideCursor();
+
+}
+
+void KShowMailApp::slotWaitingCursor( )
+{
+ //set waiting cursor
+ QApplication::setOverrideCursor( Qt::waitCursor );
+}
+
+void KShowMailApp::slotRefreshReady( )
+{
+ //set state to idle
+ m_state = idle;
+
+ //set normal cursor
+ while( QApplication::overrideCursor() )
+ QApplication::restoreOverrideCursor();
+
+ //refresh mail list view
+ slotRefreshView();
+
+ //inform the user about new mails
+ bool hasNewMails = m_ConfigList.getNumberNewMails() > 0;
+ if ( hasNewMails )
+ {
+ //show main window if desired
+ if( m_ConfigList.showMainWindowForNewMails() )
+ {
+ showNormal();
+ raise();
+ }
+
+ //get out some sounds
+ m_ConfigList.beep();
+ m_ConfigList.playSound();
+
+ //execute a command
+ m_ConfigList.executeNewMailCommand();
+
+ //show alert message if desired
+ if( m_ConfigList.showAlertMessageForNewMails() )
+ {
+ //have we created one already?
+ if( m_pAlertDialog != NULL )
+ {
+ //yes, we have one
+ m_pAlertDialog->show();
+ m_pAlertDialog->raise();
+ }
+ else
+ {
+ //create a message dialog
+ m_pAlertDialog = new AlertDialog( this );
+ connect( m_pAlertDialog, SIGNAL( destroyed() ), SLOT( slotAlertDestroyed() ) );
+ connect( m_pAlertDialog, SIGNAL( signalOk() ), SLOT( slotAlertOk() ) );
+ }
+ }
+
+ }
+ else
+ {
+ //no new mails was received
+ //perform configured actions
+
+ //terminate app if desired
+ if( m_ConfigList.quitNoNewMails() )
+ slotFileQuit();
+ else if( m_ConfigList.minimizeMainWindowNoNewMails() )
+ {
+ showMinimized();
+ hide();
+ }
+ }
+
+ //show status message
+ slotStatusMsg( i18n( "Ready." ) );
+
+
+ //prepare next refresh cycle
+ initNextRefresh();
+}
+
+void KShowMailApp::initFirstRefresh( )
+{
+ //is auto refresh on? if not, we do nothing
+ if( m_ConfigList.AutoRefreshOn() )
+ {
+ //is an initial time configured? if not, we refresh immediately
+ if( m_ConfigList.hasInitTime() )
+ {
+ //starts refresh timer with the configured initial time to first refresh
+ m_pTimer->start( m_ConfigList.getInitTime() * 1000, true );
+ m_nSecondsToGo = m_ConfigList.getInitTime();
+ }
+ else
+ {
+ //just to set a defined state
+ m_pTimer->stop();
+ m_nSecondsToGo = 0;
+
+ //start refresh cycle
+ slotRefresh();
+ }
+ }
+ else
+ {
+ //set a defined state
+ m_pTimer->stop();
+ m_nSecondsToGo = 0;
+ }
+}
+
+void KShowMailApp::stopRefreshTimer( )
+{
+ m_pTimer->stop();
+ m_nSecondsToGo = 0;
+}
+
+void KShowMailApp::initNextRefresh( )
+{
+ if( m_ConfigList.AutoRefreshOn() )
+ {
+ //auto refresh is activated
+ //restart the refresh timer
+ m_pTimer->start( m_ConfigList.getRefreshTimeInterval() * 60000, true );
+ m_nSecondsToGo = m_ConfigList.getRefreshTimeInterval() * 60;
+ }
+ else
+ {
+ //auto refresh is not activated
+ //set a defined state of the refresh timer
+ m_pTimer->stop();
+ m_nSecondsToGo = 0;
+ }
+}
+
+void KShowMailApp::delayNextRefresh( )
+{
+ const unsigned long DELAY_TIME = 60;
+
+ //delay only if the timer is active and the remaining time is less than one minute
+ if( m_pTimer->isActive() )
+ {
+ if( m_nSecondsToGo < DELAY_TIME )
+ {
+ m_pTimer->start( DELAY_TIME * 1000, true );
+ m_nSecondsToGo = DELAY_TIME;
+ }
+ }
+}
+
+void KShowMailApp::slotEditToolbars()
+{
+ //create the toolbar config dialog
+ KEditToolbar *dlg = new KEditToolbar(guiFactory());
+ if( dlg->exec() )
+ {
+ //if dialog closed by OK, create the GUI new
+ //the dialog has changed the kshowmailui.rc file
+ createGUI();
+ }
+
+ //destruct dialog
+ delete dlg;
+}
+
+void KShowMailApp::slotSetup( )
+{
+ //just open the dialog, if the app is idle
+ if (m_state != idle)
+ {
+ kapp->beep();
+ return;
+ }
+
+ //set application state
+ m_state = configure;
+
+ //stop the refresh timer
+ stopRefreshTimer();
+
+ if ( SetupDialog == NULL )
+ {
+ //if no preferences dialog was created as yet, create one
+ SetupDialog = new KCMultiDialog( KCMultiDialog::IconList, i18n( "Options" ), this, "SetupDialog" );
+ SetupDialog->addModule( "kshowmailconfigaccounts.desktop" );
+ SetupDialog->addModule( "kshowmailconfiggeneral.desktop" );
+ SetupDialog->addModule( "kshowmailconfigdisplay.desktop" );
+ SetupDialog->addModule( "kshowmailconfigactions.desktop" );
+ SetupDialog->addModule( "kshowmailconfigfilter.desktop" );
+ SetupDialog->addModule( "kshowmailconfigspamcheck.desktop" );
+ SetupDialog->addModule( "kshowmailconfiglog.desktop" );
+
+ //If the configuration was changed, it will call slotConfChanged
+ connect( SetupDialog, SIGNAL( configCommitted() ), this, SLOT( slotConfChanged() ) );
+ }
+
+ //execute preferences dialog
+ SetupDialog->exec();
+
+ //we are ready, set application state to idle and initiate next refresh
+ m_state = idle;
+ initNextRefresh();
+
+}
+
+void KShowMailApp::slotConfChanged( )
+{
+ //read the new setup
+ m_ConfigList.refreshSetup( m_pView->m_pListAccounts );
+ m_pView->refreshSetup();
+ fLog.loadSetup();
+
+}
+
+void KShowMailApp::slotShowFilterLog( )
+{
+ //open dialog
+ FilterLogView view( this, &fLog );
+ view.exec();
+
+ refreshFilterStatusBar();
+}
+
+void KShowMailApp::refreshFilterStatusBar( )
+{
+ int numberDeletedLastRefresh = m_ConfigList.numberDeletedMailsLastRefresh();
+ int numberDeletedSinceStart = m_ConfigList.numberDeletedMailsStart();
+ int numberDeletedLog = fLog.numberDeletedMails();
+
+ int numberMovedLastRefresh = m_ConfigList.numberMovedMailsLastRefresh();
+ int numberMovedSinceStart = m_ConfigList.numberMovedMailsStart();
+ int numberMovedLog = fLog.numberMovedMails();
+
+ int numberIgnored = m_ConfigList.numberIgnoredMails();
+
+ statusBar()->changeItem( i18n( "Filter: Deleted: %1/%2/%3; Moved: %4/%5/%6; Ignored: %7" ).arg( numberDeletedLastRefresh ).arg( numberDeletedSinceStart ).arg( numberDeletedLog ).arg( numberMovedLastRefresh ).arg( numberMovedSinceStart ).arg( numberMovedLog ).arg( numberIgnored ), STATUSBAR_FIELD_FILTER );
+}
+
+void KShowMailApp::slotAddToWhitelist( )
+{
+ //get new entries
+ QStringList newEntries = m_ConfigList.getSelectedSenders();
+
+ //get previous whitelist from config
+ KConfig* config = KApplication::kApplication()->config();
+ config->setGroup( CONFIG_GROUP_FILTER );
+ QStringList whiteList = config->readListEntry( CONFIG_ENTRY_FILTER_WHITELIST );
+
+ //append new entries
+ for( QStringList::Iterator it = newEntries.begin(); it != newEntries.end(); ++it )
+ {
+ if( whiteList.contains( *it ) == 0 )
+ {
+ whiteList.append( *it );
+ }
+ }
+
+ //write extended whitelist back
+ config->writeEntry( CONFIG_ENTRY_FILTER_WHITELIST, whiteList );
+ config->sync();
+
+ //load new config
+ m_ConfigList.refreshFilterSetup();
+}
+
+void KShowMailApp::slotAddToBlacklist( )
+{
+ //get new entries
+ QStringList newEntries = m_ConfigList.getSelectedSenders();
+
+ //get previous blacklist from config
+ KConfig* config = KApplication::kApplication()->config();
+ config->setGroup( CONFIG_GROUP_FILTER );
+ QStringList blackList = config->readListEntry( CONFIG_ENTRY_FILTER_BLACKLIST );
+
+ //append new entries
+ for( QStringList::Iterator it = newEntries.begin(); it != newEntries.end(); ++it )
+ {
+ if( blackList.contains( *it ) == 0 )
+ {
+ blackList.append( *it );
+ }
+ }
+
+ //write extended whitelist back
+ config->writeEntry( CONFIG_ENTRY_FILTER_BLACKLIST, blackList );
+ config->sync();
+
+ //load new config
+ m_ConfigList.refreshFilterSetup();
+}
+
diff --git a/kshowmail/kshowmail.desktop b/kshowmail/kshowmail.desktop
new file mode 100644
index 0000000..54c5651
--- /dev/null
+++ b/kshowmail/kshowmail.desktop
@@ -0,0 +1,13 @@
+# KDE Config File
+[KDE Desktop Entry]
+Name=Kshowmail
+Encoding=UTF-8
+Type=Application
+Exec=kshowmail
+Icon=kshowmail
+DocPath=kshowmail/index.html
+Comment=A powerful POP3 mail checker
+Comment[de]=Ein leistungsf�higer POP3 Mailchecker
+Comment[en]=A powerful POP3 mail checker
+Terminal=0
+StartupNotify=true
diff --git a/kshowmail/kshowmail.h b/kshowmail/kshowmail.h
new file mode 100644
index 0000000..0d8dccb
--- /dev/null
+++ b/kshowmail/kshowmail.h
@@ -0,0 +1,424 @@
+/***************************************************************************
+ kshowmail.h - description
+ -------------------
+ begin : Sat May 6 12:13:57 MEST 2000
+ copyright : (C) 2000-2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef KSHOWMAIL_H
+#define KSHOWMAIL_H
+
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+// include files for KDE
+#include <kapplication.h>
+#include <kmainwindow.h>
+#include <kuniqueapplication.h>
+#include <kaction.h>
+#include <kstdaction.h>
+#include <klocale.h>
+#include <kstatusbar.h>
+#include <krun.h>
+#include <kpassdlg.h>
+#include <kdebug.h>
+#include <kedittoolbar.h>
+#include <kcmultidialog.h>
+
+
+//include files for KShowMail
+#include "configlist.h"
+#include "alertdialog.h"
+#include "showrecord.h"
+#include "showlistviewitem.h"
+#include "kshowmaildock.h"
+#include "kfeedback.h"
+#include "types.h"
+#include "kshowmailview.h"
+#include "kshowmaildoc.h"
+#include "serverdialog.h"
+#include "filterlog.h"
+#include "filterlogview.h"
+
+
+// forward declaration of the Kshowmail classes
+class KshowmailDoc;
+class KshowmailView;
+
+using namespace Types;
+
+/**
+ * The base class for Kshowmail application windows. It sets up the main
+ * window and reads the config file as well as providing a menubar, toolbar
+ * and statusbar. An instance of KshowmailView creates your center view, which is connected
+ * to the window's Doc object.
+ * KShowMailApp reimplements the methods that KMainWindow provides for main window handling and supports
+ * full session management as well as keyboard accelerator configuration by using KAccel.
+ * @see KMainWindow
+ * @see KApplication
+ * @see KConfig
+ * @see KAccel
+ *
+ * @author Source Framework Automatically Generated by KDevelop, (c) The KDevelop Team.
+ * @version KDevelop version 0.4 code generation
+ */
+class KShowMailApp : public KMainWindow
+{
+ Q_OBJECT
+
+ friend class KshowmailView;
+ friend class KshowmailDock;
+ friend class UniqueApp;
+
+
+ private:
+
+ /**
+ * The central document of our application. Just contains the view (m_pView).
+ */
+ KshowmailDoc* m_pDoc;
+
+ /**
+ * Contains the account and messages list views.
+ */
+ KshowmailView *m_pView;
+
+ /**
+ * The setup dialog. Created and used by slotSetup().
+ */
+ KCMultiDialog* SetupDialog;
+
+ /**
+ * refresh messages action; connected with slotRefresh()
+ */
+ KAction* m_actionRefresh;
+
+ /**
+ * Contains the application and account settings. The account
+ * settings are stored in ConfigElem objects.
+ */
+ ConfigList m_ConfigList;
+
+ /**
+ * Message box which will be shown, when new mail has arrived.
+ */
+ AlertDialog* m_pAlertDialog;
+
+ /**
+ * The window into the system tray.
+ */
+ KShowMailDock* m_pDockWindow;
+
+ /**
+ * The refresh timer. Its timeout signal is connected with slotRefresh().
+ */
+ QTimer* m_pTimer;
+
+ /**
+ * Application state during the run time. Shows what KShowMail is doing :-) .
+ */
+ Types::State_Type m_state;
+
+ /**
+ * Number of seconds until the next refresh
+ */
+ unsigned long m_nSecondsToGo;
+
+ /**
+ * The filter log.
+ */
+ FilterLog fLog;
+
+
+ public:
+ /**
+ * Constructor of KShowMailApp, calls all init functions to create the application.
+ * @see initMenuBar initToolBar
+ */
+ KShowMailApp();
+
+ /**
+ * Destructor
+ */
+ ~KShowMailApp();
+
+ /**
+ * Contains information about KShowMail, including author, license, version etc.
+ * This is accessed in main() when calling KShowMailApp::initMenuBar() to create the help menu.
+ */
+ static KAboutData* m_pAbout;
+
+ /**
+ * Delays the next refresh for one minute.
+ */
+ void delayNextRefresh();
+
+
+ protected:
+
+ /**
+ * sets up the statusbar for the main window by initialzing a statuslabel.
+ */
+ void initStatusBar();
+
+ /**
+ * sets up the actions.
+ */
+ void initActions();
+
+ /**
+ * initializes the document object of the main window that is connected to the view in initView().
+ * @see initView();
+ */
+ void initDocument();
+
+ /**
+ * creates the centerwidget of the KMainWindow instance and sets it as the view
+ */
+ void initView();
+
+ /**
+ * queryClose is called by KMainWindow on each closeEvent of a window. Against the
+ * default implementation (only returns true), this calles saveModified() on the document object to ask
+ * if the document should be saved if Modified; on cancel the closeEvent is rejected.
+ * @see KMainWindow#queryClose
+ * @see KMainWindow#closeEvent
+ */
+ virtual bool queryClose();
+
+ /**
+ * queryExit is called by KMainWindow when the last window of the app is going to be closed during the closeEvent().
+ * Against the default implementation that just returns true, this calls saveOptions() to save the settings of
+ * the last window's properties.
+ * @see KMainWindow#queryExit
+ * @see KMainWindow#closeEvent
+ */
+ virtual bool queryExit();
+
+ /**
+ * overwrite method of QObject; will be invoked by the internal QObject-Timer
+ * the timer is set to 1 second in the construtor;
+ * this method sets the time to the next refresh in the statusbar and
+ * animates the "?" in the traybar, when the refresh is working
+ */
+ virtual void timerEvent( QTimerEvent * );
+
+ /**
+ * overwrite method of QWidget;
+ * to hide the taskbar button
+ */
+ virtual bool event(QEvent *e);
+
+ /**
+ * Starts the first refresh or starts the refresh timer
+ * with the configured init time.
+ */
+ void initFirstRefresh();
+
+ /**
+ * Stops the refresh timer.
+ */
+ void stopRefreshTimer();
+
+ /**
+ * Starts the refresh timer for the next refresh.
+ */
+ void initNextRefresh();
+
+ /**
+ * Refreshes the status bar filter field.
+ */
+ void refreshFilterStatusBar();
+
+ protected slots:
+
+ /**
+ * Changes the status message of the whole statusbar for two seconds,
+ * then restores the last status. This is used to display
+ * statusbar messages that give information about actions for toolbar
+ * icons and menu entries.
+ * @param text the text that is displayed in the statusbar
+ */
+ void slotStatusHelpMsg(const QString &text);
+
+ /**
+ * Changes the contents in the left status bar item permanently,
+ * used to indicate current actions. And sets the current time
+ * in the right item.
+ * @param text the text that is displayed in the statusbar
+ */
+ void slotStatusMsg(const QString &text);
+
+ /**
+ * Connected with the setup dialog.
+ * Reloads the configuration, if it was changed from the dialog.
+ */
+ void slotConfChanged();
+
+ /**
+ * Connected with action m_actionDelete.
+ * Deletes all selected mails.
+ */
+ void slotDelete();
+
+ /**
+ * Connected with signal sigDeleteReady of m_ConfigList.
+ * This signal will be emitted when one or many accounts have
+ * ended a deletion.
+ * This slot refreshes the view, sets the state to idle and sets
+ * a normal cursor.
+ */
+ void slotDeletionReady();
+
+ /**
+ * Connected with action m_actionShowMessage.
+ * Shows all selected mails.
+ */
+ void slotShowMessage();
+
+ /**
+ * Connected with signal sigShowBodiesReady of m_ConfigList.
+ * This signal will be emitted when all accounts have downloaded
+ * and shown the selected messages.
+ * This slot sets the state to idle and sets a normal cursor.
+ */
+ void slotShowMessageReady();
+
+ /**
+ * Connected with signal sigMessageWindowOpened of m_ConfigList.
+ * This signal will be emitted when a window to show a mail body
+ * was opened.
+ * Switches the cursor to normal view.
+ */
+ void slotNormalCursor();
+
+ /**
+ * Connected with signal sigAllMessageWindowsClosed of m_ConfigList.
+ * This signal will be emitted when all windows to show a mail body
+ * have been closed.
+ * Switches the cursor to waiting view.
+ */
+ void slotWaitingCursor();
+
+ /**
+ * Connected with m_actionRefresh.
+ * Refreshes the mail list.
+ */
+ void slotRefresh();
+
+ /**
+ * Connected with signal sigRefreshReady of m_ConfigList.
+ * This signal will be emitted when all accounts have refreshed
+ * their mail list.
+ * This slot refreshes the mail view.
+ */
+ void slotRefreshReady();
+
+ /**
+ * Connected with signal destroyed of the alert message dialog.
+ * Sets m_pAlertDialog to NULL, if the dialog was destroyed.
+ * If m_pAlertDialog == NULL, slotRefreshReady will create a new instance of it.
+ * @see m_pAlertDialog
+ * @see slotRefreshReady()
+ */
+ void slotAlertDestroyed();
+
+ /**
+ * Connected with signal signalOk of the alert message dialog.
+ * Switches the main window to normal view.
+ * @see m_pAlertDialog;
+ */
+ void slotAlertOk ();
+
+ /**
+ * Refreshes the account and messages list view.
+ */
+ void slotRefreshView ();
+
+ /**
+ * If the application state is not "idle" it will stop all current running POP3 jobs.
+ * Connected with m_actionStop().
+ */
+ void slotStop ();
+
+ /**
+ * Shows the headers of all selected mails.
+ * Connected with action m_actionShowHeader.
+ */
+ void slotShowHeader();
+
+ /**
+ * Connected with standard action configureToolbars.
+ * Opens a dialog to configure the icons of the toolbar.
+ */
+ void slotEditToolbars();
+
+ /**
+ * Saves GUI options, account and filter settings to the configuration file.
+ */
+ void slotSaveOptions();
+
+ /**
+ * Calls the close() method of KShowMailApp to exit the application. Uses askCloseConfirmation() to ask
+ * the user (if configured). Sets m_bForceClose to TRUE, therefore queryClose() will be passed without
+ * anything to do. After that in queryExit() slotSaveOptions() will be invoked.
+ */
+ void slotFileQuit();
+
+ /**
+ * Opens the setup dialog for the highlighted account. Connected with m_actionSetupAccount.
+ */
+ void slotSetupAccount();
+
+ /**
+ * Connected with the standard setup action.
+ * If the application state is "idle" (m_state == idle) it will open the configuration dialog.
+ */
+ void slotSetup();
+
+ /**
+ * Shows the filter log.
+ */
+ void slotShowFilterLog();
+
+ /**
+ * Adds the sender of the selected mails to the whitelist
+ */
+ void slotAddToWhitelist();
+
+ /**
+ * Adds the sender of the selected mails to the blacklist
+ */
+ void slotAddToBlacklist();
+
+ void slotAccountActivated(QListViewItem*);
+ void slotSendFeedbackMail();
+ void slotForceClose();
+
+
+
+
+private:
+
+ bool m_bForceClose;
+
+
+ protected:
+ void addFeatureList(KFeedbackQuestion * question);
+ bool askCloseConfirmation();
+
+};
+
+#endif // KSHOWMAIL_H
diff --git a/kshowmail/kshowmaildoc.cpp b/kshowmail/kshowmaildoc.cpp
new file mode 100644
index 0000000..05516ac
--- /dev/null
+++ b/kshowmail/kshowmaildoc.cpp
@@ -0,0 +1,81 @@
+/***************************************************************************
+ kshowmaildoc.cpp - description
+ -------------------
+ begin : Fre Sep 28 23:29:54 CEST 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+// include files for Qt
+#include <qdir.h>
+#include <qwidget.h>
+
+// include files for KDE
+#include <klocale.h>
+#include <kmessagebox.h>
+#include <kio/job.h>
+#include <kio/netaccess.h>
+
+// application specific includes
+#include "kshowmaildoc.h"
+#include "kshowmail.h"
+#include "kshowmailview.h"
+
+KshowmailView *KshowmailDoc::pView = 0L;
+
+KshowmailDoc::KshowmailDoc(QWidget *parent, const char *name) : QObject(parent, name)
+{
+}
+
+KshowmailDoc::~KshowmailDoc()
+{
+}
+
+void KshowmailDoc::addView(KshowmailView *view)
+{
+ pView = view;
+}
+
+void KshowmailDoc::removeView(KshowmailView*)
+{
+ delete pView;
+}
+
+void KshowmailDoc::setURL(const KURL &url)
+{
+ doc_url=url;
+}
+
+const KURL& KshowmailDoc::URL() const
+{
+ return doc_url;
+}
+
+// this could be deleted; perhaps we build a tree view sometime ?
+void KshowmailDoc::slotUpdateAllViews(KshowmailView *sender)
+{
+ if(pView)
+ {
+ if(pView!=sender)
+ pView->repaint();
+ }
+}
+
+bool KshowmailDoc::newDocument()
+{
+ /////////////////////////////////////////////////
+ // TODO: Add your document initialization code here
+ /////////////////////////////////////////////////
+ doc_url.setFileName(i18n("Untitled"));
+
+ return true;
+}
diff --git a/kshowmail/kshowmaildoc.h b/kshowmail/kshowmaildoc.h
new file mode 100644
index 0000000..7f9a541
--- /dev/null
+++ b/kshowmail/kshowmaildoc.h
@@ -0,0 +1,81 @@
+/***************************************************************************
+ kshowmaildoc.h - description
+ -------------------
+ begin : Fre Sep 28 23:29:54 CEST 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef KSHOWMAILDOC_H
+#define KSHOWMAILDOC_H
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+// include files for QT
+#include <qobject.h>
+#include <qstring.h>
+
+// include files for KDE
+#include <kurl.h>
+
+// forward declaration of the Kshowmail classes
+class KshowmailView;
+
+/** KshowmailDoc provides a document object for a document-view model.
+ *
+ * The KshowmailDoc class provides a document object that can be used in conjunction with the classes KshowmailApp and KshowmailView
+ * to create a document-view model for standard KDE applications based on KApplication and KMainWindow. Thereby, the document object
+ * is created by the KshowmailApp instance and contains the document structure with the according methods for manipulation of the document
+ * data by KshowmailView objects. Also, KshowmailDoc contains the methods for serialization of the document data from and to files.
+ *
+ * @author Source Framework Automatically Generated by KDevelop, (c) The KDevelop Team.
+ * @version KDevelop version 1.2 code generation
+ */
+class KshowmailDoc : public QObject
+{
+ Q_OBJECT
+ public:
+ /** Constructor for the fileclass of the application */
+ KshowmailDoc(QWidget *parent, const char *name=0);
+ /** Destructor for the fileclass of the application */
+ ~KshowmailDoc();
+
+ /** adds a view to the document which represents the document contents. Usually this is your main view. */
+ void addView(KshowmailView *view);
+ /** removes a view from the list of currently connected views */
+ void removeView(KshowmailView *view);
+ /** initializes the document generally */
+ bool newDocument();
+ /** returns the KURL of the document */
+ const KURL& URL() const;
+ /** sets the URL of the document */
+ void setURL(const KURL& url);
+
+ public slots:
+ /** calls repaint() on all views connected to the document object and is called by the view by which the document has been changed.
+ * As this view normally repaints itself, it is excluded from the paintEvent.
+ */
+ void slotUpdateAllViews(KshowmailView *sender);
+
+ public:
+ /** the list of the views currently connected to the document */
+ // no List; just one view
+ static KshowmailView *pView;
+
+ private:
+ /** the modified flag of the current document */
+ KURL doc_url;
+};
+
+#endif // KSHOWMAILDOC_H
diff --git a/kshowmail/kshowmaildock.cpp b/kshowmail/kshowmaildock.cpp
new file mode 100644
index 0000000..c5eaa97
--- /dev/null
+++ b/kshowmail/kshowmaildock.cpp
@@ -0,0 +1,83 @@
+/***************************************************************************
+ kshowmaildock.cpp - description
+ -------------------
+ begin : Wed Jan 3 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#include <qpixmap.h>
+#include <qpainter.h>
+#include <qtooltip.h>
+
+#include <kpopupmenu.h>
+#include <kstandarddirs.h>
+#include <kglobalsettings.h>
+#include <klocale.h>
+#include <kdebug.h>
+
+#include "kshowmail.h"
+#include "kshowmaildock.h"
+
+KShowMailDock::KShowMailDock(QWidget* parent, KAction *actionRefresh )
+: KSystemTray (parent, 0),
+ m_background (QPixmap(::locate ("data", "kshowmail/pics/kshowmail24.png")))
+{
+// kdDebug () << "KShowMailDock::KShowMailDock" << endl;
+ drawText ("?", Qt::red);
+ QToolTip::add (this, i18n("KShowmail: a powerful pop3 email checker"));
+
+ show();
+
+ actionRefresh->plug( contextMenu() );
+ //((KShowMailApp*)parent)->m_actionRefresh->plug (contextMenu());
+ connect (contextMenu(),SIGNAL(activated(int)),this, SIGNAL(sigActivated(int)));
+ connect (contextMenu(),SIGNAL(highlighted(int)),this, SIGNAL(sigHighlighted(int)));
+}
+
+void KShowMailDock::drawText (const QString str, const QColor& color)
+{
+ setPixmap (m_background);
+ QPixmap* pix = pixmap ();
+ if (pix && !pix->isNull ())
+ {
+ QPainter p (pix);
+// p.setFont (KGlobalSettings::toolBarFont());
+ p.setFont (KGlobalSettings::windowTitleFont());
+ p.setPen (color);
+ p.drawText (0,0,24,24,QPainter::AlignCenter,str,str.length());
+ }
+ else
+ kdError () << "No pixmap for traybar !" << endl;
+}
+
+void KShowMailDock::drawNumber (int n, const QColor& color)
+{
+ setPixmap (m_background);
+ QPixmap* pix = pixmap ();
+ if (pix && !pix->isNull ())
+ {
+ QString num (QString::number(n));
+ QPainter p (pix);
+ p.setFont (KGlobalSettings::toolBarFont());
+ p.setPen (color);
+ p.drawText (0,0,24,24,QPainter::AlignCenter,num,num.length());
+ }
+ else
+ kdError () << "No pixmap for traybar !" << endl;
+}
+
+void KShowMailDock::clear ()
+{
+ setPixmap (m_background);
+}
+
diff --git a/kshowmail/kshowmaildock.h b/kshowmail/kshowmaildock.h
new file mode 100644
index 0000000..bc84f5b
--- /dev/null
+++ b/kshowmail/kshowmaildock.h
@@ -0,0 +1,46 @@
+/***************************************************************************
+ kshowmaildock.h - description
+ -------------------
+ begin : Wed Jan 3 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef KSHOWMAILDOCK_H
+#define KSHOWMAILDOCK_H
+
+#include <qwidget.h>
+#include <qpixmap.h>
+#include <ksystemtray.h>
+#include <kaction.h>
+
+/**
+ *@author Eggert Ehmke
+ */
+
+class KShowMailDock : public KSystemTray
+{
+ Q_OBJECT
+public:
+ KShowMailDock(QWidget*, KAction *actionRefresh );
+ ~KShowMailDock() {};
+ void drawText (const QString str, const QColor& color);
+ void drawNumber (int n, const QColor& color);
+ void clear ();
+signals:
+ void sigActivated(int);
+ void sigHighlighted(int);
+private:
+ QPixmap m_background;
+};
+
+#endif
diff --git a/kshowmail/kshowmailfeedback.cpp b/kshowmail/kshowmailfeedback.cpp
new file mode 100644
index 0000000..b1fe297
--- /dev/null
+++ b/kshowmail/kshowmailfeedback.cpp
@@ -0,0 +1,159 @@
+/*
+ * File name: kshowmailfeedback.cpp
+ * Summary: User feedback questions for KShowmail
+ * License: GPL - See file COPYING for details.
+ *
+ * Author: Stefan Hundhammer <sh@suse.de>
+ * Eggert Ehmke <eggert.ehmke@berlin.de>
+ *
+ * Updated: 2002-05-30
+ *
+ * $Id: kshowmailfeedback.cpp,v 1.8 2008/04/17 20:13:20 kuddel-fl Exp $
+ *
+ */
+
+
+#include <klocale.h>
+
+#include "kshowmail.h"
+#include "kfeedback.h"
+
+
+
+void KShowMailApp::slotSendFeedbackMail()
+{
+ KFeedbackDialog* feedbackDialog = new KFeedbackDialog( "eggert.ehmke@berlin.de, ulrich.weigelt@gmx.de", "feedback_mail" );
+ CHECK_PTR( feedbackDialog );
+
+ KFeedbackQuestionList * list = feedbackDialog->form()->questionList();
+
+ KFeedbackQuestion * question =
+ list->addQuestion( i18n( "What is your general opinion about this program?" ), "general_opinion", true, true );
+
+ question->addAnswer( i18n( "It's one of my favourites"), "1/8_favourite");
+ question->addAnswer( i18n( "I like it"), "2/8_like_it");
+ question->addAnswer( i18n( "It's sometimes useful"), "3/8_sometimes_useful");
+ question->addAnswer( i18n( "It's average"), "4/8_average");
+ question->addAnswer( i18n( "Nice try, but this could be done better"), "5/8_nice_try");
+ question->addAnswer( i18n( "It's poor"), "6/8_poor");
+ question->addAnswer( i18n( "It's useless"), "7/8_useless");
+ question->addAnswer( i18n( "It's crap"), "8/8_crap");
+
+ question = list->addQuestion( i18n( "Which features of this program do you like?" ), "features_liked", false );
+ addFeatureList( question );
+
+ question = list->addQuestion( i18n( "What is your favourite feature?" ), "favourite_feature", true );
+ addFeatureList( question );
+
+ question = list->addQuestion( i18n( "Which features don't you like?" ), "features_not_liked", false );
+ addFeatureList( question );
+
+ question = list->addQuestion( i18n( "Which features do you never use?" ), "features_never_used", false );
+ addFeatureList( question );
+
+ question = list->addQuestion( i18n( "Are there features you are missing?" ), "features_missing", true );
+ question->addAnswer( i18n( "Yes, a lot! (please add comment below)" ), "1/4_lots" );
+ question->addAnswer( i18n( "Some (please add comment below)" ), "2/4_some" );
+ question->addAnswer( i18n( "None" ), "3/4_none" );
+ question->addAnswer( i18n( "It has too many features already!" ), "4/4_too_many_already" );
+
+ question = list->addQuestion( i18n( "How do you rate the stability of this program?" ), "stability", true, true );
+ question->addAnswer( i18n( "Rock solid"), "1/5_rock_solid" );
+ question->addAnswer( i18n( "Good"), "2/5_good");
+ question->addAnswer( i18n( "Average"), "3/5_average");
+ question->addAnswer( i18n( "Poor"), "4/5_poor" );
+ question->addAnswer( i18n( "It keeps crashing all the time"), "5/5_keeps_crashing" );
+
+ question = list->addQuestion( i18n( "How do you rate the performance of this program?" ), "performance", true );
+ question->addAnswer( i18n( "Great"), "1/5_great");
+ question->addAnswer( i18n( "Good"), "2/5_good");
+ question->addAnswer( i18n( "Average"), "3/5_average");
+ question->addAnswer( i18n( "Poor"), "4/5_poor");
+ question->addAnswer( i18n( "It's so slow it drives me nuts"), "5/5_drives_me_nuts");
+
+ question = list->addQuestion( i18n( "What is your experience with computers in general?" ), "computer_experience", true );
+ question->addAnswer( i18n( "Expert" ), "1/5_expert" );
+ question->addAnswer( i18n( "Fair" ), "2/5_fair" );
+ question->addAnswer( i18n( "Average" ), "3/5_average" );
+ question->addAnswer( i18n( "Learning" ), "4/5_learning" );
+ question->addAnswer( i18n( "Newbie" ), "5/5_newbie" );
+
+ question = list->addQuestion( i18n( "What is your experience with Unix/Linux systems?" ), "unix_experience", true );
+ question->addAnswer( i18n( "Expert" ), "1/5_expert" );
+ question->addAnswer( i18n( "Fair" ), "2/5_fair" );
+ question->addAnswer( i18n( "Average" ), "3/5_average" );
+ question->addAnswer( i18n( "Learning" ), "4/5_learning" );
+ question->addAnswer( i18n( "Newbie" ), "5/5_newbie" );
+
+ question = list->addQuestion( i18n( "Did you have trouble figuring out how to work with this program?" ),
+ "learning_curve", true, true );
+ question->addAnswer( i18n( "No problem" ), "1/5_no_problem" );
+ question->addAnswer( i18n( "Some" ), "2/5_some_problems" );
+ question->addAnswer( i18n( "I'm still learning" ), "3/5_still_learing" );
+ question->addAnswer( i18n( "I didn't have a clue what to do at first" ), "4/5_no_clue_at_first" );
+ question->addAnswer( i18n( "I still don't have a clue what to do" ), "5/5_still_no_clue" );
+
+ question = list->addQuestion( i18n( "Where do you use this program most?" ), "usage_where", true );
+ question->addAnswer( i18n( "At work" ), "at_work" );
+ question->addAnswer( i18n( "At home" ), "at_home" );
+ question->addAnswer( i18n( "At university / school" ), "university" );
+
+ question = list->addQuestion( i18n( "What is your primary role there?" ), "primary_role", true );
+ question->addAnswer( i18n( "Home user" ), "home_user" );
+ question->addAnswer( i18n( "Student" ), "student" );
+ question->addAnswer( i18n( "Educational (teacher / professor)" ), "educational" );
+ question->addAnswer( i18n( "Non-computer related work" ), "non_computer" );
+ question->addAnswer( i18n( "Developer" ), "developer" );
+ question->addAnswer( i18n( "System administrator" ), "sysadmin" );
+
+ question = list->addQuestion( i18n( "Do you have any other roles there?" ), "other_roles", false );
+ question->addAnswer( i18n( "Home user" ), "home_user" );
+ question->addAnswer( i18n( "Student" ), "student" );
+ question->addAnswer( i18n( "Educational (teacher / professor)" ), "educational" );
+ question->addAnswer( i18n( "Non-computer related work" ), "non_computer" );
+ question->addAnswer( i18n( "Developer" ), "developer" );
+ question->addAnswer( i18n( "System administrator" ), "sysadmin" );
+
+ question = list->addQuestion( i18n( "How did you get to know this program?" ), "first_contact", true );
+ question->addAnswer( i18n( "In a menu on my machine" ), "menu" );
+ question->addAnswer( i18n( "Somebody told me about it" ), "told" );
+ question->addAnswer( i18n( "On the internet" ), "internet" );
+ question->addAnswer( i18n( "Printed magazine / book" ), "print_media" );
+ question->addAnswer( i18n( "Other (please add comment below)" ), "other" );
+
+ list->addYesNoQuestion( i18n( "Would you recommend this program to a friend?" ), "recommend", true );
+
+ feedbackDialog->show();
+}
+
+
+void KShowMailApp::addFeatureList( KFeedbackQuestion * question )
+{
+ question->addAnswer( i18n( "The message list display in general"), "message_list" );
+ question->addAnswer( i18n( "Display of message headers" ), "message_header" );
+ question->addAnswer( i18n( "Display of complete messages"), "complete_message" );
+
+ question->addAnswer( i18n( "Filters" ), "filters" );
+ question->addAnswer( i18n( "Manual delete of unwanted messages"), "manual_delete_messages" );
+ question->addAnswer( i18n( "Automatic move of filtered messages" ), "move_messages" );
+ question->addAnswer( i18n( "Automatic delete of filtered messages" ), "delete_messages" );
+ question->addAnswer( i18n( "Automatic mark of filtered messages" ), "mark_messages" );
+ question->addAnswer( i18n( "Ignoring of filtered messages" ), "ignoring_messages" );
+ question->addAnswer( i18n( "Integration of SpamAssassin" ), "SpamAssassin_Integration" );
+ question->addAnswer( i18n( "White- and Blacklist" ), "white_blacklist" );
+ question->addAnswer( i18n( "Filter Log" ), "filter_log" );
+ question->addAnswer( i18n( "Filter messages by regular expressions"), "filter_messages_by regular_expression" );
+
+
+ question->addAnswer( i18n( "Sorting of messages by size, date etc." ), "sorting" );
+
+ question->addAnswer( i18n( "Play sound"), "play_sound" );
+ question->addAnswer( i18n( "Play beep"), "play_beep" );
+ question->addAnswer( i18n( "Initial timer"), "initial_timer" );
+ question->addAnswer( i18n( "Interval timer"), "interval_timer" );
+ question->addAnswer( i18n( "This feedback survey :-)"), "feedback" );
+}
+
+
+
+// EOF
diff --git a/kshowmail/kshowmailui.rc b/kshowmail/kshowmailui.rc
new file mode 100644
index 0000000..ace6ca4
--- /dev/null
+++ b/kshowmail/kshowmailui.rc
@@ -0,0 +1,45 @@
+<!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
+<kpartgui name="kshowmail" version="3">
+ <MenuBar>
+ <Menu name="actions"><text>&amp;Actions</text>
+ <Action name="refresh"/>
+ <Action name="stop"/>
+ <Separator/>
+ <Action name="show_header"/>
+ <Action name="show_complete"/>
+ <Action name="delete"/>
+ <Separator/>
+ <Action name="addWhitelist"/>
+ <Action name="addBlacklist"/>
+ <Separator/>
+ <Action name="show_filterlog"/>
+ </Menu>
+ <Menu name="settings"><text>&amp;Settings</text>
+ <Merge name="StandardToolBarMenuHandler" />
+ </Menu>
+ <Menu name="help"><text>&amp;Help</text>
+ <Action name="sendFeedback"/>
+ </Menu>
+ </MenuBar>
+
+ <Menu name="mail_context_popup">
+ <Action name="show_header"/>
+ <Action name="show_complete"/>
+ <Action name="delete"/>
+ <Separator/>
+ <Action name="addWhitelist"/>
+ <Action name="addBlacklist"/>
+ </Menu>
+
+ <Menu name="account_context_popup">
+ <Action name="refresh"/>
+ <Action name="setupAccount"/>
+ </Menu>
+
+ <ToolBar noMerge="1" name="mainToolBar"><text>Main Toolbar</text>
+ <Action name="refresh"/>
+ <Action name="delete"/>
+ <Action name="options_configure"/>
+ <Action name="file_quit" />
+ </ToolBar>
+</kpartgui> \ No newline at end of file
diff --git a/kshowmail/kshowmailview.cpp b/kshowmail/kshowmailview.cpp
new file mode 100644
index 0000000..d7fb3a5
--- /dev/null
+++ b/kshowmail/kshowmailview.cpp
@@ -0,0 +1,449 @@
+/***************************************************************************
+ kshowmailview.cpp - description
+ -------------------
+ begin : Sat May 6 12:13:57 MEST 2000
+ copyright : (C) 2000-2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+
+ 26 Sep 2002 - Allow for columns to be hidden. Allistar Melville
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+// include files for Qt
+#include <qprinter.h>
+#include <qpainter.h>
+#include <qmessagebox.h>
+#include <qkeycode.h>
+#include <qvaluelist.h>
+
+#include <kstandarddirs.h>
+#include <klocale.h>
+#include <kdebug.h>
+
+// application specific includes
+#include "kshowmailview.h"
+#include "kshowmaildoc.h"
+#include "kshowmail.h"
+
+KshowmailView::KshowmailView(QWidget *parent, const char *name):
+ QSplitter(Vertical, parent, name)
+{
+ setBackgroundMode( PaletteBase );
+ setFocusPolicy( QWidget::StrongFocus );
+
+ //get application config object (kshowmailrc)
+ config = KApplication::kApplication()->config();
+
+ //load active pic for the account list
+ m_pixOk = new QPixmap( ::locate( "data", "kshowmail/pics/ok.png" ) );
+
+ //create account list
+ m_pListAccounts = new KListView( this, "accounts" );
+ m_pListAccounts->setSelectionMode( QListView::Extended );
+ m_pListAccounts->setSorting( 1 ); // sort account column
+ m_pListAccounts->setShowSortIndicator( true );
+ m_pListAccounts->addColumn( i18n( "Active" ), DEFAULT_WIDTH_ACCOUNT_ACTIVE );
+ m_pListAccounts->addColumn( i18n( "Account" ), DEFAULT_WIDTH_ACCOUNT_ACCOUNT );
+ m_pListAccounts->addColumn( i18n( "Server" ), DEFAULT_WIDTH_ACCOUNT_SERVER );
+ m_pListAccounts->addColumn( i18n( "User" ), DEFAULT_WIDTH_ACCOUNT_USER );
+ m_pListAccounts->addColumn( i18n( "Messages" ), DEFAULT_WIDTH_ACCOUNT_MESSAGES );
+ m_pListAccounts->addColumn( i18n( "Size" ), DEFAULT_WIDTH_ACCOUNT_SIZE );
+ m_pListAccounts->setAllColumnsShowFocus( true );
+ connect( m_pListAccounts, SIGNAL( rightButtonClicked( QListViewItem*, const QPoint &, int ) ), SLOT( slotAccountContext( QListViewItem*, const QPoint &, int ) ) );
+ connect( m_pListAccounts, SIGNAL( clicked( QListViewItem*, const QPoint &, int) ), SLOT( slotAccountClicked( QListViewItem*, const QPoint &, int ) ) );
+
+ //create message list
+ m_pListMessages = new KListView( this, "messages" );
+ m_pListMessages->setSelectionMode( QListView::Extended );
+ m_pListMessages->setAllColumnsShowFocus( true );
+ m_pListMessages->setSorting( ShowListViewItem::_colNumber ); // sort number column
+ m_pListMessages->setShowSortIndicator( true );
+ m_pListMessages->addColumn( i18n( "Number" ), DEFAULT_WIDTH_MESSAGE_NUMBER );
+ m_pListMessages->addColumn( i18n( "Account" ), DEFAULT_WIDTH_MESSAGE_ACCOUNT );
+ m_pListMessages->addColumn( i18n( "From" ), DEFAULT_WIDTH_MESSAGE_FROM );
+ m_pListMessages->addColumn( i18n( "To" ), DEFAULT_WIDTH_MESSAGE_TO );
+ m_pListMessages->addColumn( i18n( "Subject" ), DEFAULT_WIDTH_MESSAGE_SUBJECT );
+ m_pListMessages->addColumn( i18n( "Date" ), DEFAULT_WIDTH_MESSAGE_DATE );
+ m_pListMessages->addColumn( i18n( "Size" ), DEFAULT_WIDTH_MESSAGE_SIZE );
+ m_pListMessages->addColumn( i18n( "Content" ), DEFAULT_WIDTH_MESSAGE_CONTENT );
+ m_pListMessages->addColumn( i18n( "State" ), DEFAULT_WIDTH_MESSAGE_STATE );
+ connect( m_pListMessages, SIGNAL( rightButtonClicked( QListViewItem*, const QPoint &, int) ), SLOT( slotMessageContext( QListViewItem*, const QPoint &, int ) ) );
+ connect( m_pListMessages, SIGNAL( doubleClicked( QListViewItem* ) ), SLOT( slotMessageDoubleClicked( QListViewItem* ) ) );
+ connect( m_pListMessages, SIGNAL( clicked( QListViewItem* ) ), SLOT( slotMessageClicked( QListViewItem* ) ) );
+
+ //read the geometry from the application config file
+ readOptions();
+
+
+}
+
+KshowmailView::~KshowmailView()
+{
+ delete m_pListAccounts;
+ delete m_pListMessages;
+}
+
+void KshowmailView::readOptions()
+{
+ //read splitter geometry
+ config->setGroup ("Display Options");
+ QValueList<int> size;
+ size.append (config->readNumEntry ("sizeaccounts", 40));
+ size.append (config->readNumEntry ("sizemessages", 50));
+ setSizes (size);
+
+ // read layout of the list views
+ m_pListAccounts->restoreLayout( config, CONFIG_GROUP_ACCOUNT_LIST );
+ m_pListMessages->restoreLayout( config, CONFIG_GROUP_MESSAGE_LIST );
+}
+
+void KshowmailView::saveOptions (KConfig* config)
+{
+// kdDebug () << "KshowmailView::saveOptions" << endl;
+ config->setGroup("Display Options");
+ //splitter
+ QValueList<int> size = sizes ();
+ config->writeEntry ("sizeaccounts", size [0]);
+ config->writeEntry ("sizemessages", size [1]);
+ // layout
+ m_pListAccounts->saveLayout ( config, CONFIG_GROUP_ACCOUNT_LIST );
+ m_pListMessages->saveLayout (config, CONFIG_GROUP_MESSAGE_LIST );
+}
+
+
+void KshowmailView::slotMessageContext( QListViewItem* pItem, const QPoint&, int )
+{
+ if( pItem != NULL )
+ {
+ //get pointer to the main widget
+ KShowMailApp* theApp = ( KShowMailApp * )parentWidget();
+
+ //create and show popup menu
+ QWidget* w = theApp->factory()->container( "mail_context_popup", theApp );
+ QPopupMenu* popup = static_cast<QPopupMenu*>( w );
+ popup->exec( QCursor::pos() );
+
+ //select clicked item
+ m_pListMessages->setSelected (pItem, true);
+ }
+}
+
+void KshowmailView::slotAccountContext( QListViewItem* pItem, const QPoint&, int )
+{
+ if ( pItem != NULL )
+ {
+ //get pointer to the main widget
+ KShowMailApp* theApp = ( KShowMailApp * )parentWidget();
+
+ //create and show popup menu
+ QWidget* w = theApp->factory()->container( "account_context_popup", theApp );
+ QPopupMenu* popup = static_cast<QPopupMenu*>( w );
+ popup->exec( QCursor::pos() );
+
+ //select clicked item
+ m_pListAccounts->setSelected( pItem, true );
+ }
+}
+
+void KshowmailView::slotAccountClicked( QListViewItem* pItem, const QPoint&, int col )
+{
+
+ //get application config object (kshowmailrc)
+ KConfig* config = KApplication::kApplication()->config();
+
+ if( col == 0 )
+ {
+ KShowMailApp *theApp = (KShowMailApp *)parentWidget();
+ ConfigElem* pElem = theApp->m_ConfigList.getSelectedAccount();
+
+ if( pElem != NULL )
+ {
+ //get account name
+ QString name = pElem->getAccountName();
+
+ //set config group
+ config->setGroup( name );
+
+ //toggle account active state
+ pElem->setActive( !pElem->isActive() );
+
+ if( pElem->isActive() )
+ {
+ //set active picture
+ pItem->setPixmap( 0, *m_pixOk );
+
+ //write active state into config file
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_ACTIVE, true );
+ config->sync();
+ }
+ else
+ {
+ //remove active picture
+ pItem->setPixmap( 0, 0 );
+
+ //write active state into config file
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_ACTIVE, false );
+ config->sync();
+ }
+
+ emit signalActiveChanged ();
+ }
+ }
+}
+
+void KshowmailView::slotMessageDoubleClicked (QListViewItem* pItem)
+{
+ if (pItem)
+ {
+// m_pListMessages->setSelected (pItem, true);
+
+ KShowMailApp *theApp=(KShowMailApp *) parentWidget();
+ theApp->slotShowHeader ();
+ }
+}
+
+void KshowmailView::slotMessageClicked (QListViewItem* pItem)
+{
+ if (pItem)
+ {
+// m_pListMessages->setSelected (pItem, true);
+
+ KShowMailApp *theApp=(KShowMailApp *) parentWidget();
+ theApp->delayNextRefresh();
+ }
+}
+
+void KshowmailView::clearMailListView( )
+{
+ m_pListMessages->clear();
+}
+
+ShowListViewItem* KshowmailView::insertMail( QString& number, QString& account, QString& from, QString& to, QString& subject, QString& date, QString& size, QString& content, QString& state, QString& time )
+{
+ //create item
+ ShowListViewItem* item = new ShowListViewItem( m_pListMessages );
+
+ //set content
+ item->setNumber( number );
+ item->setAccount( account );
+ item->setFrom( from );
+ item->setTo( to );
+ item->setSubject( subject );
+ item->setDate( date );
+ item->setSize( size );
+ item->setContent( content );
+ item->setState( state );
+ item->setTime( time );
+
+ return item;
+}
+
+void KshowmailView::refreshSetup( )
+{
+ QString ConfigEntryDisplay; //entry of the config about show or hide column
+ QString ConfigEntrySavedWidth; //entry of the config about saved width
+ int DefaultWidth = 100; //default width of the proceeded column
+ bool DefaultDisplay = true; //default show or hide of the proceeded column
+
+ //set columns of the account list
+ config->setGroup( CONFIG_GROUP_ACCOUNT_LIST );
+ for( int column = 0; column <= 5; column++ ) //iterate over all columns
+ {
+ //get config entries and defaults of the proceeded column from the constants header
+ switch( column )
+ {
+ case 0: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_ACCOUNT_ACTIVE;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_ACTIVE;
+ DefaultWidth = DEFAULT_WIDTH_ACCOUNT_ACTIVE;
+ DefaultDisplay = DEFAULT_DISPLAY_ACCOUNT_ACTIVE;
+ break;
+
+ case 1: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_ACCOUNT_ACCOUNT;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_ACCOUNT;
+ DefaultWidth = DEFAULT_WIDTH_ACCOUNT_ACCOUNT;
+ DefaultDisplay = DEFAULT_DISPLAY_ACCOUNT_ACCOUNT;
+ break;
+
+ case 2: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_ACCOUNT_SERVER;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_SERVER;
+ DefaultWidth = DEFAULT_WIDTH_ACCOUNT_SERVER;
+ DefaultDisplay = DEFAULT_DISPLAY_ACCOUNT_SERVER;
+ break;
+
+ case 3: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_ACCOUNT_USER;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_USER;
+ DefaultWidth = DEFAULT_WIDTH_ACCOUNT_USER;
+ DefaultDisplay = DEFAULT_DISPLAY_ACCOUNT_USER;
+ break;
+
+ case 4: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_ACCOUNT_MESSAGES;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_MESSAGES;
+ DefaultWidth = DEFAULT_WIDTH_ACCOUNT_MESSAGES;
+ DefaultDisplay = DEFAULT_DISPLAY_ACCOUNT_MESSAGES;
+ break;
+
+ case 5: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_ACCOUNT_SIZE;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_ACCOUNT_SIZE;
+ DefaultWidth = DEFAULT_WIDTH_ACCOUNT_SIZE;
+ DefaultDisplay = DEFAULT_DISPLAY_ACCOUNT_SIZE;
+ break;
+ } //end select
+
+ //get desired column state
+ bool showColumn = config->readBoolEntry( ConfigEntryDisplay, DefaultDisplay );
+
+ //get currently column state
+ bool curShowed = m_pListAccounts->columnWidth( column ) > 0;
+
+ if( showColumn )
+ {
+ //column will be shown
+
+ if( !curShowed )
+ {
+ //the column is currently not be shown
+
+ //get saved width or take default width
+ int savedWidth = config->readNumEntry( ConfigEntrySavedWidth, DefaultWidth );
+
+ //set column width
+ m_pListAccounts->setColumnWidth( column, savedWidth );
+ }
+ //else: the column is currently shown; do nothing
+ }
+ else
+ {
+ //column will not be shown
+
+ if( curShowed )
+ {
+ //the column is currently shown
+
+ //save current width
+ config->writeEntry( ConfigEntrySavedWidth, m_pListAccounts->columnWidth( column ) );
+
+ //hide column
+ m_pListAccounts->hideColumn( column );
+ }
+ //else: the column is already hidden; do nothing
+ }
+
+ } //end column loop
+
+ //set columns of the message list
+ config->setGroup( CONFIG_GROUP_MESSAGE_LIST );
+ for( int column = 0; column <= 8; column++ ) //iterate over all columns
+ {
+ //get config entries and defaults of the proceeded column from the constants header
+ switch( column )
+ {
+ case 0: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_NUMBER;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_NUMBER;
+ DefaultWidth = DEFAULT_WIDTH_MESSAGE_NUMBER;
+ DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_NUMBER;
+ break;
+
+ case 1: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_ACCOUNT;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_ACCOUNT;
+ DefaultWidth = DEFAULT_WIDTH_MESSAGE_ACCOUNT;
+ DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_ACCOUNT;
+ break;
+
+ case 2: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_FROM;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_FROM;
+ DefaultWidth = DEFAULT_WIDTH_MESSAGE_FROM;
+ DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_FROM;
+ break;
+
+ case 3: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_TO;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_TO;
+ DefaultWidth = DEFAULT_WIDTH_MESSAGE_TO;
+ DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_TO;
+ break;
+
+ case 4: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_SUBJECT;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_SUBJECT;
+ DefaultWidth = DEFAULT_WIDTH_MESSAGE_SUBJECT;
+ DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_SUBJECT;
+ break;
+
+ case 5: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_DATE;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_DATE;
+ DefaultWidth = DEFAULT_WIDTH_MESSAGE_DATE;
+ DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_DATE;
+ break;
+
+ case 6: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_SIZE;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_SIZE;
+ DefaultWidth = DEFAULT_WIDTH_MESSAGE_SIZE;
+ DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_SIZE;
+ break;
+
+ case 7: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_CONTENT;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_CONTENT;
+ DefaultWidth = DEFAULT_WIDTH_MESSAGE_CONTENT;
+ DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_CONTENT;
+ break;
+
+ case 8: ConfigEntryDisplay = CONFIG_ENTRY_DISPLAY_MESSAGE_STATE;
+ ConfigEntrySavedWidth = CONFIG_ENTRY_OLD_WIDTH_MESSAGE_STATE;
+ DefaultWidth = DEFAULT_WIDTH_MESSAGE_STATE;
+ DefaultDisplay = DEFAULT_DISPLAY_MESSAGE_STATE;
+ break;
+
+ } //end select
+
+ //get desired column state
+ bool showColumn = config->readBoolEntry( ConfigEntryDisplay, DefaultDisplay );
+
+ //get currently column state
+ bool curShowed = m_pListMessages->columnWidth( column ) > 0;
+
+ if( showColumn )
+ {
+ //column will be shown
+
+ if( !curShowed )
+ {
+ //the column is currently not be shown
+
+ //get saved width or take default width
+ int savedWidth = config->readNumEntry( ConfigEntrySavedWidth, DefaultWidth );
+
+ //set column width
+ m_pListMessages->setColumnWidth( column, savedWidth );
+ }
+ //else: the column is currently shown; do nothing
+ }
+ else
+ {
+ //column will not be shown
+
+ if( curShowed )
+ {
+ //the column is currently shown
+
+ //save current width
+ config->writeEntry( ConfigEntrySavedWidth, m_pListMessages->columnWidth( column ) );
+
+ //hide column
+ m_pListMessages->hideColumn( column );
+ }
+ //else: the column is already hidden; do nothing
+ }
+
+ } //end column loop
+
+ //save current layout
+ m_pListAccounts->saveLayout( config, CONFIG_GROUP_ACCOUNT_LIST );
+ m_pListMessages->saveLayout( config, CONFIG_GROUP_MESSAGE_LIST );
+ config->sync();
+}
diff --git a/kshowmail/kshowmailview.h b/kshowmail/kshowmailview.h
new file mode 100644
index 0000000..e417e2e
--- /dev/null
+++ b/kshowmail/kshowmailview.h
@@ -0,0 +1,157 @@
+/***************************************************************************
+ kshowmailview.h - description
+ -------------------
+ begin : Sat May 6 12:13:57 MEST 2000
+ copyright : (C) 2000-2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+
+ 26 Sep 2002 - Allow for columns to be hidden. Allistar Melville
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef KSHOWMAILVIEW_H
+#define KSHOWMAILVIEW_H
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+//Qt headers
+#include <qwidget.h>
+#include <qsplitter.h>
+#include <qcursor.h>
+#include <qpopupmenu.h>
+
+//KDE headers
+#include <klistview.h>
+#include <kconfig.h>
+#include <kapplication.h>
+
+//KShowmail headers
+#include "configlist.h"
+#include "showlistviewitem.h"
+
+
+
+class ConfigList;
+class KshowmailDoc;
+
+/** The KshowmailView class provides the view widget for the KShowMailApp instance.
+ * The View instance inherits QWidget as a base class and represents the view object of a KMainWindow.
+ * As KshowmailView is part of the document-view model, it needs a reference to the document object
+ * connected with it by the KShowMailApp class to manipulate and display
+ * the document structure provided by the KshowmailDoc class.
+ *
+ * @author Source Framework Automatically Generated by KDevelop, (c) The KDevelop Team.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ * @version KDevelop version 0.4 code generation
+ */
+class KshowmailView : public QSplitter
+{
+ Q_OBJECT
+
+ public:
+
+ /**
+ * Constructor for the main view
+ */
+ KshowmailView(QWidget *parent = 0, const char *name=0);
+
+
+ /**
+ * Destructor for the main view
+ */
+ ~KshowmailView();
+
+ /**
+ * Saves the options
+ */
+ void saveOptions( KConfig* config );
+
+ /**
+ * Clears the mail list view.
+ */
+ void clearMailListView();
+
+ /**
+ * Creates a mail list view item with the given content and
+ * inserts it into the mail list view.
+ * @param number mail number
+ * @param account account name
+ * @param from sender of the mail
+ * @param to recipient of the mail
+ * @param subject mail subject
+ * @param date date on which the mail was sent, formated to the current locale's conventions.
+ * @param size size of the mail
+ * @param content content type
+ * @param state new or old
+ * @param time send date, formated to the ISO 8601 extended specification (YYYY-MM-DDTHH:MM:SS)
+ * @return pointer to the created list view item
+ */
+ ShowListViewItem* insertMail( QString& number, QString& account, QString& from, QString& to, QString& subject, QString& date, QString& size, QString& content, QString& state, QString& time );
+
+ /**
+ * Refreshes the geometry.
+ * Reads from the config file the properties about show or hide columns.
+ * If a shown column should be hidden, the current width will be saved and the column will be hidden.
+ * If a hidden column should be shown, it will be set to the old saved width.
+ */
+ void refreshSetup();
+
+ KListView* m_pListAccounts;
+ KListView* m_pListMessages;
+
+ private:
+
+ QPixmap* m_pixOk;
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * Reads the some geometry options from the application config file.
+ */
+ void readOptions();
+
+private slots:
+
+ /**
+ * Connected with signal rightButtonClicked of m_pListMessages.
+ * Invoked, when the user has clicked on a list item with the right mouse button.
+ * Selects the clicked item and shows the popup menu mail_context_popup defined in
+ * kshowmailui.rc.
+ */
+ void slotMessageContext( QListViewItem*, const QPoint&, int );
+
+ void slotMessageDoubleClicked (QListViewItem*);
+ void slotMessageClicked (QListViewItem*);
+
+ /**
+ * Connected with signal rightButtonClicked of m_pListAccounts.
+ * Invoked, when the user has clicked on a list item with the right mouse button.
+ * Selects the clicked item and shows the popup menu account_context_popup defined in
+ * kshowmailui.rc.
+ */
+ void slotAccountContext( QListViewItem*, const QPoint &, int );
+
+ /**
+ * Connected with signal clicked of the account list.
+ * Activate or deactivate the account, if the user has clicked in the first column
+ */
+ void slotAccountClicked( QListViewItem*, const QPoint& point, int col );
+
+signals:
+ void signalActiveChanged ();
+};
+
+#endif // KSHOWMAILVIEW_H
diff --git a/kshowmail/kwalletaccess.cpp b/kshowmail/kwalletaccess.cpp
new file mode 100644
index 0000000..20dccc6
--- /dev/null
+++ b/kshowmail/kwalletaccess.cpp
@@ -0,0 +1,137 @@
+//
+// C++ Implementation: kwalletaccess
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "kwalletaccess.h"
+
+
+bool KWalletAccess::savePassword( const QString & account, const QString & password )
+{
+ //check for enabled KWallet
+ if( !KWallet::Wallet::isEnabled() )
+ {
+ KMessageBox::error( NULL, i18n( "KWallet is not available." ) );
+ return false;
+ }
+
+ //get wallet name for network data
+ QString name = KWallet::Wallet::NetworkWallet();
+ if( name == "" || name == QString::null )
+ {
+ KMessageBox::error( NULL, i18n( "Could not get wallet name for network datas from KWallet." ) );
+ return false;
+ }
+
+ //open wallet
+ //we want to create a connection object just at first call of this function
+ static KWallet::Wallet* wallet;
+
+ if( wallet == NULL )
+ {
+ wallet = KWallet::Wallet::openWallet( name );
+ }
+ else if( !wallet->isOpen() )
+ {
+ delete wallet;
+ wallet = KWallet::Wallet::openWallet( name );
+ }
+
+ if( wallet == NULL )
+ {
+ KMessageBox::error( NULL, i18n( "Could not open KWallet." ) );
+ return false;
+ }
+
+ //create kshowmail folder if it does not exist
+ if( !wallet->hasFolder( "KShowmail" ) )
+ {
+ bool createFolderSuccess = wallet->createFolder( "KShowmail" );
+
+ if( !createFolderSuccess )
+ {
+ KMessageBox::error( NULL, i18n( "Could not create folder for KShowmail in KWallet." ) );
+ return false;
+ }
+ }
+
+ //set folder
+ bool setFolderSuccess = wallet->setFolder( "KShowmail" );
+ if( !setFolderSuccess )
+ {
+ KMessageBox::error( NULL, i18n( "Could not open folder for KShowmail in KWallet." ) );
+ return false;
+ }
+
+ //write password
+ int writePasswordSuccess = wallet->writePassword( account, password );
+ if( writePasswordSuccess != 0 )
+ {
+ KMessageBox::error( NULL, i18n( "Could not save password in KWallet." ) );
+ return false;
+ }
+
+
+ return true;
+}
+
+QString KWalletAccess::getPassword( const QString & account )
+{
+ //check for enabled KWallet
+ if( !KWallet::Wallet::isEnabled() )
+ {
+ KMessageBox::error( NULL, i18n( "KWallet is not available." ) );
+ return QString::null;
+ }
+
+ //get wallet name for network data
+ QString name = KWallet::Wallet::NetworkWallet();
+ if( name == "" || name == QString::null )
+ {
+ KMessageBox::error( NULL, i18n( "Could not get wallet name for network datas from KWallet." ) );
+ return QString::null;
+ }
+
+ //open wallet
+ //we want to create a connection object just at first call of this function
+ static KWallet::Wallet* wallet;
+
+ if( wallet == NULL )
+ {
+ wallet = KWallet::Wallet::openWallet( name );
+ }
+ else if( !wallet->isOpen() )
+ {
+ delete wallet;
+ wallet = KWallet::Wallet::openWallet( name );
+ }
+
+ if( wallet == NULL )
+ {
+ KMessageBox::error( NULL, i18n( "Could not open KWallet." ) );
+ return QString::null;
+ }
+
+ //set folder
+ bool setFolderSuccess = wallet->setFolder( "KShowmail" );
+ if( !setFolderSuccess )
+ {
+ KMessageBox::error( NULL, i18n( "Could not open folder for KShowmail in KWallet." ) );
+ return QString::null;
+ }
+
+ //read password
+ QString password;
+
+ int readPasswordSuccess = wallet->readPassword( account, password );
+ if( readPasswordSuccess != 0 )
+ {
+ KMessageBox::error( NULL, i18n( "Could not get password of account %1 from KWallet." ).arg( account) );
+ return QString::null;
+ }
+
+ return password;
+}
diff --git a/kshowmail/kwalletaccess.h b/kshowmail/kwalletaccess.h
new file mode 100644
index 0000000..8e9c537
--- /dev/null
+++ b/kshowmail/kwalletaccess.h
@@ -0,0 +1,45 @@
+//
+// C++ Interface: kwalletaccess
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef KWALLETACCESS_H
+#define KWALLETACCESS_H
+
+//Qt headers
+#include <qstring.h>
+
+//KDE headers
+#include <kwallet.h>
+#include <kmessagebox.h>
+#include <kdebug.h>
+#include <klocale.h>
+
+/**
+ * @brief Provides routines to save and read passwords using KWallet.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+namespace KWalletAccess
+{
+
+ /**
+ * Saves the given password into KWallet.
+ * @param account account name
+ * @param password the password
+ * @return TRUE - password successfully saved
+ * @return FALSE - password could not be saved
+ */
+ bool savePassword( const QString& account, const QString& password );
+
+ /**
+ * Returns the password of the given account.
+ * @param account account name
+ * @return the password or QString::null, if the sought password is not stored in KWallet.
+ */
+ QString getPassword( const QString& account );
+}
+
+#endif
diff --git a/kshowmail/main.cpp b/kshowmail/main.cpp
new file mode 100644
index 0000000..a28067a
--- /dev/null
+++ b/kshowmail/main.cpp
@@ -0,0 +1,114 @@
+/***************************************************************************
+ main.cpp - description
+ -------------------
+ begin : Fre Sep 28 23:29:54 CEST 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+//KDE-Header
+#include <kcmdlineargs.h>
+#include <kaboutdata.h>
+#include <kuniqueapplication.h>
+#include <klocale.h>
+#include <kdebug.h>
+
+//KShowmail-Header
+#include "uniqueapp.h"
+#include "kshowmail.h"
+#include "constants.h"
+
+using namespace Constants;
+
+//description of the application
+static const char *description = I18N_NOOP("A powerful pop3 mail checker");
+
+//the command line options
+//see constants.h
+static KCmdLineOptions kshowmailOptions[] =
+ {
+ { CMDLINE_REFRESH_SHORT, 0, 0},
+ { CMDLINE_REFRESH, I18N_NOOP("Refresh messages now"), 0 },
+ { CMDLINE_CONFIG_SHORT, 0, 0},
+ { CMDLINE_CONFIG, I18N_NOOP("Launch configure dialog"), 0 },
+ KCmdLineLastOption
+ };
+
+int main(int argc, char *argv[])
+{
+ //create datas for the about box
+ KShowMailApp::m_pAbout = new KAboutData (
+ /*appName */ "kshowmail",
+ /*programName*/ "KShowmail",
+ /*version */ VERSION,
+ /*description*/ description,
+ /*license */ KAboutData::License_GPL_V2,
+ /*copyright */ "(C) 2000-2005, Eggert Ehmke",
+ /*text */ 0,
+ /*homepage */ "http://sourceforge.net/projects/kshowmail",
+ /*bug email */ "eggert.ehmke@berlin.de");
+
+ //add authors
+ KShowMailApp::m_pAbout->addAuthor ("Eggert Ehmke", 0, "eggert.ehmke@berlin.de", "http://kshowmail.sourceforge.net");
+ KShowMailApp::m_pAbout->addAuthor ("Allistar Melville", 0, "allistar@silvermoon.co.nz", 0);
+ KShowMailApp::m_pAbout->addAuthor ("Oleg Ivanov", 0, "saruman@unigsm.com", 0);
+ KShowMailApp::m_pAbout->addAuthor( "Ulrich Weigelt", 0, "ulrich.weigelt@gmx.de", 0 );
+ KShowMailApp::m_pAbout->setTranslator(I18N_NOOP("_: NAME OF TRANSLATORS\nYour names") ,I18N_NOOP("_: EMAIL OF TRANSLATORS\nYour emails"));
+
+ //Initialize command line arguments
+ KCmdLineArgs::init(argc, argv, KShowMailApp::m_pAbout);
+ //add the special command line options of kshowmail which was specified above
+ KCmdLineArgs::addCmdLineOptions(kshowmailOptions);
+
+ // when released, this must be 0!
+#if 0
+
+ kdDebug () << "KShowmail running in debug mode" << endl;
+ KApplication::addCmdLineOptions();
+
+ KApplication app;
+ KShowMailApp* kshow = new KShowMailApp ();
+ kshow->show();
+ app.exec();
+
+#else
+
+ //print debug message about run mode
+ kdDebug () << "KShowmail running in normal mode" << endl;
+
+ //add special command line options for unique KDE applications
+ KUniqueApplication::addCmdLineOptions();
+
+ //test whether the new application to start is unique
+ if (KUniqueApplication::start())
+ {
+ //yes, wa can start a unique kshowmail instance
+
+ //create a new unique appliction
+ //UniqueApp is a inherited class of KUniqueApplication
+ //see uniqueapp.h
+ UniqueApp* app = new UniqueApp ();
+
+ //start the application
+ app->exec ();
+ }
+ else
+ {
+ //kshowmail is already running
+ kdWarning() << I18N_NOOP ("Kshowmail is already running!") << endl;
+ }
+
+#endif
+
+ return 0;
+}
+
diff --git a/kshowmail/senderlistfilter.cpp b/kshowmail/senderlistfilter.cpp
new file mode 100644
index 0000000..fcb4e6d
--- /dev/null
+++ b/kshowmail/senderlistfilter.cpp
@@ -0,0 +1,102 @@
+//
+// C++ Implementation: senderlistfilter
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "senderlistfilter.h"
+
+SenderListFilter::SenderListFilter()
+{
+
+ //get the application config object
+ config = KApplication::kApplication()->config();
+
+ //load the setup
+ load();
+
+}
+
+
+SenderListFilter::~SenderListFilter()
+{
+}
+
+FilterAction_Type SenderListFilter::check( QString sender ) const
+{
+ //return with none action if the given string is empty
+ if( sender.isEmpty() ) return FActNone;
+
+ //check the whitelist first
+ if( search( whitelist, sender ) ) return FActPass;
+
+ //check blacklist
+ if( search( blacklist, sender ) ) return blacklistAction;
+
+ //this is the default
+ return FActNone;
+}
+
+void SenderListFilter::load( )
+{
+ //set group
+ config->setGroup( CONFIG_GROUP_FILTER );
+
+ //get lists
+ blacklist = config->readListEntry( CONFIG_ENTRY_FILTER_BLACKLIST );
+ whitelist = config->readListEntry( CONFIG_ENTRY_FILTER_WHITELIST );
+
+ //get blacklist action
+ switch( config->readNumEntry( CONFIG_ENTRY_FILTER_BLACKLIST_ACTION, DEFAULT_FILTER_BLACKLIST_ACTION ) )
+ {
+ case CONFIG_VALUE_FILTER_BLACKLIST_ACTION_DELETE : blacklistAction = FActDelete; break;
+ case CONFIG_VALUE_FILTER_BLACKLIST_ACTION_MARK : blacklistAction = FActMark; break;
+ default : blacklistAction = FActMark; break;
+ }
+}
+
+bool SenderListFilter::search( QStringList list, QString sender ) const
+{
+ //return with FALSE if the list or the search string are empty
+ if( list.isEmpty() || sender.isEmpty() ) return false;
+
+ //iterate over the list to search for the sender
+ bool found = false;
+ for( QStringList::Iterator it = list.begin(); it != list.end() && found == false; ++it )
+ {
+ if( sender.contains( *it, false ) || (*it).contains( sender, false ) )
+ found = true;
+ }
+
+ return found;
+}
+
+void SenderListFilter::print( )
+{
+ kdDebug() << "Blacklist:" << endl;
+ for( QStringList::Iterator it = blacklist.begin(); it != blacklist.end(); ++it )
+ {
+ kdDebug() << *it << endl;
+ }
+
+ switch( blacklistAction )
+ {
+ case FActDelete : kdDebug() << "Blacklist Action: DELETE" << endl; break;
+ case FActMark : kdDebug() << "Blacklist Action: MARK " << endl; break;
+ default : kdDebug() << "Blacklist Action: Unknown" << endl; break;
+ }
+
+ kdDebug() << endl;
+
+ kdDebug() << "Whitelist:" << endl;
+ for( QStringList::Iterator it = whitelist.begin(); it != whitelist.end(); ++it )
+ {
+ kdDebug() << *it << endl;
+ }
+
+}
diff --git a/kshowmail/senderlistfilter.h b/kshowmail/senderlistfilter.h
new file mode 100644
index 0000000..d54237f
--- /dev/null
+++ b/kshowmail/senderlistfilter.h
@@ -0,0 +1,113 @@
+//
+// C++ Interface: senderlistfilter
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef SENDERLISTFILTER_H
+#define SENDERLISTFILTER_H
+
+//Qt headers
+#include <qstring.h>
+#include <qstringlist.h>
+
+//KDE headers
+#include <kapplication.h>
+#include <kconfig.h>
+#include <kdebug.h>
+
+//Kshowmail headers
+#include "types.h"
+#include "constants.h"
+
+using namespace Types;
+
+/**
+ * @brief This class represents both the blacklist and the whitelist.
+ * For using create an object of it and call check() to test a sender address.
+ * You have to call load() after the settings in the config file was changed.
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+
+class SenderListFilter{
+
+ public:
+
+ /**
+ * Constructor
+ */
+ SenderListFilter();
+
+ /**
+ * Destructor
+ */
+ ~SenderListFilter();
+
+ /**
+ * Checks the given sender whether it is listed in the blacklist or whitelist.
+ * @param sender sender which shall be checked
+ * @return appointed action (FActPass, FActDelete, FActMark, FActNone)
+ */
+ FilterAction_Type check( QString sender ) const;
+
+ /**
+ * Loads the setup from the application config file.
+ */
+ void load();
+
+ /**
+ * Prints the settings.
+ */
+ void print();
+
+ private:
+
+ /**
+ * Connector to the configuration file
+ */
+ KConfig* config;
+
+ /**
+ * blacklisted addresses
+ */
+ QStringList blacklist;
+
+ /**
+ * whitelisted addresses
+ */
+ QStringList whitelist;
+
+ /**
+ * appointed action of the blacklist.
+ */
+ FilterAction_Type blacklistAction;
+
+ protected:
+
+ /**
+ * Returns TRUE if the given list contains the sender or a part of it.
+ * e.g.: The list contains:
+ * Ulrich Weigelt
+ * spam@spamhouse.com
+ * "Lara Croft" <lara.croft@tombraider.com>
+ *
+ * This sender strings will cause a return value of TRUE:
+ * "Ulrich Weigelt" <ulrich.weigelt@gmx.de>
+ * "Spam King" <spam@spamhouse.com>
+ * spam@spamhouse.com
+ * lara.croft@tombraider.com
+ * "Lara Croft" <lara.croft@tombraider.com>
+ *
+ * @param list blacklist or whitelist
+ * @param sender searched sender name
+ * @return TRUE - the given sender name is listed. FALSE - is not listed
+ */
+ bool search( QStringList list, QString sender ) const;
+};
+
+#endif
diff --git a/kshowmail/serverdialog.cpp b/kshowmail/serverdialog.cpp
new file mode 100644
index 0000000..b61aa25
--- /dev/null
+++ b/kshowmail/serverdialog.cpp
@@ -0,0 +1,336 @@
+/***************************************************************************
+ serverdialog.cpp - description
+ -------------------
+ begin : Sun Oct 28 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#include "serverdialog.h"
+
+ServerDialog::ServerDialog( QWidget* parent, ConfigElem* item )
+ : KDialogBase( parent, "ServerDialog", true, QString::null, Ok|Cancel, Ok, true )
+{
+ //save pointer to account and view
+ account = item;
+
+ //tab widget
+ KTabWidget* tabs = new KTabWidget( this, "tabs" );
+ tabs->setMargin( 10 );
+
+ //pages
+ QWidget* pgGeneral = new QWidget( this );
+ QWidget* pgSecurity = new QWidget( this );
+ setMainWidget( tabs );
+
+ //layouts of general page
+ QVBoxLayout* layGeneral = new QVBoxLayout( pgGeneral, 0, spacingHint() );
+ QGridLayout* layTop = new QGridLayout( layGeneral, 5, 2 );
+
+ //layouts of security page
+ QVBoxLayout* laySecurity = new QVBoxLayout( pgSecurity, 0, spacingHint() );
+ laySecurity->setAlignment( Qt::AlignTop );
+
+ //upper items
+ QLabel* lblAccount = new QLabel( i18n( "Account:" ), pgGeneral, "lblAccount" );
+ txtAccount = new KLineEdit( pgGeneral, "txtAccount" );
+ txtAccount->setEnabled( false );
+ QToolTip::add( lblAccount, i18n( "Unique Account Name" ) );
+ QToolTip::add( txtAccount, i18n( "Unique Account Name" ) );
+ layTop->addWidget( lblAccount, 0, 0 );
+ layTop->addWidget( txtAccount, 0, 1 );
+
+ QLabel* lblServer = new QLabel( i18n( "Server:" ), pgGeneral, "lblServer" );
+ txtServer = new KLineEdit( pgGeneral, "txtServer" );
+ txtServer->setFocus();
+ QToolTip::add( lblServer, i18n( "Server Name" ) );
+ QToolTip::add( txtAccount, i18n( "Server Name" ) );
+ layTop->addWidget( lblServer, 1, 0 );
+ layTop->addWidget( txtServer, 1, 1 );
+
+ QLabel* lblProtocol = new QLabel( i18n( "Protocol:" ), pgGeneral, "lblProtocol" );
+ cboProtocol = new KComboBox( pgGeneral, "cboProtocol" );
+ cboProtocol->insertItem( "POP3" ); //currently KShowmail just supports POP3
+ QToolTip::add( lblProtocol, i18n( "Protocol, which shall be used to get the mails from the server. Currently KShowmail just supports POP3.") );
+ QToolTip::add( cboProtocol, i18n( "Protocol, which shall be used to get the mails from the server. Currently KShowmail just supports POP3.") );
+ layTop->addWidget( lblProtocol, 2, 0 );
+ layTop->addWidget( cboProtocol, 2, 1 );
+
+ QLabel* lblPort = new QLabel( i18n( "Port:" ), pgGeneral, "lblPort" );
+ spbPort = new QSpinBox( 0, 65535, 1, pgGeneral, "spbPort" );
+ spbPort->setValue( DEFAULT_ACCOUNT_PORT_POP3 );
+ QToolTip::add( lblPort, i18n( "Port Number. Normally POP3 uses port 110." ) );
+ QToolTip::add( spbPort, i18n( "Port Number. Normally POP3 uses port 110." ) );
+ layTop->addWidget( lblPort, 3, 0 );
+ layTop->addWidget( spbPort, 3, 1 );
+
+ QLabel* lblUser = new QLabel( i18n( "User:" ), pgGeneral, "lblUser" );
+ txtUser = new KLineEdit( pgGeneral, "txtUser" );
+ QToolTip::add( lblUser, i18n( "To authenticate to the mail server you need an user name." ) );
+ QToolTip::add( txtUser, i18n( "To authenticate to the mail server you need an user name." ) );
+ layTop->addWidget( lblUser, 4, 0 );
+ layTop->addWidget( txtUser, 4, 1 );
+
+ //password groupbox and layouts
+ QGroupBox* gboxPassword = new QGroupBox( 0, Qt::Horizontal, i18n( "Password" ), pgGeneral, "gboxPassword" );
+ layGeneral->addWidget( gboxPassword );
+
+ QVBoxLayout* layPassword = new QVBoxLayout( gboxPassword->layout(), spacingHint() );
+ QGridLayout* layPasswordStorage = new QGridLayout( layPassword, 2, 2, spacingHint() );
+
+
+ //radio buttons to set storage of the password
+ grpPasswordStorage = new QButtonGroup( NULL, "grpPasswordStorage" );
+ connect( grpPasswordStorage, SIGNAL( clicked( int ) ), this, SLOT( slotPasswordStorageChanged( int ) ) );
+
+ QRadioButton* btnPasswordDontSave = new QRadioButton( i18n( "Don't save" ), gboxPassword, "btnPasswordDontSave" );
+ QRadioButton* btnPasswordSaveFile = new QRadioButton( i18n( "Save password"), gboxPassword, "btnPasswordSaveFile" );
+ QRadioButton* btnPasswordSaveKWallet = new QRadioButton( i18n( "Use KWallet" ), gboxPassword, "btnPasswordSaveKWallet" );
+ grpPasswordStorage->insert( btnPasswordDontSave, ID_BUTTON_PASSWORD_DONT_SAVE );
+ grpPasswordStorage->insert( btnPasswordSaveFile, ID_BUTTON_PASSWORD_SAVE_FILE );
+ grpPasswordStorage->insert( btnPasswordSaveKWallet, ID_BUTTON_PASSWORD_SAVE_KWALLET );
+ QToolTip::add( btnPasswordDontSave, i18n( "Don't save password. KShowmail will ask you for it at first server connect." ) );
+ QToolTip::add( btnPasswordSaveFile, i18n( "Save password in the configuration file. Not recommended, because the password is just lightly encrypted" ) );
+ QToolTip::add( btnPasswordSaveKWallet, i18n( "Use KWallet to save the password. Maybe you have to type in the KWallet master password at first server connect." ) );
+ layPasswordStorage->addWidget( btnPasswordDontSave, 0, 0 );
+ layPasswordStorage->addWidget( btnPasswordSaveFile, 0, 1 );
+ layPasswordStorage->addWidget( btnPasswordSaveKWallet, 1, 0 );
+
+ //password edit line
+ txtPassword = new KPasswordEdit( gboxPassword, "txtUser" );
+ layPassword->addWidget( txtPassword );
+
+ //set password defaults
+ grpPasswordStorage->setButton( DEFAULT_ACCOUNT_PASSWORD_STORAGE );
+ slotPasswordStorageChanged( DEFAULT_ACCOUNT_PASSWORD_STORAGE );
+
+ //active check box
+ QGridLayout* layActive = new QGridLayout( layGeneral, 1, 1 );
+ layActive->setAlignment( Qt::AlignCenter );
+ chkActive = new QCheckBox( i18n( "Active"), pgGeneral, "chkActive" );
+ QToolTip::add( chkActive, i18n( "Select it to activate this account." ) );
+ layActive->addWidget( chkActive, 0, 0 );
+ chkActive->setChecked( DEFAULT_ACCOUNT_ACTIVE );
+
+ //secure transfer groupbox and layouts
+ QGroupBox* gboxSecureTransfer = new QGroupBox( 0, Qt::Horizontal, i18n( "Encryption" ), pgSecurity, "gboxSecureTransfer" );
+ gboxSecureTransfer->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Maximum ) );
+ laySecurity->addWidget( gboxSecureTransfer );
+
+ QHBoxLayout* laySecureTransfer = new QHBoxLayout( gboxSecureTransfer->layout(), spacingHint() );
+
+ //radio buttons to set secure transfer
+ grpSecureTransfer = new QButtonGroup( NULL, "grpSecureTransfer" );
+ connect( grpSecureTransfer, SIGNAL( clicked( int ) ), this, SLOT( slotSecureTransferChanged ( int ) ) );
+
+ QRadioButton* btnSecureTransferNone = new QRadioButton( i18n( "None" ), gboxSecureTransfer, "btnSecureTransferNone" );
+ QRadioButton* btnSecureTransferSSL = new QRadioButton( i18n( "SSL"), gboxSecureTransfer, "btnSecureTransferSSL" );
+ QRadioButton* btnSecureTransferTLS = new QRadioButton( i18n( "TLS" ), gboxSecureTransfer, "btnSecureTransferTLS" );
+ grpSecureTransfer->insert( btnSecureTransferNone, ID_BUTTON_SECTRANSFER_NONE );
+ grpSecureTransfer->insert( btnSecureTransferSSL, ID_BUTTON_SECTRANSFER_SSL );
+ grpSecureTransfer->insert( btnSecureTransferTLS, ID_BUTTON_SECTRANSFER_TLS );
+ QToolTip::add( btnSecureTransferNone, i18n( "The download of the mail header and body will not be encrypted. Use this, if your provider doesn't make a secure transfer available." ) );
+ QToolTip::add( btnSecureTransferSSL, i18n( "Secure Sockets Layer (SSL), is a cryptographic protocol that provides secure communications on the Internet." ) );
+ QToolTip::add( btnSecureTransferTLS, i18n( "Transport Layer Security (TLS) is a cryptographic protocol that provides secure communications on the Internet. It is the successor of SSL." ) );
+ laySecureTransfer->addWidget( btnSecureTransferNone );
+ laySecureTransfer->addWidget( btnSecureTransferSSL );
+ laySecureTransfer->addWidget( btnSecureTransferTLS );
+
+ grpSecureTransfer->setButton( DEFAULT_ACCOUNT_SECTRANSFER );
+
+
+ //set pages to tab widget
+ tabs->addTab( pgGeneral, i18n( "General" ) );
+ tabs->addTab( pgSecurity, i18n( "Security" ) );
+
+ //set caption
+ if( item == NULL )
+ setCaption( i18n( "New account" ) );
+ else
+ setCaption( i18n( "Edit account" ) );
+
+ //write values of the given account into the dialog items
+ if( account != NULL )
+ fillDialog();
+
+
+}
+
+
+ServerDialog::~ServerDialog()
+{
+}
+
+void ServerDialog::slotPasswordStorageChanged( int id )
+{
+ if( id == ID_BUTTON_PASSWORD_DONT_SAVE )
+ {
+ txtPassword->setEnabled( false );
+ txtPassword->clear();
+ }
+ else
+ txtPassword->setEnabled( true );
+}
+
+void ServerDialog::slotOk( )
+{
+ //check for necessary values
+ if( account == NULL )
+ {
+ kdError() << "ServerDialog::slotOk: Given account pointer is Null." << endl;
+ return;
+ }
+ if( txtServer->text() == "" )
+ {
+ KMessageBox::error( this, i18n( "Please enter an server." ) );
+ return;
+ }
+
+ if( txtUser->text() == "" )
+ {
+ KMessageBox::error( this, i18n( "Please enter an user name." ) );
+ return;
+ }
+
+ //get application config object (kshowmailrc)
+ KConfig* config = KApplication::kApplication()->config();
+
+ config->setGroup( txtAccount->text() );
+
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_SERVER, txtServer->text() );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PROTOCOL, cboProtocol->currentText().upper() );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PORT, spbPort->value() );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_USER, txtUser->text() );
+
+ //get the password
+ //the class KPasswordEdit doesn't have a method to set the password
+ //therefore we use setText(). But if we use this method, KPasswordEdit::password()
+ //will return an empty string. If the user has typed in a new password, KPasswordEdit::password()
+ //will return the correct password
+ QString pass;
+ if( txtPassword->password() == "" || txtPassword->password() == QString::null )
+ pass = txtPassword->text();
+ else
+ pass = txtPassword->password();
+
+ //used to encrypt password
+ KURL url;
+ url.setUser( txtUser->text() );
+ url.setHost( txtServer->text() );
+ url.setPass( pass );
+
+ //save password (or not)
+ switch( grpPasswordStorage->selectedId() )
+ {
+ case ID_BUTTON_PASSWORD_DONT_SAVE : config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, QString::null );
+ break;
+ case ID_BUTTON_PASSWORD_SAVE_FILE : config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, crypt( url ) );
+ break;
+ case ID_BUTTON_PASSWORD_SAVE_KWALLET : config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, QString::null );
+ KWalletAccess::savePassword( txtAccount->text(), pass );
+ break;
+ default : config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD_STORAGE, CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE );
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_PASSWORD, QString::null );
+ }
+
+ config->writeEntry( CONFIG_ENTRY_ACCOUNT_ACTIVE, chkActive->isChecked() );
+
+ switch( grpSecureTransfer->selectedId() )
+ {
+ case ID_BUTTON_SECTRANSFER_NONE : config->writeEntry( CONFIG_ENTRY_ACCOUNT_SECTRANSFER, CONFIG_VALUE_ACCOUNT_SECTRANSFER_NONE ); break;
+ case ID_BUTTON_SECTRANSFER_SSL : config->writeEntry( CONFIG_ENTRY_ACCOUNT_SECTRANSFER, CONFIG_VALUE_ACCOUNT_SECTRANSFER_SSL ); break;
+ case ID_BUTTON_SECTRANSFER_TLS : config->writeEntry( CONFIG_ENTRY_ACCOUNT_SECTRANSFER, CONFIG_VALUE_ACCOUNT_SECTRANSFER_TLS ); break;
+ default : config->writeEntry( CONFIG_ENTRY_ACCOUNT_SECTRANSFER, DEFAULT_ACCOUNT_SECTRANSFER ); break;
+ }
+
+ //save config to file
+ config->sync();
+
+ //call slot of super class to close the dialog
+ KDialogBase::slotOk();
+}
+
+void ServerDialog::fillDialog( )
+{
+ //check for valid account pointer
+ if( account == NULL )
+ {
+ kdError() << "ServerDialog::fillDialog: invalid pointer to account item." << endl;
+ return;
+ }
+
+ txtAccount->setText( account->getAccountName() );
+ txtServer->setText( account->getHost() );
+
+ QString proto = account->getProtocol( true );
+ bool tls = account->getTLS();
+
+ if( proto == "POP3S" )
+ {
+ cboProtocol->setCurrentText( "POP3" );
+ grpSecureTransfer->setButton( ID_BUTTON_SECTRANSFER_SSL );
+ }
+ else if( tls )
+ {
+ cboProtocol->setCurrentText( proto );
+ grpSecureTransfer->setButton( ID_BUTTON_SECTRANSFER_TLS );
+ }
+ else
+ {
+ cboProtocol->setCurrentText( proto );
+ grpSecureTransfer->setButton( ID_BUTTON_SECTRANSFER_NONE );
+ }
+
+ spbPort->setValue( account->getPort() );
+ txtUser->setText( account->getUser() );
+
+ int type = account->getPasswordStorage();
+ if( type != CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE && type != CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE && type != CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET )
+ type = DEFAULT_ACCOUNT_PASSWORD_STORAGE;
+
+ switch( type )
+ {
+ case CONFIG_VALUE_ACCOUNT_PASSWORD_DONT_SAVE : grpPasswordStorage->setButton( ID_BUTTON_PASSWORD_DONT_SAVE );
+ txtPassword->setEnabled( false );
+ txtPassword->clear();
+ break;
+ case CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_FILE : grpPasswordStorage->setButton( ID_BUTTON_PASSWORD_SAVE_FILE );
+ txtPassword->setEnabled( true );
+ txtPassword->setText( account->getPassword() );
+ break;
+ case CONFIG_VALUE_ACCOUNT_PASSWORD_SAVE_KWALLET : grpPasswordStorage->setButton( ID_BUTTON_PASSWORD_SAVE_KWALLET );
+ txtPassword->setEnabled( true );
+ txtPassword->setText( account->getPassword() );
+ break;
+ default : grpPasswordStorage->setButton( 1 );
+ txtPassword->clear();
+ }
+
+ chkActive->setChecked( account->isActive() );
+
+
+}
+
+void ServerDialog::slotSecureTransferChanged( int id )
+{
+ switch( id )
+ {
+ case ID_BUTTON_SECTRANSFER_NONE : spbPort->setValue( DEFAULT_ACCOUNT_PORT_POP3 ); break;
+ case ID_BUTTON_SECTRANSFER_SSL : spbPort->setValue( DEFAULT_ACCOUNT_PORT_POP3SSL ); break;
+ case ID_BUTTON_SECTRANSFER_TLS : spbPort->setValue( DEFAULT_ACCOUNT_PORT_POP3 ); break;
+ }
+}
+
+#include "serverdialog.moc"
diff --git a/kshowmail/serverdialog.h b/kshowmail/serverdialog.h
new file mode 100644
index 0000000..2168003
--- /dev/null
+++ b/kshowmail/serverdialog.h
@@ -0,0 +1,168 @@
+/***************************************************************************
+ serverdialog.h - description
+ -------------------
+ begin : Sun Oct 28 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef SERVERDIALOG_H
+#define SERVERDIALOG_H
+
+//Qt headers
+#include <qlayout.h>
+#include <qlabel.h>
+#include <qtooltip.h>
+#include <qspinbox.h>
+#include <qgroupbox.h>
+#include <qbuttongroup.h>
+#include <qradiobutton.h>
+#include <qcheckbox.h>
+
+//KDE headers
+#include <kdialogbase.h>
+#include <klocale.h>
+#include <klineedit.h>
+#include <kcombobox.h>
+#include <kdebug.h>
+#include <kmessagebox.h>
+#include <kpassdlg.h>
+
+//KShowmail headers
+#include "configelem.h"
+#include "constants.h"
+#include "encryption.h"
+#include "kwalletaccess.h"
+#include <ktabwidget.h>
+
+//radio button IDs
+#define ID_BUTTON_PASSWORD_DONT_SAVE 1
+#define ID_BUTTON_PASSWORD_SAVE_FILE 2
+#define ID_BUTTON_PASSWORD_SAVE_KWALLET 3
+#define ID_BUTTON_SECLOGIN_NONE 1
+#define ID_BUTTON_SECLOGIN_APOP 2
+#define ID_BUTTON_SECLOGIN_SASL 3
+#define ID_BUTTON_SECTRANSFER_NONE 1
+#define ID_BUTTON_SECTRANSFER_SSL 2
+#define ID_BUTTON_SECTRANSFER_TLS 3
+
+/**
+ * @brief Dialog to edit account options. You can not create a new account or edit the account name.
+ * @author Eggert Ehmke
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+
+class ServerDialog : public KDialogBase
+{
+ Q_OBJECT
+ public:
+
+ public:
+
+ /**
+ * General constructor
+ * @param parent parent of the dialog
+ * @param item account to setup
+ */
+ ServerDialog( QWidget* parent, ConfigElem* item = NULL );
+
+ /**
+ * Destructor
+ */
+ ~ServerDialog();
+
+ private:
+
+ /**
+ * account to setup
+ */
+ ConfigElem* account;
+
+ /**
+ * Edit line which contains the unique account name.
+ */
+ KLineEdit* txtAccount;
+
+ /**
+ * Edit line which contains the server name.
+ */
+ KLineEdit* txtServer;
+
+ /**
+ * Combo box to choose the protocol.
+ */
+ KComboBox* cboProtocol;
+
+ /**
+ * Spinbox to choose the tcp port.
+ */
+ QSpinBox* spbPort;
+
+ /**
+ * Edit line which contains the user name.
+ */
+ KLineEdit* txtUser;
+
+ /**
+ * Edit line which contains the password.
+ */
+ KPasswordEdit* txtPassword;
+
+ /**
+ * Check box to select whether the account is active or not.
+ */
+ QCheckBox* chkActive;
+
+ /**
+ * Combines the radio buttons of password storage.
+ */
+ QButtonGroup* grpPasswordStorage;
+
+ /**
+ * Combines the radio buttons of secure transfer.
+ */
+ QButtonGroup* grpSecureTransfer;
+
+ protected slots:
+
+ /**
+ * Connected with the password button group.
+ * Enabled or disabled the password edit line.
+ * @param id button identifier
+ */
+ void slotPasswordStorageChanged( int id );
+
+ /**
+ * Connected with the secure transfer button group.
+ * Changes the port number.
+ * @param id button identifier
+ */
+ void slotSecureTransferChanged( int id );
+
+ /**
+ * Overwritten methode of KDialogBase.
+ * Called if OK was clicked.
+ * Stores the entered values into the given account item.
+ * If no item was given, it creates a new one.
+ * After then it invokes slotOk() of KDialogBase.
+ */
+ void slotOk();
+
+ protected:
+
+ /**
+ * Writes the values of the account into the dialog items.
+ */
+ void fillDialog();
+};
+
+#endif
diff --git a/kshowmail/showheaderdialog.cpp b/kshowmail/showheaderdialog.cpp
new file mode 100644
index 0000000..829fa98
--- /dev/null
+++ b/kshowmail/showheaderdialog.cpp
@@ -0,0 +1,52 @@
+//
+// C++ Implementation: showheaderdialog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "showheaderdialog.h"
+
+ShowHeaderDialog::ShowHeaderDialog( QWidget * parent, QString & caption, QString & subject, QString header ) :
+ KDialogBase( parent, "showheaderdialog", true, caption, KDialogBase::Ok | KDialogBase::Cancel, KDialogBase::Ok, true )
+{
+ //create main widget
+ QWidget* mainWidget = new QWidget( this );
+ setMainWidget( mainWidget );
+
+ //this layout seperates meta data area (subject) from the mail header area
+ QVBoxLayout* layMain = new QVBoxLayout( mainWidget, 0, spacingHint() );
+
+ //this layout arranges the labels and lines for the meta datas
+ QHBoxLayout* layMetaDatas = new QHBoxLayout( layMain, spacingHint() );
+
+ //create label for subject
+ QLabel* lblSubject = new QLabel( i18n( "Subject:" ), mainWidget, "lblSubject" );
+ layMetaDatas->addWidget( lblSubject );
+
+ //create line edit for subject
+ KLineEdit* liSubject = new KLineEdit( subject, mainWidget, "liSubject" );
+ liSubject->setReadOnly( true );
+ layMetaDatas->addWidget( liSubject );
+
+ //create text edit for the header
+ KTextEdit* txtHeader = new KTextEdit( mainWidget );
+
+ txtHeader->setText( header );
+ txtHeader->setMinimumSize( WIDTH_VIEW_MAILHEADER, HEIGHT_VIEW_MAILHEADER );
+
+ layMain->addWidget( txtHeader );
+}
+
+
+
+ShowHeaderDialog::~ShowHeaderDialog()
+{
+}
+
+
+#include "showheaderdialog.moc"
diff --git a/kshowmail/showheaderdialog.h b/kshowmail/showheaderdialog.h
new file mode 100644
index 0000000..c337c8b
--- /dev/null
+++ b/kshowmail/showheaderdialog.h
@@ -0,0 +1,53 @@
+//
+// C++ Interface: showheaderdialog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef SHOWHEADERDIALOG_H
+#define SHOWHEADERDIALOG_H
+
+//QT headers
+#include <qlayout.h>
+#include <qlabel.h>
+
+//KDE headers
+#include <kdialogbase.h>
+#include <klocale.h>
+#include <klineedit.h>
+#include <ktextedit.h>
+
+//KShowmail headers
+#include "constants.h"
+
+/**
+ * Used in ShowRecordElem to show the mail header.
+ *
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+ */
+class ShowHeaderDialog : public KDialogBase
+{
+Q_OBJECT
+
+ public:
+ /**
+ * Generic constructor.
+ * @param parent parent of the dialog
+ * @param caption the dialog caption
+ * @param subject mail subject
+ * @param header mail header
+ */
+ ShowHeaderDialog( QWidget* parent, QString& caption, QString& subject, QString header );
+
+ /**
+ * Destructor
+ */
+ ~ShowHeaderDialog();
+};
+
+#endif
diff --git a/kshowmail/showlistviewitem.cpp b/kshowmail/showlistviewitem.cpp
new file mode 100644
index 0000000..e95ce94
--- /dev/null
+++ b/kshowmail/showlistviewitem.cpp
@@ -0,0 +1,114 @@
+/***************************************************************************
+ showlistviewitem.cpp - description
+ -------------------
+ begin : Son Apr 21 2002
+ copyright : (C) 2002 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#include "showlistviewitem.h"
+
+ShowListViewItem::ShowListViewItem (QListView * parent,
+ ShowListViewItem* after):
+QListViewItem (parent, after)
+{}
+
+ShowListViewItem::ShowListViewItem( QListView * parent ) :
+ QListViewItem( parent )
+{
+}
+
+ShowListViewItem::~ShowListViewItem()
+{}
+
+QString ShowListViewItem::key (int column, bool /*ascending*/) const
+{
+ switch (column)
+ {
+ case _colNumber:
+ return text (_colAccount) + text (_colNumber);
+ case _colDate:
+ return m_time;
+ default:
+ return text (column);
+ }
+}
+
+/**
+ * reimplement compare to solve bug #856005
+ * standard compare is locale dependant
+ */
+int ShowListViewItem::compare( QListViewItem *i, int col,
+ bool ascending ) const
+{
+ if( col == _colNumber )
+ {
+ return text( _colNumber ).toInt() - i->text( _colNumber ).toInt();
+ }
+ else if( col == _colSize )
+ {
+ return text( _colSize ).toInt() - i->text( _colSize ).toInt();
+ }
+ else
+ return key( col, ascending ).compare( i->key( col, ascending) );
+}
+
+void ShowListViewItem::setNumber (const QString& number)
+{
+ setText (_colNumber, number);
+}
+
+void ShowListViewItem::setAccount(const QString& account)
+{
+ setText (_colAccount, account);
+}
+
+void ShowListViewItem::setFrom(const QString& from)
+{
+ setText (_colFrom, from);
+}
+
+void ShowListViewItem::setTo(const QString& to)
+{
+ setText (_colTo, to);
+}
+
+void ShowListViewItem::setSubject(const QString& subject)
+{
+ setText (_colSubject, subject);
+}
+
+void ShowListViewItem::setDate(const QString& date)
+{
+ setText (_colDate, date);
+}
+
+void ShowListViewItem::setSize(const QString& size)
+{
+ setText (_colSize, size);
+}
+
+void ShowListViewItem::setContent(const QString& content)
+{
+ setText (_colContent, content);
+}
+
+void ShowListViewItem::setState(const QString& state)
+{
+ setText (_colState, state);
+}
+
+void ShowListViewItem::setTime (const QString& time)
+{
+ m_time = time;
+}
+
diff --git a/kshowmail/showlistviewitem.h b/kshowmail/showlistviewitem.h
new file mode 100644
index 0000000..0f56f1b
--- /dev/null
+++ b/kshowmail/showlistviewitem.h
@@ -0,0 +1,69 @@
+/***************************************************************************
+ showlistviewitem.h - description
+ -------------------
+ begin : Son Apr 21 2002
+ copyright : (C) 2002 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef SHOWLISTVIEWITEM_H
+#define SHOWLISTVIEWITEM_H
+
+#include <qlistview.h>
+
+/**
+ *@author Eggert Ehmke
+ */
+
+class ShowListViewItem : public QListViewItem
+{
+public:
+
+ /**
+ * Constructor
+ * @param parent mail list view
+ * @param after insert the new item after this item
+ */
+ ShowListViewItem (QListView * parent, ShowListViewItem * after);
+
+ /**
+ * Constructor
+ * @param parent mail list view
+ */
+ ShowListViewItem( QListView* parent );
+
+
+ virtual ~ShowListViewItem();
+ virtual QString key (int column, bool ascending) const;
+ /**
+ * reimplement compare to solve bug #856005
+ * standard compare is locale dependant
+ */
+ virtual int compare( QListViewItem *i, int col, bool ascending ) const;
+ void setNumber (const QString&);
+ void setAccount(const QString&);
+ void setFrom(const QString&);
+ void setTo(const QString&);
+ void setSubject(const QString&);
+ void setDate(const QString&);
+ void setSize(const QString&);
+ void setContent(const QString&);
+ void setState(const QString&);
+ void setTime (const QString&);
+ enum {_colNumber, _colAccount, _colFrom, _colTo, _colSubject, _colDate,
+ _colSize, _colContent, _colState};
+private:
+ QString m_time;
+};
+
+
+#endif
diff --git a/kshowmail/showmaildialog.cpp b/kshowmail/showmaildialog.cpp
new file mode 100644
index 0000000..1d911db
--- /dev/null
+++ b/kshowmail/showmaildialog.cpp
@@ -0,0 +1,101 @@
+//
+// C++ Implementation: showmaildialog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#include "showmaildialog.h"
+
+ShowMailDialog::ShowMailDialog( QWidget * parent, QString & caption, bool allowHTML, QString & sender, QString & date, QString & size, QString & subject, QString & body ) :
+ KDialogBase( parent, "showmaildialog", true, caption, KDialogBase::Ok | KDialogBase::Cancel | KDialogBase::User1, KDialogBase::Ok, true, KGuiItem( i18n( "Reply" ), "mail_reply" ) )
+{
+ //create main widget
+ QWidget* mainWidget = new QWidget( this );
+ setMainWidget( mainWidget );
+
+ //this layout seperates meta data area (date, subject, and so on) from the mail body area
+ QVBoxLayout* layMain = new QVBoxLayout( mainWidget, 0, spacingHint() );
+
+ //this layouts arranges the labels and lines for the meta data
+ QHBoxLayout* layMetaDatas = new QHBoxLayout( layMain, spacingHint() );
+ QVBoxLayout* layLabels = new QVBoxLayout( layMetaDatas, spacingHint() );
+ QVBoxLayout* layLines = new QVBoxLayout( layMetaDatas, spacingHint() );
+
+ //create labels for meta data
+ QLabel* lblSender = new QLabel( i18n( "Sender:" ), mainWidget, "lblSender" );
+ layLabels->addWidget( lblSender );
+
+ QLabel* lblDate = new QLabel( i18n( "Date:" ), mainWidget, "lblDate" );
+ layLabels->addWidget( lblDate );
+
+ QLabel* lblSize = new QLabel( i18n( "Size:" ), mainWidget, "lblSize" );
+ layLabels->addWidget( lblSize );
+
+ QLabel* lblSubject = new QLabel( i18n( "Subject:" ), mainWidget, "lblSubject" );
+ layLabels->addWidget( lblSubject );
+
+ //create edit lines to show the meta data
+ KLineEdit* liSender = new KLineEdit( sender, mainWidget, "liSender" );
+ liSender->setReadOnly( true );
+ layLines->addWidget( liSender );
+
+ KLineEdit* liDate = new KLineEdit( date, mainWidget, "liDate" );
+ liDate->setReadOnly( true );
+ layLines->addWidget( liDate );
+
+ KLineEdit* liSize = new KLineEdit( size, mainWidget, "liSize" );
+ liSize->setReadOnly( true );
+ layLines->addWidget( liSize );
+
+ KLineEdit* liSubject = new KLineEdit( subject, mainWidget, "liSubject" );
+ liSubject->setReadOnly( true );
+ layLines->addWidget( liSubject );
+
+ //create text browser for the mail body
+ KTextBrowser* txtBody = new KTextBrowser( mainWidget );
+ txtBody->setReadOnly( true );
+
+ if( !allowHTML ) //set HTML view or not
+ txtBody->setTextFormat( KTextBrowser::PlainText );
+
+ txtBody->setText( body );
+ txtBody->setMinimumSize( WIDTH_VIEW_MAILBODY, HEIGHT_VIEW_MAILBODY );
+
+ layMain->addWidget( txtBody );
+
+ //store body, subject and sender for reply (slotUser1())
+ m_body = body;
+ m_subject = subject;
+ m_sender = sender;
+}
+
+ShowMailDialog::~ShowMailDialog()
+{
+}
+
+void ShowMailDialog::slotUser1( )
+{
+ //make copy of body to manipulate
+ QString body = m_body;
+
+ //add '>' at front of every line
+ body.insert( 0, "> " );
+ body.replace( "\n", "\n> " );
+
+ //set data of the answer mail
+ KURL mail;
+ mail.setProtocol( "mailto" );
+ mail.setPath( m_sender );
+ mail.setQuery( "?subject=" + KURL::encode_string( "Re: " + m_subject ) + "&body=" + KURL::encode_string( body ) );
+
+ //invoke mailer
+ kapp->invokeMailer( mail );
+}
+
+
+#include "showmaildialog.moc"
diff --git a/kshowmail/showmaildialog.h b/kshowmail/showmaildialog.h
new file mode 100644
index 0000000..39890b0
--- /dev/null
+++ b/kshowmail/showmaildialog.h
@@ -0,0 +1,90 @@
+//
+// C++ Interface: showmaildialog
+//
+// Description:
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef SHOWMAILDIALOG_H
+#define SHOWMAILDIALOG_H
+
+//QT headers
+#include <qlayout.h>
+#include <qlabel.h>
+
+//KDE headers
+#include <klocale.h>
+#include <kdialogbase.h>
+#include <klineedit.h>
+#include <kdebug.h>
+#include <ktextbrowser.h>
+#include <kurl.h>
+#include <kapplication.h>
+
+//KShowmail headers
+#include "constants.h"
+
+/**
+ * This dialog is used in ConfigElem to show a downloaded mail.
+ *
+ * @author Ulrich Weigelt <ulrich.weigelt@gmx.de>
+*/
+class ShowMailDialog : public KDialogBase
+{
+
+Q_OBJECT
+
+public:
+
+ /**
+ * generic constructor
+ * @param parent parent of the dialog
+ * @param caption the dialog caption
+ * @param allowHTML TRUE - allow the dialog to use the HTML in the mail body; FALSE - don't allow
+ * @param sender mail sender
+ * @param date date of send
+ * @param size mail size
+ * @param subject mail subject
+ * @param body mail body
+ */
+ ShowMailDialog( QWidget* parent, QString& caption, bool allowHTML, QString& sender, QString& date, QString& size, QString& subject, QString& body );
+
+ /**
+ * Destructor
+ */
+ ~ShowMailDialog();
+
+private:
+
+ /**
+ * mail subject
+ * Stored by constructor and used by slotUser1.
+ */
+ QString m_subject;
+
+ /**
+ * mail body
+ * Stored by constructor and used by slotUser1.
+ */
+ QString m_body;
+
+ /**
+ * mail sender
+ * Stored by constructor and used by slotUser1.
+ */
+ QString m_sender;
+
+ /**
+ * Overloaded methode of KDialogBase.
+ * Will be invoked, when reply button was clicked.
+ * Starts the composer of the preset mail application which contains
+ * the necessary data for a reply.
+ */
+ void slotUser1();
+};
+
+#endif
diff --git a/kshowmail/showrecord.cpp b/kshowmail/showrecord.cpp
new file mode 100644
index 0000000..b5df70a
--- /dev/null
+++ b/kshowmail/showrecord.cpp
@@ -0,0 +1,669 @@
+/***************************************************************************
+ showrecord.cpp - description
+ -------------------
+ begin : Mon Dec 3 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#include "showrecord.h"
+
+int const ShowRecord::continueShowHeaders( 0 );
+int const ShowRecord::cancelShowHeaders( 1 );
+
+ShowRecord::ShowRecord()
+{
+ //set auto delete to true. This is a function of the parent class, which deletes
+ //all items when the list is deleted or cleared.
+ setAutoDelete( true );
+}
+
+ShowRecord::~ShowRecord()
+{
+}
+
+void ShowRecord::saveOptions( QDomDocument& doc, QDomElement& parent )
+{
+ //Loop over all mail items
+ for( ShowRecordElem* pElem = first(); pElem; pElem = next() )
+ {
+ //call the method of the mail to save it
+ pElem->saveOptions( doc, parent );
+ }
+}
+
+void ShowRecord::readStoredMails( QDomElement& parent )
+{
+ //clear the list
+ clear();
+
+ //get first DOM node (mail)
+ QDomNode n = parent.firstChild();
+
+ //iterate over all mail items stored in the given account
+ while( !n.isNull() )
+ {
+ //get element of the current node
+ QDomElement e = n.toElement();
+
+ //create mail object
+ ShowRecordElem* pElem = new ShowRecordElem();
+
+ //store the currently read mail data in the new object
+ pElem->readOptions( e );
+
+ //store the new mail object in this list
+ append( pElem );
+
+ //get next DOM node
+ n = n.nextSibling();
+ }
+}
+
+bool ShowRecord::hasSelectedMails( )
+{
+ bool selected = false; //TRUE when a selected mail was found
+ ShowRecordElem* mail; //mail which we want to check
+
+ //get first mail
+ mail = first();
+
+ //iterate over all mails until we have found a selected mail
+ while( mail != NULL && !selected )
+ {
+ //check the current mail
+ selected = mail->isSelected();
+
+ //get next mail
+ mail = next();
+ }
+
+ return selected;
+}
+
+MailNumberList_Type ShowRecord::getSelectedMails( )
+{
+ MailNumberList_Type list; //contains the numbers of selected mails
+ ShowRecordElem* mail; //mail from which we want to get the number (if selected)
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+
+ //iterate over all mails
+ while( ( mail = it.current() ) != NULL )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if current mail is selected append its number to the mail number list
+ if( mail->isSelected() )
+ list.append( mail->number() );
+ }
+
+ return list;
+}
+
+void ShowRecord::removeMail( int number )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+
+ //looking for the mail with the number 'number'
+ while( ( mail = it.current() ) != NULL )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given number, remove it
+ if( mail->number() == number )
+ remove( mail );
+ }
+}
+
+QStringList ShowRecord::getSelectedSubjects( ) const
+{
+ QStringList subjects; //contains the subjects
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+
+ //iterate over all mails
+ while( ( mail = it.current() ) != NULL )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the mail is selected, append subject to list
+ if( mail->isSelected() )
+ subjects.append( mail->subject() );
+ }
+
+ return subjects;
+}
+
+QString ShowRecord::getSenderOf( int number ) const
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+ QString sender; //sender of the wanted mail
+
+ //looking for the mail with the number 'number'
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given number, remove it
+ if( mail->number() == number )
+ {
+ sender = mail->from();
+ found = true;
+ }
+ }
+ return sender;
+}
+
+QString ShowRecord::getDateOf( int number ) const
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+ QString date; //sent date of the wanted mail
+
+ //looking for the mail with the number 'number'
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given number, remove it
+ if( mail->number() == number )
+ {
+ date = mail->date();
+ found = true;
+ }
+ }
+ return date;
+
+}
+
+QString ShowRecord::getSizeOf( int number ) const
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+ QString size; //size of the wanted mail
+
+ //looking for the mail with the number 'number'
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given number, remove it
+ if( mail->number() == number )
+ {
+ size = mail->strSizePrefix();
+ found = true;
+ }
+ }
+ return size;
+
+}
+
+QString ShowRecord::getSubjectOf( int number ) const
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+ QString subject; //subject of the wanted mail
+
+ //looking for the mail with the number 'number'
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given number, get the subject
+ if( mail->number() == number )
+ {
+ subject = mail->subject();
+ found = true;
+ }
+ }
+ return subject;
+
+}
+
+QString ShowRecord::decodeMailBody( QByteArray body, int number, bool preferHTML ) const
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+ QString mailbody; //decoded mail
+
+ //looking for the mail with the number 'number'
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given number, decode the mail
+ if( mail->number() == number )
+ {
+ mailbody = mail->decodeMailBody( body, preferHTML );
+ found = true;
+ }
+ }
+ return mailbody;
+
+}
+
+bool ShowRecord::hasMail( QString uid )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //compare the uid
+ if( mail->uidl() == uid )
+ {
+ found = true;
+ }
+ }
+ return found;
+}
+
+void ShowRecord::appendNewMail( int number, QString uid, bool isNew )
+{
+ //create new mail
+ ShowRecordElem* newMail = new ShowRecordElem( number, uid, isNew );
+
+ //append new mail
+ if( newMail != NULL )
+ append( newMail );
+}
+
+void ShowRecord::printMailList( )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+
+ while( ( mail = it.current() ) )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //print mail
+ cout << mail->number() << " - UID: " << mail->uidl() << "; Size: " << mail->size() << "; Subject: " << mail->subject() << "; New: " << mail->isNew() << endl;
+ }
+
+}
+
+void ShowRecord::setSize( int number, long size )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+
+ //looking for the mail with the number 'number'
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given number, decode the mail
+ if( mail->number() == number )
+ {
+ mail->setSize( size );
+ found = true;
+ }
+ }
+}
+
+Types::MailNumberList_Type ShowRecord::getNewMails( )
+{
+ MailNumberList_Type list; //contains the numbers of the new mails
+ ShowRecordElem* mail; //mail from which we want to get the number (if new)
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+
+ //iterate over all mails
+ while( ( mail = it.current() ) != NULL )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if current mail is new append its number to the mail number list
+ if( mail->isNew() )
+ list.append( mail->number() );
+ }
+
+ return list;
+}
+
+void ShowRecord::setHeader( int number, QString header )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+
+ //looking for the mail with the number 'number'
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given number, set the header
+ if( mail->number() == number )
+ {
+ mail->setHeader( header );
+ found = true;
+ }
+ }
+}
+
+QStringList ShowRecord::getUIDsOfOldMails( )
+{
+ QStringList list; //contains the UIDs of the old mails
+ ShowRecordElem* mail; //mail from which we want to get the uid (if old)
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+
+ //iterate over all mails
+ while( ( mail = it.current() ) != NULL )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if current mail is new append its number to the mail number list
+ if( !mail->isNew() )
+ list.append( mail->uidl() );
+ }
+
+ return list;
+}
+
+QString ShowRecord::getHeaderOf( QString uid )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+ QString header; //header of the wanted mail
+
+ //looking for the mail with the UID 'uid'
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given uid, get the header
+ if( mail->uidl() == uid )
+ {
+ header = mail->header();
+ found = true;
+ }
+ }
+ return header;
+}
+
+void ShowRecord::setHeader( QString uid, QString header )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+
+ //looking for the mail with the UID 'uid'
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given UID, set the header
+ if( mail->uidl() == uid )
+ {
+ mail->setHeader( header );
+ found = true;
+ }
+ }
+}
+
+int ShowRecord::getNumberNewMails( )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ int number = 0; //number of new mails
+
+ while( ( mail = it.current() ) )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //increment number, if this mail is new
+ if( mail->isNew() )
+ number++;
+ }
+
+ return number;
+}
+
+int ShowRecord::getNumberMails( )
+{
+ return count();
+}
+
+long ShowRecord::getTotalSize( )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ long size = 0; //total size of all mails
+
+ while( ( mail = it.current() ) )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ size += mail->size();
+ }
+
+ return size;
+}
+
+void ShowRecord::fillMailListView( KshowmailView * view, QString & account )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+
+ //iterate over all mails and order the mail to create a list view item
+ while( ( mail = it.current() ) )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //insert list view item
+ QString number = QString( "%1" ).arg( mail->number() );
+ QString from = mail->from();
+ QString to = mail->to();
+ QString subject = mail->subject();
+ QString date = mail->date();
+ QString size = QString( "%1" ).arg( mail->size() );
+ QString content = mail->content();
+ QString state = mail->state();
+ QString time = mail->strUnixTime();
+ mail->setViewItem( view->insertMail( number, account, from, to, subject, date, size, content, state, time ) );
+ }
+
+}
+
+int ShowRecord::showSelectedHeaders( QString& account )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ int showNextHeader = ShowRecordElem::continueShowHeaders; //return value of ShowRecordElem::showHeader()
+
+ while( ( mail = it.current() ) && showNextHeader == ShowRecordElem::continueShowHeaders )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //order the mail to show its header
+ if( mail->isSelected() )
+ showNextHeader = mail->showHeader( account );
+ }
+
+ return showNextHeader == ShowRecordElem::continueShowHeaders ? ShowRecord::continueShowHeaders : ShowRecord::cancelShowHeaders;
+}
+
+bool ShowRecord::isNew( QString uid ) const
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+ bool newMail = false; //at time we have not found it, therefore the return value is false
+
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //compare the uid
+ if( mail->uidl() == uid )
+ {
+ found = true;
+ newMail = mail->isNew();
+ }
+ }
+
+ return newMail;
+}
+
+void ShowRecord::applyHeaderFilter( HeaderFilter * filter, QString account, MailNumberList_Type& deleteList, MailToDownloadMap_Type& downloadList, int& nmbIgnoredMails, FilterLog* log )
+{
+
+ MailNumberList_Type mailsToIgnore; //this list holds the numbers of all mails, which shall be ignored
+
+ //Loop over all mails in this list
+ for( ShowRecordElem* pElem = first(); pElem; pElem = next() )
+ {
+ //apply the filters to the current mail
+ QString mailbox;
+ FilterAction_Type action = pElem->applyHeaderFilter( filter, account, mailbox, log );
+
+ //do recommend action
+ //we don't need to do everything for action MARK, because ShowRecordElem::applyHeaderFilter() marks the mail entry itself
+ struct DownloadActionParams_Type params;
+ switch( action )
+ {
+ case FActDelete : deleteList.append( pElem->number() ); break;
+ case FActMove : params.action = FActMove;
+ params.mailbox = mailbox;
+ downloadList.insert( pElem->number(), params );
+ break;
+ case FActIgnore : mailsToIgnore.append( pElem->number() ); break;
+ case FActSpamcheck : params.action = FActSpamcheck;
+ downloadList.insert( pElem->number(), params );
+ default : break;
+ }
+ }
+
+ //remove all mails which shall be ignored from the mail list
+ nmbIgnoredMails = mailsToIgnore.count();
+ MailNumberList_Type::iterator it;
+ for ( it = mailsToIgnore.begin(); it != mailsToIgnore.end(); ++it )
+ removeMail( *it );
+
+
+}
+
+void ShowRecord::writeToMoveLog( FilterLog * log, int number, QString account, QString mailbox )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+
+ //looking for the mail with the number 'number'
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given number, set the header
+ if( mail->number() == number )
+ {
+ mail->writeToMoveLog( log, account, mailbox );
+ found = true;
+ }
+ }
+}
+
+void ShowRecord::writeToDeleteLog( FilterLog * log, int number, QString account )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+
+ //looking for the mail with the number 'number'
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given number, set the header
+ if( mail->number() == number )
+ {
+ mail->writeToDeleteLog( log, account );
+ found = true;
+ }
+ }
+}
+
+void ShowRecord::setMarkAtNextViewRefresh( int number )
+{
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+ bool found = false; //True, when the wanted mail was found
+
+ //looking for the mail with the number 'number'
+ while( ( mail = it.current() ) != NULL && !found )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the current mail has the given number, set the header
+ if( mail->number() == number )
+ {
+ mail->setMarkAtNextViewRefresh();
+ found = true;
+ }
+ }
+}
+
+QStringList ShowRecord::getSelectedSenders( ) const
+{
+ QStringList senders; //contains the senders
+ QPtrListIterator<ShowRecordElem> it( *this ); //iterator for the mail list
+ ShowRecordElem* mail; //current mail
+
+ //iterate over all mails
+ while( ( mail = it.current() ) != NULL )
+ {
+ //increment iterator to next mail
+ ++it;
+
+ //if the mail is selected, append subject to list
+ if( mail->isSelected() )
+ senders.append( mail->from() );
+ }
+
+ return senders;
+}
diff --git a/kshowmail/showrecord.h b/kshowmail/showrecord.h
new file mode 100644
index 0000000..db783f2
--- /dev/null
+++ b/kshowmail/showrecord.h
@@ -0,0 +1,314 @@
+/***************************************************************************
+ showrecord.h - description
+ -------------------
+ begin : Mon Dec 3 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef SHOWRECORD_H
+#define SHOWRECORD_H
+
+//C++ header
+#include <iostream>
+
+//Qt headers
+#include <qdom.h>
+#include <qptrlist.h>
+
+//KDE headers
+#include <kstandarddirs.h>
+#include <kdebug.h>
+
+//KShowmail headers
+#include "kshowmailview.h"
+#include "showrecordelem.h"
+#include "types.h"
+#include "headerfilter.h"
+#include "filterlog.h"
+
+using namespace Types;
+using namespace std;
+
+//forward class declarations
+class ShowRecordElem;
+class KshowmailView;
+
+/**
+ * @short List which contains all mails of an account.
+ *
+ * The mails are objects of ShowRecordElem.
+ * Inherits QPtrList.
+ *
+ * @see ShowRecordElem
+ * @author Eggert Ehmke
+ * @author Ulrich Weigelt
+ */
+class ShowRecord: public QPtrList<ShowRecordElem>
+{
+
+ public:
+
+ /**
+ * Returned by showSelectedHeaders() if the user has
+ * always clicked OK.
+ */
+ static const int continueShowHeaders;
+
+ /**
+ * Returned by showSelectedHeaders() if the user has
+ * clicked Cancel.
+ */
+ static const int cancelShowHeaders;
+
+ /**
+ * Constructor
+ */
+ ShowRecord();
+
+ /**
+ * Destructor
+ * Does nothing.
+ */
+ ~ShowRecord();
+
+ /**
+ * Saves all stored mails into the given DOM document inside the
+ * given account element.
+ * @param doc DOM document in that all options are stored
+ * @param parent account element
+ */
+ void saveOptions( QDomDocument& doc, QDomElement& parent );
+
+ /**
+ * Reads out all mails stored inside the given account element,
+ * creates objects from class ShowRecordElem and stores them in
+ * this list. All old items will be removed.
+ * @param parent account element (DOM element)
+ */
+ void readStoredMails( QDomElement& parent );
+
+ /**
+ * Apply the filters to the mails in this list.
+ * @param filter pointer to the header filter
+ * @param account name of this account
+ * @param deleteList reference to a list in which this methode writes the numbers of mails to delete
+ * @param downloadList reference to a list in which this methode writes the number of mails to download
+ * @param nmbIgnoredMails reference to an integer in which it writes the number of ignored mails
+ * @param log pointer to the filter log
+ */
+ void applyHeaderFilter( HeaderFilter* filter, QString account, MailNumberList_Type& deleteList, MailToDownloadMap_Type& downloadList, int& nmbIgnoredMails, FilterLog* log = NULL );
+
+
+ /**
+ * Returns whether there are mails in this list which are selected
+ * in the list view.
+ * @return TRUE - there are selected mails
+ * @return FALSE - there aren't selected mails
+ */
+ bool hasSelectedMails();
+
+ /**
+ * Returns the numbers of all selected mails.
+ * @return numbers of selected mails.
+ */
+ Types::MailNumberList_Type getSelectedMails();
+
+ /**
+ * Removes the mail which has the given number.
+ * @param number number of the mail which will be removed
+ */
+ void removeMail( int number );
+
+ /**
+ * Returns the subjects of the selected mails.
+ * @return subjects of selected mails
+ */
+ QStringList getSelectedSubjects() const;
+
+ /**
+ * Returns the sender of the mail with the given number.
+ * @param number mail number
+ * @return sender
+ */
+ QString getSenderOf( int number ) const;
+
+ /**
+ * Returns the date of sent of the mail with the given number.
+ * @param number mail number
+ * @return date
+ */
+ QString getDateOf( int number ) const;
+
+ /**
+ * Returns the size of the mail with the given number.
+ * @param number mail number
+ * @return size
+ */
+ QString getSizeOf( int number ) const;
+
+ /**
+ * Returns the subject of the mail with the given number.
+ * @param number mail number
+ * @return subject
+ */
+ QString getSubjectOf( int number ) const;
+
+ /**
+ * Decodes the given mail body by the appropriate mail object.
+ * The mail object (ShowRecordElem) has to do this job, because
+ * it has stored the mail header and therefore it knows the content
+ * type and encoding of the mail.
+ * It decodes just the text or html part of the body. The rest of it
+ * will be rejected.
+ * @param body the encoded mail (including header)
+ * @param number number of the downloaded mail
+ * @param preferHTML decode HTML part if present
+ * @return decoded mail body
+ */
+ QString decodeMailBody( QByteArray body, int number, bool preferHTML ) const;
+
+ /**
+ * Returns whether there is mail with the given uid in the list.
+ * @param uid UID of the mail
+ * @return TRUE - mail is in the list
+ * @return FALSE - mail is not in the list
+ */
+ bool hasMail( QString uid );
+
+ /**
+ * Returns whether the given mail is new.
+ * @param uid UID of the mail
+ * @return TRUE - mail is new
+ * @return FALSE - mail is not new or mail doesn't exist
+ */
+ bool isNew( QString uid ) const;
+
+ /**
+ * Appends a new mail to the list.
+ * @param number number of the mail on the server
+ * @param uid Unique ID of the mail
+ * @param isNew TRUE - mail is new; FALSE - mail is not new
+ */
+ void appendNewMail( int number, QString uid, bool isNew );
+
+ /**
+ * Just for debugging.
+ * Prints a list of all contained mails to stdout.
+ */
+ void printMailList();
+
+ /**
+ * Sets the size of a mail.
+ * @param number number of the mail
+ * @param size mail size
+ */
+ void setSize( int number, long size );
+
+ /**
+ * Returns the numbers of mails which are marked as new.
+ * @return numbers of the new mails
+ */
+ Types::MailNumberList_Type getNewMails();
+
+ /**
+ * Sets the header of the given mail.
+ * @param number number of the mail
+ * @param header the header
+ */
+ void setHeader( int number, QString header );
+
+ /**
+ * Returns a list of the UIDs of all old mails.
+ * @return UIDs of all old mails
+ */
+ QStringList getUIDsOfOldMails();
+
+ /**
+ * Returns the header of the mail with the given UID.
+ * @param uid UID
+ * @return mail header
+ */
+ QString getHeaderOf( QString uid );
+
+ /**
+ * Sets the header of the mail with the given UID.
+ * @param uid UID
+ * @param header mail header
+ */
+ void setHeader( QString uid, QString header );
+
+ /**
+ * Returns the number of new mails.
+ * @return number of new mails
+ */
+ int getNumberNewMails();
+
+ /**
+ * Returns the number of mails.
+ * @return number of mails
+ */
+ int getNumberMails();
+
+ /**
+ * Returns the total size of all mails.
+ * @return total size
+ */
+ long getTotalSize();
+
+ /**
+ * Creates for every mail a list view item and insert it
+ * into the mail list view.
+ * @param view pointer to the application view
+ * @param account account name
+ */
+ void fillMailListView( KshowmailView* view, QString& account );
+
+ /**
+ * Shows the headers of all selected mails.
+ * @param account account name
+ * @return continueShowHeaders - the user has always clicked OK. The invoking function will show the next header
+ * @return cancelShowHeaders - the user has clicked Cancel. The invoking function will not show the next header.
+ */
+ int showSelectedHeaders( QString& account );
+
+ /**
+ * Writes the mail into the Move Log.
+ * @param log pointer to the log
+ * @param number number of the mail
+ * @param account name of the account
+ * @param mailbox name of the mailbox
+ */
+ void writeToMoveLog( FilterLog* log, int number, QString account, QString mailbox );
+
+ /**
+ * Writes the mail into the Delete Log.
+ * @param log pointer to the log
+ * @param number number of the mail
+ * @param account name of the account
+ */
+ void writeToDeleteLog( FilterLog* log, int number, QString account );
+
+ /**
+ * The given mail will be marked at the next view refresh.
+ * @param number number of the mail
+ */
+ void setMarkAtNextViewRefresh( int number );
+
+ /**
+ * Returns the senders of the selected mails
+ * @return senders of the selected mails
+ */
+ QStringList getSelectedSenders() const;
+};
+
+#endif
diff --git a/kshowmail/showrecordelem.cpp b/kshowmail/showrecordelem.cpp
new file mode 100644
index 0000000..63f5157
--- /dev/null
+++ b/kshowmail/showrecordelem.cpp
@@ -0,0 +1,632 @@
+/***************************************************************************
+ showrecord.cpp - description
+ -------------------
+ begin : Thu Dec 28 2000
+ copyright : (C) 2000-2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+
+
+
+#include "showrecordelem.h"
+
+int const ShowRecordElem::continueShowHeaders( 0 );
+int const ShowRecordElem::cancelShowHeaders( 1 );
+
+ShowRecordElem::ShowRecordElem ()
+{
+ //set default values
+ m_from = "???";
+ m_subject = "???";
+ m_size = 0;
+ m_pItem = NULL;
+ m_new = false;
+ markAtViewRefresh = false;
+}
+
+ShowRecordElem::ShowRecordElem( int number, QString& uid, bool isNew )
+{
+ //set default values
+ m_from = "???";
+ m_subject = "???";
+ m_size = 0;
+ m_pItem = NULL;
+ markAtViewRefresh = false;
+
+ //set given values
+ m_nNumber = number;
+ m_uid = uid;
+ m_new = isNew;
+}
+
+
+QCString ShowRecordElem::scanHeader( const QString& item ) const
+{
+ QCString headerline( "" ); //found header line
+
+ //get e.g. the "From:" line, starting with cr,lf,"From:" and ending
+ //with a carriage return
+
+ //build the search string
+ QString searchstring( QString( "\r\n%1:" ).arg( item ) );
+
+ //searching...
+ int pos1 = m_header.find( searchstring, 0, FALSE );
+ int pos2 = m_header.find( '\r', pos1 + 2 );
+
+ //cut out the interesting content, if we have found a matching line
+ //if we have found nothing, the returned string will be ""
+ if( pos1 >= 0 )
+ {
+ headerline = m_header.mid( pos1 + searchstring.length(), pos2 - pos1 - searchstring.length() );
+ }
+
+ return headerline;
+}
+
+void ShowRecordElem::setHeader( const QString& header )
+{
+ //store given header
+ m_header = header.ascii();
+
+ //extract sender and store it
+ QCString from = scanHeader( "From" );
+ from = from.simplifyWhiteSpace();
+ setFrom( from );
+
+ //extract addressee and store it
+ QCString to = scanHeader( "To" );
+ to = to.simplifyWhiteSpace();
+ setTo (to);
+
+ //extract subject and store it
+ QCString subject = scanHeader( "Subject" );
+ subject = subject.simplifyWhiteSpace();
+ setSubject( subject );
+
+ //extract date and store it
+ QCString date = scanHeader( "Date" );
+ setDate( date );
+
+ //extract content type
+ QCString content = scanHeader( "Content-Type" );
+ content = content.simplifyWhiteSpace ();
+
+ //remove the stuff after the content type; see RFC 2045
+ int posSemicolon = content.find( ';' );
+ if( posSemicolon != -1 )
+ {
+ content.remove( posSemicolon, content.length() - posSemicolon );
+ }
+
+ //store content type
+ setContent (content);
+}
+
+void ShowRecordElem::setDate( const QCString& date )
+{
+ DwDateTime dwDate; //this class represents an RFC-822 date-time;
+ //see mimelib/datetime.h
+
+ //convert and store the date-time
+ dwDate.FromString( date );
+ dwDate.Parse();
+ m_unixDate.setTime_t( dwDate.AsUnixTime() );
+}
+
+QString ShowRecordElem::from() const
+{
+ return Codecs::decodeRFC2047( m_from );
+}
+
+QString ShowRecordElem::to() const
+{
+ return Codecs::decodeRFC2047( m_to );
+}
+
+QString ShowRecordElem::subject() const
+{
+ return Codecs::decodeRFC2047( m_subject );
+}
+
+QString ShowRecordElem::date() const
+{
+ return KGlobal::locale()->formatDateTime( m_unixDate, true, true );
+}
+
+QString ShowRecordElem::strUnixTime() const
+{
+ return m_unixDate.toString( Qt::ISODate );
+}
+
+QString ShowRecordElem::strSize() const
+{
+ return QString( "%1" ).arg( m_size, 8 );
+}
+
+QString ShowRecordElem::state() const
+{
+ if( m_new )
+ return i18n( "new" );
+ else
+ return i18n( "old" );
+}
+
+void ShowRecordElem::saveOptions( QDomDocument& doc, QDomElement& parent )
+{
+ //build item tag of this mail( with mail number)
+ QString hdr = QString( ITEM_MESSAGE );
+ hdr.append( "%1" );
+ hdr = hdr.arg( m_nNumber );
+
+ //create a new element and store the mail meta data in it
+ QDomElement elem = doc.createElement( hdr );
+ elem.setAttribute( ATTRIBUTE_MAIL_NUMBER, m_nNumber );
+ elem.setAttribute( ATTRIBUTE_MAIL_SIZE, m_size );
+ elem.setAttribute( ATTRIBUTE_MAIL_UID, m_uid );
+
+ //create a sub element for the mail header in store the header in it
+ QDomElement subelem = doc.createElement( ITEM_MAIL_HEADER );
+ subelem.appendChild( doc.createTextNode( m_header ) );
+
+ //add header element to the mail element
+ elem.appendChild( subelem );
+
+ //add mail element to the account (parent) element
+ parent.appendChild( elem );
+}
+
+void ShowRecordElem::readOptions( QDomElement& elem )
+{
+ //get number, size and uid
+ setNumber( elem.attribute( ATTRIBUTE_MAIL_NUMBER ).toInt() );
+ setSize( elem.attribute( ATTRIBUTE_MAIL_SIZE ).toInt() );
+ setUIDL( elem.attribute( ATTRIBUTE_MAIL_UID ) );
+
+ //search for the header item and read it
+ QDomElement subelem = elem.namedItem( ITEM_MAIL_HEADER ).toElement();
+ setHeader( subelem.text() );
+
+ //the mail is not new
+ setNew( false );
+}
+
+
+void ShowRecordElem::setFrom( const QCString & from )
+{
+ m_from = from;
+}
+
+void ShowRecordElem::setTo( const QCString & to )
+{
+ m_to = to;
+}
+
+void ShowRecordElem::setSubject( const QCString & subject )
+{
+ m_subject = subject;
+}
+
+void ShowRecordElem::setContent( const QCString& content )
+{
+ m_content = content;
+}
+
+QString ShowRecordElem::header( ) const
+{
+ return QString( m_header );
+}
+
+void ShowRecordElem::setUIDL( const QString & uid )
+{
+ m_uid = uid;
+}
+
+QString ShowRecordElem::uidl( ) const
+{
+ return m_uid;
+}
+
+void ShowRecordElem::setSize( int size )
+{
+ m_size = size;
+}
+
+int ShowRecordElem::size( ) const
+{
+ return m_size;
+}
+
+void ShowRecordElem::setNew( bool isnew )
+{
+ m_new = isnew;
+}
+
+bool ShowRecordElem::isNew( ) const
+{
+ return m_new;
+}
+
+void ShowRecordElem::setNumber( int n )
+{
+ m_nNumber = n;
+}
+
+int ShowRecordElem::number( ) const
+{
+ return m_nNumber;
+}
+
+QString ShowRecordElem::content( ) const
+{
+ return m_content;
+}
+
+void ShowRecordElem::setViewItem( ShowListViewItem* item )
+{
+ m_pItem = item;
+
+ //marks the new entry if recommend by the filter
+ if( markAtViewRefresh )
+ {
+ //mark entry
+ item->setSelected( true );
+
+ //delete flag
+ markAtViewRefresh = false;
+ }
+}
+
+ShowListViewItem * ShowRecordElem::viewItem( ) const
+{
+ return m_pItem;
+}
+
+bool ShowRecordElem::isSelected( ) const
+{
+ if( m_pItem != NULL )
+ return m_pItem->isSelected();
+ else
+ return false;
+}
+
+QString ShowRecordElem::strSizePrefix( ) const
+{
+ QString size;
+
+ if( m_size >= 1024 * 1024 )
+ {
+ //prefix is mega
+ size = QString( "%L1M" ).arg( ( (double)m_size / ( 1024 * 1024 ) ), 0, 'f', 1 );
+ }
+ else if( m_size >= 1024 )
+ {
+ //prefix is kilo
+ size = QString( "%L1K" ).arg( ( (double)m_size / 1024 ), 0, 'f', 1 );
+ }
+ else
+ //no prefix
+ size = QString( "%L1" ).arg( m_size );
+
+ return size;
+}
+
+QString ShowRecordElem::decodeMailBody( QByteArray body, bool preferHTML ) const
+{
+ QString charset; //charset of the content
+ QString encoding; //content transfer encoding
+
+ //cast given body to a QCString
+ //class QCString needs a null terminated char array to create
+ //an object. Therefore we append an null byte to the given mail body
+ body.resize( body.size() + 1 );
+ body[ body.size() - 1 ] = '\0';
+ QCString strBody( (char *)body.data() );
+
+ //normalize line ends; remove all \r characters
+ for( uint i = 0; i < strBody.size(); i++ )
+ if( strBody[ i ] == '\r' )
+ strBody.remove( i, 1 );
+
+ //get boundary that is separating the parts of a multipart message
+ //if the header doesn't contain a boundary attribute, this messsage
+ //has just one part
+ QString boundary = getBoundary();
+
+ //process body subject to it is a multipart messsage or not
+ if( boundary == "" )
+ {
+ //the message has just one body part
+
+ //get the position of the first blank line
+ int posBlankLine = strBody.find( "\n\n" );
+
+ //truncate body; the found blank line is separating the
+ //header from the message
+ strBody = strBody.mid( posBlankLine + 2 );
+ if( !strBody.isEmpty() ) //fixed bug 1773636
+ while( strBody[ 0 ] == '\n')
+ strBody.remove( 0, 1 );
+
+
+ //get charset of the message; it is behind the
+ //content type attribute in the header
+ charset = getCharset();
+
+ //get transfer encoding type from the header
+ encoding = getTransferEncoding();
+ }
+ else
+ {
+ //the message has multiple parts
+
+ //get positions of a plain text and html flag (value of the content type attribute)
+ int posPlainFlag = strBody.find( "text/plain", 0, false );
+ int posHTMLFlag = strBody.find( "text/html", 0, false );
+
+ //just decode the body, if a plain text or a HTML part is available
+ if( posPlainFlag != -1 || posHTMLFlag != -1 )
+ {
+ //do we want to take the HTML part?
+ bool hasHTML = posHTMLFlag != -1;
+ bool takeHTML = ( hasHTML && preferHTML ) || posPlainFlag == -1;
+
+ //now we want to extract the designated part
+ //While the (truncated) mail text (or the header at the first pass)
+ //contains a boundary attribute we will extract the designated part
+ //between the boundaries
+ int posInside; //a position inside the designated part
+ while( boundary != "" )
+ {
+ //get a position inside the designated part
+ if( takeHTML )
+ posInside = strBody.find( "text/html", 0, false );
+ else
+ posInside = strBody.find( "text/plain", 0, false );
+
+ //get length of the boundary
+ int lengthBoundary = boundary.length();
+
+ //calculate the begin and end of the part to extract
+ int beginPart = strBody.findRev( boundary.ascii(), posInside ) + lengthBoundary + 1;
+ int lengthPart = strBody.findRev( '\n', strBody.find( boundary.ascii(), posInside ) ) - beginPart;
+
+ strBody = strBody.mid( beginPart, lengthPart );
+
+ //looking for a further boundary attribute
+ //get the position of the first occurance of "boundary="
+ int posBoundary = strBody.find( "boundary=", 0, false );
+
+ if( posBoundary >= 0 )
+ {
+ //calculate positon of the first quote
+ int posFirstQuote = posBoundary + 9;
+
+ //get the position of closing quote
+ int posSecondQuote = strBody.find( '"', posFirstQuote + 1 );
+
+ //get boundary string
+ boundary.append( strBody.mid( posFirstQuote + 1, posSecondQuote - posFirstQuote - 1 ) );
+ }
+ else
+ boundary = "";
+ }
+
+ //now we get charset and transfer encoding if available in the extracted
+ //part
+
+ //get the position of the first occurance of "charset="
+ int posCharset = strBody.find( "charset=", 0, false );
+
+ //continue, if a charset attribute was found
+ if( posCharset >= 0 )
+ {
+ //calculate positon of the value
+ int posBeginValue = posCharset + 8;
+
+ //get end of the value
+ int posEndValue = strBody.find( '\n', posBeginValue ) - 1;
+
+ //get charset
+ charset.append( strBody.mid( posBeginValue, posEndValue - posBeginValue + 1 ) );
+
+ //remove quotes
+ charset.remove( '"' );
+ //remove all content after the first semicolon (inclusive)
+ int posSemicolon = charset.find( ';' );
+ charset = charset.left( posSemicolon );
+ }
+
+ //get the position of the first occurance of "charset="
+ int posEncoding = strBody.find( "Content-Transfer-Encoding:", 0, false );
+
+ //continue, if a charset attribute was found
+ if( posEncoding >= 0 )
+ {
+ //calculate positon of the value
+ int posBeginValue = posEncoding + 26;
+
+ //get end of the value
+ int posEndValue = strBody.find( '\n', posBeginValue ) - 1;
+
+ //get charset
+ encoding.append( strBody.mid( posBeginValue, posEndValue - posBeginValue + 1 ) );
+
+ //remove quotes and spaces
+ encoding = encoding.stripWhiteSpace();
+ encoding.remove( '"' );
+ }
+
+ //cut off the part header; the found blank line is separating the
+ //part header from the message
+ if( posCharset != -1 || posEncoding != -1 )
+ {
+ int posBlankLine = strBody.find( "\n\n" );
+ strBody = strBody.mid( posBlankLine + 2 );
+ if( !strBody.isEmpty() ) //fixed bug 1773636
+ while( strBody[ 0 ] == '\n')
+ strBody.remove( 0, 1 );
+ }
+ }
+ }
+
+ //Good things come to those who wait. We have extract the message.
+ //Now we have to decode the message, if it is encoded
+ if( encoding == "quoted-printable" && !strBody.isEmpty() ) //fixed bug 1773636
+ {
+ strBody = KCodecs::quotedPrintableDecode( strBody );
+ }
+
+ return QString( strBody );
+}
+
+QString ShowRecordElem::getBoundary( ) const
+{
+ QString boundary;
+
+ //check, whether it is a multipart message
+ if( m_content.contains( "multipart", false ) )
+ {
+ //it is a multipart message
+
+ //get the position of the first occurance of "boundary="
+ int posBoundary = m_header.find( "boundary=", 0, false );
+
+ //continue, if a boundary attribute was found
+ if( posBoundary >= 0 )
+ {
+ //calculate positon of the first quote
+ int posFirstQuote = posBoundary + 9;
+
+ //get the position of closing quote
+ int posSecondQuote = m_header.find( '"', posFirstQuote + 1 );
+
+ //get boundary string
+ boundary.append( m_header.mid( posFirstQuote + 1, posSecondQuote - posFirstQuote - 1 ) );
+ }
+ }
+
+ return boundary;
+}
+
+QString ShowRecordElem::getCharset( ) const
+{
+ QString charset;
+
+ //get the position of the first occurance of "charset="
+ int posCharset = m_header.find( "charset=", 0, false );
+
+ //continue, if a charset attribute was found
+ if( posCharset >= 0 )
+ {
+ //calculate positon of the value
+ int posBeginValue = posCharset + 8;
+
+ //get end of the value
+ int posEndValue = m_header.find( '\r', posBeginValue ) - 1;
+
+ //get charset
+ charset.append( m_header.mid( posBeginValue, posEndValue - posBeginValue + 1 ) );
+
+ //remove quotes
+ charset.remove( '"' );
+ //remove all content after the first semicolon (inclusive)
+ int posSemicolon = charset.find( ';' );
+ charset = charset.left( posSemicolon );
+ }
+
+ return QString( charset );
+}
+
+QString ShowRecordElem::getTransferEncoding( ) const
+{
+ QString encoding;
+
+ //get the position of the first occurance of "charset="
+ int posEncoding = m_header.find( "Content-Transfer-Encoding:", 0, false );
+
+ //continue, if a charset attribute was found
+ if( posEncoding >= 0 )
+ {
+ //calculate positon of the value
+ int posBeginValue = posEncoding + 26;
+
+ //get end of the value
+ int posEndValue = m_header.find( '\r', posBeginValue ) - 1;
+
+ //get charset
+ encoding.append( m_header.mid( posBeginValue, posEndValue - posBeginValue + 1 ) );
+
+ //remove quotes and spaces
+ encoding = encoding.stripWhiteSpace();
+ encoding.remove( '"' );
+ }
+
+ return QString( encoding );
+
+}
+
+int ShowRecordElem::showHeader( QString& account )
+{
+ //show header
+ QString tsubject = subject();
+ QString tmailheader = header();
+
+ //create and open the window
+ ShowHeaderDialog dlg( kapp->mainWidget(), account, tsubject, tmailheader );
+ int ret = dlg.exec();
+
+ //returns the matching value
+ return ret == QDialog::Accepted ? ShowRecordElem::continueShowHeaders : ShowRecordElem::cancelShowHeaders;
+}
+
+FilterAction_Type ShowRecordElem::applyHeaderFilter( HeaderFilter* filter, QString account, QString& mailbox, FilterLog* log )
+{
+ FilterAction_Type action = filter->check( from(), to(), size(), subject(), header(), account, mailbox );
+
+ //if the action is MARK, the related view entry shall be marked at the next view refresh
+ if( action == FActMark ) markAtViewRefresh = true;
+
+ //if the action is DELETE, we add a entry to the log
+ if( log == NULL )
+ kdError( "ShowRecordElem::applyHeaderFilter: Pointer to the filter log is NULL. Can't write to log." );
+ if( action == FActDelete && log != NULL )
+ log->addDeletedMail( sentDateTime(), from(), account, subject() );
+ if( action == FActMove && log != NULL )
+ log->addMovedMail( sentDateTime(), from(), account, subject(), mailbox );
+
+
+ return action;
+}
+
+QDateTime ShowRecordElem::sentDateTime() const
+{
+ return m_unixDate;
+}
+
+void ShowRecordElem::writeToMoveLog( FilterLog * log, QString account, QString mailbox )
+{
+ log->addMovedMail( sentDateTime(), from(), account, subject(), mailbox );
+}
+
+void ShowRecordElem::writeToDeleteLog( FilterLog * log, QString account )
+{
+ log->addDeletedMail( sentDateTime(), from(), account, subject() );
+}
+
+void ShowRecordElem::setMarkAtNextViewRefresh( )
+{
+ markAtViewRefresh = true;
+}
+
+
diff --git a/kshowmail/showrecordelem.h b/kshowmail/showrecordelem.h
new file mode 100644
index 0000000..3d5e9f6
--- /dev/null
+++ b/kshowmail/showrecordelem.h
@@ -0,0 +1,447 @@
+/***************************************************************************
+ showrecord.h - description
+ -------------------
+ begin : Thu Dec 28 2000
+ copyright : (C) 2000-2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef SHOWRECORDELEM_H
+#define SHOWRECORDELEM_H
+
+//Qt headers
+#include <qdom.h>
+#include <qstring.h>
+#include <qlistview.h>
+#include <qdatetime.h>
+
+//KDE headers
+#include <klocale.h>
+#include <kglobal.h>
+#include <kdebug.h>
+#include <mimelib/datetime.h>
+#include <kmdcodec.h>
+
+//KShowmail headers
+#include "showlistviewitem.h"
+#include "decodeRFC2047.h"
+#include "constants.h"
+#include "kshowmailview.h"
+#include "showheaderdialog.h"
+#include "headerfilter.h"
+#include "filterlog.h"
+
+using namespace Constants;
+
+//forward class declarations
+class KshowmailView;
+class FilterElem;
+
+/**
+ * @short Represents a mail.
+ *
+ * It contains UID, Subject, From, To and date of the mail. Subject, From and To
+ * will be read out from the given header. It also contains pointer to the
+ * corresponding list view entry and maybe to a matching filter.
+ * All mail objects are held by ShowRecord.
+ * @see ShowRecord
+ * @see ConfigElem
+ * @author Eggert Ehmke
+ */
+
+class ShowRecordElem
+{
+
+ public:
+
+ /**
+ * Returned by showHeader(), if the user has
+ * clicked OK.
+ */
+ static const int continueShowHeaders;
+
+ /**
+ * Returned by showHeader(), if the user has
+ * clicked Cancel.
+ */
+ static const int cancelShowHeaders;
+
+ /**
+ * Constructor
+ */
+ ShowRecordElem ();
+
+ /**
+ * Constructor
+ * @param number number of the mail on the server
+ * @param uid Unique ID of the mail
+ * @param isNew TRUE - mail is new; FALSE - mail is not new
+ */
+ ShowRecordElem( int number, QString& uid, bool isNew );
+
+ /**
+ * Sets the mail header and extracts From, To, Subject, Date and Content Type.
+ * All parts of the header are coded according RFC 2047.
+ * @param header the mail header
+ */
+ void setHeader( const QString& header );
+
+ /**
+ * Returns the whole header.
+ * @return the mail header
+ */
+ QString header() const;
+
+ /**
+ * Returns the sender address.
+ * @return sender address
+ */
+ QString from() const;
+
+ /**
+ * Returns the addressee.
+ * @return the addressee
+ */
+ QString to() const;
+
+ /**
+ * Returns the subject.
+ * @return mail subject
+ */
+ QString subject() const;
+
+ /**
+ * Returns the stored content type.
+ * @return content type
+ */
+ QString content() const;
+
+
+ /**
+ * Returns the date on which the mail was sent, formated to the current
+ * locale's conventions.
+ * @return the date
+ */
+ QString date() const;
+
+ /**
+ * Returns the date on which the mail was sent.
+ * The format corresponds to the ISO 8601 extended specification for
+ * representations of dates and times, which is YYYY-MM-DDTHH:MM:SS
+ * @return the date
+ */
+ QString strUnixTime () const;
+
+ /**
+ * Returns the date and time on which the mail was sent.
+ * @return the date
+ */
+ QDateTime sentDateTime() const;
+
+ /**
+ * Sets the unique mail ID.
+ * @param uid the ID
+ */
+ void setUIDL( const QString& uid );
+
+ /**
+ * Returns the unique ID of this mail.
+ * @return UID
+ */
+ QString uidl() const;
+
+ /**
+ * Sets the size of the mail.
+ * @param size Size
+ */
+ void setSize( int size );
+
+ /**
+ * Returns the mail size as numeric value.
+ * @return size of the mail
+ */
+ int size() const;
+
+ /**
+ * Returns the mail size as string.
+ * The String has a length of 8 and the number is right-aligned to allow sorting.
+ */
+ QString strSize () const;
+
+ /**
+ * Returns the mails size as string with prefix
+ */
+ QString strSizePrefix() const;
+
+ /**
+ * Sets whether the mail is new or not.
+ * @param isnew TRUE - mail is new; FALSE - mail is not new
+ */
+ void setNew( bool isnew );
+
+ /**
+ * Returns whether the mail is new or not.
+ * @return TRUE - mail is new
+ * @return FALSE - mail is not new
+ */
+ bool isNew() const;
+
+ /**
+ * Returns whether the mail is new or not.
+ * @return localized String "new", if the mail is new
+ * @return localized String "old", if the mail is not new
+ */
+ QString state() const;
+
+ /**
+ * Sets the number of this mail.
+ * @param n mail number
+ */
+ void setNumber( int n );
+
+ /**
+ * Returns the number of this mail.
+ * @return mail number
+ */
+ int number() const;
+
+ /**
+ * Sets the pointer to the corresponding list view item.
+ * @see m_pItem
+ * @see ShowListViewItem
+ * @param item pointer to the corresponding item
+ */
+ void setViewItem( ShowListViewItem* item );
+
+ /**
+ * Returns the pointer to the corresponding list view item.
+ * @see m_pItem
+ * @see ShowListViewItem
+ * @return pointer to the item
+ */
+ ShowListViewItem* viewItem() const;
+
+ /**
+ * Looks for a filter matching the mail header and returns the action recommend by this filter.
+ * If the action is MARK, it set markAtViewRefresh to True so the related view entry will be marked
+ * at the next view refresh.
+ * @param filter pointer to the header filter
+ * @param account name of the account
+ * @param mailbox reference to a QString object in which the mailbox name shall be written if the action is MOVE
+ * @param log pointer to the filter log
+ * @return recommend action
+ * @see FilterAction_Type
+ * @see HeaderFilter
+ * @see markAtViewRefresh
+ */
+ FilterAction_Type applyHeaderFilter( HeaderFilter* filter, QString account, QString& mailbox, FilterLog* log = NULL );
+
+ /**
+ * Read a mail (header, size, uid and number) from the given DOM element
+ * and store it in this mail object.
+ * The element has to contains the attributes "uidl", "size", "number" and
+ * a child node called "header".
+ * @param elem a DOM element which contains a mail
+ */
+ void readOptions( QDomElement& elem );
+
+ /**
+ * Creates a new DOM element in the given DOM document and add it to given
+ * DOM parent element
+ * @param doc the DOM document in that all options are stored
+ * @param parent the parent element (account) of the mail
+ */
+ void saveOptions( QDomDocument& doc, QDomElement& parent );
+
+ /**
+ * Returns whether the mail is selected in the list view.
+ * @return TRUE - mail is selected
+ * @return FALSE - mail is not selected
+ */
+ bool isSelected() const;
+
+ /**
+ * Decodes the given mail body.
+ * The mail object has to do this job, because
+ * it has stored the mail header and therefore it knows the content
+ * type and encoding of the mail.
+ * It decodes just the text or html part of the body. The rest of it
+ * will be rejected.
+ * @param body the encoded mail (including header)
+ * @param preferHTML decode HTML part if present
+ * @return decoded mail body
+ */
+ QString decodeMailBody( QByteArray body, bool preferHTML ) const;
+
+ /**
+ * Shows the header in a dialog box.
+ * @param account account name
+ * @return continueShowHeaders - the user has OK clicked. The invoking function will show the next header
+ * @return cancelShowHeaders - the user has Cancel clicked. The invoking function will not show the next header.
+ */
+ int showHeader( QString& account );
+
+ /**
+ * Writes this mail into the Move Log.
+ * @param log pointer to the log
+ * @param account name of the account
+ * @param mailbox name of the mailbox
+ */
+ void writeToMoveLog( FilterLog* log, QString account, QString mailbox );
+
+ /**
+ * Writes this mail into the Delete Log.
+ * @param log pointer to the log
+ * @param account name of the account
+ */
+ void writeToDeleteLog( FilterLog* log, QString account );
+
+ /**
+ * The mail will be marked at the next view refresh.
+ */
+ void setMarkAtNextViewRefresh();
+
+ private:
+
+ /**
+ * Mail header; coded according RFC 2047
+ */
+ QCString m_header;
+
+ /**
+ * The sender address; coded according RFC 2047
+ */
+ QCString m_from;
+
+ /**
+ * The addressee; coded according RFC 2047
+ */
+ QCString m_to;
+
+ /**
+ * The subject; coded according RFC 2047
+ */
+ QCString m_subject;
+
+ /**
+ * The date on which the mail was sent
+ */
+ QDateTime m_unixDate;
+
+ /**
+ * The content type
+ */
+ QCString m_content;
+
+ /**
+ * The unique ID of the mail.
+ */
+ QString m_uid;
+
+ /**
+ * Size of the mail
+ */
+ int m_size;
+
+ /**
+ * It is set to TRUE when the mail is new.
+ */
+ bool m_new;
+
+ /**
+ * The mail number of the account
+ */
+ int m_nNumber;
+
+ /**
+ * TRUE - the mail shall be marked at the next mail view refresh.
+ * It will be set to True by applyHeaderFilter() if the recommend filter action is MARK.
+ * It is used by setViewItem(). This methode marks the related list entry and after then it set
+ * this variable to False.
+ */
+ bool markAtViewRefresh;
+
+ /**
+ * Pointer to the corresponding list view entry. Used to check
+ * whether the entry is highlighted and we have to process this mail.
+ * @see ShowListViewItem
+ */
+ ShowListViewItem* m_pItem;
+
+ /**
+ * Searches in the header for a line which starts with the
+ * given item.
+ * For example:
+ * scanHeader( "From") will find the line
+ * "From: Ulrich Weigelt <ulrich.weigelt@gmx.de>"
+ * and returns "Ulrich Weigelt <ulrich.weigelt@gmx.de>"
+ * Returns an empty string (""), if nothing was found.
+ * @param item the search item
+ * @return the content of the found line
+ */
+ QCString scanHeader( const QString& item ) const;
+
+ /**
+ * Sets the given string as sender address
+ * @param from sender address
+ */
+ void setFrom( const QCString& from );
+
+ /**
+ * Sets the given string as recipient address
+ * @param to recipient address
+ */
+ void setTo( const QCString& to );
+
+ /**
+ * Sets the given string as subject
+ * @param subject the mail subject
+ */
+ void setSubject( const QCString& subject );
+
+ /**
+ * Converts the given string to a date-time value and stores it.
+ * @param date the date
+ */
+ void setDate( const QCString& date );
+
+ /**
+ * Sets the given string as content type.
+ * @param content the content type
+ */
+ void setContent( const QCString& content );
+
+ /**
+ * Returns the boundary, if the mail has a multi part body.
+ * Otherwise it returns an empty string.
+ * @return boundary
+ */
+ QString getBoundary() const;
+
+ /**
+ * Returns the char set of the content (e.g. iso-8859-1).
+ * If no char set is denoted, it will returns an empty string.
+ * @return charset
+ */
+ QString getCharset() const;
+
+ /**
+ * Returns the content transfer encoding of the content
+ * (e.g. quoted-printable).
+ * If no encoding is denoted, it will returns an empty string.
+ * @return content transfer encoding
+ */
+ QString getTransferEncoding() const;
+
+};
+
+#endif
diff --git a/kshowmail/templates/cpp_template b/kshowmail/templates/cpp_template
new file mode 100644
index 0000000..6afef5d
--- /dev/null
+++ b/kshowmail/templates/cpp_template
@@ -0,0 +1,16 @@
+/***************************************************************************
+ |FILENAME| - description
+ -------------------
+ begin : |DATE|
+ copyright : (C) |YEAR| by |AUTHOR|
+ email : |EMAIL|
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
diff --git a/kshowmail/templates/header_template b/kshowmail/templates/header_template
new file mode 100644
index 0000000..6afef5d
--- /dev/null
+++ b/kshowmail/templates/header_template
@@ -0,0 +1,16 @@
+/***************************************************************************
+ |FILENAME| - description
+ -------------------
+ begin : |DATE|
+ copyright : (C) |YEAR| by |AUTHOR|
+ email : |EMAIL|
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
diff --git a/kshowmail/types.h b/kshowmail/types.h
new file mode 100644
index 0000000..defe2c2
--- /dev/null
+++ b/kshowmail/types.h
@@ -0,0 +1,122 @@
+//
+// C++ Interface: types
+//
+// Description:
+// All specail types for KShowMail
+//
+//
+// Author: Ulrich Weigelt <ulrich.weigelt@gmx.de>, (C) 2007
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+
+#ifndef TYPES_H
+#define TYPES_H
+
+//Qt headers
+#include <qvaluelist.h>
+#include <qmap.h>
+#include <qstring.h>
+
+using namespace std;
+
+/**
+ * All special types for KShowMail.
+ */
+namespace Types
+{
+ /**
+ * State of the application during running time.
+ */
+ enum State_Type {idle, /**<it's doing nothing*/
+
+ deleting, /**<it's deleting a message on the server*/
+
+ configure, /**<the user is configuring the application or
+ * the mail or just the header of the mail is
+ * being shown*/
+
+ executing, /**<a command on the command list is being executed*/
+
+ showing, /**<it's downloading and showing a mail*/
+
+ refreshing /**<it's refreshing the mail lists*/
+ };
+
+ /**
+ * State of an account.
+ */
+ enum AccountState_Type
+ {
+ AccountIdle, /**<it's doing nothing*/
+
+ AccountDeleting, /**<a deletion is running*/
+
+ AccountDownloading, /**<the account is downloading mail bodies*/
+
+ AccountRefreshing /**<the account is refreshing its mail list*/
+ };
+
+ /**
+ * List of mail numbers. It is a QValueList of integers.
+ */
+ typedef QValueList<int> MailNumberList_Type;
+
+ /**
+ * Map to notice which accounts need to get an order to do a task.
+ * The Key is the account name and the data a boolean.
+ * TRUE means the task was ordered, FALSE the task was ended.
+ */
+ typedef QMap<QString, bool> AccountTaskMap_Type;
+
+ /**
+ * Actions returned by filters.
+ */
+ enum FilterAction_Type
+ {
+ FActPass, /**<Mail has passed the filter check. It can showed in the list.*/
+ FActDelete, /**<Undesirable mail. Delete it.*/
+ FActMark, /**<Probably undesirable mail. Mark it in the mail list.*/
+ FActMove, /**<Move the mail to a certain mail box. The name of the box will returned by a further parameter.*/
+ FActSpamcheck, /**<This mail shall be forwared to a spam filter, which checks the whole mail including body.*/
+ FActIgnore, /**<This mail shall not be shown.*/
+ FActNone /**<The mail doesn't match up with the filter. Perform the next one.*/
+ };
+
+ /**
+ * This struct is for use in MailToDownloadMap_Type and holds some parameters about the mail for
+ * downloading.
+ */
+ struct DownloadActionParams_Type
+ {
+ FilterAction_Type action; /**<the filter action*/
+ QString mailbox; /**<name of the mailbox if action is MOVE*/
+ };
+
+ /**
+ * This map is used by ConfigElem and ShowRecord to hold a list of mail numbers which shall be downloaded for
+ * some filter actions; at time for moving and spam check
+ */
+ typedef QMap<int, DownloadActionParams_Type> MailToDownloadMap_Type;
+
+ /**
+ * Contains all values of a filter criteria.
+ */
+ struct FilterCriteria_Type
+ {
+ int source; /**<Object of comparison; see constants.h for valid values. (CONFIG_VALUE_FILTER_CRITERIA_SOURCE...)*/
+ int condition; /**<Condition of the comparison. see constants.h for valid values. (CONFIG_VALUE_FILTER_CRITERIA_COND...)*/
+ uint numValue; /**<Value of a numeric criteria, e.g. Size*/
+ QString txtValue; /**<Value of a text criteria, e.g. Subject*/
+ bool cs; /**<TRUE - Comparison is case sensitive. Just used for numeric criteria.*/
+ };
+
+ /**
+ * List of filter criterias.
+ */
+ typedef list<FilterCriteria_Type> FilterCriteriaList_Type;
+
+}
+
+#endif
diff --git a/kshowmail/uniqueapp.cpp b/kshowmail/uniqueapp.cpp
new file mode 100644
index 0000000..822c877
--- /dev/null
+++ b/kshowmail/uniqueapp.cpp
@@ -0,0 +1,78 @@
+/***************************************************************************
+ uniqueapp.cpp - description
+ -------------------
+ begin : Mon Nov 19 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#include "uniqueapp.h"
+#include <iostream>
+
+
+UniqueApp::UniqueApp()
+{
+ m_pApp = NULL;
+}
+
+UniqueApp::~UniqueApp()
+{}
+
+int UniqueApp::newInstance ()
+{
+ //start our application
+ //---------------------
+
+ //at the first invoke of newInstance() create a new instance of kshowmail
+ if (m_pApp == NULL)
+ {
+ m_pApp = new KShowMailApp ();
+ }
+//TODO: write english comments
+
+ //frage das ConfigList-Objekt, ob die KShowMail beim Starten
+ //normal oder nur in der Taskleiste gezeigt werden soll
+ if( m_pApp->m_ConfigList.startMinimized() )
+ {
+ //lege die App auf die Taskleiste
+ m_pApp->showMinimized ();
+ m_pApp->hide();
+ }
+ else
+ {
+ //zeige das Hauptfenster
+ m_pApp->showNormal ();
+ m_pApp->raise();
+ }
+
+ //Kommandozeile-Argumente auswerten
+ //---------------------------------
+
+ //die in main() eingelesenen Kommandozeile-Argumente in ein
+ //KCmdLineArgs-Objekt ablegen
+ KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
+
+ //wenn als Kommandozeilen-Argument "config" übergeben wurde,
+ //starte jetzt den Konfigurationsdialog
+ if ( args->isSet( CMDLINE_CONFIG ) )
+ m_pApp->slotSetup();
+
+ //wenn als Kommandozeile-Argument "refresh" übergeben wurde,
+ //schaue sofort nach neue Mails
+ if ( args->isSet ( CMDLINE_REFRESH ) )
+ m_pApp->slotRefresh();
+
+ //lösche alle Kommandozeilen-Argumente im Objekt
+ args->clear ();
+
+ return 0;
+}
diff --git a/kshowmail/uniqueapp.h b/kshowmail/uniqueapp.h
new file mode 100644
index 0000000..4c19dab
--- /dev/null
+++ b/kshowmail/uniqueapp.h
@@ -0,0 +1,65 @@
+/***************************************************************************
+ uniqueapp.h - description
+ -------------------
+ begin : Mon Nov 19 2001
+ copyright : (C) 2001 by Eggert Ehmke
+ email : eggert.ehmke@berlin.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef UNIQUEAPP_H
+#define UNIQUEAPP_H
+
+//KDE-Header
+#include <kwin.h>
+#include <kcmdlineargs.h>
+#include <kuniqueapplication.h>
+
+//KShowMail-Header
+#include "kshowmail.h"
+#include "constants.h"
+
+using namespace Constants;
+
+/**
+ * @short Creates a unique instance of kshowmail
+ * @author Eggert Ehmke
+ */
+
+class UniqueApp : public KUniqueApplication {
+
+public:
+
+ /**
+ * Constructor
+ */
+ UniqueApp();
+
+ /**
+ * Destructor
+ */
+ ~UniqueApp();
+
+ /**
+ * overloaded method of KUniqueApplication. Creates a new instance of kshowmail.
+ */
+ virtual int newInstance ();
+
+
+private:
+
+ /**
+ * the kshowmail instance
+ */
+ KShowMailApp* m_pApp;
+};
+
+#endif
diff --git a/pics/.xvpics/exclamation.png b/pics/.xvpics/exclamation.png
new file mode 100644
index 0000000..2378aee
--- /dev/null
+++ b/pics/.xvpics/exclamation.png
@@ -0,0 +1,5 @@
+P7 332
+#IMGINFO:22x22 RGB (225 bytes)
+#END_OF_COMMENTS
+22 22 255
+I$II۶IH%I۶%HI%۶I$II۶IH%I۶%HI%۶I$II۶IH%I۶%HI%۶I$II۶IH%I۶%HI%۶۶I$II۶%H%I۶ڶ%H۶I$II۶)D)۶ֻ$I۶I$II۶I$۶۶$I۶I$II۶rD۶D)I$II۶I$IIII$II۶II$II۶I$II۶E(EI۶I$II۶$I(E۶۶I$II$II(׺׶$I۶I$II(EII׶H)۶I$IImڷ$IH%۶ڷ$I۶I$I۶$II$۶۶$II$II۶)D۶$I)H׺I$II۶rDI۶I$II۶I$II۶$IIڷH%IIڷI$II۶IH%I۶%HI%۶۶I$II۶%H%I۶ڶ%H۶I$II۶%H%I۶ڶ%H \ No newline at end of file
diff --git a/pics/.xvpics/exec.png b/pics/.xvpics/exec.png
new file mode 100644
index 0000000..d007311
--- /dev/null
+++ b/pics/.xvpics/exec.png
Binary files differ
diff --git a/pics/.xvpics/kshowmail.png b/pics/.xvpics/kshowmail.png
new file mode 100644
index 0000000..e7fb33e
--- /dev/null
+++ b/pics/.xvpics/kshowmail.png
Binary files differ
diff --git a/pics/.xvpics/kshowmail16.png b/pics/.xvpics/kshowmail16.png
new file mode 100644
index 0000000..76b81ac
--- /dev/null
+++ b/pics/.xvpics/kshowmail16.png
@@ -0,0 +1,5 @@
+P7 332
+#IMGINFO:16x16 RGB (515 bytes)
+#END_OF_COMMENTS
+16 16 255
+I$II۶IH%I۶I$II۶IH%I۶ڶIں$I۵$Hڻڻۺ׺$ڶڶڷ(ڻڒ)ۺۺڻ׶$ۺ׺ڻں($I%IHII%HII%HII۶I$II۶%H%I۶I$II۶%H%I۶I$II۶%H%I۶I$II۶%H%I \ No newline at end of file
diff --git a/pics/.xvpics/kshowmail24.png b/pics/.xvpics/kshowmail24.png
new file mode 100644
index 0000000..d65f70a
--- /dev/null
+++ b/pics/.xvpics/kshowmail24.png
Binary files differ
diff --git a/pics/.xvpics/letter-closed.png b/pics/.xvpics/letter-closed.png
new file mode 100644
index 0000000..c955f9e
--- /dev/null
+++ b/pics/.xvpics/letter-closed.png
Binary files differ
diff --git a/pics/.xvpics/letter-open.png b/pics/.xvpics/letter-open.png
new file mode 100644
index 0000000..16ab9d0
--- /dev/null
+++ b/pics/.xvpics/letter-open.png
Binary files differ
diff --git a/pics/.xvpics/mini-cross.png b/pics/.xvpics/mini-cross.png
new file mode 100644
index 0000000..18ed00e
--- /dev/null
+++ b/pics/.xvpics/mini-cross.png
Binary files differ
diff --git a/pics/.xvpics/ok.png b/pics/.xvpics/ok.png
new file mode 100644
index 0000000..9444e17
--- /dev/null
+++ b/pics/.xvpics/ok.png
Binary files differ
diff --git a/pics/.xvpics/reload.png b/pics/.xvpics/reload.png
new file mode 100644
index 0000000..ab83d81
--- /dev/null
+++ b/pics/.xvpics/reload.png
Binary files differ
diff --git a/pics/.xvpics/tool1.png b/pics/.xvpics/tool1.png
new file mode 100644
index 0000000..b556c9e
--- /dev/null
+++ b/pics/.xvpics/tool1.png
Binary files differ
diff --git a/pics/.xvpics/tool2.png b/pics/.xvpics/tool2.png
new file mode 100644
index 0000000..4123db3
--- /dev/null
+++ b/pics/.xvpics/tool2.png
Binary files differ
diff --git a/pics/Makefile.am b/pics/Makefile.am
new file mode 100644
index 0000000..c6acc8c
--- /dev/null
+++ b/pics/Makefile.am
@@ -0,0 +1,3 @@
+picsdir = $(kde_datadir)/kshowmail/pics
+pics_DATA = eraser.png kshowmail24.png kshowmail.png letter-closed.png\
+ letter-open.png ok.png tool.png
diff --git a/pics/eraser.png b/pics/eraser.png
new file mode 100644
index 0000000..079be7f
--- /dev/null
+++ b/pics/eraser.png
Binary files differ
diff --git a/pics/kshowmail.png b/pics/kshowmail.png
new file mode 100644
index 0000000..4781936
--- /dev/null
+++ b/pics/kshowmail.png
Binary files differ
diff --git a/pics/kshowmail16.png b/pics/kshowmail16.png
new file mode 100644
index 0000000..047df13
--- /dev/null
+++ b/pics/kshowmail16.png
Binary files differ
diff --git a/pics/kshowmail24.png b/pics/kshowmail24.png
new file mode 100644
index 0000000..e6b1166
--- /dev/null
+++ b/pics/kshowmail24.png
Binary files differ
diff --git a/pics/letter-closed.png b/pics/letter-closed.png
new file mode 100644
index 0000000..90dc3c9
--- /dev/null
+++ b/pics/letter-closed.png
Binary files differ
diff --git a/pics/letter-open.png b/pics/letter-open.png
new file mode 100644
index 0000000..ef12928
--- /dev/null
+++ b/pics/letter-open.png
Binary files differ
diff --git a/pics/ok.png b/pics/ok.png
new file mode 100644
index 0000000..0f5be4f
--- /dev/null
+++ b/pics/ok.png
Binary files differ
diff --git a/pics/tool.png b/pics/tool.png
new file mode 100644
index 0000000..b87d926
--- /dev/null
+++ b/pics/tool.png
Binary files differ
diff --git a/pics/tool1.png b/pics/tool1.png
new file mode 100644
index 0000000..f90b59c
--- /dev/null
+++ b/pics/tool1.png
Binary files differ
diff --git a/pics/tool3.png b/pics/tool3.png
new file mode 100644
index 0000000..3fff7ad
--- /dev/null
+++ b/pics/tool3.png
Binary files differ
diff --git a/po/Makefile.am b/po/Makefile.am
new file mode 100644
index 0000000..d0842bb
--- /dev/null
+++ b/po/Makefile.am
@@ -0,0 +1,8 @@
+####### kdevelop will overwrite this part!!! (begin)##########
+
+
+EXTRA_DIST = kshowmail.pot
+
+####### kdevelop will overwrite this part!!! (end)############
+POFILES = AUTO
+
diff --git a/po/cs.po b/po/cs.po
new file mode 100644
index 0000000..b6a69cf
--- /dev/null
+++ b/po/cs.po
@@ -0,0 +1,1908 @@
+# translation of cs.po to
+# translation of cs.po to
+# translation of cs.po to
+# translation of cs.po to
+# translation of kshowmail.po to
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
+# Robert Kratky <kratky@rob.cz>, 2004, 2005.
+# Robert Kratky <kratky@abclinuxu.cz>, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: cs\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-04-17 21:57+0200\n"
+"PO-Revision-Date: 2005-11-29 11:15+0100\n"
+"Last-Translator: Robert Kratky <kratky@abclinuxu.cz>\n"
+"Language-Team: <cs@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.10.2\n"
+
+#: _translatorinfo.cpp:1 main.cpp:65
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Robert Krátký"
+
+#: _translatorinfo.cpp:3 main.cpp:65
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "kratky@rob.cz"
+
+#: main.cpp:33
+msgid "A powerful pop3 mail checker"
+msgstr "Mocný program pro kontrolu POP3 pošty"
+
+#: main.cpp:40
+msgid "Refresh messages now"
+msgstr "Znovu načíst zprávy"
+
+#: main.cpp:42
+msgid "Launch configure dialog"
+msgstr "Otevřít okno nastavení"
+
+#: main.cpp:107
+msgid "Kshowmail is already running!"
+msgstr "KShowmail je již spuštěný!"
+
+#. i18n: file AlertDlg.ui line 16
+#: AlertDlg.cpp:262 rc.cpp:15
+#, no-c-format
+msgid "KShowmail"
+msgstr "KShowmail"
+
+#. i18n: file AlertDlg.ui line 27
+#: AlertDlg.cpp:263 rc.cpp:18 kcmconfigs/filtersetupitem.cpp:257
+#: kcmconfigs/filtersetupdialog.cpp:95 kcmconfigs/configfilter.cpp:133
+#, no-c-format
+msgid "Ignore"
+msgstr "Ignorovat"
+
+#. i18n: file AlertDlg.ui line 35
+#: AlertDlg.cpp:264 rc.cpp:21 kcmconfigs/configactions.cpp:49
+#, no-c-format
+msgid "Show main window"
+msgstr "Zobrazit hlavní okno"
+
+#. i18n: file AlertDlg.ui line 61
+#: AlertDlg.cpp:265 rc.cpp:24
+#, no-c-format
+msgid "New mail"
+msgstr "Přišla"
+
+#. i18n: file AlertDlg.ui line 76
+#: AlertDlg.cpp:266 rc.cpp:27
+#, no-c-format
+msgid "has arrived !"
+msgstr "nová pošta"
+
+#: serverdialog.cpp:44 kcmconfigs/accountsetupdialog.cpp:39
+msgid "Account:"
+msgstr "Účet:"
+
+#: serverdialog.cpp:47 serverdialog.cpp:48
+#: kcmconfigs/accountsetupdialog.cpp:42 kcmconfigs/accountsetupdialog.cpp:43
+msgid "Unique Account Name"
+msgstr ""
+
+#: serverdialog.cpp:52 kcmconfigs/accountsetupdialog.cpp:47
+msgid "Server:"
+msgstr "Server:"
+
+#: serverdialog.cpp:55 serverdialog.cpp:56
+#: kcmconfigs/accountsetupdialog.cpp:49 kcmconfigs/accountsetupdialog.cpp:50
+#, fuzzy
+msgid "Server Name"
+msgstr "Server"
+
+#: serverdialog.cpp:60 kcmconfigs/accountsetupdialog.cpp:54
+msgid "Protocol:"
+msgstr "Protokol:"
+
+#: serverdialog.cpp:63 serverdialog.cpp:64
+#: kcmconfigs/accountsetupdialog.cpp:57 kcmconfigs/accountsetupdialog.cpp:58
+msgid ""
+"Protocol, which shall be used to get the mails from the server. Currently "
+"KShowmail just supports POP3."
+msgstr ""
+
+#: serverdialog.cpp:68 kcmconfigs/accountsetupdialog.cpp:62
+msgid "Port:"
+msgstr "Port:"
+
+#: serverdialog.cpp:71 serverdialog.cpp:72
+#: kcmconfigs/accountsetupdialog.cpp:65 kcmconfigs/accountsetupdialog.cpp:66
+msgid "Port Number. Normally POP3 uses port 110."
+msgstr ""
+
+#: serverdialog.cpp:76 kcmconfigs/accountsetupdialog.cpp:70
+msgid "User:"
+msgstr "Uživatel:"
+
+#: serverdialog.cpp:78 serverdialog.cpp:79
+#: kcmconfigs/accountsetupdialog.cpp:72 kcmconfigs/accountsetupdialog.cpp:73
+msgid "To authenticate to the mail server you need an user name."
+msgstr ""
+
+#: serverdialog.cpp:84 kcmconfigs/accountsetupdialog.cpp:78
+#, fuzzy
+msgid "Password"
+msgstr "Heslo:"
+
+#: serverdialog.cpp:95 kcmconfigs/accountsetupdialog.cpp:89
+#, fuzzy
+msgid "Don't save"
+msgstr "Není shodné"
+
+#: serverdialog.cpp:96 kcmconfigs/accountsetupdialog.cpp:90
+#, fuzzy
+msgid "Save password"
+msgstr "&Uložit heslo"
+
+#: serverdialog.cpp:97 kcmconfigs/accountsetupdialog.cpp:91
+msgid "Use KWallet"
+msgstr ""
+
+#: serverdialog.cpp:101 kcmconfigs/accountsetupdialog.cpp:95
+msgid ""
+"Don't save password. KShowmail will ask you for it at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:102 kcmconfigs/accountsetupdialog.cpp:96
+msgid ""
+"Save password in the configuration file. Not recommended, because the "
+"password is just lightly encrypted"
+msgstr ""
+
+#: serverdialog.cpp:103 kcmconfigs/accountsetupdialog.cpp:97
+msgid ""
+"Use KWallet to save the password. Maybe you have to type in the KWallet "
+"master password at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:119 kcmconfigs/configdisplay.cpp:46
+#: kcmconfigs/accountsetupdialog.cpp:113 kshowmailview.cpp:53
+msgid "Active"
+msgstr "&Aktivní"
+
+#: serverdialog.cpp:120 kcmconfigs/accountsetupdialog.cpp:114
+#, fuzzy
+msgid "Select it to activate this account."
+msgstr "Vybrat POP3 účet"
+
+#: serverdialog.cpp:125 kcmconfigs/accountsetupdialog.cpp:119
+msgid "Encryption"
+msgstr ""
+
+#: serverdialog.cpp:135 kshowmailfeedback.cpp:57
+#: kcmconfigs/accountsetupdialog.cpp:129
+msgid "None"
+msgstr "Žádné"
+
+#: serverdialog.cpp:136 kcmconfigs/accountsetupdialog.cpp:130
+msgid "SSL"
+msgstr ""
+
+#: serverdialog.cpp:137 kcmconfigs/accountsetupdialog.cpp:131
+msgid "TLS"
+msgstr ""
+
+#: serverdialog.cpp:141 kcmconfigs/accountsetupdialog.cpp:135
+msgid ""
+"The download of the mail header and body will not be encrypted. Use this, if "
+"your provider doesn't make a secure transfer available."
+msgstr ""
+
+#: serverdialog.cpp:142 kcmconfigs/accountsetupdialog.cpp:136
+msgid ""
+"Secure Sockets Layer (SSL), is a cryptographic protocol that provides secure "
+"communications on the Internet."
+msgstr ""
+
+#: serverdialog.cpp:143 kcmconfigs/accountsetupdialog.cpp:137
+msgid ""
+"Transport Layer Security (TLS) is a cryptographic protocol that provides "
+"secure communications on the Internet. It is the successor of SSL."
+msgstr ""
+
+#: serverdialog.cpp:152 kcmconfigs/accountsetupdialog.cpp:145
+#, fuzzy
+msgid "General"
+msgstr "&Obecná nastavení"
+
+#: serverdialog.cpp:153 kcmconfigs/accountsetupdialog.cpp:146
+msgid "Security"
+msgstr ""
+
+#: serverdialog.cpp:157 kcmconfigs/accountsetupdialog.cpp:150
+msgid "New account"
+msgstr "Nový účet"
+
+#: serverdialog.cpp:159 kcmconfigs/accountsetupdialog.cpp:152
+msgid "Edit account"
+msgstr "Upravit účet"
+
+#: serverdialog.cpp:194 kcmconfigs/accountsetupdialog.cpp:187
+msgid "Please enter an server."
+msgstr ""
+
+#: serverdialog.cpp:200 kcmconfigs/accountsetupdialog.cpp:193
+msgid "Please enter an user name."
+msgstr ""
+
+#: kshowmailfeedback.cpp:31
+msgid "What is your general opinion about this program?"
+msgstr "Jaký je váš celkový názor na tento program?"
+
+#: kshowmailfeedback.cpp:33
+msgid "It's one of my favourites"
+msgstr "Je jedním z mých oblíbených"
+
+#: kshowmailfeedback.cpp:34
+msgid "I like it"
+msgstr "Líbí se mi"
+
+#: kshowmailfeedback.cpp:35
+msgid "It's sometimes useful"
+msgstr "Někdy je užitečný"
+
+#: kshowmailfeedback.cpp:36
+msgid "It's average"
+msgstr "Průměrný"
+
+#: kshowmailfeedback.cpp:37
+msgid "Nice try, but this could be done better"
+msgstr "Dobrý pokus, ale mohlo to být uděláno lépe"
+
+#: kshowmailfeedback.cpp:38
+msgid "It's poor"
+msgstr "Je to bída"
+
+#: kshowmailfeedback.cpp:39
+msgid "It's useless"
+msgstr "Je k ničemu"
+
+#: kshowmailfeedback.cpp:40
+msgid "It's crap"
+msgstr "Příšerný"
+
+#: kshowmailfeedback.cpp:42
+msgid "Which features of this program do you like?"
+msgstr "Které vlastnosti programu se vám líbí?"
+
+#: kshowmailfeedback.cpp:45
+msgid "What is your favourite feature?"
+msgstr "Jaká je vaše nejoblíbenější vlastnost?"
+
+#: kshowmailfeedback.cpp:48
+msgid "Which features don't you like?"
+msgstr "Které vlastnosti se vám nelíbí?"
+
+#: kshowmailfeedback.cpp:51
+msgid "Which features do you never use?"
+msgstr "Které funkce nikdy nepoužíváte?"
+
+#: kshowmailfeedback.cpp:54
+msgid "Are there features you are missing?"
+msgstr "Chybějí vám nějaké funkce?"
+
+#: kshowmailfeedback.cpp:55
+msgid "Yes, a lot! (please add comment below)"
+msgstr "Ano, a moc! (napište, prosím, níže)"
+
+#: kshowmailfeedback.cpp:56
+msgid "Some (please add comment below)"
+msgstr "Některé (napište, prosím, níže)"
+
+#: kshowmailfeedback.cpp:58
+msgid "It has too many features already!"
+msgstr "Už teď je funkcí moc."
+
+#: kshowmailfeedback.cpp:60
+msgid "How do you rate the stability of this program?"
+msgstr "Jak byste ohodnotili stabilitu programu?"
+
+#: kshowmailfeedback.cpp:61
+msgid "Rock solid"
+msgstr "Stabilní"
+
+#: kshowmailfeedback.cpp:62 kshowmailfeedback.cpp:69
+msgid "Good"
+msgstr "Dobrý"
+
+#: kshowmailfeedback.cpp:63 kshowmailfeedback.cpp:70 kshowmailfeedback.cpp:77
+#: kshowmailfeedback.cpp:84
+msgid "Average"
+msgstr "Průměr"
+
+#: kshowmailfeedback.cpp:64 kshowmailfeedback.cpp:71
+msgid "Poor"
+msgstr "Bída"
+
+#: kshowmailfeedback.cpp:65
+msgid "It keeps crashing all the time"
+msgstr "Pořád to padá"
+
+#: kshowmailfeedback.cpp:67
+msgid "How do you rate the performance of this program?"
+msgstr "Jak byste ohodnotili výkon programu?"
+
+#: kshowmailfeedback.cpp:68
+msgid "Great"
+msgstr "Skvělý"
+
+#: kshowmailfeedback.cpp:72
+msgid "It's so slow it drives me nuts"
+msgstr "Je tak pomalý, že z toho šílím"
+
+#: kshowmailfeedback.cpp:74
+msgid "What is your experience with computers in general?"
+msgstr "Jak zkušený jste uživatel počítačů?"
+
+#: kshowmailfeedback.cpp:75 kshowmailfeedback.cpp:82
+msgid "Expert"
+msgstr "Expert"
+
+#: kshowmailfeedback.cpp:76 kshowmailfeedback.cpp:83
+msgid "Fair"
+msgstr "Zdatný"
+
+#: kshowmailfeedback.cpp:78 kshowmailfeedback.cpp:85
+msgid "Learning"
+msgstr "Učím se"
+
+#: kshowmailfeedback.cpp:79 kshowmailfeedback.cpp:86
+msgid "Newbie"
+msgstr "Nováček"
+
+#: kshowmailfeedback.cpp:81
+msgid "What is your experience with Unix/Linux systems?"
+msgstr "Jak hodně rozumíte unixovým/linuxovým systémům?"
+
+#: kshowmailfeedback.cpp:88
+msgid "Did you have trouble figuring out how to work with this program?"
+msgstr "Měli jste potíže přijít na to, jak pracovat s tímto programem?"
+
+#: kshowmailfeedback.cpp:90
+msgid "No problem"
+msgstr "Žádný problém"
+
+#: kshowmailfeedback.cpp:91
+msgid "Some"
+msgstr "Trochu"
+
+#: kshowmailfeedback.cpp:92
+msgid "I'm still learning"
+msgstr "Stále se učím"
+
+#: kshowmailfeedback.cpp:93
+msgid "I didn't have a clue what to do at first"
+msgstr "Zpočátku jsem neměl tušení, co dělat"
+
+#: kshowmailfeedback.cpp:94
+msgid "I still don't have a clue what to do"
+msgstr "Stále nemám tušení, co dělat"
+
+#: kshowmailfeedback.cpp:96
+msgid "Where do you use this program most?"
+msgstr "Kde tento program nejvíce používáte?"
+
+#: kshowmailfeedback.cpp:97
+msgid "At work"
+msgstr "V práci"
+
+#: kshowmailfeedback.cpp:98
+msgid "At home"
+msgstr "Doma"
+
+#: kshowmailfeedback.cpp:99
+msgid "At university / school"
+msgstr "Ve škole"
+
+#: kshowmailfeedback.cpp:101
+msgid "What is your primary role there?"
+msgstr "Jaká je tam vaše role?"
+
+#: kshowmailfeedback.cpp:102 kshowmailfeedback.cpp:110
+msgid "Home user"
+msgstr "Domácí uživatel"
+
+#: kshowmailfeedback.cpp:103 kshowmailfeedback.cpp:111
+msgid "Student"
+msgstr "Student"
+
+#: kshowmailfeedback.cpp:104 kshowmailfeedback.cpp:112
+msgid "Educational (teacher / professor)"
+msgstr "Výuková (učitel/profesor)"
+
+#: kshowmailfeedback.cpp:105 kshowmailfeedback.cpp:113
+msgid "Non-computer related work"
+msgstr "Nesouvisí s počítači"
+
+#: kshowmailfeedback.cpp:106 kshowmailfeedback.cpp:114
+msgid "Developer"
+msgstr "Vývojář"
+
+#: kshowmailfeedback.cpp:107 kshowmailfeedback.cpp:115
+msgid "System administrator"
+msgstr "Systémový administrátor"
+
+#: kshowmailfeedback.cpp:109
+msgid "Do you have any other roles there?"
+msgstr "Máte ještě jiné role?"
+
+#: kshowmailfeedback.cpp:117
+msgid "How did you get to know this program?"
+msgstr "Jak jste se dozvěděli o tomto programu?"
+
+#: kshowmailfeedback.cpp:118
+msgid "In a menu on my machine"
+msgstr "V menu mého systému"
+
+#: kshowmailfeedback.cpp:119
+msgid "Somebody told me about it"
+msgstr "Někdo mi o něm řekl"
+
+#: kshowmailfeedback.cpp:120
+msgid "On the internet"
+msgstr "Na internetu"
+
+#: kshowmailfeedback.cpp:121
+msgid "Printed magazine / book"
+msgstr "V tištěné knize/magazínu"
+
+#: kshowmailfeedback.cpp:122
+msgid "Other (please add comment below)"
+msgstr "Jinak (napište, prosím, níže)"
+
+#: kshowmailfeedback.cpp:124
+msgid "Would you recommend this program to a friend?"
+msgstr "Doporučili byste tento program kamarádům?"
+
+#: kshowmailfeedback.cpp:132
+msgid "The message list display in general"
+msgstr "Zobrazení seznamu zpráv"
+
+#: kshowmailfeedback.cpp:133
+msgid "Display of message headers"
+msgstr "Zobrazení hlaviček zpráv"
+
+#: kshowmailfeedback.cpp:134
+msgid "Display of complete messages"
+msgstr "Zobrazení kompletních zpráv"
+
+#: kshowmailfeedback.cpp:136
+msgid "Filters"
+msgstr "Filtry"
+
+#: kshowmailfeedback.cpp:137
+msgid "Manual delete of unwanted messages"
+msgstr "Ruční mazání nechtěných zpráv"
+
+#: kshowmailfeedback.cpp:138
+#, fuzzy
+msgid "Automatic move of filtered messages"
+msgstr "Automatické mazání filtrovaných zpráv"
+
+#: kshowmailfeedback.cpp:139
+msgid "Automatic delete of filtered messages"
+msgstr "Automatické mazání filtrovaných zpráv"
+
+#: kshowmailfeedback.cpp:140
+#, fuzzy
+msgid "Automatic mark of filtered messages"
+msgstr "Automatické mazání filtrovaných zpráv"
+
+#: kshowmailfeedback.cpp:141
+#, fuzzy
+msgid "Ignoring of filtered messages"
+msgstr "Ruční mazání filtrovaných zpráv"
+
+#: kshowmailfeedback.cpp:142
+msgid "Integration of SpamAssassin"
+msgstr ""
+
+#: kshowmailfeedback.cpp:143
+#, fuzzy
+msgid "White- and Blacklist"
+msgstr "&Vyprázdnit seznam"
+
+#: kshowmailfeedback.cpp:144
+#, fuzzy
+msgid "Filter Log"
+msgstr "Filtr"
+
+#: kshowmailfeedback.cpp:145
+msgid "Filter messages by regular expressions"
+msgstr "Filtrování zpráv pomocí regulárních výrazů"
+
+#: kshowmailfeedback.cpp:148
+msgid "Sorting of messages by size, date etc."
+msgstr "Třídění zpráv podle velikosti, data, atd."
+
+#: kshowmailfeedback.cpp:150
+msgid "Play sound"
+msgstr "Přehrávání zvuků"
+
+#: kshowmailfeedback.cpp:151
+msgid "Play beep"
+msgstr "Přehrávání pípnutí"
+
+#: kshowmailfeedback.cpp:152
+msgid "Initial timer"
+msgstr "Počáteční časovač"
+
+#: kshowmailfeedback.cpp:153
+msgid "Interval timer"
+msgstr "Intervalový časovač"
+
+#: kshowmailfeedback.cpp:154
+msgid "This feedback survey :-)"
+msgstr "Tento průzkum názorů :-)"
+
+#: configelem.cpp:294
+msgid "Please type in the password for %1"
+msgstr ""
+
+#: configelem.cpp:515
+msgid "Time out on %1. The operation could not be finished on time"
+msgstr ""
+
+#: configelem.cpp:515
+#, fuzzy
+msgid "Time Out"
+msgstr "Čas"
+
+#: configelem.cpp:1647
+msgid ""
+"You want to check your mails for spam, but SpamAssassin is not running.\n"
+"KShowmail skips the spam check."
+msgstr ""
+
+#: configelem.cpp:1647
+msgid "SpamAssassin is not running"
+msgstr ""
+
+#: kfeedback.cpp:35
+msgid "Feedback"
+msgstr "Názory"
+
+#: kfeedback.cpp:39
+msgid "&Mail this..."
+msgstr "&Odeslat..."
+
+#: kfeedback.cpp:89
+msgid ""
+"<p><b>Please tell us your opinion about this program.</b></p><p>You will be "
+"able to review everything in your mailer before any mail is sent.<br>Nothing "
+"will be sent behind your back.</p>"
+msgstr ""
+"<p><b>Napište nám, co si o tomto programu myslíte.</b></p><p>Před odesláním "
+"budete moci vše zkontrolovat ve vašem poštovním programu.<br>Nic nebude "
+"odesláno bez vašeho vědomí.</p>"
+
+#: kfeedback.cpp:114
+msgid "Questions marked with "
+msgstr "Otázky označené "
+
+#: kfeedback.cpp:123
+msgid " must be answered before a mail can be sent."
+msgstr " musí být zodpovězeny před odesláním emailu."
+
+#: kfeedback.cpp:134
+msgid "&Additional comments:"
+msgstr "&Další komentář:"
+
+#: kfeedback.cpp:312
+msgid "yes"
+msgstr "ano"
+
+#: kfeedback.cpp:313
+msgid "no"
+msgstr "ne"
+
+#: showheaderdialog.cpp:28 showmaildialog.cpp:39
+msgid "Subject:"
+msgstr "Předmět:"
+
+#. i18n: file kshowmailui.rc line 4
+#: rc.cpp:3
+#, no-c-format
+msgid "&Actions"
+msgstr "&Akce"
+
+#: showmaildialog.cpp:15
+msgid "Reply"
+msgstr "Odpovědět"
+
+#: showmaildialog.cpp:30
+msgid "Sender:"
+msgstr "Odesilatel:"
+
+#: showmaildialog.cpp:33
+msgid "Date:"
+msgstr "Datum:"
+
+#: showmaildialog.cpp:36
+msgid "Size:"
+msgstr "Velikost:"
+
+#: kshowmaildock.cpp:37
+msgid "KShowmail: a powerful pop3 email checker"
+msgstr "KShowmail: mocný program pro kontrolu POP3 pošty"
+
+#: kcmconfigs/filtercriteriawidget.cpp:26 kcmconfigs/configdisplay.cpp:78
+#: kshowmailview.cpp:71
+msgid "From"
+msgstr "Od"
+
+#: kcmconfigs/filtercriteriawidget.cpp:27 kcmconfigs/configdisplay.cpp:82
+#: kshowmailview.cpp:72
+msgid "To"
+msgstr "Komu"
+
+#: kcmconfigs/filtercriteriawidget.cpp:28
+msgid "Size (Bytes)"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:29 kshowmailview.cpp:73
+#: filterlogview.cpp:38 filterlogview.cpp:66
+msgid "Subject"
+msgstr "Předmět"
+
+#: kcmconfigs/filtercriteriawidget.cpp:30
+msgid "Header"
+msgstr "Hlavička"
+
+#: kcmconfigs/filtercriteriawidget.cpp:31 kcmconfigs/configdisplay.cpp:50
+#: kcmconfigs/configdisplay.cpp:74 kshowmailview.cpp:54 kshowmailview.cpp:70
+#: filterlogview.cpp:37 filterlogview.cpp:64
+msgid "Account"
+msgstr "Účet"
+
+#: kcmconfigs/filtercriteriawidget.cpp:48
+#, fuzzy
+msgid "contains"
+msgstr "Obsahuje"
+
+#: kcmconfigs/filtercriteriawidget.cpp:49
+#, fuzzy
+msgid "does not contain"
+msgstr "Neobsahuje"
+
+#: kcmconfigs/filtercriteriawidget.cpp:50
+#, fuzzy
+msgid "equals"
+msgstr "Shodné"
+
+#: kcmconfigs/filtercriteriawidget.cpp:51
+#, fuzzy
+msgid "does not equal"
+msgstr "Není shodné"
+
+#: kcmconfigs/filtercriteriawidget.cpp:52
+#, fuzzy
+msgid "matches regular expression"
+msgstr "Upravit regulární výraz"
+
+#: kcmconfigs/filtercriteriawidget.cpp:53
+msgid "does not match reg. expr."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:69
+msgid "is equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:70
+#, fuzzy
+msgid "is not equal to"
+msgstr "Není shodné"
+
+#: kcmconfigs/filtercriteriawidget.cpp:71
+msgid "is greater than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:72
+msgid "is greater than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:73
+msgid "is less than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:74
+msgid "is less than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:107
+msgid "Case sensitive"
+msgstr "Rozlišovat velká/malá"
+
+#: kcmconfigs/filtercriteriawidget.cpp:196
+msgid "The Regular Expression Editor could not be initilized."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:211
+msgid "The Regular Expression Editor is not available."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:34
+#, fuzzy
+msgid "Log mails deleted by filter"
+msgstr "Smazat filtr"
+
+#: kcmconfigs/configlog.cpp:36
+msgid "Check to activate the log of mails deleted by filter."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:46 kcmconfigs/configlog.cpp:78
+msgid "Remove log entries at exit"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:52 kcmconfigs/configlog.cpp:84
+msgid "Remove log entries after"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:58 kcmconfigs/configlog.cpp:90
+msgid " Days"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:66
+msgid "Log mails moved by filter"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:68
+msgid "Check to activate the log of mails moved by filter."
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:33
+msgid "Account list"
+msgstr "Seznam účtů"
+
+#: kcmconfigs/configdisplay.cpp:35
+msgid "Mail list"
+msgstr "Seznam zpráv"
+
+#: kcmconfigs/configdisplay.cpp:37
+msgid "Mail content"
+msgstr "Obsah zprávy"
+
+#: kcmconfigs/configdisplay.cpp:47
+msgid "To switch on/off the 'Active' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:51
+msgid "To switch on/off the 'Account' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:54 kshowmailview.cpp:55
+msgid "Server"
+msgstr "Server"
+
+#: kcmconfigs/configdisplay.cpp:55
+msgid "To switch on/off the 'Server' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:58 kshowmailview.cpp:56
+msgid "User"
+msgstr "Uživatel"
+
+#: kcmconfigs/configdisplay.cpp:59
+msgid "To switch on/off the 'User' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:62 kshowmailview.cpp:57
+msgid "Messages"
+msgstr "Zprávy"
+
+#: kcmconfigs/configdisplay.cpp:63
+msgid "To switch on/off the 'Messages' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:66
+msgid "Si&ze"
+msgstr "&Velikost"
+
+#: kcmconfigs/configdisplay.cpp:67
+msgid "To switch on/off the 'Size' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:70 kshowmailview.cpp:69
+msgid "Number"
+msgstr "Číslo"
+
+#: kcmconfigs/configdisplay.cpp:71
+msgid "To switch on/off the 'Number' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:75
+msgid "To switch on/off the 'Account' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:79
+msgid "To switch on/off the 'From' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:83
+msgid "To switch on/off the 'To' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:86
+msgid "Su&bject"
+msgstr "Pře&dmět"
+
+#: kcmconfigs/configdisplay.cpp:87
+msgid "To switch on/off the 'Subject' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:90 kshowmailview.cpp:74 filterlogview.cpp:35
+#: filterlogview.cpp:62
+msgid "Date"
+msgstr "Datum"
+
+#: kcmconfigs/configdisplay.cpp:91
+msgid "To switch on/off the 'Date' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:94 kshowmailview.cpp:58 kshowmailview.cpp:75
+msgid "Size"
+msgstr "Velikost"
+
+#: kcmconfigs/configdisplay.cpp:95
+msgid "To switch on/off the 'Size' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:98 kshowmailview.cpp:76
+msgid "Content"
+msgstr "Obsah"
+
+#: kcmconfigs/configdisplay.cpp:99
+msgid "To switch on/off the 'Content' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:102 kshowmailview.cpp:77
+msgid "State"
+msgstr "Stav"
+
+#: kcmconfigs/configdisplay.cpp:103
+msgid "To switch on/off the 'State' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:106
+msgid "Allow HTML"
+msgstr "Povolit HTML"
+
+#: kcmconfigs/configdisplay.cpp:107
+msgid "To switch on/off HTML in the message view"
+msgstr ""
+
+#: kcmconfigs/configaccounts.cpp:34 kcmconfigs/configfilter.cpp:71
+#, fuzzy
+msgid "Name"
+msgstr "Název:"
+
+#: kcmconfigs/configaccounts.cpp:194
+msgid "Do you really want to remove account %1?"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:33
+msgid "Action if new &mail"
+msgstr "Akce při no&vé poště"
+
+#: kcmconfigs/configactions.cpp:34
+msgid "Action if &no mail"
+msgstr "Akce při žádné &nové poště"
+
+#: kcmconfigs/configactions.cpp:45
+msgid "Show message box"
+msgstr "Zobrazit okno s upozorněním"
+
+#: kcmconfigs/configactions.cpp:46
+msgid "Show message if new mail arrives"
+msgstr "Zobrazit upozornění při nové poště"
+
+#: kcmconfigs/configactions.cpp:50
+msgid "Show main window if new mail arrives"
+msgstr "Zobrazit hlavní okno při příchodu nové pošty"
+
+#: kcmconfigs/configactions.cpp:53
+msgid "&Beep"
+msgstr "&Pípnout"
+
+#: kcmconfigs/configactions.cpp:54
+msgid "Beeps the internal speaker if new mail"
+msgstr "Při nové poště pípne interním reproduktorem"
+
+#: kcmconfigs/configactions.cpp:57
+#, fuzzy
+msgid "Sound:"
+msgstr "Zvuk"
+
+#: kcmconfigs/configactions.cpp:58
+msgid "Plays sound if new mail"
+msgstr "Přehraje zvuk při nové poště"
+
+#: kcmconfigs/configactions.cpp:61
+msgid "Play the selected sound file"
+msgstr "Přehrát zvolený zvukový soubor"
+
+#: kcmconfigs/configactions.cpp:67
+msgid "Press to select sound file"
+msgstr "Stiskněte pro výběr zvukového souboru"
+
+#: kcmconfigs/configactions.cpp:70
+msgid "Command:"
+msgstr "Příkaz:"
+
+#: kcmconfigs/configactions.cpp:71
+msgid "Starts external program if new mail"
+msgstr "Spustí externí program při nové poště"
+
+#: kcmconfigs/configactions.cpp:74
+msgid "Start the selected program"
+msgstr "Spustit zvolený program"
+
+#: kcmconfigs/configactions.cpp:80 kcmconfigs/configactions.cpp:213
+msgid "Select external command"
+msgstr "Zvolit externí příkaz"
+
+#: kcmconfigs/configactions.cpp:84
+msgid "Minimi&ze"
+msgstr "Minimali&zovat"
+
+#: kcmconfigs/configactions.cpp:85
+msgid "Minimize window if no new mail"
+msgstr "Minimalizovat okno, není-li žádná nová pošta"
+
+#: kcmconfigs/configactions.cpp:87
+msgid "Terminate"
+msgstr "Ukončit"
+
+#: kcmconfigs/configactions.cpp:88
+msgid "Terminate kshowmail if no new mail"
+msgstr "Ukončit KShowmail, není-li žádná nová pošta"
+
+#: kcmconfigs/configactions.cpp:203
+#, fuzzy
+msgid "Sound files (*.wav, *.ogg)"
+msgstr "Soubory wav (*.wav)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "All files (*)"
+msgstr "Všechny soubory (*)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "Select Sound File"
+msgstr "Vybrat zvukový soubor"
+
+#: kcmconfigs/configspamcheck.cpp:37
+msgid ""
+"KShowmail uses SpamAssassin to check the mails for spam. You have to "
+"install, configure and start the SpamAssassin daemon, before you can use "
+"this service."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:48
+#, fuzzy
+msgid "Action for Spam"
+msgstr "Akce při žádné &nové poště"
+
+#: kcmconfigs/configspamcheck.cpp:54
+msgid "Choose the action for spam mails."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:60 kcmconfigs/senderlistdialog.cpp:59
+#: kcmconfigs/filtersetupitem.cpp:255 kcmconfigs/filtersetupdialog.cpp:92
+#: kcmconfigs/configfilter.cpp:130
+msgid "Mark"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:71 kcmconfigs/filtersetupdialog.cpp:104
+#: kcmconfigs/configfilter.cpp:143
+msgid "Choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:190 kcmconfigs/filtersetupdialog.cpp:442
+#: kcmconfigs/configfilter.cpp:603
+#, fuzzy
+msgid "Mailbox Select"
+msgstr "Seznam zpráv"
+
+#: kcmconfigs/configspamcheck.cpp:226
+msgid "SpamAssassin is running."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:226 kcmconfigs/configspamcheck.cpp:231
+msgid "Check for SpamAssassin"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:231
+msgid "SpamAssassin is not running."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:27
+msgid "Press to choose the mail directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:32
+msgid ""
+"Please choose the path to the mailboxes.\n"
+"KShowmail supports only MailDir boxes."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:47
+msgid "Please choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:65
+msgid "Choose the mailbox directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:134
+msgid "Inbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:136
+msgid "Outbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:138
+#, fuzzy
+msgid "Drafts"
+msgstr "Datum"
+
+#: kcmconfigs/mailboxwizard.cpp:140
+msgid "sent-mail"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:142
+msgid "Trash"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:39
+msgid "List"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:41
+msgid ""
+"A mail whose sender is listed here will pass the filter.\n"
+"A mail will be accepted, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is accepted by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:43
+msgid ""
+"A mail whose sender is listed here will be hold up by the filter.\n"
+"A mail will be stopped, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is filtered by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:53 kcmconfigs/configfilter.cpp:72
+#, fuzzy
+msgid "Action"
+msgstr "&Akce"
+
+#: kcmconfigs/senderlistdialog.cpp:64
+msgid "The mails will be deleted."
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:65
+msgid "The mails will be marked."
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:253 kcmconfigs/filtersetupdialog.cpp:90
+#: kcmconfigs/configfilter.cpp:128
+#, fuzzy
+msgid "Show"
+msgstr "KShowmail"
+
+#: kcmconfigs/filtersetupitem.cpp:256
+msgid "Move to %1"
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:258
+#, fuzzy
+msgid "Check for spam"
+msgstr "Akce při žádné &nové poště"
+
+#: kcmconfigs/filtersetupitem.cpp:259
+msgid "Unknown action"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:37
+msgid "&Timers"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:44
+msgid "Confirm Close"
+msgstr "Potvrdit ukonč&ení"
+
+#: kcmconfigs/configgeneral.cpp:45
+#, fuzzy
+msgid "If checked, window close must be confirmed"
+msgstr "Je-li zaškrtnuto, vymazání zprávy je nutné potvrdit"
+
+#: kcmconfigs/configgeneral.cpp:48
+msgid "Confirm delete"
+msgstr "Po&tvrdit smazání"
+
+#: kcmconfigs/configgeneral.cpp:49
+msgid "If checked, message delete must be confirmed"
+msgstr "Je-li zaškrtnuto, vymazání zprávy je nutné potvrdit"
+
+#: kcmconfigs/configgeneral.cpp:52
+msgid "Start Minimi&zed"
+msgstr "Spust&it minimalizované"
+
+#: kcmconfigs/configgeneral.cpp:53
+msgid "Application is started as icon"
+msgstr "Aplikace je spuštěna jako ikona"
+
+#: kcmconfigs/configgeneral.cpp:56
+msgid "Close to tray"
+msgstr "Zavřít &do systémové části panelu"
+
+#: kcmconfigs/configgeneral.cpp:57
+msgid "Close button leaves the application running in tray"
+msgstr "Tlačítko ponechá aplikaci běžet v systémové části panelu"
+
+#: kcmconfigs/configgeneral.cpp:60
+msgid "Minimize to tray"
+msgstr "&Minimalizovat do systémové části panelu"
+
+#: kcmconfigs/configgeneral.cpp:61
+msgid "Minimizes to the tray rather than to the taskbar"
+msgstr "Minimalizuje do systémové části panelu místo do pruhu úloh"
+
+#: kcmconfigs/configgeneral.cpp:64
+msgid "Show Connection Errors during refresh"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:65
+msgid ""
+"If a connection error occurs during refresh (e.g. unknown server), an error "
+"message will be shown. During other actions, this error always will be shown"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:68
+msgid "&Keep mail as new"
+msgstr "Ponechat &zprávy jako nové"
+
+#: kcmconfigs/configgeneral.cpp:69
+msgid "Keep mail as new until termination"
+msgstr "Ponechat zprávy jako nové, dokud není ukončeno"
+
+#: kcmconfigs/configgeneral.cpp:72
+msgid "Initial Timer:"
+msgstr "Počáteční časovač:"
+
+#: kcmconfigs/configgeneral.cpp:73 kcmconfigs/configgeneral.cpp:91
+msgid "[Seconds]"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:75 kcmconfigs/configgeneral.cpp:76
+msgid "Seconds until first automatic logon (0 = no automatic)"
+msgstr ""
+"Vteřin do prvního automatického přihlášení (0 = nepřihlašovat automaticky)"
+
+#: kcmconfigs/configgeneral.cpp:81
+msgid "Interval Timer:"
+msgstr "Intervalový časovač:"
+
+#: kcmconfigs/configgeneral.cpp:82
+msgid "[Minutes]"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:84 kcmconfigs/configgeneral.cpp:85
+msgid "Minutes between automatic logon (0 = no automatic)"
+msgstr "Minut mezi automatickými přihlášeními (0 = nepřihlašovat automaticky)"
+
+#: kcmconfigs/configgeneral.cpp:90
+#, fuzzy
+msgid "Timeout:"
+msgstr "Čas"
+
+#: kcmconfigs/configgeneral.cpp:93 kcmconfigs/configgeneral.cpp:94
+msgid "Seconds until a server connect will be canceled"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:23
+#, fuzzy
+msgid "New filter"
+msgstr "Přidat filtr"
+
+#: kcmconfigs/filtersetupdialog.cpp:25
+msgid "Edit filter"
+msgstr "Upravit filtr"
+
+#: kcmconfigs/filtersetupdialog.cpp:34
+#, fuzzy
+msgid "Name:"
+msgstr "Název:"
+
+#: kcmconfigs/filtersetupdialog.cpp:40
+#, fuzzy
+msgid "Filter Criterias"
+msgstr "Stav filtru"
+
+#: kcmconfigs/filtersetupdialog.cpp:44
+#, fuzzy
+msgid "Filter Action"
+msgstr "FilterDialog"
+
+#: kcmconfigs/filtersetupdialog.cpp:52
+msgid "Match all of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:53
+msgid "Match any of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+#, fuzzy
+msgid "More"
+msgstr "Ignorovat"
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+msgid "Add a further criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Fewer"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Remove the last criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:86
+msgid "Choose the action for all mails which are filtered by this filter."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:94 kcmconfigs/configfilter.cpp:132
+msgid "Spamcheck"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:33
+#, fuzzy
+msgid "Activate Filter"
+msgstr "Upravit filtr"
+
+#: kcmconfigs/configfilter.cpp:35
+msgid "Check to activate the header filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:41
+msgid "First Check: Sender Lists"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:45
+msgid "Whitelist"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:46
+msgid ""
+"Click here to edit the list of senders whose mails shall pass the filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:52
+#, fuzzy
+msgid "Blacklist"
+msgstr "&Vyprázdnit seznam"
+
+#: kcmconfigs/configfilter.cpp:53
+msgid ""
+"Click here to edit the list of senders whose mails shall be deleted or "
+"marked."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:65
+msgid "Second Check: Filters"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:70
+msgid "No."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:86
+msgid "Moves the selected filter at the top"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:87
+#, fuzzy
+msgid "Moves the selected filter up"
+msgstr "Přehrát zvolený zvukový soubor"
+
+#: kcmconfigs/configfilter.cpp:88
+#, fuzzy
+msgid "Moves the selected filter down"
+msgstr "Přehrát zvolený zvukový soubor"
+
+#: kcmconfigs/configfilter.cpp:89
+msgid "Moves the selected filter at the bottm"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:116
+msgid "Third Check: Action for all others"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:123
+msgid ""
+"Choose the action for all mails which are not filtered by the steps before."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:17 kcmconfigs/kwalletaccess.cpp:86
+#: kwalletaccess.cpp:17 kwalletaccess.cpp:86
+msgid "KWallet is not available."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:25 kcmconfigs/kwalletaccess.cpp:94
+#: kwalletaccess.cpp:25 kwalletaccess.cpp:94
+msgid "Could not get wallet name for network datas from KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:45 kcmconfigs/kwalletaccess.cpp:114
+#: kwalletaccess.cpp:45 kwalletaccess.cpp:114
+msgid "Could not open KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:56 kwalletaccess.cpp:56
+msgid "Could not create folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:65 kcmconfigs/kwalletaccess.cpp:122
+#: kwalletaccess.cpp:65 kwalletaccess.cpp:122
+msgid "Could not open folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:73 kwalletaccess.cpp:73
+msgid "Could not save password in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:132 kwalletaccess.cpp:132
+msgid "Could not get password of account %1 from KWallet."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:182
+msgid "Please enter an account name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:228
+msgid "There is already an account named %1. Please choose another name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:241
+msgid ""
+"You have changed the account name. The account will lose all downloaded mail "
+"headers. Please perform a refresh."
+msgstr ""
+
+#: filterlog.cpp:128
+msgid "Could not save the filter log."
+msgstr ""
+
+#: showrecordelem.cpp:160
+msgid "new"
+msgstr "nové"
+
+#: showrecordelem.cpp:162
+msgid "old"
+msgstr "staré"
+
+#: filterlogview.cpp:21
+msgid "Filter Log View"
+msgstr ""
+
+#: filterlogview.cpp:31
+#, fuzzy
+msgid "Deleted Mails:"
+msgstr "Smazat filtr"
+
+#: filterlogview.cpp:36 filterlogview.cpp:63
+#, fuzzy
+msgid "Sender"
+msgstr "Odesilatel:"
+
+#: filterlogview.cpp:49
+msgid "Clear the list of deleted mails"
+msgstr ""
+
+#: filterlogview.cpp:58
+msgid "Moved Mails:"
+msgstr ""
+
+#: filterlogview.cpp:65
+msgid "Moved To"
+msgstr ""
+
+#: filterlogview.cpp:78
+msgid "Clear the list of moved mails"
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid ""
+"Thank You for using KShowmail.\n"
+"Please use the feedback dialog to tell us your experience with this program."
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid "Welcome"
+msgstr ""
+
+#: kshowmail.cpp:102
+msgid "Autorefresh: %1"
+msgstr "Automatické načtení: %1"
+
+#: kshowmail.cpp:132
+msgid "&Refresh messages"
+msgstr "&Znovu načíst zprávy"
+
+#: kshowmail.cpp:133
+msgid "Show &header of highlighted messages"
+msgstr "Zobrazit &hlavičky vybraných zpráv"
+
+#: kshowmail.cpp:134
+msgid "Show &complete highlighted messages"
+msgstr "Zobrazit vybrané zprávy &kompletní"
+
+#: kshowmail.cpp:135
+msgid "&Delete highlighted messages"
+msgstr "&Smazat vybrané zprávy"
+
+#: kshowmail.cpp:136
+msgid "S&top current transfer"
+msgstr "Zastavit &aktuální přenos"
+
+#: kshowmail.cpp:137
+msgid "Show Filter Log"
+msgstr ""
+
+#: kshowmail.cpp:138
+msgid "Add sender to whitelist"
+msgstr ""
+
+#: kshowmail.cpp:139
+msgid "Add sender to blacklist"
+msgstr ""
+
+#: kshowmail.cpp:150
+msgid "Send &Feedback Mail"
+msgstr "Poslat zprávu s &názory"
+
+#: kshowmail.cpp:153
+msgid "Setup &account"
+msgstr "N&astavení účtu"
+
+#: kshowmail.cpp:159 kshowmail.cpp:543 kshowmail.cpp:559 kshowmail.cpp:644
+msgid "Ready."
+msgstr "Připraven."
+
+#: kshowmail.cpp:165
+msgid ""
+"Shows the number of deleted, moved or ignored mails by the filter.\n"
+"The positions denotes:\n"
+"by last refresh / since application start / listed by the log"
+msgstr ""
+
+#: kshowmail.cpp:326
+msgid "Refreshing ..."
+msgstr ""
+
+#: kshowmail.cpp:363
+msgid "Job was stopped"
+msgstr "Úloha zastavena"
+
+#: kshowmail.cpp:392
+msgid "%1 message(s) with a total of %2 bytes are waiting"
+msgstr "Fronta: %1 zpráv(a/y) o velikosti %2 bajtů"
+
+#: kshowmail.cpp:418
+msgid "Do you want to delete these mails?"
+msgstr ""
+
+#: kshowmail.cpp:418
+#, fuzzy
+msgid "Delete?"
+msgstr "Smazané"
+
+#: kshowmail.cpp:428
+msgid "Deleting Mail(s) ..."
+msgstr ""
+
+#: kshowmail.cpp:469
+msgid "Downloading ..."
+msgstr ""
+
+#: kshowmail.cpp:491
+#, fuzzy
+msgid "Last Refresh: %1"
+msgstr "Automatické načtení: %1"
+
+#: kshowmail.cpp:523
+msgid ""
+"KShowmail will be closed.\n"
+"Are you sure?"
+msgstr ""
+"KShowmail bude ukončen.\n"
+"Chcete pokračovat?"
+
+#: kshowmail.cpp:805
+msgid "Filter: Deleted: %1/%2/%3; Moved: %4/%5/%6; Ignored: %7"
+msgstr ""
+
+#~ msgid "Execute user commands"
+#~ msgstr "Vykonávání uživatelských příkazů"
+
+#, fuzzy
+#~ msgid "Pass"
+#~ msgstr "Heslo:"
+
+#~ msgid "Condition"
+#~ msgstr "Podmínka"
+
+#~ msgid "Contains"
+#~ msgstr "Obsahuje"
+
+#~ msgid "Doesn't contain"
+#~ msgstr "Neobsahuje"
+
+#~ msgid "Equals"
+#~ msgstr "Shodné"
+
+#~ msgid "Doesn't equal"
+#~ msgstr "Není shodné"
+
+#~ msgid "Greater"
+#~ msgstr "Větší"
+
+#~ msgid "Less"
+#~ msgstr "Méně"
+
+#~ msgid "No more Conditions"
+#~ msgstr "Žádné další podmínky"
+
+#~ msgid "And"
+#~ msgstr "a"
+
+#~ msgid "Or"
+#~ msgstr "nebo"
+
+#~ msgid "Edit regular expression"
+#~ msgstr "Upravit regulární výraz"
+
+#~ msgid "Regular Expression"
+#~ msgstr "Regulární výraz"
+
+#~ msgid "For help about regular expressions lookup the Qt documentation"
+#~ msgstr "Nápovědu k regulárním výrazům naleznete v dokumentaci Qt"
+
+#~ msgid "second Condition"
+#~ msgstr "druhá podmínka"
+
+#~ msgid "Counter"
+#~ msgstr "Počítadlo"
+
+#~ msgid ""
+#~ "<qt>Filters are counted for each automatic deletion;<br>Filters with high "
+#~ "counters are listed first</qt>"
+#~ msgstr ""
+#~ "<qt>Filtry jsou počítány za každé automatické vymazání;<br>Filtry s "
+#~ "vysokým počtem jsou zobrazeny navrchu</qt>"
+
+#~ msgid "Reset Counter"
+#~ msgstr "Vynulovat počítadlo"
+
+#~ msgid "Filter Status"
+#~ msgstr "Stav filtru"
+
+#~ msgid "Filters are switched off"
+#~ msgstr "Filtry jsou vypnuty"
+
+#~ msgid "Filters are switched on"
+#~ msgstr "Filtry jsou zapnuty"
+
+#~ msgid "Automatic Delete"
+#~ msgstr "Automatické smazání"
+
+#~ msgid "Filters are switched on and are applied automatically"
+#~ msgstr "Filtry jsou zapnuty a jsou uplatňovány automaticky"
+
+#~ msgid "Add filter"
+#~ msgstr "Přidat filtr"
+
+#~ msgid "Copy filter"
+#~ msgstr "Kopírovat filtr"
+
+#~ msgid ""
+#~ "Filter %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Filtr %1 bude smazán.\n"
+#~ "Chcete pokračovat?"
+
+#~ msgid ""
+#~ "Automatic filters can cause loss of important mails.\n"
+#~ "Please test your filters.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Automatické filtry mohou způsobit ztrátu důležité pošty.\n"
+#~ "Otestujte, prosím, své filtry.\n"
+#~ "Chcete pokračovat?"
+
+#~ msgid ""
+#~ "Your conditions contain empty match strings.\n"
+#~ "This will not work."
+#~ msgstr ""
+#~ "Vaše podmínky obsahují prázdné řetězce.\n"
+#~ "To nebude fungovat."
+
+#~ msgid "Setup &filters"
+#~ msgstr "Nastavení &filtrů"
+
+#~ msgid ""
+#~ "Command %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Příkaz %1 bude smazán.\n"
+#~ "Chcete pokračovat?"
+
+#~ msgid ""
+#~ "Account %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Účet %1 bude vymazán.\n"
+#~ "Chcete pokračovat?"
+
+#~ msgid ""
+#~ "Password will be stored as scrambled text.\n"
+#~ "It might be possible to decipher it.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Heslo bude uloženo jako zakódovaný text.\n"
+#~ "Je možné, že půjde rozluštit.\n"
+#~ "Chcete pokračovat?\n"
+
+#~ msgid "Message"
+#~ msgstr "Zpráva"
+
+#~ msgid "Send reply mail"
+#~ msgstr "Poslat odpověď"
+
+#~ msgid "User command"
+#~ msgstr "Uživatelský příkaz"
+
+#~ msgid "Menu Entry"
+#~ msgstr "Položka menu"
+
+#~ msgid "Press button to select command path"
+#~ msgstr "Stiskněte tlačítko a vyberte příkaz"
+
+#~ msgid "Test"
+#~ msgstr "Test"
+
+#~ msgid "Execute the command immediatly"
+#~ msgstr "Vykonat příkaz okamžitě"
+
+#~ msgid "Wait for command to complete"
+#~ msgstr "Počkat do ukončení příkazu"
+
+#~ msgid "Enter menu entry name"
+#~ msgstr "Zadejte název položky menu"
+
+#~ msgid ""
+#~ "<qt>Enter path to selected command and arguments<br>&lt;user&gt;, &lt;"
+#~ "server&gt;, &lt;passwd&gt;, &lt;header&gt; and &lt;body&gt; may be used "
+#~ "as arguments</qt>"
+#~ msgstr ""
+#~ "<qt>Zadejte cestu k vybranému příkazu a jeho parametry<br>jako parametry "
+#~ "lze použít &lt;uživatel&gt;, &lt;server&gt;, &lt;heslo&gt;, &lt;"
+#~ "hlavička&gt; a &lt;tělo&gt</qt>"
+
+#~ msgid "Server Options"
+#~ msgstr "Nastavení serveru"
+
+#~ msgid "The account must have a name"
+#~ msgstr "Účet musí mít název"
+
+#~ msgid "This account is already present"
+#~ msgstr "Takový účet již existuje"
+
+#~ msgid "Command"
+#~ msgstr "Příkaz"
+
+#~ msgid "User commands"
+#~ msgstr "Uživatelské příkazy"
+
+#~ msgid "Add user command"
+#~ msgstr "Přidat uživatelský příkaz"
+
+#~ msgid "Edit user command"
+#~ msgstr "Upravit uživatelský příkaz"
+
+#~ msgid "Copy user command"
+#~ msgstr "Kopírovat uživatelský příkaz"
+
+#~ msgid "Delete user command"
+#~ msgstr "Smazat uživatelský příkaz"
+
+#~ msgid "Accounts"
+#~ msgstr "Účty"
+
+#~ msgid "Delete account"
+#~ msgstr "Smazat účet"
+
+#~ msgid "Cop&y"
+#~ msgstr "&Kopírovat"
+
+#~ msgid "copy account"
+#~ msgstr "kopírovat účet"
+
+#~ msgid "&Add"
+#~ msgstr "&Přidat"
+
+#~ msgid "Add new account"
+#~ msgstr "Přidat nový účet"
+
+#~ msgid "Save password (not recommended !)"
+#~ msgstr "Uložit heslo (nedoporučuje se!)"
+
+#~ msgid "Pop3 Timer"
+#~ msgstr "POP3 časovač"
+
+#~ msgid "Pop3 timeout"
+#~ msgstr "Vypršení časového limitu POP3"
+
+#~ msgid "Max Size:"
+#~ msgstr "Max. velikost:"
+
+#~ msgid "Maximal size of downloaded mail body in kilobytes"
+#~ msgstr "Maximální velikost těla stahované zprávy v kilobajtech"
+
+#~ msgid "Alt+K"
+#~ msgstr "Alt+K"
+
+#~ msgid "Display Options"
+#~ msgstr "N&astavení zobrazení"
+
+#~ msgid "E&xternal Program"
+#~ msgstr "E&xterní program"
+
+#~ msgid "Sound File:"
+#~ msgstr "Zvukový soubor:"
+
+#~ msgid "Enter sound file"
+#~ msgstr "Zadejte zvukový soubor"
+
+#~ msgid "Setup &accounts"
+#~ msgstr "&Nastavení účtů"
+
+#~ msgid "Setup &commands"
+#~ msgstr "Nastavení &příkazů"
+
+#~ msgid "&Setup"
+#~ msgstr "&Nastavení"
+
+#~ msgid "Select Command"
+#~ msgstr "Vybrat příkaz"
+
+#~ msgid "Send complain mails"
+#~ msgstr "Posílání zpráv se stížností"
+
+#~ msgid "Clear message list by Ctrl-C"
+#~ msgstr "Vyprázdnění seznamu zpráv pomocí Ctrl-C"
+
+#~ msgid "Forced refresh of all messages by Shift-F5"
+#~ msgstr "Načtení seznamu zpráv pomocí Shift-F5"
+
+#~ msgid "Select account"
+#~ msgstr "Vybrat účet"
+
+#~ msgid "EditDialog"
+#~ msgstr "EditDialog"
+
+#~ msgid "KShowMailApp"
+#~ msgstr "KShowMailApp"
+
+#~ msgid "KshowmailDoc"
+#~ msgstr "KshowmailDoc"
+
+#~ msgid "KShowMailDock"
+#~ msgstr "KShowMailDock"
+
+#~ msgid "KFeedbackDialog"
+#~ msgstr "KFeedbackDialog"
+
+#~ msgid "KFeedbackForm"
+#~ msgstr "KFeedbackForm"
+
+#~ msgid "KFeedbackQuestionList"
+#~ msgstr "KFeedbackQuestionList"
+
+#~ msgid "FilterEntryDialog"
+#~ msgstr "FilterEntryDialog"
+
+#~ msgid "ServerDialog"
+#~ msgstr "ServerDialog"
+
+#~ msgid "KshowmailView"
+#~ msgstr "KshowmailView"
+
+#~ msgid "AlertDialog"
+#~ msgstr "AlertDialog"
+
+#~ msgid "CommandDialog"
+#~ msgstr "CommandDialog"
+
+#~ msgid "CommandEntryDialog"
+#~ msgstr "CommandEntryDialog"
+
+#~ msgid "Refresh &all messages"
+#~ msgstr "Znovu &načíst všechny zprávy"
+
+#~ msgid "&Send complain mail"
+#~ msgstr "&Poslat stížnost"
+
+#~ msgid "Logging in to server %1 ..."
+#~ msgstr "Přihlašuji se k serveru %1..."
+
+#~ msgid "connection to pop3 server %1 established successfully"
+#~ msgstr "spojení s POP3 serverem %1 úspěšně navázáno"
+
+#~ msgid "POP3 Timeout"
+#~ msgstr "Vypršení POP3 limitu"
+
+#~ msgid "Timeout: job was killed"
+#~ msgstr "Vypršení časového limitu: úloha byla zrušena"
+
+#~ msgid "getting UIDLs ..."
+#~ msgstr "stahuji UIDL..."
+
+#~ msgid "getting message %1 of %2 ..."
+#~ msgstr "stahuji zprávu %1 z %2..."
+
+#~ msgid "Deleting highlighted messages..."
+#~ msgstr "Mažu vybrané zprávy..."
+
+#~ msgid ""
+#~ "Message %1 at %2 will be deleted.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Bude vymazána zpráva %1 na %2.\n"
+#~ "Chcete pokračovat?\n"
+
+#~ msgid "Yes all"
+#~ msgstr "Ano vše"
+
+#~ msgid "Sending complain mails..."
+#~ msgstr "Odesílám zprávu se stížností..."
+
+#~ msgid ""
+#~ "Complain mail will be sent for message %1 at %2.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Bude odeslána stížnost kvůli zprávě %1 na %2.\n"
+#~ "Chcete pokračovat?\n"
+
+#~ msgid "Header %1 at %2"
+#~ msgstr "Hlavička %1 na %2"
+
+#~ msgid "Getting complete highlighted messages..."
+#~ msgstr "Stahuje kompletní označené zprávy..."
+
+#~ msgid "Message %1 at %2"
+#~ msgstr "Zpráva %1 na %2"
+
+#~ msgid "OptionDialog"
+#~ msgstr "OptionDialog"
diff --git a/po/de.po b/po/de.po
new file mode 100644
index 0000000..f936215
--- /dev/null
+++ b/po/de.po
@@ -0,0 +1,1584 @@
+# translation of de.po to deutsch
+# KTranslator Generated File
+# Copyright (C) 2003, 2004 Free Software Foundation, Inc.
+# Eggert Ehmke <eggert.ehmke@berlin.de>, 2003, 2004.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: de\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-04-17 21:57+0200\n"
+"PO-Revision-Date: 2004-02-02 22:20+0100\n"
+"Last-Translator: Ulrich Weigelt <ulrich.weigelt@gmx.de\n"
+"Language-Team: deutsch\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Translator: Stephan Kulow <coolo@kde.org>\n"
+"X-Generator: KBabel 1.0.2\n"
+
+#: _translatorinfo.cpp:1 main.cpp:65
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Eggert Ehmke, Ulrich Weigelt"
+
+#: _translatorinfo.cpp:3 main.cpp:65
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "eggert.ehmke@berlin.de, ulrich.weigelt@gmx.de"
+
+#: main.cpp:33
+msgid "A powerful pop3 mail checker"
+msgstr "Ein leistungsfähiger Pop3-Mailchecker"
+
+#: main.cpp:40
+msgid "Refresh messages now"
+msgstr "Nachrichten erneuern"
+
+#: main.cpp:42
+msgid "Launch configure dialog"
+msgstr "Konfigurationsdialog"
+
+#: main.cpp:107
+msgid "Kshowmail is already running!"
+msgstr "Kshowmail wurde bereits gestartet!"
+
+#. i18n: file AlertDlg.ui line 16
+#: AlertDlg.cpp:262 rc.cpp:15
+#, no-c-format
+msgid "KShowmail"
+msgstr "KShowmail"
+
+#. i18n: file AlertDlg.ui line 27
+#: AlertDlg.cpp:263 rc.cpp:18 kcmconfigs/filtersetupitem.cpp:257
+#: kcmconfigs/filtersetupdialog.cpp:95 kcmconfigs/configfilter.cpp:133
+#, no-c-format
+msgid "Ignore"
+msgstr "Ignorieren"
+
+#. i18n: file AlertDlg.ui line 35
+#: AlertDlg.cpp:264 rc.cpp:21 kcmconfigs/configactions.cpp:49
+#, no-c-format
+msgid "Show main window"
+msgstr "Hauptfenster"
+
+#. i18n: file AlertDlg.ui line 61
+#: AlertDlg.cpp:265 rc.cpp:24
+#, no-c-format
+msgid "New mail"
+msgstr "Neue Nachrichten"
+
+#
+#. i18n: file AlertDlg.ui line 76
+#: AlertDlg.cpp:266 rc.cpp:27
+#, no-c-format
+msgid "has arrived !"
+msgstr "sind eingetroffen!"
+
+#: serverdialog.cpp:44 kcmconfigs/accountsetupdialog.cpp:39
+msgid "Account:"
+msgstr "Konto:"
+
+#: serverdialog.cpp:47 serverdialog.cpp:48
+#: kcmconfigs/accountsetupdialog.cpp:42 kcmconfigs/accountsetupdialog.cpp:43
+msgid "Unique Account Name"
+msgstr "Eindeutiger Kontoname"
+
+#: serverdialog.cpp:52 kcmconfigs/accountsetupdialog.cpp:47
+msgid "Server:"
+msgstr "Server:"
+
+#: serverdialog.cpp:55 serverdialog.cpp:56
+#: kcmconfigs/accountsetupdialog.cpp:49 kcmconfigs/accountsetupdialog.cpp:50
+msgid "Server Name"
+msgstr "Server"
+
+#: serverdialog.cpp:60 kcmconfigs/accountsetupdialog.cpp:54
+msgid "Protocol:"
+msgstr "Protokoll:"
+
+#: serverdialog.cpp:63 serverdialog.cpp:64
+#: kcmconfigs/accountsetupdialog.cpp:57 kcmconfigs/accountsetupdialog.cpp:58
+msgid ""
+"Protocol, which shall be used to get the mails from the server. Currently "
+"KShowmail just supports POP3."
+msgstr ""
+"Protokoll, welches zum Abholen der E-Mails vom Server benutzt werden soll "
+"KSHowmail unterstützt derzeit nur POP3."
+
+#: serverdialog.cpp:68 kcmconfigs/accountsetupdialog.cpp:62
+msgid "Port:"
+msgstr "Port:"
+
+#: serverdialog.cpp:71 serverdialog.cpp:72
+#: kcmconfigs/accountsetupdialog.cpp:65 kcmconfigs/accountsetupdialog.cpp:66
+msgid "Port Number. Normally POP3 uses port 110."
+msgstr "Port-Nummer. POP3 benutzt gewöhnlich den Port 110"
+
+#: serverdialog.cpp:76 kcmconfigs/accountsetupdialog.cpp:70
+msgid "User:"
+msgstr "Benutzer:"
+
+#: serverdialog.cpp:78 serverdialog.cpp:79
+#: kcmconfigs/accountsetupdialog.cpp:72 kcmconfigs/accountsetupdialog.cpp:73
+msgid "To authenticate to the mail server you need an user name."
+msgstr ""
+"Um sich gegenüber dem Mail-Server zu authentifizieren, benötigen Sie einen "
+"Benutzernamen."
+
+#: serverdialog.cpp:84 kcmconfigs/accountsetupdialog.cpp:78
+msgid "Password"
+msgstr "Passwort"
+
+#: serverdialog.cpp:95 kcmconfigs/accountsetupdialog.cpp:89
+msgid "Don't save"
+msgstr "Nicht speichern"
+
+#: serverdialog.cpp:96 kcmconfigs/accountsetupdialog.cpp:90
+msgid "Save password"
+msgstr "Passwort speichern"
+
+#: serverdialog.cpp:97 kcmconfigs/accountsetupdialog.cpp:91
+msgid "Use KWallet"
+msgstr "KWallet benutzen"
+
+#: serverdialog.cpp:101 kcmconfigs/accountsetupdialog.cpp:95
+msgid ""
+"Don't save password. KShowmail will ask you for it at first server connect."
+msgstr ""
+"Passwort nicht speichern. KShowmail wird Sie nach dem Passwort fragen, wenn "
+"es das erste Mal den Mail-Server kontaktiert."
+
+#: serverdialog.cpp:102 kcmconfigs/accountsetupdialog.cpp:96
+msgid ""
+"Save password in the configuration file. Not recommended, because the "
+"password is just lightly encrypted"
+msgstr ""
+"Das Passwort in die Konfigurationsdatei speichern. Dies wird nicht "
+"empfohlen, weil das Passwort nur schwach verschlüsselt wird."
+
+#: serverdialog.cpp:103 kcmconfigs/accountsetupdialog.cpp:97
+msgid ""
+"Use KWallet to save the password. Maybe you have to type in the KWallet "
+"master password at first server connect."
+msgstr ""
+"KWallet zum Speichern des Passwortes benutzen. Eventuell werden Sie das "
+"Master-Passwort von KWallet beim Start von KShowmail eingeben müssen."
+
+#: serverdialog.cpp:119 kcmconfigs/configdisplay.cpp:46
+#: kcmconfigs/accountsetupdialog.cpp:113 kshowmailview.cpp:53
+msgid "Active"
+msgstr "Aktiv"
+
+#: serverdialog.cpp:120 kcmconfigs/accountsetupdialog.cpp:114
+msgid "Select it to activate this account."
+msgstr "Konto aktivieren."
+
+#: serverdialog.cpp:125 kcmconfigs/accountsetupdialog.cpp:119
+msgid "Encryption"
+msgstr "Verschlüsselung"
+
+#: serverdialog.cpp:135 kshowmailfeedback.cpp:57
+#: kcmconfigs/accountsetupdialog.cpp:129
+msgid "None"
+msgstr "Keine"
+
+#: serverdialog.cpp:136 kcmconfigs/accountsetupdialog.cpp:130
+msgid "SSL"
+msgstr "SSL"
+
+#: serverdialog.cpp:137 kcmconfigs/accountsetupdialog.cpp:131
+msgid "TLS"
+msgstr "TLS"
+
+#: serverdialog.cpp:141 kcmconfigs/accountsetupdialog.cpp:135
+msgid ""
+"The download of the mail header and body will not be encrypted. Use this, if "
+"your provider doesn't make a secure transfer available."
+msgstr ""
+"Das Herunterladen eines Mail-Headers oder einer gesamten Mail ist nicht "
+"verschlüsselt. Dies sollte nur verwendet werden, wenn der Provider keine "
+"Verschlüsselung unterstützt."
+
+#: serverdialog.cpp:142 kcmconfigs/accountsetupdialog.cpp:136
+msgid ""
+"Secure Sockets Layer (SSL), is a cryptographic protocol that provides secure "
+"communications on the Internet."
+msgstr ""
+"Secure Sockets Layer (SSL) ist ein Verschlüsselungs-Protokoll, welches eine "
+"sichere Kommunikation im Internet ermöglicht."
+
+#: serverdialog.cpp:143 kcmconfigs/accountsetupdialog.cpp:137
+msgid ""
+"Transport Layer Security (TLS) is a cryptographic protocol that provides "
+"secure communications on the Internet. It is the successor of SSL."
+msgstr ""
+"Transport Layer Security (TLS) ist ein Verschlüsselungs-Protokoll, welches "
+"eine sichere Kommunikation im Internet ermöglicht. Es ist der Nachfolger von "
+"SSL."
+
+#
+#: serverdialog.cpp:152 kcmconfigs/accountsetupdialog.cpp:145
+msgid "General"
+msgstr "Allgemein"
+
+#: serverdialog.cpp:153 kcmconfigs/accountsetupdialog.cpp:146
+msgid "Security"
+msgstr "Sicherheit"
+
+#: serverdialog.cpp:157 kcmconfigs/accountsetupdialog.cpp:150
+msgid "New account"
+msgstr "Neues Konto"
+
+#: serverdialog.cpp:159 kcmconfigs/accountsetupdialog.cpp:152
+msgid "Edit account"
+msgstr "Konto bearbeiten"
+
+#: serverdialog.cpp:194 kcmconfigs/accountsetupdialog.cpp:187
+msgid "Please enter an server."
+msgstr "Geben Sie bitte einen Server ein."
+
+#: serverdialog.cpp:200 kcmconfigs/accountsetupdialog.cpp:193
+msgid "Please enter an user name."
+msgstr "Geben Sie bitte einen Benutzernamen ein."
+
+#: kshowmailfeedback.cpp:31
+msgid "What is your general opinion about this program?"
+msgstr "Was ist Ihre allgemeine Meinung über dieses Programm ?"
+
+#: kshowmailfeedback.cpp:33
+msgid "It's one of my favourites"
+msgstr "Es ist eines meiner Lieblingsprogramme"
+
+#: kshowmailfeedback.cpp:34
+msgid "I like it"
+msgstr "Ich mag es"
+
+#: kshowmailfeedback.cpp:35
+msgid "It's sometimes useful"
+msgstr "Es ist brauchbar"
+
+#: kshowmailfeedback.cpp:36
+msgid "It's average"
+msgstr "Es ist durchschnittlich"
+
+#: kshowmailfeedback.cpp:37
+msgid "Nice try, but this could be done better"
+msgstr "Es könnte besser sein"
+
+#: kshowmailfeedback.cpp:38
+msgid "It's poor"
+msgstr "Es ist schlecht"
+
+#: kshowmailfeedback.cpp:39
+msgid "It's useless"
+msgstr "Es ist nutzlos"
+
+#: kshowmailfeedback.cpp:40
+msgid "It's crap"
+msgstr "Es ist Müll"
+
+#: kshowmailfeedback.cpp:42
+msgid "Which features of this program do you like?"
+msgstr "Welche Eigenschaften des Programmes mögen Sie ?"
+
+#: kshowmailfeedback.cpp:45
+msgid "What is your favourite feature?"
+msgstr "Welche Eigenschaft mögen Sie am meisten?"
+
+#: kshowmailfeedback.cpp:48
+msgid "Which features don't you like?"
+msgstr "Welche Eigenschaft mögen Sie nicht ?"
+
+#: kshowmailfeedback.cpp:51
+msgid "Which features do you never use?"
+msgstr "Welche Eigenschaft benutzen Sie nie ?"
+
+#: kshowmailfeedback.cpp:54
+msgid "Are there features you are missing?"
+msgstr "Gibt es fehlende Eigenschaften ?"
+
+#: kshowmailfeedback.cpp:55
+msgid "Yes, a lot! (please add comment below)"
+msgstr "Ja, viele ! (Bitte angeben)"
+
+#: kshowmailfeedback.cpp:56
+msgid "Some (please add comment below)"
+msgstr "Einige (bitte angeben)"
+
+#: kshowmailfeedback.cpp:58
+msgid "It has too many features already!"
+msgstr "Es gibt schon zu viele !"
+
+#: kshowmailfeedback.cpp:60
+msgid "How do you rate the stability of this program?"
+msgstr "Wie bewerten Sie die Stabilität des Programms ?"
+
+#: kshowmailfeedback.cpp:61
+msgid "Rock solid"
+msgstr "Absolut stabil"
+
+#: kshowmailfeedback.cpp:62 kshowmailfeedback.cpp:69
+msgid "Good"
+msgstr "Gut"
+
+#: kshowmailfeedback.cpp:63 kshowmailfeedback.cpp:70 kshowmailfeedback.cpp:77
+#: kshowmailfeedback.cpp:84
+msgid "Average"
+msgstr "Durchschnittlich"
+
+#: kshowmailfeedback.cpp:64 kshowmailfeedback.cpp:71
+msgid "Poor"
+msgstr "Schlecht"
+
+#: kshowmailfeedback.cpp:65
+msgid "It keeps crashing all the time"
+msgstr "Es stürzt dauernd ab"
+
+#: kshowmailfeedback.cpp:67
+msgid "How do you rate the performance of this program?"
+msgstr "Wie bewerten Sie die Geschwindigkeit des Programms?"
+
+#: kshowmailfeedback.cpp:68
+msgid "Great"
+msgstr "Hervorragend"
+
+#: kshowmailfeedback.cpp:72
+msgid "It's so slow it drives me nuts"
+msgstr "Es ist so langsam, es macht mich verrückt"
+
+#: kshowmailfeedback.cpp:74
+msgid "What is your experience with computers in general?"
+msgstr "Wie ist Ihre Erfahrung mit Computern im Allgemeinen?"
+
+#: kshowmailfeedback.cpp:75 kshowmailfeedback.cpp:82
+msgid "Expert"
+msgstr "Experte"
+
+#: kshowmailfeedback.cpp:76 kshowmailfeedback.cpp:83
+msgid "Fair"
+msgstr "Gut"
+
+#: kshowmailfeedback.cpp:78 kshowmailfeedback.cpp:85
+msgid "Learning"
+msgstr "Lerne noch"
+
+#: kshowmailfeedback.cpp:79 kshowmailfeedback.cpp:86
+msgid "Newbie"
+msgstr "Anfänger"
+
+#: kshowmailfeedback.cpp:81
+msgid "What is your experience with Unix/Linux systems?"
+msgstr "Was ist Ihre Erfahrung mit Unix/Linux Systemen?"
+
+#: kshowmailfeedback.cpp:88
+msgid "Did you have trouble figuring out how to work with this program?"
+msgstr "Hatten Sie Schwierigkeiten, mit diesem Programm zurechtzukommen?"
+
+#: kshowmailfeedback.cpp:90
+msgid "No problem"
+msgstr "Kein Problem"
+
+#: kshowmailfeedback.cpp:91
+msgid "Some"
+msgstr "Einige"
+
+#: kshowmailfeedback.cpp:92
+msgid "I'm still learning"
+msgstr "Ich lerne immer noch"
+
+#: kshowmailfeedback.cpp:93
+msgid "I didn't have a clue what to do at first"
+msgstr "Ich wusste nicht, was ich zuerst tun sollte"
+
+#: kshowmailfeedback.cpp:94
+msgid "I still don't have a clue what to do"
+msgstr "Ich weiss immer noch nicht, was ich machen soll"
+
+#: kshowmailfeedback.cpp:96
+msgid "Where do you use this program most?"
+msgstr "Wo benutzen Sie das Programm am häufigsten?"
+
+#: kshowmailfeedback.cpp:97
+msgid "At work"
+msgstr "Bei der Arbeit"
+
+#: kshowmailfeedback.cpp:98
+msgid "At home"
+msgstr "Zu Haus"
+
+#: kshowmailfeedback.cpp:99
+msgid "At university / school"
+msgstr "An der Universität/Schule"
+
+#: kshowmailfeedback.cpp:101
+msgid "What is your primary role there?"
+msgstr "Was ist Ihre Aufgabe dort?"
+
+#: kshowmailfeedback.cpp:102 kshowmailfeedback.cpp:110
+msgid "Home user"
+msgstr "Heimbenutzer"
+
+#: kshowmailfeedback.cpp:103 kshowmailfeedback.cpp:111
+msgid "Student"
+msgstr "Student"
+
+#: kshowmailfeedback.cpp:104 kshowmailfeedback.cpp:112
+msgid "Educational (teacher / professor)"
+msgstr "Ausbildung (Lehrer/Professor)"
+
+#: kshowmailfeedback.cpp:105 kshowmailfeedback.cpp:113
+msgid "Non-computer related work"
+msgstr "Keine computerbezogene Arbeit"
+
+#: kshowmailfeedback.cpp:106 kshowmailfeedback.cpp:114
+msgid "Developer"
+msgstr "Entwickler"
+
+#: kshowmailfeedback.cpp:107 kshowmailfeedback.cpp:115
+msgid "System administrator"
+msgstr "Systemverwalter"
+
+#: kshowmailfeedback.cpp:109
+msgid "Do you have any other roles there?"
+msgstr "Haben Sie noch andere Aufgaben dort?"
+
+#: kshowmailfeedback.cpp:117
+msgid "How did you get to know this program?"
+msgstr "Wie haben Sie das Prgramm kennengelernt?"
+
+#: kshowmailfeedback.cpp:118
+msgid "In a menu on my machine"
+msgstr "In einem Menü auf meinem PC"
+
+#: kshowmailfeedback.cpp:119
+msgid "Somebody told me about it"
+msgstr "Jemand hat mir davon erzählt"
+
+#: kshowmailfeedback.cpp:120
+msgid "On the internet"
+msgstr "Im Internet"
+
+#: kshowmailfeedback.cpp:121
+msgid "Printed magazine / book"
+msgstr "In einer Zeitschrift"
+
+#: kshowmailfeedback.cpp:122
+msgid "Other (please add comment below)"
+msgstr "Andere (bitte angeben)"
+
+#: kshowmailfeedback.cpp:124
+msgid "Would you recommend this program to a friend?"
+msgstr "Würden Sie dieses Programm einem Freund empfehlen ?"
+
+#: kshowmailfeedback.cpp:132
+msgid "The message list display in general"
+msgstr "Die Nachrichtenliste im Allgemeinen"
+
+#: kshowmailfeedback.cpp:133
+msgid "Display of message headers"
+msgstr "Anzeige des Vorspanns"
+
+#
+#: kshowmailfeedback.cpp:134
+msgid "Display of complete messages"
+msgstr "Anzeige der kompletten Nachricht"
+
+#: kshowmailfeedback.cpp:136
+msgid "Filters"
+msgstr "Filter"
+
+#: kshowmailfeedback.cpp:137
+msgid "Manual delete of unwanted messages"
+msgstr "Manuelles Löschen ungewünschter Nachrichten"
+
+#: kshowmailfeedback.cpp:138
+msgid "Automatic move of filtered messages"
+msgstr "Automatisches Verschieben gefilterter Nachrichten"
+
+#: kshowmailfeedback.cpp:139
+msgid "Automatic delete of filtered messages"
+msgstr "Automatisches Löschen gefilterter Nachrichten"
+
+#: kshowmailfeedback.cpp:140
+msgid "Automatic mark of filtered messages"
+msgstr "Automatisches Markieren gefilterter Nachrichten"
+
+#: kshowmailfeedback.cpp:141
+msgid "Ignoring of filtered messages"
+msgstr "Ignorieren von gefilterten Nachrichten"
+
+#: kshowmailfeedback.cpp:142
+msgid "Integration of SpamAssassin"
+msgstr "Integration von SpamAssassin"
+
+#: kshowmailfeedback.cpp:143
+msgid "White- and Blacklist"
+msgstr "White- und Blacklist"
+
+#: kshowmailfeedback.cpp:144
+msgid "Filter Log"
+msgstr "Filter-Log"
+
+#: kshowmailfeedback.cpp:145
+msgid "Filter messages by regular expressions"
+msgstr "Ausfiltern von Nachrichten durch reguläre Ausdrücke"
+
+#: kshowmailfeedback.cpp:148
+msgid "Sorting of messages by size, date etc."
+msgstr "Sortieren der Nachrichten nach Größe, Datum usw."
+
+#: kshowmailfeedback.cpp:150
+msgid "Play sound"
+msgstr "Klang abspielen"
+
+#: kshowmailfeedback.cpp:151
+msgid "Play beep"
+msgstr "Ton abspielen"
+
+#: kshowmailfeedback.cpp:152
+msgid "Initial timer"
+msgstr "Zeitintervall bis zum ersten Erneuern"
+
+#: kshowmailfeedback.cpp:153
+msgid "Interval timer"
+msgstr "Zeitinterval bis zum nächsten Erneuern"
+
+#: kshowmailfeedback.cpp:154
+msgid "This feedback survey :-)"
+msgstr "Diese Rückmeldungsabfrage :-)"
+
+#: configelem.cpp:294
+msgid "Please type in the password for %1"
+msgstr "Geben Sie bitte das Passwort für %1 ein."
+
+#: configelem.cpp:515
+msgid "Time out on %1. The operation could not be finished on time"
+msgstr ""
+"Zeit abgelaufen bei der Verbindung mit %1. Die Aktion konnte nicht innerhalb "
+"der eingestellten Zeit abgeschlossen werden."
+
+#: configelem.cpp:515
+msgid "Time Out"
+msgstr "Zeit abgelaufen"
+
+#: configelem.cpp:1647
+msgid ""
+"You want to check your mails for spam, but SpamAssassin is not running.\n"
+"KShowmail skips the spam check."
+msgstr ""
+"Sie möchten Ihre Mails auf Spam überprüfen lassen, aber SpamAssassin ist auf "
+"Ihrem Rechner nicht aktiviert. Übersrpnge die Spam-Prüfung."
+
+#: configelem.cpp:1647
+msgid "SpamAssassin is not running"
+msgstr "SpamAssassin ist nicht aktiviert."
+
+#: kfeedback.cpp:35
+msgid "Feedback"
+msgstr "Rückmeldung"
+
+#: kfeedback.cpp:39
+msgid "&Mail this..."
+msgstr "&Sende als Email..."
+
+#: kfeedback.cpp:89
+msgid ""
+"<p><b>Please tell us your opinion about this program.</b></p><p>You will be "
+"able to review everything in your mailer before any mail is sent.<br>Nothing "
+"will be sent behind your back.</p>"
+msgstr ""
+"<p><b>Bitte teilen Sie mir Ihre Meinung über dieses Programm mit.</b></"
+"p><p>Sie können alle Informationen überprüfen, bevor die Nachricht gesendet "
+"wird.<br>Es wird nichts hinter Ihrem Rücken übertragen.</p>"
+
+#: kfeedback.cpp:114
+msgid "Questions marked with "
+msgstr "Fragen markiert mit "
+
+#: kfeedback.cpp:123
+msgid " must be answered before a mail can be sent."
+msgstr " müssen beantwortet werden, bevor die Nachricht verschickt wird."
+
+#: kfeedback.cpp:134
+msgid "&Additional comments:"
+msgstr "&Zusätzliche Bemerkungen:"
+
+#: kfeedback.cpp:312
+msgid "yes"
+msgstr "ja"
+
+#: kfeedback.cpp:313
+msgid "no"
+msgstr "nein"
+
+#: showheaderdialog.cpp:28 showmaildialog.cpp:39
+msgid "Subject:"
+msgstr "Betreff:"
+
+#. i18n: file kshowmailui.rc line 4
+#: rc.cpp:3
+#, no-c-format
+msgid "&Actions"
+msgstr "&Aktionen"
+
+#: showmaildialog.cpp:15
+msgid "Reply"
+msgstr "Antworten"
+
+#
+#: showmaildialog.cpp:30
+msgid "Sender:"
+msgstr "Absender:"
+
+#: showmaildialog.cpp:33
+msgid "Date:"
+msgstr "Datum:"
+
+#: showmaildialog.cpp:36
+msgid "Size:"
+msgstr "Größe:"
+
+#: kshowmaildock.cpp:37
+msgid "KShowmail: a powerful pop3 email checker"
+msgstr "KShowmail: Ein leistungsfähiger Pop3-Mailchecker"
+
+#: kcmconfigs/filtercriteriawidget.cpp:26 kcmconfigs/configdisplay.cpp:78
+#: kshowmailview.cpp:71
+msgid "From"
+msgstr "Absender"
+
+#: kcmconfigs/filtercriteriawidget.cpp:27 kcmconfigs/configdisplay.cpp:82
+#: kshowmailview.cpp:72
+msgid "To"
+msgstr "Empfänger"
+
+#: kcmconfigs/filtercriteriawidget.cpp:28
+msgid "Size (Bytes)"
+msgstr "Größe (Bytes)"
+
+#: kcmconfigs/filtercriteriawidget.cpp:29 kshowmailview.cpp:73
+#: filterlogview.cpp:38 filterlogview.cpp:66
+msgid "Subject"
+msgstr "Betreff"
+
+#
+#: kcmconfigs/filtercriteriawidget.cpp:30
+msgid "Header"
+msgstr "Vorspann"
+
+#: kcmconfigs/filtercriteriawidget.cpp:31 kcmconfigs/configdisplay.cpp:50
+#: kcmconfigs/configdisplay.cpp:74 kshowmailview.cpp:54 kshowmailview.cpp:70
+#: filterlogview.cpp:37 filterlogview.cpp:64
+msgid "Account"
+msgstr "Konto"
+
+#: kcmconfigs/filtercriteriawidget.cpp:48
+msgid "contains"
+msgstr "enthält"
+
+#: kcmconfigs/filtercriteriawidget.cpp:49
+msgid "does not contain"
+msgstr "enthält nicht"
+
+#: kcmconfigs/filtercriteriawidget.cpp:50
+msgid "equals"
+msgstr "ist gleich"
+
+#: kcmconfigs/filtercriteriawidget.cpp:51
+msgid "does not equal"
+msgstr "ist nicht gleich"
+
+#: kcmconfigs/filtercriteriawidget.cpp:52
+msgid "matches regular expression"
+msgstr "passt auf regulären Ausdruck"
+
+#: kcmconfigs/filtercriteriawidget.cpp:53
+msgid "does not match reg. expr."
+msgstr "passt nicht auf reg. Ausdruck"
+
+#: kcmconfigs/filtercriteriawidget.cpp:69
+msgid "is equal to"
+msgstr "ist gleich"
+
+#: kcmconfigs/filtercriteriawidget.cpp:70
+msgid "is not equal to"
+msgstr "ist nicht gleich"
+
+#: kcmconfigs/filtercriteriawidget.cpp:71
+msgid "is greater than"
+msgstr "ist größer als"
+
+#: kcmconfigs/filtercriteriawidget.cpp:72
+msgid "is greater than or equal to"
+msgstr "ist größer oder gleich als"
+
+#: kcmconfigs/filtercriteriawidget.cpp:73
+msgid "is less than"
+msgstr "ist kleiner als"
+
+#: kcmconfigs/filtercriteriawidget.cpp:74
+msgid "is less than or equal to"
+msgstr "ist kleiner oder gleich als"
+
+#: kcmconfigs/filtercriteriawidget.cpp:107
+msgid "Case sensitive"
+msgstr "Groß-Kleinschreibung"
+
+#: kcmconfigs/filtercriteriawidget.cpp:196
+msgid "The Regular Expression Editor could not be initilized."
+msgstr ""
+"Der Editor für die regulären Ausdrücke konnte nicht initialisiert werden."
+
+#: kcmconfigs/filtercriteriawidget.cpp:211
+msgid "The Regular Expression Editor is not available."
+msgstr "Der Editor für reguläre Ausdrücke ist nicht verfügbar."
+
+#: kcmconfigs/configlog.cpp:34
+msgid "Log mails deleted by filter"
+msgstr "Logge Mails, welche vom Filter gelöscht wurden."
+
+#: kcmconfigs/configlog.cpp:36
+msgid "Check to activate the log of mails deleted by filter."
+msgstr "Das Log für vom Filter gelöschte Mails aktivieren."
+
+#: kcmconfigs/configlog.cpp:46 kcmconfigs/configlog.cpp:78
+msgid "Remove log entries at exit"
+msgstr "Lösche das Log bei Programmende."
+
+#: kcmconfigs/configlog.cpp:52 kcmconfigs/configlog.cpp:84
+msgid "Remove log entries after"
+msgstr "Lösche das Log nach"
+
+#: kcmconfigs/configlog.cpp:58 kcmconfigs/configlog.cpp:90
+msgid " Days"
+msgstr " Tagen"
+
+#: kcmconfigs/configlog.cpp:66
+msgid "Log mails moved by filter"
+msgstr "Logge Mails, welche vom Filter verschoben wurden."
+
+#: kcmconfigs/configlog.cpp:68
+msgid "Check to activate the log of mails moved by filter."
+msgstr "Das Log für vom Filter verschobene Mails aktivieren."
+
+#: kcmconfigs/configdisplay.cpp:33
+msgid "Account list"
+msgstr "Konten-Liste"
+
+#: kcmconfigs/configdisplay.cpp:35
+msgid "Mail list"
+msgstr "Nachrichten-Liste"
+
+#: kcmconfigs/configdisplay.cpp:37
+msgid "Mail content"
+msgstr "Nachrichten-Inhalt"
+
+#: kcmconfigs/configdisplay.cpp:47
+msgid "To switch on/off the 'Active' column in the account list"
+msgstr "Blendet die 'Aktiv-Spalte' ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:51
+msgid "To switch on/off the 'Account' column in the account list"
+msgstr "Blendet die 'Konto'-Spalte ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:54 kshowmailview.cpp:55
+msgid "Server"
+msgstr "Server"
+
+#: kcmconfigs/configdisplay.cpp:55
+msgid "To switch on/off the 'Server' column in the account list"
+msgstr "Blendet die 'Server'-Spalte ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:58 kshowmailview.cpp:56
+msgid "User"
+msgstr "Benutzer"
+
+#: kcmconfigs/configdisplay.cpp:59
+msgid "To switch on/off the 'User' column in the account list"
+msgstr "Blendet die 'Benutzer'-Spalte ein bzw. aus."
+
+#
+#: kcmconfigs/configdisplay.cpp:62 kshowmailview.cpp:57
+msgid "Messages"
+msgstr "Nachrichten"
+
+#: kcmconfigs/configdisplay.cpp:63
+msgid "To switch on/off the 'Messages' column in the account list"
+msgstr "Blendet die 'Nachrichten'-Spalte ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:66
+msgid "Si&ze"
+msgstr "&Größe"
+
+#: kcmconfigs/configdisplay.cpp:67
+msgid "To switch on/off the 'Size' column in the account list"
+msgstr "Blendet die 'Größe'-Spalte ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:70 kshowmailview.cpp:69
+msgid "Number"
+msgstr "Nummer"
+
+#: kcmconfigs/configdisplay.cpp:71
+msgid "To switch on/off the 'Number' column in the message list"
+msgstr "Blendet die 'Nummer'-Spalte ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:75
+msgid "To switch on/off the 'Account' column in the message list"
+msgstr "Blendet die 'Konto'-Spalte ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:79
+msgid "To switch on/off the 'From' column in the message list"
+msgstr "Blendet die 'Absender'-Spalte ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:83
+msgid "To switch on/off the 'To' column in the message list"
+msgstr "Blendet die 'Empfänger'-Spalte ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:86
+msgid "Su&bject"
+msgstr "&Betreff"
+
+#: kcmconfigs/configdisplay.cpp:87
+msgid "To switch on/off the 'Subject' column in the message list"
+msgstr "Blendet die 'Betreff'-Spalte ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:90 kshowmailview.cpp:74 filterlogview.cpp:35
+#: filterlogview.cpp:62
+msgid "Date"
+msgstr "Datum"
+
+#: kcmconfigs/configdisplay.cpp:91
+msgid "To switch on/off the 'Date' column in the message list"
+msgstr "Blendet die 'Datum'-Spalte ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:94 kshowmailview.cpp:58 kshowmailview.cpp:75
+msgid "Size"
+msgstr "Größe"
+
+#: kcmconfigs/configdisplay.cpp:95
+msgid "To switch on/off the 'Size' column in the message list"
+msgstr "Blendet die 'Größe'-Spalte ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:98 kshowmailview.cpp:76
+msgid "Content"
+msgstr "Inhalt"
+
+#: kcmconfigs/configdisplay.cpp:99
+msgid "To switch on/off the 'Content' column in the message list"
+msgstr "Blendet die 'Inhalt'-Spalte ein bzw. aus."
+
+#
+#: kcmconfigs/configdisplay.cpp:102 kshowmailview.cpp:77
+msgid "State"
+msgstr "Status"
+
+#: kcmconfigs/configdisplay.cpp:103
+msgid "To switch on/off the 'State' column in the message list"
+msgstr "Blendet die 'Status'-Spalte ein bzw. aus."
+
+#: kcmconfigs/configdisplay.cpp:106
+msgid "Allow HTML"
+msgstr "HTML zulassen"
+
+#: kcmconfigs/configdisplay.cpp:107
+msgid "To switch on/off HTML in the message view"
+msgstr "Schaltet die Darstellung von HTML in der Mail-Ansicht ein bzw. aus."
+
+#: kcmconfigs/configaccounts.cpp:34 kcmconfigs/configfilter.cpp:71
+msgid "Name"
+msgstr "Name"
+
+#: kcmconfigs/configaccounts.cpp:194
+msgid "Do you really want to remove account %1?"
+msgstr "Möchten Sie das Konto %1 wirklich entfernen?"
+
+#
+#
+#: kcmconfigs/configactions.cpp:33
+msgid "Action if new &mail"
+msgstr "Aktion bei neuen &Nachrichten"
+
+#
+#: kcmconfigs/configactions.cpp:34
+msgid "Action if &no mail"
+msgstr "Aktion &ohne neue Nachrichten"
+
+#
+#: kcmconfigs/configactions.cpp:45
+msgid "Show message box"
+msgstr "Benachrichtigungsfenster"
+
+#: kcmconfigs/configactions.cpp:46
+msgid "Show message if new mail arrives"
+msgstr "Zeige Benachrichtigungsfenster bei neuen Nachrichten"
+
+#
+#: kcmconfigs/configactions.cpp:50
+msgid "Show main window if new mail arrives"
+msgstr "Zeige Hauptfenster bei neuen Nachrichten"
+
+#: kcmconfigs/configactions.cpp:53
+msgid "&Beep"
+msgstr "&Ton"
+
+#: kcmconfigs/configactions.cpp:54
+msgid "Beeps the internal speaker if new mail"
+msgstr "Bei neuer Post erklingt der interne Lautsprecher"
+
+#: kcmconfigs/configactions.cpp:57
+msgid "Sound:"
+msgstr "Klang:"
+
+#: kcmconfigs/configactions.cpp:58
+msgid "Plays sound if new mail"
+msgstr "Bei neuer Post wird ein Klang abgespielt"
+
+#
+#: kcmconfigs/configactions.cpp:61
+msgid "Play the selected sound file"
+msgstr "Abspielen der ausgewählten Klangdatei"
+
+#: kcmconfigs/configactions.cpp:67
+msgid "Press to select sound file"
+msgstr "Auswahl einer Klangdatei"
+
+#: kcmconfigs/configactions.cpp:70
+msgid "Command:"
+msgstr "Kommando:"
+
+#
+#: kcmconfigs/configactions.cpp:71
+msgid "Starts external program if new mail"
+msgstr "Bei neuer Post wird das externe Programm gestartet"
+
+#: kcmconfigs/configactions.cpp:74
+msgid "Start the selected program"
+msgstr "Ausführen des ausgewählten Programms "
+
+#: kcmconfigs/configactions.cpp:80 kcmconfigs/configactions.cpp:213
+msgid "Select external command"
+msgstr "Benutzerkommando auswählen"
+
+#: kcmconfigs/configactions.cpp:84
+msgid "Minimi&ze"
+msgstr "Fenster als &Icon"
+
+#: kcmconfigs/configactions.cpp:85
+msgid "Minimize window if no new mail"
+msgstr "Fenster als Icon, wenn keine neuen Nachrichten vorhanden sind"
+
+#: kcmconfigs/configactions.cpp:87
+msgid "Terminate"
+msgstr "Beenden"
+
+#: kcmconfigs/configactions.cpp:88
+msgid "Terminate kshowmail if no new mail"
+msgstr "Beende kshowmail, wenn keine neuen Nachrichten vorhanden sind"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "Sound files (*.wav, *.ogg)"
+msgstr "Klangdateien (*.wav, *.ogg)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "All files (*)"
+msgstr "Alle Dateien (*)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "Select Sound File"
+msgstr "Klangdatei auswählen"
+
+#: kcmconfigs/configspamcheck.cpp:37
+msgid ""
+"KShowmail uses SpamAssassin to check the mails for spam. You have to "
+"install, configure and start the SpamAssassin daemon, before you can use "
+"this service."
+msgstr ""
+"KShowmail benutzt SpamAssassin um die Mails auf Spam zu überprüfen. Sie "
+"müssen den SpamAssassin-Dienst (Daemon) installieren, konfigurieren und "
+"starten, bevor Sie diese Prüfung benutzen können."
+
+#: kcmconfigs/configspamcheck.cpp:48
+msgid "Action for Spam"
+msgstr "Aktion bei Spam-Mails"
+
+#: kcmconfigs/configspamcheck.cpp:54
+msgid "Choose the action for spam mails."
+msgstr "Wählen Sie die Aktion bei Spam-Mails."
+
+#: kcmconfigs/configspamcheck.cpp:60 kcmconfigs/senderlistdialog.cpp:59
+#: kcmconfigs/filtersetupitem.cpp:255 kcmconfigs/filtersetupdialog.cpp:92
+#: kcmconfigs/configfilter.cpp:130
+msgid "Mark"
+msgstr "Markieren"
+
+#: kcmconfigs/configspamcheck.cpp:71 kcmconfigs/filtersetupdialog.cpp:104
+#: kcmconfigs/configfilter.cpp:143
+msgid "Choose the mailbox"
+msgstr "Wählen Sie die Mailbox"
+
+#: kcmconfigs/configspamcheck.cpp:190 kcmconfigs/filtersetupdialog.cpp:442
+#: kcmconfigs/configfilter.cpp:603
+msgid "Mailbox Select"
+msgstr "Auswahl der Mailbox"
+
+#: kcmconfigs/configspamcheck.cpp:226
+msgid "SpamAssassin is running."
+msgstr "SpamAssassin läuft."
+
+#: kcmconfigs/configspamcheck.cpp:226 kcmconfigs/configspamcheck.cpp:231
+msgid "Check for SpamAssassin"
+msgstr "Test, ob SpamAssassin verfügbar ist."
+
+#: kcmconfigs/configspamcheck.cpp:231
+msgid "SpamAssassin is not running."
+msgstr "SpamAssassin läuft nicht."
+
+#: kcmconfigs/mailboxwizard.cpp:27
+msgid "Press to choose the mail directory"
+msgstr "Klicken Sie hier, um das Mail-Verzeichnis auszüwählen."
+
+#: kcmconfigs/mailboxwizard.cpp:32
+msgid ""
+"Please choose the path to the mailboxes.\n"
+"KShowmail supports only MailDir boxes."
+msgstr ""
+"Wählen Sie bitte den Pfad zu den Mailboxen.\n"
+"KShowmail unterstützt nur das MailDir-Format."
+
+#: kcmconfigs/mailboxwizard.cpp:47
+msgid "Please choose the mailbox"
+msgstr "Wählen Sie bitte die Mailbox."
+
+#: kcmconfigs/mailboxwizard.cpp:65
+msgid "Choose the mailbox directory"
+msgstr "Wählen Sie das Mailbox-Verzeichnis."
+
+#: kcmconfigs/mailboxwizard.cpp:134
+msgid "Inbox"
+msgstr "Posteingang"
+
+#: kcmconfigs/mailboxwizard.cpp:136
+msgid "Outbox"
+msgstr "Postausgang"
+
+#: kcmconfigs/mailboxwizard.cpp:138
+msgid "Drafts"
+msgstr "Entwürfe"
+
+#: kcmconfigs/mailboxwizard.cpp:140
+msgid "sent-mail"
+msgstr "Versandte Nachrichten"
+
+#: kcmconfigs/mailboxwizard.cpp:142
+msgid "Trash"
+msgstr "Mülleimer"
+
+#: kcmconfigs/senderlistdialog.cpp:39
+msgid "List"
+msgstr "LIste"
+
+#: kcmconfigs/senderlistdialog.cpp:41
+msgid ""
+"A mail whose sender is listed here will pass the filter.\n"
+"A mail will be accepted, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is accepted by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+"Eine Mail, dessen Absender hier aufgelisted ist, wird vom Filter "
+"durchgelassen und angezeigt werden.\n"
+"Eine Mail wird akzeptiert, wenn die Absender-Zeile einen dieser Einträge "
+"beinhaltet.\n"
+"Bsp.: Der Absender\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> wird von den Einträgen\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de und\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> angenommen."
+
+#: kcmconfigs/senderlistdialog.cpp:43
+msgid ""
+"A mail whose sender is listed here will be hold up by the filter.\n"
+"A mail will be stopped, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is filtered by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+"Eine Mail, dessen Absender hier aufgelisted ist, wird vom Filter aufgehalten "
+"werden.\n"
+"Eine Mail wird gefiltert, wenn die Absender-Zeile einen dieser Einträge "
+"beinhaltet.\n"
+"Bsp.: Der Absender\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> wird von den Einträgen\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de und\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> gefiltert."
+
+#: kcmconfigs/senderlistdialog.cpp:53 kcmconfigs/configfilter.cpp:72
+msgid "Action"
+msgstr "Aktion"
+
+#: kcmconfigs/senderlistdialog.cpp:64
+msgid "The mails will be deleted."
+msgstr "Die Mail wird gelöscht."
+
+#: kcmconfigs/senderlistdialog.cpp:65
+msgid "The mails will be marked."
+msgstr "Die Mail wird markiert."
+
+#: kcmconfigs/filtersetupitem.cpp:253 kcmconfigs/filtersetupdialog.cpp:90
+#: kcmconfigs/configfilter.cpp:128
+msgid "Show"
+msgstr "Anzeigen"
+
+#: kcmconfigs/filtersetupitem.cpp:256
+msgid "Move to %1"
+msgstr "Nach %1 verschieben"
+
+#: kcmconfigs/filtersetupitem.cpp:258
+msgid "Check for spam"
+msgstr "auf Spam prüfen"
+
+#: kcmconfigs/filtersetupitem.cpp:259
+msgid "Unknown action"
+msgstr "Unbekannte Aktion"
+
+#: kcmconfigs/configgeneral.cpp:37
+msgid "&Timers"
+msgstr "&Zeiten"
+
+#: kcmconfigs/configgeneral.cpp:44
+msgid "Confirm Close"
+msgstr "Beenden bestätigen"
+
+#: kcmconfigs/configgeneral.cpp:45
+msgid "If checked, window close must be confirmed"
+msgstr "Wenn aktiviert, muss das Schließen des Fensters bestätigt werden"
+
+#: kcmconfigs/configgeneral.cpp:48
+msgid "Confirm delete"
+msgstr "Löschen bestätigen"
+
+#: kcmconfigs/configgeneral.cpp:49
+msgid "If checked, message delete must be confirmed"
+msgstr "Wenn aktiviert, muß jedes Löschen bestätigt werden"
+
+#: kcmconfigs/configgeneral.cpp:52
+msgid "Start Minimi&zed"
+msgstr "Start als &Icon"
+
+#: kcmconfigs/configgeneral.cpp:53
+msgid "Application is started as icon"
+msgstr "Anwendung wird als Icon gestartet"
+
+#: kcmconfigs/configgeneral.cpp:56
+msgid "Close to tray"
+msgstr "In die Traybar verschieben"
+
+#: kcmconfigs/configgeneral.cpp:57
+msgid "Close button leaves the application running in tray"
+msgstr "Die Anwendung bleibt nach Schliessen in der Traybar"
+
+#: kcmconfigs/configgeneral.cpp:60
+msgid "Minimize to tray"
+msgstr "Fenster als Icon"
+
+#: kcmconfigs/configgeneral.cpp:61
+msgid "Minimizes to the tray rather than to the taskbar"
+msgstr "Die Anwendung bleibt nach Minimieren in der Traybar"
+
+#: kcmconfigs/configgeneral.cpp:64
+msgid "Show Connection Errors during refresh"
+msgstr "Zeige Verbindungsfehler bei der Aktualisierung"
+
+#: kcmconfigs/configgeneral.cpp:65
+msgid ""
+"If a connection error occurs during refresh (e.g. unknown server), an error "
+"message will be shown. During other actions, this error always will be shown"
+msgstr ""
+"Wenn während der Aktualisierung ein Verbindungsfehler auftritt (z.B. "
+"unbekannter Server), wird eine Fehlermeldung angezeigt. Bei anderen Aktionen "
+"werden Fehlermeldungen immer angezeigt."
+
+#: kcmconfigs/configgeneral.cpp:68
+msgid "&Keep mail as new"
+msgstr "Als neu &behalten"
+
+#: kcmconfigs/configgeneral.cpp:69
+msgid "Keep mail as new until termination"
+msgstr "Nachrichten als neu behalten bis zum Beenden"
+
+#: kcmconfigs/configgeneral.cpp:72
+msgid "Initial Timer:"
+msgstr "Verzögerung:"
+
+#: kcmconfigs/configgeneral.cpp:73 kcmconfigs/configgeneral.cpp:91
+msgid "[Seconds]"
+msgstr "[Sekunden]"
+
+#: kcmconfigs/configgeneral.cpp:75 kcmconfigs/configgeneral.cpp:76
+msgid "Seconds until first automatic logon (0 = no automatic)"
+msgstr "Sekunden bis zum ersten automatischen Login (0 = keine Automatik)"
+
+#: kcmconfigs/configgeneral.cpp:81
+msgid "Interval Timer:"
+msgstr "Zeitintervall:"
+
+#: kcmconfigs/configgeneral.cpp:82
+msgid "[Minutes]"
+msgstr "[Minuten]"
+
+#: kcmconfigs/configgeneral.cpp:84 kcmconfigs/configgeneral.cpp:85
+msgid "Minutes between automatic logon (0 = no automatic)"
+msgstr "Minuten zwischen automatischem Login (0 = keine Automatik)"
+
+#: kcmconfigs/configgeneral.cpp:90
+msgid "Timeout:"
+msgstr "Verbindungsabbruch nach"
+
+#: kcmconfigs/configgeneral.cpp:93 kcmconfigs/configgeneral.cpp:94
+msgid "Seconds until a server connect will be canceled"
+msgstr "Sekunden, bis eine Verbindung abgebrochen wird."
+
+#: kcmconfigs/filtersetupdialog.cpp:23
+msgid "New filter"
+msgstr "Neuer Filter"
+
+#: kcmconfigs/filtersetupdialog.cpp:25
+msgid "Edit filter"
+msgstr "Filter bearbeiten"
+
+#: kcmconfigs/filtersetupdialog.cpp:34
+msgid "Name:"
+msgstr "Name:"
+
+#: kcmconfigs/filtersetupdialog.cpp:40
+msgid "Filter Criterias"
+msgstr "Filter-Kriterien"
+
+#: kcmconfigs/filtersetupdialog.cpp:44
+msgid "Filter Action"
+msgstr "Filter-Aktion"
+
+#: kcmconfigs/filtersetupdialog.cpp:52
+msgid "Match all of the following"
+msgstr "Trifft auf alle Folgenden zu"
+
+#: kcmconfigs/filtersetupdialog.cpp:53
+msgid "Match any of the following"
+msgstr "Trifft auf eines der Folgenden zu"
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+msgid "More"
+msgstr "Mehr"
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+msgid "Add a further criteria."
+msgstr "Eine weiteres Kriterium hinzufügen."
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Fewer"
+msgstr "Weniger"
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Remove the last criteria."
+msgstr "Das letzte Kriterium entfernen."
+
+#: kcmconfigs/filtersetupdialog.cpp:86
+msgid "Choose the action for all mails which are filtered by this filter."
+msgstr ""
+"Wählen Sie die Aktion für die Mails aus, welche von diesem Filter erkannt "
+"wurden."
+
+#: kcmconfigs/filtersetupdialog.cpp:94 kcmconfigs/configfilter.cpp:132
+msgid "Spamcheck"
+msgstr "auf Spam prüfen"
+
+#: kcmconfigs/configfilter.cpp:33
+msgid "Activate Filter"
+msgstr "Filter aktivieren"
+
+#: kcmconfigs/configfilter.cpp:35
+msgid "Check to activate the header filter."
+msgstr "Header-Filter aktivieren"
+
+#: kcmconfigs/configfilter.cpp:41
+msgid "First Check: Sender Lists"
+msgstr "Erste Prüfung: Absender-Listen"
+
+#: kcmconfigs/configfilter.cpp:45
+msgid "Whitelist"
+msgstr "Whitelist"
+
+#: kcmconfigs/configfilter.cpp:46
+msgid ""
+"Click here to edit the list of senders whose mails shall pass the filter."
+msgstr ""
+"Klicken Sie hier, um die Liste der Absender zu bearbeiten, deren Mails den "
+"Filter passieren sollen."
+
+#: kcmconfigs/configfilter.cpp:52
+msgid "Blacklist"
+msgstr "Blacklist"
+
+#: kcmconfigs/configfilter.cpp:53
+msgid ""
+"Click here to edit the list of senders whose mails shall be deleted or "
+"marked."
+msgstr ""
+"Klicken Sie hier, um die Liste der Absender zu bearbeiten, deren Mails "
+"gelöscht oder markiert werden sollen."
+
+#: kcmconfigs/configfilter.cpp:65
+msgid "Second Check: Filters"
+msgstr "Zweite Prüfung: Filter"
+
+#: kcmconfigs/configfilter.cpp:70
+msgid "No."
+msgstr "Nr."
+
+#: kcmconfigs/configfilter.cpp:86
+msgid "Moves the selected filter at the top"
+msgstr "Den ausgewählten Filter an den Anfang verschieben."
+
+#: kcmconfigs/configfilter.cpp:87
+msgid "Moves the selected filter up"
+msgstr "Den ausgewählten Filter nach oben verschieben."
+
+#: kcmconfigs/configfilter.cpp:88
+msgid "Moves the selected filter down"
+msgstr "Den ausgewählten Filter nach unten verschieben."
+
+#: kcmconfigs/configfilter.cpp:89
+msgid "Moves the selected filter at the bottm"
+msgstr "Den ausgewählten Filter an das Ende verschieben."
+
+#: kcmconfigs/configfilter.cpp:116
+msgid "Third Check: Action for all others"
+msgstr ""
+"Dritte Prüfung: Aktion für die Mails, welche nicht herausgefiltert wurden"
+
+#: kcmconfigs/configfilter.cpp:123
+msgid ""
+"Choose the action for all mails which are not filtered by the steps before."
+msgstr ""
+"Wählen Sie die Aktion für die Mails aus, welche nicht herausgefiltert wurden."
+
+#: kcmconfigs/kwalletaccess.cpp:17 kcmconfigs/kwalletaccess.cpp:86
+#: kwalletaccess.cpp:17 kwalletaccess.cpp:86
+msgid "KWallet is not available."
+msgstr "KWallet ist nicht verfügbar."
+
+#: kcmconfigs/kwalletaccess.cpp:25 kcmconfigs/kwalletaccess.cpp:94
+#: kwalletaccess.cpp:25 kwalletaccess.cpp:94
+msgid "Could not get wallet name for network datas from KWallet."
+msgstr ""
+"Konnte den Namen der Brieftasche für Netzwerk-Daten nicht von KWallet "
+"erhalten."
+
+#: kcmconfigs/kwalletaccess.cpp:45 kcmconfigs/kwalletaccess.cpp:114
+#: kwalletaccess.cpp:45 kwalletaccess.cpp:114
+msgid "Could not open KWallet."
+msgstr "Konnte KWallet nicht öffnen."
+
+#: kcmconfigs/kwalletaccess.cpp:56 kwalletaccess.cpp:56
+msgid "Could not create folder for KShowmail in KWallet."
+msgstr "Konnte keinen Ordner für KShowmail in KWallet anlegen."
+
+#: kcmconfigs/kwalletaccess.cpp:65 kcmconfigs/kwalletaccess.cpp:122
+#: kwalletaccess.cpp:65 kwalletaccess.cpp:122
+msgid "Could not open folder for KShowmail in KWallet."
+msgstr "Konnte den Ordner für KShowmail in KWallet nicht öffnen."
+
+#: kcmconfigs/kwalletaccess.cpp:73 kwalletaccess.cpp:73
+msgid "Could not save password in KWallet."
+msgstr "Konnte das Passwort nicht in KWallet speichern."
+
+#: kcmconfigs/kwalletaccess.cpp:132 kwalletaccess.cpp:132
+msgid "Could not get password of account %1 from KWallet."
+msgstr "Konnte das Passwort für Konto %1 nicht aus KWallet auslesen."
+
+#: kcmconfigs/accountsetupdialog.cpp:182
+msgid "Please enter an account name."
+msgstr "Geben Sie bitte einen Kontonamen an."
+
+#: kcmconfigs/accountsetupdialog.cpp:228
+msgid "There is already an account named %1. Please choose another name."
+msgstr "Es gibt bereits ein Konto %1. Wählen Sie bitte einen anderen Namen."
+
+#: kcmconfigs/accountsetupdialog.cpp:241
+msgid ""
+"You have changed the account name. The account will lose all downloaded mail "
+"headers. Please perform a refresh."
+msgstr ""
+"Sie haben die Namen des Kontos geändert. Das Konto wird daher alle "
+"abgeholten E-Mails verlieren. Führen Sie bitte eine Aktualisierung durch."
+
+#: filterlog.cpp:128
+msgid "Could not save the filter log."
+msgstr "Konnte das Filter-Log nicht speichern."
+
+#: showrecordelem.cpp:160
+msgid "new"
+msgstr "neu"
+
+#: showrecordelem.cpp:162
+msgid "old"
+msgstr "alt"
+
+#: filterlogview.cpp:21
+msgid "Filter Log View"
+msgstr "Filter-Log"
+
+#: filterlogview.cpp:31
+msgid "Deleted Mails:"
+msgstr "gelöschte Mails:"
+
+#: filterlogview.cpp:36 filterlogview.cpp:63
+msgid "Sender"
+msgstr "Absender"
+
+#: filterlogview.cpp:49
+msgid "Clear the list of deleted mails"
+msgstr "Log von gelöschten Mails löschen"
+
+#: filterlogview.cpp:58
+msgid "Moved Mails:"
+msgstr "verschobene Mails:"
+
+#: filterlogview.cpp:65
+msgid "Moved To"
+msgstr "verschoben nach"
+
+#: filterlogview.cpp:78
+msgid "Clear the list of moved mails"
+msgstr "Log von verschobenen Mails löschen"
+
+#: kshowmail.cpp:75
+msgid ""
+"Thank You for using KShowmail.\n"
+"Please use the feedback dialog to tell us your experience with this program."
+msgstr ""
+"Vielen Dank, dass Sie KShowmail nutzen.\n"
+"Benutzen Sie bitte das Feedback-Formular, um uns Ihre Erfahrungen mit diesem "
+"Programm mitzuteilen."
+
+#: kshowmail.cpp:75
+msgid "Welcome"
+msgstr "Willkommen"
+
+#: kshowmail.cpp:102
+msgid "Autorefresh: %1"
+msgstr "Erneuern in: %1"
+
+#: kshowmail.cpp:132
+msgid "&Refresh messages"
+msgstr "&Nachrichten erneuern"
+
+#
+#: kshowmail.cpp:133
+msgid "Show &header of highlighted messages"
+msgstr "&Vorspann der markierten Nachrichten anzeigen"
+
+#
+#: kshowmail.cpp:134
+msgid "Show &complete highlighted messages"
+msgstr "&Vollständige markierte Nachrichten anzeigen"
+
+#: kshowmail.cpp:135
+msgid "&Delete highlighted messages"
+msgstr "&Lösche markierte Nachrichten"
+
+#: kshowmail.cpp:136
+msgid "S&top current transfer"
+msgstr "&Vorgang abbrechen"
+
+#: kshowmail.cpp:137
+msgid "Show Filter Log"
+msgstr "Filter-Log anzeigen"
+
+#: kshowmail.cpp:138
+msgid "Add sender to whitelist"
+msgstr "Füge Absender zur Whitelist hinzu"
+
+#: kshowmail.cpp:139
+msgid "Add sender to blacklist"
+msgstr "Füre Absender zur Blacklist hinzu"
+
+#: kshowmail.cpp:150
+msgid "Send &Feedback Mail"
+msgstr "Rückmeldung schicken"
+
+#: kshowmail.cpp:153
+msgid "Setup &account"
+msgstr "&Konto einrichten"
+
+#: kshowmail.cpp:159 kshowmail.cpp:543 kshowmail.cpp:559 kshowmail.cpp:644
+msgid "Ready."
+msgstr "Bereit."
+
+#: kshowmail.cpp:165
+msgid ""
+"Shows the number of deleted, moved or ignored mails by the filter.\n"
+"The positions denotes:\n"
+"by last refresh / since application start / listed by the log"
+msgstr ""
+"Zeigt die Anzahl der vom Filter gelöschten, verschobenen oder ignorierten "
+"Mails an.\n"
+"Die Positionen bedeuten:\n"
+"bei der letzten Aktualisierung / seit dem Start des Programms / im Log "
+"aufgelisted"
+
+#: kshowmail.cpp:326
+msgid "Refreshing ..."
+msgstr "Aktualisiere ..."
+
+#: kshowmail.cpp:363
+msgid "Job was stopped"
+msgstr "Auftrag wurde abgebrochen"
+
+#: kshowmail.cpp:392
+msgid "%1 message(s) with a total of %2 bytes are waiting"
+msgstr "%1 Nachrichten mit insgesamt %2 Bytes sind vorhanden"
+
+#: kshowmail.cpp:418
+msgid "Do you want to delete these mails?"
+msgstr "Möchten Sie diese E-Mails wirklich löschen?"
+
+#: kshowmail.cpp:418
+msgid "Delete?"
+msgstr "Löschen?"
+
+#: kshowmail.cpp:428
+msgid "Deleting Mail(s) ..."
+msgstr "Lösche E-Mail(s) ..."
+
+#: kshowmail.cpp:469
+msgid "Downloading ..."
+msgstr "Hole Nachricht ..."
+
+#: kshowmail.cpp:491
+msgid "Last Refresh: %1"
+msgstr "Letzte Aktualisierung: %1"
+
+#: kshowmail.cpp:523
+msgid ""
+"KShowmail will be closed.\n"
+"Are you sure?"
+msgstr ""
+"KShowmail wird beendet.\n"
+"Sind Sie sicher?"
+
+#: kshowmail.cpp:805
+msgid "Filter: Deleted: %1/%2/%3; Moved: %4/%5/%6; Ignored: %7"
+msgstr "Filter: Gelöscht: %1/%2/%3; Verschoben: %4/%5/%6; Ignoriert: %7"
+
+#~ msgid "Execute user commands"
+#~ msgstr "Ausführen von Benutzer-Kommandos"
diff --git a/po/es.po b/po/es.po
new file mode 100644
index 0000000..d56e6ef
--- /dev/null
+++ b/po/es.po
@@ -0,0 +1,1563 @@
+# translation of es.po to Spanish
+# translation of 20090226_es.po to
+# KTranslator Generated File
+# Copyright (C) 2003, 2009 Free Software Foundation, Inc.
+#
+#
+# Eggert Ehmke <eggert.ehmke@berlin.de>, 2003.
+# Elsa Andrés <e.andres@ist-sci.com>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: es\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-04-17 21:57+0200\n"
+"PO-Revision-Date: 2009-02-28 16:51+0100\n"
+"Last-Translator: Elsa Andrés <e.andres@ist-sci.com>\n"
+"Language-Team: Spanish <es@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Translator: Stephan Kulow <coolo@kde.org>\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#: _translatorinfo.cpp:1 main.cpp:65
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr ""
+"Stephan Giesler, Elsa Andrés 2009"
+
+#: _translatorinfo.cpp:3 main.cpp:65
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr ""
+"giesler@gmx.net, e.andres@ist-sci.com"
+
+#: main.cpp:33
+msgid "A powerful pop3 mail checker"
+msgstr "Una poderosa herramienta para verificar cuentas POP3"
+
+#: main.cpp:40
+msgid "Refresh messages now"
+msgstr "Actualizar la lista de mensajes"
+
+#: main.cpp:42
+msgid "Launch configure dialog"
+msgstr "Lanzar el cuadro de diálogo de configuración"
+
+#: main.cpp:107
+msgid "Kshowmail is already running!"
+msgstr "¡KShowmail ya se está ejecutando!"
+
+#. i18n: file AlertDlg.ui line 16
+#: AlertDlg.cpp:262 rc.cpp:15
+#, no-c-format
+msgid "KShowmail"
+msgstr "KShowmail"
+
+#. i18n: file AlertDlg.ui line 27
+#: AlertDlg.cpp:263 rc.cpp:18 kcmconfigs/filtersetupitem.cpp:257
+#: kcmconfigs/filtersetupdialog.cpp:95 kcmconfigs/configfilter.cpp:133
+#, no-c-format
+msgid "Ignore"
+msgstr "Ignorar"
+
+#. i18n: file AlertDlg.ui line 35
+#: AlertDlg.cpp:264 rc.cpp:21 kcmconfigs/configactions.cpp:49
+#, no-c-format
+msgid "Show main window"
+msgstr "Mostrar la ventana principal"
+
+#. i18n: file AlertDlg.ui line 61
+#: AlertDlg.cpp:265 rc.cpp:24
+#, no-c-format
+msgid "New mail"
+msgstr "¡Tiene mensajes"
+
+#
+#. i18n: file AlertDlg.ui line 76
+#: AlertDlg.cpp:266 rc.cpp:27
+#, no-c-format
+msgid "has arrived !"
+msgstr "nuevos!"
+
+#: serverdialog.cpp:44 kcmconfigs/accountsetupdialog.cpp:39
+msgid "Account:"
+msgstr "Cuenta:"
+
+#: serverdialog.cpp:47 serverdialog.cpp:48
+#: kcmconfigs/accountsetupdialog.cpp:42 kcmconfigs/accountsetupdialog.cpp:43
+msgid "Unique Account Name"
+msgstr "Nombre de cuenta único"
+
+#: serverdialog.cpp:52 kcmconfigs/accountsetupdialog.cpp:47
+msgid "Server:"
+msgstr "Servidor:"
+
+#: serverdialog.cpp:55 serverdialog.cpp:56
+#: kcmconfigs/accountsetupdialog.cpp:49 kcmconfigs/accountsetupdialog.cpp:50
+msgid "Server Name"
+msgstr "Nombre del servidor"
+
+#: serverdialog.cpp:60 kcmconfigs/accountsetupdialog.cpp:54
+msgid "Protocol:"
+msgstr "Protocolo:"
+
+#: serverdialog.cpp:63 serverdialog.cpp:64
+#: kcmconfigs/accountsetupdialog.cpp:57 kcmconfigs/accountsetupdialog.cpp:58
+msgid ""
+"Protocol, which shall be used to get the mails from the server. Currently "
+"KShowmail just supports POP3."
+msgstr ""
+"Protocolo que utilizará para obtener los mensajes del servidor. "
+"Actualmente KShowmail sólo admite POP3."
+
+#: serverdialog.cpp:68 kcmconfigs/accountsetupdialog.cpp:62
+msgid "Port:"
+msgstr "Puerto:"
+
+#: serverdialog.cpp:71 serverdialog.cpp:72
+#: kcmconfigs/accountsetupdialog.cpp:65 kcmconfigs/accountsetupdialog.cpp:66
+msgid "Port Number. Normally POP3 uses port 110."
+msgstr "Número de puerto. Normalmente, POP3 utiliza el puerto 110."
+
+#: serverdialog.cpp:76 kcmconfigs/accountsetupdialog.cpp:70
+msgid "User:"
+msgstr "Usuario:"
+
+#: serverdialog.cpp:78 serverdialog.cpp:79
+#: kcmconfigs/accountsetupdialog.cpp:72 kcmconfigs/accountsetupdialog.cpp:73
+msgid "To authenticate to the mail server you need an user name."
+msgstr "Para autentificarse ante el servidor necesita un nombre de usuario."
+
+#: serverdialog.cpp:84 kcmconfigs/accountsetupdialog.cpp:78
+msgid "Password"
+msgstr "Contraseña"
+
+#: serverdialog.cpp:95 kcmconfigs/accountsetupdialog.cpp:89
+msgid "Don't save"
+msgstr "No guardar"
+
+#: serverdialog.cpp:96 kcmconfigs/accountsetupdialog.cpp:90
+msgid "Save password"
+msgstr "Guardar la contraseña"
+
+#: serverdialog.cpp:97 kcmconfigs/accountsetupdialog.cpp:91
+msgid "Use KWallet"
+msgstr "Utilizar KWallet"
+
+#: serverdialog.cpp:101 kcmconfigs/accountsetupdialog.cpp:95
+msgid "Don't save password. KShowmail will ask you for it at first server connect."
+msgstr "No guardar la contraseña. KShowmail se la pedirá cuando conecte con el servidor la primera vez."
+
+#: serverdialog.cpp:102 kcmconfigs/accountsetupdialog.cpp:96
+msgid ""
+"Save password in the configuration file. Not recommended, because the "
+"password is just lightly encrypted"
+msgstr ""
+"Guardar la contraseña en el archivo de configuración. No se recomienda, "
+"ya que la contraseña está ligeramente cifrada"
+
+#: serverdialog.cpp:103 kcmconfigs/accountsetupdialog.cpp:97
+msgid ""
+"Use KWallet to save the password. Maybe you have to type in the KWallet "
+"master password at first server connect."
+msgstr ""
+"Utilizar KWallet para guardar la contraseña. Es posible que tenga que "
+"introducir la contraseña maestra cuando conecte con el servidor la primera vez."
+
+#: serverdialog.cpp:119 kcmconfigs/configdisplay.cpp:46
+#: kcmconfigs/accountsetupdialog.cpp:113 kshowmailview.cpp:53
+msgid "Active"
+msgstr "Activar"
+
+#: serverdialog.cpp:120 kcmconfigs/accountsetupdialog.cpp:114
+msgid "Select it to activate this account."
+msgstr "Seleccione esta opción para activar la cuenta."
+
+#: serverdialog.cpp:125 kcmconfigs/accountsetupdialog.cpp:119
+msgid "Encryption"
+msgstr "Cifrado"
+
+#: serverdialog.cpp:135 kshowmailfeedback.cpp:57
+#: kcmconfigs/accountsetupdialog.cpp:129
+msgid "None"
+msgstr "Ninguno"
+
+#: serverdialog.cpp:136 kcmconfigs/accountsetupdialog.cpp:130
+msgid "SSL"
+msgstr "SSL"
+
+#: serverdialog.cpp:137 kcmconfigs/accountsetupdialog.cpp:131
+msgid "TLS"
+msgstr "TLS"
+
+#: serverdialog.cpp:141 kcmconfigs/accountsetupdialog.cpp:135
+msgid ""
+"The download of the mail header and body will not be encrypted. Use this, if "
+"your provider doesn't make a secure transfer available."
+msgstr ""
+"La descarga de la cabecera y el cuerpo del correo no estará cifrada. Utilice "
+"esta opción si su proveedor no dispone de transferencia segura."
+
+#: serverdialog.cpp:142 kcmconfigs/accountsetupdialog.cpp:136
+msgid ""
+"Secure Sockets Layer (SSL), is a cryptographic protocol that provides secure "
+"communications on the Internet."
+msgstr ""
+"El Protocolo de Capa de Conexión Segura (SSL) es un protocolo criptográfico que "
+"proporciona comunicaciones seguras en Internet."
+
+#: serverdialog.cpp:143 kcmconfigs/accountsetupdialog.cpp:137
+msgid ""
+"Transport Layer Security (TLS) is a cryptographic protocol that provides "
+"secure communications on the Internet. It is the successor of SSL."
+msgstr ""
+"Seguridad de la Capa de Transporte (TLS) es un protocolo criptográfico que "
+"proporciona comunicaciones seguras en Internet. Es el sucesor de SSL."
+
+#
+#: serverdialog.cpp:152 kcmconfigs/accountsetupdialog.cpp:145
+msgid "General"
+msgstr "General"
+
+#: serverdialog.cpp:153 kcmconfigs/accountsetupdialog.cpp:146
+msgid "Security"
+msgstr "Seguridad"
+
+#: serverdialog.cpp:157 kcmconfigs/accountsetupdialog.cpp:150
+msgid "New account"
+msgstr "Nueva cuenta"
+
+#: serverdialog.cpp:159 kcmconfigs/accountsetupdialog.cpp:152
+msgid "Edit account"
+msgstr "Editar cuenta"
+
+#: serverdialog.cpp:194 kcmconfigs/accountsetupdialog.cpp:187
+msgid "Please enter an server."
+msgstr "Introduzca el servidor."
+
+#: serverdialog.cpp:200 kcmconfigs/accountsetupdialog.cpp:193
+msgid "Please enter an user name."
+msgstr "Introduzca el nombre de usuario."
+
+#: kshowmailfeedback.cpp:31
+msgid "What is your general opinion about this program?"
+msgstr "¿Cuál es su opinión general sobre este programa?"
+
+#: kshowmailfeedback.cpp:33
+msgid "It's one of my favourites"
+msgstr "Es uno de mis favoritos"
+
+#: kshowmailfeedback.cpp:34
+msgid "I like it"
+msgstr "Me gusta"
+
+#: kshowmailfeedback.cpp:35
+msgid "It's sometimes useful"
+msgstr "A veces es útil"
+
+#: kshowmailfeedback.cpp:36
+msgid "It's average"
+msgstr "Está bien"
+
+#: kshowmailfeedback.cpp:37
+msgid "Nice try, but this could be done better"
+msgstr "Buen intento, pero se podría hacer mejor"
+
+#: kshowmailfeedback.cpp:38
+msgid "It's poor"
+msgstr "Es malo"
+
+#: kshowmailfeedback.cpp:39
+msgid "It's useless"
+msgstr "Es inútil"
+
+#: kshowmailfeedback.cpp:40
+msgid "It's crap"
+msgstr "Es un asco"
+
+#: kshowmailfeedback.cpp:42
+msgid "Which features of this program do you like?"
+msgstr "¿Qué características de este programa le gustan?"
+
+#: kshowmailfeedback.cpp:45
+msgid "What is your favourite feature?"
+msgstr "¿Cuál es su característica favorita?"
+
+#: kshowmailfeedback.cpp:48
+msgid "Which features don't you like?"
+msgstr "¿Qué características no le gustan?"
+
+#: kshowmailfeedback.cpp:51
+msgid "Which features do you never use?"
+msgstr "¿Cuáles son las características que nunca usa?"
+
+#: kshowmailfeedback.cpp:54
+msgid "Are there features you are missing?"
+msgstr "¿Echa en falta alguna característica?"
+
+#: kshowmailfeedback.cpp:55
+msgid "Yes, a lot! (please add comment below)"
+msgstr "¡Sí, muchas! (añada un comentario abajo)"
+
+#: kshowmailfeedback.cpp:56
+msgid "Some (please add comment below)"
+msgstr "Algunas (añada un comentario abajo)"
+
+#: kshowmailfeedback.cpp:58
+msgid "It has too many features already!"
+msgstr "¡Ya tiene demasiadas características!"
+
+#: kshowmailfeedback.cpp:60
+msgid "How do you rate the stability of this program?"
+msgstr "¿Cómo considera la estabilidad de este programa?"
+
+#: kshowmailfeedback.cpp:61
+msgid "Rock solid"
+msgstr "Sólido como una roca"
+
+#: kshowmailfeedback.cpp:62 kshowmailfeedback.cpp:69
+msgid "Good"
+msgstr "Buena"
+
+#: kshowmailfeedback.cpp:63 kshowmailfeedback.cpp:70 kshowmailfeedback.cpp:77
+#: kshowmailfeedback.cpp:84
+msgid "Average"
+msgstr "Media"
+
+#: kshowmailfeedback.cpp:64 kshowmailfeedback.cpp:71
+msgid "Poor"
+msgstr "Mala"
+
+#: kshowmailfeedback.cpp:65
+msgid "It keeps crashing all the time"
+msgstr "Se cuelga todo el tiempo"
+
+#: kshowmailfeedback.cpp:67
+msgid "How do you rate the performance of this program?"
+msgstr "¿Cómo considera el rendimiento de este programa?"
+
+#: kshowmailfeedback.cpp:68
+msgid "Great"
+msgstr "Fantástico"
+
+#: kshowmailfeedback.cpp:72
+msgid "It's so slow it drives me nuts"
+msgstr "Es tan lento que me vuelve loco"
+
+#: kshowmailfeedback.cpp:74
+msgid "What is your experience with computers in general?"
+msgstr "¿Cuál es su experiencia con los equipos en general?"
+
+#: kshowmailfeedback.cpp:75 kshowmailfeedback.cpp:82
+msgid "Expert"
+msgstr "Experto"
+
+#: kshowmailfeedback.cpp:76 kshowmailfeedback.cpp:83
+msgid "Fair"
+msgstr "Bueno"
+
+#: kshowmailfeedback.cpp:78 kshowmailfeedback.cpp:85
+msgid "Learning"
+msgstr "Aprendiendo"
+
+#: kshowmailfeedback.cpp:79 kshowmailfeedback.cpp:86
+msgid "Newbie"
+msgstr "Novato"
+
+#: kshowmailfeedback.cpp:81
+msgid "What is your experience with Unix/Linux systems?"
+msgstr "¿Cuál es su experiencia con sistemas Unix/Linux?"
+
+#: kshowmailfeedback.cpp:88
+msgid "Did you have trouble figuring out how to work with this program?"
+msgstr "¿Ha tenido algún problema para conocer el funcionamiento de este programa?"
+
+#: kshowmailfeedback.cpp:90
+msgid "No problem"
+msgstr "Ningún problema"
+
+#: kshowmailfeedback.cpp:91
+msgid "Some"
+msgstr "Alguno"
+
+#: kshowmailfeedback.cpp:92
+msgid "I'm still learning"
+msgstr "Aún lo estoy aprendiendo"
+
+#: kshowmailfeedback.cpp:93
+msgid "I didn't have a clue what to do at first"
+msgstr "No sabía qué hacer al principio"
+
+#: kshowmailfeedback.cpp:94
+msgid "I still don't have a clue what to do"
+msgstr "Aún no sé qué hacer"
+
+#: kshowmailfeedback.cpp:96
+msgid "Where do you use this program most?"
+msgstr "¿Dónde utiliza más este programa?"
+
+#: kshowmailfeedback.cpp:97
+msgid "At work"
+msgstr "En el trabajo"
+
+#: kshowmailfeedback.cpp:98
+msgid "At home"
+msgstr "En casa"
+
+#: kshowmailfeedback.cpp:99
+msgid "At university / school"
+msgstr "En la universidad / escuela"
+
+#: kshowmailfeedback.cpp:101
+msgid "What is your primary role there?"
+msgstr "¿Qué funciones desempeña en ese lugar?"
+
+#: kshowmailfeedback.cpp:102 kshowmailfeedback.cpp:110
+msgid "Home user"
+msgstr "Usuario doméstico"
+
+#: kshowmailfeedback.cpp:103 kshowmailfeedback.cpp:111
+msgid "Student"
+msgstr "Estudiante"
+
+#: kshowmailfeedback.cpp:104 kshowmailfeedback.cpp:112
+msgid "Educational (teacher / professor)"
+msgstr "Educativas (profesor / catedrático)"
+
+#: kshowmailfeedback.cpp:105 kshowmailfeedback.cpp:113
+msgid "Non-computer related work"
+msgstr "Trabajo no relacionado con equipos"
+
+#: kshowmailfeedback.cpp:106 kshowmailfeedback.cpp:114
+msgid "Developer"
+msgstr "Desarrollador"
+
+#: kshowmailfeedback.cpp:107 kshowmailfeedback.cpp:115
+msgid "System administrator"
+msgstr "Administrador de sistemas"
+
+#: kshowmailfeedback.cpp:109
+msgid "Do you have any other roles there?"
+msgstr "¿Realiza alguna otra función en ese lugar?"
+
+#: kshowmailfeedback.cpp:117
+msgid "How did you get to know this program?"
+msgstr "¿Cómo conoció este programa?"
+
+#: kshowmailfeedback.cpp:118
+msgid "In a menu on my machine"
+msgstr "Desde un menú de mi equipo"
+
+#: kshowmailfeedback.cpp:119
+msgid "Somebody told me about it"
+msgstr "Alguien me habló de él"
+
+#: kshowmailfeedback.cpp:120
+msgid "On the internet"
+msgstr "En Internet"
+
+#: kshowmailfeedback.cpp:121
+msgid "Printed magazine / book"
+msgstr "En una revista / libro"
+
+#: kshowmailfeedback.cpp:122
+msgid "Other (please add comment below)"
+msgstr "Otro (añada un comentario abajo)"
+
+#: kshowmailfeedback.cpp:124
+msgid "Would you recommend this program to a friend?"
+msgstr "¿Le recomendaría este programa a un amigo?"
+
+#: kshowmailfeedback.cpp:132
+msgid "The message list display in general"
+msgstr "La visualización de los mensajes de la lista, en general"
+
+#: kshowmailfeedback.cpp:133
+msgid "Display of message headers"
+msgstr "La visualización de las cabeceras de los mensajes"
+
+#
+#: kshowmailfeedback.cpp:134
+msgid "Display of complete messages"
+msgstr "La visualización de los mensajes completos"
+
+#: kshowmailfeedback.cpp:136
+msgid "Filters"
+msgstr "Filtros"
+
+#: kshowmailfeedback.cpp:137
+msgid "Manual delete of unwanted messages"
+msgstr "Eliminar manualmente los mensajes no deseados"
+
+#: kshowmailfeedback.cpp:138
+msgid "Automatic move of filtered messages"
+msgstr "Mover automáticamente los mensajes filtrados"
+
+#: kshowmailfeedback.cpp:139
+msgid "Automatic delete of filtered messages"
+msgstr "Eliminar automáticamente los mensajes filtrados"
+
+#: kshowmailfeedback.cpp:140
+msgid "Automatic mark of filtered messages"
+msgstr "Marcar automáticamente los mensajes filtrados"
+
+#: kshowmailfeedback.cpp:141
+msgid "Ignoring of filtered messages"
+msgstr "Ignorar los mensajes filtrados"
+
+#: kshowmailfeedback.cpp:142
+msgid "Integration of SpamAssassin"
+msgstr "Integración con SpamAssassin"
+
+#: kshowmailfeedback.cpp:143
+msgid "White- and Blacklist"
+msgstr "Lista blanca y lista negra"
+
+#: kshowmailfeedback.cpp:144
+msgid "Filter Log"
+msgstr "Registro del filtro"
+
+#: kshowmailfeedback.cpp:145
+msgid "Filter messages by regular expressions"
+msgstr "Filtrar los mensajes usando expresiones regulares"
+
+#: kshowmailfeedback.cpp:148
+msgid "Sorting of messages by size, date etc."
+msgstr "Ordenar los mensajes por tamaño, fecha, etc."
+
+#: kshowmailfeedback.cpp:150
+msgid "Play sound"
+msgstr "Reproducir un sonido"
+
+#: kshowmailfeedback.cpp:151
+msgid "Play beep"
+msgstr "Reproducir el timbre (beep)"
+
+#: kshowmailfeedback.cpp:152
+msgid "Initial timer"
+msgstr "Temporizador inicial"
+
+#: kshowmailfeedback.cpp:153
+msgid "Interval timer"
+msgstr "Temporizador de intervalos"
+
+#: kshowmailfeedback.cpp:154
+msgid "This feedback survey :-)"
+msgstr "Esta encuesta de opinión :-)"
+
+#: configelem.cpp:294
+msgid "Please type in the password for %1"
+msgstr "Introduzca la contraseña de %1"
+
+#: configelem.cpp:515
+msgid "Time out on %1. The operation could not be finished on time"
+msgstr "Tiempo límite alcanzado para %1. No se ha podido finalizar la operación en el tiempo establecido "
+
+#: configelem.cpp:515
+msgid "Time Out"
+msgstr "Tiempo límite"
+
+#: configelem.cpp:1647
+msgid ""
+"You want to check your mails for spam, but SpamAssassin is not running.\n"
+"KShowmail skips the spam check."
+msgstr ""
+"Quiere analizar los correos de spam pero SpamAssassin no se está ejecutando.\n"
+"KShowmail omitirá la comprobación del spam."
+
+#: configelem.cpp:1647
+msgid "SpamAssassin is not running"
+msgstr "SpamAssassin no se está ejecutando"
+
+#: kfeedback.cpp:35
+msgid "Feedback"
+msgstr "Opinión"
+
+#: kfeedback.cpp:39
+msgid "&Mail this..."
+msgstr "Enviar por e-&mail..."
+
+#: kfeedback.cpp:89
+msgid ""
+"<p><b>Please tell us your opinion about this program.</b></p><p>You will be "
+"able to review everything in your mailer before any mail is sent.<br>Nothing "
+"will be sent behind your back.</p>"
+msgstr ""
+"<p><b>Díganos su opinión sobre este programa.</b></p><p>Podrá revisarlo "
+"todo antes de que se envíe por correo electrónico.<br>No se enviará nada "
+"sin su consentimiento.</p>"
+
+#: kfeedback.cpp:114
+msgid "Questions marked with "
+msgstr "Las preguntas marcadas con"
+
+#: kfeedback.cpp:123
+msgid " must be answered before a mail can be sent."
+msgstr " se deben contestar para poder enviar el correo electrónico."
+
+#: kfeedback.cpp:134
+msgid "&Additional comments:"
+msgstr "Comentarios &adicionales:"
+
+#: kfeedback.cpp:312
+msgid "yes"
+msgstr "sí"
+
+#: kfeedback.cpp:313
+msgid "no"
+msgstr "no"
+
+#: showheaderdialog.cpp:28 showmaildialog.cpp:39
+msgid "Subject:"
+msgstr "Asunto:"
+
+#. i18n: file kshowmailui.rc line 4
+#: rc.cpp:3
+#, no-c-format
+msgid "&Actions"
+msgstr "&Acciones"
+
+#: showmaildialog.cpp:15
+msgid "Reply"
+msgstr "Responder"
+
+#
+#: showmaildialog.cpp:30
+msgid "Sender:"
+msgstr "Remitente:"
+
+#: showmaildialog.cpp:33
+msgid "Date:"
+msgstr "Fecha:"
+
+#: showmaildialog.cpp:36
+msgid "Size:"
+msgstr "Tamaño:"
+
+#: kshowmaildock.cpp:37
+msgid "KShowmail: a powerful pop3 email checker"
+msgstr "Una poderosa herramienta para verificar cuentas POP3"
+
+#: kcmconfigs/filtercriteriawidget.cpp:26 kcmconfigs/configdisplay.cpp:78
+#: kshowmailview.cpp:71
+msgid "From"
+msgstr "De"
+
+#: kcmconfigs/filtercriteriawidget.cpp:27 kcmconfigs/configdisplay.cpp:82
+#: kshowmailview.cpp:72
+msgid "To"
+msgstr "Para"
+
+#: kcmconfigs/filtercriteriawidget.cpp:28
+msgid "Size (Bytes)"
+msgstr "Tamaño (bytes)"
+
+#: kcmconfigs/filtercriteriawidget.cpp:29 kshowmailview.cpp:73
+#: filterlogview.cpp:38 filterlogview.cpp:66
+msgid "Subject"
+msgstr "Asunto"
+
+#
+#: kcmconfigs/filtercriteriawidget.cpp:30
+msgid "Header"
+msgstr "Cabecera"
+
+#: kcmconfigs/filtercriteriawidget.cpp:31 kcmconfigs/configdisplay.cpp:50
+#: kcmconfigs/configdisplay.cpp:74 kshowmailview.cpp:54 kshowmailview.cpp:70
+#: filterlogview.cpp:37 filterlogview.cpp:64
+msgid "Account"
+msgstr "Cuenta"
+
+#: kcmconfigs/filtercriteriawidget.cpp:48
+msgid "contains"
+msgstr "contiene"
+
+#: kcmconfigs/filtercriteriawidget.cpp:49
+msgid "does not contain"
+msgstr "no contiene"
+
+#: kcmconfigs/filtercriteriawidget.cpp:50
+msgid "equals"
+msgstr "igual"
+
+#: kcmconfigs/filtercriteriawidget.cpp:51
+msgid "does not equal"
+msgstr "no es igual"
+
+#: kcmconfigs/filtercriteriawidget.cpp:52
+msgid "matches regular expression"
+msgstr "coincide con la expresión regular"
+
+#: kcmconfigs/filtercriteriawidget.cpp:53
+msgid "does not match reg. expr."
+msgstr "no coincide con la expresión regular"
+
+#: kcmconfigs/filtercriteriawidget.cpp:69
+msgid "is equal to"
+msgstr "es igual a"
+
+#: kcmconfigs/filtercriteriawidget.cpp:70
+msgid "is not equal to"
+msgstr "no es igual a"
+
+#: kcmconfigs/filtercriteriawidget.cpp:71
+msgid "is greater than"
+msgstr "es mayor que"
+
+#: kcmconfigs/filtercriteriawidget.cpp:72
+msgid "is greater than or equal to"
+msgstr "es mayor o igual que"
+
+#: kcmconfigs/filtercriteriawidget.cpp:73
+msgid "is less than"
+msgstr "es menor que"
+
+#: kcmconfigs/filtercriteriawidget.cpp:74
+msgid "is less than or equal to"
+msgstr "es menor o igual que"
+
+#: kcmconfigs/filtercriteriawidget.cpp:107
+msgid "Case sensitive"
+msgstr "Distingue mayúsculas"
+
+#: kcmconfigs/filtercriteriawidget.cpp:196
+msgid "The Regular Expression Editor could not be initilized."
+msgstr "No se ha podido inicializar el editor de expresiones regulares."
+
+#: kcmconfigs/filtercriteriawidget.cpp:211
+msgid "The Regular Expression Editor is not available."
+msgstr "El editor de expresiones regulares no está disponible."
+
+#: kcmconfigs/configlog.cpp:34
+msgid "Log mails deleted by filter"
+msgstr "Registrar los correos eliminados por el filtro"
+
+#: kcmconfigs/configlog.cpp:36
+msgid "Check to activate the log of mails deleted by filter."
+msgstr "Marcar para activar el registro de los correos eliminados por el filtro."
+
+#: kcmconfigs/configlog.cpp:46 kcmconfigs/configlog.cpp:78
+msgid "Remove log entries at exit"
+msgstr "Eliminar las entradas del registro al salir"
+
+#: kcmconfigs/configlog.cpp:52 kcmconfigs/configlog.cpp:84
+msgid "Remove log entries after"
+msgstr "Eliminar las entradas del registro tras"
+
+#: kcmconfigs/configlog.cpp:58 kcmconfigs/configlog.cpp:90
+msgid " Days"
+msgstr " Días"
+
+#: kcmconfigs/configlog.cpp:66
+msgid "Log mails moved by filter"
+msgstr "Registrar los correos movidos por el filtro"
+
+#: kcmconfigs/configlog.cpp:68
+msgid "Check to activate the log of mails moved by filter."
+msgstr "Marcar para activar el registro de los correos movidos por el filtro."
+
+#: kcmconfigs/configdisplay.cpp:33
+msgid "Account list"
+msgstr "Lista de cuentas"
+
+#: kcmconfigs/configdisplay.cpp:35
+msgid "Mail list"
+msgstr "Lista de correos"
+
+#: kcmconfigs/configdisplay.cpp:37
+msgid "Mail content"
+msgstr "Contenido del correo"
+
+#: kcmconfigs/configdisplay.cpp:47
+msgid "To switch on/off the 'Active' column in the account list"
+msgstr "Para activar/desactivar la columna 'Activar' en la lista de cuentas"
+
+#: kcmconfigs/configdisplay.cpp:51
+msgid "To switch on/off the 'Account' column in the account list"
+msgstr "Para activar/desactivar la columna 'Cuentas' en la lista de cuentas"
+
+#: kcmconfigs/configdisplay.cpp:54 kshowmailview.cpp:55
+msgid "Server"
+msgstr "Servidor"
+
+#: kcmconfigs/configdisplay.cpp:55
+msgid "To switch on/off the 'Server' column in the account list"
+msgstr "Para activar/desactivar la columna 'Servidor' en la lista de cuentas"
+
+#: kcmconfigs/configdisplay.cpp:58 kshowmailview.cpp:56
+msgid "User"
+msgstr "Usuario"
+
+#: kcmconfigs/configdisplay.cpp:59
+msgid "To switch on/off the 'User' column in the account list"
+msgstr "Para activar/desactivar la columna 'Usuario' en la lista de cuentas"
+
+#
+#: kcmconfigs/configdisplay.cpp:62 kshowmailview.cpp:57
+msgid "Messages"
+msgstr "Mensajes"
+
+#: kcmconfigs/configdisplay.cpp:63
+msgid "To switch on/off the 'Messages' column in the account list"
+msgstr "Para activar/desactivar la columna 'Mensajes' en la lista de cuentas"
+
+#: kcmconfigs/configdisplay.cpp:66
+msgid "Si&ze"
+msgstr "Ta&maño"
+
+#: kcmconfigs/configdisplay.cpp:67
+msgid "To switch on/off the 'Size' column in the account list"
+msgstr "Para activar/desactivar la columna 'Tamaño' en la lista de cuentas"
+
+#: kcmconfigs/configdisplay.cpp:70 kshowmailview.cpp:69
+msgid "Number"
+msgstr "Número"
+
+#: kcmconfigs/configdisplay.cpp:71
+msgid "To switch on/off the 'Number' column in the message list"
+msgstr "Para activar/desactivar la columna 'Número' en la lista de mensajes"
+
+#: kcmconfigs/configdisplay.cpp:75
+msgid "To switch on/off the 'Account' column in the message list"
+msgstr "Para activar/desactivar la columna 'Cuenta' en la lista de mensajes"
+
+#: kcmconfigs/configdisplay.cpp:79
+msgid "To switch on/off the 'From' column in the message list"
+msgstr "Para activar/desactivar la columna 'De' en la lista de mensajes"
+
+#: kcmconfigs/configdisplay.cpp:83
+msgid "To switch on/off the 'To' column in the message list"
+msgstr "Para activar/desactivar la columna 'Para' en la lista de mensajes"
+
+#: kcmconfigs/configdisplay.cpp:86
+msgid "Su&bject"
+msgstr "Asun&to"
+
+#: kcmconfigs/configdisplay.cpp:87
+msgid "To switch on/off the 'Subject' column in the message list"
+msgstr "Para activar/desactivar la columna 'Asunto' en la lista de mensajes"
+
+#: kcmconfigs/configdisplay.cpp:90 kshowmailview.cpp:74 filterlogview.cpp:35
+#: filterlogview.cpp:62
+msgid "Date"
+msgstr "Fecha"
+
+#: kcmconfigs/configdisplay.cpp:91
+msgid "To switch on/off the 'Date' column in the message list"
+msgstr "Para activar/desactivar la columna 'Fecha' en la lista de mensajes"
+
+#: kcmconfigs/configdisplay.cpp:94 kshowmailview.cpp:58 kshowmailview.cpp:75
+msgid "Size"
+msgstr "Tamaño"
+
+#: kcmconfigs/configdisplay.cpp:95
+msgid "To switch on/off the 'Size' column in the message list"
+msgstr "Para activar/desactivar la columna 'Tamaño' en la lista de mensajes"
+
+#: kcmconfigs/configdisplay.cpp:98 kshowmailview.cpp:76
+msgid "Content"
+msgstr "Contenido"
+
+#: kcmconfigs/configdisplay.cpp:99
+msgid "To switch on/off the 'Content' column in the message list"
+msgstr "Para activar/desactivar la columna 'Contenido' en la lista de mensajes"
+
+#
+#: kcmconfigs/configdisplay.cpp:102 kshowmailview.cpp:77
+msgid "State"
+msgstr "Estado"
+
+#: kcmconfigs/configdisplay.cpp:103
+msgid "To switch on/off the 'State' column in the message list"
+msgstr "Para activar/desactivar la columna 'Estado' en la lista de mensajes"
+
+#: kcmconfigs/configdisplay.cpp:106
+msgid "Allow HTML"
+msgstr "Permitir HTML"
+
+#: kcmconfigs/configdisplay.cpp:107
+msgid "To switch on/off HTML in the message view"
+msgstr "Para activar/desactivar el formato HTML en la vista de mensajes"
+
+#: kcmconfigs/configaccounts.cpp:34 kcmconfigs/configfilter.cpp:71
+msgid "Name"
+msgstr "Nombre"
+
+#: kcmconfigs/configaccounts.cpp:194
+msgid "Do you really want to remove account %1?"
+msgstr "¿Quiere eliminar la cuenta %1?"
+
+#
+#: kcmconfigs/configactions.cpp:33
+msgid "Action if new &mail"
+msgstr "Acción si hay &correo nuevo"
+
+#
+#: kcmconfigs/configactions.cpp:34
+msgid "Action if &no mail"
+msgstr "Acción si &no hay correo nuevo"
+
+#
+#: kcmconfigs/configactions.cpp:45
+msgid "Show message box"
+msgstr "Mostrar el mensaje"
+
+#: kcmconfigs/configactions.cpp:46
+msgid "Show message if new mail arrives"
+msgstr "Mostrar un mensaje cuando lleguen nuevos correos"
+
+#
+#: kcmconfigs/configactions.cpp:50
+msgid "Show main window if new mail arrives"
+msgstr "Mostrar ventana principal si llega correo nuevo"
+
+#: kcmconfigs/configactions.cpp:53
+msgid "&Beep"
+msgstr "&Timbre (beep)"
+
+#: kcmconfigs/configactions.cpp:54
+msgid "Beeps the internal speaker if new mail"
+msgstr "Hace sonar el timbre interno si existe correo nuevo"
+
+#: kcmconfigs/configactions.cpp:57
+msgid "Sound:"
+msgstr "Sonido:"
+
+#: kcmconfigs/configactions.cpp:58
+msgid "Plays sound if new mail"
+msgstr "Reproducir un sonido si existe correo nuevo"
+
+#
+#: kcmconfigs/configactions.cpp:61
+msgid "Play the selected sound file"
+msgstr "Reproducir el archivo de sonido seleccionado"
+
+#: kcmconfigs/configactions.cpp:67
+msgid "Press to select sound file"
+msgstr "Pulse para seleccionar archivo de sonido"
+
+#: kcmconfigs/configactions.cpp:70
+msgid "Command:"
+msgstr "Comando:"
+
+#
+#: kcmconfigs/configactions.cpp:71
+msgid "Starts external program if new mail"
+msgstr "Inicia un programa externo si hay correo nuevo"
+
+#: kcmconfigs/configactions.cpp:74
+msgid "Start the selected program"
+msgstr "Iniciar el programa seleccionado"
+
+#: kcmconfigs/configactions.cpp:80 kcmconfigs/configactions.cpp:213
+msgid "Select external command"
+msgstr "Seleccionar comando externo"
+
+#: kcmconfigs/configactions.cpp:84
+msgid "Minimi&ze"
+msgstr "Minimi&zar"
+
+#: kcmconfigs/configactions.cpp:85
+msgid "Minimize window if no new mail"
+msgstr "Minimizar la ventana si no existe correo nuevo"
+
+#: kcmconfigs/configactions.cpp:87
+msgid "Terminate"
+msgstr "Terminar"
+
+#: kcmconfigs/configactions.cpp:88
+msgid "Terminate kshowmail if no new mail"
+msgstr "Finalizar kshowmail si no existe correo nuevo"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "Sound files (*.wav, *.ogg)"
+msgstr "Archivos de sonido (*.wav, *.ogg)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "All files (*)"
+msgstr "Todos los archivos (*)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "Select Sound File"
+msgstr "Seleccionar archivo de sonido"
+
+#: kcmconfigs/configspamcheck.cpp:37
+msgid ""
+"KShowmail uses SpamAssassin to check the mails for spam. You have to "
+"install, configure and start the SpamAssassin daemon, before you can use "
+"this service."
+msgstr ""
+"KShowmail utiliza SpamAssassin para analizar los correos de spam. Tiene que "
+"instalar, configurar e iniciar el daemon de SpamAssassin antes de poder utilizar "
+"este servicio."
+
+#
+#: kcmconfigs/configspamcheck.cpp:48
+msgid "Action for Spam"
+msgstr "Acción para el spam"
+
+#: kcmconfigs/configspamcheck.cpp:54
+msgid "Choose the action for spam mails."
+msgstr "Elegir la acción para los correos de spam."
+
+#: kcmconfigs/configspamcheck.cpp:60 kcmconfigs/senderlistdialog.cpp:59
+#: kcmconfigs/filtersetupitem.cpp:255 kcmconfigs/filtersetupdialog.cpp:92
+#: kcmconfigs/configfilter.cpp:130
+msgid "Mark"
+msgstr "Marcar"
+
+#: kcmconfigs/configspamcheck.cpp:71 kcmconfigs/filtersetupdialog.cpp:104
+#: kcmconfigs/configfilter.cpp:143
+msgid "Choose the mailbox"
+msgstr "Seleccione el buzón"
+
+#: kcmconfigs/configspamcheck.cpp:190 kcmconfigs/filtersetupdialog.cpp:442
+#: kcmconfigs/configfilter.cpp:603
+msgid "Mailbox Select"
+msgstr "Selección del buzón"
+
+#: kcmconfigs/configspamcheck.cpp:226
+msgid "SpamAssassin is running."
+msgstr "SpamAssassin está en ejecución."
+
+#: kcmconfigs/configspamcheck.cpp:226 kcmconfigs/configspamcheck.cpp:231
+msgid "Check for SpamAssassin"
+msgstr "Comprobar SpamAssassin"
+
+#: kcmconfigs/configspamcheck.cpp:231
+msgid "SpamAssassin is not running."
+msgstr "SpamAssassin no está en ejecución."
+
+#: kcmconfigs/mailboxwizard.cpp:27
+msgid "Press to choose the mail directory"
+msgstr "Pulse para seleccionar el directorio del correo"
+
+#: kcmconfigs/mailboxwizard.cpp:32
+msgid ""
+"Please choose the path to the mailboxes.\n"
+"KShowmail supports only MailDir boxes."
+msgstr ""
+"Seleccione la ruta a los buzones.\n"
+"KShowmail admite sólo buzones de tipo maildir."
+
+#: kcmconfigs/mailboxwizard.cpp:47
+msgid "Please choose the mailbox"
+msgstr "Seleccione el buzón"
+
+#: kcmconfigs/mailboxwizard.cpp:65
+msgid "Choose the mailbox directory"
+msgstr "Seleccione el directorio del buzón"
+
+#: kcmconfigs/mailboxwizard.cpp:134
+msgid "Inbox"
+msgstr "Bandeja de entrada"
+
+#: kcmconfigs/mailboxwizard.cpp:136
+msgid "Outbox"
+msgstr "Bandeja de salida"
+
+#: kcmconfigs/mailboxwizard.cpp:138
+msgid "Drafts"
+msgstr "Borrador"
+
+#: kcmconfigs/mailboxwizard.cpp:140
+msgid "sent-mail"
+msgstr "Elementos enviados"
+
+#: kcmconfigs/mailboxwizard.cpp:142
+msgid "Trash"
+msgstr "Papelera"
+
+#: kcmconfigs/senderlistdialog.cpp:39
+msgid "List"
+msgstr "Lista"
+
+#: kcmconfigs/senderlistdialog.cpp:41
+msgid ""
+"A mail whose sender is listed here will pass the filter.\n"
+"A mail will be accepted, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is accepted by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+"Un correo cuyo remitente aparezca en esta lista, pasará el filtro.\n"
+"Se aceptará el correo si el campo De coincide con alguna de las entradas de la lista.\n"
+"P. ej. la siguiente línea\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> se aceptaría con las entradas:\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+
+#: kcmconfigs/senderlistdialog.cpp:43
+msgid ""
+"A mail whose sender is listed here will be hold up by the filter.\n"
+"A mail will be stopped, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is filtered by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+"Un correo cuyo remitente aparezca en esta lista, será capturado por el filtro.\n"
+"El correo se detendrá si el campo De coincide con alguna de las entradas de la lista.\n"
+"P. ej. la siguiente línea\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> se filtraría con las entradas:\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+
+#: kcmconfigs/senderlistdialog.cpp:53 kcmconfigs/configfilter.cpp:72
+msgid "Action"
+msgstr "Acción"
+
+#: kcmconfigs/senderlistdialog.cpp:64
+msgid "The mails will be deleted."
+msgstr "Los correos se eliminarán."
+
+#: kcmconfigs/senderlistdialog.cpp:65
+msgid "The mails will be marked."
+msgstr "Los correos se marcarán."
+
+#: kcmconfigs/filtersetupitem.cpp:253 kcmconfigs/filtersetupdialog.cpp:90
+#: kcmconfigs/configfilter.cpp:128
+msgid "Show"
+msgstr "Mostrar"
+
+#: kcmconfigs/filtersetupitem.cpp:256
+msgid "Move to %1"
+msgstr "Mover a %1"
+
+#
+#: kcmconfigs/filtersetupitem.cpp:258
+msgid "Check for spam"
+msgstr "Comprobar spam"
+
+#: kcmconfigs/filtersetupitem.cpp:259
+msgid "Unknown action"
+msgstr "Acción desconocida"
+
+#: kcmconfigs/configgeneral.cpp:37
+msgid "&Timers"
+msgstr "&Temporizadores"
+
+#: kcmconfigs/configgeneral.cpp:44
+msgid "Confirm Close"
+msgstr "Confirmar cerrar"
+
+#: kcmconfigs/configgeneral.cpp:45
+msgid "If checked, window close must be confirmed"
+msgstr "Si se activa, se debe confirmar la acción para cerrar la ventana"
+
+#: kcmconfigs/configgeneral.cpp:48
+msgid "Confirm delete"
+msgstr "Confirmar eliminar"
+
+#: kcmconfigs/configgeneral.cpp:49
+msgid "If checked, message delete must be confirmed"
+msgstr "Si se activa, se debe confirmar la eliminación de los mensajes"
+
+#: kcmconfigs/configgeneral.cpp:52
+msgid "Start Minimi&zed"
+msgstr "Iniciar minimi&zado"
+
+#: kcmconfigs/configgeneral.cpp:53
+msgid "Application is started as icon"
+msgstr "Iniciar la aplicación como icono"
+
+#: kcmconfigs/configgeneral.cpp:56
+msgid "Close to tray"
+msgstr "Cerrar a bandeja del sistema"
+
+#: kcmconfigs/configgeneral.cpp:57
+msgid "Close button leaves the application running in tray"
+msgstr "El botón de cerrar mantiene la aplicación en ejecución en la bandeja del sistema"
+
+#: kcmconfigs/configgeneral.cpp:60
+msgid "Minimize to tray"
+msgstr "Minimizar a la bandeja del sistema"
+
+#: kcmconfigs/configgeneral.cpp:61
+msgid "Minimizes to the tray rather than to the taskbar"
+msgstr "Se minimiza en la bandeja del sistema en lugar de la barra de tareas"
+
+#: kcmconfigs/configgeneral.cpp:64
+msgid "Show Connection Errors during refresh"
+msgstr "Mostrar los errores de conexión al actualizar"
+
+#: kcmconfigs/configgeneral.cpp:65
+msgid ""
+"If a connection error occurs during refresh (e.g. unknown server), an error "
+"message will be shown. During other actions, this error always will be shown"
+msgstr ""
+"En en caso de que se produzca un error al actualizar (p. ej. servidor desconocido), "
+"se mostrará un mensaje de error. Este error siempre se mostrará en otras acciones"
+
+#: kcmconfigs/configgeneral.cpp:68
+msgid "&Keep mail as new"
+msgstr "&Mantener correo como nuevo"
+
+# msgstr "Mantener mensajes como nuevo"
+#: kcmconfigs/configgeneral.cpp:69
+msgid "Keep mail as new until termination"
+msgstr "Mantener el correo como nuevo hasta terminar"
+
+#: kcmconfigs/configgeneral.cpp:72
+msgid "Initial Timer:"
+msgstr "Temporizador inicial (retardo):"
+
+#: kcmconfigs/configgeneral.cpp:73 kcmconfigs/configgeneral.cpp:91
+msgid "[Seconds]"
+msgstr "[Segundos]"
+
+#: kcmconfigs/configgeneral.cpp:75 kcmconfigs/configgeneral.cpp:76
+msgid "Seconds until first automatic logon (0 = no automatic)"
+msgstr "Segundos hasta el primer inicio de sesión automático (0 = no automático)"
+
+#: kcmconfigs/configgeneral.cpp:81
+msgid "Interval Timer:"
+msgstr "Intervalo del temporizador:"
+
+#: kcmconfigs/configgeneral.cpp:82
+msgid "[Minutes]"
+msgstr "[Minutos]"
+
+#: kcmconfigs/configgeneral.cpp:84 kcmconfigs/configgeneral.cpp:85
+msgid "Minutes between automatic logon (0 = no automatic)"
+msgstr "Minutos entre inicios de sesión automáticos (0 = no automático)"
+
+#: kcmconfigs/configgeneral.cpp:90
+msgid "Timeout:"
+msgstr "Tiempo límite:"
+
+#: kcmconfigs/configgeneral.cpp:93 kcmconfigs/configgeneral.cpp:94
+msgid "Seconds until a server connect will be canceled"
+msgstr "Segundos que deben transcurrir para cancelar la conexión con el servidor"
+
+#: kcmconfigs/filtersetupdialog.cpp:23
+msgid "New filter"
+msgstr "Nuevo filtro"
+
+#: kcmconfigs/filtersetupdialog.cpp:25
+msgid "Edit filter"
+msgstr "Editar filtro"
+
+#: kcmconfigs/filtersetupdialog.cpp:34
+msgid "Name:"
+msgstr "Nombre:"
+
+#: kcmconfigs/filtersetupdialog.cpp:40
+msgid "Filter Criterias"
+msgstr "Criterios de filtrado"
+
+#: kcmconfigs/filtersetupdialog.cpp:44
+msgid "Filter Action"
+msgstr "Acción de filtrado"
+
+#: kcmconfigs/filtersetupdialog.cpp:52
+msgid "Match all of the following"
+msgstr "Coincidir con todas las siguientes"
+
+#: kcmconfigs/filtersetupdialog.cpp:53
+msgid "Match any of the following"
+msgstr "Coincidir con cualquiera de las siguientes"
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+msgid "More"
+msgstr "Más"
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+msgid "Add a further criteria."
+msgstr "Añadir criterios adicionales."
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Fewer"
+msgstr "Menos"
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Remove the last criteria."
+msgstr "Eliminar el último criterio."
+
+#: kcmconfigs/filtersetupdialog.cpp:86
+msgid "Choose the action for all mails which are filtered by this filter."
+msgstr "Seleccionar la acción para todos los correos afectados por este filtro."
+
+#: kcmconfigs/filtersetupdialog.cpp:94 kcmconfigs/configfilter.cpp:132
+msgid "Spamcheck"
+msgstr "Comprobar spam"
+
+#: kcmconfigs/configfilter.cpp:33
+msgid "Activate Filter"
+msgstr "Activar filtro"
+
+#: kcmconfigs/configfilter.cpp:35
+msgid "Check to activate the header filter."
+msgstr "Seleccionar para activar el filtro de cabeceras."
+
+#: kcmconfigs/configfilter.cpp:41
+msgid "First Check: Sender Lists"
+msgstr "Primera comprobación: listas de remitentes"
+
+#: kcmconfigs/configfilter.cpp:45
+msgid "Whitelist"
+msgstr "Lista blanca"
+
+#: kcmconfigs/configfilter.cpp:46
+msgid "Click here to edit the list of senders whose mails shall pass the filter."
+msgstr "Pulse aquí para editar la lista de los remitentes cuyos correos pasarán el filtro."
+
+#: kcmconfigs/configfilter.cpp:52
+msgid "Blacklist"
+msgstr "Lista negra"
+
+#: kcmconfigs/configfilter.cpp:53
+msgid ""
+"Click here to edit the list of senders whose mails shall be deleted or "
+"marked."
+msgstr ""
+"Pulse aquí para editar la lista de los remitentes cuyos correos serán "
+"eliminados o marcados."
+
+#: kcmconfigs/configfilter.cpp:65
+msgid "Second Check: Filters"
+msgstr "Segunda comprobación: filtros"
+
+#: kcmconfigs/configfilter.cpp:70
+msgid "No."
+msgstr "No."
+
+#: kcmconfigs/configfilter.cpp:86
+msgid "Moves the selected filter at the top"
+msgstr "Mueve el filtro seleccionado a la parte superior"
+
+#
+#: kcmconfigs/configfilter.cpp:87
+msgid "Moves the selected filter up"
+msgstr "Mueve el filtro seleccionado hacia arriba"
+
+#
+#: kcmconfigs/configfilter.cpp:88
+msgid "Moves the selected filter down"
+msgstr "Mueve el filtro seleccionado hacia abajo"
+
+#: kcmconfigs/configfilter.cpp:89
+msgid "Moves the selected filter at the bottm"
+msgstr "Mueve el filtro seleccionado a la parte inferior"
+
+#: kcmconfigs/configfilter.cpp:116
+msgid "Third Check: Action for all others"
+msgstr "Tercera comprobación: acciones para el resto"
+
+#: kcmconfigs/configfilter.cpp:123
+msgid "Choose the action for all mails which are not filtered by the steps before."
+msgstr "Seleccione la acción para todos los correos que no han sido filtrados en pasos anteriores."
+
+#: kcmconfigs/kwalletaccess.cpp:17 kcmconfigs/kwalletaccess.cpp:86
+#: kwalletaccess.cpp:17 kwalletaccess.cpp:86
+msgid "KWallet is not available."
+msgstr "KWallet no está disponible."
+
+#: kcmconfigs/kwalletaccess.cpp:25 kcmconfigs/kwalletaccess.cpp:94
+#: kwalletaccess.cpp:25 kwalletaccess.cpp:94
+msgid "Could not get wallet name for network datas from KWallet."
+msgstr "No se puede obtener el nombre de la cartera para los datos de la red desde KWallet."
+
+#: kcmconfigs/kwalletaccess.cpp:45 kcmconfigs/kwalletaccess.cpp:114
+#: kwalletaccess.cpp:45 kwalletaccess.cpp:114
+msgid "Could not open KWallet."
+msgstr "No se puede abrir KWallet."
+
+#: kcmconfigs/kwalletaccess.cpp:56 kwalletaccess.cpp:56
+msgid "Could not create folder for KShowmail in KWallet."
+msgstr "No se puede crear el directorio para KShowmail en KWallet."
+
+#: kcmconfigs/kwalletaccess.cpp:65 kcmconfigs/kwalletaccess.cpp:122
+#: kwalletaccess.cpp:65 kwalletaccess.cpp:122
+msgid "Could not open folder for KShowmail in KWallet."
+msgstr "No se puede abrir el directorio para KShowmail en KWallet."
+
+#: kcmconfigs/kwalletaccess.cpp:73 kwalletaccess.cpp:73
+msgid "Could not save password in KWallet."
+msgstr "No se puede guardar la contraseña en KWallet."
+
+#: kcmconfigs/kwalletaccess.cpp:132 kwalletaccess.cpp:132
+msgid "Could not get password of account %1 from KWallet."
+msgstr "No se puede obtener la contraseña para la cuenta %1 desde KWallet."
+
+#: kcmconfigs/accountsetupdialog.cpp:182
+msgid "Please enter an account name."
+msgstr "Introduzca un nombre para la cuenta."
+
+#: kcmconfigs/accountsetupdialog.cpp:228
+msgid "There is already an account named %1. Please choose another name."
+msgstr "Ya existe una cuenta con el nombre %1. Elija otro nombre."
+
+#: kcmconfigs/accountsetupdialog.cpp:241
+msgid ""
+"You have changed the account name. The account will lose all downloaded mail "
+"headers. Please perform a refresh."
+msgstr ""
+"Ha cambiado el nombre de la cuenta. La cuenta perderá todas las cabeceras de "
+"los correos descargados. Ejecute una actualización para la cuenta."
+
+#: filterlog.cpp:128
+msgid "Could not save the filter log."
+msgstr "No se puede guardar el registro del filtro."
+
+#: showrecordelem.cpp:160
+msgid "new"
+msgstr "nuevo"
+
+#: showrecordelem.cpp:162
+msgid "old"
+msgstr "antiguo"
+
+#: filterlogview.cpp:21
+msgid "Filter Log View"
+msgstr "Visualizar el registro del filtro"
+
+#: filterlogview.cpp:31
+msgid "Deleted Mails:"
+msgstr "Correos eliminados:"
+
+#
+#: filterlogview.cpp:36 filterlogview.cpp:63
+msgid "Sender"
+msgstr "Remitente"
+
+#: filterlogview.cpp:49
+msgid "Clear the list of deleted mails"
+msgstr "Limpiar la lista de correos eliminados"
+
+#: filterlogview.cpp:58
+msgid "Moved Mails:"
+msgstr "Correos movidos:"
+
+#: filterlogview.cpp:65
+msgid "Moved To"
+msgstr "Movidos a"
+
+#: filterlogview.cpp:78
+msgid "Clear the list of moved mails"
+msgstr "Limpiar la lista de correos movidos"
+
+#: kshowmail.cpp:75
+msgid ""
+"Thank You for using KShowmail.\n"
+"Please use the feedback dialog to tell us your experience with this program."
+msgstr ""
+"Gracias por utilizar KShowmail.\n"
+"Utilice este cuadro de diálogo de opinión para contarnos su experiencia con este programa."
+
+#: kshowmail.cpp:75
+msgid "Welcome"
+msgstr "Bienvenido"
+
+#: kshowmail.cpp:102
+msgid "Autorefresh: %1"
+msgstr "Actualización automática: %1"
+
+#: kshowmail.cpp:132
+msgid "&Refresh messages"
+msgstr "&Actualizar la lista de mensajes"
+
+#
+#: kshowmail.cpp:133
+msgid "Show &header of highlighted messages"
+msgstr "Mostrar la &cabecera de los mensajes seleccionados"
+
+#
+#: kshowmail.cpp:134
+msgid "Show &complete highlighted messages"
+msgstr "Mostrar los &mensajes seleccionados"
+
+#: kshowmail.cpp:135
+msgid "&Delete highlighted messages"
+msgstr "&Eliminar los mensajes seleccionados"
+
+#: kshowmail.cpp:136
+msgid "S&top current transfer"
+msgstr "De&tener la transferencia actual"
+
+#: kshowmail.cpp:137
+msgid "Show Filter Log"
+msgstr "Mostrar el registro de filtrado"
+
+#: kshowmail.cpp:138
+msgid "Add sender to whitelist"
+msgstr "Añadir al remitente a la lista blanca"
+
+#: kshowmail.cpp:139
+msgid "Add sender to blacklist"
+msgstr "Añadir al remitente a la lista negra"
+
+#: kshowmail.cpp:150
+msgid "Send &Feedback Mail"
+msgstr "Enviar un correo de &opinión"
+
+#: kshowmail.cpp:153
+msgid "Setup &account"
+msgstr "Configuración de &cuenta"
+
+#: kshowmail.cpp:159 kshowmail.cpp:543 kshowmail.cpp:559 kshowmail.cpp:644
+msgid "Ready."
+msgstr "Preparado."
+
+#: kshowmail.cpp:165
+msgid ""
+"Shows the number of deleted, moved or ignored mails by the filter.\n"
+"The positions denotes:\n"
+"by last refresh / since application start / listed by the log"
+msgstr ""
+"Muestra el número de correos eliminados, movidos o ignorados por el filtro.\n"
+"La posición indica:\n"
+"por la última actualización / desde que se inició la aplicación / enumerados en el registro"
+
+#: kshowmail.cpp:326
+msgid "Refreshing ..."
+msgstr "Actualizando..."
+
+#: kshowmail.cpp:363
+msgid "Job was stopped"
+msgstr "El trabajo ha sido detenido"
+
+#: kshowmail.cpp:392
+msgid "%1 message(s) with a total of %2 bytes are waiting"
+msgstr "%1 mensaje(s) con un total de %2 bytes está(n) esperando"
+
+#: kshowmail.cpp:418
+msgid "Do you want to delete these mails?"
+msgstr "¿Quiere eliminar estos correos?"
+
+#: kshowmail.cpp:418
+msgid "Delete?"
+msgstr "¿Eliminar?"
+
+#: kshowmail.cpp:428
+msgid "Deleting Mail(s) ..."
+msgstr "Eliminando correo(s)..."
+
+#: kshowmail.cpp:469
+msgid "Downloading ..."
+msgstr "Descargando..."
+
+#: kshowmail.cpp:491
+msgid "Last Refresh: %1"
+msgstr "Última actualización: %1"
+
+#: kshowmail.cpp:523
+msgid ""
+"KShowmail will be closed.\n"
+"Are you sure?"
+msgstr ""
+"Se va a cerrar KShowmail.\n"
+"¿Está seguro?"
+
+#: kshowmail.cpp:805
+msgid "Filter: Deleted: %1/%2/%3; Moved: %4/%5/%6; Ignored: %7"
+msgstr "Filtro: Eliminado(s): %1/%2/%3; Movido(s): %4/%5/%6; Ignorado(s): %7"
+
diff --git a/po/fr.po b/po/fr.po
new file mode 100644
index 0000000..f93c3e5
--- /dev/null
+++ b/po/fr.po
@@ -0,0 +1,1873 @@
+# translation of fr.po to deutsch
+# KTranslator Generated File
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Eggert Ehmke <eggert.ehmke@berlin.de>, 2003.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: fr\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-04-17 21:57+0200\n"
+"PO-Revision-Date: 2003-12-08 21:36+0100\n"
+"Last-Translator: Eggert Ehmke <eggert.ehmke@berlin.de>\n"
+"Language-Team: deutsch\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.0.2\n"
+
+#: _translatorinfo.cpp:1 main.cpp:65
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr ""
+"_: NOM DES TRADUCTEURS\n"
+"Serge Parmentier"
+
+#: _translatorinfo.cpp:3 main.cpp:65
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr ""
+"_: ADRESSE DE COURRIER DES TRADUCTEURS\n"
+"gerapa@skynet.be"
+
+#: main.cpp:33
+msgid "A powerful pop3 mail checker"
+msgstr "Un notificateur pop3 performant"
+
+#: main.cpp:40
+msgid "Refresh messages now"
+msgstr "Rafraîchir les messages maintenant"
+
+#: main.cpp:42
+msgid "Launch configure dialog"
+msgstr "Charger la boîte de configuration"
+
+#: main.cpp:107
+msgid "Kshowmail is already running!"
+msgstr "Kshowmail est déjà lancé!"
+
+#. i18n: file AlertDlg.ui line 16
+#: AlertDlg.cpp:262 rc.cpp:15
+#, no-c-format
+msgid "KShowmail"
+msgstr "KShowmail"
+
+#. i18n: file AlertDlg.ui line 27
+#: AlertDlg.cpp:263 rc.cpp:18 kcmconfigs/filtersetupitem.cpp:257
+#: kcmconfigs/filtersetupdialog.cpp:95 kcmconfigs/configfilter.cpp:133
+#, no-c-format
+msgid "Ignore"
+msgstr "Ignorer"
+
+#. i18n: file AlertDlg.ui line 35
+#: AlertDlg.cpp:264 rc.cpp:21 kcmconfigs/configactions.cpp:49
+#, no-c-format
+msgid "Show main window"
+msgstr "Voir la fenêtre principale"
+
+#. i18n: file AlertDlg.ui line 61
+#: AlertDlg.cpp:265 rc.cpp:24
+#, no-c-format
+msgid "New mail"
+msgstr "Nouveau message"
+
+#. i18n: file AlertDlg.ui line 76
+#: AlertDlg.cpp:266 rc.cpp:27
+#, no-c-format
+msgid "has arrived !"
+msgstr "est arrivé !"
+
+#: serverdialog.cpp:44 kcmconfigs/accountsetupdialog.cpp:39
+msgid "Account:"
+msgstr "Compte:"
+
+#: serverdialog.cpp:47 serverdialog.cpp:48
+#: kcmconfigs/accountsetupdialog.cpp:42 kcmconfigs/accountsetupdialog.cpp:43
+msgid "Unique Account Name"
+msgstr ""
+
+#: serverdialog.cpp:52 kcmconfigs/accountsetupdialog.cpp:47
+msgid "Server:"
+msgstr "Serveur:"
+
+#: serverdialog.cpp:55 serverdialog.cpp:56
+#: kcmconfigs/accountsetupdialog.cpp:49 kcmconfigs/accountsetupdialog.cpp:50
+#, fuzzy
+msgid "Server Name"
+msgstr "Serveur"
+
+#: serverdialog.cpp:60 kcmconfigs/accountsetupdialog.cpp:54
+msgid "Protocol:"
+msgstr "Protocole:"
+
+#: serverdialog.cpp:63 serverdialog.cpp:64
+#: kcmconfigs/accountsetupdialog.cpp:57 kcmconfigs/accountsetupdialog.cpp:58
+msgid ""
+"Protocol, which shall be used to get the mails from the server. Currently "
+"KShowmail just supports POP3."
+msgstr ""
+
+#: serverdialog.cpp:68 kcmconfigs/accountsetupdialog.cpp:62
+msgid "Port:"
+msgstr "Port:"
+
+#: serverdialog.cpp:71 serverdialog.cpp:72
+#: kcmconfigs/accountsetupdialog.cpp:65 kcmconfigs/accountsetupdialog.cpp:66
+msgid "Port Number. Normally POP3 uses port 110."
+msgstr ""
+
+#: serverdialog.cpp:76 kcmconfigs/accountsetupdialog.cpp:70
+msgid "User:"
+msgstr "Utilisateur:"
+
+#: serverdialog.cpp:78 serverdialog.cpp:79
+#: kcmconfigs/accountsetupdialog.cpp:72 kcmconfigs/accountsetupdialog.cpp:73
+msgid "To authenticate to the mail server you need an user name."
+msgstr ""
+
+#: serverdialog.cpp:84 kcmconfigs/accountsetupdialog.cpp:78
+msgid "Password"
+msgstr "Mot de passe"
+
+#: serverdialog.cpp:95 kcmconfigs/accountsetupdialog.cpp:89
+msgid "Don't save"
+msgstr ""
+
+#: serverdialog.cpp:96 kcmconfigs/accountsetupdialog.cpp:90
+#, fuzzy
+msgid "Save password"
+msgstr "Sauver le password"
+
+#: serverdialog.cpp:97 kcmconfigs/accountsetupdialog.cpp:91
+msgid "Use KWallet"
+msgstr ""
+
+#: serverdialog.cpp:101 kcmconfigs/accountsetupdialog.cpp:95
+msgid ""
+"Don't save password. KShowmail will ask you for it at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:102 kcmconfigs/accountsetupdialog.cpp:96
+msgid ""
+"Save password in the configuration file. Not recommended, because the "
+"password is just lightly encrypted"
+msgstr ""
+
+#: serverdialog.cpp:103 kcmconfigs/accountsetupdialog.cpp:97
+msgid ""
+"Use KWallet to save the password. Maybe you have to type in the KWallet "
+"master password at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:119 kcmconfigs/configdisplay.cpp:46
+#: kcmconfigs/accountsetupdialog.cpp:113 kshowmailview.cpp:53
+msgid "Active"
+msgstr "Actif"
+
+#: serverdialog.cpp:120 kcmconfigs/accountsetupdialog.cpp:114
+#, fuzzy
+msgid "Select it to activate this account."
+msgstr "Sélectionner un compte pop3"
+
+#: serverdialog.cpp:125 kcmconfigs/accountsetupdialog.cpp:119
+msgid "Encryption"
+msgstr ""
+
+#: serverdialog.cpp:135 kshowmailfeedback.cpp:57
+#: kcmconfigs/accountsetupdialog.cpp:129
+msgid "None"
+msgstr "Aucune"
+
+#: serverdialog.cpp:136 kcmconfigs/accountsetupdialog.cpp:130
+msgid "SSL"
+msgstr ""
+
+#: serverdialog.cpp:137 kcmconfigs/accountsetupdialog.cpp:131
+msgid "TLS"
+msgstr ""
+
+#: serverdialog.cpp:141 kcmconfigs/accountsetupdialog.cpp:135
+msgid ""
+"The download of the mail header and body will not be encrypted. Use this, if "
+"your provider doesn't make a secure transfer available."
+msgstr ""
+
+#: serverdialog.cpp:142 kcmconfigs/accountsetupdialog.cpp:136
+msgid ""
+"Secure Sockets Layer (SSL), is a cryptographic protocol that provides secure "
+"communications on the Internet."
+msgstr ""
+
+#: serverdialog.cpp:143 kcmconfigs/accountsetupdialog.cpp:137
+msgid ""
+"Transport Layer Security (TLS) is a cryptographic protocol that provides "
+"secure communications on the Internet. It is the successor of SSL."
+msgstr ""
+
+#: serverdialog.cpp:152 kcmconfigs/accountsetupdialog.cpp:145
+#, fuzzy
+msgid "General"
+msgstr "Expéditeur"
+
+#: serverdialog.cpp:153 kcmconfigs/accountsetupdialog.cpp:146
+msgid "Security"
+msgstr ""
+
+#: serverdialog.cpp:157 kcmconfigs/accountsetupdialog.cpp:150
+msgid "New account"
+msgstr "Nouveau compte"
+
+#: serverdialog.cpp:159 kcmconfigs/accountsetupdialog.cpp:152
+msgid "Edit account"
+msgstr "Editer un compte"
+
+#: serverdialog.cpp:194 kcmconfigs/accountsetupdialog.cpp:187
+msgid "Please enter an server."
+msgstr ""
+
+#: serverdialog.cpp:200 kcmconfigs/accountsetupdialog.cpp:193
+msgid "Please enter an user name."
+msgstr ""
+
+#: kshowmailfeedback.cpp:31
+msgid "What is your general opinion about this program?"
+msgstr "Quelle est votre opinion générale à propos de ce programme?"
+
+#: kshowmailfeedback.cpp:33
+msgid "It's one of my favourites"
+msgstr "C'est l'un de mes favoris"
+
+#: kshowmailfeedback.cpp:34
+msgid "I like it"
+msgstr "Je l'apprécie"
+
+#: kshowmailfeedback.cpp:35
+msgid "It's sometimes useful"
+msgstr "Il est quelquefois utile"
+
+#: kshowmailfeedback.cpp:36
+msgid "It's average"
+msgstr "Il est moyen"
+
+#: kshowmailfeedback.cpp:37
+msgid "Nice try, but this could be done better"
+msgstr "Pas mal, mais cela pourrait être mieux"
+
+#: kshowmailfeedback.cpp:38
+msgid "It's poor"
+msgstr "Il est pauvre"
+
+#: kshowmailfeedback.cpp:39
+msgid "It's useless"
+msgstr "Il est inutile"
+
+#: kshowmailfeedback.cpp:40
+msgid "It's crap"
+msgstr "C'est du n'importe quoi"
+
+#: kshowmailfeedback.cpp:42
+msgid "Which features of this program do you like?"
+msgstr "Quelles fonctions de ce programme appréciez-vous?"
+
+#: kshowmailfeedback.cpp:45
+msgid "What is your favourite feature?"
+msgstr "Quelle est votre fonction favorite?"
+
+#: kshowmailfeedback.cpp:48
+msgid "Which features don't you like?"
+msgstr "Quelles fonctions n'appréciez-vous pas?"
+
+#: kshowmailfeedback.cpp:51
+msgid "Which features do you never use?"
+msgstr "Quelles fonctions n'utilisez-vous jamais?"
+
+#: kshowmailfeedback.cpp:54
+msgid "Are there features you are missing?"
+msgstr "Y a-t-il des fonctions qui vous manquent?"
+
+#: kshowmailfeedback.cpp:55
+msgid "Yes, a lot! (please add comment below)"
+msgstr "Oui, beaucoup! (ajoutez vos commentaires ci-dessous s.v.p.)"
+
+#: kshowmailfeedback.cpp:56
+msgid "Some (please add comment below)"
+msgstr "Certaines (ajoutez vos commentaires ci-dessous s.v.p.)"
+
+#: kshowmailfeedback.cpp:58
+msgid "It has too many features already!"
+msgstr "Il a déjà trop de fonctions!"
+
+#: kshowmailfeedback.cpp:60
+msgid "How do you rate the stability of this program?"
+msgstr "Comment évaluez-vous la stabilité de ce programme?"
+
+#: kshowmailfeedback.cpp:61
+msgid "Rock solid"
+msgstr "Impossible à planter"
+
+#: kshowmailfeedback.cpp:62 kshowmailfeedback.cpp:69
+msgid "Good"
+msgstr "Bonne"
+
+#: kshowmailfeedback.cpp:63 kshowmailfeedback.cpp:70 kshowmailfeedback.cpp:77
+#: kshowmailfeedback.cpp:84
+msgid "Average"
+msgstr "Moyenne"
+
+#: kshowmailfeedback.cpp:64 kshowmailfeedback.cpp:71
+msgid "Poor"
+msgstr "Faible"
+
+#: kshowmailfeedback.cpp:65
+msgid "It keeps crashing all the time"
+msgstr "Il se plante à tout bout de champ"
+
+#: kshowmailfeedback.cpp:67
+msgid "How do you rate the performance of this program?"
+msgstr "Comment évaluez-vous les performances de ce programme?"
+
+#: kshowmailfeedback.cpp:68
+msgid "Great"
+msgstr "Très bonnes"
+
+#: kshowmailfeedback.cpp:72
+msgid "It's so slow it drives me nuts"
+msgstr "C'est lent cela me rend dingue"
+
+#: kshowmailfeedback.cpp:74
+msgid "What is your experience with computers in general?"
+msgstr "Quelle est votre expérience en matière d'ordinateurs en général?"
+
+#: kshowmailfeedback.cpp:75 kshowmailfeedback.cpp:82
+msgid "Expert"
+msgstr "Expert"
+
+#: kshowmailfeedback.cpp:76 kshowmailfeedback.cpp:83
+msgid "Fair"
+msgstr "Je me débrouille bien"
+
+#: kshowmailfeedback.cpp:78 kshowmailfeedback.cpp:85
+msgid "Learning"
+msgstr "J'apprends"
+
+#: kshowmailfeedback.cpp:79 kshowmailfeedback.cpp:86
+msgid "Newbie"
+msgstr "Je suis débutant"
+
+#: kshowmailfeedback.cpp:81
+msgid "What is your experience with Unix/Linux systems?"
+msgstr "Quelle est votre expérience en matière de systèmes Unix/Linux?"
+
+#: kshowmailfeedback.cpp:88
+msgid "Did you have trouble figuring out how to work with this program?"
+msgstr "Avez-vous des difficultés à comprendre comment utiliser ce programme?"
+
+#: kshowmailfeedback.cpp:90
+msgid "No problem"
+msgstr "Pas de problème"
+
+#: kshowmailfeedback.cpp:91
+msgid "Some"
+msgstr "Un peu"
+
+#: kshowmailfeedback.cpp:92
+msgid "I'm still learning"
+msgstr "J'apprends encore"
+
+#: kshowmailfeedback.cpp:93
+msgid "I didn't have a clue what to do at first"
+msgstr "Je n'ai pas compris que faire en premier lieu"
+
+#: kshowmailfeedback.cpp:94
+msgid "I still don't have a clue what to do"
+msgstr "Je ne sais toujours pas que faire"
+
+#: kshowmailfeedback.cpp:96
+msgid "Where do you use this program most?"
+msgstr "Où utilisez-vous le plus ce programme?"
+
+#: kshowmailfeedback.cpp:97
+msgid "At work"
+msgstr "Au travail"
+
+#: kshowmailfeedback.cpp:98
+msgid "At home"
+msgstr "A la maison"
+
+#: kshowmailfeedback.cpp:99
+msgid "At university / school"
+msgstr "A l'université / à l'école"
+
+#: kshowmailfeedback.cpp:101
+msgid "What is your primary role there?"
+msgstr "Quelle est votre occupation principale?"
+
+#: kshowmailfeedback.cpp:102 kshowmailfeedback.cpp:110
+msgid "Home user"
+msgstr "Simple utilisateur"
+
+#: kshowmailfeedback.cpp:103 kshowmailfeedback.cpp:111
+msgid "Student"
+msgstr "Etudiant"
+
+#: kshowmailfeedback.cpp:104 kshowmailfeedback.cpp:112
+msgid "Educational (teacher / professor)"
+msgstr "Enseignement (instituteur / professseur)"
+
+#: kshowmailfeedback.cpp:105 kshowmailfeedback.cpp:113
+msgid "Non-computer related work"
+msgstr "Travail sans lien avec l'informatique"
+
+#: kshowmailfeedback.cpp:106 kshowmailfeedback.cpp:114
+msgid "Developer"
+msgstr "Développeur"
+
+#: kshowmailfeedback.cpp:107 kshowmailfeedback.cpp:115
+msgid "System administrator"
+msgstr "Administrateur système"
+
+#: kshowmailfeedback.cpp:109
+msgid "Do you have any other roles there?"
+msgstr "Avez-vous d'autres occupations?"
+
+#: kshowmailfeedback.cpp:117
+msgid "How did you get to know this program?"
+msgstr "Comment avez-vous connu ce programme?"
+
+#: kshowmailfeedback.cpp:118
+msgid "In a menu on my machine"
+msgstr "Dans un menu de ma machine"
+
+#: kshowmailfeedback.cpp:119
+msgid "Somebody told me about it"
+msgstr "Quelqu'un m'en a parlé"
+
+#: kshowmailfeedback.cpp:120
+msgid "On the internet"
+msgstr "Sur Internet"
+
+#: kshowmailfeedback.cpp:121
+msgid "Printed magazine / book"
+msgstr "Dans une revue / un bouquin"
+
+#: kshowmailfeedback.cpp:122
+msgid "Other (please add comment below)"
+msgstr "Autre (ajoutez vos commentaires ci-desssous s.v.p.)"
+
+#: kshowmailfeedback.cpp:124
+msgid "Would you recommend this program to a friend?"
+msgstr "Conseilleriez-vous ce programme à un ami?"
+
+#: kshowmailfeedback.cpp:132
+msgid "The message list display in general"
+msgstr "Affichage de la liste des messages en général"
+
+#: kshowmailfeedback.cpp:133
+msgid "Display of message headers"
+msgstr "Affichage des en-têtes des messages"
+
+#: kshowmailfeedback.cpp:134
+msgid "Display of complete messages"
+msgstr "Affichage des messages en entier"
+
+#: kshowmailfeedback.cpp:136
+#, fuzzy
+msgid "Filters"
+msgstr "Je me débrouille bien"
+
+#: kshowmailfeedback.cpp:137
+#, fuzzy
+msgid "Manual delete of unwanted messages"
+msgstr "Effacement des messages indésirés"
+
+#: kshowmailfeedback.cpp:138
+#, fuzzy
+msgid "Automatic move of filtered messages"
+msgstr "Effacement des messages indésirés"
+
+#: kshowmailfeedback.cpp:139
+#, fuzzy
+msgid "Automatic delete of filtered messages"
+msgstr "Effacement des messages indésirés"
+
+#: kshowmailfeedback.cpp:140
+#, fuzzy
+msgid "Automatic mark of filtered messages"
+msgstr "Effacement des messages indésirés"
+
+#: kshowmailfeedback.cpp:141
+#, fuzzy
+msgid "Ignoring of filtered messages"
+msgstr "Effacement des messages indésirés"
+
+#: kshowmailfeedback.cpp:142
+msgid "Integration of SpamAssassin"
+msgstr ""
+
+#: kshowmailfeedback.cpp:143
+#, fuzzy
+msgid "White- and Blacklist"
+msgstr "&Nettoyer la liste"
+
+#: kshowmailfeedback.cpp:144
+#, fuzzy
+msgid "Filter Log"
+msgstr "Je me débrouille bien"
+
+#: kshowmailfeedback.cpp:145
+msgid "Filter messages by regular expressions"
+msgstr ""
+
+#: kshowmailfeedback.cpp:148
+msgid "Sorting of messages by size, date etc."
+msgstr "Ranger les messages par taille, date, etc ..."
+
+#: kshowmailfeedback.cpp:150
+msgid "Play sound"
+msgstr "Jouer un son"
+
+#: kshowmailfeedback.cpp:151
+msgid "Play beep"
+msgstr "Jouer un beep"
+
+#: kshowmailfeedback.cpp:152
+msgid "Initial timer"
+msgstr "Chrono initial"
+
+#: kshowmailfeedback.cpp:153
+msgid "Interval timer"
+msgstr "Délai du chrono:"
+
+#: kshowmailfeedback.cpp:154
+msgid "This feedback survey :-)"
+msgstr "Ce message de feedback :-)"
+
+#: configelem.cpp:294
+msgid "Please type in the password for %1"
+msgstr ""
+
+#: configelem.cpp:515
+msgid "Time out on %1. The operation could not be finished on time"
+msgstr ""
+
+#: configelem.cpp:515
+#, fuzzy
+msgid "Time Out"
+msgstr "Délai de connexion POP3 dépassé"
+
+#: configelem.cpp:1647
+msgid ""
+"You want to check your mails for spam, but SpamAssassin is not running.\n"
+"KShowmail skips the spam check."
+msgstr ""
+
+#: configelem.cpp:1647
+msgid "SpamAssassin is not running"
+msgstr ""
+
+#: kfeedback.cpp:35
+msgid "Feedback"
+msgstr "Message de retour"
+
+#: kfeedback.cpp:39
+msgid "&Mail this..."
+msgstr "&Expédier ceci..."
+
+#: kfeedback.cpp:89
+msgid ""
+"<p><b>Please tell us your opinion about this program.</b></p><p>You will be "
+"able to review everything in your mailer before any mail is sent.<br>Nothing "
+"will be sent behind your back.</p>"
+msgstr ""
+"<p><b>Merci de nous dire ce que vous pensez de ce programme.</b></p><p>Vous "
+"pourrez tout revoir dans votre programme de courrier électronique avant "
+"qu'un message soit envoyé.<br>Rien ne sera envoyé à votre insu.</p>"
+
+#: kfeedback.cpp:114
+msgid "Questions marked with "
+msgstr "Les questions indiquées par "
+
+#: kfeedback.cpp:123
+msgid " must be answered before a mail can be sent."
+msgstr "doivent être complétées avant qu'un message soit envoyé."
+
+#: kfeedback.cpp:134
+msgid "&Additional comments:"
+msgstr "&Commentaires supplémentaires:"
+
+#: kfeedback.cpp:312
+msgid "yes"
+msgstr "oui"
+
+#: kfeedback.cpp:313
+msgid "no"
+msgstr "non"
+
+#: showheaderdialog.cpp:28 showmaildialog.cpp:39
+msgid "Subject:"
+msgstr "Sujet:"
+
+#. i18n: file kshowmailui.rc line 4
+#: rc.cpp:3
+#, no-c-format
+msgid "&Actions"
+msgstr "&Actions"
+
+#: showmaildialog.cpp:15
+msgid "Reply"
+msgstr ""
+
+#: showmaildialog.cpp:30
+msgid "Sender:"
+msgstr "Expéditeur:"
+
+#: showmaildialog.cpp:33
+msgid "Date:"
+msgstr "Date:"
+
+#: showmaildialog.cpp:36
+msgid "Size:"
+msgstr "Taille:"
+
+#: kshowmaildock.cpp:37
+#, fuzzy
+msgid "KShowmail: a powerful pop3 email checker"
+msgstr "Un notificateur pop3 performant"
+
+#: kcmconfigs/filtercriteriawidget.cpp:26 kcmconfigs/configdisplay.cpp:78
+#: kshowmailview.cpp:71
+msgid "From"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:27 kcmconfigs/configdisplay.cpp:82
+#: kshowmailview.cpp:72
+msgid "To"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:28
+msgid "Size (Bytes)"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:29 kshowmailview.cpp:73
+#: filterlogview.cpp:38 filterlogview.cpp:66
+msgid "Subject"
+msgstr "Sujet"
+
+#: kcmconfigs/filtercriteriawidget.cpp:30
+#, fuzzy
+msgid "Header"
+msgstr "Expéditeur"
+
+#: kcmconfigs/filtercriteriawidget.cpp:31 kcmconfigs/configdisplay.cpp:50
+#: kcmconfigs/configdisplay.cpp:74 kshowmailview.cpp:54 kshowmailview.cpp:70
+#: filterlogview.cpp:37 filterlogview.cpp:64
+msgid "Account"
+msgstr "Comptes"
+
+#: kcmconfigs/filtercriteriawidget.cpp:48
+#, fuzzy
+msgid "contains"
+msgstr "Contenu"
+
+#: kcmconfigs/filtercriteriawidget.cpp:49
+msgid "does not contain"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:50
+msgid "equals"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:51
+msgid "does not equal"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:52
+msgid "matches regular expression"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:53
+msgid "does not match reg. expr."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:69
+msgid "is equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:70
+msgid "is not equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:71
+msgid "is greater than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:72
+msgid "is greater than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:73
+msgid "is less than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:74
+msgid "is less than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:107
+msgid "Case sensitive"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:196
+msgid "The Regular Expression Editor could not be initilized."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:211
+msgid "The Regular Expression Editor is not available."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:34
+msgid "Log mails deleted by filter"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:36
+msgid "Check to activate the log of mails deleted by filter."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:46 kcmconfigs/configlog.cpp:78
+msgid "Remove log entries at exit"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:52 kcmconfigs/configlog.cpp:84
+msgid "Remove log entries after"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:58 kcmconfigs/configlog.cpp:90
+msgid " Days"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:66
+msgid "Log mails moved by filter"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:68
+msgid "Check to activate the log of mails moved by filter."
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:33
+msgid "Account list"
+msgstr "Liste des comptes"
+
+#: kcmconfigs/configdisplay.cpp:35
+msgid "Mail list"
+msgstr "Liste des messages"
+
+#: kcmconfigs/configdisplay.cpp:37
+msgid "Mail content"
+msgstr "message contenu"
+
+#: kcmconfigs/configdisplay.cpp:47
+msgid "To switch on/off the 'Active' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:51
+msgid "To switch on/off the 'Account' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:54 kshowmailview.cpp:55
+msgid "Server"
+msgstr "Serveur"
+
+#: kcmconfigs/configdisplay.cpp:55
+msgid "To switch on/off the 'Server' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:58 kshowmailview.cpp:56
+msgid "User"
+msgstr "Utilisateur"
+
+#: kcmconfigs/configdisplay.cpp:59
+msgid "To switch on/off the 'User' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:62 kshowmailview.cpp:57
+msgid "Messages"
+msgstr "Messages"
+
+#: kcmconfigs/configdisplay.cpp:63
+msgid "To switch on/off the 'Messages' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:66
+#, fuzzy
+msgid "Si&ze"
+msgstr "Taille"
+
+#: kcmconfigs/configdisplay.cpp:67
+msgid "To switch on/off the 'Size' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:70 kshowmailview.cpp:69
+msgid "Number"
+msgstr "Numéro"
+
+#: kcmconfigs/configdisplay.cpp:71
+msgid "To switch on/off the 'Number' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:75
+msgid "To switch on/off the 'Account' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:79
+msgid "To switch on/off the 'From' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:83
+msgid "To switch on/off the 'To' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:86
+#, fuzzy
+msgid "Su&bject"
+msgstr "Sujet"
+
+#: kcmconfigs/configdisplay.cpp:87
+msgid "To switch on/off the 'Subject' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:90 kshowmailview.cpp:74 filterlogview.cpp:35
+#: filterlogview.cpp:62
+msgid "Date"
+msgstr "Date"
+
+#: kcmconfigs/configdisplay.cpp:91
+msgid "To switch on/off the 'Date' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:94 kshowmailview.cpp:58 kshowmailview.cpp:75
+msgid "Size"
+msgstr "Taille"
+
+#: kcmconfigs/configdisplay.cpp:95
+msgid "To switch on/off the 'Size' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:98 kshowmailview.cpp:76
+msgid "Content"
+msgstr "Contenu"
+
+#: kcmconfigs/configdisplay.cpp:99
+msgid "To switch on/off the 'Content' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:102 kshowmailview.cpp:77
+msgid "State"
+msgstr "Etat"
+
+#: kcmconfigs/configdisplay.cpp:103
+msgid "To switch on/off the 'State' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:106
+msgid "Allow HTML"
+msgstr "permettre HTML"
+
+#: kcmconfigs/configdisplay.cpp:107
+msgid "To switch on/off HTML in the message view"
+msgstr ""
+
+#: kcmconfigs/configaccounts.cpp:34 kcmconfigs/configfilter.cpp:71
+#, fuzzy
+msgid "Name"
+msgstr "Nom:"
+
+#: kcmconfigs/configaccounts.cpp:194
+msgid "Do you really want to remove account %1?"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:33
+#, fuzzy
+msgid "Action if new &mail"
+msgstr "Action en cas de nouveau message"
+
+#: kcmconfigs/configactions.cpp:34
+#, fuzzy
+msgid "Action if &no mail"
+msgstr "Action en cas d'absence de mail"
+
+#: kcmconfigs/configactions.cpp:45
+msgid "Show message box"
+msgstr "Voir la boîte de messages"
+
+#: kcmconfigs/configactions.cpp:46
+msgid "Show message if new mail arrives"
+msgstr "Afficher le message en cas de nouveau mail"
+
+#: kcmconfigs/configactions.cpp:50
+msgid "Show main window if new mail arrives"
+msgstr "Voir la fenêtre principale en cas de nouveau message"
+
+#: kcmconfigs/configactions.cpp:53
+#, fuzzy
+msgid "&Beep"
+msgstr "Beep"
+
+#: kcmconfigs/configactions.cpp:54
+msgid "Beeps the internal speaker if new mail"
+msgstr "Beep du haut-parleur interne en cas de nouveau message"
+
+#: kcmconfigs/configactions.cpp:57
+#, fuzzy
+msgid "Sound:"
+msgstr "Son"
+
+#: kcmconfigs/configactions.cpp:58
+msgid "Plays sound if new mail"
+msgstr "Jouer un son en cas de nouveau message"
+
+#: kcmconfigs/configactions.cpp:61
+msgid "Play the selected sound file"
+msgstr "Jouer le fichier son sélectionné"
+
+#: kcmconfigs/configactions.cpp:67
+msgid "Press to select sound file"
+msgstr "Appuyer pour sélectionner le fichier son"
+
+#: kcmconfigs/configactions.cpp:70
+msgid "Command:"
+msgstr "Commande:"
+
+#: kcmconfigs/configactions.cpp:71
+msgid "Starts external program if new mail"
+msgstr "Lancer un programme externe cas de nouveau message"
+
+#: kcmconfigs/configactions.cpp:74
+msgid "Start the selected program"
+msgstr "Démarrer le programme sélectionné"
+
+#: kcmconfigs/configactions.cpp:80 kcmconfigs/configactions.cpp:213
+msgid "Select external command"
+msgstr "Sélectionner une commande externe"
+
+#: kcmconfigs/configactions.cpp:84
+#, fuzzy
+msgid "Minimi&ze"
+msgstr "Minimiser"
+
+#: kcmconfigs/configactions.cpp:85
+msgid "Minimize window if no new mail"
+msgstr "Minimiser la fenêtre si il n'y a pas de nouveau message"
+
+#: kcmconfigs/configactions.cpp:87
+msgid "Terminate"
+msgstr "Sortir"
+
+#: kcmconfigs/configactions.cpp:88
+msgid "Terminate kshowmail if no new mail"
+msgstr "Sortir de kshowmail si il n'y a pas de nouveau message"
+
+#: kcmconfigs/configactions.cpp:203
+#, fuzzy
+msgid "Sound files (*.wav, *.ogg)"
+msgstr "Fichiers wave (*.wav)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "All files (*)"
+msgstr "Tous les fichiers (*)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "Select Sound File"
+msgstr "Choisir un fichier son"
+
+#: kcmconfigs/configspamcheck.cpp:37
+msgid ""
+"KShowmail uses SpamAssassin to check the mails for spam. You have to "
+"install, configure and start the SpamAssassin daemon, before you can use "
+"this service."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:48
+#, fuzzy
+msgid "Action for Spam"
+msgstr "Action en cas d'absence de mail"
+
+#: kcmconfigs/configspamcheck.cpp:54
+msgid "Choose the action for spam mails."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:60 kcmconfigs/senderlistdialog.cpp:59
+#: kcmconfigs/filtersetupitem.cpp:255 kcmconfigs/filtersetupdialog.cpp:92
+#: kcmconfigs/configfilter.cpp:130
+msgid "Mark"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:71 kcmconfigs/filtersetupdialog.cpp:104
+#: kcmconfigs/configfilter.cpp:143
+msgid "Choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:190 kcmconfigs/filtersetupdialog.cpp:442
+#: kcmconfigs/configfilter.cpp:603
+#, fuzzy
+msgid "Mailbox Select"
+msgstr "Liste des messages"
+
+#: kcmconfigs/configspamcheck.cpp:226
+msgid "SpamAssassin is running."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:226 kcmconfigs/configspamcheck.cpp:231
+msgid "Check for SpamAssassin"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:231
+msgid "SpamAssassin is not running."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:27
+msgid "Press to choose the mail directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:32
+msgid ""
+"Please choose the path to the mailboxes.\n"
+"KShowmail supports only MailDir boxes."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:47
+msgid "Please choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:65
+msgid "Choose the mailbox directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:134
+msgid "Inbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:136
+msgid "Outbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:138
+#, fuzzy
+msgid "Drafts"
+msgstr "Date"
+
+#: kcmconfigs/mailboxwizard.cpp:140
+msgid "sent-mail"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:142
+msgid "Trash"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:39
+msgid "List"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:41
+msgid ""
+"A mail whose sender is listed here will pass the filter.\n"
+"A mail will be accepted, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is accepted by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:43
+msgid ""
+"A mail whose sender is listed here will be hold up by the filter.\n"
+"A mail will be stopped, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is filtered by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:53 kcmconfigs/configfilter.cpp:72
+#, fuzzy
+msgid "Action"
+msgstr "&Actions"
+
+#: kcmconfigs/senderlistdialog.cpp:64
+msgid "The mails will be deleted."
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:65
+msgid "The mails will be marked."
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:253 kcmconfigs/filtersetupdialog.cpp:90
+#: kcmconfigs/configfilter.cpp:128
+#, fuzzy
+msgid "Show"
+msgstr "KShowmail"
+
+#: kcmconfigs/filtersetupitem.cpp:256
+msgid "Move to %1"
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:258
+#, fuzzy
+msgid "Check for spam"
+msgstr "Action en cas d'absence de mail"
+
+#: kcmconfigs/filtersetupitem.cpp:259
+msgid "Unknown action"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:37
+msgid "&Timers"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:44
+#, fuzzy
+msgid "Confirm Close"
+msgstr "Confirmer l'effacement"
+
+#: kcmconfigs/configgeneral.cpp:45
+#, fuzzy
+msgid "If checked, window close must be confirmed"
+msgstr "Si coché, l'effacement du message devra être confirmé"
+
+#: kcmconfigs/configgeneral.cpp:48
+msgid "Confirm delete"
+msgstr "Confirmer l'effacement"
+
+#: kcmconfigs/configgeneral.cpp:49
+msgid "If checked, message delete must be confirmed"
+msgstr "Si coché, l'effacement du message devra être confirmé"
+
+#: kcmconfigs/configgeneral.cpp:52
+#, fuzzy
+msgid "Start Minimi&zed"
+msgstr "Démarrer minimisé"
+
+#: kcmconfigs/configgeneral.cpp:53
+msgid "Application is started as icon"
+msgstr "L'application est démarrée sous forme d'icône"
+
+#: kcmconfigs/configgeneral.cpp:56
+msgid "Close to tray"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:57
+msgid "Close button leaves the application running in tray"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:60
+#, fuzzy
+msgid "Minimize to tray"
+msgstr "Minimiser"
+
+#: kcmconfigs/configgeneral.cpp:61
+msgid "Minimizes to the tray rather than to the taskbar"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:64
+msgid "Show Connection Errors during refresh"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:65
+msgid ""
+"If a connection error occurs during refresh (e.g. unknown server), an error "
+"message will be shown. During other actions, this error always will be shown"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:68
+#, fuzzy
+msgid "&Keep mail as new"
+msgstr "Conserver le message comme nouveau"
+
+#: kcmconfigs/configgeneral.cpp:69
+msgid "Keep mail as new until termination"
+msgstr "Conserver le message comme nouveau jusqu'à la sortie"
+
+#: kcmconfigs/configgeneral.cpp:72
+msgid "Initial Timer:"
+msgstr "Chrono initial"
+
+#: kcmconfigs/configgeneral.cpp:73 kcmconfigs/configgeneral.cpp:91
+msgid "[Seconds]"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:75 kcmconfigs/configgeneral.cpp:76
+msgid "Seconds until first automatic logon (0 = no automatic)"
+msgstr "Secondes avant la première connexion automatique (0 = pas automatique)"
+
+#: kcmconfigs/configgeneral.cpp:81
+msgid "Interval Timer:"
+msgstr "Intervale du chonomètre:"
+
+#: kcmconfigs/configgeneral.cpp:82
+msgid "[Minutes]"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:84 kcmconfigs/configgeneral.cpp:85
+msgid "Minutes between automatic logon (0 = no automatic)"
+msgstr "Minutes entre les connexions automatiques (0 = pas automatique)"
+
+#: kcmconfigs/configgeneral.cpp:90
+#, fuzzy
+msgid "Timeout:"
+msgstr "Délai de connexion POP3 dépassé"
+
+#: kcmconfigs/configgeneral.cpp:93 kcmconfigs/configgeneral.cpp:94
+msgid "Seconds until a server connect will be canceled"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:23
+#, fuzzy
+msgid "New filter"
+msgstr "Nouveau message"
+
+#: kcmconfigs/filtersetupdialog.cpp:25
+msgid "Edit filter"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:34
+#, fuzzy
+msgid "Name:"
+msgstr "Nom:"
+
+#: kcmconfigs/filtersetupdialog.cpp:40
+#, fuzzy
+msgid "Filter Criterias"
+msgstr "EditDialog"
+
+#: kcmconfigs/filtersetupdialog.cpp:44
+#, fuzzy
+msgid "Filter Action"
+msgstr "EditDialog"
+
+#: kcmconfigs/filtersetupdialog.cpp:52
+msgid "Match all of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:53
+msgid "Match any of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+#, fuzzy
+msgid "More"
+msgstr "Ignorer"
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+msgid "Add a further criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Fewer"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Remove the last criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:86
+msgid "Choose the action for all mails which are filtered by this filter."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:94 kcmconfigs/configfilter.cpp:132
+msgid "Spamcheck"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:33
+msgid "Activate Filter"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:35
+msgid "Check to activate the header filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:41
+msgid "First Check: Sender Lists"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:45
+msgid "Whitelist"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:46
+msgid ""
+"Click here to edit the list of senders whose mails shall pass the filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:52
+#, fuzzy
+msgid "Blacklist"
+msgstr "&Nettoyer la liste"
+
+#: kcmconfigs/configfilter.cpp:53
+msgid ""
+"Click here to edit the list of senders whose mails shall be deleted or "
+"marked."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:65
+msgid "Second Check: Filters"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:70
+msgid "No."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:86
+msgid "Moves the selected filter at the top"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:87
+#, fuzzy
+msgid "Moves the selected filter up"
+msgstr "Jouer le fichier son sélectionné"
+
+#: kcmconfigs/configfilter.cpp:88
+#, fuzzy
+msgid "Moves the selected filter down"
+msgstr "Jouer le fichier son sélectionné"
+
+#: kcmconfigs/configfilter.cpp:89
+msgid "Moves the selected filter at the bottm"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:116
+msgid "Third Check: Action for all others"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:123
+msgid ""
+"Choose the action for all mails which are not filtered by the steps before."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:17 kcmconfigs/kwalletaccess.cpp:86
+#: kwalletaccess.cpp:17 kwalletaccess.cpp:86
+msgid "KWallet is not available."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:25 kcmconfigs/kwalletaccess.cpp:94
+#: kwalletaccess.cpp:25 kwalletaccess.cpp:94
+msgid "Could not get wallet name for network datas from KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:45 kcmconfigs/kwalletaccess.cpp:114
+#: kwalletaccess.cpp:45 kwalletaccess.cpp:114
+msgid "Could not open KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:56 kwalletaccess.cpp:56
+msgid "Could not create folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:65 kcmconfigs/kwalletaccess.cpp:122
+#: kwalletaccess.cpp:65 kwalletaccess.cpp:122
+msgid "Could not open folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:73 kwalletaccess.cpp:73
+msgid "Could not save password in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:132 kwalletaccess.cpp:132
+msgid "Could not get password of account %1 from KWallet."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:182
+msgid "Please enter an account name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:228
+msgid "There is already an account named %1. Please choose another name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:241
+msgid ""
+"You have changed the account name. The account will lose all downloaded mail "
+"headers. Please perform a refresh."
+msgstr ""
+
+#: filterlog.cpp:128
+msgid "Could not save the filter log."
+msgstr ""
+
+#: showrecordelem.cpp:160
+msgid "new"
+msgstr "nouveau"
+
+#: showrecordelem.cpp:162
+msgid "old"
+msgstr "ancien"
+
+#: filterlogview.cpp:21
+msgid "Filter Log View"
+msgstr ""
+
+#: filterlogview.cpp:31
+msgid "Deleted Mails:"
+msgstr ""
+
+#: filterlogview.cpp:36 filterlogview.cpp:63
+#, fuzzy
+msgid "Sender"
+msgstr "Expéditeur:"
+
+#: filterlogview.cpp:49
+msgid "Clear the list of deleted mails"
+msgstr ""
+
+#: filterlogview.cpp:58
+msgid "Moved Mails:"
+msgstr ""
+
+#: filterlogview.cpp:65
+msgid "Moved To"
+msgstr ""
+
+#: filterlogview.cpp:78
+msgid "Clear the list of moved mails"
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid ""
+"Thank You for using KShowmail.\n"
+"Please use the feedback dialog to tell us your experience with this program."
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid "Welcome"
+msgstr ""
+
+#: kshowmail.cpp:102
+msgid "Autorefresh: %1"
+msgstr "Rafraîchissement automatique: %1"
+
+#: kshowmail.cpp:132
+msgid "&Refresh messages"
+msgstr "&Rafraîchir les messages"
+
+#: kshowmail.cpp:133
+msgid "Show &header of highlighted messages"
+msgstr "&Montrer l'en-tête du message sélectionné"
+
+#: kshowmail.cpp:134
+msgid "Show &complete highlighted messages"
+msgstr "Montrer &le message sélectionné en entier"
+
+#: kshowmail.cpp:135
+msgid "&Delete highlighted messages"
+msgstr "&Effacer les messages sélectionnés"
+
+#: kshowmail.cpp:136
+msgid "S&top current transfer"
+msgstr "A&rrêt du transfert en cours"
+
+#: kshowmail.cpp:137
+msgid "Show Filter Log"
+msgstr ""
+
+#: kshowmail.cpp:138
+msgid "Add sender to whitelist"
+msgstr ""
+
+#: kshowmail.cpp:139
+msgid "Add sender to blacklist"
+msgstr ""
+
+#: kshowmail.cpp:150
+msgid "Send &Feedback Mail"
+msgstr "&Dites-nous ce que vous pensez de Kshowmail"
+
+#: kshowmail.cpp:153
+msgid "Setup &account"
+msgstr "&Configurer le compte"
+
+#: kshowmail.cpp:159 kshowmail.cpp:543 kshowmail.cpp:559 kshowmail.cpp:644
+msgid "Ready."
+msgstr "Prêt"
+
+#: kshowmail.cpp:165
+msgid ""
+"Shows the number of deleted, moved or ignored mails by the filter.\n"
+"The positions denotes:\n"
+"by last refresh / since application start / listed by the log"
+msgstr ""
+
+#: kshowmail.cpp:326
+msgid "Refreshing ..."
+msgstr ""
+
+#: kshowmail.cpp:363
+msgid "Job was stopped"
+msgstr "La tâche a été arrêtée"
+
+#: kshowmail.cpp:392
+msgid "%1 message(s) with a total of %2 bytes are waiting"
+msgstr "%1 message(s) avec un total de %2 octets en attente"
+
+#: kshowmail.cpp:418
+msgid "Do you want to delete these mails?"
+msgstr ""
+
+#: kshowmail.cpp:418
+msgid "Delete?"
+msgstr ""
+
+#: kshowmail.cpp:428
+msgid "Deleting Mail(s) ..."
+msgstr ""
+
+#: kshowmail.cpp:469
+msgid "Downloading ..."
+msgstr ""
+
+#: kshowmail.cpp:491
+#, fuzzy
+msgid "Last Refresh: %1"
+msgstr "Rafraîchissement automatique: %1"
+
+#: kshowmail.cpp:523
+#, fuzzy
+msgid ""
+"KShowmail will be closed.\n"
+"Are you sure?"
+msgstr ""
+"La commande %1 sera effacée.\n"
+"Etes-vous sûr ?"
+
+#: kshowmail.cpp:805
+msgid "Filter: Deleted: %1/%2/%3; Moved: %4/%5/%6; Ignored: %7"
+msgstr ""
+
+#~ msgid "Execute user commands"
+#~ msgstr "Exécuter les commandes utilisateur"
+
+#, fuzzy
+#~ msgid "Pass"
+#~ msgstr "Mot de passe"
+
+#, fuzzy
+#~ msgid "Condition"
+#~ msgstr "Contenu"
+
+#, fuzzy
+#~ msgid "Contains"
+#~ msgstr "Contenu"
+
+#, fuzzy
+#~ msgid "Greater"
+#~ msgstr "Très bonnes"
+
+#, fuzzy
+#~ msgid "Counter"
+#~ msgstr "Contenu"
+
+#, fuzzy
+#~ msgid ""
+#~ "Filter %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Le compte %1 sera effacé.\n"
+#~ "Etes-vous sûr ?"
+
+#, fuzzy
+#~ msgid "Setup &filters"
+#~ msgstr "&Configurer les comptes"
+
+#~ msgid ""
+#~ "Command %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "La commande %1 sera effacée.\n"
+#~ "Etes-vous sûr ?"
+
+#~ msgid ""
+#~ "Account %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Le compte %1 sera effacé.\n"
+#~ "Etes-vous sûr ?"
+
+#~ msgid ""
+#~ "Password will be stored as scrambled text.\n"
+#~ "It might be possible to decipher it.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Le mot de passe sera enregistré sous forme cryptée.\n"
+#~ "Il peut être possible de le décrypter.\n"
+#~ "Etes-vous sûr ?\n"
+
+#~ msgid "Message"
+#~ msgstr "Message"
+
+#, fuzzy
+#~ msgid "Send reply mail"
+#~ msgstr "&Envoyer un mail de réclamation"
+
+#~ msgid "User command"
+#~ msgstr "Commande utilisateur"
+
+#~ msgid "Menu Entry"
+#~ msgstr "Entrée du menu"
+
+#~ msgid "Press button to select command path"
+#~ msgstr "Appuyer sur le bouton pour sélectionner le chemin de la commande"
+
+#~ msgid "Test"
+#~ msgstr "Test"
+
+#~ msgid "Execute the command immediatly"
+#~ msgstr "Executer la commande immédiatement"
+
+#~ msgid "Wait for command to complete"
+#~ msgstr "Attendez la commande pour terminer"
+
+#~ msgid "Enter menu entry name"
+#~ msgstr "Entrez le nom de l'entrée du menu"
+
+#~ msgid ""
+#~ "<qt>Enter path to selected command and arguments<br>&lt;user&gt;, &lt;"
+#~ "server&gt;, &lt;passwd&gt;, &lt;header&gt; and &lt;body&gt; may be used "
+#~ "as arguments</qt>"
+#~ msgstr ""
+#~ "<qt>Entrez le chemin de la commande sélectionnée et des arguments<br>&lt;"
+#~ "user&gt;, &lt;server&gt;, &lt;passwd&gt;, &lt;header&gt; et &lt;body&gt; "
+#~ "peuvent êtreutilisés comme arguments</qt>"
+
+#~ msgid "Server Options"
+#~ msgstr "Options du serveur"
+
+#~ msgid "Password:"
+#~ msgstr "Mot de passe:"
+
+#~ msgid "The account must have a name"
+#~ msgstr "Le compte doit avoir un nom"
+
+#~ msgid "This account is already present"
+#~ msgstr "Ce compte existe déjà"
+
+#~ msgid "Command"
+#~ msgstr "Commande:"
+
+#~ msgid "User commands"
+#~ msgstr "Commandes utilisateur"
+
+#~ msgid "Add user command"
+#~ msgstr "Ajouter une commande utilisateur"
+
+#~ msgid "Edit user command"
+#~ msgstr "Editer une commande utilisateur"
+
+#~ msgid "Copy user command"
+#~ msgstr "Copier une commande utilisateur"
+
+#~ msgid "Delete user command"
+#~ msgstr "Effacer une commande utilisateur"
+
+#~ msgid "Accounts"
+#~ msgstr "Comptes"
+
+#~ msgid "Delete account"
+#~ msgstr "Effacer le compte"
+
+#~ msgid "copy account"
+#~ msgstr "Copier le compte"
+
+#~ msgid "Add new account"
+#~ msgstr "Ajouter un nouveau compte"
+
+#, fuzzy
+#~ msgid "&General Options"
+#~ msgstr "Options Générales"
+
+#~ msgid "Save password (not recommended !)"
+#~ msgstr "Sauver le mot de passe (pas recommandé !)"
+
+#~ msgid "Pop3 Timer"
+#~ msgstr "Chrono Pop3"
+
+#~ msgid "Pop3 timeout"
+#~ msgstr "Pop3 ne répond pas"
+
+#~ msgid "Max Size:"
+#~ msgstr "Taille maximale:"
+
+#~ msgid "Maximal size of downloaded mail body in kilobytes"
+#~ msgstr "Taille maximale des corps des messages en kilobytes"
+
+#~ msgid "Display Options"
+#~ msgstr "Options d'affichage"
+
+#, fuzzy
+#~ msgid "E&xternal Program"
+#~ msgstr "Programme externe"
+
+#~ msgid "Sound File:"
+#~ msgstr "Fichier son:"
+
+#~ msgid "Enter sound file"
+#~ msgstr "Entrez le fichier son"
+
+#~ msgid "Setup &accounts"
+#~ msgstr "&Configurer les comptes"
+
+#~ msgid "Setup &commands"
+#~ msgstr "Configurer &les commandes"
+
+#~ msgid "&Setup"
+#~ msgstr "&Configuration"
+
+#~ msgid "Select Command"
+#~ msgstr "Sélectionner une commande"
+
+#~ msgid "Send complain mails"
+#~ msgstr "Envoyer un mail de réclamation"
+
+#~ msgid "Clear message list by Ctrl-C"
+#~ msgstr "Mettre à jour la liste des messages par Ctrl-C"
+
+#~ msgid "Forced refresh of all messages by Shift-F5"
+#~ msgstr "Forcer le rafraîchissement de tous les messages par Shift-F5"
+
+#~ msgid "Select account"
+#~ msgstr "Sélectionner un compte"
+
+#~ msgid "EditDialog"
+#~ msgstr "EditDialog"
+
+#, fuzzy
+#~ msgid "KShowMailApp"
+#~ msgstr "KShowmail"
+
+#, fuzzy
+#~ msgid "KshowmailDoc"
+#~ msgstr "KShowmail"
+
+#, fuzzy
+#~ msgid "KShowMailDock"
+#~ msgstr "KShowmail"
+
+#, fuzzy
+#~ msgid "KFeedbackDialog"
+#~ msgstr "Message de retour"
+
+#, fuzzy
+#~ msgid "KFeedbackForm"
+#~ msgstr "Message de retour"
+
+#, fuzzy
+#~ msgid "KFeedbackQuestionList"
+#~ msgstr "Message de retour"
+
+#, fuzzy
+#~ msgid "ServerDialog"
+#~ msgstr "EditDialog"
+
+#, fuzzy
+#~ msgid "KshowmailView"
+#~ msgstr "KShowmail"
+
+#, fuzzy
+#~ msgid "AlertDialog"
+#~ msgstr "EditDialog"
+
+#, fuzzy
+#~ msgid "CommandDialog"
+#~ msgstr "Commande:"
+
+#, fuzzy
+#~ msgid "CommandEntryDialog"
+#~ msgstr "Commande:"
+
+#~ msgid "Refresh &all messages"
+#~ msgstr "Rafraîchir &tous les messages"
+
+#~ msgid "&Send complain mail"
+#~ msgstr "&Envoyer un mail de réclamation"
+
+#~ msgid "Logging in to server %1 ..."
+#~ msgstr "Connexion au serveur %1 ..."
+
+#~ msgid "connection to pop3 server %1 established successfully"
+#~ msgstr "La connexion au serveur pop3 %1 a été établie avec succès"
+
+#~ msgid "Timeout: job was killed"
+#~ msgstr "Délai dépassé: la tâche a été annulée"
+
+#~ msgid "getting UIDLs ..."
+#~ msgstr "Réception des UIDLs ..."
+
+#~ msgid "getting message %1 of %2 ..."
+#~ msgstr "Réception du message %1 sur %2 ..."
+
+#~ msgid "Deleting highlighted messages..."
+#~ msgstr "Effacement des messages sélectionnés ..."
+
+#~ msgid ""
+#~ "Message %1 at %2 will be deleted.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Message %1 sur %2 sera effacé.\n"
+#~ "Etes-vous sûr ?\n"
+
+#~ msgid "Yes all"
+#~ msgstr "Oui pour tous"
+
+#~ msgid "Sending complain mails..."
+#~ msgstr "Envoi des messages de réclamation..."
+
+#, fuzzy
+#~ msgid ""
+#~ "Complain mail will be sent for message %1 at %2.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Un message de réclamation sera envoyé pour le message %1 sur %2.\n"
+#~ "Etes-vous sûr ?\n"
+
+#~ msgid "Header %1 at %2"
+#~ msgstr "En-tête %1 sur %2"
+
+#~ msgid "Getting complete highlighted messages..."
+#~ msgstr "Réception des messages sélectionnés en entier..."
+
+#~ msgid "Message %1 at %2"
+#~ msgstr "Message %1 sur %2"
+
+#, fuzzy
+#~ msgid "OptionDialog"
+#~ msgstr "EditDialog"
+
+#, fuzzy
+#~ msgid ""
+#~ "<qt>Enter path to selected command and arguments<br>&lt;user&gt;, "
+#~ "<server>, \\<passwd\\>, \\<header\\> and \\<body\\> may be used as "
+#~ "arguments</qt>"
+#~ msgstr ""
+#~ "Entrez le chemin de la commande sélectionnée et des arguments\n"
+#~ "<user>, <server>, <passwd>, <header> et <body> peuvent êtreutilisés comme "
+#~ "arguments"
+
+#~ msgid ""
+#~ "Enter path to selected command and arguments\\n<user>, <server>, "
+#~ "<passwd>, <header> and <body> may be used as arguments"
+#~ msgstr ""
+#~ "Entrez le chemin de la commande sélectionnée et des arguments\\n<user>, "
+#~ "<server>, <passwd>, <header> et <body> peuvent êtreutilisés comme "
+#~ "arguments"
+
+#, fuzzy
+#~ msgid "Ignore case"
+#~ msgstr "Ignorer"
+
+#~ msgid "PasswordDlg"
+#~ msgstr "PasswordDlg"
+
+#~ msgid "PasswordDialog"
+#~ msgstr "PasswordDialog"
diff --git a/po/hu.po b/po/hu.po
new file mode 100644
index 0000000..58f500c
--- /dev/null
+++ b/po/hu.po
@@ -0,0 +1,1934 @@
+# translation of hu.po to deutsch
+# translation of hu.po to Hungarian
+# translation of kshowmail.po to Hungarian
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
+# Sandor Laza <slaza@xs4all.nl>, 2003.
+# Eggert Ehmke <eggert.ehmke@berlin.de>, 2003, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: hu\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-04-17 21:57+0200\n"
+"PO-Revision-Date: 2004-02-02 22:23+0100\n"
+"Last-Translator: Eggert Ehmke <eggert.ehmke@berlin.de>\n"
+"Language-Team: deutsch\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.0.2\n"
+
+#: _translatorinfo.cpp:1 main.cpp:65
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Sándor Laza"
+
+#: _translatorinfo.cpp:3 main.cpp:65
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "slaza@xs4all.nl"
+
+#: main.cpp:33
+msgid "A powerful pop3 mail checker"
+msgstr "Egy sokoldalú pop3 póstaláda figyelő"
+
+#: main.cpp:40
+msgid "Refresh messages now"
+msgstr "Frissítsd az üzeneteket most"
+
+#: main.cpp:42
+msgid "Launch configure dialog"
+msgstr "Indítsd a beállítás dialógust"
+
+#: main.cpp:107
+msgid "Kshowmail is already running!"
+msgstr "Kshowmail már fut!"
+
+#. i18n: file AlertDlg.ui line 16
+#: AlertDlg.cpp:262 rc.cpp:15
+#, no-c-format
+msgid "KShowmail"
+msgstr "KShowmail"
+
+#. i18n: file AlertDlg.ui line 27
+#: AlertDlg.cpp:263 rc.cpp:18 kcmconfigs/filtersetupitem.cpp:257
+#: kcmconfigs/filtersetupdialog.cpp:95 kcmconfigs/configfilter.cpp:133
+#, no-c-format
+msgid "Ignore"
+msgstr "Érdektelen"
+
+#. i18n: file AlertDlg.ui line 35
+#: AlertDlg.cpp:264 rc.cpp:21 kcmconfigs/configactions.cpp:49
+#, no-c-format
+msgid "Show main window"
+msgstr "Mutasd meg"
+
+#. i18n: file AlertDlg.ui line 61
+#: AlertDlg.cpp:265 rc.cpp:24
+#, no-c-format
+msgid "New mail"
+msgstr "Új üzenet"
+
+#. i18n: file AlertDlg.ui line 76
+#: AlertDlg.cpp:266 rc.cpp:27
+#, no-c-format
+msgid "has arrived !"
+msgstr "érkezett !"
+
+#: serverdialog.cpp:44 kcmconfigs/accountsetupdialog.cpp:39
+msgid "Account:"
+msgstr "Póstaláda:"
+
+#: serverdialog.cpp:47 serverdialog.cpp:48
+#: kcmconfigs/accountsetupdialog.cpp:42 kcmconfigs/accountsetupdialog.cpp:43
+msgid "Unique Account Name"
+msgstr ""
+
+#: serverdialog.cpp:52 kcmconfigs/accountsetupdialog.cpp:47
+msgid "Server:"
+msgstr "Szerver:"
+
+#: serverdialog.cpp:55 serverdialog.cpp:56
+#: kcmconfigs/accountsetupdialog.cpp:49 kcmconfigs/accountsetupdialog.cpp:50
+#, fuzzy
+msgid "Server Name"
+msgstr "Szerver"
+
+#: serverdialog.cpp:60 kcmconfigs/accountsetupdialog.cpp:54
+msgid "Protocol:"
+msgstr "Protokol:"
+
+#: serverdialog.cpp:63 serverdialog.cpp:64
+#: kcmconfigs/accountsetupdialog.cpp:57 kcmconfigs/accountsetupdialog.cpp:58
+msgid ""
+"Protocol, which shall be used to get the mails from the server. Currently "
+"KShowmail just supports POP3."
+msgstr ""
+
+#: serverdialog.cpp:68 kcmconfigs/accountsetupdialog.cpp:62
+msgid "Port:"
+msgstr "Port:"
+
+#: serverdialog.cpp:71 serverdialog.cpp:72
+#: kcmconfigs/accountsetupdialog.cpp:65 kcmconfigs/accountsetupdialog.cpp:66
+msgid "Port Number. Normally POP3 uses port 110."
+msgstr ""
+
+#: serverdialog.cpp:76 kcmconfigs/accountsetupdialog.cpp:70
+msgid "User:"
+msgstr "Felhasználó:"
+
+#: serverdialog.cpp:78 serverdialog.cpp:79
+#: kcmconfigs/accountsetupdialog.cpp:72 kcmconfigs/accountsetupdialog.cpp:73
+msgid "To authenticate to the mail server you need an user name."
+msgstr ""
+
+#: serverdialog.cpp:84 kcmconfigs/accountsetupdialog.cpp:78
+msgid "Password"
+msgstr "Jelszó"
+
+#: serverdialog.cpp:95 kcmconfigs/accountsetupdialog.cpp:89
+#, fuzzy
+msgid "Don't save"
+msgstr "Nem egyenlő"
+
+#: serverdialog.cpp:96 kcmconfigs/accountsetupdialog.cpp:90
+#, fuzzy
+msgid "Save password"
+msgstr "Jelszó Tárolása"
+
+#: serverdialog.cpp:97 kcmconfigs/accountsetupdialog.cpp:91
+msgid "Use KWallet"
+msgstr ""
+
+#: serverdialog.cpp:101 kcmconfigs/accountsetupdialog.cpp:95
+msgid ""
+"Don't save password. KShowmail will ask you for it at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:102 kcmconfigs/accountsetupdialog.cpp:96
+msgid ""
+"Save password in the configuration file. Not recommended, because the "
+"password is just lightly encrypted"
+msgstr ""
+
+#: serverdialog.cpp:103 kcmconfigs/accountsetupdialog.cpp:97
+msgid ""
+"Use KWallet to save the password. Maybe you have to type in the KWallet "
+"master password at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:119 kcmconfigs/configdisplay.cpp:46
+#: kcmconfigs/accountsetupdialog.cpp:113 kshowmailview.cpp:53
+msgid "Active"
+msgstr "Aktív"
+
+#: serverdialog.cpp:120 kcmconfigs/accountsetupdialog.cpp:114
+#, fuzzy
+msgid "Select it to activate this account."
+msgstr "Válssz pop3 póstaládát"
+
+#: serverdialog.cpp:125 kcmconfigs/accountsetupdialog.cpp:119
+msgid "Encryption"
+msgstr ""
+
+#: serverdialog.cpp:135 kshowmailfeedback.cpp:57
+#: kcmconfigs/accountsetupdialog.cpp:129
+msgid "None"
+msgstr "Semmi"
+
+#: serverdialog.cpp:136 kcmconfigs/accountsetupdialog.cpp:130
+msgid "SSL"
+msgstr ""
+
+#: serverdialog.cpp:137 kcmconfigs/accountsetupdialog.cpp:131
+msgid "TLS"
+msgstr ""
+
+#: serverdialog.cpp:141 kcmconfigs/accountsetupdialog.cpp:135
+msgid ""
+"The download of the mail header and body will not be encrypted. Use this, if "
+"your provider doesn't make a secure transfer available."
+msgstr ""
+
+#: serverdialog.cpp:142 kcmconfigs/accountsetupdialog.cpp:136
+msgid ""
+"Secure Sockets Layer (SSL), is a cryptographic protocol that provides secure "
+"communications on the Internet."
+msgstr ""
+
+#: serverdialog.cpp:143 kcmconfigs/accountsetupdialog.cpp:137
+msgid ""
+"Transport Layer Security (TLS) is a cryptographic protocol that provides "
+"secure communications on the Internet. It is the successor of SSL."
+msgstr ""
+
+#: serverdialog.cpp:152 kcmconfigs/accountsetupdialog.cpp:145
+#, fuzzy
+msgid "General"
+msgstr "Feladó"
+
+#: serverdialog.cpp:153 kcmconfigs/accountsetupdialog.cpp:146
+msgid "Security"
+msgstr ""
+
+#: serverdialog.cpp:157 kcmconfigs/accountsetupdialog.cpp:150
+msgid "New account"
+msgstr "Új póstaláda"
+
+#: serverdialog.cpp:159 kcmconfigs/accountsetupdialog.cpp:152
+msgid "Edit account"
+msgstr "Póstaláda módosítása"
+
+#: serverdialog.cpp:194 kcmconfigs/accountsetupdialog.cpp:187
+msgid "Please enter an server."
+msgstr ""
+
+#: serverdialog.cpp:200 kcmconfigs/accountsetupdialog.cpp:193
+msgid "Please enter an user name."
+msgstr ""
+
+#: kshowmailfeedback.cpp:31
+msgid "What is your general opinion about this program?"
+msgstr "Mi a véleményed erről a programról általánosságban?"
+
+#: kshowmailfeedback.cpp:33
+msgid "It's one of my favourites"
+msgstr "Ez az egyik kedvencem"
+
+#: kshowmailfeedback.cpp:34
+msgid "I like it"
+msgstr "Szeretem"
+
+#: kshowmailfeedback.cpp:35
+msgid "It's sometimes useful"
+msgstr "Néha hasznos"
+
+#: kshowmailfeedback.cpp:36
+msgid "It's average"
+msgstr "Átlagos"
+
+#: kshowmailfeedback.cpp:37
+msgid "Nice try, but this could be done better"
+msgstr "Jó próbálkozás, de lehetne jobb is"
+
+#: kshowmailfeedback.cpp:38
+msgid "It's poor"
+msgstr "Gyenge"
+
+#: kshowmailfeedback.cpp:39
+msgid "It's useless"
+msgstr "Használhatatlan"
+
+#: kshowmailfeedback.cpp:40
+msgid "It's crap"
+msgstr "Vacak"
+
+#: kshowmailfeedback.cpp:42
+msgid "Which features of this program do you like?"
+msgstr "Melyik szolgáltatásokat szereted?"
+
+#: kshowmailfeedback.cpp:45
+msgid "What is your favourite feature?"
+msgstr "Melyik a kedvenc szolgáltatásod?"
+
+#: kshowmailfeedback.cpp:48
+msgid "Which features don't you like?"
+msgstr "Melyik szolgáltatásokat nem szereted?"
+
+#: kshowmailfeedback.cpp:51
+msgid "Which features do you never use?"
+msgstr "Melyek azok a szolgáltatások amelyeket sosem használsz?"
+
+#: kshowmailfeedback.cpp:54
+msgid "Are there features you are missing?"
+msgstr "Mely szolgáltatások hiányoznak?"
+
+#: kshowmailfeedback.cpp:55
+msgid "Yes, a lot! (please add comment below)"
+msgstr "Igen, rengeteg! (Kérlek írd le a megjegyzésed itt alul)"
+
+#: kshowmailfeedback.cpp:56
+msgid "Some (please add comment below)"
+msgstr "Néhány (Kérlek írd le a megjegyzésed itt alul)"
+
+#: kshowmailfeedback.cpp:58
+msgid "It has too many features already!"
+msgstr "Már amúgyis túl sok szolgáltatást nyújt!"
+
+#: kshowmailfeedback.cpp:60
+msgid "How do you rate the stability of this program?"
+msgstr "Hogyan értékelnéd a program stabilitását?"
+
+#: kshowmailfeedback.cpp:61
+msgid "Rock solid"
+msgstr "Szikla szilárd"
+
+#: kshowmailfeedback.cpp:62 kshowmailfeedback.cpp:69
+msgid "Good"
+msgstr "Jó"
+
+#: kshowmailfeedback.cpp:63 kshowmailfeedback.cpp:70 kshowmailfeedback.cpp:77
+#: kshowmailfeedback.cpp:84
+msgid "Average"
+msgstr "Átlagos"
+
+#: kshowmailfeedback.cpp:64 kshowmailfeedback.cpp:71
+msgid "Poor"
+msgstr "Gyenge"
+
+#: kshowmailfeedback.cpp:65
+msgid "It keeps crashing all the time"
+msgstr "Állandóan elszáll"
+
+#: kshowmailfeedback.cpp:67
+msgid "How do you rate the performance of this program?"
+msgstr "Hogyan értékeled a program teljesítményét?"
+
+#: kshowmailfeedback.cpp:68
+msgid "Great"
+msgstr "Nagyszerű"
+
+#: kshowmailfeedback.cpp:72
+msgid "It's so slow it drives me nuts"
+msgstr "Olyan lassú, hogy őrület"
+
+#: kshowmailfeedback.cpp:74
+msgid "What is your experience with computers in general?"
+msgstr "Mennyire vagy járatos a számítástechnikában?"
+
+#: kshowmailfeedback.cpp:75 kshowmailfeedback.cpp:82
+msgid "Expert"
+msgstr "Szakértő"
+
+#: kshowmailfeedback.cpp:76 kshowmailfeedback.cpp:83
+msgid "Fair"
+msgstr "Meglehetősen"
+
+#: kshowmailfeedback.cpp:78 kshowmailfeedback.cpp:85
+msgid "Learning"
+msgstr "Tanulom"
+
+#: kshowmailfeedback.cpp:79 kshowmailfeedback.cpp:86
+msgid "Newbie"
+msgstr "Újonc"
+
+#: kshowmailfeedback.cpp:81
+msgid "What is your experience with Unix/Linux systems?"
+msgstr "Mennyire vagy járatos UNIX/Linux rendszerekben?"
+
+#: kshowmailfeedback.cpp:88
+msgid "Did you have trouble figuring out how to work with this program?"
+msgstr "Problémát okozott annak kiderítése, hogy hogyan használd a programot?"
+
+#: kshowmailfeedback.cpp:90
+msgid "No problem"
+msgstr "Semmi gond"
+
+#: kshowmailfeedback.cpp:91
+msgid "Some"
+msgstr "Valamennyire"
+
+#: kshowmailfeedback.cpp:92
+msgid "I'm still learning"
+msgstr "Még mindíg csak tanulom"
+
+#: kshowmailfeedback.cpp:93
+msgid "I didn't have a clue what to do at first"
+msgstr "Először fogalmam sem volt, hogy mit csináljak"
+
+#: kshowmailfeedback.cpp:94
+msgid "I still don't have a clue what to do"
+msgstr "Még mindíg fogalmam sincs, hogy mit csináljak"
+
+#: kshowmailfeedback.cpp:96
+msgid "Where do you use this program most?"
+msgstr "Hol használod leggyakrabban a programot?"
+
+#: kshowmailfeedback.cpp:97
+msgid "At work"
+msgstr "Munkahelyen"
+
+#: kshowmailfeedback.cpp:98
+msgid "At home"
+msgstr "Otthon"
+
+#: kshowmailfeedback.cpp:99
+msgid "At university / school"
+msgstr "Egyetemen / iskolában"
+
+#: kshowmailfeedback.cpp:101
+msgid "What is your primary role there?"
+msgstr "Mitvel foglalkozol ott?"
+
+#: kshowmailfeedback.cpp:102 kshowmailfeedback.cpp:110
+msgid "Home user"
+msgstr "Otthoni felhasználó"
+
+#: kshowmailfeedback.cpp:103 kshowmailfeedback.cpp:111
+msgid "Student"
+msgstr "Tanuló"
+
+#: kshowmailfeedback.cpp:104 kshowmailfeedback.cpp:112
+msgid "Educational (teacher / professor)"
+msgstr "Oktató (tanár / professzor )"
+
+#: kshowmailfeedback.cpp:105 kshowmailfeedback.cpp:113
+msgid "Non-computer related work"
+msgstr "Nem-számítástechnikával kapcsolatos"
+
+#: kshowmailfeedback.cpp:106 kshowmailfeedback.cpp:114
+msgid "Developer"
+msgstr "Fejlesztő"
+
+#: kshowmailfeedback.cpp:107 kshowmailfeedback.cpp:115
+msgid "System administrator"
+msgstr "Rendszeradminisztrátor"
+
+#: kshowmailfeedback.cpp:109
+msgid "Do you have any other roles there?"
+msgstr "Foglalkozol egyéb dologgal is?"
+
+#: kshowmailfeedback.cpp:117
+msgid "How did you get to know this program?"
+msgstr "Hogyan jutottál a programhoz?"
+
+#: kshowmailfeedback.cpp:118
+msgid "In a menu on my machine"
+msgstr "A gépemen egy menüpontból"
+
+#: kshowmailfeedback.cpp:119
+msgid "Somebody told me about it"
+msgstr "Valaki említette"
+
+#: kshowmailfeedback.cpp:120
+msgid "On the internet"
+msgstr "Az internetről"
+
+#: kshowmailfeedback.cpp:121
+msgid "Printed magazine / book"
+msgstr "Nyomtatott újságból / könyvből"
+
+#: kshowmailfeedback.cpp:122
+msgid "Other (please add comment below)"
+msgstr "Más forrásból (Kérlek írd le a megjegyzésed itt alul)"
+
+#: kshowmailfeedback.cpp:124
+msgid "Would you recommend this program to a friend?"
+msgstr "Ajánlanád ezt a programot a barátaidnak?"
+
+#: kshowmailfeedback.cpp:132
+msgid "The message list display in general"
+msgstr "Az üzenetlista általánosságban"
+
+#: kshowmailfeedback.cpp:133
+msgid "Display of message headers"
+msgstr "Az üzenetfejlécek megjelenítése"
+
+#: kshowmailfeedback.cpp:134
+msgid "Display of complete messages"
+msgstr "A teljes üzenet megjelenítése"
+
+#: kshowmailfeedback.cpp:136
+msgid "Filters"
+msgstr "Szűrők"
+
+#: kshowmailfeedback.cpp:137
+msgid "Manual delete of unwanted messages"
+msgstr "A felesleges üzenetek kézi törlése"
+
+#: kshowmailfeedback.cpp:138
+#, fuzzy
+msgid "Automatic move of filtered messages"
+msgstr "A kiszűrt üzenetek automatikus törlése"
+
+#: kshowmailfeedback.cpp:139
+msgid "Automatic delete of filtered messages"
+msgstr "A kiszűrt üzenetek automatikus törlése"
+
+#: kshowmailfeedback.cpp:140
+#, fuzzy
+msgid "Automatic mark of filtered messages"
+msgstr "A kiszűrt üzenetek automatikus törlése"
+
+#: kshowmailfeedback.cpp:141
+#, fuzzy
+msgid "Ignoring of filtered messages"
+msgstr "A kiszűrt üzenetek kézi törlése"
+
+#: kshowmailfeedback.cpp:142
+msgid "Integration of SpamAssassin"
+msgstr ""
+
+#: kshowmailfeedback.cpp:143
+#, fuzzy
+msgid "White- and Blacklist"
+msgstr "L&ista törlése"
+
+#: kshowmailfeedback.cpp:144
+#, fuzzy
+msgid "Filter Log"
+msgstr "Szűrő"
+
+#: kshowmailfeedback.cpp:145
+msgid "Filter messages by regular expressions"
+msgstr "Üzenetek szűrése szabványos kifejezésekkel"
+
+#: kshowmailfeedback.cpp:148
+msgid "Sorting of messages by size, date etc."
+msgstr "Üzenetek rendezése méret, dátum stb. szerint"
+
+#: kshowmailfeedback.cpp:150
+msgid "Play sound"
+msgstr "Dallam játszása"
+
+#: kshowmailfeedback.cpp:151
+msgid "Play beep"
+msgstr "Sípolás"
+
+#: kshowmailfeedback.cpp:152
+msgid "Initial timer"
+msgstr "Kezdeti időzítő"
+
+#: kshowmailfeedback.cpp:153
+msgid "Interval timer"
+msgstr "Intervallum időzítő"
+
+#: kshowmailfeedback.cpp:154
+msgid "This feedback survey :-)"
+msgstr "Ez a felmérés :-)"
+
+#: configelem.cpp:294
+msgid "Please type in the password for %1"
+msgstr ""
+
+#: configelem.cpp:515
+msgid "Time out on %1. The operation could not be finished on time"
+msgstr ""
+
+#: configelem.cpp:515
+#, fuzzy
+msgid "Time Out"
+msgstr "Idő"
+
+#: configelem.cpp:1647
+msgid ""
+"You want to check your mails for spam, but SpamAssassin is not running.\n"
+"KShowmail skips the spam check."
+msgstr ""
+
+#: configelem.cpp:1647
+msgid "SpamAssassin is not running"
+msgstr ""
+
+#: kfeedback.cpp:35
+msgid "Feedback"
+msgstr "Vélemény"
+
+#: kfeedback.cpp:39
+msgid "&Mail this..."
+msgstr "&Póstázd ezt..."
+
+#: kfeedback.cpp:89
+msgid ""
+"<p><b>Please tell us your opinion about this program.</b></p><p>You will be "
+"able to review everything in your mailer before any mail is sent.<br>Nothing "
+"will be sent behind your back.</p>"
+msgstr ""
+"<p><b>Kérem mondjátok el a véleményeteket a pogramról. </b></p><p>Elküldés "
+"előtt lhetőséged lessz mindent átnézni a levelezőprogramodban.<br>Semmi sem "
+"kerül elküldésre a tudtod nélkül.</p>"
+
+#: kfeedback.cpp:114
+msgid "Questions marked with "
+msgstr "Az így jelölt kérdések "
+
+#: kfeedback.cpp:123
+msgid " must be answered before a mail can be sent."
+msgstr " megválaszolása kötelező mielőtt a levél elküldésre kerülhetne. "
+
+#: kfeedback.cpp:134
+msgid "&Additional comments:"
+msgstr "&További kívánságok:"
+
+#: kfeedback.cpp:312
+msgid "yes"
+msgstr "igen"
+
+#: kfeedback.cpp:313
+msgid "no"
+msgstr "nem"
+
+#: showheaderdialog.cpp:28 showmaildialog.cpp:39
+msgid "Subject:"
+msgstr "Tárgy:"
+
+#. i18n: file kshowmailui.rc line 4
+#: rc.cpp:3
+#, no-c-format
+msgid "&Actions"
+msgstr "&Tevékenységek"
+
+#: showmaildialog.cpp:15
+msgid "Reply"
+msgstr "Válasz"
+
+#: showmaildialog.cpp:30
+msgid "Sender:"
+msgstr "Feladó:"
+
+#: showmaildialog.cpp:33
+msgid "Date:"
+msgstr "Dátum:"
+
+#: showmaildialog.cpp:36
+msgid "Size:"
+msgstr "Méret:"
+
+#: kshowmaildock.cpp:37
+#, fuzzy
+msgid "KShowmail: a powerful pop3 email checker"
+msgstr "Egy sokoldalú pop3 póstaláda figyelő"
+
+#: kcmconfigs/filtercriteriawidget.cpp:26 kcmconfigs/configdisplay.cpp:78
+#: kshowmailview.cpp:71
+msgid "From"
+msgstr "Feladó"
+
+#: kcmconfigs/filtercriteriawidget.cpp:27 kcmconfigs/configdisplay.cpp:82
+#: kshowmailview.cpp:72
+msgid "To"
+msgstr "Címzett"
+
+#: kcmconfigs/filtercriteriawidget.cpp:28
+msgid "Size (Bytes)"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:29 kshowmailview.cpp:73
+#: filterlogview.cpp:38 filterlogview.cpp:66
+msgid "Subject"
+msgstr "Tárgy"
+
+#: kcmconfigs/filtercriteriawidget.cpp:30
+msgid "Header"
+msgstr "Fejléc"
+
+#: kcmconfigs/filtercriteriawidget.cpp:31 kcmconfigs/configdisplay.cpp:50
+#: kcmconfigs/configdisplay.cpp:74 kshowmailview.cpp:54 kshowmailview.cpp:70
+#: filterlogview.cpp:37 filterlogview.cpp:64
+msgid "Account"
+msgstr "Póstaláda"
+
+#: kcmconfigs/filtercriteriawidget.cpp:48
+#, fuzzy
+msgid "contains"
+msgstr "Tartalmaz"
+
+#: kcmconfigs/filtercriteriawidget.cpp:49
+#, fuzzy
+msgid "does not contain"
+msgstr "Nem tartalmaz"
+
+#: kcmconfigs/filtercriteriawidget.cpp:50
+#, fuzzy
+msgid "equals"
+msgstr "Egyenlő"
+
+#: kcmconfigs/filtercriteriawidget.cpp:51
+#, fuzzy
+msgid "does not equal"
+msgstr "Nem egyenlő"
+
+#: kcmconfigs/filtercriteriawidget.cpp:52
+#, fuzzy
+msgid "matches regular expression"
+msgstr "Szabványos kifejezés módosítása"
+
+#: kcmconfigs/filtercriteriawidget.cpp:53
+msgid "does not match reg. expr."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:69
+msgid "is equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:70
+#, fuzzy
+msgid "is not equal to"
+msgstr "Nem egyenlő"
+
+#: kcmconfigs/filtercriteriawidget.cpp:71
+msgid "is greater than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:72
+msgid "is greater than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:73
+msgid "is less than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:74
+msgid "is less than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:107
+msgid "Case sensitive"
+msgstr "Betűnagyság érzékeny"
+
+#: kcmconfigs/filtercriteriawidget.cpp:196
+msgid "The Regular Expression Editor could not be initilized."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:211
+msgid "The Regular Expression Editor is not available."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:34
+#, fuzzy
+msgid "Log mails deleted by filter"
+msgstr "Szűrő törlése"
+
+#: kcmconfigs/configlog.cpp:36
+msgid "Check to activate the log of mails deleted by filter."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:46 kcmconfigs/configlog.cpp:78
+msgid "Remove log entries at exit"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:52 kcmconfigs/configlog.cpp:84
+msgid "Remove log entries after"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:58 kcmconfigs/configlog.cpp:90
+msgid " Days"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:66
+msgid "Log mails moved by filter"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:68
+msgid "Check to activate the log of mails moved by filter."
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:33
+msgid "Account list"
+msgstr "Póstaláda lista"
+
+#: kcmconfigs/configdisplay.cpp:35
+msgid "Mail list"
+msgstr "Üzenet lista"
+
+#: kcmconfigs/configdisplay.cpp:37
+msgid "Mail content"
+msgstr "Üzenet tartalom"
+
+#: kcmconfigs/configdisplay.cpp:47
+msgid "To switch on/off the 'Active' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:51
+msgid "To switch on/off the 'Account' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:54 kshowmailview.cpp:55
+msgid "Server"
+msgstr "Szerver"
+
+#: kcmconfigs/configdisplay.cpp:55
+msgid "To switch on/off the 'Server' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:58 kshowmailview.cpp:56
+msgid "User"
+msgstr "Felhasználó"
+
+#: kcmconfigs/configdisplay.cpp:59
+msgid "To switch on/off the 'User' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:62 kshowmailview.cpp:57
+msgid "Messages"
+msgstr "Üzenetek száma"
+
+#: kcmconfigs/configdisplay.cpp:63
+msgid "To switch on/off the 'Messages' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:66
+#, fuzzy
+msgid "Si&ze"
+msgstr "Méret"
+
+#: kcmconfigs/configdisplay.cpp:67
+msgid "To switch on/off the 'Size' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:70 kshowmailview.cpp:69
+msgid "Number"
+msgstr "Sorszám"
+
+#: kcmconfigs/configdisplay.cpp:71
+msgid "To switch on/off the 'Number' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:75
+msgid "To switch on/off the 'Account' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:79
+msgid "To switch on/off the 'From' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:83
+msgid "To switch on/off the 'To' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:86
+#, fuzzy
+msgid "Su&bject"
+msgstr "Tárgy"
+
+#: kcmconfigs/configdisplay.cpp:87
+msgid "To switch on/off the 'Subject' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:90 kshowmailview.cpp:74 filterlogview.cpp:35
+#: filterlogview.cpp:62
+msgid "Date"
+msgstr "Dátum"
+
+#: kcmconfigs/configdisplay.cpp:91
+msgid "To switch on/off the 'Date' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:94 kshowmailview.cpp:58 kshowmailview.cpp:75
+msgid "Size"
+msgstr "Méret"
+
+#: kcmconfigs/configdisplay.cpp:95
+msgid "To switch on/off the 'Size' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:98 kshowmailview.cpp:76
+msgid "Content"
+msgstr "Tartalom"
+
+#: kcmconfigs/configdisplay.cpp:99
+msgid "To switch on/off the 'Content' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:102 kshowmailview.cpp:77
+msgid "State"
+msgstr "Állapot"
+
+#: kcmconfigs/configdisplay.cpp:103
+msgid "To switch on/off the 'State' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:106
+msgid "Allow HTML"
+msgstr "HTML engedélyezése"
+
+#: kcmconfigs/configdisplay.cpp:107
+msgid "To switch on/off HTML in the message view"
+msgstr ""
+
+#: kcmconfigs/configaccounts.cpp:34 kcmconfigs/configfilter.cpp:71
+#, fuzzy
+msgid "Name"
+msgstr "Név:"
+
+#: kcmconfigs/configaccounts.cpp:194
+msgid "Do you really want to remove account %1?"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:33
+#, fuzzy
+msgid "Action if new &mail"
+msgstr "Teendő új üzenet érkezésekor"
+
+#: kcmconfigs/configactions.cpp:34
+#, fuzzy
+msgid "Action if &no mail"
+msgstr "Teendő ha nincs új üzenet"
+
+#: kcmconfigs/configactions.cpp:45
+msgid "Show message box"
+msgstr "Üzenj"
+
+#: kcmconfigs/configactions.cpp:46
+msgid "Show message if new mail arrives"
+msgstr "Üzenj ha új üzenet érkezett"
+
+#: kcmconfigs/configactions.cpp:50
+msgid "Show main window if new mail arrives"
+msgstr "A főablak megnyitása, ha új üzenet érkezett"
+
+#: kcmconfigs/configactions.cpp:53
+#, fuzzy
+msgid "&Beep"
+msgstr "Sípolj"
+
+#: kcmconfigs/configactions.cpp:54
+msgid "Beeps the internal speaker if new mail"
+msgstr "Sípol a belső hangszórón keresztül, ha új üzenet érkezett"
+
+#: kcmconfigs/configactions.cpp:57
+#, fuzzy
+msgid "Sound:"
+msgstr "Dallam"
+
+#: kcmconfigs/configactions.cpp:58
+msgid "Plays sound if new mail"
+msgstr "Játssz dallamot, ha új levél érkezett"
+
+#: kcmconfigs/configactions.cpp:61
+msgid "Play the selected sound file"
+msgstr "Játszd le a kiválasztott dallam állományt"
+
+#: kcmconfigs/configactions.cpp:67
+msgid "Press to select sound file"
+msgstr "Nyomd meg a gombot a dalam állomány kiválasztásához"
+
+#: kcmconfigs/configactions.cpp:70
+msgid "Command:"
+msgstr "Parancs:"
+
+#: kcmconfigs/configactions.cpp:71
+msgid "Starts external program if new mail"
+msgstr "Indíts külső programot, ha új levél érkezett"
+
+#: kcmconfigs/configactions.cpp:74
+msgid "Start the selected program"
+msgstr "Indítsd a programot"
+
+#: kcmconfigs/configactions.cpp:80 kcmconfigs/configactions.cpp:213
+msgid "Select external command"
+msgstr "Válassz külső programot"
+
+#: kcmconfigs/configactions.cpp:84
+#, fuzzy
+msgid "Minimi&ze"
+msgstr "Minimalizálás"
+
+#: kcmconfigs/configactions.cpp:85
+msgid "Minimize window if no new mail"
+msgstr "Minimalizáld az ablakot, ha nincs új üzenet"
+
+#: kcmconfigs/configactions.cpp:87
+msgid "Terminate"
+msgstr "Kilépés"
+
+#: kcmconfigs/configactions.cpp:88
+msgid "Terminate kshowmail if no new mail"
+msgstr "Kshowmail leállítása, ha nincs új üzenet"
+
+#: kcmconfigs/configactions.cpp:203
+#, fuzzy
+msgid "Sound files (*.wav, *.ogg)"
+msgstr "Wave állományok (*.wav)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "All files (*)"
+msgstr "Minden állomány (*)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "Select Sound File"
+msgstr "Válasszon hang állományt"
+
+#: kcmconfigs/configspamcheck.cpp:37
+msgid ""
+"KShowmail uses SpamAssassin to check the mails for spam. You have to "
+"install, configure and start the SpamAssassin daemon, before you can use "
+"this service."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:48
+#, fuzzy
+msgid "Action for Spam"
+msgstr "Teendő ha nincs új üzenet"
+
+#: kcmconfigs/configspamcheck.cpp:54
+msgid "Choose the action for spam mails."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:60 kcmconfigs/senderlistdialog.cpp:59
+#: kcmconfigs/filtersetupitem.cpp:255 kcmconfigs/filtersetupdialog.cpp:92
+#: kcmconfigs/configfilter.cpp:130
+msgid "Mark"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:71 kcmconfigs/filtersetupdialog.cpp:104
+#: kcmconfigs/configfilter.cpp:143
+msgid "Choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:190 kcmconfigs/filtersetupdialog.cpp:442
+#: kcmconfigs/configfilter.cpp:603
+#, fuzzy
+msgid "Mailbox Select"
+msgstr "Üzenet lista"
+
+#: kcmconfigs/configspamcheck.cpp:226
+msgid "SpamAssassin is running."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:226 kcmconfigs/configspamcheck.cpp:231
+msgid "Check for SpamAssassin"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:231
+msgid "SpamAssassin is not running."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:27
+msgid "Press to choose the mail directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:32
+msgid ""
+"Please choose the path to the mailboxes.\n"
+"KShowmail supports only MailDir boxes."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:47
+msgid "Please choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:65
+msgid "Choose the mailbox directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:134
+msgid "Inbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:136
+msgid "Outbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:138
+#, fuzzy
+msgid "Drafts"
+msgstr "Dátum"
+
+#: kcmconfigs/mailboxwizard.cpp:140
+msgid "sent-mail"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:142
+msgid "Trash"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:39
+msgid "List"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:41
+msgid ""
+"A mail whose sender is listed here will pass the filter.\n"
+"A mail will be accepted, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is accepted by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:43
+msgid ""
+"A mail whose sender is listed here will be hold up by the filter.\n"
+"A mail will be stopped, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is filtered by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:53 kcmconfigs/configfilter.cpp:72
+#, fuzzy
+msgid "Action"
+msgstr "&Tevékenységek"
+
+#: kcmconfigs/senderlistdialog.cpp:64
+msgid "The mails will be deleted."
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:65
+msgid "The mails will be marked."
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:253 kcmconfigs/filtersetupdialog.cpp:90
+#: kcmconfigs/configfilter.cpp:128
+#, fuzzy
+msgid "Show"
+msgstr "KShowmail"
+
+#: kcmconfigs/filtersetupitem.cpp:256
+msgid "Move to %1"
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:258
+#, fuzzy
+msgid "Check for spam"
+msgstr "Teendő ha nincs új üzenet"
+
+#: kcmconfigs/filtersetupitem.cpp:259
+msgid "Unknown action"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:37
+msgid "&Timers"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:44
+msgid "Confirm Close"
+msgstr "Bezárás Jóváhagyása"
+
+#: kcmconfigs/configgeneral.cpp:45
+#, fuzzy
+msgid "If checked, window close must be confirmed"
+msgstr "Ha be van kapcsolva, akkor az üzenetek törlését jóvá kell hagyni"
+
+#: kcmconfigs/configgeneral.cpp:48
+msgid "Confirm delete"
+msgstr "Törlés jóváhagyása"
+
+#: kcmconfigs/configgeneral.cpp:49
+msgid "If checked, message delete must be confirmed"
+msgstr "Ha be van kapcsolva, akkor az üzenetek törlését jóvá kell hagyni"
+
+#: kcmconfigs/configgeneral.cpp:52
+#, fuzzy
+msgid "Start Minimi&zed"
+msgstr "Minimalizált formában indul"
+
+#: kcmconfigs/configgeneral.cpp:53
+msgid "Application is started as icon"
+msgstr "Az alkalmazás ikonizált formában indul"
+
+#: kcmconfigs/configgeneral.cpp:56
+msgid "Close to tray"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:57
+msgid "Close button leaves the application running in tray"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:60
+#, fuzzy
+msgid "Minimize to tray"
+msgstr "Minimalizálás"
+
+#: kcmconfigs/configgeneral.cpp:61
+msgid "Minimizes to the tray rather than to the taskbar"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:64
+msgid "Show Connection Errors during refresh"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:65
+msgid ""
+"If a connection error occurs during refresh (e.g. unknown server), an error "
+"message will be shown. During other actions, this error always will be shown"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:68
+#, fuzzy
+msgid "&Keep mail as new"
+msgstr "Őrizd meg az üzenetet mint újat"
+
+#: kcmconfigs/configgeneral.cpp:69
+msgid "Keep mail as new until termination"
+msgstr "Őrizd meg az üzenetet mint újat a program befejezéséig"
+
+#: kcmconfigs/configgeneral.cpp:72
+msgid "Initial Timer:"
+msgstr "Kezdeti Időzítő:"
+
+#: kcmconfigs/configgeneral.cpp:73 kcmconfigs/configgeneral.cpp:91
+msgid "[Seconds]"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:75 kcmconfigs/configgeneral.cpp:76
+msgid "Seconds until first automatic logon (0 = no automatic)"
+msgstr ""
+"Másodpercek az első automatikus bejelentkezésig (0 = nincs automatikus)"
+
+#: kcmconfigs/configgeneral.cpp:81
+msgid "Interval Timer:"
+msgstr "Intervallum Időzítő:"
+
+#: kcmconfigs/configgeneral.cpp:82
+msgid "[Minutes]"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:84 kcmconfigs/configgeneral.cpp:85
+msgid "Minutes between automatic logon (0 = no automatic)"
+msgstr ""
+"Másodpercek az automatikus bejelentkezések között (0 = nincs automatikus)"
+
+#: kcmconfigs/configgeneral.cpp:90
+#, fuzzy
+msgid "Timeout:"
+msgstr "Idő"
+
+#: kcmconfigs/configgeneral.cpp:93 kcmconfigs/configgeneral.cpp:94
+msgid "Seconds until a server connect will be canceled"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:23
+#, fuzzy
+msgid "New filter"
+msgstr "Új szűrő "
+
+#: kcmconfigs/filtersetupdialog.cpp:25
+msgid "Edit filter"
+msgstr "Szűrő módosítása"
+
+#: kcmconfigs/filtersetupdialog.cpp:34
+#, fuzzy
+msgid "Name:"
+msgstr "Név:"
+
+#: kcmconfigs/filtersetupdialog.cpp:40
+#, fuzzy
+msgid "Filter Criterias"
+msgstr "Szűrő állapot"
+
+#: kcmconfigs/filtersetupdialog.cpp:44
+#, fuzzy
+msgid "Filter Action"
+msgstr "FilterDialog"
+
+#: kcmconfigs/filtersetupdialog.cpp:52
+msgid "Match all of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:53
+msgid "Match any of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+#, fuzzy
+msgid "More"
+msgstr "Érdektelen"
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+msgid "Add a further criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Fewer"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Remove the last criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:86
+msgid "Choose the action for all mails which are filtered by this filter."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:94 kcmconfigs/configfilter.cpp:132
+msgid "Spamcheck"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:33
+#, fuzzy
+msgid "Activate Filter"
+msgstr "Szűrő módosítása"
+
+#: kcmconfigs/configfilter.cpp:35
+msgid "Check to activate the header filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:41
+msgid "First Check: Sender Lists"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:45
+msgid "Whitelist"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:46
+msgid ""
+"Click here to edit the list of senders whose mails shall pass the filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:52
+#, fuzzy
+msgid "Blacklist"
+msgstr "L&ista törlése"
+
+#: kcmconfigs/configfilter.cpp:53
+msgid ""
+"Click here to edit the list of senders whose mails shall be deleted or "
+"marked."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:65
+msgid "Second Check: Filters"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:70
+msgid "No."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:86
+msgid "Moves the selected filter at the top"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:87
+#, fuzzy
+msgid "Moves the selected filter up"
+msgstr "Játszd le a kiválasztott dallam állományt"
+
+#: kcmconfigs/configfilter.cpp:88
+#, fuzzy
+msgid "Moves the selected filter down"
+msgstr "Játszd le a kiválasztott dallam állományt"
+
+#: kcmconfigs/configfilter.cpp:89
+msgid "Moves the selected filter at the bottm"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:116
+msgid "Third Check: Action for all others"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:123
+msgid ""
+"Choose the action for all mails which are not filtered by the steps before."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:17 kcmconfigs/kwalletaccess.cpp:86
+#: kwalletaccess.cpp:17 kwalletaccess.cpp:86
+msgid "KWallet is not available."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:25 kcmconfigs/kwalletaccess.cpp:94
+#: kwalletaccess.cpp:25 kwalletaccess.cpp:94
+msgid "Could not get wallet name for network datas from KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:45 kcmconfigs/kwalletaccess.cpp:114
+#: kwalletaccess.cpp:45 kwalletaccess.cpp:114
+msgid "Could not open KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:56 kwalletaccess.cpp:56
+msgid "Could not create folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:65 kcmconfigs/kwalletaccess.cpp:122
+#: kwalletaccess.cpp:65 kwalletaccess.cpp:122
+msgid "Could not open folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:73 kwalletaccess.cpp:73
+msgid "Could not save password in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:132 kwalletaccess.cpp:132
+msgid "Could not get password of account %1 from KWallet."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:182
+msgid "Please enter an account name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:228
+msgid "There is already an account named %1. Please choose another name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:241
+msgid ""
+"You have changed the account name. The account will lose all downloaded mail "
+"headers. Please perform a refresh."
+msgstr ""
+
+#: filterlog.cpp:128
+msgid "Could not save the filter log."
+msgstr ""
+
+#: showrecordelem.cpp:160
+msgid "new"
+msgstr "új"
+
+#: showrecordelem.cpp:162
+msgid "old"
+msgstr "régi"
+
+#: filterlogview.cpp:21
+msgid "Filter Log View"
+msgstr ""
+
+#: filterlogview.cpp:31
+#, fuzzy
+msgid "Deleted Mails:"
+msgstr "Szűrő törlése"
+
+#: filterlogview.cpp:36 filterlogview.cpp:63
+#, fuzzy
+msgid "Sender"
+msgstr "Feladó:"
+
+#: filterlogview.cpp:49
+msgid "Clear the list of deleted mails"
+msgstr ""
+
+#: filterlogview.cpp:58
+msgid "Moved Mails:"
+msgstr ""
+
+#: filterlogview.cpp:65
+msgid "Moved To"
+msgstr ""
+
+#: filterlogview.cpp:78
+msgid "Clear the list of moved mails"
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid ""
+"Thank You for using KShowmail.\n"
+"Please use the feedback dialog to tell us your experience with this program."
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid "Welcome"
+msgstr ""
+
+#: kshowmail.cpp:102
+msgid "Autorefresh: %1"
+msgstr "Automatikus frissítés: %1"
+
+#: kshowmail.cpp:132
+msgid "&Refresh messages"
+msgstr "Üzenetek &frissítése"
+
+#: kshowmail.cpp:133
+msgid "Show &header of highlighted messages"
+msgstr "A kijelölt üzenetek fej&lécének megjelenítése"
+
+#: kshowmail.cpp:134
+msgid "Show &complete highlighted messages"
+msgstr "A kijelölt üzenetek &teljes tartalmának megjelenítése"
+
+#: kshowmail.cpp:135
+msgid "&Delete highlighted messages"
+msgstr "A kijelölt &üzenetek törlése"
+
+#: kshowmail.cpp:136
+msgid "S&top current transfer"
+msgstr "A folyamatban levő átvitel &megszakítása"
+
+#: kshowmail.cpp:137
+msgid "Show Filter Log"
+msgstr ""
+
+#: kshowmail.cpp:138
+msgid "Add sender to whitelist"
+msgstr ""
+
+#: kshowmail.cpp:139
+msgid "Add sender to blacklist"
+msgstr ""
+
+#: kshowmail.cpp:150
+msgid "Send &Feedback Mail"
+msgstr "&Vélemény küldése"
+
+#: kshowmail.cpp:153
+msgid "Setup &account"
+msgstr "&Póstaládák beállítása"
+
+#: kshowmail.cpp:159 kshowmail.cpp:543 kshowmail.cpp:559 kshowmail.cpp:644
+msgid "Ready."
+msgstr "Kész."
+
+#: kshowmail.cpp:165
+msgid ""
+"Shows the number of deleted, moved or ignored mails by the filter.\n"
+"The positions denotes:\n"
+"by last refresh / since application start / listed by the log"
+msgstr ""
+
+#: kshowmail.cpp:326
+msgid "Refreshing ..."
+msgstr ""
+
+#: kshowmail.cpp:363
+msgid "Job was stopped"
+msgstr "A munkafolyamat megállításra került."
+
+#: kshowmail.cpp:392
+msgid "%1 message(s) with a total of %2 bytes are waiting"
+msgstr "%1 üzenet várakozik, összesen %2 byte-nyi információval"
+
+#: kshowmail.cpp:418
+msgid "Do you want to delete these mails?"
+msgstr ""
+
+#: kshowmail.cpp:418
+#, fuzzy
+msgid "Delete?"
+msgstr "Törölve"
+
+#: kshowmail.cpp:428
+msgid "Deleting Mail(s) ..."
+msgstr ""
+
+#: kshowmail.cpp:469
+msgid "Downloading ..."
+msgstr ""
+
+#: kshowmail.cpp:491
+#, fuzzy
+msgid "Last Refresh: %1"
+msgstr "Automatikus frissítés: %1"
+
+#: kshowmail.cpp:523
+msgid ""
+"KShowmail will be closed.\n"
+"Are you sure?"
+msgstr ""
+"KShowmail futása befejeződik.\n"
+"Biztos vagy benne?"
+
+#: kshowmail.cpp:805
+msgid "Filter: Deleted: %1/%2/%3; Moved: %4/%5/%6; Ignored: %7"
+msgstr ""
+
+#~ msgid "Execute user commands"
+#~ msgstr "Felhasználói parancsok futtatása"
+
+#, fuzzy
+#~ msgid "Pass"
+#~ msgstr "Jelszó"
+
+#~ msgid "Condition"
+#~ msgstr "Feltétel"
+
+#~ msgid "Contains"
+#~ msgstr "Tartalmaz"
+
+#~ msgid "Doesn't contain"
+#~ msgstr "Nem tartalmaz"
+
+#~ msgid "Equals"
+#~ msgstr "Egyenlő"
+
+#~ msgid "Doesn't equal"
+#~ msgstr "Nem egyenlő"
+
+#~ msgid "Greater"
+#~ msgstr "Nagyobb"
+
+#~ msgid "Less"
+#~ msgstr "Kisebb"
+
+#~ msgid "No more Conditions"
+#~ msgstr "Nincs több Feltétel"
+
+#~ msgid "And"
+#~ msgstr "És"
+
+#~ msgid "Or"
+#~ msgstr "Vagy"
+
+#~ msgid "Edit regular expression"
+#~ msgstr "Szabványos kifejezés módosítása"
+
+#~ msgid "Regular Expression"
+#~ msgstr "Szabványos Kifejezés"
+
+#~ msgid "For help about regular expressions lookup the Qt documentation"
+#~ msgstr ""
+#~ "Szabványos kifejezésekkel kapcsolatos segítséget a Qt dokumentációból "
+#~ "kaphatsz"
+
+#~ msgid "second Condition"
+#~ msgstr "második Feltétel"
+
+#~ msgid "Counter"
+#~ msgstr "Számláló"
+
+#~ msgid ""
+#~ "<qt>Filters are counted for each automatic deletion;<br>Filters with high "
+#~ "counters are listed first</qt>"
+#~ msgstr ""
+#~ "<qt>A program számontartja hogy a szűrők hányszor voltak használva "
+#~ "automatikus törlések során;<br> A gyakrabban használt szűrők hamarabb "
+#~ "kerülnek felsorolásra a listán</qt>"
+
+#~ msgid "Reset Counter"
+#~ msgstr "Számláló Újraindítása"
+
+#~ msgid "Filter Status"
+#~ msgstr "Szűrő állapot"
+
+#~ msgid "Filters are switched off"
+#~ msgstr "Kikapcsolt szűrők"
+
+#~ msgid "Filters are switched on"
+#~ msgstr "Bekapcsolt szűrők"
+
+#~ msgid "Automatic Delete"
+#~ msgstr "Automatikus Törlés"
+
+#~ msgid "Filters are switched on and are applied automatically"
+#~ msgstr "A bekapcsolt szűrők automatikusan alkalmazásra kerülnek"
+
+#~ msgid "Add filter"
+#~ msgstr "Új szűrő "
+
+#~ msgid "Copy filter"
+#~ msgstr "Szűrő másolása"
+
+#~ msgid ""
+#~ "Filter %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Szűrő %1 törlésre kerül.\n"
+#~ "Biztos vagy benne ?"
+
+#~ msgid ""
+#~ "Automatic filters can cause loss of important mails.\n"
+#~ "Please test your filters.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Az autómatikus szűrők fontos üzenetek elvesztését okozhatják.\n"
+#~ "Kérlek próbáld ki alaposan a szűrőket.\n"
+#~ "Biztos vagy benne ?"
+
+#~ msgid ""
+#~ "Your conditions contain empty match strings.\n"
+#~ "This will not work."
+#~ msgstr ""
+#~ "A feltételeid üres keresési mintát tartalmaznak.\n"
+#~ "Ez nem fog működni."
+
+#~ msgid "Setup &filters"
+#~ msgstr "&Szűrők beállítása"
+
+#~ msgid ""
+#~ "Command %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Parancs %1 törlésre kerül. \n"
+#~ "Biztos vagy benne?"
+
+#~ msgid ""
+#~ "Account %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "A %1 póstaláda törlésre fog kerülni.\n"
+#~ "Biztos vagy benne?"
+
+#~ msgid ""
+#~ "Password will be stored as scrambled text.\n"
+#~ "It might be possible to decipher it.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "A jelszó összekevert formában kerül tárolásra.\n"
+#~ "Visszafejtése lehetséges.\n"
+#~ "Biztos benne ?\n"
+
+#~ msgid "Message"
+#~ msgstr "Üzenet"
+
+#~ msgid "Send reply mail"
+#~ msgstr "Válaszlevél küldése"
+
+#~ msgid "User command"
+#~ msgstr "Felhasználói parancs"
+
+#~ msgid "Menu Entry"
+#~ msgstr "Kézi Bevitel"
+
+#~ msgid "Press button to select command path"
+#~ msgstr "Nyomd meg a gombot a parancs ótvonal beállításához"
+
+#~ msgid "Test"
+#~ msgstr "Próba"
+
+#~ msgid "Execute the command immediatly"
+#~ msgstr "A parancs azonnali végrehajtása"
+
+#~ msgid "Wait for command to complete"
+#~ msgstr "Várakozás a parancs befejezésére"
+
+#~ msgid "Enter menu entry name"
+#~ msgstr "Add meg a menüelem nevét"
+
+#~ msgid ""
+#~ "<qt>Enter path to selected command and arguments<br>&lt;user&gt;, &lt;"
+#~ "server&gt;, &lt;passwd&gt;, &lt;header&gt; and &lt;body&gt; may be used "
+#~ "as arguments</qt>"
+#~ msgstr ""
+#~ "<qt>Add meg az utat a kiválasztott parancsokhoz és paraméterekhez<br>&lt;"
+#~ "user&gt;, &lt;server&gt;, &lt;passwd&gt;, &lt;header&gt; és &lt;body&gt; "
+#~ "használható mint paraméter</qt>"
+
+#~ msgid "Server Options"
+#~ msgstr "Szerver Beállítások"
+
+#~ msgid "Password:"
+#~ msgstr "Jelszó:"
+
+#~ msgid "The account must have a name"
+#~ msgstr "A póstaládát el kell nevezni valahogy"
+
+#~ msgid "This account is already present"
+#~ msgstr "Ilyen nevű póstaláda már létezik"
+
+#~ msgid "Command"
+#~ msgstr "Parancs"
+
+#~ msgid "User commands"
+#~ msgstr "Felhasználói parancsok"
+
+#~ msgid "Add user command"
+#~ msgstr "Új felhasználói parancs"
+
+#~ msgid "Edit user command"
+#~ msgstr "Felhasználói parancs módosítása"
+
+#~ msgid "Copy user command"
+#~ msgstr "Felhasználói parancs másolása"
+
+#~ msgid "Delete user command"
+#~ msgstr "Felhasználói parancs törlése"
+
+#~ msgid "Accounts"
+#~ msgstr "Póstaládák"
+
+#~ msgid "Delete account"
+#~ msgstr "Póstaláda törlése"
+
+#~ msgid "copy account"
+#~ msgstr "póstaláda másolása"
+
+#~ msgid "Add new account"
+#~ msgstr "Új bejelentkezás hozzáadáasa"
+
+#, fuzzy
+#~ msgid "&General Options"
+#~ msgstr "Általános Beállítások"
+
+#~ msgid "Save password (not recommended !)"
+#~ msgstr "Jelszó tárolása (nem ajánlott !)"
+
+#~ msgid "Pop3 Timer"
+#~ msgstr "Pop3 Időzítő"
+
+#~ msgid "Pop3 timeout"
+#~ msgstr "Pop3 időtúllépés"
+
+#~ msgid "Max Size:"
+#~ msgstr "Maximális méret:"
+
+#~ msgid "Maximal size of downloaded mail body in kilobytes"
+#~ msgstr "Az üzenetekből letöltött maximális mennyiség kilobyte-okban"
+
+#~ msgid "Display Options"
+#~ msgstr "Megjelenítés beállítások"
+
+#, fuzzy
+#~ msgid "E&xternal Program"
+#~ msgstr "Külső program"
+
+#~ msgid "Sound File:"
+#~ msgstr "Dallam:"
+
+#~ msgid "Enter sound file"
+#~ msgstr "Add meg a dallam állományt"
+
+#~ msgid "Setup &accounts"
+#~ msgstr "&Póstaládák beállítása"
+
+#~ msgid "Setup &commands"
+#~ msgstr "P&arancsok beállítása"
+
+#~ msgid "&Setup"
+#~ msgstr "&Beállítások"
+
+#~ msgid "Select Command"
+#~ msgstr "Parancs Kiválasztása"
+
+#~ msgid "Send complain mails"
+#~ msgstr "Reklamációk küldése"
+
+#~ msgid "Clear message list by Ctrl-C"
+#~ msgstr "Üzenetlista törlése Ctrl-C -vel"
+
+#~ msgid "Forced refresh of all messages by Shift-F5"
+#~ msgstr "Összes üzenet frissítésének kikényszerítése Shift-F5 -tel"
+
+#~ msgid "Select account"
+#~ msgstr "Válassz póstaládát"
+
+#~ msgid "EditDialog"
+#~ msgstr "EditDialog"
+
+#~ msgid "KShowMailApp"
+#~ msgstr "KShowMailApp"
+
+#~ msgid "KshowmailDoc"
+#~ msgstr "KshowmailDoc"
+
+#~ msgid "KShowMailDock"
+#~ msgstr "KShowMailDock"
+
+#~ msgid "KFeedbackDialog"
+#~ msgstr "KFeedbackDialog"
+
+#~ msgid "KFeedbackForm"
+#~ msgstr "KFeedbackForm"
+
+#~ msgid "KFeedbackQuestionList"
+#~ msgstr "KFeedbackQuestionList"
+
+#~ msgid "FilterEntryDialog"
+#~ msgstr "FilterEntryDialog"
+
+#~ msgid "ServerDialog"
+#~ msgstr "ServerDialog"
+
+#~ msgid "KshowmailView"
+#~ msgstr "KshowmailView"
+
+#~ msgid "AlertDialog"
+#~ msgstr "AlertDialog"
+
+#~ msgid "CommandDialog"
+#~ msgstr "CommandDialog"
+
+#~ msgid "CommandEntryDialog"
+#~ msgstr "CommandEntryDialog"
+
+#~ msgid "Refresh &all messages"
+#~ msgstr "Az &összes üzenet frissítése"
+
+#~ msgid "&Send complain mail"
+#~ msgstr "&Reklamáció küldése"
+
+#~ msgid "Logging in to server %1 ..."
+#~ msgstr "Bejelentkezés a %1 szerverre ..."
+
+#~ msgid "connection to pop3 server %1 established successfully"
+#~ msgstr "Sikeresen létrejött a kapcsolat a %1 szerverrel"
+
+#~ msgid "POP3 Timeout"
+#~ msgstr "POP3 kifutott az időből"
+
+#~ msgid "Timeout: job was killed"
+#~ msgstr "Időtúllépés: a munkafolyamat beszüntetésre került"
+
+#~ msgid "getting UIDLs ..."
+#~ msgstr "UIDL-ek fogadása ..."
+
+#~ msgid "getting message %1 of %2 ..."
+#~ msgstr "Üzenet %1 fogadása a(z) %2 póstaládából ..."
+
+#~ msgid "Deleting highlighted messages..."
+#~ msgstr "Kijelölt üzenetek törlése folyamatban ..."
+
+#~ msgid ""
+#~ "Message %1 at %2 will be deleted.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Üzenet %1 a(z) %2 postaládábó törlésre kerül.\n"
+#~ "Biztos vagy benne?\n"
+
+#~ msgid "Yes all"
+#~ msgstr "Igen, mindet"
+
+#~ msgid "Sending complain mails..."
+#~ msgstr "Reklamációk küldése folyamatban..."
+
+#~ msgid ""
+#~ "Complain mail will be sent for message %1 at %2.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Reklamáló levelet fogsz küldenia a(z) %1 . üzenetre a %2 póstaládából.\n"
+#~ "Biztos vagy benne? \n"
+
+#~ msgid "Header %1 at %2"
+#~ msgstr "%1. fejléc a %2 -ből"
+
+#~ msgid "Getting complete highlighted messages..."
+#~ msgstr "A kijekölt üzenetek teljes tartalmának fogadása..."
+
+#~ msgid "Message %1 at %2"
+#~ msgstr "%1. üzenet a %2-ból"
+
+#~ msgid "OptionDialog"
+#~ msgstr "OptionDialog"
+
+#, fuzzy
+#~ msgid ""
+#~ "<qt>Enter path to selected command and arguments<br>&lt;user&gt;, "
+#~ "<server>, \\<passwd\\>, \\<header\\> and \\<body\\> may be used as "
+#~ "arguments</qt>"
+#~ msgstr ""
+#~ "Add meg az utat a kiválasztott parancsokhoz és paraméterekhez\n"
+#~ "<user>, <server>, <passwd>, <header> és <body> használható mint paraméter"
+
+#~ msgid ""
+#~ "Enter path to selected command and arguments\\n<user>, <server>, "
+#~ "<passwd>, <header> and <body> may be used as arguments"
+#~ msgstr ""
+#~ "Add meg az utat a kiválasztott parancsokhoz és paraméterekhez\\n<user>, "
+#~ "<server>, <passwd>, <header> és <body> használható mint paraméter"
diff --git a/po/it.po b/po/it.po
new file mode 100644
index 0000000..60fb137
--- /dev/null
+++ b/po/it.po
@@ -0,0 +1,1895 @@
+# translation of it.po to deutsch
+# translation of it.po to italiano
+# No0tic <g.posto@tin.it>, 2004.
+# Eggert Ehmke <eggert.ehmke@berlin.de>, 2004.
+msgid ""
+msgstr ""
+"Project-Id-Version: it\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-04-17 21:57+0200\n"
+"PO-Revision-Date: 2004-02-02 22:24+0100\n"
+"Last-Translator: Eggert Ehmke <eggert.ehmke@berlin.de>\n"
+"Language-Team: deutsch\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.0.2\n"
+
+#: _translatorinfo.cpp:1 main.cpp:65
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Gabriele Postorino"
+
+#: _translatorinfo.cpp:3 main.cpp:65
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "g.posto@tin.it"
+
+#: main.cpp:33
+msgid "A powerful pop3 mail checker"
+msgstr "Un potente controllore di posta pop3"
+
+#: main.cpp:40
+msgid "Refresh messages now"
+msgstr "Aggiorna i messaggi ora"
+
+#: main.cpp:42
+msgid "Launch configure dialog"
+msgstr "Configura..."
+
+#: main.cpp:107
+msgid "Kshowmail is already running!"
+msgstr "Kshowmail è già avviato!"
+
+#. i18n: file AlertDlg.ui line 16
+#: AlertDlg.cpp:262 rc.cpp:15
+#, no-c-format
+msgid "KShowmail"
+msgstr "Kshowmail"
+
+#. i18n: file AlertDlg.ui line 27
+#: AlertDlg.cpp:263 rc.cpp:18 kcmconfigs/filtersetupitem.cpp:257
+#: kcmconfigs/filtersetupdialog.cpp:95 kcmconfigs/configfilter.cpp:133
+#, no-c-format
+msgid "Ignore"
+msgstr "Ignora"
+
+#. i18n: file AlertDlg.ui line 35
+#: AlertDlg.cpp:264 rc.cpp:21 kcmconfigs/configactions.cpp:49
+#, no-c-format
+msgid "Show main window"
+msgstr "Mostra la finestra principale"
+
+#. i18n: file AlertDlg.ui line 61
+#: AlertDlg.cpp:265 rc.cpp:24
+#, no-c-format
+msgid "New mail"
+msgstr "E' arrivata"
+
+#. i18n: file AlertDlg.ui line 76
+#: AlertDlg.cpp:266 rc.cpp:27
+#, no-c-format
+msgid "has arrived !"
+msgstr "nuova posta !"
+
+#: serverdialog.cpp:44 kcmconfigs/accountsetupdialog.cpp:39
+msgid "Account:"
+msgstr "Account:"
+
+#: serverdialog.cpp:47 serverdialog.cpp:48
+#: kcmconfigs/accountsetupdialog.cpp:42 kcmconfigs/accountsetupdialog.cpp:43
+msgid "Unique Account Name"
+msgstr ""
+
+#: serverdialog.cpp:52 kcmconfigs/accountsetupdialog.cpp:47
+msgid "Server:"
+msgstr "Server:"
+
+#: serverdialog.cpp:55 serverdialog.cpp:56
+#: kcmconfigs/accountsetupdialog.cpp:49 kcmconfigs/accountsetupdialog.cpp:50
+#, fuzzy
+msgid "Server Name"
+msgstr "Server"
+
+#: serverdialog.cpp:60 kcmconfigs/accountsetupdialog.cpp:54
+msgid "Protocol:"
+msgstr "Protocollo:"
+
+#: serverdialog.cpp:63 serverdialog.cpp:64
+#: kcmconfigs/accountsetupdialog.cpp:57 kcmconfigs/accountsetupdialog.cpp:58
+msgid ""
+"Protocol, which shall be used to get the mails from the server. Currently "
+"KShowmail just supports POP3."
+msgstr ""
+
+#: serverdialog.cpp:68 kcmconfigs/accountsetupdialog.cpp:62
+msgid "Port:"
+msgstr "Porta:"
+
+#: serverdialog.cpp:71 serverdialog.cpp:72
+#: kcmconfigs/accountsetupdialog.cpp:65 kcmconfigs/accountsetupdialog.cpp:66
+msgid "Port Number. Normally POP3 uses port 110."
+msgstr ""
+
+#: serverdialog.cpp:76 kcmconfigs/accountsetupdialog.cpp:70
+msgid "User:"
+msgstr "Utente:"
+
+#: serverdialog.cpp:78 serverdialog.cpp:79
+#: kcmconfigs/accountsetupdialog.cpp:72 kcmconfigs/accountsetupdialog.cpp:73
+msgid "To authenticate to the mail server you need an user name."
+msgstr ""
+
+#: serverdialog.cpp:84 kcmconfigs/accountsetupdialog.cpp:78
+msgid "Password"
+msgstr "Password"
+
+#: serverdialog.cpp:95 kcmconfigs/accountsetupdialog.cpp:89
+#, fuzzy
+msgid "Don't save"
+msgstr "Diverso"
+
+#: serverdialog.cpp:96 kcmconfigs/accountsetupdialog.cpp:90
+#, fuzzy
+msgid "Save password"
+msgstr "Salva Password"
+
+#: serverdialog.cpp:97 kcmconfigs/accountsetupdialog.cpp:91
+msgid "Use KWallet"
+msgstr ""
+
+#: serverdialog.cpp:101 kcmconfigs/accountsetupdialog.cpp:95
+msgid ""
+"Don't save password. KShowmail will ask you for it at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:102 kcmconfigs/accountsetupdialog.cpp:96
+msgid ""
+"Save password in the configuration file. Not recommended, because the "
+"password is just lightly encrypted"
+msgstr ""
+
+#: serverdialog.cpp:103 kcmconfigs/accountsetupdialog.cpp:97
+msgid ""
+"Use KWallet to save the password. Maybe you have to type in the KWallet "
+"master password at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:119 kcmconfigs/configdisplay.cpp:46
+#: kcmconfigs/accountsetupdialog.cpp:113 kshowmailview.cpp:53
+msgid "Active"
+msgstr "Attivo"
+
+#: serverdialog.cpp:120 kcmconfigs/accountsetupdialog.cpp:114
+#, fuzzy
+msgid "Select it to activate this account."
+msgstr "Seleziona un account pop3"
+
+#: serverdialog.cpp:125 kcmconfigs/accountsetupdialog.cpp:119
+msgid "Encryption"
+msgstr ""
+
+#: serverdialog.cpp:135 kshowmailfeedback.cpp:57
+#: kcmconfigs/accountsetupdialog.cpp:129
+msgid "None"
+msgstr "Nessuna"
+
+#: serverdialog.cpp:136 kcmconfigs/accountsetupdialog.cpp:130
+msgid "SSL"
+msgstr ""
+
+#: serverdialog.cpp:137 kcmconfigs/accountsetupdialog.cpp:131
+msgid "TLS"
+msgstr ""
+
+#: serverdialog.cpp:141 kcmconfigs/accountsetupdialog.cpp:135
+msgid ""
+"The download of the mail header and body will not be encrypted. Use this, if "
+"your provider doesn't make a secure transfer available."
+msgstr ""
+
+#: serverdialog.cpp:142 kcmconfigs/accountsetupdialog.cpp:136
+msgid ""
+"Secure Sockets Layer (SSL), is a cryptographic protocol that provides secure "
+"communications on the Internet."
+msgstr ""
+
+#: serverdialog.cpp:143 kcmconfigs/accountsetupdialog.cpp:137
+msgid ""
+"Transport Layer Security (TLS) is a cryptographic protocol that provides "
+"secure communications on the Internet. It is the successor of SSL."
+msgstr ""
+
+#: serverdialog.cpp:152 kcmconfigs/accountsetupdialog.cpp:145
+#, fuzzy
+msgid "General"
+msgstr "Opzioni Generali"
+
+#: serverdialog.cpp:153 kcmconfigs/accountsetupdialog.cpp:146
+msgid "Security"
+msgstr ""
+
+#: serverdialog.cpp:157 kcmconfigs/accountsetupdialog.cpp:150
+msgid "New account"
+msgstr "Nuovo account"
+
+#: serverdialog.cpp:159 kcmconfigs/accountsetupdialog.cpp:152
+msgid "Edit account"
+msgstr "Modifica Account"
+
+#: serverdialog.cpp:194 kcmconfigs/accountsetupdialog.cpp:187
+msgid "Please enter an server."
+msgstr ""
+
+#: serverdialog.cpp:200 kcmconfigs/accountsetupdialog.cpp:193
+msgid "Please enter an user name."
+msgstr ""
+
+#: kshowmailfeedback.cpp:31
+msgid "What is your general opinion about this program?"
+msgstr "Qual'è la tua opinione generale sul programma?"
+
+#: kshowmailfeedback.cpp:33
+msgid "It's one of my favourites"
+msgstr "E' uno dei miei preferiti"
+
+#: kshowmailfeedback.cpp:34
+msgid "I like it"
+msgstr "Mi piace"
+
+#: kshowmailfeedback.cpp:35
+msgid "It's sometimes useful"
+msgstr "A volte è utile"
+
+#: kshowmailfeedback.cpp:36
+msgid "It's average"
+msgstr "E' nella media"
+
+#: kshowmailfeedback.cpp:37
+msgid "Nice try, but this could be done better"
+msgstr "Buon inizio, ma potrebbe essere fatto meglio"
+
+#: kshowmailfeedback.cpp:38
+msgid "It's poor"
+msgstr "E' scarso"
+
+#: kshowmailfeedback.cpp:39
+msgid "It's useless"
+msgstr "E' inutile"
+
+#: kshowmailfeedback.cpp:40
+msgid "It's crap"
+msgstr "Fa schifo"
+
+#: kshowmailfeedback.cpp:42
+msgid "Which features of this program do you like?"
+msgstr "Quali caratteristiche ti piacciono del programma?"
+
+#: kshowmailfeedback.cpp:45
+msgid "What is your favourite feature?"
+msgstr "Qual è la caratteristica che preferisci?"
+
+#: kshowmailfeedback.cpp:48
+msgid "Which features don't you like?"
+msgstr "Quali caratteristiche non ti piacciono?"
+
+#: kshowmailfeedback.cpp:51
+msgid "Which features do you never use?"
+msgstr "Quali caratteristiche non usi mai?"
+
+#: kshowmailfeedback.cpp:54
+msgid "Are there features you are missing?"
+msgstr "Pensi che manchino delle caratteristiche?"
+
+#: kshowmailfeedback.cpp:55
+msgid "Yes, a lot! (please add comment below)"
+msgstr "Si, molte! (Aggiungi un commento...)"
+
+#: kshowmailfeedback.cpp:56
+msgid "Some (please add comment below)"
+msgstr "Alcune (Aggiungi un commento...)"
+
+#: kshowmailfeedback.cpp:58
+msgid "It has too many features already!"
+msgstr "Ha già molte funzioni!"
+
+#: kshowmailfeedback.cpp:60
+msgid "How do you rate the stability of this program?"
+msgstr "Come reputi la stabilità del programma?"
+
+#: kshowmailfeedback.cpp:61
+msgid "Rock solid"
+msgstr "Solido come una roccia"
+
+#: kshowmailfeedback.cpp:62 kshowmailfeedback.cpp:69
+msgid "Good"
+msgstr "Buona"
+
+#: kshowmailfeedback.cpp:63 kshowmailfeedback.cpp:70 kshowmailfeedback.cpp:77
+#: kshowmailfeedback.cpp:84
+msgid "Average"
+msgstr "Nella media"
+
+#: kshowmailfeedback.cpp:64 kshowmailfeedback.cpp:71
+msgid "Poor"
+msgstr "Scarsa"
+
+#: kshowmailfeedback.cpp:65
+msgid "It keeps crashing all the time"
+msgstr "Si pianta continuamente"
+
+#: kshowmailfeedback.cpp:67
+msgid "How do you rate the performance of this program?"
+msgstr "Come reputi le performance del programma?"
+
+#: kshowmailfeedback.cpp:68
+msgid "Great"
+msgstr "Ottime"
+
+#: kshowmailfeedback.cpp:72
+msgid "It's so slow it drives me nuts"
+msgstr "Mi fa impazzire da quanto è lento"
+
+#: kshowmailfeedback.cpp:74
+msgid "What is your experience with computers in general?"
+msgstr "Qual è la tua esperienza con i computer in generale?"
+
+#: kshowmailfeedback.cpp:75 kshowmailfeedback.cpp:82
+msgid "Expert"
+msgstr "Esperto"
+
+#: kshowmailfeedback.cpp:76 kshowmailfeedback.cpp:83
+msgid "Fair"
+msgstr "Buona"
+
+#: kshowmailfeedback.cpp:78 kshowmailfeedback.cpp:85
+msgid "Learning"
+msgstr "Sto imparando"
+
+#: kshowmailfeedback.cpp:79 kshowmailfeedback.cpp:86
+msgid "Newbie"
+msgstr "Neofita"
+
+#: kshowmailfeedback.cpp:81
+msgid "What is your experience with Unix/Linux systems?"
+msgstr "Qual è la tua esperienza con i sistemi Unix/Linux?"
+
+#: kshowmailfeedback.cpp:88
+msgid "Did you have trouble figuring out how to work with this program?"
+msgstr "Hai avuto problemi a capire come funzionasse il programma?"
+
+#: kshowmailfeedback.cpp:90
+msgid "No problem"
+msgstr "Nessun problema"
+
+#: kshowmailfeedback.cpp:91
+msgid "Some"
+msgstr "Alcuni"
+
+#: kshowmailfeedback.cpp:92
+msgid "I'm still learning"
+msgstr "Sto ancora imparando"
+
+#: kshowmailfeedback.cpp:93
+msgid "I didn't have a clue what to do at first"
+msgstr "Non ne avevo idea all'inizio"
+
+#: kshowmailfeedback.cpp:94
+msgid "I still don't have a clue what to do"
+msgstr "Non ne ho tutt'ora idea"
+
+#: kshowmailfeedback.cpp:96
+msgid "Where do you use this program most?"
+msgstr "Dove usi questo programma principalmente?"
+
+#: kshowmailfeedback.cpp:97
+msgid "At work"
+msgstr "A lavoro"
+
+#: kshowmailfeedback.cpp:98
+msgid "At home"
+msgstr "A casa"
+
+#: kshowmailfeedback.cpp:99
+msgid "At university / school"
+msgstr "All'università / A scuola"
+
+#: kshowmailfeedback.cpp:101
+msgid "What is your primary role there?"
+msgstr "Qual è il tuo ruolo principale là? "
+
+#: kshowmailfeedback.cpp:102 kshowmailfeedback.cpp:110
+msgid "Home user"
+msgstr "Utente casalingo"
+
+#: kshowmailfeedback.cpp:103 kshowmailfeedback.cpp:111
+msgid "Student"
+msgstr "Studente"
+
+#: kshowmailfeedback.cpp:104 kshowmailfeedback.cpp:112
+msgid "Educational (teacher / professor)"
+msgstr "Educativo (insegnante / professore)"
+
+#: kshowmailfeedback.cpp:105 kshowmailfeedback.cpp:113
+msgid "Non-computer related work"
+msgstr "Un lavoro non relativo ai computer"
+
+#: kshowmailfeedback.cpp:106 kshowmailfeedback.cpp:114
+msgid "Developer"
+msgstr "Sviluppatore"
+
+#: kshowmailfeedback.cpp:107 kshowmailfeedback.cpp:115
+msgid "System administrator"
+msgstr "Amministratore di sistema"
+
+#: kshowmailfeedback.cpp:109
+msgid "Do you have any other roles there?"
+msgstr "Hai altri ruoli là?"
+
+#: kshowmailfeedback.cpp:117
+msgid "How did you get to know this program?"
+msgstr "Come sei venuto a conoscenza del programma?"
+
+#: kshowmailfeedback.cpp:118
+msgid "In a menu on my machine"
+msgstr "Su un menu nel mio computer"
+
+#: kshowmailfeedback.cpp:119
+msgid "Somebody told me about it"
+msgstr "Qualcuno me ne ha parlato"
+
+#: kshowmailfeedback.cpp:120
+msgid "On the internet"
+msgstr "Su internet"
+
+#: kshowmailfeedback.cpp:121
+msgid "Printed magazine / book"
+msgstr "Rivista stampata / libro"
+
+#: kshowmailfeedback.cpp:122
+msgid "Other (please add comment below)"
+msgstr "Altro (aggiungi un commento...)"
+
+#: kshowmailfeedback.cpp:124
+msgid "Would you recommend this program to a friend?"
+msgstr "Consiglieresti questo programma ad un amico?"
+
+#: kshowmailfeedback.cpp:132
+msgid "The message list display in general"
+msgstr "La visualizzazione della lista dei messaggi in generale"
+
+#: kshowmailfeedback.cpp:133
+msgid "Display of message headers"
+msgstr "La visualizzazione delle intestazioni dei messaggi"
+
+#: kshowmailfeedback.cpp:134
+msgid "Display of complete messages"
+msgstr "La visualizzazione completa dei messaggi"
+
+#: kshowmailfeedback.cpp:136
+msgid "Filters"
+msgstr "Filtri"
+
+#: kshowmailfeedback.cpp:137
+msgid "Manual delete of unwanted messages"
+msgstr "L'eliminazione manuale dei messaggi indesiderati"
+
+#: kshowmailfeedback.cpp:138
+#, fuzzy
+msgid "Automatic move of filtered messages"
+msgstr "L'eliminazione automatica dei messaggi filtrati"
+
+#: kshowmailfeedback.cpp:139
+msgid "Automatic delete of filtered messages"
+msgstr "L'eliminazione automatica dei messaggi filtrati"
+
+#: kshowmailfeedback.cpp:140
+#, fuzzy
+msgid "Automatic mark of filtered messages"
+msgstr "L'eliminazione automatica dei messaggi filtrati"
+
+#: kshowmailfeedback.cpp:141
+#, fuzzy
+msgid "Ignoring of filtered messages"
+msgstr "L'eliminazione manuale dei messaggi filtrati"
+
+#: kshowmailfeedback.cpp:142
+msgid "Integration of SpamAssassin"
+msgstr ""
+
+#: kshowmailfeedback.cpp:143
+#, fuzzy
+msgid "White- and Blacklist"
+msgstr "&Cancella lista"
+
+#: kshowmailfeedback.cpp:144
+#, fuzzy
+msgid "Filter Log"
+msgstr "Filtro"
+
+#: kshowmailfeedback.cpp:145
+msgid "Filter messages by regular expressions"
+msgstr "I filtri per i messaggi attraverso espressioni regolari"
+
+#: kshowmailfeedback.cpp:148
+msgid "Sorting of messages by size, date etc."
+msgstr "Disposizione dei messaggi per dimensione, data ecc."
+
+#: kshowmailfeedback.cpp:150
+msgid "Play sound"
+msgstr "Avviso sonoro"
+
+#: kshowmailfeedback.cpp:151
+msgid "Play beep"
+msgstr "Avviso con il beep"
+
+#: kshowmailfeedback.cpp:152
+msgid "Initial timer"
+msgstr "Timer iniziale"
+
+#: kshowmailfeedback.cpp:153
+msgid "Interval timer"
+msgstr "Aggiornamento automatico ogni tot minuti"
+
+#: kshowmailfeedback.cpp:154
+msgid "This feedback survey :-)"
+msgstr "Questo sondaggio :-)"
+
+#: configelem.cpp:294
+msgid "Please type in the password for %1"
+msgstr ""
+
+#: configelem.cpp:515
+msgid "Time out on %1. The operation could not be finished on time"
+msgstr ""
+
+#: configelem.cpp:515
+#, fuzzy
+msgid "Time Out"
+msgstr "Ora"
+
+#: configelem.cpp:1647
+msgid ""
+"You want to check your mails for spam, but SpamAssassin is not running.\n"
+"KShowmail skips the spam check."
+msgstr ""
+
+#: configelem.cpp:1647
+msgid "SpamAssassin is not running"
+msgstr ""
+
+#: kfeedback.cpp:35
+msgid "Feedback"
+msgstr "Feedback"
+
+#: kfeedback.cpp:39
+msgid "&Mail this..."
+msgstr "&Invia..."
+
+#: kfeedback.cpp:89
+msgid ""
+"<p><b>Please tell us your opinion about this program.</b></p><p>You will be "
+"able to review everything in your mailer before any mail is sent.<br>Nothing "
+"will be sent behind your back.</p>"
+msgstr ""
+"<p><b>Per favore inviaci la tua opinione su questo programma</b></"
+"p><p>Potrai controllare tutto nel tuo programma di posta prima di inviare il "
+"feedback.<br>Nulla verrà spedito senza il tuo consenso.</p>"
+
+#: kfeedback.cpp:114
+msgid "Questions marked with "
+msgstr "Alle domande segnate con "
+
+#: kfeedback.cpp:123
+msgid " must be answered before a mail can be sent."
+msgstr " devi rispondere prima di poter mandare l'email."
+
+#: kfeedback.cpp:134
+msgid "&Additional comments:"
+msgstr "&Commenti aggiuntivi:"
+
+#: kfeedback.cpp:312
+msgid "yes"
+msgstr "si"
+
+#: kfeedback.cpp:313
+msgid "no"
+msgstr "no"
+
+#: showheaderdialog.cpp:28 showmaildialog.cpp:39
+msgid "Subject:"
+msgstr "Oggetto:"
+
+#. i18n: file kshowmailui.rc line 4
+#: rc.cpp:3
+#, no-c-format
+msgid "&Actions"
+msgstr "&Azioni"
+
+#: showmaildialog.cpp:15
+msgid "Reply"
+msgstr "Rispondi"
+
+#: showmaildialog.cpp:30
+msgid "Sender:"
+msgstr "Mittente:"
+
+#: showmaildialog.cpp:33
+msgid "Date:"
+msgstr "Data:"
+
+#: showmaildialog.cpp:36
+msgid "Size:"
+msgstr "Dimensione:"
+
+#: kshowmaildock.cpp:37
+#, fuzzy
+msgid "KShowmail: a powerful pop3 email checker"
+msgstr "Un potente controllore di posta pop3"
+
+#: kcmconfigs/filtercriteriawidget.cpp:26 kcmconfigs/configdisplay.cpp:78
+#: kshowmailview.cpp:71
+msgid "From"
+msgstr "Da"
+
+#: kcmconfigs/filtercriteriawidget.cpp:27 kcmconfigs/configdisplay.cpp:82
+#: kshowmailview.cpp:72
+msgid "To"
+msgstr "A"
+
+#: kcmconfigs/filtercriteriawidget.cpp:28
+msgid "Size (Bytes)"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:29 kshowmailview.cpp:73
+#: filterlogview.cpp:38 filterlogview.cpp:66
+msgid "Subject"
+msgstr "Oggetto"
+
+#: kcmconfigs/filtercriteriawidget.cpp:30
+msgid "Header"
+msgstr "Intestazione"
+
+#: kcmconfigs/filtercriteriawidget.cpp:31 kcmconfigs/configdisplay.cpp:50
+#: kcmconfigs/configdisplay.cpp:74 kshowmailview.cpp:54 kshowmailview.cpp:70
+#: filterlogview.cpp:37 filterlogview.cpp:64
+msgid "Account"
+msgstr "Account"
+
+#: kcmconfigs/filtercriteriawidget.cpp:48
+#, fuzzy
+msgid "contains"
+msgstr "Contiene"
+
+#: kcmconfigs/filtercriteriawidget.cpp:49
+#, fuzzy
+msgid "does not contain"
+msgstr "Non contiene"
+
+#: kcmconfigs/filtercriteriawidget.cpp:50
+#, fuzzy
+msgid "equals"
+msgstr "Uguale"
+
+#: kcmconfigs/filtercriteriawidget.cpp:51
+#, fuzzy
+msgid "does not equal"
+msgstr "Diverso"
+
+#: kcmconfigs/filtercriteriawidget.cpp:52
+#, fuzzy
+msgid "matches regular expression"
+msgstr "Modifica espressione regolare"
+
+#: kcmconfigs/filtercriteriawidget.cpp:53
+msgid "does not match reg. expr."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:69
+msgid "is equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:70
+#, fuzzy
+msgid "is not equal to"
+msgstr "Diverso"
+
+#: kcmconfigs/filtercriteriawidget.cpp:71
+msgid "is greater than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:72
+msgid "is greater than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:73
+msgid "is less than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:74
+msgid "is less than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:107
+msgid "Case sensitive"
+msgstr "Case sensitive"
+
+#: kcmconfigs/filtercriteriawidget.cpp:196
+msgid "The Regular Expression Editor could not be initilized."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:211
+msgid "The Regular Expression Editor is not available."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:34
+#, fuzzy
+msgid "Log mails deleted by filter"
+msgstr "Elimina filtro"
+
+#: kcmconfigs/configlog.cpp:36
+msgid "Check to activate the log of mails deleted by filter."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:46 kcmconfigs/configlog.cpp:78
+msgid "Remove log entries at exit"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:52 kcmconfigs/configlog.cpp:84
+msgid "Remove log entries after"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:58 kcmconfigs/configlog.cpp:90
+msgid " Days"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:66
+msgid "Log mails moved by filter"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:68
+msgid "Check to activate the log of mails moved by filter."
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:33
+msgid "Account list"
+msgstr "Lista Account"
+
+#: kcmconfigs/configdisplay.cpp:35
+msgid "Mail list"
+msgstr "Lista email"
+
+#: kcmconfigs/configdisplay.cpp:37
+msgid "Mail content"
+msgstr "Contenuto Email"
+
+#: kcmconfigs/configdisplay.cpp:47
+msgid "To switch on/off the 'Active' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:51
+msgid "To switch on/off the 'Account' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:54 kshowmailview.cpp:55
+msgid "Server"
+msgstr "Server"
+
+#: kcmconfigs/configdisplay.cpp:55
+msgid "To switch on/off the 'Server' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:58 kshowmailview.cpp:56
+msgid "User"
+msgstr "Utente"
+
+#: kcmconfigs/configdisplay.cpp:59
+msgid "To switch on/off the 'User' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:62 kshowmailview.cpp:57
+msgid "Messages"
+msgstr "Messaggi"
+
+#: kcmconfigs/configdisplay.cpp:63
+msgid "To switch on/off the 'Messages' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:66
+#, fuzzy
+msgid "Si&ze"
+msgstr "Dimensione"
+
+#: kcmconfigs/configdisplay.cpp:67
+msgid "To switch on/off the 'Size' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:70 kshowmailview.cpp:69
+msgid "Number"
+msgstr "Numero"
+
+#: kcmconfigs/configdisplay.cpp:71
+msgid "To switch on/off the 'Number' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:75
+msgid "To switch on/off the 'Account' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:79
+msgid "To switch on/off the 'From' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:83
+msgid "To switch on/off the 'To' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:86
+#, fuzzy
+msgid "Su&bject"
+msgstr "Oggetto"
+
+#: kcmconfigs/configdisplay.cpp:87
+msgid "To switch on/off the 'Subject' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:90 kshowmailview.cpp:74 filterlogview.cpp:35
+#: filterlogview.cpp:62
+msgid "Date"
+msgstr "Data"
+
+#: kcmconfigs/configdisplay.cpp:91
+msgid "To switch on/off the 'Date' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:94 kshowmailview.cpp:58 kshowmailview.cpp:75
+msgid "Size"
+msgstr "Dimensione"
+
+#: kcmconfigs/configdisplay.cpp:95
+msgid "To switch on/off the 'Size' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:98 kshowmailview.cpp:76
+msgid "Content"
+msgstr "Contenuti"
+
+#: kcmconfigs/configdisplay.cpp:99
+msgid "To switch on/off the 'Content' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:102 kshowmailview.cpp:77
+msgid "State"
+msgstr "Stato"
+
+#: kcmconfigs/configdisplay.cpp:103
+msgid "To switch on/off the 'State' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:106
+msgid "Allow HTML"
+msgstr "Ammetti HTML"
+
+#: kcmconfigs/configdisplay.cpp:107
+msgid "To switch on/off HTML in the message view"
+msgstr ""
+
+#: kcmconfigs/configaccounts.cpp:34 kcmconfigs/configfilter.cpp:71
+#, fuzzy
+msgid "Name"
+msgstr "Nome:"
+
+#: kcmconfigs/configaccounts.cpp:194
+msgid "Do you really want to remove account %1?"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:33
+#, fuzzy
+msgid "Action if new &mail"
+msgstr "Azione in caso di nuove email"
+
+#: kcmconfigs/configactions.cpp:34
+#, fuzzy
+msgid "Action if &no mail"
+msgstr "Azione in caso di nessuna mail"
+
+#: kcmconfigs/configactions.cpp:45
+msgid "Show message box"
+msgstr "Visualizza il box dei messaggi"
+
+#: kcmconfigs/configactions.cpp:46
+msgid "Show message if new mail arrives"
+msgstr "Visualizza il messaggio se arrivano nuove email"
+
+#: kcmconfigs/configactions.cpp:50
+msgid "Show main window if new mail arrives"
+msgstr "Visualizza la finestra principale se arrivano nuove email"
+
+#: kcmconfigs/configactions.cpp:53
+#, fuzzy
+msgid "&Beep"
+msgstr "Bip"
+
+#: kcmconfigs/configactions.cpp:54
+msgid "Beeps the internal speaker if new mail"
+msgstr "Bip con l'altoparlante interno in caso di nuova posta"
+
+#: kcmconfigs/configactions.cpp:57
+#, fuzzy
+msgid "Sound:"
+msgstr "Suono"
+
+#: kcmconfigs/configactions.cpp:58
+msgid "Plays sound if new mail"
+msgstr "Esegui un suono in caso di nuove email"
+
+#: kcmconfigs/configactions.cpp:61
+msgid "Play the selected sound file"
+msgstr "Esegui il file audio selezionato"
+
+#: kcmconfigs/configactions.cpp:67
+msgid "Press to select sound file"
+msgstr "Clicca per selezionare il file audio"
+
+#: kcmconfigs/configactions.cpp:70
+msgid "Command:"
+msgstr "Comando:"
+
+#: kcmconfigs/configactions.cpp:71
+msgid "Starts external program if new mail"
+msgstr "Avvia un programma esterno se arriva nuova posta"
+
+#: kcmconfigs/configactions.cpp:74
+msgid "Start the selected program"
+msgstr "Avvia il programma selezionato"
+
+#: kcmconfigs/configactions.cpp:80 kcmconfigs/configactions.cpp:213
+msgid "Select external command"
+msgstr "Seleziona comando esterno"
+
+#: kcmconfigs/configactions.cpp:84
+#, fuzzy
+msgid "Minimi&ze"
+msgstr "Minimizza"
+
+#: kcmconfigs/configactions.cpp:85
+msgid "Minimize window if no new mail"
+msgstr "Minimizza se non ci sono email"
+
+#: kcmconfigs/configactions.cpp:87
+msgid "Terminate"
+msgstr "Termina"
+
+#: kcmconfigs/configactions.cpp:88
+msgid "Terminate kshowmail if no new mail"
+msgstr "Termina kshowmail se non ci sono email"
+
+#: kcmconfigs/configactions.cpp:203
+#, fuzzy
+msgid "Sound files (*.wav, *.ogg)"
+msgstr "Files Wave (*.wav)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "All files (*)"
+msgstr "Tutti i files (*)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "Select Sound File"
+msgstr "Seleziona un File Audio"
+
+#: kcmconfigs/configspamcheck.cpp:37
+msgid ""
+"KShowmail uses SpamAssassin to check the mails for spam. You have to "
+"install, configure and start the SpamAssassin daemon, before you can use "
+"this service."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:48
+#, fuzzy
+msgid "Action for Spam"
+msgstr "Azione in caso di nessuna mail"
+
+#: kcmconfigs/configspamcheck.cpp:54
+msgid "Choose the action for spam mails."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:60 kcmconfigs/senderlistdialog.cpp:59
+#: kcmconfigs/filtersetupitem.cpp:255 kcmconfigs/filtersetupdialog.cpp:92
+#: kcmconfigs/configfilter.cpp:130
+msgid "Mark"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:71 kcmconfigs/filtersetupdialog.cpp:104
+#: kcmconfigs/configfilter.cpp:143
+msgid "Choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:190 kcmconfigs/filtersetupdialog.cpp:442
+#: kcmconfigs/configfilter.cpp:603
+#, fuzzy
+msgid "Mailbox Select"
+msgstr "Lista email"
+
+#: kcmconfigs/configspamcheck.cpp:226
+msgid "SpamAssassin is running."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:226 kcmconfigs/configspamcheck.cpp:231
+msgid "Check for SpamAssassin"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:231
+msgid "SpamAssassin is not running."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:27
+msgid "Press to choose the mail directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:32
+msgid ""
+"Please choose the path to the mailboxes.\n"
+"KShowmail supports only MailDir boxes."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:47
+msgid "Please choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:65
+msgid "Choose the mailbox directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:134
+msgid "Inbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:136
+msgid "Outbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:138
+#, fuzzy
+msgid "Drafts"
+msgstr "Data"
+
+#: kcmconfigs/mailboxwizard.cpp:140
+msgid "sent-mail"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:142
+msgid "Trash"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:39
+msgid "List"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:41
+msgid ""
+"A mail whose sender is listed here will pass the filter.\n"
+"A mail will be accepted, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is accepted by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:43
+msgid ""
+"A mail whose sender is listed here will be hold up by the filter.\n"
+"A mail will be stopped, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is filtered by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:53 kcmconfigs/configfilter.cpp:72
+#, fuzzy
+msgid "Action"
+msgstr "&Azioni"
+
+#: kcmconfigs/senderlistdialog.cpp:64
+msgid "The mails will be deleted."
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:65
+msgid "The mails will be marked."
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:253 kcmconfigs/filtersetupdialog.cpp:90
+#: kcmconfigs/configfilter.cpp:128
+#, fuzzy
+msgid "Show"
+msgstr "Kshowmail"
+
+#: kcmconfigs/filtersetupitem.cpp:256
+msgid "Move to %1"
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:258
+#, fuzzy
+msgid "Check for spam"
+msgstr "Azione in caso di nessuna mail"
+
+#: kcmconfigs/filtersetupitem.cpp:259
+msgid "Unknown action"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:37
+msgid "&Timers"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:44
+msgid "Confirm Close"
+msgstr "Conferma la chiusura"
+
+#: kcmconfigs/configgeneral.cpp:45
+#, fuzzy
+msgid "If checked, window close must be confirmed"
+msgstr "Se attivo, l'eliminazione dei messaggi deve essere confermata"
+
+#: kcmconfigs/configgeneral.cpp:48
+msgid "Confirm delete"
+msgstr "Conferma eliminazione"
+
+#: kcmconfigs/configgeneral.cpp:49
+msgid "If checked, message delete must be confirmed"
+msgstr "Se attivo, l'eliminazione dei messaggi deve essere confermata"
+
+#: kcmconfigs/configgeneral.cpp:52
+#, fuzzy
+msgid "Start Minimi&zed"
+msgstr "Avvia minimizzato"
+
+#: kcmconfigs/configgeneral.cpp:53
+msgid "Application is started as icon"
+msgstr "L'applicazione è avviata iconificata"
+
+#: kcmconfigs/configgeneral.cpp:56
+msgid "Close to tray"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:57
+msgid "Close button leaves the application running in tray"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:60
+#, fuzzy
+msgid "Minimize to tray"
+msgstr "Minimizza"
+
+#: kcmconfigs/configgeneral.cpp:61
+msgid "Minimizes to the tray rather than to the taskbar"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:64
+msgid "Show Connection Errors during refresh"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:65
+msgid ""
+"If a connection error occurs during refresh (e.g. unknown server), an error "
+"message will be shown. During other actions, this error always will be shown"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:68
+#, fuzzy
+msgid "&Keep mail as new"
+msgstr "Mantieni email come nuove"
+
+#: kcmconfigs/configgeneral.cpp:69
+msgid "Keep mail as new until termination"
+msgstr "Mantieni email come nuove fino alla chiusura"
+
+#: kcmconfigs/configgeneral.cpp:72
+msgid "Initial Timer:"
+msgstr "Timer Iniziale:"
+
+#: kcmconfigs/configgeneral.cpp:73 kcmconfigs/configgeneral.cpp:91
+msgid "[Seconds]"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:75 kcmconfigs/configgeneral.cpp:76
+msgid "Seconds until first automatic logon (0 = no automatic)"
+msgstr "Secondi prima del primo logon automatico (0 = non automatico)"
+
+#: kcmconfigs/configgeneral.cpp:81
+msgid "Interval Timer:"
+msgstr "Intervallo:"
+
+#: kcmconfigs/configgeneral.cpp:82
+msgid "[Minutes]"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:84 kcmconfigs/configgeneral.cpp:85
+msgid "Minutes between automatic logon (0 = no automatic)"
+msgstr "Minuti tra due logon automatici (0 = non automatico)"
+
+#: kcmconfigs/configgeneral.cpp:90
+#, fuzzy
+msgid "Timeout:"
+msgstr "Ora"
+
+#: kcmconfigs/configgeneral.cpp:93 kcmconfigs/configgeneral.cpp:94
+msgid "Seconds until a server connect will be canceled"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:23
+#, fuzzy
+msgid "New filter"
+msgstr "Aggiungi filtro"
+
+#: kcmconfigs/filtersetupdialog.cpp:25
+msgid "Edit filter"
+msgstr "Modifica filtro"
+
+#: kcmconfigs/filtersetupdialog.cpp:34
+#, fuzzy
+msgid "Name:"
+msgstr "Nome:"
+
+#: kcmconfigs/filtersetupdialog.cpp:40
+#, fuzzy
+msgid "Filter Criterias"
+msgstr "Stato dei filtri"
+
+#: kcmconfigs/filtersetupdialog.cpp:44
+#, fuzzy
+msgid "Filter Action"
+msgstr "Filtro"
+
+#: kcmconfigs/filtersetupdialog.cpp:52
+msgid "Match all of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:53
+msgid "Match any of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+#, fuzzy
+msgid "More"
+msgstr "Ignora"
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+msgid "Add a further criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Fewer"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Remove the last criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:86
+msgid "Choose the action for all mails which are filtered by this filter."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:94 kcmconfigs/configfilter.cpp:132
+msgid "Spamcheck"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:33
+#, fuzzy
+msgid "Activate Filter"
+msgstr "Modifica filtro"
+
+#: kcmconfigs/configfilter.cpp:35
+msgid "Check to activate the header filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:41
+msgid "First Check: Sender Lists"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:45
+msgid "Whitelist"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:46
+msgid ""
+"Click here to edit the list of senders whose mails shall pass the filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:52
+#, fuzzy
+msgid "Blacklist"
+msgstr "&Cancella lista"
+
+#: kcmconfigs/configfilter.cpp:53
+msgid ""
+"Click here to edit the list of senders whose mails shall be deleted or "
+"marked."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:65
+msgid "Second Check: Filters"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:70
+msgid "No."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:86
+msgid "Moves the selected filter at the top"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:87
+#, fuzzy
+msgid "Moves the selected filter up"
+msgstr "Esegui il file audio selezionato"
+
+#: kcmconfigs/configfilter.cpp:88
+#, fuzzy
+msgid "Moves the selected filter down"
+msgstr "Esegui il file audio selezionato"
+
+#: kcmconfigs/configfilter.cpp:89
+msgid "Moves the selected filter at the bottm"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:116
+msgid "Third Check: Action for all others"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:123
+msgid ""
+"Choose the action for all mails which are not filtered by the steps before."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:17 kcmconfigs/kwalletaccess.cpp:86
+#: kwalletaccess.cpp:17 kwalletaccess.cpp:86
+msgid "KWallet is not available."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:25 kcmconfigs/kwalletaccess.cpp:94
+#: kwalletaccess.cpp:25 kwalletaccess.cpp:94
+msgid "Could not get wallet name for network datas from KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:45 kcmconfigs/kwalletaccess.cpp:114
+#: kwalletaccess.cpp:45 kwalletaccess.cpp:114
+msgid "Could not open KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:56 kwalletaccess.cpp:56
+msgid "Could not create folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:65 kcmconfigs/kwalletaccess.cpp:122
+#: kwalletaccess.cpp:65 kwalletaccess.cpp:122
+msgid "Could not open folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:73 kwalletaccess.cpp:73
+msgid "Could not save password in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:132 kwalletaccess.cpp:132
+msgid "Could not get password of account %1 from KWallet."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:182
+msgid "Please enter an account name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:228
+msgid "There is already an account named %1. Please choose another name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:241
+msgid ""
+"You have changed the account name. The account will lose all downloaded mail "
+"headers. Please perform a refresh."
+msgstr ""
+
+#: filterlog.cpp:128
+msgid "Could not save the filter log."
+msgstr ""
+
+#: showrecordelem.cpp:160
+msgid "new"
+msgstr "nuovo"
+
+#: showrecordelem.cpp:162
+msgid "old"
+msgstr "vecchio"
+
+#: filterlogview.cpp:21
+msgid "Filter Log View"
+msgstr ""
+
+#: filterlogview.cpp:31
+#, fuzzy
+msgid "Deleted Mails:"
+msgstr "Elimina filtro"
+
+#: filterlogview.cpp:36 filterlogview.cpp:63
+#, fuzzy
+msgid "Sender"
+msgstr "Mittente:"
+
+#: filterlogview.cpp:49
+msgid "Clear the list of deleted mails"
+msgstr ""
+
+#: filterlogview.cpp:58
+msgid "Moved Mails:"
+msgstr ""
+
+#: filterlogview.cpp:65
+msgid "Moved To"
+msgstr ""
+
+#: filterlogview.cpp:78
+msgid "Clear the list of moved mails"
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid ""
+"Thank You for using KShowmail.\n"
+"Please use the feedback dialog to tell us your experience with this program."
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid "Welcome"
+msgstr ""
+
+#: kshowmail.cpp:102
+msgid "Autorefresh: %1"
+msgstr "Aggiorna automaticamente: %1"
+
+#: kshowmail.cpp:132
+msgid "&Refresh messages"
+msgstr "&Aggiorna messaggi"
+
+#: kshowmail.cpp:133
+msgid "Show &header of highlighted messages"
+msgstr "Visualizza le &intestazioni dei messaggi selezionati"
+
+#: kshowmail.cpp:134
+msgid "Show &complete highlighted messages"
+msgstr "Visualizza &completamente i messaggi selezionati"
+
+#: kshowmail.cpp:135
+msgid "&Delete highlighted messages"
+msgstr "&Elimina i messaggi selezionati"
+
+#: kshowmail.cpp:136
+msgid "S&top current transfer"
+msgstr "&Ferma trasferimento corrente"
+
+#: kshowmail.cpp:137
+msgid "Show Filter Log"
+msgstr ""
+
+#: kshowmail.cpp:138
+msgid "Add sender to whitelist"
+msgstr ""
+
+#: kshowmail.cpp:139
+msgid "Add sender to blacklist"
+msgstr ""
+
+#: kshowmail.cpp:150
+msgid "Send &Feedback Mail"
+msgstr "Invia un &Feedback..."
+
+#: kshowmail.cpp:153
+msgid "Setup &account"
+msgstr "Configura &account"
+
+#: kshowmail.cpp:159 kshowmail.cpp:543 kshowmail.cpp:559 kshowmail.cpp:644
+msgid "Ready."
+msgstr "Pronto."
+
+#: kshowmail.cpp:165
+msgid ""
+"Shows the number of deleted, moved or ignored mails by the filter.\n"
+"The positions denotes:\n"
+"by last refresh / since application start / listed by the log"
+msgstr ""
+
+#: kshowmail.cpp:326
+msgid "Refreshing ..."
+msgstr ""
+
+#: kshowmail.cpp:363
+msgid "Job was stopped"
+msgstr "Il processo è stato fermato"
+
+#: kshowmail.cpp:392
+msgid "%1 message(s) with a total of %2 bytes are waiting"
+msgstr "%1 messaggio/i per un totale di %2 bytes in attesa"
+
+#: kshowmail.cpp:418
+msgid "Do you want to delete these mails?"
+msgstr ""
+
+#: kshowmail.cpp:418
+#, fuzzy
+msgid "Delete?"
+msgstr "Eliminato"
+
+#: kshowmail.cpp:428
+msgid "Deleting Mail(s) ..."
+msgstr ""
+
+#: kshowmail.cpp:469
+msgid "Downloading ..."
+msgstr ""
+
+#: kshowmail.cpp:491
+#, fuzzy
+msgid "Last Refresh: %1"
+msgstr "Aggiorna automaticamente: %1"
+
+#: kshowmail.cpp:523
+msgid ""
+"KShowmail will be closed.\n"
+"Are you sure?"
+msgstr ""
+"KShowmail verrà chiuso.\n"
+"Sei sicuro?"
+
+#: kshowmail.cpp:805
+msgid "Filter: Deleted: %1/%2/%3; Moved: %4/%5/%6; Ignored: %7"
+msgstr ""
+
+#~ msgid "Execute user commands"
+#~ msgstr "L'esecuzione di comandi definiti dall'utente"
+
+#, fuzzy
+#~ msgid "Pass"
+#~ msgstr "Password"
+
+#~ msgid "Condition"
+#~ msgstr "Condizione"
+
+#~ msgid "Contains"
+#~ msgstr "Contiene"
+
+#~ msgid "Doesn't contain"
+#~ msgstr "Non contiene"
+
+#~ msgid "Equals"
+#~ msgstr "Uguale"
+
+#~ msgid "Doesn't equal"
+#~ msgstr "Diverso"
+
+#~ msgid "Greater"
+#~ msgstr "Maggiore di"
+
+#~ msgid "Less"
+#~ msgstr "Minore di"
+
+#~ msgid "No more Conditions"
+#~ msgstr "Nessun'altra condizione"
+
+#~ msgid "And"
+#~ msgstr "E"
+
+#~ msgid "Or"
+#~ msgstr "O"
+
+#~ msgid "Edit regular expression"
+#~ msgstr "Modifica espressione regolare"
+
+#~ msgid "Regular Expression"
+#~ msgstr "Espressione Regolare"
+
+#~ msgid "For help about regular expressions lookup the Qt documentation"
+#~ msgstr "Per aiuto sulle espressioni regolari guarda la documentazione di Qt"
+
+#~ msgid "second Condition"
+#~ msgstr "Seconda condizione"
+
+#~ msgid "Counter"
+#~ msgstr "Contatore"
+
+#~ msgid ""
+#~ "<qt>Filters are counted for each automatic deletion;<br>Filters with high "
+#~ "counters are listed first</qt>"
+#~ msgstr ""
+#~ "<qt>I filtri sono numerati per ogni eliminazione automatica;<br>Filtri "
+#~ "con un numero maggiore sono mostrati per primi</qt>"
+
+#~ msgid "Reset Counter"
+#~ msgstr "Resetta il Contatore"
+
+#~ msgid "Filter Status"
+#~ msgstr "Stato dei filtri"
+
+#~ msgid "Filters are switched off"
+#~ msgstr "I filtri sono disattivati"
+
+#~ msgid "Filters are switched on"
+#~ msgstr "I filtri sono attivi"
+
+#~ msgid "Automatic Delete"
+#~ msgstr "Elimina Automaticamente"
+
+#~ msgid "Filters are switched on and are applied automatically"
+#~ msgstr "I filtri sono attivi e sono applicati automaticamente"
+
+#~ msgid "Add filter"
+#~ msgstr "Aggiungi filtro"
+
+#~ msgid "Copy filter"
+#~ msgstr "Copia filtro"
+
+#~ msgid ""
+#~ "Filter %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Il filtro %1 sarà eliminato.\n"
+#~ "Sei sicuro ?"
+
+#~ msgid ""
+#~ "Automatic filters can cause loss of important mails.\n"
+#~ "Please test your filters.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "I filtri automatici posso causare la perdita di email importanti.\n"
+#~ "Per favore prova i tuoi filtri.\n"
+#~ "Sei sicuro?"
+
+#~ msgid ""
+#~ "Your conditions contain empty match strings.\n"
+#~ "This will not work."
+#~ msgstr ""
+#~ "Le condizioni contengono stringhe vuote.\n"
+#~ "Così non funzionerà."
+
+#~ msgid "Setup &filters"
+#~ msgstr "Configura i &filtri"
+
+#~ msgid ""
+#~ "Command %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Il comando %1 sarà eliminato.\n"
+#~ "Sei sicuro?"
+
+#~ msgid ""
+#~ "Account %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "L'account %1 sarà cancellato.\n"
+#~ "Sei sicuro?"
+
+#~ msgid ""
+#~ "Password will be stored as scrambled text.\n"
+#~ "It might be possible to decipher it.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "La password sarà salvata come testo criptato.\n"
+#~ "Potrebbe essere possibile decifrarlo.\n"
+#~ "Sei sicuro?\n"
+
+#~ msgid "Message"
+#~ msgstr "Messaggio"
+
+#~ msgid "Send reply mail"
+#~ msgstr "Invia l'email di risposta"
+
+#~ msgid "User command"
+#~ msgstr "Comando utente"
+
+#~ msgid "Menu Entry"
+#~ msgstr "Elemento del menu"
+
+#~ msgid "Press button to select command path"
+#~ msgstr "Premi il bottone per selezionare il percorso del comando"
+
+#~ msgid "Test"
+#~ msgstr "Prova"
+
+#~ msgid "Execute the command immediatly"
+#~ msgstr "Esegui il comando immediatamente"
+
+#~ msgid "Wait for command to complete"
+#~ msgstr "Aspetta che il comando abbia finito"
+
+#~ msgid "Enter menu entry name"
+#~ msgstr "Inserisci il nome dell'elemento del menu"
+
+#~ msgid ""
+#~ "<qt>Enter path to selected command and arguments<br>&lt;user&gt;, &lt;"
+#~ "server&gt;, &lt;passwd&gt;, &lt;header&gt; and &lt;body&gt; may be used "
+#~ "as arguments</qt>"
+#~ msgstr ""
+#~ "<qt>Inserisci il percorso per il comando selezionato e i suoi "
+#~ "argomenti<br>&lt;utente&gt;, &lt;server&gt;, &lt;passwd&gt;, &lt;"
+#~ "intestazione&gt;, e &lt;corpo&gt; possono essere utilizzati come "
+#~ "argomenti</qt>"
+
+#~ msgid "Server Options"
+#~ msgstr "Opzioni Server"
+
+#~ msgid "Password:"
+#~ msgstr "Password:"
+
+#~ msgid "The account must have a name"
+#~ msgstr "L'account deve avere un nome"
+
+#~ msgid "This account is already present"
+#~ msgstr "Questo account è già presente"
+
+#~ msgid "Command"
+#~ msgstr "Comando"
+
+#~ msgid "User commands"
+#~ msgstr "Comando utente"
+
+#~ msgid "Add user command"
+#~ msgstr "Aggiungi comando utente"
+
+#~ msgid "Edit user command"
+#~ msgstr "Modifica comando utente"
+
+#~ msgid "Copy user command"
+#~ msgstr "Copia comando utente"
+
+#~ msgid "Delete user command"
+#~ msgstr "Elimina comando utente"
+
+#~ msgid "Accounts"
+#~ msgstr "Accounts"
+
+#~ msgid "Delete account"
+#~ msgstr "Elimina account"
+
+#~ msgid "copy account"
+#~ msgstr "Copia account"
+
+#~ msgid "Add new account"
+#~ msgstr "Aggiungi un nuovo account"
+
+#~ msgid "Save password (not recommended !)"
+#~ msgstr "Salva password (non consigliato!)"
+
+#~ msgid "Pop3 Timer"
+#~ msgstr "Timer Pop3"
+
+#~ msgid "Pop3 timeout"
+#~ msgstr "Pop3 timeout"
+
+#~ msgid "Max Size:"
+#~ msgstr "Dimensione Massima"
+
+#~ msgid "Maximal size of downloaded mail body in kilobytes"
+#~ msgstr "Massima dimensione delle email scaricate in kilobytes"
+
+#~ msgid "Display Options"
+#~ msgstr "Visualizza opzioni"
+
+#, fuzzy
+#~ msgid "E&xternal Program"
+#~ msgstr "Programma Esterno"
+
+#~ msgid "Sound File:"
+#~ msgstr "Fila Audio:"
+
+#~ msgid "Enter sound file"
+#~ msgstr "Inserisci file audio"
+
+#~ msgid "Setup &accounts"
+#~ msgstr "Configura &accounts"
+
+#~ msgid "Setup &commands"
+#~ msgstr "C&onfigura i comandi"
+
+#~ msgid "&Setup"
+#~ msgstr "&Configura"
+
+#~ msgid "Select Command"
+#~ msgstr "Seleziona comando"
+
+#~ msgid "Send complain mails"
+#~ msgstr "L'invio di messaggi di lamentela"
+
+#~ msgid "Clear message list by Ctrl-C"
+#~ msgstr "Cancellazione della lista dei messaggi con Ctrl-C"
+
+#~ msgid "Forced refresh of all messages by Shift-F5"
+#~ msgstr "Aggiornamento forzato con Shift-F5"
+
+#~ msgid "Select account"
+#~ msgstr "Seleziona account"
+
+#, fuzzy
+#~ msgid "KShowMailApp"
+#~ msgstr "Kshowmail"
+
+#, fuzzy
+#~ msgid "KshowmailDoc"
+#~ msgstr "Kshowmail"
+
+#, fuzzy
+#~ msgid "KShowMailDock"
+#~ msgstr "Kshowmail"
+
+#, fuzzy
+#~ msgid "KFeedbackDialog"
+#~ msgstr "Feedback"
+
+#, fuzzy
+#~ msgid "KFeedbackForm"
+#~ msgstr "Feedback"
+
+#, fuzzy
+#~ msgid "ServerDialog"
+#~ msgstr "Server"
+
+#, fuzzy
+#~ msgid "KshowmailView"
+#~ msgstr "Kshowmail"
+
+#, fuzzy
+#~ msgid "CommandDialog"
+#~ msgstr "Comando"
+
+#~ msgid "Refresh &all messages"
+#~ msgstr "Aggiorna &tutti i messaggi"
+
+#~ msgid "&Send complain mail"
+#~ msgstr "&Invia email di lamentele"
+
+#~ msgid "Logging in to server %1 ..."
+#~ msgstr "Connessione al server %1 ..."
+
+#~ msgid "connection to pop3 server %1 established successfully"
+#~ msgstr "connessione al server pop3 %1 stabilita con successo"
+
+#~ msgid "POP3 Timeout"
+#~ msgstr "POP3 Timeout"
+
+#~ msgid "Timeout: job was killed"
+#~ msgstr "Timeout: processo terminato"
+
+#~ msgid "getting UIDLs ..."
+#~ msgstr "ricezione UIDLs ..."
+
+#~ msgid "getting message %1 of %2 ..."
+#~ msgstr "ricezione del messaggio %1 di %2 ..."
+
+#~ msgid "Deleting highlighted messages..."
+#~ msgstr "Eliminazione del messaggio selezionato"
+
+#~ msgid ""
+#~ "Message %1 at %2 will be deleted.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Il messaggio %1 di %2 verrà eliminato.\n"
+#~ "Sei sicuro?\n"
+
+#~ msgid "Yes all"
+#~ msgstr "Si tutti"
+
+#~ msgid "Sending complain mails..."
+#~ msgstr "Invio email di lamentele in corso..."
+
+#~ msgid ""
+#~ "Complain mail will be sent for message %1 at %2.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Una email di lamentele verrà inviata per il messaggio %1 di %2.\n"
+#~ "Sei sicuro?\n"
+
+#~ msgid "Header %1 at %2"
+#~ msgstr "Intestazione %1 di %2"
+
+#~ msgid "Getting complete highlighted messages..."
+#~ msgstr "Ricezione completa dei messaggi selezionati in corso..."
+
+#~ msgid "Message %1 at %2"
+#~ msgstr "Messaggio %1 di %2"
diff --git a/po/kshowmail.pot b/po/kshowmail.pot
new file mode 100644
index 0000000..faac80e
--- /dev/null
+++ b/po/kshowmail.pot
@@ -0,0 +1,1488 @@
+# SOME DESCRIPTIVE TITLE.
+# This file is put in the public domain.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-04-17 21:57+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: _translatorinfo.cpp:1 main.cpp:65 _translatorinfo.cpp:1
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr ""
+
+#: _translatorinfo.cpp:3 main.cpp:65 _translatorinfo.cpp:3
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr ""
+
+#: main.cpp:33
+msgid "A powerful pop3 mail checker"
+msgstr ""
+
+#: main.cpp:40
+msgid "Refresh messages now"
+msgstr ""
+
+#: main.cpp:42
+msgid "Launch configure dialog"
+msgstr ""
+
+#: main.cpp:107
+msgid "Kshowmail is already running!"
+msgstr ""
+
+#. i18n: file AlertDlg.ui line 16
+#: AlertDlg.cpp:262 rc.cpp:15
+#, no-c-format
+msgid "KShowmail"
+msgstr ""
+
+#. i18n: file AlertDlg.ui line 27
+#: AlertDlg.cpp:263 rc.cpp:18 kcmconfigs/filtersetupitem.cpp:257
+#: kcmconfigs/filtersetupdialog.cpp:95 kcmconfigs/configfilter.cpp:133
+#, no-c-format
+msgid "Ignore"
+msgstr ""
+
+#. i18n: file AlertDlg.ui line 35
+#: AlertDlg.cpp:264 rc.cpp:21 kcmconfigs/configactions.cpp:49
+#, no-c-format
+msgid "Show main window"
+msgstr ""
+
+#. i18n: file AlertDlg.ui line 61
+#: AlertDlg.cpp:265 rc.cpp:24
+#, no-c-format
+msgid "New mail"
+msgstr ""
+
+#. i18n: file AlertDlg.ui line 76
+#: AlertDlg.cpp:266 rc.cpp:27
+#, no-c-format
+msgid "has arrived !"
+msgstr ""
+
+#: serverdialog.cpp:44 kcmconfigs/accountsetupdialog.cpp:39
+msgid "Account:"
+msgstr ""
+
+#: serverdialog.cpp:47 serverdialog.cpp:48
+#: kcmconfigs/accountsetupdialog.cpp:42 kcmconfigs/accountsetupdialog.cpp:43
+msgid "Unique Account Name"
+msgstr ""
+
+#: serverdialog.cpp:52 kcmconfigs/accountsetupdialog.cpp:47
+msgid "Server:"
+msgstr ""
+
+#: serverdialog.cpp:55 serverdialog.cpp:56
+#: kcmconfigs/accountsetupdialog.cpp:49 kcmconfigs/accountsetupdialog.cpp:50
+msgid "Server Name"
+msgstr ""
+
+#: serverdialog.cpp:60 kcmconfigs/accountsetupdialog.cpp:54
+msgid "Protocol:"
+msgstr ""
+
+#: serverdialog.cpp:63 serverdialog.cpp:64
+#: kcmconfigs/accountsetupdialog.cpp:57 kcmconfigs/accountsetupdialog.cpp:58
+msgid ""
+"Protocol, which shall be used to get the mails from the server. Currently "
+"KShowmail just supports POP3."
+msgstr ""
+
+#: serverdialog.cpp:68 kcmconfigs/accountsetupdialog.cpp:62
+msgid "Port:"
+msgstr ""
+
+#: serverdialog.cpp:71 serverdialog.cpp:72
+#: kcmconfigs/accountsetupdialog.cpp:65 kcmconfigs/accountsetupdialog.cpp:66
+msgid "Port Number. Normally POP3 uses port 110."
+msgstr ""
+
+#: serverdialog.cpp:76 kcmconfigs/accountsetupdialog.cpp:70
+msgid "User:"
+msgstr ""
+
+#: serverdialog.cpp:78 serverdialog.cpp:79
+#: kcmconfigs/accountsetupdialog.cpp:72 kcmconfigs/accountsetupdialog.cpp:73
+msgid "To authenticate to the mail server you need an user name."
+msgstr ""
+
+#: serverdialog.cpp:84 kcmconfigs/accountsetupdialog.cpp:78
+msgid "Password"
+msgstr ""
+
+#: serverdialog.cpp:95 kcmconfigs/accountsetupdialog.cpp:89
+msgid "Don't save"
+msgstr ""
+
+#: serverdialog.cpp:96 kcmconfigs/accountsetupdialog.cpp:90
+msgid "Save password"
+msgstr ""
+
+#: serverdialog.cpp:97 kcmconfigs/accountsetupdialog.cpp:91
+msgid "Use KWallet"
+msgstr ""
+
+#: serverdialog.cpp:101 kcmconfigs/accountsetupdialog.cpp:95
+msgid ""
+"Don't save password. KShowmail will ask you for it at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:102 kcmconfigs/accountsetupdialog.cpp:96
+msgid ""
+"Save password in the configuration file. Not recommended, because the "
+"password is just lightly encrypted"
+msgstr ""
+
+#: serverdialog.cpp:103 kcmconfigs/accountsetupdialog.cpp:97
+msgid ""
+"Use KWallet to save the password. Maybe you have to type in the KWallet "
+"master password at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:119 kcmconfigs/configdisplay.cpp:46
+#: kcmconfigs/accountsetupdialog.cpp:113 kshowmailview.cpp:53
+msgid "Active"
+msgstr ""
+
+#: serverdialog.cpp:120 kcmconfigs/accountsetupdialog.cpp:114
+msgid "Select it to activate this account."
+msgstr ""
+
+#: serverdialog.cpp:125 kcmconfigs/accountsetupdialog.cpp:119
+msgid "Encryption"
+msgstr ""
+
+#: serverdialog.cpp:135 kshowmailfeedback.cpp:57
+#: kcmconfigs/accountsetupdialog.cpp:129
+msgid "None"
+msgstr ""
+
+#: serverdialog.cpp:136 kcmconfigs/accountsetupdialog.cpp:130
+msgid "SSL"
+msgstr ""
+
+#: serverdialog.cpp:137 kcmconfigs/accountsetupdialog.cpp:131
+msgid "TLS"
+msgstr ""
+
+#: serverdialog.cpp:141 kcmconfigs/accountsetupdialog.cpp:135
+msgid ""
+"The download of the mail header and body will not be encrypted. Use this, if "
+"your provider doesn't make a secure transfer available."
+msgstr ""
+
+#: serverdialog.cpp:142 kcmconfigs/accountsetupdialog.cpp:136
+msgid ""
+"Secure Sockets Layer (SSL), is a cryptographic protocol that provides secure "
+"communications on the Internet."
+msgstr ""
+
+#: serverdialog.cpp:143 kcmconfigs/accountsetupdialog.cpp:137
+msgid ""
+"Transport Layer Security (TLS) is a cryptographic protocol that provides "
+"secure communications on the Internet. It is the successor of SSL."
+msgstr ""
+
+#: serverdialog.cpp:152 kcmconfigs/accountsetupdialog.cpp:145
+msgid "General"
+msgstr ""
+
+#: serverdialog.cpp:153 kcmconfigs/accountsetupdialog.cpp:146
+msgid "Security"
+msgstr ""
+
+#: serverdialog.cpp:157 kcmconfigs/accountsetupdialog.cpp:150
+msgid "New account"
+msgstr ""
+
+#: serverdialog.cpp:159 kcmconfigs/accountsetupdialog.cpp:152
+msgid "Edit account"
+msgstr ""
+
+#: serverdialog.cpp:194 kcmconfigs/accountsetupdialog.cpp:187
+msgid "Please enter an server."
+msgstr ""
+
+#: serverdialog.cpp:200 kcmconfigs/accountsetupdialog.cpp:193
+msgid "Please enter an user name."
+msgstr ""
+
+#: kshowmailfeedback.cpp:31
+msgid "What is your general opinion about this program?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:33
+msgid "It's one of my favourites"
+msgstr ""
+
+#: kshowmailfeedback.cpp:34
+msgid "I like it"
+msgstr ""
+
+#: kshowmailfeedback.cpp:35
+msgid "It's sometimes useful"
+msgstr ""
+
+#: kshowmailfeedback.cpp:36
+msgid "It's average"
+msgstr ""
+
+#: kshowmailfeedback.cpp:37
+msgid "Nice try, but this could be done better"
+msgstr ""
+
+#: kshowmailfeedback.cpp:38
+msgid "It's poor"
+msgstr ""
+
+#: kshowmailfeedback.cpp:39
+msgid "It's useless"
+msgstr ""
+
+#: kshowmailfeedback.cpp:40
+msgid "It's crap"
+msgstr ""
+
+#: kshowmailfeedback.cpp:42
+msgid "Which features of this program do you like?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:45
+msgid "What is your favourite feature?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:48
+msgid "Which features don't you like?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:51
+msgid "Which features do you never use?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:54
+msgid "Are there features you are missing?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:55
+msgid "Yes, a lot! (please add comment below)"
+msgstr ""
+
+#: kshowmailfeedback.cpp:56
+msgid "Some (please add comment below)"
+msgstr ""
+
+#: kshowmailfeedback.cpp:58
+msgid "It has too many features already!"
+msgstr ""
+
+#: kshowmailfeedback.cpp:60
+msgid "How do you rate the stability of this program?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:61
+msgid "Rock solid"
+msgstr ""
+
+#: kshowmailfeedback.cpp:62 kshowmailfeedback.cpp:69
+msgid "Good"
+msgstr ""
+
+#: kshowmailfeedback.cpp:63 kshowmailfeedback.cpp:70 kshowmailfeedback.cpp:77
+#: kshowmailfeedback.cpp:84
+msgid "Average"
+msgstr ""
+
+#: kshowmailfeedback.cpp:64 kshowmailfeedback.cpp:71
+msgid "Poor"
+msgstr ""
+
+#: kshowmailfeedback.cpp:65
+msgid "It keeps crashing all the time"
+msgstr ""
+
+#: kshowmailfeedback.cpp:67
+msgid "How do you rate the performance of this program?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:68
+msgid "Great"
+msgstr ""
+
+#: kshowmailfeedback.cpp:72
+msgid "It's so slow it drives me nuts"
+msgstr ""
+
+#: kshowmailfeedback.cpp:74
+msgid "What is your experience with computers in general?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:75 kshowmailfeedback.cpp:82
+msgid "Expert"
+msgstr ""
+
+#: kshowmailfeedback.cpp:76 kshowmailfeedback.cpp:83
+msgid "Fair"
+msgstr ""
+
+#: kshowmailfeedback.cpp:78 kshowmailfeedback.cpp:85
+msgid "Learning"
+msgstr ""
+
+#: kshowmailfeedback.cpp:79 kshowmailfeedback.cpp:86
+msgid "Newbie"
+msgstr ""
+
+#: kshowmailfeedback.cpp:81
+msgid "What is your experience with Unix/Linux systems?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:88
+msgid "Did you have trouble figuring out how to work with this program?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:90
+msgid "No problem"
+msgstr ""
+
+#: kshowmailfeedback.cpp:91
+msgid "Some"
+msgstr ""
+
+#: kshowmailfeedback.cpp:92
+msgid "I'm still learning"
+msgstr ""
+
+#: kshowmailfeedback.cpp:93
+msgid "I didn't have a clue what to do at first"
+msgstr ""
+
+#: kshowmailfeedback.cpp:94
+msgid "I still don't have a clue what to do"
+msgstr ""
+
+#: kshowmailfeedback.cpp:96
+msgid "Where do you use this program most?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:97
+msgid "At work"
+msgstr ""
+
+#: kshowmailfeedback.cpp:98
+msgid "At home"
+msgstr ""
+
+#: kshowmailfeedback.cpp:99
+msgid "At university / school"
+msgstr ""
+
+#: kshowmailfeedback.cpp:101
+msgid "What is your primary role there?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:102 kshowmailfeedback.cpp:110
+msgid "Home user"
+msgstr ""
+
+#: kshowmailfeedback.cpp:103 kshowmailfeedback.cpp:111
+msgid "Student"
+msgstr ""
+
+#: kshowmailfeedback.cpp:104 kshowmailfeedback.cpp:112
+msgid "Educational (teacher / professor)"
+msgstr ""
+
+#: kshowmailfeedback.cpp:105 kshowmailfeedback.cpp:113
+msgid "Non-computer related work"
+msgstr ""
+
+#: kshowmailfeedback.cpp:106 kshowmailfeedback.cpp:114
+msgid "Developer"
+msgstr ""
+
+#: kshowmailfeedback.cpp:107 kshowmailfeedback.cpp:115
+msgid "System administrator"
+msgstr ""
+
+#: kshowmailfeedback.cpp:109
+msgid "Do you have any other roles there?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:117
+msgid "How did you get to know this program?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:118
+msgid "In a menu on my machine"
+msgstr ""
+
+#: kshowmailfeedback.cpp:119
+msgid "Somebody told me about it"
+msgstr ""
+
+#: kshowmailfeedback.cpp:120
+msgid "On the internet"
+msgstr ""
+
+#: kshowmailfeedback.cpp:121
+msgid "Printed magazine / book"
+msgstr ""
+
+#: kshowmailfeedback.cpp:122
+msgid "Other (please add comment below)"
+msgstr ""
+
+#: kshowmailfeedback.cpp:124
+msgid "Would you recommend this program to a friend?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:132
+msgid "The message list display in general"
+msgstr ""
+
+#: kshowmailfeedback.cpp:133
+msgid "Display of message headers"
+msgstr ""
+
+#: kshowmailfeedback.cpp:134
+msgid "Display of complete messages"
+msgstr ""
+
+#: kshowmailfeedback.cpp:136
+msgid "Filters"
+msgstr ""
+
+#: kshowmailfeedback.cpp:137
+msgid "Manual delete of unwanted messages"
+msgstr ""
+
+#: kshowmailfeedback.cpp:138
+msgid "Automatic move of filtered messages"
+msgstr ""
+
+#: kshowmailfeedback.cpp:139
+msgid "Automatic delete of filtered messages"
+msgstr ""
+
+#: kshowmailfeedback.cpp:140
+msgid "Automatic mark of filtered messages"
+msgstr ""
+
+#: kshowmailfeedback.cpp:141
+msgid "Ignoring of filtered messages"
+msgstr ""
+
+#: kshowmailfeedback.cpp:142
+msgid "Integration of SpamAssassin"
+msgstr ""
+
+#: kshowmailfeedback.cpp:143
+msgid "White- and Blacklist"
+msgstr ""
+
+#: kshowmailfeedback.cpp:144
+msgid "Filter Log"
+msgstr ""
+
+#: kshowmailfeedback.cpp:145
+msgid "Filter messages by regular expressions"
+msgstr ""
+
+#: kshowmailfeedback.cpp:148
+msgid "Sorting of messages by size, date etc."
+msgstr ""
+
+#: kshowmailfeedback.cpp:150
+msgid "Play sound"
+msgstr ""
+
+#: kshowmailfeedback.cpp:151
+msgid "Play beep"
+msgstr ""
+
+#: kshowmailfeedback.cpp:152
+msgid "Initial timer"
+msgstr ""
+
+#: kshowmailfeedback.cpp:153
+msgid "Interval timer"
+msgstr ""
+
+#: kshowmailfeedback.cpp:154
+msgid "This feedback survey :-)"
+msgstr ""
+
+#: configelem.cpp:294
+msgid "Please type in the password for %1"
+msgstr ""
+
+#: configelem.cpp:515
+msgid "Time out on %1. The operation could not be finished on time"
+msgstr ""
+
+#: configelem.cpp:515
+msgid "Time Out"
+msgstr ""
+
+#: configelem.cpp:1647
+msgid ""
+"You want to check your mails for spam, but SpamAssassin is not running.\n"
+"KShowmail skips the spam check."
+msgstr ""
+
+#: configelem.cpp:1647
+msgid "SpamAssassin is not running"
+msgstr ""
+
+#: kfeedback.cpp:35
+msgid "Feedback"
+msgstr ""
+
+#: kfeedback.cpp:39
+msgid "&Mail this..."
+msgstr ""
+
+#: kfeedback.cpp:89
+msgid ""
+"<p><b>Please tell us your opinion about this program.</b></p><p>You will be "
+"able to review everything in your mailer before any mail is sent.<br>Nothing "
+"will be sent behind your back.</p>"
+msgstr ""
+
+#: kfeedback.cpp:114
+msgid "Questions marked with "
+msgstr ""
+
+#: kfeedback.cpp:123
+msgid " must be answered before a mail can be sent."
+msgstr ""
+
+#: kfeedback.cpp:134
+msgid "&Additional comments:"
+msgstr ""
+
+#: kfeedback.cpp:312
+msgid "yes"
+msgstr ""
+
+#: kfeedback.cpp:313
+msgid "no"
+msgstr ""
+
+#: showheaderdialog.cpp:28 showmaildialog.cpp:39
+msgid "Subject:"
+msgstr ""
+
+#. i18n: file kshowmailui.rc line 4
+#: rc.cpp:3
+#, no-c-format
+msgid "&Actions"
+msgstr ""
+
+#: showmaildialog.cpp:15
+msgid "Reply"
+msgstr ""
+
+#: showmaildialog.cpp:30
+msgid "Sender:"
+msgstr ""
+
+#: showmaildialog.cpp:33
+msgid "Date:"
+msgstr ""
+
+#: showmaildialog.cpp:36
+msgid "Size:"
+msgstr ""
+
+#: kshowmaildock.cpp:37
+msgid "KShowmail: a powerful pop3 email checker"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:26 kcmconfigs/configdisplay.cpp:78
+#: kshowmailview.cpp:71
+msgid "From"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:27 kcmconfigs/configdisplay.cpp:82
+#: kshowmailview.cpp:72
+msgid "To"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:28
+msgid "Size (Bytes)"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:29 kshowmailview.cpp:73
+#: filterlogview.cpp:38 filterlogview.cpp:66
+msgid "Subject"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:30
+msgid "Header"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:31 kcmconfigs/configdisplay.cpp:50
+#: kcmconfigs/configdisplay.cpp:74 kshowmailview.cpp:54 kshowmailview.cpp:70
+#: filterlogview.cpp:37 filterlogview.cpp:64
+msgid "Account"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:48
+msgid "contains"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:49
+msgid "does not contain"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:50
+msgid "equals"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:51
+msgid "does not equal"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:52
+msgid "matches regular expression"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:53
+msgid "does not match reg. expr."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:69
+msgid "is equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:70
+msgid "is not equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:71
+msgid "is greater than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:72
+msgid "is greater than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:73
+msgid "is less than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:74
+msgid "is less than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:107
+msgid "Case sensitive"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:196
+msgid "The Regular Expression Editor could not be initilized."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:211
+msgid "The Regular Expression Editor is not available."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:34
+msgid "Log mails deleted by filter"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:36
+msgid "Check to activate the log of mails deleted by filter."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:46 kcmconfigs/configlog.cpp:78
+msgid "Remove log entries at exit"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:52 kcmconfigs/configlog.cpp:84
+msgid "Remove log entries after"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:58 kcmconfigs/configlog.cpp:90
+msgid " Days"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:66
+msgid "Log mails moved by filter"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:68
+msgid "Check to activate the log of mails moved by filter."
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:33
+msgid "Account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:35
+msgid "Mail list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:37
+msgid "Mail content"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:47
+msgid "To switch on/off the 'Active' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:51
+msgid "To switch on/off the 'Account' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:54 kshowmailview.cpp:55
+msgid "Server"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:55
+msgid "To switch on/off the 'Server' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:58 kshowmailview.cpp:56
+msgid "User"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:59
+msgid "To switch on/off the 'User' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:62 kshowmailview.cpp:57
+msgid "Messages"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:63
+msgid "To switch on/off the 'Messages' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:66
+msgid "Si&ze"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:67
+msgid "To switch on/off the 'Size' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:70 kshowmailview.cpp:69
+msgid "Number"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:71
+msgid "To switch on/off the 'Number' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:75
+msgid "To switch on/off the 'Account' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:79
+msgid "To switch on/off the 'From' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:83
+msgid "To switch on/off the 'To' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:86
+msgid "Su&bject"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:87
+msgid "To switch on/off the 'Subject' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:90 kshowmailview.cpp:74 filterlogview.cpp:35
+#: filterlogview.cpp:62
+msgid "Date"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:91
+msgid "To switch on/off the 'Date' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:94 kshowmailview.cpp:58 kshowmailview.cpp:75
+msgid "Size"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:95
+msgid "To switch on/off the 'Size' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:98 kshowmailview.cpp:76
+msgid "Content"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:99
+msgid "To switch on/off the 'Content' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:102 kshowmailview.cpp:77
+msgid "State"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:103
+msgid "To switch on/off the 'State' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:106
+msgid "Allow HTML"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:107
+msgid "To switch on/off HTML in the message view"
+msgstr ""
+
+#: kcmconfigs/configaccounts.cpp:34 kcmconfigs/configfilter.cpp:71
+msgid "Name"
+msgstr ""
+
+#: kcmconfigs/configaccounts.cpp:194
+msgid "Do you really want to remove account %1?"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:33
+msgid "Action if new &mail"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:34
+msgid "Action if &no mail"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:45
+msgid "Show message box"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:46
+msgid "Show message if new mail arrives"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:50
+msgid "Show main window if new mail arrives"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:53
+msgid "&Beep"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:54
+msgid "Beeps the internal speaker if new mail"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:57
+msgid "Sound:"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:58
+msgid "Plays sound if new mail"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:61
+msgid "Play the selected sound file"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:67
+msgid "Press to select sound file"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:70
+msgid "Command:"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:71
+msgid "Starts external program if new mail"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:74
+msgid "Start the selected program"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:80 kcmconfigs/configactions.cpp:213
+msgid "Select external command"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:84
+msgid "Minimi&ze"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:85
+msgid "Minimize window if no new mail"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:87
+msgid "Terminate"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:88
+msgid "Terminate kshowmail if no new mail"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:203
+msgid "Sound files (*.wav, *.ogg)"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:203
+msgid "All files (*)"
+msgstr ""
+
+#: kcmconfigs/configactions.cpp:203
+msgid "Select Sound File"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:37
+msgid ""
+"KShowmail uses SpamAssassin to check the mails for spam. You have to "
+"install, configure and start the SpamAssassin daemon, before you can use "
+"this service."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:48
+msgid "Action for Spam"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:54
+msgid "Choose the action for spam mails."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:60 kcmconfigs/senderlistdialog.cpp:59
+#: kcmconfigs/filtersetupitem.cpp:255 kcmconfigs/filtersetupdialog.cpp:92
+#: kcmconfigs/configfilter.cpp:130
+msgid "Mark"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:71 kcmconfigs/filtersetupdialog.cpp:104
+#: kcmconfigs/configfilter.cpp:143
+msgid "Choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:190 kcmconfigs/filtersetupdialog.cpp:442
+#: kcmconfigs/configfilter.cpp:603
+msgid "Mailbox Select"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:226
+msgid "SpamAssassin is running."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:226 kcmconfigs/configspamcheck.cpp:231
+msgid "Check for SpamAssassin"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:231
+msgid "SpamAssassin is not running."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:27
+msgid "Press to choose the mail directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:32
+msgid ""
+"Please choose the path to the mailboxes.\n"
+"KShowmail supports only MailDir boxes."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:47
+msgid "Please choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:65
+msgid "Choose the mailbox directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:134
+msgid "Inbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:136
+msgid "Outbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:138
+msgid "Drafts"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:140
+msgid "sent-mail"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:142
+msgid "Trash"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:39
+msgid "List"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:41
+msgid ""
+"A mail whose sender is listed here will pass the filter.\n"
+"A mail will be accepted, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is accepted by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:43
+msgid ""
+"A mail whose sender is listed here will be hold up by the filter.\n"
+"A mail will be stopped, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is filtered by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:53 kcmconfigs/configfilter.cpp:72
+msgid "Action"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:64
+msgid "The mails will be deleted."
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:65
+msgid "The mails will be marked."
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:253 kcmconfigs/filtersetupdialog.cpp:90
+#: kcmconfigs/configfilter.cpp:128
+msgid "Show"
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:256
+msgid "Move to %1"
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:258
+msgid "Check for spam"
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:259
+msgid "Unknown action"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:37
+msgid "&Timers"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:44
+msgid "Confirm Close"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:45
+msgid "If checked, window close must be confirmed"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:48
+msgid "Confirm delete"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:49
+msgid "If checked, message delete must be confirmed"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:52
+msgid "Start Minimi&zed"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:53
+msgid "Application is started as icon"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:56
+msgid "Close to tray"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:57
+msgid "Close button leaves the application running in tray"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:60
+msgid "Minimize to tray"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:61
+msgid "Minimizes to the tray rather than to the taskbar"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:64
+msgid "Show Connection Errors during refresh"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:65
+msgid ""
+"If a connection error occurs during refresh (e.g. unknown server), an error "
+"message will be shown. During other actions, this error always will be shown"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:68
+msgid "&Keep mail as new"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:69
+msgid "Keep mail as new until termination"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:72
+msgid "Initial Timer:"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:73 kcmconfigs/configgeneral.cpp:91
+msgid "[Seconds]"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:75 kcmconfigs/configgeneral.cpp:76
+msgid "Seconds until first automatic logon (0 = no automatic)"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:81
+msgid "Interval Timer:"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:82
+msgid "[Minutes]"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:84 kcmconfigs/configgeneral.cpp:85
+msgid "Minutes between automatic logon (0 = no automatic)"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:90
+msgid "Timeout:"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:93 kcmconfigs/configgeneral.cpp:94
+msgid "Seconds until a server connect will be canceled"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:23
+msgid "New filter"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:25
+msgid "Edit filter"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:34
+msgid "Name:"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:40
+msgid "Filter Criterias"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:44
+msgid "Filter Action"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:52
+msgid "Match all of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:53
+msgid "Match any of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+msgid "More"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+msgid "Add a further criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Fewer"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Remove the last criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:86
+msgid "Choose the action for all mails which are filtered by this filter."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:94 kcmconfigs/configfilter.cpp:132
+msgid "Spamcheck"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:33
+msgid "Activate Filter"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:35
+msgid "Check to activate the header filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:41
+msgid "First Check: Sender Lists"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:45
+msgid "Whitelist"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:46
+msgid ""
+"Click here to edit the list of senders whose mails shall pass the filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:52
+msgid "Blacklist"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:53
+msgid ""
+"Click here to edit the list of senders whose mails shall be deleted or "
+"marked."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:65
+msgid "Second Check: Filters"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:70
+msgid "No."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:86
+msgid "Moves the selected filter at the top"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:87
+msgid "Moves the selected filter up"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:88
+msgid "Moves the selected filter down"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:89
+msgid "Moves the selected filter at the bottm"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:116
+msgid "Third Check: Action for all others"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:123
+msgid ""
+"Choose the action for all mails which are not filtered by the steps before."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:17 kcmconfigs/kwalletaccess.cpp:86
+#: kwalletaccess.cpp:17 kwalletaccess.cpp:86
+msgid "KWallet is not available."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:25 kcmconfigs/kwalletaccess.cpp:94
+#: kwalletaccess.cpp:25 kwalletaccess.cpp:94
+msgid "Could not get wallet name for network datas from KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:45 kcmconfigs/kwalletaccess.cpp:114
+#: kwalletaccess.cpp:45 kwalletaccess.cpp:114
+msgid "Could not open KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:56 kwalletaccess.cpp:56
+msgid "Could not create folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:65 kcmconfigs/kwalletaccess.cpp:122
+#: kwalletaccess.cpp:65 kwalletaccess.cpp:122
+msgid "Could not open folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:73 kwalletaccess.cpp:73
+msgid "Could not save password in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:132 kwalletaccess.cpp:132
+msgid "Could not get password of account %1 from KWallet."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:182
+msgid "Please enter an account name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:228
+msgid "There is already an account named %1. Please choose another name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:241
+msgid ""
+"You have changed the account name. The account will lose all downloaded mail "
+"headers. Please perform a refresh."
+msgstr ""
+
+#: filterlog.cpp:128
+msgid "Could not save the filter log."
+msgstr ""
+
+#: showrecordelem.cpp:160
+msgid "new"
+msgstr ""
+
+#: showrecordelem.cpp:162
+msgid "old"
+msgstr ""
+
+#: filterlogview.cpp:21
+msgid "Filter Log View"
+msgstr ""
+
+#: filterlogview.cpp:31
+msgid "Deleted Mails:"
+msgstr ""
+
+#: filterlogview.cpp:36 filterlogview.cpp:63
+msgid "Sender"
+msgstr ""
+
+#: filterlogview.cpp:49
+msgid "Clear the list of deleted mails"
+msgstr ""
+
+#: filterlogview.cpp:58
+msgid "Moved Mails:"
+msgstr ""
+
+#: filterlogview.cpp:65
+msgid "Moved To"
+msgstr ""
+
+#: filterlogview.cpp:78
+msgid "Clear the list of moved mails"
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid ""
+"Thank You for using KShowmail.\n"
+"Please use the feedback dialog to tell us your experience with this program."
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid "Welcome"
+msgstr ""
+
+#: kshowmail.cpp:102
+msgid "Autorefresh: %1"
+msgstr ""
+
+#: kshowmail.cpp:132
+msgid "&Refresh messages"
+msgstr ""
+
+#: kshowmail.cpp:133
+msgid "Show &header of highlighted messages"
+msgstr ""
+
+#: kshowmail.cpp:134
+msgid "Show &complete highlighted messages"
+msgstr ""
+
+#: kshowmail.cpp:135
+msgid "&Delete highlighted messages"
+msgstr ""
+
+#: kshowmail.cpp:136
+msgid "S&top current transfer"
+msgstr ""
+
+#: kshowmail.cpp:137
+msgid "Show Filter Log"
+msgstr ""
+
+#: kshowmail.cpp:138
+msgid "Add sender to whitelist"
+msgstr ""
+
+#: kshowmail.cpp:139
+msgid "Add sender to blacklist"
+msgstr ""
+
+#: kshowmail.cpp:150
+msgid "Send &Feedback Mail"
+msgstr ""
+
+#: kshowmail.cpp:153
+msgid "Setup &account"
+msgstr ""
+
+#: kshowmail.cpp:159 kshowmail.cpp:543 kshowmail.cpp:559 kshowmail.cpp:644
+msgid "Ready."
+msgstr ""
+
+#: kshowmail.cpp:165
+msgid ""
+"Shows the number of deleted, moved or ignored mails by the filter.\n"
+"The positions denotes:\n"
+"by last refresh / since application start / listed by the log"
+msgstr ""
+
+#: kshowmail.cpp:326
+msgid "Refreshing ..."
+msgstr ""
+
+#: kshowmail.cpp:363
+msgid "Job was stopped"
+msgstr ""
+
+#: kshowmail.cpp:392
+msgid "%1 message(s) with a total of %2 bytes are waiting"
+msgstr ""
+
+#: kshowmail.cpp:418
+msgid "Do you want to delete these mails?"
+msgstr ""
+
+#: kshowmail.cpp:418
+msgid "Delete?"
+msgstr ""
+
+#: kshowmail.cpp:428
+msgid "Deleting Mail(s) ..."
+msgstr ""
+
+#: kshowmail.cpp:469
+msgid "Downloading ..."
+msgstr ""
+
+#: kshowmail.cpp:491
+msgid "Last Refresh: %1"
+msgstr ""
+
+#: kshowmail.cpp:523
+msgid ""
+"KShowmail will be closed.\n"
+"Are you sure?"
+msgstr ""
+
+#: kshowmail.cpp:805
+msgid "Filter: Deleted: %1/%2/%3; Moved: %4/%5/%6; Ignored: %7"
+msgstr ""
diff --git a/po/ru.po b/po/ru.po
new file mode 100644
index 0000000..8afbd18
--- /dev/null
+++ b/po/ru.po
@@ -0,0 +1,1915 @@
+# translation of de.po to deutsch
+# KTranslator Generated File
+# Copyright (C) 2003, 2004 Free Software Foundation, Inc.
+# Eggert Ehmke <eggert.ehmke@berlin.de>, 2003, 2004.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: de\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-04-17 21:57+0200\n"
+"PO-Revision-Date: 2004-02-02 22:20+0100\n"
+"Last-Translator: Eggert Ehmke <eggert.ehmke@berlin.de>\n"
+"Language-Team: russian\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Translator: Oleg Ivanov <saruman@unigsm.com>\n"
+"X-Generator: KBabel 1.0.2\n"
+
+#: _translatorinfo.cpp:1 main.cpp:65
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Oleg Ivanov"
+
+#: _translatorinfo.cpp:3 main.cpp:65
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "saruman@unigsm.com"
+
+#: main.cpp:33
+msgid "A powerful pop3 mail checker"
+msgstr "Мощный Pop3 Mail Checker"
+
+#: main.cpp:40
+msgid "Refresh messages now"
+msgstr "Обновить сообщения"
+
+#: main.cpp:42
+msgid "Launch configure dialog"
+msgstr "Диалог настройки"
+
+#: main.cpp:107
+msgid "Kshowmail is already running!"
+msgstr "Kshowmail уже запущен!"
+
+#. i18n: file AlertDlg.ui line 16
+#: AlertDlg.cpp:262 rc.cpp:15
+#, no-c-format
+msgid "KShowmail"
+msgstr "KShowmail"
+
+#. i18n: file AlertDlg.ui line 27
+#: AlertDlg.cpp:263 rc.cpp:18 kcmconfigs/filtersetupitem.cpp:257
+#: kcmconfigs/filtersetupdialog.cpp:95 kcmconfigs/configfilter.cpp:133
+#, no-c-format
+msgid "Ignore"
+msgstr "Игнорировать"
+
+#. i18n: file AlertDlg.ui line 35
+#: AlertDlg.cpp:264 rc.cpp:21 kcmconfigs/configactions.cpp:49
+#, no-c-format
+msgid "Show main window"
+msgstr "Показать главное окно"
+
+#. i18n: file AlertDlg.ui line 61
+#: AlertDlg.cpp:265 rc.cpp:24
+#, no-c-format
+msgid "New mail"
+msgstr "Новая почта"
+
+#
+#. i18n: file AlertDlg.ui line 76
+#: AlertDlg.cpp:266 rc.cpp:27
+#, no-c-format
+msgid "has arrived !"
+msgstr "поступила!"
+
+#: serverdialog.cpp:44 kcmconfigs/accountsetupdialog.cpp:39
+msgid "Account:"
+msgstr "Ящик:"
+
+#: serverdialog.cpp:47 serverdialog.cpp:48
+#: kcmconfigs/accountsetupdialog.cpp:42 kcmconfigs/accountsetupdialog.cpp:43
+msgid "Unique Account Name"
+msgstr ""
+
+#: serverdialog.cpp:52 kcmconfigs/accountsetupdialog.cpp:47
+msgid "Server:"
+msgstr "Сервер:"
+
+#: serverdialog.cpp:55 serverdialog.cpp:56
+#: kcmconfigs/accountsetupdialog.cpp:49 kcmconfigs/accountsetupdialog.cpp:50
+#, fuzzy
+msgid "Server Name"
+msgstr "Сервер"
+
+#: serverdialog.cpp:60 kcmconfigs/accountsetupdialog.cpp:54
+msgid "Protocol:"
+msgstr "Протокол:"
+
+#: serverdialog.cpp:63 serverdialog.cpp:64
+#: kcmconfigs/accountsetupdialog.cpp:57 kcmconfigs/accountsetupdialog.cpp:58
+msgid ""
+"Protocol, which shall be used to get the mails from the server. Currently "
+"KShowmail just supports POP3."
+msgstr ""
+
+#: serverdialog.cpp:68 kcmconfigs/accountsetupdialog.cpp:62
+msgid "Port:"
+msgstr "Порт:"
+
+#: serverdialog.cpp:71 serverdialog.cpp:72
+#: kcmconfigs/accountsetupdialog.cpp:65 kcmconfigs/accountsetupdialog.cpp:66
+msgid "Port Number. Normally POP3 uses port 110."
+msgstr ""
+
+#: serverdialog.cpp:76 kcmconfigs/accountsetupdialog.cpp:70
+msgid "User:"
+msgstr "Имя:"
+
+#: serverdialog.cpp:78 serverdialog.cpp:79
+#: kcmconfigs/accountsetupdialog.cpp:72 kcmconfigs/accountsetupdialog.cpp:73
+msgid "To authenticate to the mail server you need an user name."
+msgstr ""
+
+#: serverdialog.cpp:84 kcmconfigs/accountsetupdialog.cpp:78
+msgid "Password"
+msgstr "Пароль"
+
+#: serverdialog.cpp:95 kcmconfigs/accountsetupdialog.cpp:89
+#, fuzzy
+msgid "Don't save"
+msgstr "Не равно"
+
+#: serverdialog.cpp:96 kcmconfigs/accountsetupdialog.cpp:90
+#, fuzzy
+msgid "Save password"
+msgstr "Сохранять пароль"
+
+#: serverdialog.cpp:97 kcmconfigs/accountsetupdialog.cpp:91
+msgid "Use KWallet"
+msgstr ""
+
+#: serverdialog.cpp:101 kcmconfigs/accountsetupdialog.cpp:95
+msgid ""
+"Don't save password. KShowmail will ask you for it at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:102 kcmconfigs/accountsetupdialog.cpp:96
+msgid ""
+"Save password in the configuration file. Not recommended, because the "
+"password is just lightly encrypted"
+msgstr ""
+
+#: serverdialog.cpp:103 kcmconfigs/accountsetupdialog.cpp:97
+msgid ""
+"Use KWallet to save the password. Maybe you have to type in the KWallet "
+"master password at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:119 kcmconfigs/configdisplay.cpp:46
+#: kcmconfigs/accountsetupdialog.cpp:113 kshowmailview.cpp:53
+msgid "Active"
+msgstr "Активный"
+
+#: serverdialog.cpp:120 kcmconfigs/accountsetupdialog.cpp:114
+#, fuzzy
+msgid "Select it to activate this account."
+msgstr "Выберите pop3-ящик"
+
+#: serverdialog.cpp:125 kcmconfigs/accountsetupdialog.cpp:119
+msgid "Encryption"
+msgstr ""
+
+#: serverdialog.cpp:135 kshowmailfeedback.cpp:57
+#: kcmconfigs/accountsetupdialog.cpp:129
+msgid "None"
+msgstr "Нет"
+
+#: serverdialog.cpp:136 kcmconfigs/accountsetupdialog.cpp:130
+msgid "SSL"
+msgstr ""
+
+#: serverdialog.cpp:137 kcmconfigs/accountsetupdialog.cpp:131
+msgid "TLS"
+msgstr ""
+
+#: serverdialog.cpp:141 kcmconfigs/accountsetupdialog.cpp:135
+msgid ""
+"The download of the mail header and body will not be encrypted. Use this, if "
+"your provider doesn't make a secure transfer available."
+msgstr ""
+
+#: serverdialog.cpp:142 kcmconfigs/accountsetupdialog.cpp:136
+msgid ""
+"Secure Sockets Layer (SSL), is a cryptographic protocol that provides secure "
+"communications on the Internet."
+msgstr ""
+
+#: serverdialog.cpp:143 kcmconfigs/accountsetupdialog.cpp:137
+msgid ""
+"Transport Layer Security (TLS) is a cryptographic protocol that provides "
+"secure communications on the Internet. It is the successor of SSL."
+msgstr ""
+
+#
+#: serverdialog.cpp:152 kcmconfigs/accountsetupdialog.cpp:145
+#, fuzzy
+msgid "General"
+msgstr "Absender"
+
+#: serverdialog.cpp:153 kcmconfigs/accountsetupdialog.cpp:146
+msgid "Security"
+msgstr ""
+
+#: serverdialog.cpp:157 kcmconfigs/accountsetupdialog.cpp:150
+msgid "New account"
+msgstr "Новый ящик"
+
+#: serverdialog.cpp:159 kcmconfigs/accountsetupdialog.cpp:152
+msgid "Edit account"
+msgstr "Редактировать ящик"
+
+#: serverdialog.cpp:194 kcmconfigs/accountsetupdialog.cpp:187
+msgid "Please enter an server."
+msgstr ""
+
+#: serverdialog.cpp:200 kcmconfigs/accountsetupdialog.cpp:193
+msgid "Please enter an user name."
+msgstr ""
+
+#: kshowmailfeedback.cpp:31
+msgid "What is your general opinion about this program?"
+msgstr "Каково Ваше общее мнение о программе?"
+
+#: kshowmailfeedback.cpp:33
+msgid "It's one of my favourites"
+msgstr "Одна из моих любимых"
+
+#: kshowmailfeedback.cpp:34
+msgid "I like it"
+msgstr "Она мне нравится"
+
+#: kshowmailfeedback.cpp:35
+msgid "It's sometimes useful"
+msgstr "Достаточно полезная"
+
+#: kshowmailfeedback.cpp:36
+msgid "It's average"
+msgstr "Средняя"
+
+#: kshowmailfeedback.cpp:37
+msgid "Nice try, but this could be done better"
+msgstr "Неплоха, но можно было сделать лучше"
+
+#: kshowmailfeedback.cpp:38
+msgid "It's poor"
+msgstr "Неудачная"
+
+#: kshowmailfeedback.cpp:39
+msgid "It's useless"
+msgstr "Бесполезная"
+
+#: kshowmailfeedback.cpp:40
+msgid "It's crap"
+msgstr "Просто мусор"
+
+#: kshowmailfeedback.cpp:42
+msgid "Which features of this program do you like?"
+msgstr "Какие особенности (функции) программы Вам нравятся?"
+
+#: kshowmailfeedback.cpp:45
+msgid "What is your favourite feature?"
+msgstr "Ваша любимая особенность (функция)?"
+
+#: kshowmailfeedback.cpp:48
+msgid "Which features don't you like?"
+msgstr "Что Вам не нравится в программе?"
+
+#: kshowmailfeedback.cpp:51
+msgid "Which features do you never use?"
+msgstr "Какую функцию программы Вы никогда не используете?"
+
+#: kshowmailfeedback.cpp:54
+msgid "Are there features you are missing?"
+msgstr "Есть ли что-то, чего Вам недостает в программе?"
+
+#: kshowmailfeedback.cpp:55
+msgid "Yes, a lot! (please add comment below)"
+msgstr "Да, многого! (Пожалуйста, прокомментируйте ниже)"
+
+#: kshowmailfeedback.cpp:56
+msgid "Some (please add comment below)"
+msgstr "Немного (пожалуйста, прокомментируйте ниже)"
+
+#: kshowmailfeedback.cpp:58
+msgid "It has too many features already!"
+msgstr "В ней и так слишком много функций!"
+
+#: kshowmailfeedback.cpp:60
+msgid "How do you rate the stability of this program?"
+msgstr "Как Вы оцениваете надежность программы?"
+
+#: kshowmailfeedback.cpp:61
+msgid "Rock solid"
+msgstr "Абсолютно надежна"
+
+#: kshowmailfeedback.cpp:62 kshowmailfeedback.cpp:69
+msgid "Good"
+msgstr "Хорошая"
+
+#: kshowmailfeedback.cpp:63 kshowmailfeedback.cpp:70 kshowmailfeedback.cpp:77
+#: kshowmailfeedback.cpp:84
+msgid "Average"
+msgstr "Средняя"
+
+#: kshowmailfeedback.cpp:64 kshowmailfeedback.cpp:71
+msgid "Poor"
+msgstr "Плохая"
+
+#: kshowmailfeedback.cpp:65
+msgid "It keeps crashing all the time"
+msgstr "Постоянно рушится"
+
+#: kshowmailfeedback.cpp:67
+msgid "How do you rate the performance of this program?"
+msgstr "Как Вы оцениваете производительность программы?"
+
+#: kshowmailfeedback.cpp:68
+msgid "Great"
+msgstr "Отличная"
+
+#: kshowmailfeedback.cpp:72
+msgid "It's so slow it drives me nuts"
+msgstr "Такая медленная, что это меня убивает"
+
+#: kshowmailfeedback.cpp:74
+msgid "What is your experience with computers in general?"
+msgstr "Каков Ваш общий опыт в работе с компьютерами?"
+
+#: kshowmailfeedback.cpp:75 kshowmailfeedback.cpp:82
+msgid "Expert"
+msgstr "Эксперт"
+
+#: kshowmailfeedback.cpp:76 kshowmailfeedback.cpp:83
+msgid "Fair"
+msgstr "Хороший"
+
+#: kshowmailfeedback.cpp:78 kshowmailfeedback.cpp:85
+msgid "Learning"
+msgstr "Учусь"
+
+#: kshowmailfeedback.cpp:79 kshowmailfeedback.cpp:86
+msgid "Newbie"
+msgstr "Новичок"
+
+#: kshowmailfeedback.cpp:81
+msgid "What is your experience with Unix/Linux systems?"
+msgstr "Каков Ваш опыт в работе с Unix/Linux системами?"
+
+#: kshowmailfeedback.cpp:88
+msgid "Did you have trouble figuring out how to work with this program?"
+msgstr "Вызвало ли у Вас трудности освоение программы?"
+
+#: kshowmailfeedback.cpp:90
+msgid "No problem"
+msgstr "Никаких проблем"
+
+#: kshowmailfeedback.cpp:91
+msgid "Some"
+msgstr "Некоторые"
+
+#: kshowmailfeedback.cpp:92
+msgid "I'm still learning"
+msgstr "Я все еще разбираюсь"
+
+#: kshowmailfeedback.cpp:93
+msgid "I didn't have a clue what to do at first"
+msgstr "Сначала я совершенно ничего не понимал"
+
+#: kshowmailfeedback.cpp:94
+msgid "I still don't have a clue what to do"
+msgstr "Я до сих пор ничего не понимаю"
+
+#: kshowmailfeedback.cpp:96
+msgid "Where do you use this program most?"
+msgstr "Где Вы в основном используете программу?"
+
+#: kshowmailfeedback.cpp:97
+msgid "At work"
+msgstr "На работе"
+
+#: kshowmailfeedback.cpp:98
+msgid "At home"
+msgstr "Дома"
+
+#: kshowmailfeedback.cpp:99
+msgid "At university / school"
+msgstr "В университете / школе"
+
+#: kshowmailfeedback.cpp:101
+msgid "What is your primary role there?"
+msgstr "Какова Ваша роль там?"
+
+#: kshowmailfeedback.cpp:102 kshowmailfeedback.cpp:110
+msgid "Home user"
+msgstr "Домашний пользователь"
+
+#: kshowmailfeedback.cpp:103 kshowmailfeedback.cpp:111
+msgid "Student"
+msgstr "Студент"
+
+#: kshowmailfeedback.cpp:104 kshowmailfeedback.cpp:112
+msgid "Educational (teacher / professor)"
+msgstr "Образование (учитель / профессор)"
+
+#: kshowmailfeedback.cpp:105 kshowmailfeedback.cpp:113
+msgid "Non-computer related work"
+msgstr "Не связанная с компьютерами работа"
+
+#: kshowmailfeedback.cpp:106 kshowmailfeedback.cpp:114
+msgid "Developer"
+msgstr "Разработчик"
+
+#: kshowmailfeedback.cpp:107 kshowmailfeedback.cpp:115
+msgid "System administrator"
+msgstr "Системный администратор"
+
+#: kshowmailfeedback.cpp:109
+msgid "Do you have any other roles there?"
+msgstr "Есть ли у Вас там другие обязанности?"
+
+#: kshowmailfeedback.cpp:117
+msgid "How did you get to know this program?"
+msgstr "Откуда Вы узнали об этой программе?"
+
+#: kshowmailfeedback.cpp:118
+msgid "In a menu on my machine"
+msgstr "Из меню на моем компьютере"
+
+#: kshowmailfeedback.cpp:119
+msgid "Somebody told me about it"
+msgstr "Кто-то сказал мне о ней"
+
+#: kshowmailfeedback.cpp:120
+msgid "On the internet"
+msgstr "Из интернета"
+
+#: kshowmailfeedback.cpp:121
+msgid "Printed magazine / book"
+msgstr "Из печатного журнала / книги"
+
+#: kshowmailfeedback.cpp:122
+msgid "Other (please add comment below)"
+msgstr "Другое (пожалуйста, прокомментируйте ниже)"
+
+#: kshowmailfeedback.cpp:124
+msgid "Would you recommend this program to a friend?"
+msgstr "Стали бы Вы рекомендовать эту программу другу?"
+
+#: kshowmailfeedback.cpp:132
+msgid "The message list display in general"
+msgstr "Отображение списка сообщений в общем"
+
+#: kshowmailfeedback.cpp:133
+msgid "Display of message headers"
+msgstr "Отображение заголовков сообщения"
+
+#
+#: kshowmailfeedback.cpp:134
+msgid "Display of complete messages"
+msgstr "Отображение всего сообщения"
+
+#: kshowmailfeedback.cpp:136
+msgid "Filters"
+msgstr "Фильтры"
+
+#: kshowmailfeedback.cpp:137
+msgid "Manual delete of unwanted messages"
+msgstr "Ручное удаление нежелательных сообщений"
+
+#: kshowmailfeedback.cpp:138
+#, fuzzy
+msgid "Automatic move of filtered messages"
+msgstr "Автоматическое удаление отфильтрованных сообщений"
+
+#: kshowmailfeedback.cpp:139
+msgid "Automatic delete of filtered messages"
+msgstr "Автоматическое удаление отфильтрованных сообщений"
+
+#: kshowmailfeedback.cpp:140
+#, fuzzy
+msgid "Automatic mark of filtered messages"
+msgstr "Автоматическое удаление отфильтрованных сообщений"
+
+#: kshowmailfeedback.cpp:141
+#, fuzzy
+msgid "Ignoring of filtered messages"
+msgstr "Ручное удаление отфильтрованных сообщений"
+
+#: kshowmailfeedback.cpp:142
+msgid "Integration of SpamAssassin"
+msgstr ""
+
+#: kshowmailfeedback.cpp:143
+#, fuzzy
+msgid "White- and Blacklist"
+msgstr "О&чистить список"
+
+#: kshowmailfeedback.cpp:144
+#, fuzzy
+msgid "Filter Log"
+msgstr "Фильтр"
+
+#: kshowmailfeedback.cpp:145
+msgid "Filter messages by regular expressions"
+msgstr "Фильтрация сообщений с помощью регулярных выражений"
+
+#: kshowmailfeedback.cpp:148
+msgid "Sorting of messages by size, date etc."
+msgstr "Сортировка сообщений по размеру, дате и т.п."
+
+#: kshowmailfeedback.cpp:150
+msgid "Play sound"
+msgstr "Проигрывание звука"
+
+#: kshowmailfeedback.cpp:151
+msgid "Play beep"
+msgstr "Проигрывание сигнала"
+
+#: kshowmailfeedback.cpp:152
+msgid "Initial timer"
+msgstr "Начальная задержка"
+
+#: kshowmailfeedback.cpp:153
+msgid "Interval timer"
+msgstr "Задержка между обновлениями"
+
+#: kshowmailfeedback.cpp:154
+msgid "This feedback survey :-)"
+msgstr "Этот опрос в обратной связи :-)"
+
+#: configelem.cpp:294
+msgid "Please type in the password for %1"
+msgstr ""
+
+#: configelem.cpp:515
+msgid "Time out on %1. The operation could not be finished on time"
+msgstr ""
+
+#: configelem.cpp:515
+#, fuzzy
+msgid "Time Out"
+msgstr "Время"
+
+#: configelem.cpp:1647
+msgid ""
+"You want to check your mails for spam, but SpamAssassin is not running.\n"
+"KShowmail skips the spam check."
+msgstr ""
+
+#: configelem.cpp:1647
+msgid "SpamAssassin is not running"
+msgstr ""
+
+#: kfeedback.cpp:35
+msgid "Feedback"
+msgstr "Обратная связь"
+
+#: kfeedback.cpp:39
+msgid "&Mail this..."
+msgstr "&Отправить email..."
+
+#: kfeedback.cpp:89
+msgid ""
+"<p><b>Please tell us your opinion about this program.</b></p><p>You will be "
+"able to review everything in your mailer before any mail is sent.<br>Nothing "
+"will be sent behind your back.</p>"
+msgstr ""
+"<p><b>Пожалуйста, сообщите нам Ваше мнение о программе.</b></p><p>Вы сможете "
+"просмотреть весь текст в Вашем почтовом клиенте перед отправкой.<br>Никакая "
+"информация не будет отправлена тайно от Вас.</p>"
+
+#: kfeedback.cpp:114
+msgid "Questions marked with "
+msgstr "Пункты, помеченные "
+
+#: kfeedback.cpp:123
+msgid " must be answered before a mail can be sent."
+msgstr ", должны быть заполнены перед отправкой почты."
+
+#: kfeedback.cpp:134
+msgid "&Additional comments:"
+msgstr "&Дополнительные комментарии:"
+
+#: kfeedback.cpp:312
+msgid "yes"
+msgstr "да"
+
+#: kfeedback.cpp:313
+msgid "no"
+msgstr "нет"
+
+#: showheaderdialog.cpp:28 showmaildialog.cpp:39
+msgid "Subject:"
+msgstr "Тема:"
+
+#. i18n: file kshowmailui.rc line 4
+#: rc.cpp:3
+#, no-c-format
+msgid "&Actions"
+msgstr "&Действия"
+
+#: showmaildialog.cpp:15
+msgid "Reply"
+msgstr "Ответить"
+
+#: showmaildialog.cpp:30
+msgid "Sender:"
+msgstr "Отправитель:"
+
+#: showmaildialog.cpp:33
+msgid "Date:"
+msgstr "Дата:"
+
+#: showmaildialog.cpp:36
+msgid "Size:"
+msgstr "Размер:"
+
+#: kshowmaildock.cpp:37
+#, fuzzy
+msgid "KShowmail: a powerful pop3 email checker"
+msgstr "Мощный Pop3 Mail Checker"
+
+#: kcmconfigs/filtercriteriawidget.cpp:26 kcmconfigs/configdisplay.cpp:78
+#: kshowmailview.cpp:71
+msgid "From"
+msgstr "От"
+
+#: kcmconfigs/filtercriteriawidget.cpp:27 kcmconfigs/configdisplay.cpp:82
+#: kshowmailview.cpp:72
+msgid "To"
+msgstr "Для"
+
+#: kcmconfigs/filtercriteriawidget.cpp:28
+msgid "Size (Bytes)"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:29 kshowmailview.cpp:73
+#: filterlogview.cpp:38 filterlogview.cpp:66
+#, fuzzy
+msgid "Subject"
+msgstr "Те&ма"
+
+#
+#: kcmconfigs/filtercriteriawidget.cpp:30
+msgid "Header"
+msgstr "Заголовок"
+
+#: kcmconfigs/filtercriteriawidget.cpp:31 kcmconfigs/configdisplay.cpp:50
+#: kcmconfigs/configdisplay.cpp:74 kshowmailview.cpp:54 kshowmailview.cpp:70
+#: filterlogview.cpp:37 filterlogview.cpp:64
+msgid "Account"
+msgstr "Ящик"
+
+#: kcmconfigs/filtercriteriawidget.cpp:48
+#, fuzzy
+msgid "contains"
+msgstr "Содержит"
+
+#: kcmconfigs/filtercriteriawidget.cpp:49
+#, fuzzy
+msgid "does not contain"
+msgstr "Не содержит"
+
+#: kcmconfigs/filtercriteriawidget.cpp:50
+#, fuzzy
+msgid "equals"
+msgstr "Равно"
+
+#: kcmconfigs/filtercriteriawidget.cpp:51
+#, fuzzy
+msgid "does not equal"
+msgstr "Не равно"
+
+#: kcmconfigs/filtercriteriawidget.cpp:52
+#, fuzzy
+msgid "matches regular expression"
+msgstr "Редактировать регулярное выражение"
+
+#: kcmconfigs/filtercriteriawidget.cpp:53
+msgid "does not match reg. expr."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:69
+msgid "is equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:70
+#, fuzzy
+msgid "is not equal to"
+msgstr "Не равно"
+
+#: kcmconfigs/filtercriteriawidget.cpp:71
+msgid "is greater than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:72
+msgid "is greater than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:73
+msgid "is less than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:74
+msgid "is less than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:107
+msgid "Case sensitive"
+msgstr "С учетом регистра"
+
+#: kcmconfigs/filtercriteriawidget.cpp:196
+msgid "The Regular Expression Editor could not be initilized."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:211
+msgid "The Regular Expression Editor is not available."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:34
+#, fuzzy
+msgid "Log mails deleted by filter"
+msgstr "Удалить фильтр"
+
+#: kcmconfigs/configlog.cpp:36
+msgid "Check to activate the log of mails deleted by filter."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:46 kcmconfigs/configlog.cpp:78
+msgid "Remove log entries at exit"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:52 kcmconfigs/configlog.cpp:84
+msgid "Remove log entries after"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:58 kcmconfigs/configlog.cpp:90
+msgid " Days"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:66
+msgid "Log mails moved by filter"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:68
+msgid "Check to activate the log of mails moved by filter."
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:33
+msgid "Account list"
+msgstr "Список ящиков"
+
+#: kcmconfigs/configdisplay.cpp:35
+msgid "Mail list"
+msgstr "Список писем"
+
+#: kcmconfigs/configdisplay.cpp:37
+msgid "Mail content"
+msgstr "Тело сообщения"
+
+#: kcmconfigs/configdisplay.cpp:47
+msgid "To switch on/off the 'Active' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:51
+msgid "To switch on/off the 'Account' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:54 kshowmailview.cpp:55
+msgid "Server"
+msgstr "Сервер"
+
+#: kcmconfigs/configdisplay.cpp:55
+msgid "To switch on/off the 'Server' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:58 kshowmailview.cpp:56
+msgid "User"
+msgstr "Пользователь"
+
+#: kcmconfigs/configdisplay.cpp:59
+msgid "To switch on/off the 'User' column in the account list"
+msgstr ""
+
+#
+#: kcmconfigs/configdisplay.cpp:62 kshowmailview.cpp:57
+msgid "Messages"
+msgstr "Писем"
+
+#: kcmconfigs/configdisplay.cpp:63
+msgid "To switch on/off the 'Messages' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:66
+msgid "Si&ze"
+msgstr "Ра&змер"
+
+#: kcmconfigs/configdisplay.cpp:67
+msgid "To switch on/off the 'Size' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:70 kshowmailview.cpp:69
+msgid "Number"
+msgstr "Номер"
+
+#: kcmconfigs/configdisplay.cpp:71
+msgid "To switch on/off the 'Number' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:75
+msgid "To switch on/off the 'Account' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:79
+msgid "To switch on/off the 'From' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:83
+msgid "To switch on/off the 'To' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:86
+msgid "Su&bject"
+msgstr "Те&ма"
+
+#: kcmconfigs/configdisplay.cpp:87
+msgid "To switch on/off the 'Subject' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:90 kshowmailview.cpp:74 filterlogview.cpp:35
+#: filterlogview.cpp:62
+msgid "Date"
+msgstr "Дата"
+
+#: kcmconfigs/configdisplay.cpp:91
+msgid "To switch on/off the 'Date' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:94 kshowmailview.cpp:58 kshowmailview.cpp:75
+#, fuzzy
+msgid "Size"
+msgstr "Ра&змер"
+
+#: kcmconfigs/configdisplay.cpp:95
+msgid "To switch on/off the 'Size' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:98 kshowmailview.cpp:76
+msgid "Content"
+msgstr "Содержимое"
+
+#: kcmconfigs/configdisplay.cpp:99
+msgid "To switch on/off the 'Content' column in the message list"
+msgstr ""
+
+#
+#: kcmconfigs/configdisplay.cpp:102 kshowmailview.cpp:77
+msgid "State"
+msgstr "Статус"
+
+#: kcmconfigs/configdisplay.cpp:103
+msgid "To switch on/off the 'State' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:106
+msgid "Allow HTML"
+msgstr "Разрешить HTML"
+
+#: kcmconfigs/configdisplay.cpp:107
+msgid "To switch on/off HTML in the message view"
+msgstr ""
+
+#: kcmconfigs/configaccounts.cpp:34 kcmconfigs/configfilter.cpp:71
+#, fuzzy
+msgid "Name"
+msgstr "Имя:"
+
+#: kcmconfigs/configaccounts.cpp:194
+msgid "Do you really want to remove account %1?"
+msgstr ""
+
+#
+#
+#: kcmconfigs/configactions.cpp:33
+msgid "Action if new &mail"
+msgstr "Если есть &почта"
+
+#
+#: kcmconfigs/configactions.cpp:34
+msgid "Action if &no mail"
+msgstr "Если &нет почты"
+
+#
+#: kcmconfigs/configactions.cpp:45
+msgid "Show message box"
+msgstr "Показать окно с уведомлением"
+
+#: kcmconfigs/configactions.cpp:46
+msgid "Show message if new mail arrives"
+msgstr "Показывает окно с уведомлением о приходе новой почты"
+
+#
+#: kcmconfigs/configactions.cpp:50
+msgid "Show main window if new mail arrives"
+msgstr "Показать главное окно, если есть новая почта"
+
+#: kcmconfigs/configactions.cpp:53
+msgid "&Beep"
+msgstr "&Сигнал"
+
+#: kcmconfigs/configactions.cpp:54
+msgid "Beeps the internal speaker if new mail"
+msgstr "Издает сигнал внутреннего динамика если есть новая почта"
+
+#: kcmconfigs/configactions.cpp:57
+#, fuzzy
+msgid "Sound:"
+msgstr "Звук"
+
+#: kcmconfigs/configactions.cpp:58
+msgid "Plays sound if new mail"
+msgstr "Проигрывает звук, если есть новая почта"
+
+#
+#: kcmconfigs/configactions.cpp:61
+msgid "Play the selected sound file"
+msgstr "Играть выбрать звуковой файл"
+
+#: kcmconfigs/configactions.cpp:67
+msgid "Press to select sound file"
+msgstr "Нажмите, чтобы выбрать звуковой файл"
+
+#: kcmconfigs/configactions.cpp:70
+msgid "Command:"
+msgstr "Команда:"
+
+#
+#: kcmconfigs/configactions.cpp:71
+msgid "Starts external program if new mail"
+msgstr "Запускает внешнюю программу, если есть новая почта"
+
+#: kcmconfigs/configactions.cpp:74
+msgid "Start the selected program"
+msgstr "Запустить выбранную программу"
+
+#: kcmconfigs/configactions.cpp:80 kcmconfigs/configactions.cpp:213
+msgid "Select external command"
+msgstr "Выбрать внешнюю команду"
+
+#: kcmconfigs/configactions.cpp:84
+msgid "Minimi&ze"
+msgstr "Миними&зировать"
+
+#: kcmconfigs/configactions.cpp:85
+msgid "Minimize window if no new mail"
+msgstr "Минимизировать окно, если нет новой почты"
+
+#: kcmconfigs/configactions.cpp:87
+msgid "Terminate"
+msgstr "Выйти"
+
+#: kcmconfigs/configactions.cpp:88
+msgid "Terminate kshowmail if no new mail"
+msgstr "Выйти из kshowmail, если нет новой почты"
+
+#: kcmconfigs/configactions.cpp:203
+#, fuzzy
+msgid "Sound files (*.wav, *.ogg)"
+msgstr "Звуковые файлы (*.wav)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "All files (*)"
+msgstr "Все файлы (*)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "Select Sound File"
+msgstr "Выберите звуковой файл"
+
+#: kcmconfigs/configspamcheck.cpp:37
+msgid ""
+"KShowmail uses SpamAssassin to check the mails for spam. You have to "
+"install, configure and start the SpamAssassin daemon, before you can use "
+"this service."
+msgstr ""
+
+#
+#: kcmconfigs/configspamcheck.cpp:48
+#, fuzzy
+msgid "Action for Spam"
+msgstr "Если &нет почты"
+
+#: kcmconfigs/configspamcheck.cpp:54
+msgid "Choose the action for spam mails."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:60 kcmconfigs/senderlistdialog.cpp:59
+#: kcmconfigs/filtersetupitem.cpp:255 kcmconfigs/filtersetupdialog.cpp:92
+#: kcmconfigs/configfilter.cpp:130
+msgid "Mark"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:71 kcmconfigs/filtersetupdialog.cpp:104
+#: kcmconfigs/configfilter.cpp:143
+msgid "Choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:190 kcmconfigs/filtersetupdialog.cpp:442
+#: kcmconfigs/configfilter.cpp:603
+#, fuzzy
+msgid "Mailbox Select"
+msgstr "Список писем"
+
+#: kcmconfigs/configspamcheck.cpp:226
+msgid "SpamAssassin is running."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:226 kcmconfigs/configspamcheck.cpp:231
+msgid "Check for SpamAssassin"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:231
+msgid "SpamAssassin is not running."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:27
+msgid "Press to choose the mail directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:32
+msgid ""
+"Please choose the path to the mailboxes.\n"
+"KShowmail supports only MailDir boxes."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:47
+msgid "Please choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:65
+msgid "Choose the mailbox directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:134
+msgid "Inbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:136
+msgid "Outbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:138
+#, fuzzy
+msgid "Drafts"
+msgstr "Дата"
+
+#: kcmconfigs/mailboxwizard.cpp:140
+msgid "sent-mail"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:142
+msgid "Trash"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:39
+msgid "List"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:41
+msgid ""
+"A mail whose sender is listed here will pass the filter.\n"
+"A mail will be accepted, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is accepted by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:43
+msgid ""
+"A mail whose sender is listed here will be hold up by the filter.\n"
+"A mail will be stopped, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is filtered by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:53 kcmconfigs/configfilter.cpp:72
+#, fuzzy
+msgid "Action"
+msgstr "&Действия"
+
+#: kcmconfigs/senderlistdialog.cpp:64
+msgid "The mails will be deleted."
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:65
+msgid "The mails will be marked."
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:253 kcmconfigs/filtersetupdialog.cpp:90
+#: kcmconfigs/configfilter.cpp:128
+#, fuzzy
+msgid "Show"
+msgstr "KShowmail"
+
+#: kcmconfigs/filtersetupitem.cpp:256
+msgid "Move to %1"
+msgstr ""
+
+#
+#: kcmconfigs/filtersetupitem.cpp:258
+#, fuzzy
+msgid "Check for spam"
+msgstr "Если &нет почты"
+
+#: kcmconfigs/filtersetupitem.cpp:259
+msgid "Unknown action"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:37
+msgid "&Timers"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:44
+msgid "Confirm Close"
+msgstr "Подтвержать выход"
+
+#: kcmconfigs/configgeneral.cpp:45
+#, fuzzy
+msgid "If checked, window close must be confirmed"
+msgstr "Если выбрано, удаление сообщений должно быть подтверждено"
+
+#: kcmconfigs/configgeneral.cpp:48
+msgid "Confirm delete"
+msgstr "Подтверждать удаление"
+
+#: kcmconfigs/configgeneral.cpp:49
+msgid "If checked, message delete must be confirmed"
+msgstr "Если выбрано, удаление сообщений должно быть подтверждено"
+
+#: kcmconfigs/configgeneral.cpp:52
+msgid "Start Minimi&zed"
+msgstr "Запускать как иконку"
+
+#: kcmconfigs/configgeneral.cpp:53
+msgid "Application is started as icon"
+msgstr "Приложение будет запущено в минимизированном виде"
+
+#: kcmconfigs/configgeneral.cpp:56
+msgid "Close to tray"
+msgstr "При закрытии свернуть в трей"
+
+#: kcmconfigs/configgeneral.cpp:57
+msgid "Close button leaves the application running in tray"
+msgstr "Кнопка закрытия окна сворачивает приложение в трей"
+
+#: kcmconfigs/configgeneral.cpp:60
+msgid "Minimize to tray"
+msgstr "Минимизировать в трей"
+
+#: kcmconfigs/configgeneral.cpp:61
+msgid "Minimizes to the tray rather than to the taskbar"
+msgstr "Минимизировать в трей, а не в панель задач"
+
+#: kcmconfigs/configgeneral.cpp:64
+msgid "Show Connection Errors during refresh"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:65
+msgid ""
+"If a connection error occurs during refresh (e.g. unknown server), an error "
+"message will be shown. During other actions, this error always will be shown"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:68
+msgid "&Keep mail as new"
+msgstr "&Оставлять почту как новую"
+
+#: kcmconfigs/configgeneral.cpp:69
+msgid "Keep mail as new until termination"
+msgstr "Оставлять почту как новую до перезапуска"
+
+#: kcmconfigs/configgeneral.cpp:72
+msgid "Initial Timer:"
+msgstr "Начальная задержка:"
+
+#: kcmconfigs/configgeneral.cpp:73 kcmconfigs/configgeneral.cpp:91
+msgid "[Seconds]"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:75 kcmconfigs/configgeneral.cpp:76
+msgid "Seconds until first automatic logon (0 = no automatic)"
+msgstr ""
+"Задержка в секундах до первой автоматической проверки почты (0 = не "
+"проверять автоматически)"
+
+#: kcmconfigs/configgeneral.cpp:81
+msgid "Interval Timer:"
+msgstr "Частота обновлений:"
+
+#: kcmconfigs/configgeneral.cpp:82
+msgid "[Minutes]"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:84 kcmconfigs/configgeneral.cpp:85
+msgid "Minutes between automatic logon (0 = no automatic)"
+msgstr ""
+"Время в минутах между автоматическими проверками почты (0 = не проверять "
+"автоматически)"
+
+#: kcmconfigs/configgeneral.cpp:90
+#, fuzzy
+msgid "Timeout:"
+msgstr "Время"
+
+#: kcmconfigs/configgeneral.cpp:93 kcmconfigs/configgeneral.cpp:94
+msgid "Seconds until a server connect will be canceled"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:23
+#, fuzzy
+msgid "New filter"
+msgstr "Добавить фильтр"
+
+#: kcmconfigs/filtersetupdialog.cpp:25
+msgid "Edit filter"
+msgstr "Изменить фильтр"
+
+#: kcmconfigs/filtersetupdialog.cpp:34
+#, fuzzy
+msgid "Name:"
+msgstr "Имя:"
+
+#: kcmconfigs/filtersetupdialog.cpp:40
+#, fuzzy
+msgid "Filter Criterias"
+msgstr "Статус фильтров"
+
+#: kcmconfigs/filtersetupdialog.cpp:44
+#, fuzzy
+msgid "Filter Action"
+msgstr "Фильтр"
+
+#: kcmconfigs/filtersetupdialog.cpp:52
+msgid "Match all of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:53
+msgid "Match any of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+#, fuzzy
+msgid "More"
+msgstr "Игнорировать"
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+msgid "Add a further criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Fewer"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Remove the last criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:86
+msgid "Choose the action for all mails which are filtered by this filter."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:94 kcmconfigs/configfilter.cpp:132
+msgid "Spamcheck"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:33
+#, fuzzy
+msgid "Activate Filter"
+msgstr "Изменить фильтр"
+
+#: kcmconfigs/configfilter.cpp:35
+msgid "Check to activate the header filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:41
+msgid "First Check: Sender Lists"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:45
+msgid "Whitelist"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:46
+msgid ""
+"Click here to edit the list of senders whose mails shall pass the filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:52
+#, fuzzy
+msgid "Blacklist"
+msgstr "О&чистить список"
+
+#: kcmconfigs/configfilter.cpp:53
+msgid ""
+"Click here to edit the list of senders whose mails shall be deleted or "
+"marked."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:65
+msgid "Second Check: Filters"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:70
+msgid "No."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:86
+msgid "Moves the selected filter at the top"
+msgstr ""
+
+#
+#: kcmconfigs/configfilter.cpp:87
+#, fuzzy
+msgid "Moves the selected filter up"
+msgstr "Играть выбрать звуковой файл"
+
+#
+#: kcmconfigs/configfilter.cpp:88
+#, fuzzy
+msgid "Moves the selected filter down"
+msgstr "Играть выбрать звуковой файл"
+
+#: kcmconfigs/configfilter.cpp:89
+msgid "Moves the selected filter at the bottm"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:116
+msgid "Third Check: Action for all others"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:123
+msgid ""
+"Choose the action for all mails which are not filtered by the steps before."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:17 kcmconfigs/kwalletaccess.cpp:86
+#: kwalletaccess.cpp:17 kwalletaccess.cpp:86
+msgid "KWallet is not available."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:25 kcmconfigs/kwalletaccess.cpp:94
+#: kwalletaccess.cpp:25 kwalletaccess.cpp:94
+msgid "Could not get wallet name for network datas from KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:45 kcmconfigs/kwalletaccess.cpp:114
+#: kwalletaccess.cpp:45 kwalletaccess.cpp:114
+msgid "Could not open KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:56 kwalletaccess.cpp:56
+msgid "Could not create folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:65 kcmconfigs/kwalletaccess.cpp:122
+#: kwalletaccess.cpp:65 kwalletaccess.cpp:122
+msgid "Could not open folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:73 kwalletaccess.cpp:73
+msgid "Could not save password in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:132 kwalletaccess.cpp:132
+msgid "Could not get password of account %1 from KWallet."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:182
+msgid "Please enter an account name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:228
+msgid "There is already an account named %1. Please choose another name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:241
+msgid ""
+"You have changed the account name. The account will lose all downloaded mail "
+"headers. Please perform a refresh."
+msgstr ""
+
+#: filterlog.cpp:128
+msgid "Could not save the filter log."
+msgstr ""
+
+#: showrecordelem.cpp:160
+msgid "new"
+msgstr "новое"
+
+#: showrecordelem.cpp:162
+msgid "old"
+msgstr "старое"
+
+#: filterlogview.cpp:21
+msgid "Filter Log View"
+msgstr ""
+
+#: filterlogview.cpp:31
+#, fuzzy
+msgid "Deleted Mails:"
+msgstr "Удалить фильтр"
+
+#: filterlogview.cpp:36 filterlogview.cpp:63
+#, fuzzy
+msgid "Sender"
+msgstr "Отправитель:"
+
+#: filterlogview.cpp:49
+msgid "Clear the list of deleted mails"
+msgstr ""
+
+#: filterlogview.cpp:58
+msgid "Moved Mails:"
+msgstr ""
+
+#: filterlogview.cpp:65
+msgid "Moved To"
+msgstr ""
+
+#: filterlogview.cpp:78
+msgid "Clear the list of moved mails"
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid ""
+"Thank You for using KShowmail.\n"
+"Please use the feedback dialog to tell us your experience with this program."
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid "Welcome"
+msgstr ""
+
+#: kshowmail.cpp:102
+msgid "Autorefresh: %1"
+msgstr "Автообновление: %1"
+
+#: kshowmail.cpp:132
+msgid "&Refresh messages"
+msgstr "&Обновить письма"
+
+#
+#: kshowmail.cpp:133
+msgid "Show &header of highlighted messages"
+msgstr "&Показать заголовки выбранного письма"
+
+#
+#: kshowmail.cpp:134
+msgid "Show &complete highlighted messages"
+msgstr "&Показать полностью выбранное письмо"
+
+#: kshowmail.cpp:135
+msgid "&Delete highlighted messages"
+msgstr "&Удалить выбранные письма"
+
+#: kshowmail.cpp:136
+msgid "S&top current transfer"
+msgstr "П&рекратить текущую передачу"
+
+#: kshowmail.cpp:137
+msgid "Show Filter Log"
+msgstr ""
+
+#: kshowmail.cpp:138
+msgid "Add sender to whitelist"
+msgstr ""
+
+#: kshowmail.cpp:139
+msgid "Add sender to blacklist"
+msgstr ""
+
+#: kshowmail.cpp:150
+msgid "Send &Feedback Mail"
+msgstr "Отправить отзыв о программе"
+
+#: kshowmail.cpp:153
+msgid "Setup &account"
+msgstr "&Настройки ящика"
+
+#: kshowmail.cpp:159 kshowmail.cpp:543 kshowmail.cpp:559 kshowmail.cpp:644
+msgid "Ready."
+msgstr "Готов."
+
+#: kshowmail.cpp:165
+msgid ""
+"Shows the number of deleted, moved or ignored mails by the filter.\n"
+"The positions denotes:\n"
+"by last refresh / since application start / listed by the log"
+msgstr ""
+
+#: kshowmail.cpp:326
+msgid "Refreshing ..."
+msgstr ""
+
+#: kshowmail.cpp:363
+msgid "Job was stopped"
+msgstr "Задача остановлена"
+
+#: kshowmail.cpp:392
+msgid "%1 message(s) with a total of %2 bytes are waiting"
+msgstr "%1 сообщений общим размером %2 байт ожидают"
+
+#: kshowmail.cpp:418
+msgid "Do you want to delete these mails?"
+msgstr ""
+
+#: kshowmail.cpp:418
+#, fuzzy
+msgid "Delete?"
+msgstr "Удалено"
+
+#: kshowmail.cpp:428
+msgid "Deleting Mail(s) ..."
+msgstr ""
+
+#: kshowmail.cpp:469
+msgid "Downloading ..."
+msgstr ""
+
+#: kshowmail.cpp:491
+#, fuzzy
+msgid "Last Refresh: %1"
+msgstr "Автообновление: %1"
+
+#: kshowmail.cpp:523
+msgid ""
+"KShowmail will be closed.\n"
+"Are you sure?"
+msgstr ""
+"KShowmail будет закрыт.\n"
+"Вы уверены?"
+
+#: kshowmail.cpp:805
+msgid "Filter: Deleted: %1/%2/%3; Moved: %4/%5/%6; Ignored: %7"
+msgstr ""
+
+#~ msgid "Execute user commands"
+#~ msgstr "Исполнение пользовательских команд"
+
+#, fuzzy
+#~ msgid "Pass"
+#~ msgstr "Пароль"
+
+#~ msgid "Condition"
+#~ msgstr "Условие"
+
+#~ msgid "Contains"
+#~ msgstr "Содержит"
+
+#~ msgid "Doesn't contain"
+#~ msgstr "Не содержит"
+
+#~ msgid "Equals"
+#~ msgstr "Равно"
+
+#~ msgid "Doesn't equal"
+#~ msgstr "Не равно"
+
+#~ msgid "Greater"
+#~ msgstr "Больше"
+
+#~ msgid "Less"
+#~ msgstr "Меньше"
+
+#~ msgid "No more Conditions"
+#~ msgstr "Больше нет условий"
+
+#~ msgid "And"
+#~ msgstr "И"
+
+#~ msgid "Or"
+#~ msgstr "Или"
+
+#~ msgid "Edit regular expression"
+#~ msgstr "Редактировать регулярное выражение"
+
+#~ msgid "Regular Expression"
+#~ msgstr "Регулярное выражение"
+
+#~ msgid "For help about regular expressions lookup the Qt documentation"
+#~ msgstr "Для справки по регулярным выражениям смотрите документацию по Qt."
+
+#~ msgid "second Condition"
+#~ msgstr "второе условие"
+
+#~ msgid "Counter"
+#~ msgstr "Номер"
+
+#~ msgid ""
+#~ "<qt>Filters are counted for each automatic deletion;<br>Filters with high "
+#~ "counters are listed first</qt>"
+#~ msgstr ""
+#~ "<qt>Номера учитываются при каждом автоматическом удалении;<br>Фильтры с "
+#~ "бОльшими номерами применяются первыми.</qt>"
+
+#~ msgid "Reset Counter"
+#~ msgstr "Сброс номера"
+
+#~ msgid "Filter Status"
+#~ msgstr "Статус фильтров"
+
+#~ msgid "Filters are switched off"
+#~ msgstr "Фильтры отключены"
+
+#~ msgid "Filters are switched on"
+#~ msgstr "Фильтры включены"
+
+#~ msgid "Automatic Delete"
+#~ msgstr "Автоматическое удаление"
+
+#~ msgid "Filters are switched on and are applied automatically"
+#~ msgstr "Фильтры включены и применяются автоматически"
+
+#~ msgid "Add filter"
+#~ msgstr "Добавить фильтр"
+
+#~ msgid "Copy filter"
+#~ msgstr "Скопировать фильтр"
+
+#~ msgid ""
+#~ "Filter %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Фильтр %1 будет удален.\n"
+#~ "Вы уверены?"
+
+#~ msgid ""
+#~ "Automatic filters can cause loss of important mails.\n"
+#~ "Please test your filters.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Автоматические фильтры могут привести к потере важных писем.\n"
+#~ "Пожалуйста, проверьте свои фильтры.\n"
+#~ "Продолжить?"
+
+#~ msgid ""
+#~ "Your conditions contain empty match strings.\n"
+#~ "This will not work."
+#~ msgstr ""
+#~ "Ваши условия содержат пустые строки для сопоставления.\n"
+#~ "Это неправильно."
+
+#~ msgid "Setup &filters"
+#~ msgstr "Настройки &фильтров"
+
+#~ msgid ""
+#~ "Command %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Команда %1 будет удалена.\n"
+#~ "Вы уверены?"
+
+#~ msgid ""
+#~ "Account %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Ящик %1 будет удален.\n"
+#~ "Вы уверены?"
+
+#~ msgid ""
+#~ "Password will be stored as scrambled text.\n"
+#~ "It might be possible to decipher it.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Пароль будет сохранен в виде зашифрованного текста,\n"
+#~ "но может быть расшифрован.\n"
+#~ "Продолжить?\n"
+
+#
+#~ msgid "Message"
+#~ msgstr "Сообщение"
+
+#~ msgid "Send reply mail"
+#~ msgstr "Послать ответ"
+
+#~ msgid "User command"
+#~ msgstr "Команда пользователя"
+
+#~ msgid "Menu Entry"
+#~ msgstr "Пункт меню"
+
+#~ msgid "Press button to select command path"
+#~ msgstr "Нажмите, чтобы выбрать путь для команды"
+
+#~ msgid "Test"
+#~ msgstr "Тест"
+
+#~ msgid "Execute the command immediatly"
+#~ msgstr "Исполнять команду немедленно"
+
+#~ msgid "Wait for command to complete"
+#~ msgstr "Ждать окончания выполнения команды"
+
+#~ msgid "Enter menu entry name"
+#~ msgstr "Введите название пункта меню"
+
+#~ msgid ""
+#~ "<qt>Enter path to selected command and arguments<br>&lt;user&gt;, &lt;"
+#~ "server&gt;, &lt;passwd&gt;, &lt;header&gt; and &lt;body&gt; may be used "
+#~ "as arguments</qt>"
+#~ msgstr ""
+#~ "<qt>Введите путь к выбранной команде и аргументы.<br>&lt;user&gt;, &lt;"
+#~ "server&gt;, &lt;passwd&gt, &lt;header&gt; und &lt;body&gt; могут быть "
+#~ "использованы как аргументы</qt>"
+
+#
+#~ msgid "Server Options"
+#~ msgstr "Настройки сервера"
+
+#~ msgid "Password:"
+#~ msgstr "Пароль:"
+
+#
+#~ msgid "The account must have a name"
+#~ msgstr "Ящик должен иметь имя"
+
+#~ msgid "This account is already present"
+#~ msgstr "Такой ящик уже имеется"
+
+#~ msgid "Command"
+#~ msgstr "Команда"
+
+#~ msgid "User commands"
+#~ msgstr "Команды пользователя"
+
+#~ msgid "Add user command"
+#~ msgstr "Добавить команду пользователя"
+
+#~ msgid "Edit user command"
+#~ msgstr "Редактировать команду пользователя"
+
+#~ msgid "Copy user command"
+#~ msgstr "Скопировать команду пользователя"
+
+#~ msgid "Delete user command"
+#~ msgstr "Удалить команду пользователя"
+
+#~ msgid "Accounts"
+#~ msgstr "Ящики"
+
+#~ msgid "Delete account"
+#~ msgstr "Удалить ящик"
+
+#~ msgid "Cop&y"
+#~ msgstr "С&копировать"
+
+#~ msgid "copy account"
+#~ msgstr "Cкопировать ящик"
+
+#~ msgid "Add new account"
+#~ msgstr "Добавить ящик"
+
+#
+#~ msgid "&General Options"
+#~ msgstr "&Общие настройки"
+
+#~ msgid "Save password (not recommended !)"
+#~ msgstr "Сохранять пароль (не рекомендуется!)"
+
+#~ msgid "Pop3 Timer"
+#~ msgstr "Pop3-таймаут"
+
+#~ msgid "Pop3 timeout"
+#~ msgstr "Pop3-таймаут"
+
+#
+#~ msgid "Max Size:"
+#~ msgstr "Макс. размер:"
+
+#~ msgid "Maximal size of downloaded mail body in kilobytes"
+#~ msgstr "Максимальный размер загружаемого тела письма в килобайтах"
+
+#
+#~ msgid "Display Options"
+#~ msgstr "Интерфейс"
+
+#~ msgid "E&xternal Program"
+#~ msgstr "Вне&шняя программа"
+
+#~ msgid "Sound File:"
+#~ msgstr "Звуковой файл:"
+
+#~ msgid "Enter sound file"
+#~ msgstr "Введите путь и имя звукового файла"
+
+#~ msgid "Setup &accounts"
+#~ msgstr "&Настройки ящиков"
+
+#~ msgid "Setup &commands"
+#~ msgstr "Настройки &команд"
+
+#~ msgid "&Setup"
+#~ msgstr "&Настройки"
+
+#~ msgid "Select Command"
+#~ msgstr "Выберите команду"
+
+#~ msgid "Send complain mails"
+#~ msgstr "Отправить спам-жалобы"
+
+#~ msgid "Clear message list by Ctrl-C"
+#~ msgstr "Очистка списка сообщений нажатием Ctrl-C"
+
+#~ msgid "Forced refresh of all messages by Shift-F5"
+#~ msgstr "Принудительное обновление сообщений нажатием Shift-F5"
+
+#~ msgid "Select account"
+#~ msgstr "Выберите ящик"
+
+#~ msgid "Refresh &all messages"
+#~ msgstr "Обновить &все письма"
+
+#~ msgid "&Send complain mail"
+#~ msgstr "&Отправить письмо с жалобой"
+
+#~ msgid "Logging in to server %1 ..."
+#~ msgstr "Вход на сервер %1 ..."
+
+# ycp-format
+#~ msgid "connection to pop3 server %1 established successfully"
+#~ msgstr "соединение с Pop3-сервером %1 установлено"
+
+#~ msgid "POP3 Timeout"
+#~ msgstr "Pop3-таймаут"
+
+#~ msgid "Timeout: job was killed"
+#~ msgstr "Таумаут: задача была удалена"
+
+#~ msgid "getting UIDLs ..."
+#~ msgstr "получение UIDL..."
+
+#~ msgid "getting message %1 of %2 ..."
+#~ msgstr "получение сообщения %1 из %2 ..."
+
+#~ msgid "Deleting highlighted messages..."
+#~ msgstr "Удаление выбранных сообщений..."
+
+#~ msgid ""
+#~ "Message %1 at %2 will be deleted.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Сообщение %1 в ящике %2 будет удалено.\n"
+#~ "Продолжить?\n"
+
+#~ msgid "Yes all"
+#~ msgstr "Да для всех"
+
+#~ msgid "Sending complain mails..."
+#~ msgstr "Отправить письмо с жалобой..."
+
+#~ msgid ""
+#~ "Complain mail will be sent for message %1 at %2.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Письмо с жалобой будет отправлено для сообщения %1 в ящике %2.\n"
+#~ "Продолжить?\n"
+
+#~ msgid "Header %1 at %2"
+#~ msgstr "Заголовок письма %1 в ящике %2"
+
+#~ msgid "Getting complete highlighted messages..."
+#~ msgstr "Загрузка тела выбранного сообщения..."
+
+#~ msgid "Message %1 at %2"
+#~ msgstr "Сообщение %1 в ящике %2"
+
+#, fuzzy
+#~ msgid ""
+#~ "<qt>Enter path to selected command and arguments<br>&lt;user&gt;, "
+#~ "<server>, \\<passwd\\>, \\<header\\> and \\<body\\> may be used as "
+#~ "arguments</qt>"
+#~ msgstr ""
+#~ "Pfad des ausgewählten Kommandos mit Argumenten\n"
+#~ "<user>, <server>, <passwd>, <header> und <body> können als Argumente "
+#~ "benutzt werden"
+
+#~ msgid ""
+#~ "Enter path to selected command and arguments\\n<user>, <server>, "
+#~ "<passwd>, <header> and <body> may be used as arguments"
+#~ msgstr ""
+#~ "Pfad des ausgewählten Kommandos mit Argumenten\n"
+#~ "<user>, <server>, <passwd>, <header> und <body> können als Argumente "
+#~ "benutzt werden"
+
+#~ msgid "Ignore case"
+#~ msgstr "GroГџ/Kleinschreibung ignorieren"
diff --git a/po/sv.po b/po/sv.po
new file mode 100644
index 0000000..a2e91f1
--- /dev/null
+++ b/po/sv.po
@@ -0,0 +1,1994 @@
+# translation of sv.po to deutsch
+# Copyright (C) 2000,2003 Free Software Foundation, Inc.
+# Daniel Stenberg <daniel@haxx.se>
+# Mattias Newzella <newzella@swipnet.se>, 2000.
+# Eggert Ehmke <eggert.ehmke@berlin.de>, 2003.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: sv\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-04-17 21:57+0200\n"
+"PO-Revision-Date: 2003-12-08 21:41+0100\n"
+"Last-Translator: Eggert Ehmke <eggert.ehmke@berlin.de>\n"
+"Language-Team: deutsch\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.0.2\n"
+
+#: _translatorinfo.cpp:1 main.cpp:65
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Mattias Newzella"
+
+#: _translatorinfo.cpp:3 main.cpp:65
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "newzella@linux.nu"
+
+#: main.cpp:33
+msgid "A powerful pop3 mail checker"
+msgstr "En kraftfull e-postkontrollerare för pop3"
+
+# kshowmail.cpp:178
+#: main.cpp:40
+msgid "Refresh messages now"
+msgstr "Uppdatera breven nu"
+
+#: main.cpp:42
+msgid "Launch configure dialog"
+msgstr "Starta inställningsdialogrutan"
+
+#: main.cpp:107
+msgid "Kshowmail is already running!"
+msgstr "Kshowmail är redan startad!"
+
+#. i18n: file AlertDlg.ui line 16
+#: AlertDlg.cpp:262 rc.cpp:15
+#, no-c-format
+msgid "KShowmail"
+msgstr "KshowmailDok"
+
+#. i18n: file AlertDlg.ui line 27
+#: AlertDlg.cpp:263 rc.cpp:18 kcmconfigs/filtersetupitem.cpp:257
+#: kcmconfigs/filtersetupdialog.cpp:95 kcmconfigs/configfilter.cpp:133
+#, no-c-format
+msgid "Ignore"
+msgstr "Ignorera"
+
+#. i18n: file AlertDlg.ui line 35
+#: AlertDlg.cpp:264 rc.cpp:21 kcmconfigs/configactions.cpp:49
+#, no-c-format
+msgid "Show main window"
+msgstr "Visa huvudfönster"
+
+#. i18n: file AlertDlg.ui line 61
+#: AlertDlg.cpp:265 rc.cpp:24
+#, no-c-format
+msgid "New mail"
+msgstr "Nytt brev"
+
+#. i18n: file AlertDlg.ui line 76
+#: AlertDlg.cpp:266 rc.cpp:27
+#, no-c-format
+msgid "has arrived !"
+msgstr "har anlänt!"
+
+# qserverdlgdata.cpp:18
+#: serverdialog.cpp:44 kcmconfigs/accountsetupdialog.cpp:39
+msgid "Account:"
+msgstr "Konto:"
+
+#: serverdialog.cpp:47 serverdialog.cpp:48
+#: kcmconfigs/accountsetupdialog.cpp:42 kcmconfigs/accountsetupdialog.cpp:43
+msgid "Unique Account Name"
+msgstr ""
+
+# qserverdlgdata.cpp:23
+#: serverdialog.cpp:52 kcmconfigs/accountsetupdialog.cpp:47
+msgid "Server:"
+msgstr "Server:"
+
+# qserverdlgdata.cpp:23
+#: serverdialog.cpp:55 serverdialog.cpp:56
+#: kcmconfigs/accountsetupdialog.cpp:49 kcmconfigs/accountsetupdialog.cpp:50
+#, fuzzy
+msgid "Server Name"
+msgstr "Server"
+
+# qserverdlgdata.cpp:42
+#: serverdialog.cpp:60 kcmconfigs/accountsetupdialog.cpp:54
+msgid "Protocol:"
+msgstr "Protokoll:"
+
+#: serverdialog.cpp:63 serverdialog.cpp:64
+#: kcmconfigs/accountsetupdialog.cpp:57 kcmconfigs/accountsetupdialog.cpp:58
+msgid ""
+"Protocol, which shall be used to get the mails from the server. Currently "
+"KShowmail just supports POP3."
+msgstr ""
+
+# qserverdlgdata.cpp:75
+#: serverdialog.cpp:68 kcmconfigs/accountsetupdialog.cpp:62
+msgid "Port:"
+msgstr "Port:"
+
+#: serverdialog.cpp:71 serverdialog.cpp:72
+#: kcmconfigs/accountsetupdialog.cpp:65 kcmconfigs/accountsetupdialog.cpp:66
+msgid "Port Number. Normally POP3 uses port 110."
+msgstr ""
+
+# qserverdlgdata.cpp:28
+#: serverdialog.cpp:76 kcmconfigs/accountsetupdialog.cpp:70
+msgid "User:"
+msgstr "Användare:"
+
+#: serverdialog.cpp:78 serverdialog.cpp:79
+#: kcmconfigs/accountsetupdialog.cpp:72 kcmconfigs/accountsetupdialog.cpp:73
+msgid "To authenticate to the mail server you need an user name."
+msgstr ""
+
+# qpassworddlgdata.cpp:17 qserverdlgdata.cpp:33
+#: serverdialog.cpp:84 kcmconfigs/accountsetupdialog.cpp:78
+msgid "Password"
+msgstr "Lösenord"
+
+#: serverdialog.cpp:95 kcmconfigs/accountsetupdialog.cpp:89
+msgid "Don't save"
+msgstr ""
+
+# qoptiondlgdata.cpp:101
+#: serverdialog.cpp:96 kcmconfigs/accountsetupdialog.cpp:90
+#, fuzzy
+msgid "Save password"
+msgstr "Spara lösenord"
+
+#: serverdialog.cpp:97 kcmconfigs/accountsetupdialog.cpp:91
+msgid "Use KWallet"
+msgstr ""
+
+#: serverdialog.cpp:101 kcmconfigs/accountsetupdialog.cpp:95
+msgid ""
+"Don't save password. KShowmail will ask you for it at first server connect."
+msgstr ""
+
+#: serverdialog.cpp:102 kcmconfigs/accountsetupdialog.cpp:96
+msgid ""
+"Save password in the configuration file. Not recommended, because the "
+"password is just lightly encrypted"
+msgstr ""
+
+#: serverdialog.cpp:103 kcmconfigs/accountsetupdialog.cpp:97
+msgid ""
+"Use KWallet to save the password. Maybe you have to type in the KWallet "
+"master password at first server connect."
+msgstr ""
+
+# kshowmail.cpp:147 kshowmailview.cpp:41 rc.cpp:102
+#: serverdialog.cpp:119 kcmconfigs/configdisplay.cpp:46
+#: kcmconfigs/accountsetupdialog.cpp:113 kshowmailview.cpp:53
+msgid "Active"
+msgstr "Aktiv"
+
+# kshowmail.cpp:177 qoptiondlgdata.cpp:70
+#: serverdialog.cpp:120 kcmconfigs/accountsetupdialog.cpp:114
+#, fuzzy
+msgid "Select it to activate this account."
+msgstr "Välj ett pop3-konto"
+
+#: serverdialog.cpp:125 kcmconfigs/accountsetupdialog.cpp:119
+msgid "Encryption"
+msgstr ""
+
+# qoptiondlgdata.cpp:136
+#: serverdialog.cpp:135 kshowmailfeedback.cpp:57
+#: kcmconfigs/accountsetupdialog.cpp:129
+#, fuzzy
+msgid "None"
+msgstr "IngetNamn"
+
+#: serverdialog.cpp:136 kcmconfigs/accountsetupdialog.cpp:130
+msgid "SSL"
+msgstr ""
+
+#: serverdialog.cpp:137 kcmconfigs/accountsetupdialog.cpp:131
+msgid "TLS"
+msgstr ""
+
+#: serverdialog.cpp:141 kcmconfigs/accountsetupdialog.cpp:135
+msgid ""
+"The download of the mail header and body will not be encrypted. Use this, if "
+"your provider doesn't make a secure transfer available."
+msgstr ""
+
+#: serverdialog.cpp:142 kcmconfigs/accountsetupdialog.cpp:136
+msgid ""
+"Secure Sockets Layer (SSL), is a cryptographic protocol that provides secure "
+"communications on the Internet."
+msgstr ""
+
+#: serverdialog.cpp:143 kcmconfigs/accountsetupdialog.cpp:137
+msgid ""
+"Transport Layer Security (TLS) is a cryptographic protocol that provides "
+"secure communications on the Internet. It is the successor of SSL."
+msgstr ""
+
+# kshowmailview.cpp:42
+#: serverdialog.cpp:152 kcmconfigs/accountsetupdialog.cpp:145
+#, fuzzy
+msgid "General"
+msgstr "Avsändare"
+
+#: serverdialog.cpp:153 kcmconfigs/accountsetupdialog.cpp:146
+msgid "Security"
+msgstr ""
+
+# qserverdlg.cpp:40
+#: serverdialog.cpp:157 kcmconfigs/accountsetupdialog.cpp:150
+msgid "New account"
+msgstr "Nytt konto"
+
+# qserverdlg.cpp:45
+#: serverdialog.cpp:159 kcmconfigs/accountsetupdialog.cpp:152
+msgid "Edit account"
+msgstr "Redigera konto"
+
+#: serverdialog.cpp:194 kcmconfigs/accountsetupdialog.cpp:187
+msgid "Please enter an server."
+msgstr ""
+
+#: serverdialog.cpp:200 kcmconfigs/accountsetupdialog.cpp:193
+msgid "Please enter an user name."
+msgstr ""
+
+#: kshowmailfeedback.cpp:31
+msgid "What is your general opinion about this program?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:33
+msgid "It's one of my favourites"
+msgstr ""
+
+#: kshowmailfeedback.cpp:34
+msgid "I like it"
+msgstr ""
+
+#: kshowmailfeedback.cpp:35
+msgid "It's sometimes useful"
+msgstr ""
+
+#: kshowmailfeedback.cpp:36
+msgid "It's average"
+msgstr ""
+
+#: kshowmailfeedback.cpp:37
+msgid "Nice try, but this could be done better"
+msgstr ""
+
+#: kshowmailfeedback.cpp:38
+msgid "It's poor"
+msgstr ""
+
+#: kshowmailfeedback.cpp:39
+msgid "It's useless"
+msgstr ""
+
+#: kshowmailfeedback.cpp:40
+msgid "It's crap"
+msgstr ""
+
+#: kshowmailfeedback.cpp:42
+msgid "Which features of this program do you like?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:45
+msgid "What is your favourite feature?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:48
+msgid "Which features don't you like?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:51
+msgid "Which features do you never use?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:54
+msgid "Are there features you are missing?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:55
+msgid "Yes, a lot! (please add comment below)"
+msgstr ""
+
+#: kshowmailfeedback.cpp:56
+msgid "Some (please add comment below)"
+msgstr ""
+
+#: kshowmailfeedback.cpp:58
+msgid "It has too many features already!"
+msgstr ""
+
+#: kshowmailfeedback.cpp:60
+msgid "How do you rate the stability of this program?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:61
+msgid "Rock solid"
+msgstr ""
+
+#: kshowmailfeedback.cpp:62 kshowmailfeedback.cpp:69
+msgid "Good"
+msgstr ""
+
+#: kshowmailfeedback.cpp:63 kshowmailfeedback.cpp:70 kshowmailfeedback.cpp:77
+#: kshowmailfeedback.cpp:84
+msgid "Average"
+msgstr ""
+
+# qserverdlgdata.cpp:75
+#: kshowmailfeedback.cpp:64 kshowmailfeedback.cpp:71
+#, fuzzy
+msgid "Poor"
+msgstr "Port:"
+
+#: kshowmailfeedback.cpp:65
+msgid "It keeps crashing all the time"
+msgstr ""
+
+#: kshowmailfeedback.cpp:67
+msgid "How do you rate the performance of this program?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:68
+msgid "Great"
+msgstr ""
+
+#: kshowmailfeedback.cpp:72
+msgid "It's so slow it drives me nuts"
+msgstr ""
+
+#: kshowmailfeedback.cpp:74
+msgid "What is your experience with computers in general?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:75 kshowmailfeedback.cpp:82
+msgid "Expert"
+msgstr ""
+
+#: kshowmailfeedback.cpp:76 kshowmailfeedback.cpp:83
+msgid "Fair"
+msgstr ""
+
+#: kshowmailfeedback.cpp:78 kshowmailfeedback.cpp:85
+msgid "Learning"
+msgstr ""
+
+#: kshowmailfeedback.cpp:79 kshowmailfeedback.cpp:86
+msgid "Newbie"
+msgstr ""
+
+#: kshowmailfeedback.cpp:81
+msgid "What is your experience with Unix/Linux systems?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:88
+msgid "Did you have trouble figuring out how to work with this program?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:90
+msgid "No problem"
+msgstr ""
+
+# qoptiondlgdata.cpp:136
+#: kshowmailfeedback.cpp:91
+#, fuzzy
+msgid "Some"
+msgstr "IngetNamn"
+
+#: kshowmailfeedback.cpp:92
+msgid "I'm still learning"
+msgstr ""
+
+#: kshowmailfeedback.cpp:93
+msgid "I didn't have a clue what to do at first"
+msgstr ""
+
+#: kshowmailfeedback.cpp:94
+msgid "I still don't have a clue what to do"
+msgstr ""
+
+#: kshowmailfeedback.cpp:96
+msgid "Where do you use this program most?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:97
+msgid "At work"
+msgstr ""
+
+#: kshowmailfeedback.cpp:98
+msgid "At home"
+msgstr ""
+
+#: kshowmailfeedback.cpp:99
+msgid "At university / school"
+msgstr ""
+
+#: kshowmailfeedback.cpp:101
+msgid "What is your primary role there?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:102 kshowmailfeedback.cpp:110
+msgid "Home user"
+msgstr ""
+
+#: kshowmailfeedback.cpp:103 kshowmailfeedback.cpp:111
+msgid "Student"
+msgstr ""
+
+#: kshowmailfeedback.cpp:104 kshowmailfeedback.cpp:112
+msgid "Educational (teacher / professor)"
+msgstr ""
+
+#: kshowmailfeedback.cpp:105 kshowmailfeedback.cpp:113
+msgid "Non-computer related work"
+msgstr ""
+
+#: kshowmailfeedback.cpp:106 kshowmailfeedback.cpp:114
+msgid "Developer"
+msgstr ""
+
+#: kshowmailfeedback.cpp:107 kshowmailfeedback.cpp:115
+msgid "System administrator"
+msgstr ""
+
+#: kshowmailfeedback.cpp:109
+msgid "Do you have any other roles there?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:117
+msgid "How did you get to know this program?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:118
+msgid "In a menu on my machine"
+msgstr ""
+
+#: kshowmailfeedback.cpp:119
+msgid "Somebody told me about it"
+msgstr ""
+
+#: kshowmailfeedback.cpp:120
+msgid "On the internet"
+msgstr ""
+
+#: kshowmailfeedback.cpp:121
+msgid "Printed magazine / book"
+msgstr ""
+
+#: kshowmailfeedback.cpp:122
+msgid "Other (please add comment below)"
+msgstr ""
+
+#: kshowmailfeedback.cpp:124
+msgid "Would you recommend this program to a friend?"
+msgstr ""
+
+#: kshowmailfeedback.cpp:132
+msgid "The message list display in general"
+msgstr ""
+
+#: kshowmailfeedback.cpp:133
+msgid "Display of message headers"
+msgstr ""
+
+# kshowmail.cpp:126
+#: kshowmailfeedback.cpp:134
+#, fuzzy
+msgid "Display of complete messages"
+msgstr "Visa &hela de valda breven"
+
+#: kshowmailfeedback.cpp:136
+#, fuzzy
+msgid "Filters"
+msgstr "Underrättelsedialog"
+
+# kshowmail.cpp:127
+#: kshowmailfeedback.cpp:137
+#, fuzzy
+msgid "Manual delete of unwanted messages"
+msgstr "Ta bo&rt de valda breven"
+
+# kshowmail.cpp:127
+#: kshowmailfeedback.cpp:138
+#, fuzzy
+msgid "Automatic move of filtered messages"
+msgstr "Ta bo&rt de valda breven"
+
+# kshowmail.cpp:127
+#: kshowmailfeedback.cpp:139
+#, fuzzy
+msgid "Automatic delete of filtered messages"
+msgstr "Ta bo&rt de valda breven"
+
+# kshowmail.cpp:127
+#: kshowmailfeedback.cpp:140
+#, fuzzy
+msgid "Automatic mark of filtered messages"
+msgstr "Ta bo&rt de valda breven"
+
+# kshowmail.cpp:127
+#: kshowmailfeedback.cpp:141
+#, fuzzy
+msgid "Ignoring of filtered messages"
+msgstr "Ta bo&rt de valda breven"
+
+#: kshowmailfeedback.cpp:142
+msgid "Integration of SpamAssassin"
+msgstr ""
+
+#: kshowmailfeedback.cpp:143
+msgid "White- and Blacklist"
+msgstr ""
+
+#: kshowmailfeedback.cpp:144
+#, fuzzy
+msgid "Filter Log"
+msgstr "Underrättelsedialog"
+
+#: kshowmailfeedback.cpp:145
+msgid "Filter messages by regular expressions"
+msgstr ""
+
+#: kshowmailfeedback.cpp:148
+msgid "Sorting of messages by size, date etc."
+msgstr ""
+
+# qoptiondlgdata.cpp:31
+#: kshowmailfeedback.cpp:150
+#, fuzzy
+msgid "Play sound"
+msgstr "Spelar ett ljud när nya brev anländer"
+
+#: kshowmailfeedback.cpp:151
+msgid "Play beep"
+msgstr ""
+
+# qoptiondlgdata.cpp:113
+#: kshowmailfeedback.cpp:152
+#, fuzzy
+msgid "Initial timer"
+msgstr "Initial timer:"
+
+# qoptiondlgdata.cpp:125
+#: kshowmailfeedback.cpp:153
+#, fuzzy
+msgid "Interval timer"
+msgstr "Intervall-timer:"
+
+#: kshowmailfeedback.cpp:154
+msgid "This feedback survey :-)"
+msgstr ""
+
+#: configelem.cpp:294
+msgid "Please type in the password for %1"
+msgstr ""
+
+#: configelem.cpp:515
+msgid "Time out on %1. The operation could not be finished on time"
+msgstr ""
+
+#: configelem.cpp:515
+msgid "Time Out"
+msgstr ""
+
+#: configelem.cpp:1647
+msgid ""
+"You want to check your mails for spam, but SpamAssassin is not running.\n"
+"KShowmail skips the spam check."
+msgstr ""
+
+#: configelem.cpp:1647
+msgid "SpamAssassin is not running"
+msgstr ""
+
+#: kfeedback.cpp:35
+msgid "Feedback"
+msgstr ""
+
+#: kfeedback.cpp:39
+msgid "&Mail this..."
+msgstr ""
+
+#: kfeedback.cpp:89
+msgid ""
+"<p><b>Please tell us your opinion about this program.</b></p><p>You will be "
+"able to review everything in your mailer before any mail is sent.<br>Nothing "
+"will be sent behind your back.</p>"
+msgstr ""
+
+#: kfeedback.cpp:114
+msgid "Questions marked with "
+msgstr ""
+
+#: kfeedback.cpp:123
+msgid " must be answered before a mail can be sent."
+msgstr ""
+
+#: kfeedback.cpp:134
+msgid "&Additional comments:"
+msgstr ""
+
+#: kfeedback.cpp:312
+msgid "yes"
+msgstr ""
+
+#: kfeedback.cpp:313
+msgid "no"
+msgstr ""
+
+# kshowmailview.cpp:43
+#: showheaderdialog.cpp:28 showmaildialog.cpp:39
+msgid "Subject:"
+msgstr "Ämne:"
+
+# kshowmail.cpp:1475
+#. i18n: file kshowmailui.rc line 4
+#: rc.cpp:3
+#, no-c-format
+msgid "&Actions"
+msgstr "&Åtgärder"
+
+#: showmaildialog.cpp:15
+msgid "Reply"
+msgstr ""
+
+# kshowmailview.cpp:42
+#: showmaildialog.cpp:30
+msgid "Sender:"
+msgstr "Avsändare:"
+
+# kshowmailview.cpp:44
+#: showmaildialog.cpp:33
+msgid "Date:"
+msgstr "Datum:"
+
+# kshowmailview.cpp:45
+#: showmaildialog.cpp:36
+msgid "Size:"
+msgstr "Storlek:"
+
+#: kshowmaildock.cpp:37
+#, fuzzy
+msgid "KShowmail: a powerful pop3 email checker"
+msgstr "En kraftfull e-postkontrollerare för pop3"
+
+#: kcmconfigs/filtercriteriawidget.cpp:26 kcmconfigs/configdisplay.cpp:78
+#: kshowmailview.cpp:71
+msgid "From"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:27 kcmconfigs/configdisplay.cpp:82
+#: kshowmailview.cpp:72
+msgid "To"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:28
+msgid "Size (Bytes)"
+msgstr ""
+
+# kshowmailview.cpp:43
+#: kcmconfigs/filtercriteriawidget.cpp:29 kshowmailview.cpp:73
+#: filterlogview.cpp:38 filterlogview.cpp:66
+msgid "Subject"
+msgstr "Ämne"
+
+# kshowmailview.cpp:42
+#: kcmconfigs/filtercriteriawidget.cpp:30
+#, fuzzy
+msgid "Header"
+msgstr "Avsändare"
+
+# qoptiondlgdata.cpp:65
+#: kcmconfigs/filtercriteriawidget.cpp:31 kcmconfigs/configdisplay.cpp:50
+#: kcmconfigs/configdisplay.cpp:74 kshowmailview.cpp:54 kshowmailview.cpp:70
+#: filterlogview.cpp:37 filterlogview.cpp:64
+msgid "Account"
+msgstr "Konto"
+
+# kshowmail.cpp:1475
+#: kcmconfigs/filtercriteriawidget.cpp:48
+#, fuzzy
+msgid "contains"
+msgstr "&Åtgärder"
+
+#: kcmconfigs/filtercriteriawidget.cpp:49
+msgid "does not contain"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:50
+msgid "equals"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:51
+msgid "does not equal"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:52
+msgid "matches regular expression"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:53
+msgid "does not match reg. expr."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:69
+msgid "is equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:70
+msgid "is not equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:71
+msgid "is greater than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:72
+msgid "is greater than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:73
+msgid "is less than"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:74
+msgid "is less than or equal to"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:107
+msgid "Case sensitive"
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:196
+msgid "The Regular Expression Editor could not be initilized."
+msgstr ""
+
+#: kcmconfigs/filtercriteriawidget.cpp:211
+msgid "The Regular Expression Editor is not available."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:34
+msgid "Log mails deleted by filter"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:36
+msgid "Check to activate the log of mails deleted by filter."
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:46 kcmconfigs/configlog.cpp:78
+msgid "Remove log entries at exit"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:52 kcmconfigs/configlog.cpp:84
+msgid "Remove log entries after"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:58 kcmconfigs/configlog.cpp:90
+msgid " Days"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:66
+msgid "Log mails moved by filter"
+msgstr ""
+
+#: kcmconfigs/configlog.cpp:68
+msgid "Check to activate the log of mails moved by filter."
+msgstr ""
+
+# qoptiondlgdata.cpp:65
+#: kcmconfigs/configdisplay.cpp:33
+#, fuzzy
+msgid "Account list"
+msgstr "Konton"
+
+#: kcmconfigs/configdisplay.cpp:35
+msgid "Mail list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:37
+msgid "Mail content"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:47
+msgid "To switch on/off the 'Active' column in the account list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:51
+msgid "To switch on/off the 'Account' column in the account list"
+msgstr ""
+
+# qserverdlgdata.cpp:23
+#: kcmconfigs/configdisplay.cpp:54 kshowmailview.cpp:55
+msgid "Server"
+msgstr "Server"
+
+#: kcmconfigs/configdisplay.cpp:55
+msgid "To switch on/off the 'Server' column in the account list"
+msgstr ""
+
+# qserverdlgdata.cpp:28
+#: kcmconfigs/configdisplay.cpp:58 kshowmailview.cpp:56
+msgid "User"
+msgstr "Användare"
+
+#: kcmconfigs/configdisplay.cpp:59
+msgid "To switch on/off the 'User' column in the account list"
+msgstr ""
+
+# kshowmail.cpp:178
+#: kcmconfigs/configdisplay.cpp:62 kshowmailview.cpp:57
+msgid "Messages"
+msgstr "Brev"
+
+#: kcmconfigs/configdisplay.cpp:63
+msgid "To switch on/off the 'Messages' column in the account list"
+msgstr ""
+
+# kshowmailview.cpp:45
+#: kcmconfigs/configdisplay.cpp:66
+#, fuzzy
+msgid "Si&ze"
+msgstr "Storlek"
+
+#: kcmconfigs/configdisplay.cpp:67
+msgid "To switch on/off the 'Size' column in the account list"
+msgstr ""
+
+# kshowmailview.cpp:41
+#: kcmconfigs/configdisplay.cpp:70 kshowmailview.cpp:69
+msgid "Number"
+msgstr "Nummer"
+
+#: kcmconfigs/configdisplay.cpp:71
+msgid "To switch on/off the 'Number' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:75
+msgid "To switch on/off the 'Account' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:79
+msgid "To switch on/off the 'From' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:83
+msgid "To switch on/off the 'To' column in the message list"
+msgstr ""
+
+# kshowmailview.cpp:43
+#: kcmconfigs/configdisplay.cpp:86
+#, fuzzy
+msgid "Su&bject"
+msgstr "Ämne"
+
+#: kcmconfigs/configdisplay.cpp:87
+msgid "To switch on/off the 'Subject' column in the message list"
+msgstr ""
+
+# kshowmailview.cpp:44
+#: kcmconfigs/configdisplay.cpp:90 kshowmailview.cpp:74 filterlogview.cpp:35
+#: filterlogview.cpp:62
+msgid "Date"
+msgstr "Datum"
+
+#: kcmconfigs/configdisplay.cpp:91
+msgid "To switch on/off the 'Date' column in the message list"
+msgstr ""
+
+# kshowmailview.cpp:45
+#: kcmconfigs/configdisplay.cpp:94 kshowmailview.cpp:58 kshowmailview.cpp:75
+msgid "Size"
+msgstr "Storlek"
+
+#: kcmconfigs/configdisplay.cpp:95
+msgid "To switch on/off the 'Size' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:98 kshowmailview.cpp:76
+msgid "Content"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:99
+msgid "To switch on/off the 'Content' column in the message list"
+msgstr ""
+
+# kshowmailview.cpp:46
+#: kcmconfigs/configdisplay.cpp:102 kshowmailview.cpp:77
+msgid "State"
+msgstr "Status"
+
+#: kcmconfigs/configdisplay.cpp:103
+msgid "To switch on/off the 'State' column in the message list"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:106
+msgid "Allow HTML"
+msgstr ""
+
+#: kcmconfigs/configdisplay.cpp:107
+msgid "To switch on/off HTML in the message view"
+msgstr ""
+
+# qoptiondlgdata.cpp:136
+#: kcmconfigs/configaccounts.cpp:34 kcmconfigs/configfilter.cpp:71
+#, fuzzy
+msgid "Name"
+msgstr "Namn:"
+
+#: kcmconfigs/configaccounts.cpp:194
+msgid "Do you really want to remove account %1?"
+msgstr ""
+
+# qoptiondlgdata.cpp:152
+#: kcmconfigs/configactions.cpp:33
+#, fuzzy
+msgid "Action if new &mail"
+msgstr "Åtgärd vid nya brev"
+
+# qoptiondlgdata.cpp:152
+#: kcmconfigs/configactions.cpp:34
+#, fuzzy
+msgid "Action if &no mail"
+msgstr "Åtgärd om inga brev"
+
+# kshowmail.cpp:178
+#: kcmconfigs/configactions.cpp:45
+#, fuzzy
+msgid "Show message box"
+msgstr "Visa brev"
+
+#: kcmconfigs/configactions.cpp:46
+msgid "Show message if new mail arrives"
+msgstr "Visa meddelande om nya brev anländer"
+
+# qoptiondlgdata.cpp:163
+#: kcmconfigs/configactions.cpp:50
+msgid "Show main window if new mail arrives"
+msgstr "Visa huvudfönstret om nya brev anländer"
+
+# qoptiondlgdata.cpp:26
+#: kcmconfigs/configactions.cpp:53
+#, fuzzy
+msgid "&Beep"
+msgstr "Ljudsignal"
+
+# qoptiondlgdata.cpp:25
+#: kcmconfigs/configactions.cpp:54
+msgid "Beeps the internal speaker if new mail"
+msgstr "Ljudsignal i den interna högtalaren vid nya brev"
+
+# qoptiondlgdata.cpp:32
+#: kcmconfigs/configactions.cpp:57
+#, fuzzy
+msgid "Sound:"
+msgstr "Ljud"
+
+# qoptiondlgdata.cpp:31
+#: kcmconfigs/configactions.cpp:58
+msgid "Plays sound if new mail"
+msgstr "Spelar ett ljud när nya brev anländer"
+
+# qoptiondlgdata.cpp:48
+#: kcmconfigs/configactions.cpp:61
+msgid "Play the selected sound file"
+msgstr "Spela upp den valda ljudfilen"
+
+# commanddlgdata.cpp:16 commandentrydata.cpp:16 qoptiondlgdata.cpp:16
+# qoptiondlgdata.cpp:37
+#: kcmconfigs/configactions.cpp:67
+msgid "Press to select sound file"
+msgstr "Klicka för att välja ljudfil"
+
+# commandentrydata.cpp:35
+#: kcmconfigs/configactions.cpp:70
+msgid "Command:"
+msgstr "Kommando:"
+
+# qoptiondlgdata.cpp:25
+#: kcmconfigs/configactions.cpp:71
+msgid "Starts external program if new mail"
+msgstr "Startar externt program om ny post"
+
+#: kcmconfigs/configactions.cpp:74
+msgid "Start the selected program"
+msgstr "Starta det markerade programmet"
+
+# commandentry.cpp:88
+#: kcmconfigs/configactions.cpp:80 kcmconfigs/configactions.cpp:213
+msgid "Select external command"
+msgstr "Välj externt kommando"
+
+# qoptiondlgdata.cpp:164
+#: kcmconfigs/configactions.cpp:84
+#, fuzzy
+msgid "Minimi&ze"
+msgstr "Minimera"
+
+# qoptiondlgdata.cpp:163
+#: kcmconfigs/configactions.cpp:85
+msgid "Minimize window if no new mail"
+msgstr "Minimera fönstret om inga nya brev"
+
+# qoptiondlgdata.cpp:158
+#: kcmconfigs/configactions.cpp:87
+msgid "Terminate"
+msgstr "Avsluta"
+
+# qoptiondlgdata.cpp:157
+#: kcmconfigs/configactions.cpp:88
+msgid "Terminate kshowmail if no new mail"
+msgstr "Avsluta Kshowmail om inga nya brev"
+
+#: kcmconfigs/configactions.cpp:203
+#, fuzzy
+msgid "Sound files (*.wav, *.ogg)"
+msgstr "Wav-filer (*.wav)"
+
+#: kcmconfigs/configactions.cpp:203
+msgid "All files (*)"
+msgstr "Alla filer (*)"
+
+# qoptiondlg.cpp:166
+#: kcmconfigs/configactions.cpp:203
+msgid "Select Sound File"
+msgstr "Välj ljudfil"
+
+#: kcmconfigs/configspamcheck.cpp:37
+msgid ""
+"KShowmail uses SpamAssassin to check the mails for spam. You have to "
+"install, configure and start the SpamAssassin daemon, before you can use "
+"this service."
+msgstr ""
+
+# qoptiondlgdata.cpp:152
+#: kcmconfigs/configspamcheck.cpp:48
+#, fuzzy
+msgid "Action for Spam"
+msgstr "Åtgärd om inga brev"
+
+#: kcmconfigs/configspamcheck.cpp:54
+msgid "Choose the action for spam mails."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:60 kcmconfigs/senderlistdialog.cpp:59
+#: kcmconfigs/filtersetupitem.cpp:255 kcmconfigs/filtersetupdialog.cpp:92
+#: kcmconfigs/configfilter.cpp:130
+msgid "Mark"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:71 kcmconfigs/filtersetupdialog.cpp:104
+#: kcmconfigs/configfilter.cpp:143
+msgid "Choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:190 kcmconfigs/filtersetupdialog.cpp:442
+#: kcmconfigs/configfilter.cpp:603
+msgid "Mailbox Select"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:226
+msgid "SpamAssassin is running."
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:226 kcmconfigs/configspamcheck.cpp:231
+msgid "Check for SpamAssassin"
+msgstr ""
+
+#: kcmconfigs/configspamcheck.cpp:231
+msgid "SpamAssassin is not running."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:27
+msgid "Press to choose the mail directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:32
+msgid ""
+"Please choose the path to the mailboxes.\n"
+"KShowmail supports only MailDir boxes."
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:47
+msgid "Please choose the mailbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:65
+msgid "Choose the mailbox directory"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:134
+msgid "Inbox"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:136
+msgid "Outbox"
+msgstr ""
+
+# kshowmailview.cpp:44
+#: kcmconfigs/mailboxwizard.cpp:138
+#, fuzzy
+msgid "Drafts"
+msgstr "Datum"
+
+#: kcmconfigs/mailboxwizard.cpp:140
+msgid "sent-mail"
+msgstr ""
+
+#: kcmconfigs/mailboxwizard.cpp:142
+msgid "Trash"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:39
+msgid "List"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:41
+msgid ""
+"A mail whose sender is listed here will pass the filter.\n"
+"A mail will be accepted, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is accepted by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:43
+msgid ""
+"A mail whose sender is listed here will be hold up by the filter.\n"
+"A mail will be stopped, if its From line incloses a list entry.\n"
+"E.g. a line of\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de> is filtered by the entries\n"
+"Ulrich Weigelt\n"
+"ulrich.weigelt@gmx.de\n"
+"\"Ulrich Weigelt\" <ulrich.weigelt@gmx.de>"
+msgstr ""
+
+# kshowmail.cpp:1475
+#: kcmconfigs/senderlistdialog.cpp:53 kcmconfigs/configfilter.cpp:72
+#, fuzzy
+msgid "Action"
+msgstr "&Åtgärder"
+
+#: kcmconfigs/senderlistdialog.cpp:64
+msgid "The mails will be deleted."
+msgstr ""
+
+#: kcmconfigs/senderlistdialog.cpp:65
+msgid "The mails will be marked."
+msgstr ""
+
+#: kcmconfigs/filtersetupitem.cpp:253 kcmconfigs/filtersetupdialog.cpp:90
+#: kcmconfigs/configfilter.cpp:128
+#, fuzzy
+msgid "Show"
+msgstr "KshowmailDok"
+
+#: kcmconfigs/filtersetupitem.cpp:256
+msgid "Move to %1"
+msgstr ""
+
+# qoptiondlgdata.cpp:152
+#: kcmconfigs/filtersetupitem.cpp:258
+#, fuzzy
+msgid "Check for spam"
+msgstr "Åtgärd om inga brev"
+
+#: kcmconfigs/filtersetupitem.cpp:259
+msgid "Unknown action"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:37
+msgid "&Timers"
+msgstr ""
+
+# qoptiondlgdata.cpp:107
+#: kcmconfigs/configgeneral.cpp:44
+#, fuzzy
+msgid "Confirm Close"
+msgstr "Bekräfta borttagning"
+
+# qoptiondlgdata.cpp:106
+#: kcmconfigs/configgeneral.cpp:45
+#, fuzzy
+msgid "If checked, window close must be confirmed"
+msgstr "Om markerad måste borttagning av brev bekräftas"
+
+# qoptiondlgdata.cpp:107
+#: kcmconfigs/configgeneral.cpp:48
+msgid "Confirm delete"
+msgstr "Bekräfta borttagning"
+
+# qoptiondlgdata.cpp:106
+#: kcmconfigs/configgeneral.cpp:49
+msgid "If checked, message delete must be confirmed"
+msgstr "Om markerad måste borttagning av brev bekräftas"
+
+# qoptiondlgdata.cpp:147
+#: kcmconfigs/configgeneral.cpp:52
+#, fuzzy
+msgid "Start Minimi&zed"
+msgstr "Starta minimerad"
+
+# qoptiondlgdata.cpp:146
+#: kcmconfigs/configgeneral.cpp:53
+msgid "Application is started as icon"
+msgstr "Programmet startas som en ikon"
+
+#: kcmconfigs/configgeneral.cpp:56
+msgid "Close to tray"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:57
+msgid "Close button leaves the application running in tray"
+msgstr ""
+
+# qoptiondlgdata.cpp:164
+#: kcmconfigs/configgeneral.cpp:60
+#, fuzzy
+msgid "Minimize to tray"
+msgstr "Minimera"
+
+#: kcmconfigs/configgeneral.cpp:61
+msgid "Minimizes to the tray rather than to the taskbar"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:64
+msgid "Show Connection Errors during refresh"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:65
+msgid ""
+"If a connection error occurs during refresh (e.g. unknown server), an error "
+"message will be shown. During other actions, this error always will be shown"
+msgstr ""
+
+# qoptiondlgdata.cpp:60
+#: kcmconfigs/configgeneral.cpp:68
+#, fuzzy
+msgid "&Keep mail as new"
+msgstr "Behåll breven som nya"
+
+# qoptiondlgdata.cpp:59
+#: kcmconfigs/configgeneral.cpp:69
+msgid "Keep mail as new until termination"
+msgstr "Behåll brev som nya tills avslut"
+
+# qoptiondlgdata.cpp:113
+#: kcmconfigs/configgeneral.cpp:72
+msgid "Initial Timer:"
+msgstr "Initial timer:"
+
+#: kcmconfigs/configgeneral.cpp:73 kcmconfigs/configgeneral.cpp:91
+msgid "[Seconds]"
+msgstr ""
+
+# qoptiondlgdata.cpp:112 qoptiondlgdata.cpp:118
+#: kcmconfigs/configgeneral.cpp:75 kcmconfigs/configgeneral.cpp:76
+msgid "Seconds until first automatic logon (0 = no automatic)"
+msgstr "Sekunder till första automatiska inloggningen (0 = ingen automatik)"
+
+# qoptiondlgdata.cpp:125
+#: kcmconfigs/configgeneral.cpp:81
+msgid "Interval Timer:"
+msgstr "Intervall-timer:"
+
+#: kcmconfigs/configgeneral.cpp:82
+msgid "[Minutes]"
+msgstr ""
+
+# qoptiondlgdata.cpp:124 qoptiondlgdata.cpp:130
+#: kcmconfigs/configgeneral.cpp:84 kcmconfigs/configgeneral.cpp:85
+msgid "Minutes between automatic logon (0 = no automatic)"
+msgstr "Minuter mellan automatisk inloggning (0 = ingen automatik)"
+
+#: kcmconfigs/configgeneral.cpp:90
+msgid "Timeout:"
+msgstr ""
+
+#: kcmconfigs/configgeneral.cpp:93 kcmconfigs/configgeneral.cpp:94
+msgid "Seconds until a server connect will be canceled"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:23
+#, fuzzy
+msgid "New filter"
+msgstr "Nytt brev"
+
+#: kcmconfigs/filtersetupdialog.cpp:25
+msgid "Edit filter"
+msgstr ""
+
+# qoptiondlgdata.cpp:136
+#: kcmconfigs/filtersetupdialog.cpp:34
+#, fuzzy
+msgid "Name:"
+msgstr "Namn:"
+
+#: kcmconfigs/filtersetupdialog.cpp:40
+#, fuzzy
+msgid "Filter Criterias"
+msgstr "Underrättelsedialog"
+
+#: kcmconfigs/filtersetupdialog.cpp:44
+#, fuzzy
+msgid "Filter Action"
+msgstr "Underrättelsedialog"
+
+#: kcmconfigs/filtersetupdialog.cpp:52
+msgid "Match all of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:53
+msgid "Match any of the following"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+#, fuzzy
+msgid "More"
+msgstr "Ignorera"
+
+#: kcmconfigs/filtersetupdialog.cpp:73
+msgid "Add a further criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Fewer"
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:74
+msgid "Remove the last criteria."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:86
+msgid "Choose the action for all mails which are filtered by this filter."
+msgstr ""
+
+#: kcmconfigs/filtersetupdialog.cpp:94 kcmconfigs/configfilter.cpp:132
+msgid "Spamcheck"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:33
+msgid "Activate Filter"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:35
+msgid "Check to activate the header filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:41
+msgid "First Check: Sender Lists"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:45
+msgid "Whitelist"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:46
+msgid ""
+"Click here to edit the list of senders whose mails shall pass the filter."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:52
+msgid "Blacklist"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:53
+msgid ""
+"Click here to edit the list of senders whose mails shall be deleted or "
+"marked."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:65
+msgid "Second Check: Filters"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:70
+msgid "No."
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:86
+msgid "Moves the selected filter at the top"
+msgstr ""
+
+# qoptiondlgdata.cpp:48
+#: kcmconfigs/configfilter.cpp:87
+#, fuzzy
+msgid "Moves the selected filter up"
+msgstr "Spela upp den valda ljudfilen"
+
+# qoptiondlgdata.cpp:48
+#: kcmconfigs/configfilter.cpp:88
+#, fuzzy
+msgid "Moves the selected filter down"
+msgstr "Spela upp den valda ljudfilen"
+
+#: kcmconfigs/configfilter.cpp:89
+msgid "Moves the selected filter at the bottm"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:116
+msgid "Third Check: Action for all others"
+msgstr ""
+
+#: kcmconfigs/configfilter.cpp:123
+msgid ""
+"Choose the action for all mails which are not filtered by the steps before."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:17 kcmconfigs/kwalletaccess.cpp:86
+#: kwalletaccess.cpp:17 kwalletaccess.cpp:86
+msgid "KWallet is not available."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:25 kcmconfigs/kwalletaccess.cpp:94
+#: kwalletaccess.cpp:25 kwalletaccess.cpp:94
+msgid "Could not get wallet name for network datas from KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:45 kcmconfigs/kwalletaccess.cpp:114
+#: kwalletaccess.cpp:45 kwalletaccess.cpp:114
+msgid "Could not open KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:56 kwalletaccess.cpp:56
+msgid "Could not create folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:65 kcmconfigs/kwalletaccess.cpp:122
+#: kwalletaccess.cpp:65 kwalletaccess.cpp:122
+msgid "Could not open folder for KShowmail in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:73 kwalletaccess.cpp:73
+msgid "Could not save password in KWallet."
+msgstr ""
+
+#: kcmconfigs/kwalletaccess.cpp:132 kwalletaccess.cpp:132
+msgid "Could not get password of account %1 from KWallet."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:182
+msgid "Please enter an account name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:228
+msgid "There is already an account named %1. Please choose another name."
+msgstr ""
+
+#: kcmconfigs/accountsetupdialog.cpp:241
+msgid ""
+"You have changed the account name. The account will lose all downloaded mail "
+"headers. Please perform a refresh."
+msgstr ""
+
+#: filterlog.cpp:128
+msgid "Could not save the filter log."
+msgstr ""
+
+# kshowmail.cpp:588
+#: showrecordelem.cpp:160
+msgid "new"
+msgstr "nytt"
+
+# kshowmail.cpp:585
+#: showrecordelem.cpp:162
+msgid "old"
+msgstr "gammalt"
+
+#: filterlogview.cpp:21
+msgid "Filter Log View"
+msgstr ""
+
+#: filterlogview.cpp:31
+msgid "Deleted Mails:"
+msgstr ""
+
+# kshowmailview.cpp:42
+#: filterlogview.cpp:36 filterlogview.cpp:63
+#, fuzzy
+msgid "Sender"
+msgstr "Avsändare:"
+
+#: filterlogview.cpp:49
+msgid "Clear the list of deleted mails"
+msgstr ""
+
+#: filterlogview.cpp:58
+msgid "Moved Mails:"
+msgstr ""
+
+#: filterlogview.cpp:65
+msgid "Moved To"
+msgstr ""
+
+#: filterlogview.cpp:78
+msgid "Clear the list of moved mails"
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid ""
+"Thank You for using KShowmail.\n"
+"Please use the feedback dialog to tell us your experience with this program."
+msgstr ""
+
+#: kshowmail.cpp:75
+msgid "Welcome"
+msgstr ""
+
+#: kshowmail.cpp:102
+msgid "Autorefresh: %1"
+msgstr ""
+
+# kshowmail.cpp:122
+#: kshowmail.cpp:132
+msgid "&Refresh messages"
+msgstr "&Uppdatera brev"
+
+# kshowmail.cpp:125
+#: kshowmail.cpp:133
+msgid "Show &header of highlighted messages"
+msgstr "Visa de valda brevens &huvud"
+
+# kshowmail.cpp:126
+#: kshowmail.cpp:134
+msgid "Show &complete highlighted messages"
+msgstr "Visa &hela de valda breven"
+
+# kshowmail.cpp:127
+#: kshowmail.cpp:135
+msgid "&Delete highlighted messages"
+msgstr "Ta bo&rt de valda breven"
+
+#: kshowmail.cpp:136
+msgid "S&top current transfer"
+msgstr ""
+
+#: kshowmail.cpp:137
+msgid "Show Filter Log"
+msgstr ""
+
+#: kshowmail.cpp:138
+msgid "Add sender to whitelist"
+msgstr ""
+
+#: kshowmail.cpp:139
+msgid "Add sender to blacklist"
+msgstr ""
+
+#: kshowmail.cpp:150
+msgid "Send &Feedback Mail"
+msgstr ""
+
+# kshowmail.cpp:177 qoptiondlgdata.cpp:70
+#: kshowmail.cpp:153
+msgid "Setup &account"
+msgstr "St&äll in konton"
+
+#: kshowmail.cpp:159 kshowmail.cpp:543 kshowmail.cpp:559 kshowmail.cpp:644
+msgid "Ready."
+msgstr "Klar"
+
+#: kshowmail.cpp:165
+msgid ""
+"Shows the number of deleted, moved or ignored mails by the filter.\n"
+"The positions denotes:\n"
+"by last refresh / since application start / listed by the log"
+msgstr ""
+
+#: kshowmail.cpp:326
+msgid "Refreshing ..."
+msgstr ""
+
+#: kshowmail.cpp:363
+msgid "Job was stopped"
+msgstr ""
+
+# kshowmail.cpp:623
+#: kshowmail.cpp:392
+msgid "%1 message(s) with a total of %2 bytes are waiting"
+msgstr "%1 brev på totalt %2 bytes väntar"
+
+#: kshowmail.cpp:418
+msgid "Do you want to delete these mails?"
+msgstr ""
+
+#: kshowmail.cpp:418
+msgid "Delete?"
+msgstr ""
+
+#: kshowmail.cpp:428
+msgid "Deleting Mail(s) ..."
+msgstr ""
+
+#: kshowmail.cpp:469
+msgid "Downloading ..."
+msgstr ""
+
+#: kshowmail.cpp:491
+msgid "Last Refresh: %1"
+msgstr ""
+
+# commanddlg.cpp:189
+#: kshowmail.cpp:523
+#, fuzzy
+msgid ""
+"KShowmail will be closed.\n"
+"Are you sure?"
+msgstr ""
+"Kommandot %1 kommer att tas bort.\n"
+"Är du säker?"
+
+#: kshowmail.cpp:805
+msgid "Filter: Deleted: %1/%2/%3; Moved: %4/%5/%6; Ignored: %7"
+msgstr ""
+
+# commanddlgdata.cpp:47
+#, fuzzy
+#~ msgid "Execute user commands"
+#~ msgstr "Ta bort användarkommando"
+
+# qpassworddlgdata.cpp:17 qserverdlgdata.cpp:33
+#, fuzzy
+#~ msgid "Pass"
+#~ msgstr "Lösenord"
+
+# qoptiondlg.cpp:112
+#, fuzzy
+#~ msgid ""
+#~ "Filter %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Kontot %1 kommer att tas bort.\n"
+#~ "Är du säker?"
+
+# kshowmail.cpp:177 qoptiondlgdata.cpp:70
+#, fuzzy
+#~ msgid "Setup &filters"
+#~ msgstr "St&äll in konton"
+
+# commanddlg.cpp:189
+#~ msgid ""
+#~ "Command %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Kommandot %1 kommer att tas bort.\n"
+#~ "Är du säker?"
+
+# qoptiondlg.cpp:112
+#~ msgid ""
+#~ "Account %1 will be deleted.\n"
+#~ "Are you sure ?"
+#~ msgstr ""
+#~ "Kontot %1 kommer att tas bort.\n"
+#~ "Är du säker?"
+
+# qoptiondlg.cpp:150
+#~ msgid ""
+#~ "Password will be stored as scrambled text.\n"
+#~ "It might be possible to decipher it.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Lösenordet kommer att lagras som förvrängd text.\n"
+#~ "Det kan vara möjligt att dekryptera det.\n"
+#~ "Är du säker?\n"
+
+# kshowmail.cpp:178
+#~ msgid "Message"
+#~ msgstr "Brev"
+
+# kshowmail.cpp:128
+#, fuzzy
+#~ msgid "Send reply mail"
+#~ msgstr "&Skicka klagomål"
+
+# commanddlgdata.cpp:20
+#~ msgid "User command"
+#~ msgstr "Användarkommando"
+
+# commandentrydata.cpp:24
+#~ msgid "Menu Entry"
+#~ msgstr "Menypost"
+
+# commandentrydata.cpp:34
+#~ msgid "Press button to select command path"
+#~ msgstr "Tryck på knapp för att välja kommandosökväg"
+
+# commandentrydata.cpp:56 qoptiondlgdata.cpp:49
+#~ msgid "Test"
+#~ msgstr "Test"
+
+# commandentrydata.cpp:55
+#~ msgid "Execute the command immediatly"
+#~ msgstr "Utför kommandot omedelbart"
+
+# commandentrydata.cpp:29
+#~ msgid "Enter menu entry name"
+#~ msgstr "Välj menypostens namn"
+
+# commandentrydata.cpp:40
+#~ msgid ""
+#~ "<qt>Enter path to selected command and arguments<br>&lt;user&gt;, &lt;"
+#~ "server&gt;, &lt;passwd&gt;, &lt;header&gt; and &lt;body&gt; may be used "
+#~ "as arguments</qt>"
+#~ msgstr ""
+#~ "<qt>Ange sökväg till valt kommando och argument<br>&lt;user&gt;, &lt;"
+#~ "server&gt;, &lt;passwd&gt;, &lt;header&gt; och &lt;body&gt; kan användas "
+#~ "som argument</qt>"
+
+# qoptiondlgdata.cpp:54
+#~ msgid "Server Options"
+#~ msgstr "Serverinställningar"
+
+# qpassworddlgdata.cpp:17 qserverdlgdata.cpp:33
+#~ msgid "Password:"
+#~ msgstr "Lösenord:"
+
+# qserverdlg.cpp:73
+#~ msgid "The account must have a name"
+#~ msgstr "Kontot måste ha ett namn"
+
+# qserverdlg.cpp:83
+#~ msgid "This account is already present"
+#~ msgstr "Det här kontot finns redan"
+
+# commandentrydata.cpp:35
+#~ msgid "Command"
+#~ msgstr "Kommando"
+
+# commanddlgdata.cpp:20
+#~ msgid "User commands"
+#~ msgstr "Användarkommandon"
+
+# commanddlgdata.cpp:29
+#~ msgid "Add user command"
+#~ msgstr "Lägg till användarkommando"
+
+# commanddlgdata.cpp:35
+#~ msgid "Edit user command"
+#~ msgstr "Redigera användarkommando"
+
+# commanddlgdata.cpp:41
+#~ msgid "Copy user command"
+#~ msgstr "Kopiera användarkommando"
+
+# commanddlgdata.cpp:47
+#~ msgid "Delete user command"
+#~ msgstr "Ta bort användarkommando"
+
+# qoptiondlgdata.cpp:65
+#~ msgid "Accounts"
+#~ msgstr "Konton"
+
+# kshowmail.cpp:177 qoptiondlgdata.cpp:70
+#~ msgid "Delete account"
+#~ msgstr "Ta bort konto"
+
+# qserverdlg.cpp:40
+#~ msgid "copy account"
+#~ msgstr "Kopiera konto"
+
+# qserverdlg.cpp:40
+#~ msgid "Add new account"
+#~ msgstr "Lägg till nytt konto"
+
+# qoptiondlgdata.cpp:54
+#, fuzzy
+#~ msgid "&General Options"
+#~ msgstr "Allmänna inställningar"
+
+# qoptiondlgdata.cpp:100
+#~ msgid "Save password (not recommended !)"
+#~ msgstr "Spara lösenord (rekommenderas ej!)"
+
+# kshowmailview.cpp:45
+#~ msgid "Max Size:"
+#~ msgstr "Max storlek:"
+
+#~ msgid "Maximal size of downloaded mail body in kilobytes"
+#~ msgstr "Max storlek på nedladdade brevkroppar i kibytes"
+
+# qoptiondlgdata.cpp:54
+#, fuzzy
+#~ msgid "Display Options"
+#~ msgstr "Allmänna inställningar"
+
+#, fuzzy
+#~ msgid "E&xternal Program"
+#~ msgstr "Externt program"
+
+# qoptiondlgdata.cpp:38
+#~ msgid "Sound File:"
+#~ msgstr "Ljudfil:"
+
+# qoptiondlgdata.cpp:43
+#~ msgid "Enter sound file"
+#~ msgstr "Ange ljudfil"
+
+# kshowmail.cpp:177 qoptiondlgdata.cpp:70
+#~ msgid "Setup &accounts"
+#~ msgstr "St&äll in konton"
+
+# commanddlgdata.cpp:20
+#~ msgid "Setup &commands"
+#~ msgstr "Ställ in &kommandon"
+
+#~ msgid "&Setup"
+#~ msgstr "&Inställningar"
+
+# commandentry.cpp:88
+#~ msgid "Select Command"
+#~ msgstr "Välj kommando"
+
+# kshowmail.cpp:128
+#, fuzzy
+#~ msgid "Send complain mails"
+#~ msgstr "&Skicka klagomål"
+
+# kshowmail.cpp:122
+#, fuzzy
+#~ msgid "Forced refresh of all messages by Shift-F5"
+#~ msgstr "&Uppdatera brev"
+
+# kshowmail.cpp:177 qoptiondlgdata.cpp:70
+#~ msgid "Select account"
+#~ msgstr "Välj konto"
+
+# kshowmail.cpp:122
+#, fuzzy
+#~ msgid "Refresh &all messages"
+#~ msgstr "&Uppdatera brev"
+
+# kshowmail.cpp:128
+#~ msgid "&Send complain mail"
+#~ msgstr "&Skicka klagomål"
+
+# kshowmail.cpp:466
+#~ msgid "Logging in to server %1 ..."
+#~ msgstr "Loggar in på server %1..."
+
+# kshowmail.cpp:509
+# ycp-format
+#~ msgid "connection to pop3 server %1 established successfully"
+#~ msgstr "uppkoppling till pop3-server %1 utfördes"
+
+#~ msgid "Timeout: job was killed"
+#~ msgstr "Timeout: jobbet avslutades"
+
+# kshowmail.cpp:552
+#~ msgid "getting message %1 of %2 ..."
+#~ msgstr "hämtar brev %1 av %2..."
+
+# kshowmail.cpp:660
+#~ msgid "Deleting highlighted messages..."
+#~ msgstr "Tar bort valda brev..."
+
+# kshowmail.cpp:710
+#~ msgid ""
+#~ "Message %1 at %2 will be deleted.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Brevet %1 på %2 kommer att tas bort.\n"
+#~ "Är du säker?\n"
+
+# kshowmail.cpp:713 kshowmail.cpp:814
+#~ msgid "Yes all"
+#~ msgstr "Ja, alla"
+
+# kshowmail.cpp:763
+#~ msgid "Sending complain mails..."
+#~ msgstr "Skickar klagomålsbrev..."
+
+# kshowmail.cpp:811
+#, fuzzy
+#~ msgid ""
+#~ "Complain mail will be sent for message %1 at %2.\n"
+#~ "Are you sure ?\n"
+#~ msgstr ""
+#~ "Klagomålsbrev kommer att skickas för %1 på %2.\n"
+#~ "Är du säker?\n"
+
+#~ msgid "Header %1 at %2"
+#~ msgstr "Huvud %1 på %2"
+
+# kshowmail.cpp:180
+#~ msgid "Getting complete highlighted messages..."
+#~ msgstr "Hämtar färdiga valda brev..."
+
+#~ msgid "Message %1 at %2"
+#~ msgstr "Brev %1 på %2"
+
+#~ msgid "OptionDialog"
+#~ msgstr "Alternativdialog"
+
+#~ msgid "KShowMailApp"
+#~ msgstr "Kshowmailprog"
+
+# commandentrydata.cpp:35
+#~ msgid "CommandDialog"
+#~ msgstr "Kommandodialog"
+
+#~ msgid "KshowmailView"
+#~ msgstr "KshowmailVy"
+
+#~ msgid "KShowMailDock"
+#~ msgstr "KshowmailDok"
+
+#~ msgid "KshowmailDoc"
+#~ msgstr "KshowmailDok"
+
+# commandentrydata.cpp:35
+#~ msgid "CommandEntryDialog"
+#~ msgstr "Kommandopostdialog"
+
+#~ msgid "EditDialog"
+#~ msgstr "Redigeradialog"
+
+#~ msgid "AlertDialog"
+#~ msgstr "Underrättelsedialog"
+
+# qserverdlgdata.cpp:23
+#~ msgid "ServerDialog"
+#~ msgstr "Serverdialog"
+
+# commandentrydata.cpp:40
+#, fuzzy
+#~ msgid ""
+#~ "<qt>Enter path to selected command and arguments<br>&lt;user&gt;, "
+#~ "<server>, \\<passwd\\>, \\<header\\> and \\<body\\> may be used as "
+#~ "arguments</qt>"
+#~ msgstr ""
+#~ "Ange sökväg till valt kommando och argument\n"
+#~ "<user>, <server>, <passwd>, <header> och <body> kan användas som argument"
+
+# commandentrydata.cpp:40
+#~ msgid ""
+#~ "Enter path to selected command and arguments\\n<user>, <server>, "
+#~ "<passwd>, <header> and <body> may be used as arguments"
+#~ msgstr ""
+#~ "Ange sökväg till valt kommando och argument\\n<user>, <server>, <passwd>, "
+#~ "<header> och <body> kan användas som argument"
+
+#, fuzzy
+#~ msgid "Ignore case"
+#~ msgstr "Ignorera"
+
+# commandentrydata.cpp:35
+#~ msgid "CommandDlg"
+#~ msgstr "Kommandodialog"
+
+# commandentrydata.cpp:35
+#~ msgid "CommandEntryDlg"
+#~ msgstr "Kommandopostdaialog"
+
+#~ msgid "OptionDlg"
+#~ msgstr "Alternativdialog"
+
+# qserverdlgdata.cpp:23
+#~ msgid "ServerDlg"
+#~ msgstr "Serverdialog"
+
+#~ msgid "EditDlg"
+#~ msgstr "Redigeradialog"
+
+# qpassworddlgdata.cpp:17 qserverdlgdata.cpp:33
+#~ msgid "PasswordDlg"
+#~ msgstr "Lösenordsdialog"
+
+# qpassworddlgdata.cpp:17 qserverdlgdata.cpp:33
+#~ msgid "PasswordDialog"
+#~ msgstr "Lösenordsdialog"
diff --git a/sounds/Makefile.am b/sounds/Makefile.am
new file mode 100644
index 0000000..c1836a1
--- /dev/null
+++ b/sounds/Makefile.am
@@ -0,0 +1,2 @@
+soundsdir = $(kde_datadir)/kshowmail/sounds
+sounds_DATA = neuepost.wav newmail.wav
diff --git a/sounds/neuepost.wav b/sounds/neuepost.wav
new file mode 100644
index 0000000..d20b90e
--- /dev/null
+++ b/sounds/neuepost.wav
Binary files differ
diff --git a/sounds/newmail.wav b/sounds/newmail.wav
new file mode 100644
index 0000000..4e598ce
--- /dev/null
+++ b/sounds/newmail.wav
Binary files differ
diff --git a/stamp-h.in b/stamp-h.in
new file mode 100644
index 0000000..9788f70
--- /dev/null
+++ b/stamp-h.in
@@ -0,0 +1 @@
+timestamp
diff --git a/subdirs b/subdirs
new file mode 100644
index 0000000..29c9f9e
--- /dev/null
+++ b/subdirs
@@ -0,0 +1,5 @@
+doc
+kshowmail
+pics
+po
+sounds