00001
00002
00003
00004 #include "globalsettings_base.h"
00005
00006 #include <klocale.h>
00007
00008 #include <kstaticdeleter.h>
00009
00010 GlobalSettingsBase *GlobalSettingsBase::mSelf = 0;
00011 static KStaticDeleter<GlobalSettingsBase> staticGlobalSettingsBaseDeleter;
00012
00013 GlobalSettingsBase *GlobalSettingsBase::self()
00014 {
00015 if ( !mSelf ) {
00016 staticGlobalSettingsBaseDeleter.setObject( mSelf, new GlobalSettingsBase() );
00017 mSelf->readConfig();
00018 }
00019
00020 return mSelf;
00021 }
00022
00023 GlobalSettingsBase::GlobalSettingsBase( )
00024 : KConfigSkeleton( QString::fromLatin1( "kmailrc" ) )
00025 {
00026 mSelf = this;
00027 setCurrentGroup( QString::fromLatin1( "Behaviour" ) );
00028
00029 mDelayedMarkAsReadItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "DelayedMarkAsRead" ), mDelayedMarkAsRead, true );
00030 mDelayedMarkAsReadItem->setLabel( i18n("DelayedMarkAsRead") );
00031 addItem( mDelayedMarkAsReadItem, QString::fromLatin1( "DelayedMarkAsRead" ) );
00032 mDelayedMarkTimeItem = new KConfigSkeleton::ItemUInt( currentGroup(), QString::fromLatin1( "DelayedMarkTime" ), mDelayedMarkTime, 0 );
00033 mDelayedMarkTimeItem->setLabel( i18n("DelayedMarkTime") );
00034 addItem( mDelayedMarkTimeItem, QString::fromLatin1( "DelayedMarkTime" ) );
00035 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesActionEnterFolder;
00036 {
00037 KConfigSkeleton::ItemEnum::Choice choice;
00038 choice.name = QString::fromLatin1( "SelectFirstNew" );
00039 valuesActionEnterFolder.append( choice );
00040 }
00041 {
00042 KConfigSkeleton::ItemEnum::Choice choice;
00043 choice.name = QString::fromLatin1( "SelectLastNew" );
00044 valuesActionEnterFolder.append( choice );
00045 }
00046 {
00047 KConfigSkeleton::ItemEnum::Choice choice;
00048 choice.name = QString::fromLatin1( "SelectFirstUnreadNew" );
00049 valuesActionEnterFolder.append( choice );
00050 }
00051 {
00052 KConfigSkeleton::ItemEnum::Choice choice;
00053 choice.name = QString::fromLatin1( "SelectLastUnreadNew" );
00054 valuesActionEnterFolder.append( choice );
00055 }
00056 {
00057 KConfigSkeleton::ItemEnum::Choice choice;
00058 choice.name = QString::fromLatin1( "SelectLastSelected" );
00059 valuesActionEnterFolder.append( choice );
00060 }
00061 {
00062 KConfigSkeleton::ItemEnum::Choice choice;
00063 choice.name = QString::fromLatin1( "SelectNewest" );
00064 valuesActionEnterFolder.append( choice );
00065 }
00066 {
00067 KConfigSkeleton::ItemEnum::Choice choice;
00068 choice.name = QString::fromLatin1( "SelectOldest" );
00069 valuesActionEnterFolder.append( choice );
00070 }
00071 mActionEnterFolderItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "ActionEnterFolder" ), mActionEnterFolder, valuesActionEnterFolder, EnumActionEnterFolder::SelectLastSelected );
00072 mActionEnterFolderItem->setLabel( i18n("ActionEnterFolder") );
00073 addItem( mActionEnterFolderItem, QString::fromLatin1( "ActionEnterFolder" ) );
00074 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesNetworkState;
00075 {
00076 KConfigSkeleton::ItemEnum::Choice choice;
00077 choice.name = QString::fromLatin1( "Online" );
00078 valuesNetworkState.append( choice );
00079 }
00080 {
00081 KConfigSkeleton::ItemEnum::Choice choice;
00082 choice.name = QString::fromLatin1( "Offline" );
00083 valuesNetworkState.append( choice );
00084 }
00085 mNetworkStateItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "NetworkState" ), mNetworkState, valuesNetworkState, EnumNetworkState::Online );
00086 mNetworkStateItem->setLabel( i18n("NetworkState") );
00087 addItem( mNetworkStateItem, QString::fromLatin1( "NetworkState" ) );
00088 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesLoopOnGotoUnread;
00089 {
00090 KConfigSkeleton::ItemEnum::Choice choice;
00091 choice.name = QString::fromLatin1( "DontLoop" );
00092 valuesLoopOnGotoUnread.append( choice );
00093 }
00094 {
00095 KConfigSkeleton::ItemEnum::Choice choice;
00096 choice.name = QString::fromLatin1( "LoopInCurrentFolder" );
00097 valuesLoopOnGotoUnread.append( choice );
00098 }
00099 {
00100 KConfigSkeleton::ItemEnum::Choice choice;
00101 choice.name = QString::fromLatin1( "LoopInAllFolders" );
00102 valuesLoopOnGotoUnread.append( choice );
00103 }
00104 mLoopOnGotoUnreadItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "LoopOnGotoUnread" ), mLoopOnGotoUnread, valuesLoopOnGotoUnread, EnumLoopOnGotoUnread::DontLoop );
00105 mLoopOnGotoUnreadItem->setLabel( i18n("LoopOnGotoUnread") );
00106 addItem( mLoopOnGotoUnreadItem, QString::fromLatin1( "LoopOnGotoUnread" ) );
00107 mShowPopupAfterDnDItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowPopupAfterDnD" ), mShowPopupAfterDnD, true );
00108 mShowPopupAfterDnDItem->setLabel( i18n("ShowPopupAfterDnD") );
00109 addItem( mShowPopupAfterDnDItem, QString::fromLatin1( "ShowPopupAfterDnD" ) );
00110 mExcludeImportantMailFromExpiryItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ExcludeImportantMailFromExpiry" ), mExcludeImportantMailFromExpiry, true );
00111 mExcludeImportantMailFromExpiryItem->setLabel( i18n("ExcludeImportantMailFromExpiry") );
00112 addItem( mExcludeImportantMailFromExpiryItem, QString::fromLatin1( "ExcludeImportantMailFromExpiry" ) );
00113 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesSendOnCheck;
00114 {
00115 KConfigSkeleton::ItemEnum::Choice choice;
00116 choice.name = QString::fromLatin1( "DontSendOnCheck" );
00117 valuesSendOnCheck.append( choice );
00118 }
00119 {
00120 KConfigSkeleton::ItemEnum::Choice choice;
00121 choice.name = QString::fromLatin1( "SendOnManualChecks" );
00122 valuesSendOnCheck.append( choice );
00123 }
00124 {
00125 KConfigSkeleton::ItemEnum::Choice choice;
00126 choice.name = QString::fromLatin1( "SendOnAllChecks" );
00127 valuesSendOnCheck.append( choice );
00128 }
00129 mSendOnCheckItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "SendOnCheck" ), mSendOnCheck, valuesSendOnCheck, EnumSendOnCheck::DontSendOnCheck );
00130 mSendOnCheckItem->setLabel( i18n("Send queued mail on mail check") );
00131 mSendOnCheckItem->setWhatsThis( i18n("<qt><p>Select whether you want KMail to send all messages in the outbox on manual or all mail checks, or whether you do not want messages to be sent automatically at all. </p></qt>") );
00132 addItem( mSendOnCheckItem, QString::fromLatin1( "SendOnCheck" ) );
00133 mAutoLostFoundMoveItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AutoLostFoundMove" ), mAutoLostFoundMove, true );
00134 mAutoLostFoundMoveItem->setLabel( i18n("Automatically move non-synced mails from folders with insufficient access rights") );
00135 mAutoLostFoundMoveItem->setWhatsThis( i18n("If there are new messages in a folder, which have not been uploaded to the server yet, but you do not have sufficient access rights on the folder now to upload them, these messages will automatically be moved into a lost and found folder.") );
00136 addItem( mAutoLostFoundMoveItem, QString::fromLatin1( "AutoLostFoundMove" ) );
00137 mAllowLocalFlagsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AllowLocalFlags" ), mAllowLocalFlags, false );
00138 mAllowLocalFlagsItem->setLabel( i18n("Allow local flags in read-only folders") );
00139 addItem( mAllowLocalFlagsItem, QString::fromLatin1( "AllowLocalFlags" ) );
00140
00141 setCurrentGroup( QString::fromLatin1( "ConfigurationDialogRestrictions" ) );
00142
00143 mMinimumCheckIntervalItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "MinimumCheckInterval" ), mMinimumCheckInterval, 1 );
00144 mMinimumCheckIntervalItem->setLabel( i18n("MinimumCheckInterval") );
00145 mMinimumCheckIntervalItem->setWhatsThis( i18n("This setting allows administrators to set a minimum delay between two mail checks.\"\n"
00146 " \"The user will not be able to choose a value smaller than the value set here.") );
00147 addItem( mMinimumCheckIntervalItem, QString::fromLatin1( "MinimumCheckInterval" ) );
00148
00149 setCurrentGroup( QString::fromLatin1( "FolderSelectionDialog" ) );
00150
00151 mLastSelectedFolderItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "LastSelectedFolder" ), mLastSelectedFolder, QString::fromLatin1( "inbox" ) );
00152 mLastSelectedFolderItem->setLabel( i18n("LastSelectedFolder") );
00153 mLastSelectedFolderItem->setWhatsThis( i18n("The most recently selected folder in the folder selection dialog.") );
00154 addItem( mLastSelectedFolderItem, QString::fromLatin1( "LastSelectedFolder" ) );
00155
00156 setCurrentGroup( QString::fromLatin1( "General" ) );
00157
00158 mMailLossDebugItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "mailLossDebug" ), mMailLossDebug, false );
00159 mMailLossDebugItem->setLabel( i18n("mailLossDebug") );
00160 addItem( mMailLossDebugItem, QString::fromLatin1( "mailLossDebug" ) );
00161 mDisregardUmaskItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "disregardUmask" ), mDisregardUmask, false );
00162 mDisregardUmaskItem->setLabel( i18n("Disregard the users umask setting and use \"read-write for the user only\" instead") );
00163 addItem( mDisregardUmaskItem, QString::fromLatin1( "disregardUmask" ) );
00164 mSystemTrayEnabledItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "SystemTrayEnabled" ), mSystemTrayEnabled, false );
00165 mSystemTrayEnabledItem->setLabel( i18n("Enable system tray icon") );
00166 addItem( mSystemTrayEnabledItem, QString::fromLatin1( "SystemTrayEnabled" ) );
00167 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesSystemTrayPolicy;
00168 {
00169 KConfigSkeleton::ItemEnum::Choice choice;
00170 choice.name = QString::fromLatin1( "ShowAlways" );
00171 valuesSystemTrayPolicy.append( choice );
00172 }
00173 {
00174 KConfigSkeleton::ItemEnum::Choice choice;
00175 choice.name = QString::fromLatin1( "ShowOnUnread" );
00176 valuesSystemTrayPolicy.append( choice );
00177 }
00178 mSystemTrayPolicyItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "SystemTrayPolicy" ), mSystemTrayPolicy, valuesSystemTrayPolicy, EnumSystemTrayPolicy::ShowOnUnread );
00179 mSystemTrayPolicyItem->setLabel( i18n("Policy for showing the system tray icon") );
00180 addItem( mSystemTrayPolicyItem, QString::fromLatin1( "SystemTrayPolicy" ) );
00181 mCloseDespiteSystemTrayItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "CloseDespiteSystemTray" ), mCloseDespiteSystemTray, false );
00182 mCloseDespiteSystemTrayItem->setLabel( i18n("Close the application when the mainwindow is closed, even if there is a system tray icon active.") );
00183 addItem( mCloseDespiteSystemTrayItem, QString::fromLatin1( "CloseDespiteSystemTray" ) );
00184 mVerboseNewMailNotificationItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "VerboseNewMailNotification" ), mVerboseNewMailNotification, true );
00185 mVerboseNewMailNotificationItem->setLabel( i18n("Verbose new mail notification") );
00186 mVerboseNewMailNotificationItem->setWhatsThis( i18n("If this option is enabled then for each folder the number of newly arrived messages is shown in the new mail notification; otherwise, you will only get a simple 'New mail arrived' message.") );
00187 addItem( mVerboseNewMailNotificationItem, QString::fromLatin1( "VerboseNewMailNotification" ) );
00188 mExternalEditorItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "external-editor" ), mExternalEditor, QString::fromLatin1( "kate %f" ) );
00189 mExternalEditorItem->setLabel( i18n("Specify e&ditor:") );
00190 addItem( mExternalEditorItem, QString::fromLatin1( "ExternalEditor" ) );
00191 mUseExternalEditorItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "use-external-editor" ), mUseExternalEditor, false );
00192 mUseExternalEditorItem->setLabel( i18n("Use e&xternal editor instead of composer") );
00193 addItem( mUseExternalEditorItem, QString::fromLatin1( "UseExternalEditor" ) );
00194 mCustHeaderCountItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "mime-header-count" ), mCustHeaderCount );
00195 mCustHeaderCountItem->setLabel( i18n("mime-header-count") );
00196 addItem( mCustHeaderCountItem, QString::fromLatin1( "CustHeaderCount" ) );
00197 mReplyCurrentLanguageItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "reply-current-language" ), mReplyCurrentLanguage, 0 );
00198 mReplyCurrentLanguageItem->setLabel( i18n("reply-current-language") );
00199 addItem( mReplyCurrentLanguageItem, QString::fromLatin1( "ReplyCurrentLanguage" ) );
00200 mReplyLanguagesCountItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "reply-languages" ), mReplyLanguagesCount, 0 );
00201 mReplyLanguagesCountItem->setMinValue(0);
00202 mReplyLanguagesCountItem->setLabel( i18n("reply-languages") );
00203 addItem( mReplyLanguagesCountItem, QString::fromLatin1( "ReplyLanguagesCount" ) );
00204 mFolderLoadingTimeoutItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "FolderLoadingTimeout" ), mFolderLoadingTimeout, 1000 );
00205 mFolderLoadingTimeoutItem->setLabel( i18n("FolderLoadingTimeout") );
00206 addItem( mFolderLoadingTimeoutItem, QString::fromLatin1( "FolderLoadingTimeout" ) );
00207 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesQuotaUnit;
00208 {
00209 KConfigSkeleton::ItemEnum::Choice choice;
00210 choice.name = QString::fromLatin1( "KB" );
00211 valuesQuotaUnit.append( choice );
00212 }
00213 {
00214 KConfigSkeleton::ItemEnum::Choice choice;
00215 choice.name = QString::fromLatin1( "MB" );
00216 valuesQuotaUnit.append( choice );
00217 }
00218 {
00219 KConfigSkeleton::ItemEnum::Choice choice;
00220 choice.name = QString::fromLatin1( "GB" );
00221 valuesQuotaUnit.append( choice );
00222 }
00223 mQuotaUnitItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "QuotaUnit" ), mQuotaUnit, valuesQuotaUnit, EnumQuotaUnit::MB );
00224 mQuotaUnitItem->setLabel( i18n("QuotaUnit") );
00225 addItem( mQuotaUnitItem, QString::fromLatin1( "QuotaUnit" ) );
00226 mCloseToQuotaThresholdItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "CloseToQuotaThreshold" ), mCloseToQuotaThreshold, 80 );
00227 mCloseToQuotaThresholdItem->setLabel( i18n("The threshold for when to warn the user that a folder is nearing its quota limit.") );
00228 addItem( mCloseToQuotaThresholdItem, QString::fromLatin1( "CloseToQuotaThreshold" ) );
00229
00230 setCurrentGroup( QString::fromLatin1( "Groupware" ) );
00231
00232 mGroupwareEnabledItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "GroupwareEnabled" ), mGroupwareEnabled, true );
00233 mGroupwareEnabledItem->setLabel( i18n("Enable groupware functionality") );
00234 addItem( mGroupwareEnabledItem, QString::fromLatin1( "GroupwareEnabled" ) );
00235 mLegacyMangleFromToHeadersItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "LegacyMangleFromToHeaders" ), mLegacyMangleFromToHeaders, false );
00236 mLegacyMangleFromToHeadersItem->setLabel( i18n("Mangle From:/To: headers in replies to replies") );
00237 mLegacyMangleFromToHeadersItem->setWhatsThis( i18n("Microsoft Outlook has a number of shortcomings in its implementation of the iCalendar standard; this option works around one of them. If you have problems with Outlook users not being able to get your replies, try setting this option.") );
00238 addItem( mLegacyMangleFromToHeadersItem, QString::fromLatin1( "LegacyMangleFromToHeaders" ) );
00239 mLegacyBodyInvitesItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "LegacyBodyInvites" ), mLegacyBodyInvites, false );
00240 mLegacyBodyInvitesItem->setLabel( i18n("Send groupware invitations in the mail body") );
00241 mLegacyBodyInvitesItem->setWhatsThis( i18n("Microsoft Outlook has a number of shortcomings in its implementation of the iCalendar standard; this option works around one of them. If you have problems with Outlook users not being able to get your invitations, try setting this option.") );
00242 addItem( mLegacyBodyInvitesItem, QString::fromLatin1( "LegacyBodyInvites" ) );
00243 mExchangeCompatibleInvitationsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ExchangeCompatibleInvitations" ), mExchangeCompatibleInvitations, true );
00244 mExchangeCompatibleInvitationsItem->setLabel( i18n("Exchange compatible invitations naming") );
00245 mExchangeCompatibleInvitationsItem->setWhatsThis( i18n("Microsoft Outlook, when used in combination with a Microsoft Exchange server, has a problem understanding standards-compliant groupware e-mail. Turn this option on to send groupware invitations in a way that Microsoft Exchange understands.") );
00246 addItem( mExchangeCompatibleInvitationsItem, QString::fromLatin1( "ExchangeCompatibleInvitations" ) );
00247 mOutlookCompatibleInvitationReplyCommentsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "OutlookCompatibleInvitationReplyComments" ), mOutlookCompatibleInvitationReplyComments, true );
00248 mOutlookCompatibleInvitationReplyCommentsItem->setLabel( i18n("Outlook compatible invitation reply comments") );
00249 mOutlookCompatibleInvitationReplyCommentsItem->setWhatsThis( i18n("When replying to invitations, send the reply comment in way that Microsoft Outlook understands.") );
00250 addItem( mOutlookCompatibleInvitationReplyCommentsItem, QString::fromLatin1( "OutlookCompatibleInvitationReplyComments" ) );
00251 mOutlookCompatibleInvitationComparisonsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "OutlookCompatibleInvitationComparisons" ), mOutlookCompatibleInvitationComparisons, true );
00252 mOutlookCompatibleInvitationComparisonsItem->setLabel( i18n("Show invitation update differences in the Outlook style") );
00253 mOutlookCompatibleInvitationComparisonsItem->setWhatsThis( i18n("When viewing invitation updates, show the differences in the Microsoft Outlook style.") );
00254 addItem( mOutlookCompatibleInvitationComparisonsItem, QString::fromLatin1( "OutlookCompatibleInvitationComparisons" ) );
00255 mAutomaticSendingItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AutomaticSending" ), mAutomaticSending, true );
00256 mAutomaticSendingItem->setLabel( i18n("Automatic invitation sending") );
00257 mAutomaticSendingItem->setWhatsThis( i18n("When this is checked, you will not see the mail composer window. Instead, all invitation mails are sent automatically. If you want to see the mail before sending it, you can uncheck this option. However, be aware that the text in the composer window is in iCalendar syntax, and you should not try modifying it by hand.") );
00258 addItem( mAutomaticSendingItem, QString::fromLatin1( "AutomaticSending" ) );
00259 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesAskForCommentWhenReactingToInvitation;
00260 {
00261 KConfigSkeleton::ItemEnum::Choice choice;
00262 choice.name = QString::fromLatin1( "NeverAsk" );
00263 valuesAskForCommentWhenReactingToInvitation.append( choice );
00264 }
00265 {
00266 KConfigSkeleton::ItemEnum::Choice choice;
00267 choice.name = QString::fromLatin1( "AskForAllButAcceptance" );
00268 valuesAskForCommentWhenReactingToInvitation.append( choice );
00269 }
00270 {
00271 KConfigSkeleton::ItemEnum::Choice choice;
00272 choice.name = QString::fromLatin1( "AlwaysAsk" );
00273 valuesAskForCommentWhenReactingToInvitation.append( choice );
00274 }
00275 mAskForCommentWhenReactingToInvitationItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "AskForCommentWhenReactingToInvitation" ), mAskForCommentWhenReactingToInvitation, valuesAskForCommentWhenReactingToInvitation, EnumAskForCommentWhenReactingToInvitation::AskForAllButAcceptance );
00276 mAskForCommentWhenReactingToInvitationItem->setLabel( i18n("AskForCommentWhenReactingToInvitation") );
00277 addItem( mAskForCommentWhenReactingToInvitationItem, QString::fromLatin1( "AskForCommentWhenReactingToInvitation" ) );
00278 mDeleteInvitationEmailsAfterSendingReplyItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "DeleteInvitationEmailsAfterSendingReply" ), mDeleteInvitationEmailsAfterSendingReply, true );
00279 mDeleteInvitationEmailsAfterSendingReplyItem->setLabel( i18n("Delete invitation emails after the reply to them has been sent") );
00280 mDeleteInvitationEmailsAfterSendingReplyItem->setWhatsThis( i18n("When this is checked, received invitation emails that have been replied to will be moved to the Trash folder, once the reply has been successfully sent.") );
00281 addItem( mDeleteInvitationEmailsAfterSendingReplyItem, QString::fromLatin1( "DeleteInvitationEmailsAfterSendingReply" ) );
00282 mShowToltecReplacementTextItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowToltecReplacementText" ), mShowToltecReplacementText, true );
00283 mShowToltecReplacementTextItem->setLabel( i18n("When encountering a Toltec scheduling message, display a custom replacement text for it.") );
00284 addItem( mShowToltecReplacementTextItem, QString::fromLatin1( "ShowToltecReplacementText" ) );
00285 mToltecReplacementTextItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "ToltecReplacementText" ), mToltecReplacementText, KMail::ObjectTreeParser::defaultToltecReplacementText() );
00286 mToltecReplacementTextItem->setLabel( i18n("The text that will be displayed as a replacement when encountering Toltec scheduling messages.") );
00287 addItem( mToltecReplacementTextItem, QString::fromLatin1( "ToltecReplacementText" ) );
00288
00289 setCurrentGroup( QString::fromLatin1( "IMAP Resource" ) );
00290
00291 mTheIMAPResourceEnabledItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "TheIMAPResourceEnabled" ), mTheIMAPResourceEnabled, false );
00292 mTheIMAPResourceEnabledItem->setLabel( i18n("TheIMAPResourceEnabled") );
00293 mTheIMAPResourceEnabledItem->setWhatsThis( i18n("<p>Enabling this makes it possible to store the entries from the Kontact applications (KOrganizer, KAddressBook, and KNotes.)</p><p>If you want to set this option you must also set the applications to use the IMAP resource; this is done in the KDE Control Center.</p>") );
00294 addItem( mTheIMAPResourceEnabledItem, QString::fromLatin1( "TheIMAPResourceEnabled" ) );
00295 mHideGroupwareFoldersItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "HideGroupwareFolders" ), mHideGroupwareFolders, true );
00296 mHideGroupwareFoldersItem->setLabel( i18n("HideGroupwareFolders") );
00297 mHideGroupwareFoldersItem->setWhatsThis( i18n("<p>Usually you will not have any reason to see the folders that hold the IMAP resources. But if you need to see them, you can set that here.</p>") );
00298 addItem( mHideGroupwareFoldersItem, QString::fromLatin1( "HideGroupwareFolders" ) );
00299 mShowOnlyGroupwareFoldersForGroupwareAccountItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowOnlyGroupwareFoldersForGroupwareAccount" ), mShowOnlyGroupwareFoldersForGroupwareAccount, false );
00300 mShowOnlyGroupwareFoldersForGroupwareAccountItem->setLabel( i18n("ShowOnlyGroupwareFoldersForGroupwareAccount") );
00301 mShowOnlyGroupwareFoldersForGroupwareAccountItem->setWhatsThis( i18n("<p>If the account used for storing groupware information \"\n"
00302 " \"is not used to manage normal mail, set this option to make KMail only \"\n"
00303 " \"show groupware folders in it. This is useful if you are handling regular \"\n"
00304 " \"mail via an additional online IMAP account.</p>") );
00305 addItem( mShowOnlyGroupwareFoldersForGroupwareAccountItem, QString::fromLatin1( "ShowOnlyGroupwareFoldersForGroupwareAccount" ) );
00306 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesTheIMAPResourceStorageFormat;
00307 {
00308 KConfigSkeleton::ItemEnum::Choice choice;
00309 choice.name = QString::fromLatin1( "IcalVcard" );
00310 valuesTheIMAPResourceStorageFormat.append( choice );
00311 }
00312 {
00313 KConfigSkeleton::ItemEnum::Choice choice;
00314 choice.name = QString::fromLatin1( "XML" );
00315 valuesTheIMAPResourceStorageFormat.append( choice );
00316 }
00317 mTheIMAPResourceStorageFormatItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "TheIMAPResourceStorageFormat" ), mTheIMAPResourceStorageFormat, valuesTheIMAPResourceStorageFormat, EnumTheIMAPResourceStorageFormat::IcalVcard );
00318 mTheIMAPResourceStorageFormatItem->setLabel( i18n("TheIMAPResourceStorageFormat") );
00319 mTheIMAPResourceStorageFormatItem->setWhatsThis( i18n("<p>Choose the storage format of the groupware folders. <ul><li>The default format is to use the ical (for calendar folders) and vcard (for addressbook folders) standards. This format makes all Kontact features available.</li><li>The Kolab XML format uses a custom model that matches more closely the one used in Outlook. This format gives better Outlook compatibility, when using a Kolab server or a compatible solution.</li></ul></p>") );
00320 addItem( mTheIMAPResourceStorageFormatItem, QString::fromLatin1( "TheIMAPResourceStorageFormat" ) );
00321 mTheIMAPResourceFolderParentItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "TheIMAPResourceFolderParent" ), mTheIMAPResourceFolderParent, QString::fromLatin1( "inbox" ) );
00322 mTheIMAPResourceFolderParentItem->setLabel( i18n("TheIMAPResourceFolderParent") );
00323 mTheIMAPResourceFolderParentItem->setWhatsThis( i18n("<p>This chooses the parent of the IMAP resource folders.</p><p>By default, the Kolab server sets the IMAP inbox to be the parent.</p>") );
00324 addItem( mTheIMAPResourceFolderParentItem, QString::fromLatin1( "TheIMAPResourceFolderParent" ) );
00325 mTheIMAPResourceAccountItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "TheIMAPResourceAccount" ), mTheIMAPResourceAccount );
00326 mTheIMAPResourceAccountItem->setLabel( i18n("TheIMAPResourceAccount") );
00327 mTheIMAPResourceAccountItem->setWhatsThis( i18n("<p>This is the ID of the account holding the IMAP resource folders.</p>") );
00328 addItem( mTheIMAPResourceAccountItem, QString::fromLatin1( "TheIMAPResourceAccount" ) );
00329 mTheIMAPResourceFolderLanguageItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "TheIMAPResourceFolderLanguage" ), mTheIMAPResourceFolderLanguage, 0 );
00330 mTheIMAPResourceFolderLanguageItem->setLabel( i18n("TheIMAPResourceFolderLanguage") );
00331 mTheIMAPResourceFolderLanguageItem->setWhatsThis( i18n("<p>If you want to set the folder names of the IMAP storage to your local language, you can choose between these available languages.</p><p> Please note, that the only reason to do so is for compatibility with Microsoft Outlook. It is considered a bad idea to set this, since it makes changing languages impossible. </p><p>So do not set this unless you have to.</p>") );
00332 addItem( mTheIMAPResourceFolderLanguageItem, QString::fromLatin1( "TheIMAPResourceFolderLanguage" ) );
00333 mFilterGroupwareFoldersItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "FilterGroupwareFolders" ), mFilterGroupwareFolders, false );
00334 mFilterGroupwareFoldersItem->setLabel( i18n("Also filter new mails received in groupware folders.") );
00335 addItem( mFilterGroupwareFoldersItem, QString::fromLatin1( "FilterGroupwareFolders" ) );
00336 QValueList<int> defaultFilterSourceFolders;
00337
00338 mFilterSourceFoldersItem = new KConfigSkeleton::ItemIntList( currentGroup(), QString::fromLatin1( "FilterSourceFolders" ), mFilterSourceFolders, defaultFilterSourceFolders );
00339 mFilterSourceFoldersItem->setLabel( i18n("FilterSourceFolders") );
00340 addItem( mFilterSourceFoldersItem, QString::fromLatin1( "FilterSourceFolders" ) );
00341 mImmediatlySyncDIMAPOnGroupwareChangesItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ImmediatlySyncDIMAPOnGroupwareChanges" ), mImmediatlySyncDIMAPOnGroupwareChanges, true );
00342 mImmediatlySyncDIMAPOnGroupwareChangesItem->setLabel( i18n("Synchronize groupware changes in DIMAP folders immediately when being online.") );
00343 addItem( mImmediatlySyncDIMAPOnGroupwareChangesItem, QString::fromLatin1( "ImmediatlySyncDIMAPOnGroupwareChanges" ) );
00344
00345 setCurrentGroup( QString::fromLatin1( "Internal" ) );
00346
00347 mMsgDictSizeHintItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "MsgDictSizeHint" ), mMsgDictSizeHint, 9973 );
00348 mMsgDictSizeHintItem->setLabel( i18n("MsgDictSizeHint") );
00349 addItem( mMsgDictSizeHintItem, QString::fromLatin1( "MsgDictSizeHint" ) );
00350 mPreviousNewFeaturesMD5Item = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "PreviousNewFeaturesMD5" ), mPreviousNewFeaturesMD5 );
00351 mPreviousNewFeaturesMD5Item->setLabel( i18n("PreviousNewFeaturesMD5") );
00352 mPreviousNewFeaturesMD5Item->setWhatsThis( i18n("This value is used to decide whether the KMail Introduction should be displayed.") );
00353 addItem( mPreviousNewFeaturesMD5Item, QString::fromLatin1( "PreviousNewFeaturesMD5" ) );
00354
00355 setCurrentGroup( QString::fromLatin1( "Network" ) );
00356
00357 mMaxConnectionsPerHostItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "MaxConnectionsPerHost" ), mMaxConnectionsPerHost, 0 );
00358 mMaxConnectionsPerHostItem->setMinValue(0);
00359 mMaxConnectionsPerHostItem->setLabel( i18n("Maximal number of connections per host") );
00360 mMaxConnectionsPerHostItem->setWhatsThis( i18n("This can be used to restrict the number of connections per host while checking for new mail. By default the number of connections is unlimited (0).") );
00361 addItem( mMaxConnectionsPerHostItem, QString::fromLatin1( "MaxConnectionsPerHost" ) );
00362
00363 setCurrentGroup( QString::fromLatin1( "UserInterface" ) );
00364
00365 mQuickSearchActiveItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "QuickSearchActive" ), mQuickSearchActive, true );
00366 mQuickSearchActiveItem->setLabel( i18n("Show quick search line edit") );
00367 mQuickSearchActiveItem->setWhatsThis( i18n("This option enables or disables the search line edit above the message list which can be used to quickly search the information shown in the message list.") );
00368 addItem( mQuickSearchActiveItem, QString::fromLatin1( "QuickSearchActive" ) );
00369 mHideLocalInboxItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "HideLocalInbox" ), mHideLocalInbox, true );
00370 mHideLocalInboxItem->setLabel( i18n("Hide local inbox if unused") );
00371 addItem( mHideLocalInboxItem, QString::fromLatin1( "HideLocalInbox" ) );
00372
00373 setCurrentGroup( QString::fromLatin1( "Composer" ) );
00374
00375 mForwardingInlineByDefaultItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ForwardingInlineByDefault" ), mForwardingInlineByDefault, false );
00376 mForwardingInlineByDefaultItem->setLabel( i18n("Forward Inline As Default.") );
00377 addItem( mForwardingInlineByDefaultItem, QString::fromLatin1( "ForwardingInlineByDefault" ) );
00378 mAllowSemicolonAsAddressSeparatorItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AllowSemicolonAsAddressSeparator" ), mAllowSemicolonAsAddressSeparator, true );
00379 mAllowSemicolonAsAddressSeparatorItem->setLabel( i18n("Allow the semicolon charactor (';') to be used as separator in the message composer.") );
00380 addItem( mAllowSemicolonAsAddressSeparatorItem, QString::fromLatin1( "AllowSemicolonAsAddressSeparator" ) );
00381 mForceReplyCharsetItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "force-reply-charset" ), mForceReplyCharset, false );
00382 mForceReplyCharsetItem->setLabel( i18n("Keep original charset when replying or forwarding if possible") );
00383 addItem( mForceReplyCharsetItem, QString::fromLatin1( "ForceReplyCharset" ) );
00384 mAutoTextSignatureItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "signature" ), mAutoTextSignature, QString::fromLatin1( "auto" ) );
00385 mAutoTextSignatureItem->setLabel( i18n("A&utomatically insert signature") );
00386 addItem( mAutoTextSignatureItem, QString::fromLatin1( "AutoTextSignature" ) );
00387 mRemoveOwnIdentitiesItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "remove-own-identities-on-reply" ), mRemoveOwnIdentities, true );
00388 mRemoveOwnIdentitiesItem->setLabel( i18n("Exclude all my email addresses from Reply to All.") );
00389 mRemoveOwnIdentitiesItem->setWhatsThis( i18n("Excludes all email addresses that are configured in identities from the list of recipients when using Reply to All.") );
00390 addItem( mRemoveOwnIdentitiesItem, QString::fromLatin1( "RemoveOwnIdentities" ) );
00391 mStickyIdentityItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "sticky-identity" ), mStickyIdentity, false );
00392 mStickyIdentityItem->setLabel( i18n("sticky-identity") );
00393 mStickyIdentityItem->setWhatsThis( i18n("Remember this identity, so that it will be used in future composer windows as well.\n"
00394 " ") );
00395 addItem( mStickyIdentityItem, QString::fromLatin1( "StickyIdentity" ) );
00396 mStickyFccItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "sticky-fcc" ), mStickyFcc, false );
00397 mStickyFccItem->setLabel( i18n("sticky-fcc") );
00398 mStickyFccItem->setWhatsThis( i18n("Remember this folder for sent items, so that it will be used in future composer windows as well.") );
00399 addItem( mStickyFccItem, QString::fromLatin1( "StickyFcc" ) );
00400 mStickyTransportItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "sticky-transport" ), mStickyTransport, false );
00401 mStickyTransportItem->setLabel( i18n("sticky-transport") );
00402 mStickyTransportItem->setWhatsThis( i18n("Remember this mail transport, so that it will be used in future composer windows as well.") );
00403 addItem( mStickyTransportItem, QString::fromLatin1( "StickyTransport" ) );
00404 mStickyDictionaryItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "StickyDictionary" ), mStickyDictionary, false );
00405 mStickyDictionaryItem->setLabel( i18n("StickyDictionary") );
00406 mStickyDictionaryItem->setWhatsThis( i18n("Remember this dictionary, so that it will be used in future composer windows as well.\n"
00407 " ") );
00408 addItem( mStickyDictionaryItem, QString::fromLatin1( "StickyDictionary" ) );
00409 mWordWrapItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "word-wrap" ), mWordWrap, true );
00410 mWordWrapItem->setLabel( i18n("Word &wrap at column:") );
00411 addItem( mWordWrapItem, QString::fromLatin1( "WordWrap" ) );
00412 mUseFixedFontItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "use-fixed-font" ), mUseFixedFont, false );
00413 mUseFixedFontItem->setLabel( i18n("Use Fi&xed Font") );
00414 addItem( mUseFixedFontItem, QString::fromLatin1( "UseFixedFont" ) );
00415 mLineWrapWidthItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "break-at" ), mLineWrapWidth, 78 );
00416 mLineWrapWidthItem->setMinValue(30);
00417 mLineWrapWidthItem->setMaxValue(255);
00418 mLineWrapWidthItem->setLabel( i18n("break-at") );
00419 addItem( mLineWrapWidthItem, QString::fromLatin1( "LineWrapWidth" ) );
00420 mTooManyRecipientsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "too-many-recipients" ), mTooManyRecipients, true );
00421 mTooManyRecipientsItem->setLabel( i18n("Warn if the number of recipients is larger than") );
00422 mTooManyRecipientsItem->setWhatsThis( i18n("If the number of recipients is larger than this value, KMail will warn and ask for a confirmation before sending the mail. The warning can be turned off.") );
00423 addItem( mTooManyRecipientsItem, QString::fromLatin1( "TooManyRecipients" ) );
00424 mRecipientThresholdItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "recipient-threshold" ), mRecipientThreshold, 5 );
00425 mRecipientThresholdItem->setMinValue(1);
00426 mRecipientThresholdItem->setMaxValue(100);
00427 mRecipientThresholdItem->setLabel( i18n("recipient-threshold") );
00428 mRecipientThresholdItem->setWhatsThis( i18n("If the number of recipients is larger than this value, KMail will warn and ask for a confirmation before sending the mail. The warning can be turned off.") );
00429 addItem( mRecipientThresholdItem, QString::fromLatin1( "RecipientThreshold" ) );
00430 mPreviousIdentityItem = new KConfigSkeleton::ItemUInt( currentGroup(), QString::fromLatin1( "previous-identity" ), mPreviousIdentity );
00431 mPreviousIdentityItem->setLabel( i18n("previous-identity") );
00432 addItem( mPreviousIdentityItem, QString::fromLatin1( "PreviousIdentity" ) );
00433 mPreviousFccItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "previous-fcc" ), mPreviousFcc );
00434 mPreviousFccItem->setLabel( i18n("previous-fcc") );
00435 addItem( mPreviousFccItem, QString::fromLatin1( "PreviousFcc" ) );
00436 mPreviousDictionaryItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "PreviousDictionary" ), mPreviousDictionary );
00437 mPreviousDictionaryItem->setLabel( i18n("PreviousDictionary") );
00438 addItem( mPreviousDictionaryItem, QString::fromLatin1( "PreviousDictionary" ) );
00439 mTransportHistoryItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "transport-history" ), mTransportHistory );
00440 mTransportHistoryItem->setLabel( i18n("transport-history") );
00441 addItem( mTransportHistoryItem, QString::fromLatin1( "TransportHistory" ) );
00442 mCurrentTransportItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "current-transport" ), mCurrentTransport );
00443 mCurrentTransportItem->setLabel( i18n("current-transport") );
00444 addItem( mCurrentTransportItem, QString::fromLatin1( "CurrentTransport" ) );
00445 mDefaultTransportItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "default-transport" ), mDefaultTransport );
00446 mDefaultTransportItem->setLabel( i18n("default-transport") );
00447 addItem( mDefaultTransportItem, QString::fromLatin1( "DefaultTransport" ) );
00448 mMaxTransportEntriesItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "max-transport-items" ), mMaxTransportEntries, 10 );
00449 mMaxTransportEntriesItem->setLabel( i18n("max-transport-items") );
00450 addItem( mMaxTransportEntriesItem, QString::fromLatin1( "MaxTransportEntries" ) );
00451 mOutlookCompatibleAttachmentsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "outlook-compatible-attachments" ), mOutlookCompatibleAttachments, false );
00452 mOutlookCompatibleAttachmentsItem->setLabel( i18n("Outlook-compatible attachment naming") );
00453 mOutlookCompatibleAttachmentsItem->setWhatsThis( i18n("Turn this option on to make Outlook ? understand attachment names containing non-English characters") );
00454 addItem( mOutlookCompatibleAttachmentsItem, QString::fromLatin1( "OutlookCompatibleAttachments" ) );
00455 mUseHtmlMarkupItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "html-markup" ), mUseHtmlMarkup, false );
00456 mUseHtmlMarkupItem->setLabel( i18n("html-markup") );
00457 addItem( mUseHtmlMarkupItem, QString::fromLatin1( "UseHtmlMarkup" ) );
00458 mPgpAutoSignItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "pgp-auto-sign" ), mPgpAutoSign, false );
00459 mPgpAutoSignItem->setLabel( i18n("pgp-auto-sign") );
00460 addItem( mPgpAutoSignItem, QString::fromLatin1( "PgpAutoSign" ) );
00461 mPgpAutoEncryptItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "pgp-auto-encrypt" ), mPgpAutoEncrypt, false );
00462 mPgpAutoEncryptItem->setLabel( i18n("pgp-auto-encrypt") );
00463 addItem( mPgpAutoEncryptItem, QString::fromLatin1( "PgpAutoEncrypt" ) );
00464 mNeverEncryptDraftsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "never-encrypt-drafts" ), mNeverEncryptDrafts, true );
00465 mNeverEncryptDraftsItem->setLabel( i18n("never-encrypt-drafts") );
00466 addItem( mNeverEncryptDraftsItem, QString::fromLatin1( "NeverEncryptDrafts" ) );
00467 mChiasmusKeyItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "chiasmus-key" ), mChiasmusKey );
00468 mChiasmusKeyItem->setLabel( i18n("chiasmus-key") );
00469 addItem( mChiasmusKeyItem, QString::fromLatin1( "ChiasmusKey" ) );
00470 mChiasmusOptionsItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "chiasmus-options" ), mChiasmusOptions );
00471 mChiasmusOptionsItem->setLabel( i18n("chiasmus-options") );
00472 addItem( mChiasmusOptionsItem, QString::fromLatin1( "ChiasmusOptions" ) );
00473 mConfirmBeforeSendItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "confirm-before-send" ), mConfirmBeforeSend, false );
00474 mConfirmBeforeSendItem->setLabel( i18n("Confirm &before send") );
00475 addItem( mConfirmBeforeSendItem, QString::fromLatin1( "ConfirmBeforeSend" ) );
00476 mRequestMDNItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "request-mdn" ), mRequestMDN, false );
00477 mRequestMDNItem->setLabel( i18n("Automatically request &message disposition notifications") );
00478 mRequestMDNItem->setWhatsThis( i18n("<qt><p>Enable this option if you want KMail to request Message Disposition Notifications (MDNs) for each of your outgoing messages.</p><p>This option only affects the default; you can still enable or disable MDN requesting on a per-message basis in the composer, menu item <em>Options</em>-><em>Request Disposition Notification</em>.</p></qt>") );
00479 addItem( mRequestMDNItem, QString::fromLatin1( "RequestMDN" ) );
00480 mShowRecentAddressesInComposerItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "showRecentAddressesInComposer" ), mShowRecentAddressesInComposer, true );
00481 mShowRecentAddressesInComposerItem->setLabel( i18n("Use recent addresses for autocompletion") );
00482 mShowRecentAddressesInComposerItem->setWhatsThis( i18n("Disable this option if you do not want recently used addresses to appear in the autocompletion list in the composer's address fields.") );
00483 addItem( mShowRecentAddressesInComposerItem, QString::fromLatin1( "ShowRecentAddressesInComposer" ) );
00484 mHeadersItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "headers" ), mHeaders, HDR_STANDARD );
00485 mHeadersItem->setLabel( i18n("headers") );
00486 addItem( mHeadersItem, QString::fromLatin1( "Headers" ) );
00487 mCompletionModeItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "Completion Mode" ), mCompletionMode, KGlobalSettings::completionMode() );
00488 mCompletionModeItem->setLabel( i18n("Completion Mode") );
00489 addItem( mCompletionModeItem, QString::fromLatin1( "CompletionMode" ) );
00490 mAutoSpellCheckingItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "autoSpellChecking" ), mAutoSpellChecking, true );
00491 mAutoSpellCheckingItem->setLabel( i18n("autoSpellChecking") );
00492 addItem( mAutoSpellCheckingItem, QString::fromLatin1( "AutoSpellChecking" ) );
00493 mShowForgottenAttachmentWarningItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "showForgottenAttachmentWarning" ), mShowForgottenAttachmentWarning, true );
00494 mShowForgottenAttachmentWarningItem->setLabel( i18n("showForgottenAttachmentWarning") );
00495 addItem( mShowForgottenAttachmentWarningItem, QString::fromLatin1( "ShowForgottenAttachmentWarning" ) );
00496 mAttachmentKeywordsItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "attachment-keywords" ), mAttachmentKeywords );
00497 mAttachmentKeywordsItem->setLabel( i18n("attachment-keywords") );
00498 addItem( mAttachmentKeywordsItem, QString::fromLatin1( "AttachmentKeywords" ) );
00499 mShowMessagePartDialogOnAttachItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "showMessagePartDialogOnAttach" ), mShowMessagePartDialogOnAttach, false );
00500 mShowMessagePartDialogOnAttachItem->setLabel( i18n("showMessagePartDialogOnAttach") );
00501 addItem( mShowMessagePartDialogOnAttachItem, QString::fromLatin1( "ShowMessagePartDialogOnAttach" ) );
00502 mAutosaveIntervalItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "autosave" ), mAutosaveInterval, 2 );
00503 mAutosaveIntervalItem->setLabel( i18n("Autosave interval:") );
00504 mAutosaveIntervalItem->setWhatsThis( i18n("A backup copy of the text in the composer window can be created regularly. The interval used to create the backups is set here. You can disable autosaving by setting it to the value 0.") );
00505 addItem( mAutosaveIntervalItem, QString::fromLatin1( "AutosaveInterval" ) );
00506 mPrependSignatureItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "prepend-signature" ), mPrependSignature, false );
00507 mPrependSignatureItem->setLabel( i18n("Insert signatures above quoted text") );
00508 addItem( mPrependSignatureItem, QString::fromLatin1( "PrependSignature" ) );
00509 QStringList defaultReplyPrefixes;
00510 defaultReplyPrefixes.append( QString::fromUtf8( "Re\\s*:" ) );
00511 defaultReplyPrefixes.append( QString::fromUtf8( "Re\\[\\d+\\]:" ) );
00512 defaultReplyPrefixes.append( QString::fromUtf8( "Re\\d+:" ) );
00513
00514 mReplyPrefixesItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "reply-prefixes" ), mReplyPrefixes, defaultReplyPrefixes );
00515 mReplyPrefixesItem->setLabel( i18n("reply-prefixes") );
00516 addItem( mReplyPrefixesItem, QString::fromLatin1( "ReplyPrefixes" ) );
00517 mReplaceReplyPrefixItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "replace-reply-prefix" ), mReplaceReplyPrefix, true );
00518 mReplaceReplyPrefixItem->setLabel( i18n("Replace recognized prefi&x with \"Re:\"") );
00519 addItem( mReplaceReplyPrefixItem, QString::fromLatin1( "ReplaceReplyPrefix" ) );
00520 QStringList defaultForwardPrefixes;
00521 defaultForwardPrefixes.append( QString::fromUtf8( "Fwd:" ) );
00522 defaultForwardPrefixes.append( QString::fromUtf8( "FW:" ) );
00523
00524 mForwardPrefixesItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "forward-prefixes" ), mForwardPrefixes, defaultForwardPrefixes );
00525 mForwardPrefixesItem->setLabel( i18n("forward-prefixes") );
00526 addItem( mForwardPrefixesItem, QString::fromLatin1( "ForwardPrefixes" ) );
00527 mReplaceForwardPrefixItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "replace-forward-prefix" ), mReplaceForwardPrefix, true );
00528 mReplaceForwardPrefixItem->setLabel( i18n("Replace recognized prefix with \"&Fwd:\"") );
00529 addItem( mReplaceForwardPrefixItem, QString::fromLatin1( "ReplaceForwardPrefix" ) );
00530 mSmartQuoteItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "smart-quote" ), mSmartQuote, true );
00531 mSmartQuoteItem->setLabel( i18n("Use smart "ing") );
00532 addItem( mSmartQuoteItem, QString::fromLatin1( "SmartQuote" ) );
00533 mStripSignatureItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "StripSignature" ), mStripSignature, true );
00534 mStripSignatureItem->setLabel( i18n("Remove the signature when replying") );
00535 addItem( mStripSignatureItem, QString::fromLatin1( "StripSignature" ) );
00536 mQuoteSelectionOnlyItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "QuoteSelectionOnly" ), mQuoteSelectionOnly, true );
00537 mQuoteSelectionOnlyItem->setLabel( i18n("Only quote selected text when replying") );
00538 addItem( mQuoteSelectionOnlyItem, QString::fromLatin1( "QuoteSelectionOnly" ) );
00539 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesAddresseeSelectorType;
00540 {
00541 KConfigSkeleton::ItemEnum::Choice choice;
00542 choice.name = QString::fromLatin1( "New" );
00543 valuesAddresseeSelectorType.append( choice );
00544 }
00545 {
00546 KConfigSkeleton::ItemEnum::Choice choice;
00547 choice.name = QString::fromLatin1( "Old" );
00548 valuesAddresseeSelectorType.append( choice );
00549 }
00550 mAddresseeSelectorTypeItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "AddresseeSelectorType" ), mAddresseeSelectorType, valuesAddresseeSelectorType, EnumAddresseeSelectorType::Old );
00551 mAddresseeSelectorTypeItem->setLabel( i18n("Type of addressee selector") );
00552 mAddresseeSelectorTypeItem->setWhatsThis( i18n("Sets the type of the dialog for selecting recipients for To,\n"
00553 " CC and BCC.") );
00554 addItem( mAddresseeSelectorTypeItem, QString::fromLatin1( "AddresseeSelectorType" ) );
00555 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesRecipientsEditorType;
00556 {
00557 KConfigSkeleton::ItemEnum::Choice choice;
00558 choice.name = QString::fromLatin1( "Classic" );
00559 valuesRecipientsEditorType.append( choice );
00560 }
00561 {
00562 KConfigSkeleton::ItemEnum::Choice choice;
00563 choice.name = QString::fromLatin1( "MultiLine" );
00564 valuesRecipientsEditorType.append( choice );
00565 }
00566 mRecipientsEditorTypeItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "RecipientsEditorType" ), mRecipientsEditorType, valuesRecipientsEditorType, EnumRecipientsEditorType::MultiLine );
00567 mRecipientsEditorTypeItem->setLabel( i18n("Type of recipients editor") );
00568 mRecipientsEditorTypeItem->setWhatsThis( i18n("Sets the type of the recipients editor for editing To,\n"
00569 " CC and BCC.") );
00570 addItem( mRecipientsEditorTypeItem, QString::fromLatin1( "RecipientsEditorType" ) );
00571 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesSecondRecipientTypeDefault;
00572 {
00573 KConfigSkeleton::ItemEnum::Choice choice;
00574 choice.name = QString::fromLatin1( "To" );
00575 valuesSecondRecipientTypeDefault.append( choice );
00576 }
00577 {
00578 KConfigSkeleton::ItemEnum::Choice choice;
00579 choice.name = QString::fromLatin1( "Cc" );
00580 valuesSecondRecipientTypeDefault.append( choice );
00581 }
00582 mSecondRecipientTypeDefaultItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "SecondRecipientTypeDefault" ), mSecondRecipientTypeDefault, valuesSecondRecipientTypeDefault, EnumSecondRecipientTypeDefault::To );
00583 mSecondRecipientTypeDefaultItem->setLabel( i18n("SecondRecipientTypeDefault") );
00584 addItem( mSecondRecipientTypeDefaultItem, QString::fromLatin1( "SecondRecipientTypeDefault" ) );
00585 mMaximumRecipientsItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "MaximumRecipients" ), mMaximumRecipients, 200 );
00586 mMaximumRecipientsItem->setLabel( i18n("Maximum number of recipient editor lines.") );
00587 addItem( mMaximumRecipientsItem, QString::fromLatin1( "MaximumRecipients" ) );
00588 mCustomTemplatesItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "CustomTemplates" ), mCustomTemplates );
00589 mCustomTemplatesItem->setLabel( i18n("CustomTemplates") );
00590 addItem( mCustomTemplatesItem, QString::fromLatin1( "CustomTemplates" ) );
00591 mMimetypesToStripWhenInlineForwardingItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "MimetypesToStripWhenInlineForwarding" ), mMimetypesToStripWhenInlineForwarding );
00592 mMimetypesToStripWhenInlineForwardingItem->setLabel( i18n("List of message part types to strip off mails that are being forwarded inline.") );
00593 addItem( mMimetypesToStripWhenInlineForwardingItem, QString::fromLatin1( "MimetypesToStripWhenInlineForwarding" ) );
00594 mMaximumAttachmentSizeItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "MaximumAttachmentSize" ), mMaximumAttachmentSize, 50 );
00595 mMaximumAttachmentSizeItem->setLabel( i18n("The maximum size in MB that email attachments are allowed to have.") );
00596 addItem( mMaximumAttachmentSizeItem, QString::fromLatin1( "MaximumAttachmentSize" ) );
00597 mShowSnippetManagerItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowSnippetManager" ), mShowSnippetManager, false );
00598 mShowSnippetManagerItem->setLabel( i18n("Show the Text Snippet Management and Insertion Panel in the composer.") );
00599 addItem( mShowSnippetManagerItem, QString::fromLatin1( "ShowSnippetManager" ) );
00600 QValueList<int> defaultSnippetSplitterPosition;
00601
00602 mSnippetSplitterPositionItem = new KConfigSkeleton::ItemIntList( currentGroup(), QString::fromLatin1( "SnippetSplitterPosition" ), mSnippetSplitterPosition, defaultSnippetSplitterPosition );
00603 mSnippetSplitterPositionItem->setLabel( i18n("SnippetSplitterPosition") );
00604 addItem( mSnippetSplitterPositionItem, QString::fromLatin1( "SnippetSplitterPosition" ) );
00605 mShowGnuPGAuditLogAfterSuccessfulSignEncryptItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowGnuPGAuditLogAfterSuccessfulSignEncrypt" ), mShowGnuPGAuditLogAfterSuccessfulSignEncrypt, false );
00606 mShowGnuPGAuditLogAfterSuccessfulSignEncryptItem->setLabel( i18n("Show the GnuPG Audit Log even after crypto operations that completed successfully.") );
00607 addItem( mShowGnuPGAuditLogAfterSuccessfulSignEncryptItem, QString::fromLatin1( "ShowGnuPGAuditLogAfterSuccessfulSignEncrypt" ) );
00608
00609 setCurrentGroup( QString::fromLatin1( "Fonts" ) );
00610
00611 mUseDefaultFontsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "defaultFonts" ), mUseDefaultFonts, true );
00612 mUseDefaultFontsItem->setLabel( i18n("defaultFonts") );
00613 addItem( mUseDefaultFontsItem, QString::fromLatin1( "UseDefaultFonts" ) );
00614 mComposerFontItem = new KConfigSkeleton::ItemFont( currentGroup(), QString::fromLatin1( "composer-font" ), mComposerFont, KGlobalSettings::generalFont() );
00615 mComposerFontItem->setLabel( i18n("composer-font") );
00616 addItem( mComposerFontItem, QString::fromLatin1( "ComposerFont" ) );
00617 mFixedFontItem = new KConfigSkeleton::ItemFont( currentGroup(), QString::fromLatin1( "fixed-font" ), mFixedFont, KGlobalSettings::fixedFont() );
00618 mFixedFontItem->setLabel( i18n("fixed-font") );
00619 addItem( mFixedFontItem, QString::fromLatin1( "FixedFont" ) );
00620
00621 setCurrentGroup( QString::fromLatin1( "Geometry" ) );
00622
00623 mComposerSizeItem = new KConfigSkeleton::ItemSize( currentGroup(), QString::fromLatin1( "composer" ), mComposerSize, QSize(480,510) );
00624 mComposerSizeItem->setLabel( i18n("composer") );
00625 addItem( mComposerSizeItem, QString::fromLatin1( "ComposerSize" ) );
00626
00627 setCurrentGroup( QString::fromLatin1( "Reader" ) );
00628
00629 mCloseAfterReplyOrForwardItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "CloseAfterReplyOrForward" ), mCloseAfterReplyOrForward, false );
00630 mCloseAfterReplyOrForwardItem->setLabel( i18n("Close message window after replying or forwarding the message.") );
00631 addItem( mCloseAfterReplyOrForwardItem, QString::fromLatin1( "CloseAfterReplyOrForward" ) );
00632 mUseDefaultColorsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "defaultColors" ), mUseDefaultColors, true );
00633 mUseDefaultColorsItem->setLabel( i18n("defaultColors") );
00634 addItem( mUseDefaultColorsItem, QString::fromLatin1( "UseDefaultColors" ) );
00635 mForegroundColorItem = new KConfigSkeleton::ItemColor( currentGroup(), QString::fromLatin1( "ForegroundColor" ), mForegroundColor, kapp->palette().active().text() );
00636 mForegroundColorItem->setLabel( i18n("ForegroundColor") );
00637 addItem( mForegroundColorItem, QString::fromLatin1( "ForegroundColor" ) );
00638 mBackgroundColorItem = new KConfigSkeleton::ItemColor( currentGroup(), QString::fromLatin1( "BackgroundColor" ), mBackgroundColor, kapp->palette().active().base() );
00639 mBackgroundColorItem->setLabel( i18n("BackgroundColor") );
00640 addItem( mBackgroundColorItem, QString::fromLatin1( "BackgroundColor" ) );
00641 mFallbackCharacterEncodingItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "FallbackCharacterEncoding" ), mFallbackCharacterEncoding, QCString(QTextCodec::codecForLocale()->name()).lower() == "eucjp"? QCString("jis7") : QCString(QTextCodec::codecForLocale()->name()).lower() );
00642 mFallbackCharacterEncodingItem->setLabel( i18n("FallbackCharacterEncoding") );
00643 mFallbackCharacterEncodingItem->setWhatsThis( i18n("Some emails, especially those generated automatically, do not specify the character encoding which needs to be used to properly display them. In such cases a fallback character encoding will be used, which you can configure here. Set it to the character encoding most commonly used in your part of the world. As a default the encoding configured for the whole system is used.") );
00644 addItem( mFallbackCharacterEncodingItem, QString::fromLatin1( "FallbackCharacterEncoding" ) );
00645 mOverrideCharacterEncodingItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "encoding" ), mOverrideCharacterEncoding );
00646 mOverrideCharacterEncodingItem->setLabel( i18n("encoding") );
00647 mOverrideCharacterEncodingItem->setWhatsThis( i18n("Changing this from its default 'Auto' will force the use of the specified encoding for all emails, regardless of what they specify themselves.") );
00648 addItem( mOverrideCharacterEncodingItem, QString::fromLatin1( "OverrideCharacterEncoding" ) );
00649 mShowEmoticonsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowEmoticons" ), mShowEmoticons, true );
00650 mShowEmoticonsItem->setLabel( i18n("Replace smileys by emoticons") );
00651 mShowEmoticonsItem->setWhatsThis( i18n("Enable this if you want smileys like :-) appearing in the message text to be replaced by emoticons (small pictures).") );
00652 addItem( mShowEmoticonsItem, QString::fromLatin1( "ShowEmoticons" ) );
00653 mShowExpandQuotesMarkItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowExpandQuotesMark" ), mShowExpandQuotesMark, false );
00654 mShowExpandQuotesMarkItem->setLabel( i18n("Show expand/collapse quote marks") );
00655 mShowExpandQuotesMarkItem->setWhatsThis( i18n("Enable this option to show different levels of quoted text. Disable to hide the levels of quoted text.") );
00656 addItem( mShowExpandQuotesMarkItem, QString::fromLatin1( "ShowExpandQuotesMark" ) );
00657 mCollapseQuoteLevelSpinItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "CollapseQuoteLevelSpin" ), mCollapseQuoteLevelSpin, 3 );
00658 mCollapseQuoteLevelSpinItem->setMinValue(0);
00659 mCollapseQuoteLevelSpinItem->setMaxValue(10);
00660 mCollapseQuoteLevelSpinItem->setLabel( i18n("Automatic collapse level:") );
00661 addItem( mCollapseQuoteLevelSpinItem, QString::fromLatin1( "CollapseQuoteLevelSpin" ) );
00662 mShrinkQuotesItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShrinkQuotes" ), mShrinkQuotes, false );
00663 mShrinkQuotesItem->setLabel( i18n("Reduce font size for quoted text") );
00664 mShrinkQuotesItem->setWhatsThis( i18n("Enable this option to show quoted text with a smaller font.") );
00665 addItem( mShrinkQuotesItem, QString::fromLatin1( "ShrinkQuotes" ) );
00666 mChiasmusDecryptionKeyItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "ChiasmusDecryptionKey" ), mChiasmusDecryptionKey );
00667 mChiasmusDecryptionKeyItem->setLabel( i18n("ChiasmusDecryptionKey") );
00668 addItem( mChiasmusDecryptionKeyItem, QString::fromLatin1( "ChiasmusDecryptionKey" ) );
00669 mChiasmusDecryptionOptionsItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "ChiasmusDecryptionOptions" ), mChiasmusDecryptionOptions );
00670 mChiasmusDecryptionOptionsItem->setLabel( i18n("ChiasmusDecryptionOptions") );
00671 addItem( mChiasmusDecryptionOptionsItem, QString::fromLatin1( "ChiasmusDecryptionOptions" ) );
00672 mShowUserAgentItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowUserAgent" ), mShowUserAgent, false );
00673 mShowUserAgentItem->setLabel( i18n("Show user agent in fancy headers") );
00674 mShowUserAgentItem->setWhatsThis( i18n("Enable this option to get the User-Agent and X-Mailer header lines displayed when using fancy headers.") );
00675 addItem( mShowUserAgentItem, QString::fromLatin1( "ShowUserAgent" ) );
00676 mAllowAttachmentDeletionItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AllowAttachmentDeletion" ), mAllowAttachmentDeletion, true );
00677 mAllowAttachmentDeletionItem->setLabel( i18n("Allow to delete attachments of existing mails.") );
00678 addItem( mAllowAttachmentDeletionItem, QString::fromLatin1( "AllowAttachmentDeletion" ) );
00679 mAllowAttachmentEditingItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AllowAttachmentEditing" ), mAllowAttachmentEditing, false );
00680 mAllowAttachmentEditingItem->setLabel( i18n("Allow to edit attachments of existing mails.") );
00681 addItem( mAllowAttachmentEditingItem, QString::fromLatin1( "AllowAttachmentEditing" ) );
00682 mAlwaysDecryptItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AlwaysDecrypt" ), mAlwaysDecrypt, false );
00683 mAlwaysDecryptItem->setLabel( i18n("Always decrypt messages when viewing or ask before decrypting") );
00684 addItem( mAlwaysDecryptItem, QString::fromLatin1( "AlwaysDecrypt" ) );
00685
00686 setCurrentGroup( QString::fromLatin1( "TextIndex" ) );
00687
00688 mAutomaticDecryptItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "automaticDecrypt" ), mAutomaticDecrypt, true );
00689 mAutomaticDecryptItem->setLabel( i18n("automaticDecrypt") );
00690 addItem( mAutomaticDecryptItem, QString::fromLatin1( "automaticDecrypt" ) );
00691
00692 setCurrentGroup( QString::fromLatin1( "MDN" ) );
00693
00694 mSendMDNsWithEmptySenderItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "SendMDNsWithEmptySender" ), mSendMDNsWithEmptySender, false );
00695 mSendMDNsWithEmptySenderItem->setLabel( i18n("Send Message Disposition Notifications with an empty sender.") );
00696 mSendMDNsWithEmptySenderItem->setWhatsThis( i18n("Send Message Disposition Notifications with an empty sender string. Some servers might be configure to reject such messages, so if you are experiencing problems sending MDNs, uncheck this option.") );
00697 addItem( mSendMDNsWithEmptySenderItem, QString::fromLatin1( "SendMDNsWithEmptySender" ) );
00698
00699 setCurrentGroup( QString::fromLatin1( "GlobalTemplates" ) );
00700
00701 mPhrasesConvertedItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "PhrasesConverted" ), mPhrasesConverted, false );
00702 mPhrasesConvertedItem->setLabel( i18n("Phrases has been converted to templates") );
00703 mPhrasesConvertedItem->setWhatsThis( i18n("Old phrases have been converted to templates") );
00704 addItem( mPhrasesConvertedItem, QString::fromLatin1( "PhrasesConverted" ) );
00705 mTemplateNewMessageItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "TemplateNewMessage" ), mTemplateNewMessage, TemplatesConfiguration::defaultNewMessage() );
00706 mTemplateNewMessageItem->setLabel( i18n("Message template for new message") );
00707 addItem( mTemplateNewMessageItem, QString::fromLatin1( "TemplateNewMessage" ) );
00708 mTemplateReplyItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "TemplateReply" ), mTemplateReply, TemplatesConfiguration::defaultReply() );
00709 mTemplateReplyItem->setLabel( i18n("Message template for reply") );
00710 addItem( mTemplateReplyItem, QString::fromLatin1( "TemplateReply" ) );
00711 mTemplateReplyAllItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "TemplateReplyAll" ), mTemplateReplyAll, TemplatesConfiguration::defaultReplyAll() );
00712 mTemplateReplyAllItem->setLabel( i18n("Message template for reply to all") );
00713 addItem( mTemplateReplyAllItem, QString::fromLatin1( "TemplateReplyAll" ) );
00714 mTemplateForwardItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "TemplateForward" ), mTemplateForward, TemplatesConfiguration::defaultForward() );
00715 mTemplateForwardItem->setLabel( i18n("Message template for forward") );
00716 addItem( mTemplateForwardItem, QString::fromLatin1( "TemplateForward" ) );
00717 mQuoteStringItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "QuoteString" ), mQuoteString, TemplatesConfiguration::defaultQuoteString() );
00718 mQuoteStringItem->setLabel( i18n("Quote characters") );
00719 addItem( mQuoteStringItem, QString::fromLatin1( "QuoteString" ) );
00720
00721 setCurrentGroup( QString::fromLatin1( "OutOfOffice" ) );
00722
00723 mAllowOutOfOfficeSettingsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AllowOutOfOfficeSettings" ), mAllowOutOfOfficeSettings, true );
00724 mAllowOutOfOfficeSettingsItem->setLabel( i18n("Allow out-of-office settings to to be changeable by the user.") );
00725 addItem( mAllowOutOfOfficeSettingsItem, QString::fromLatin1( "AllowOutOfOfficeSettings" ) );
00726 mAllowOutOfOfficeUploadButNoSettingsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AllowOutOfOfficeUploadButNoSettings" ), mAllowOutOfOfficeUploadButNoSettings, false );
00727 mAllowOutOfOfficeUploadButNoSettingsItem->setLabel( i18n("Allow users to upload out-of-office sieve scripts, but disallow them changin any settings, such as the domain to react to and the spam reaction switch.") );
00728 addItem( mAllowOutOfOfficeUploadButNoSettingsItem, QString::fromLatin1( "AllowOutOfOfficeUploadButNoSettings" ) );
00729 mOutOfOfficeDomainItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "OutOfOfficeDomain" ), mOutOfOfficeDomain );
00730 mOutOfOfficeDomainItem->setLabel( i18n("Send out-of-office replies to mails coming from this domain only.") );
00731 addItem( mOutOfOfficeDomainItem, QString::fromLatin1( "OutOfOfficeDomain" ) );
00732 mOutOfOfficeReactToSpamItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "OutOfOfficeReactToSpam" ), mOutOfOfficeReactToSpam, false );
00733 mOutOfOfficeReactToSpamItem->setLabel( i18n("Allow out-of-office replies to be sent to messages marked as SPAM.") );
00734 addItem( mOutOfOfficeReactToSpamItem, QString::fromLatin1( "OutOfOfficeReactToSpam" ) );
00735 mCheckOutOfOfficeOnStartupItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "CheckOutOfOfficeOnStartup" ), mCheckOutOfOfficeOnStartup, true );
00736 mCheckOutOfOfficeOnStartupItem->setLabel( i18n("Check if there is still an active out-of-office reply configured when starting KMail.") );
00737 addItem( mCheckOutOfOfficeOnStartupItem, QString::fromLatin1( "CheckOutOfOfficeOnStartup" ) );
00738
00739 setCurrentGroup( QString::fromLatin1( "FavoriteFolderView" ) );
00740
00741 mEnableFavoriteFolderViewItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "EnableFavoriteFolderView" ), mEnableFavoriteFolderView, true );
00742 mEnableFavoriteFolderViewItem->setLabel( i18n("EnableFavoriteFolderView") );
00743 addItem( mEnableFavoriteFolderViewItem, QString::fromLatin1( "EnableFavoriteFolderView" ) );
00744 QValueList<int> defaultFolderViewSplitterPosition;
00745
00746 mFolderViewSplitterPositionItem = new KConfigSkeleton::ItemIntList( currentGroup(), QString::fromLatin1( "FolderViewSplitterPosition" ), mFolderViewSplitterPosition, defaultFolderViewSplitterPosition );
00747 mFolderViewSplitterPositionItem->setLabel( i18n("FolderViewSplitterPosition") );
00748 addItem( mFolderViewSplitterPositionItem, QString::fromLatin1( "FolderViewSplitterPosition" ) );
00749 QValueList<int> defaultFavoriteFolderIds;
00750
00751 mFavoriteFolderIdsItem = new KConfigSkeleton::ItemIntList( currentGroup(), QString::fromLatin1( "FavoriteFolderIds" ), mFavoriteFolderIds, defaultFavoriteFolderIds );
00752 mFavoriteFolderIdsItem->setLabel( i18n("FavoriteFolderIds") );
00753 addItem( mFavoriteFolderIdsItem, QString::fromLatin1( "FavoriteFolderIds" ) );
00754 mFavoriteFolderNamesItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "FavoriteFolderNames" ), mFavoriteFolderNames );
00755 mFavoriteFolderNamesItem->setLabel( i18n("FavoriteFolderNames") );
00756 addItem( mFavoriteFolderNamesItem, QString::fromLatin1( "FavoriteFolderNames" ) );
00757 QValueList<int> defaultFavoriteFolderViewSeenInboxes;
00758
00759 mFavoriteFolderViewSeenInboxesItem = new KConfigSkeleton::ItemIntList( currentGroup(), QString::fromLatin1( "FavoriteFolderViewSeenInboxes" ), mFavoriteFolderViewSeenInboxes, defaultFavoriteFolderViewSeenInboxes );
00760 mFavoriteFolderViewSeenInboxesItem->setLabel( i18n("FavoriteFolderViewSeenInboxes") );
00761 addItem( mFavoriteFolderViewSeenInboxesItem, QString::fromLatin1( "FavoriteFolderViewSeenInboxes" ) );
00762 }
00763
00764 GlobalSettingsBase::~GlobalSettingsBase()
00765 {
00766 if ( mSelf == this )
00767 staticGlobalSettingsBaseDeleter.setObject( mSelf, 0, false );
00768 }
00769