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 mStickyIdentityItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "sticky-identity" ), mStickyIdentity, false );
00388 mStickyIdentityItem->setLabel( i18n("sticky-identity") );
00389 mStickyIdentityItem->setWhatsThis( i18n("Remember this identity, so that it will be used in future composer windows as well.\n"
00390 " ") );
00391 addItem( mStickyIdentityItem, QString::fromLatin1( "StickyIdentity" ) );
00392 mStickyFccItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "sticky-fcc" ), mStickyFcc, false );
00393 mStickyFccItem->setLabel( i18n("sticky-fcc") );
00394 mStickyFccItem->setWhatsThis( i18n("Remember this folder for sent items, so that it will be used in future composer windows as well.") );
00395 addItem( mStickyFccItem, QString::fromLatin1( "StickyFcc" ) );
00396 mStickyTransportItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "sticky-transport" ), mStickyTransport, false );
00397 mStickyTransportItem->setLabel( i18n("sticky-transport") );
00398 mStickyTransportItem->setWhatsThis( i18n("Remember this mail transport, so that it will be used in future composer windows as well.") );
00399 addItem( mStickyTransportItem, QString::fromLatin1( "StickyTransport" ) );
00400 mStickyDictionaryItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "StickyDictionary" ), mStickyDictionary, false );
00401 mStickyDictionaryItem->setLabel( i18n("StickyDictionary") );
00402 mStickyDictionaryItem->setWhatsThis( i18n("Remember this dictionary, so that it will be used in future composer windows as well.\n"
00403 " ") );
00404 addItem( mStickyDictionaryItem, QString::fromLatin1( "StickyDictionary" ) );
00405 mWordWrapItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "word-wrap" ), mWordWrap, true );
00406 mWordWrapItem->setLabel( i18n("Word &wrap at column:") );
00407 addItem( mWordWrapItem, QString::fromLatin1( "WordWrap" ) );
00408 mUseFixedFontItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "use-fixed-font" ), mUseFixedFont, false );
00409 mUseFixedFontItem->setLabel( i18n("Use Fi&xed Font") );
00410 addItem( mUseFixedFontItem, QString::fromLatin1( "UseFixedFont" ) );
00411 mLineWrapWidthItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "break-at" ), mLineWrapWidth, 78 );
00412 mLineWrapWidthItem->setMinValue(30);
00413 mLineWrapWidthItem->setMaxValue(255);
00414 mLineWrapWidthItem->setLabel( i18n("break-at") );
00415 addItem( mLineWrapWidthItem, QString::fromLatin1( "LineWrapWidth" ) );
00416 mTooManyRecipientsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "too-many-recipients" ), mTooManyRecipients, true );
00417 mTooManyRecipientsItem->setLabel( i18n("Warn if the number of recipients is larger than") );
00418 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.") );
00419 addItem( mTooManyRecipientsItem, QString::fromLatin1( "TooManyRecipients" ) );
00420 mRecipientThresholdItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "recipient-threshold" ), mRecipientThreshold, 5 );
00421 mRecipientThresholdItem->setMinValue(1);
00422 mRecipientThresholdItem->setMaxValue(100);
00423 mRecipientThresholdItem->setLabel( i18n("recipient-threshold") );
00424 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.") );
00425 addItem( mRecipientThresholdItem, QString::fromLatin1( "RecipientThreshold" ) );
00426 mPreviousIdentityItem = new KConfigSkeleton::ItemUInt( currentGroup(), QString::fromLatin1( "previous-identity" ), mPreviousIdentity );
00427 mPreviousIdentityItem->setLabel( i18n("previous-identity") );
00428 addItem( mPreviousIdentityItem, QString::fromLatin1( "PreviousIdentity" ) );
00429 mPreviousFccItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "previous-fcc" ), mPreviousFcc );
00430 mPreviousFccItem->setLabel( i18n("previous-fcc") );
00431 addItem( mPreviousFccItem, QString::fromLatin1( "PreviousFcc" ) );
00432 mPreviousDictionaryItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "PreviousDictionary" ), mPreviousDictionary );
00433 mPreviousDictionaryItem->setLabel( i18n("PreviousDictionary") );
00434 addItem( mPreviousDictionaryItem, QString::fromLatin1( "PreviousDictionary" ) );
00435 mTransportHistoryItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "transport-history" ), mTransportHistory );
00436 mTransportHistoryItem->setLabel( i18n("transport-history") );
00437 addItem( mTransportHistoryItem, QString::fromLatin1( "TransportHistory" ) );
00438 mCurrentTransportItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "current-transport" ), mCurrentTransport );
00439 mCurrentTransportItem->setLabel( i18n("current-transport") );
00440 addItem( mCurrentTransportItem, QString::fromLatin1( "CurrentTransport" ) );
00441 mDefaultTransportItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "default-transport" ), mDefaultTransport );
00442 mDefaultTransportItem->setLabel( i18n("default-transport") );
00443 addItem( mDefaultTransportItem, QString::fromLatin1( "DefaultTransport" ) );
00444 mMaxTransportEntriesItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "max-transport-items" ), mMaxTransportEntries, 10 );
00445 mMaxTransportEntriesItem->setLabel( i18n("max-transport-items") );
00446 addItem( mMaxTransportEntriesItem, QString::fromLatin1( "MaxTransportEntries" ) );
00447 mOutlookCompatibleAttachmentsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "outlook-compatible-attachments" ), mOutlookCompatibleAttachments, false );
00448 mOutlookCompatibleAttachmentsItem->setLabel( i18n("Outlook-compatible attachment naming") );
00449 mOutlookCompatibleAttachmentsItem->setWhatsThis( i18n("Turn this option on to make Outlook ? understand attachment names containing non-English characters") );
00450 addItem( mOutlookCompatibleAttachmentsItem, QString::fromLatin1( "OutlookCompatibleAttachments" ) );
00451 mUseHtmlMarkupItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "html-markup" ), mUseHtmlMarkup, false );
00452 mUseHtmlMarkupItem->setLabel( i18n("html-markup") );
00453 addItem( mUseHtmlMarkupItem, QString::fromLatin1( "UseHtmlMarkup" ) );
00454 mPgpAutoSignItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "pgp-auto-sign" ), mPgpAutoSign, false );
00455 mPgpAutoSignItem->setLabel( i18n("pgp-auto-sign") );
00456 addItem( mPgpAutoSignItem, QString::fromLatin1( "PgpAutoSign" ) );
00457 mPgpAutoEncryptItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "pgp-auto-encrypt" ), mPgpAutoEncrypt, false );
00458 mPgpAutoEncryptItem->setLabel( i18n("pgp-auto-encrypt") );
00459 addItem( mPgpAutoEncryptItem, QString::fromLatin1( "PgpAutoEncrypt" ) );
00460 mNeverEncryptDraftsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "never-encrypt-drafts" ), mNeverEncryptDrafts, true );
00461 mNeverEncryptDraftsItem->setLabel( i18n("never-encrypt-drafts") );
00462 addItem( mNeverEncryptDraftsItem, QString::fromLatin1( "NeverEncryptDrafts" ) );
00463 mChiasmusKeyItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "chiasmus-key" ), mChiasmusKey );
00464 mChiasmusKeyItem->setLabel( i18n("chiasmus-key") );
00465 addItem( mChiasmusKeyItem, QString::fromLatin1( "ChiasmusKey" ) );
00466 mChiasmusOptionsItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "chiasmus-options" ), mChiasmusOptions );
00467 mChiasmusOptionsItem->setLabel( i18n("chiasmus-options") );
00468 addItem( mChiasmusOptionsItem, QString::fromLatin1( "ChiasmusOptions" ) );
00469 mConfirmBeforeSendItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "confirm-before-send" ), mConfirmBeforeSend, false );
00470 mConfirmBeforeSendItem->setLabel( i18n("Confirm &before send") );
00471 addItem( mConfirmBeforeSendItem, QString::fromLatin1( "ConfirmBeforeSend" ) );
00472 mRequestMDNItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "request-mdn" ), mRequestMDN, false );
00473 mRequestMDNItem->setLabel( i18n("Automatically request &message disposition notifications") );
00474 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>") );
00475 addItem( mRequestMDNItem, QString::fromLatin1( "RequestMDN" ) );
00476 mShowRecentAddressesInComposerItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "showRecentAddressesInComposer" ), mShowRecentAddressesInComposer, true );
00477 mShowRecentAddressesInComposerItem->setLabel( i18n("Use recent addresses for autocompletion") );
00478 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.") );
00479 addItem( mShowRecentAddressesInComposerItem, QString::fromLatin1( "ShowRecentAddressesInComposer" ) );
00480 mHeadersItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "headers" ), mHeaders, HDR_STANDARD );
00481 mHeadersItem->setLabel( i18n("headers") );
00482 addItem( mHeadersItem, QString::fromLatin1( "Headers" ) );
00483 mCompletionModeItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "Completion Mode" ), mCompletionMode, KGlobalSettings::completionMode() );
00484 mCompletionModeItem->setLabel( i18n("Completion Mode") );
00485 addItem( mCompletionModeItem, QString::fromLatin1( "CompletionMode" ) );
00486 mAutoSpellCheckingItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "autoSpellChecking" ), mAutoSpellChecking, true );
00487 mAutoSpellCheckingItem->setLabel( i18n("autoSpellChecking") );
00488 addItem( mAutoSpellCheckingItem, QString::fromLatin1( "AutoSpellChecking" ) );
00489 mShowForgottenAttachmentWarningItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "showForgottenAttachmentWarning" ), mShowForgottenAttachmentWarning, true );
00490 mShowForgottenAttachmentWarningItem->setLabel( i18n("showForgottenAttachmentWarning") );
00491 addItem( mShowForgottenAttachmentWarningItem, QString::fromLatin1( "ShowForgottenAttachmentWarning" ) );
00492 mAttachmentKeywordsItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "attachment-keywords" ), mAttachmentKeywords );
00493 mAttachmentKeywordsItem->setLabel( i18n("attachment-keywords") );
00494 addItem( mAttachmentKeywordsItem, QString::fromLatin1( "AttachmentKeywords" ) );
00495 mShowMessagePartDialogOnAttachItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "showMessagePartDialogOnAttach" ), mShowMessagePartDialogOnAttach, false );
00496 mShowMessagePartDialogOnAttachItem->setLabel( i18n("showMessagePartDialogOnAttach") );
00497 addItem( mShowMessagePartDialogOnAttachItem, QString::fromLatin1( "ShowMessagePartDialogOnAttach" ) );
00498 mAutosaveIntervalItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "autosave" ), mAutosaveInterval, 2 );
00499 mAutosaveIntervalItem->setLabel( i18n("Autosave interval:") );
00500 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.") );
00501 addItem( mAutosaveIntervalItem, QString::fromLatin1( "AutosaveInterval" ) );
00502 mPrependSignatureItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "prepend-signature" ), mPrependSignature, false );
00503 mPrependSignatureItem->setLabel( i18n("Insert signatures above quoted text") );
00504 addItem( mPrependSignatureItem, QString::fromLatin1( "PrependSignature" ) );
00505 QStringList defaultReplyPrefixes;
00506 defaultReplyPrefixes.append( QString::fromUtf8( "Re\\s*:" ) );
00507 defaultReplyPrefixes.append( QString::fromUtf8( "Re\\[\\d+\\]:" ) );
00508 defaultReplyPrefixes.append( QString::fromUtf8( "Re\\d+:" ) );
00509
00510 mReplyPrefixesItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "reply-prefixes" ), mReplyPrefixes, defaultReplyPrefixes );
00511 mReplyPrefixesItem->setLabel( i18n("reply-prefixes") );
00512 addItem( mReplyPrefixesItem, QString::fromLatin1( "ReplyPrefixes" ) );
00513 mReplaceReplyPrefixItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "replace-reply-prefix" ), mReplaceReplyPrefix, true );
00514 mReplaceReplyPrefixItem->setLabel( i18n("Replace recognized prefi&x with \"Re:\"") );
00515 addItem( mReplaceReplyPrefixItem, QString::fromLatin1( "ReplaceReplyPrefix" ) );
00516 QStringList defaultForwardPrefixes;
00517 defaultForwardPrefixes.append( QString::fromUtf8( "Fwd:" ) );
00518 defaultForwardPrefixes.append( QString::fromUtf8( "FW:" ) );
00519
00520 mForwardPrefixesItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "forward-prefixes" ), mForwardPrefixes, defaultForwardPrefixes );
00521 mForwardPrefixesItem->setLabel( i18n("forward-prefixes") );
00522 addItem( mForwardPrefixesItem, QString::fromLatin1( "ForwardPrefixes" ) );
00523 mReplaceForwardPrefixItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "replace-forward-prefix" ), mReplaceForwardPrefix, true );
00524 mReplaceForwardPrefixItem->setLabel( i18n("Replace recognized prefix with \"&Fwd:\"") );
00525 addItem( mReplaceForwardPrefixItem, QString::fromLatin1( "ReplaceForwardPrefix" ) );
00526 mSmartQuoteItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "smart-quote" ), mSmartQuote, true );
00527 mSmartQuoteItem->setLabel( i18n("Use smart "ing") );
00528 addItem( mSmartQuoteItem, QString::fromLatin1( "SmartQuote" ) );
00529 mStripSignatureItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "StripSignature" ), mStripSignature, true );
00530 mStripSignatureItem->setLabel( i18n("Remove the signature when replying") );
00531 addItem( mStripSignatureItem, QString::fromLatin1( "StripSignature" ) );
00532 mQuoteSelectionOnlyItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "QuoteSelectionOnly" ), mQuoteSelectionOnly, true );
00533 mQuoteSelectionOnlyItem->setLabel( i18n("Only quote selected text when replying") );
00534 addItem( mQuoteSelectionOnlyItem, QString::fromLatin1( "QuoteSelectionOnly" ) );
00535 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesAddresseeSelectorType;
00536 {
00537 KConfigSkeleton::ItemEnum::Choice choice;
00538 choice.name = QString::fromLatin1( "New" );
00539 valuesAddresseeSelectorType.append( choice );
00540 }
00541 {
00542 KConfigSkeleton::ItemEnum::Choice choice;
00543 choice.name = QString::fromLatin1( "Old" );
00544 valuesAddresseeSelectorType.append( choice );
00545 }
00546 mAddresseeSelectorTypeItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "AddresseeSelectorType" ), mAddresseeSelectorType, valuesAddresseeSelectorType, EnumAddresseeSelectorType::Old );
00547 mAddresseeSelectorTypeItem->setLabel( i18n("Type of addressee selector") );
00548 mAddresseeSelectorTypeItem->setWhatsThis( i18n("Sets the type of the dialog for selecting recipients for To,\n"
00549 " CC and BCC.") );
00550 addItem( mAddresseeSelectorTypeItem, QString::fromLatin1( "AddresseeSelectorType" ) );
00551 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesRecipientsEditorType;
00552 {
00553 KConfigSkeleton::ItemEnum::Choice choice;
00554 choice.name = QString::fromLatin1( "Classic" );
00555 valuesRecipientsEditorType.append( choice );
00556 }
00557 {
00558 KConfigSkeleton::ItemEnum::Choice choice;
00559 choice.name = QString::fromLatin1( "MultiLine" );
00560 valuesRecipientsEditorType.append( choice );
00561 }
00562 mRecipientsEditorTypeItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "RecipientsEditorType" ), mRecipientsEditorType, valuesRecipientsEditorType, EnumRecipientsEditorType::MultiLine );
00563 mRecipientsEditorTypeItem->setLabel( i18n("Type of recipients editor") );
00564 mRecipientsEditorTypeItem->setWhatsThis( i18n("Sets the type of the recipients editor for editing To,\n"
00565 " CC and BCC.") );
00566 addItem( mRecipientsEditorTypeItem, QString::fromLatin1( "RecipientsEditorType" ) );
00567 QValueList<KConfigSkeleton::ItemEnum::Choice> valuesSecondRecipientTypeDefault;
00568 {
00569 KConfigSkeleton::ItemEnum::Choice choice;
00570 choice.name = QString::fromLatin1( "To" );
00571 valuesSecondRecipientTypeDefault.append( choice );
00572 }
00573 {
00574 KConfigSkeleton::ItemEnum::Choice choice;
00575 choice.name = QString::fromLatin1( "Cc" );
00576 valuesSecondRecipientTypeDefault.append( choice );
00577 }
00578 mSecondRecipientTypeDefaultItem = new KConfigSkeleton::ItemEnum( currentGroup(), QString::fromLatin1( "SecondRecipientTypeDefault" ), mSecondRecipientTypeDefault, valuesSecondRecipientTypeDefault, EnumSecondRecipientTypeDefault::To );
00579 mSecondRecipientTypeDefaultItem->setLabel( i18n("SecondRecipientTypeDefault") );
00580 addItem( mSecondRecipientTypeDefaultItem, QString::fromLatin1( "SecondRecipientTypeDefault" ) );
00581 mMaximumRecipientsItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "MaximumRecipients" ), mMaximumRecipients, 200 );
00582 mMaximumRecipientsItem->setLabel( i18n("Maximum number of recipient editor lines.") );
00583 addItem( mMaximumRecipientsItem, QString::fromLatin1( "MaximumRecipients" ) );
00584 mCustomTemplatesItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "CustomTemplates" ), mCustomTemplates );
00585 mCustomTemplatesItem->setLabel( i18n("CustomTemplates") );
00586 addItem( mCustomTemplatesItem, QString::fromLatin1( "CustomTemplates" ) );
00587 mMimetypesToStripWhenInlineForwardingItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "MimetypesToStripWhenInlineForwarding" ), mMimetypesToStripWhenInlineForwarding );
00588 mMimetypesToStripWhenInlineForwardingItem->setLabel( i18n("List of message part types to strip off mails that are being forwarded inline.") );
00589 addItem( mMimetypesToStripWhenInlineForwardingItem, QString::fromLatin1( "MimetypesToStripWhenInlineForwarding" ) );
00590 mMaximumAttachmentSizeItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "MaximumAttachmentSize" ), mMaximumAttachmentSize, 50 );
00591 mMaximumAttachmentSizeItem->setLabel( i18n("The maximum size in MB that email attachments are allowed to have.") );
00592 addItem( mMaximumAttachmentSizeItem, QString::fromLatin1( "MaximumAttachmentSize" ) );
00593 mShowSnippetManagerItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowSnippetManager" ), mShowSnippetManager, false );
00594 mShowSnippetManagerItem->setLabel( i18n("Show the Text Snippet Management and Insertion Panel in the composer.") );
00595 addItem( mShowSnippetManagerItem, QString::fromLatin1( "ShowSnippetManager" ) );
00596 QValueList<int> defaultSnippetSplitterPosition;
00597
00598 mSnippetSplitterPositionItem = new KConfigSkeleton::ItemIntList( currentGroup(), QString::fromLatin1( "SnippetSplitterPosition" ), mSnippetSplitterPosition, defaultSnippetSplitterPosition );
00599 mSnippetSplitterPositionItem->setLabel( i18n("SnippetSplitterPosition") );
00600 addItem( mSnippetSplitterPositionItem, QString::fromLatin1( "SnippetSplitterPosition" ) );
00601 mShowGnuPGAuditLogAfterSuccessfulSignEncryptItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowGnuPGAuditLogAfterSuccessfulSignEncrypt" ), mShowGnuPGAuditLogAfterSuccessfulSignEncrypt, false );
00602 mShowGnuPGAuditLogAfterSuccessfulSignEncryptItem->setLabel( i18n("Show the GnuPG Audit Log even after crypto operations that completed successfully.") );
00603 addItem( mShowGnuPGAuditLogAfterSuccessfulSignEncryptItem, QString::fromLatin1( "ShowGnuPGAuditLogAfterSuccessfulSignEncrypt" ) );
00604
00605 setCurrentGroup( QString::fromLatin1( "Fonts" ) );
00606
00607 mUseDefaultFontsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "defaultFonts" ), mUseDefaultFonts, true );
00608 mUseDefaultFontsItem->setLabel( i18n("defaultFonts") );
00609 addItem( mUseDefaultFontsItem, QString::fromLatin1( "UseDefaultFonts" ) );
00610 mComposerFontItem = new KConfigSkeleton::ItemFont( currentGroup(), QString::fromLatin1( "composer-font" ), mComposerFont, KGlobalSettings::generalFont() );
00611 mComposerFontItem->setLabel( i18n("composer-font") );
00612 addItem( mComposerFontItem, QString::fromLatin1( "ComposerFont" ) );
00613 mFixedFontItem = new KConfigSkeleton::ItemFont( currentGroup(), QString::fromLatin1( "fixed-font" ), mFixedFont, KGlobalSettings::fixedFont() );
00614 mFixedFontItem->setLabel( i18n("fixed-font") );
00615 addItem( mFixedFontItem, QString::fromLatin1( "FixedFont" ) );
00616
00617 setCurrentGroup( QString::fromLatin1( "Geometry" ) );
00618
00619 mComposerSizeItem = new KConfigSkeleton::ItemSize( currentGroup(), QString::fromLatin1( "composer" ), mComposerSize, QSize(480,510) );
00620 mComposerSizeItem->setLabel( i18n("composer") );
00621 addItem( mComposerSizeItem, QString::fromLatin1( "ComposerSize" ) );
00622
00623 setCurrentGroup( QString::fromLatin1( "Reader" ) );
00624
00625 mCloseAfterReplyOrForwardItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "CloseAfterReplyOrForward" ), mCloseAfterReplyOrForward, false );
00626 mCloseAfterReplyOrForwardItem->setLabel( i18n("Close message window after replying or forwarding the message.") );
00627 addItem( mCloseAfterReplyOrForwardItem, QString::fromLatin1( "CloseAfterReplyOrForward" ) );
00628 mUseDefaultColorsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "defaultColors" ), mUseDefaultColors, true );
00629 mUseDefaultColorsItem->setLabel( i18n("defaultColors") );
00630 addItem( mUseDefaultColorsItem, QString::fromLatin1( "UseDefaultColors" ) );
00631 mForegroundColorItem = new KConfigSkeleton::ItemColor( currentGroup(), QString::fromLatin1( "ForegroundColor" ), mForegroundColor, kapp->palette().active().text() );
00632 mForegroundColorItem->setLabel( i18n("ForegroundColor") );
00633 addItem( mForegroundColorItem, QString::fromLatin1( "ForegroundColor" ) );
00634 mBackgroundColorItem = new KConfigSkeleton::ItemColor( currentGroup(), QString::fromLatin1( "BackgroundColor" ), mBackgroundColor, kapp->palette().active().base() );
00635 mBackgroundColorItem->setLabel( i18n("BackgroundColor") );
00636 addItem( mBackgroundColorItem, QString::fromLatin1( "BackgroundColor" ) );
00637 mFallbackCharacterEncodingItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "FallbackCharacterEncoding" ), mFallbackCharacterEncoding, QCString(QTextCodec::codecForLocale()->name()).lower() == "eucjp"? QCString("jis7") : QCString(QTextCodec::codecForLocale()->name()).lower() );
00638 mFallbackCharacterEncodingItem->setLabel( i18n("FallbackCharacterEncoding") );
00639 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.") );
00640 addItem( mFallbackCharacterEncodingItem, QString::fromLatin1( "FallbackCharacterEncoding" ) );
00641 mOverrideCharacterEncodingItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "encoding" ), mOverrideCharacterEncoding );
00642 mOverrideCharacterEncodingItem->setLabel( i18n("encoding") );
00643 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.") );
00644 addItem( mOverrideCharacterEncodingItem, QString::fromLatin1( "OverrideCharacterEncoding" ) );
00645 mShowEmoticonsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowEmoticons" ), mShowEmoticons, true );
00646 mShowEmoticonsItem->setLabel( i18n("Replace smileys by emoticons") );
00647 mShowEmoticonsItem->setWhatsThis( i18n("Enable this if you want smileys like :-) appearing in the message text to be replaced by emoticons (small pictures).") );
00648 addItem( mShowEmoticonsItem, QString::fromLatin1( "ShowEmoticons" ) );
00649 mShowExpandQuotesMarkItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowExpandQuotesMark" ), mShowExpandQuotesMark, false );
00650 mShowExpandQuotesMarkItem->setLabel( i18n("Show expand/collapse quote marks") );
00651 mShowExpandQuotesMarkItem->setWhatsThis( i18n("Enable this option to show different levels of quoted text. Disable to hide the levels of quoted text.") );
00652 addItem( mShowExpandQuotesMarkItem, QString::fromLatin1( "ShowExpandQuotesMark" ) );
00653 mCollapseQuoteLevelSpinItem = new KConfigSkeleton::ItemInt( currentGroup(), QString::fromLatin1( "CollapseQuoteLevelSpin" ), mCollapseQuoteLevelSpin, 3 );
00654 mCollapseQuoteLevelSpinItem->setMinValue(0);
00655 mCollapseQuoteLevelSpinItem->setMaxValue(10);
00656 mCollapseQuoteLevelSpinItem->setLabel( i18n("Automatic collapse level:") );
00657 addItem( mCollapseQuoteLevelSpinItem, QString::fromLatin1( "CollapseQuoteLevelSpin" ) );
00658 mShrinkQuotesItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShrinkQuotes" ), mShrinkQuotes, false );
00659 mShrinkQuotesItem->setLabel( i18n("Reduce font size for quoted text") );
00660 mShrinkQuotesItem->setWhatsThis( i18n("Enable this option to show quoted text with a smaller font.") );
00661 addItem( mShrinkQuotesItem, QString::fromLatin1( "ShrinkQuotes" ) );
00662 mChiasmusDecryptionKeyItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "ChiasmusDecryptionKey" ), mChiasmusDecryptionKey );
00663 mChiasmusDecryptionKeyItem->setLabel( i18n("ChiasmusDecryptionKey") );
00664 addItem( mChiasmusDecryptionKeyItem, QString::fromLatin1( "ChiasmusDecryptionKey" ) );
00665 mChiasmusDecryptionOptionsItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "ChiasmusDecryptionOptions" ), mChiasmusDecryptionOptions );
00666 mChiasmusDecryptionOptionsItem->setLabel( i18n("ChiasmusDecryptionOptions") );
00667 addItem( mChiasmusDecryptionOptionsItem, QString::fromLatin1( "ChiasmusDecryptionOptions" ) );
00668 mShowUserAgentItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "ShowUserAgent" ), mShowUserAgent, false );
00669 mShowUserAgentItem->setLabel( i18n("Show user agent in fancy headers") );
00670 mShowUserAgentItem->setWhatsThis( i18n("Enable this option to get the User-Agent and X-Mailer header lines displayed when using fancy headers.") );
00671 addItem( mShowUserAgentItem, QString::fromLatin1( "ShowUserAgent" ) );
00672 mAllowAttachmentDeletionItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AllowAttachmentDeletion" ), mAllowAttachmentDeletion, true );
00673 mAllowAttachmentDeletionItem->setLabel( i18n("Allow to delete attachments of existing mails.") );
00674 addItem( mAllowAttachmentDeletionItem, QString::fromLatin1( "AllowAttachmentDeletion" ) );
00675 mAllowAttachmentEditingItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AllowAttachmentEditing" ), mAllowAttachmentEditing, false );
00676 mAllowAttachmentEditingItem->setLabel( i18n("Allow to edit attachments of existing mails.") );
00677 addItem( mAllowAttachmentEditingItem, QString::fromLatin1( "AllowAttachmentEditing" ) );
00678 mAlwaysDecryptItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AlwaysDecrypt" ), mAlwaysDecrypt, false );
00679 mAlwaysDecryptItem->setLabel( i18n("Always decrypt messages when viewing or ask before decrypting") );
00680 addItem( mAlwaysDecryptItem, QString::fromLatin1( "AlwaysDecrypt" ) );
00681
00682 setCurrentGroup( QString::fromLatin1( "TextIndex" ) );
00683
00684 mAutomaticDecryptItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "automaticDecrypt" ), mAutomaticDecrypt, true );
00685 mAutomaticDecryptItem->setLabel( i18n("automaticDecrypt") );
00686 addItem( mAutomaticDecryptItem, QString::fromLatin1( "automaticDecrypt" ) );
00687
00688 setCurrentGroup( QString::fromLatin1( "MDN" ) );
00689
00690 mSendMDNsWithEmptySenderItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "SendMDNsWithEmptySender" ), mSendMDNsWithEmptySender, false );
00691 mSendMDNsWithEmptySenderItem->setLabel( i18n("Send Message Disposition Notifications with an empty sender.") );
00692 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.") );
00693 addItem( mSendMDNsWithEmptySenderItem, QString::fromLatin1( "SendMDNsWithEmptySender" ) );
00694
00695 setCurrentGroup( QString::fromLatin1( "GlobalTemplates" ) );
00696
00697 mPhrasesConvertedItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "PhrasesConverted" ), mPhrasesConverted, false );
00698 mPhrasesConvertedItem->setLabel( i18n("Phrases has been converted to templates") );
00699 mPhrasesConvertedItem->setWhatsThis( i18n("Old phrases have been converted to templates") );
00700 addItem( mPhrasesConvertedItem, QString::fromLatin1( "PhrasesConverted" ) );
00701 mTemplateNewMessageItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "TemplateNewMessage" ), mTemplateNewMessage, TemplatesConfiguration::defaultNewMessage() );
00702 mTemplateNewMessageItem->setLabel( i18n("Message template for new message") );
00703 addItem( mTemplateNewMessageItem, QString::fromLatin1( "TemplateNewMessage" ) );
00704 mTemplateReplyItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "TemplateReply" ), mTemplateReply, TemplatesConfiguration::defaultReply() );
00705 mTemplateReplyItem->setLabel( i18n("Message template for reply") );
00706 addItem( mTemplateReplyItem, QString::fromLatin1( "TemplateReply" ) );
00707 mTemplateReplyAllItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "TemplateReplyAll" ), mTemplateReplyAll, TemplatesConfiguration::defaultReplyAll() );
00708 mTemplateReplyAllItem->setLabel( i18n("Message template for reply to all") );
00709 addItem( mTemplateReplyAllItem, QString::fromLatin1( "TemplateReplyAll" ) );
00710 mTemplateForwardItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "TemplateForward" ), mTemplateForward, TemplatesConfiguration::defaultForward() );
00711 mTemplateForwardItem->setLabel( i18n("Message template for forward") );
00712 addItem( mTemplateForwardItem, QString::fromLatin1( "TemplateForward" ) );
00713 mQuoteStringItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "QuoteString" ), mQuoteString, TemplatesConfiguration::defaultQuoteString() );
00714 mQuoteStringItem->setLabel( i18n("Quote characters") );
00715 addItem( mQuoteStringItem, QString::fromLatin1( "QuoteString" ) );
00716
00717 setCurrentGroup( QString::fromLatin1( "OutOfOffice" ) );
00718
00719 mAllowOutOfOfficeSettingsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AllowOutOfOfficeSettings" ), mAllowOutOfOfficeSettings, true );
00720 mAllowOutOfOfficeSettingsItem->setLabel( i18n("Allow out-of-office settings to to be changeable by the user.") );
00721 addItem( mAllowOutOfOfficeSettingsItem, QString::fromLatin1( "AllowOutOfOfficeSettings" ) );
00722 mAllowOutOfOfficeUploadButNoSettingsItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "AllowOutOfOfficeUploadButNoSettings" ), mAllowOutOfOfficeUploadButNoSettings, false );
00723 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.") );
00724 addItem( mAllowOutOfOfficeUploadButNoSettingsItem, QString::fromLatin1( "AllowOutOfOfficeUploadButNoSettings" ) );
00725 mOutOfOfficeDomainItem = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "OutOfOfficeDomain" ), mOutOfOfficeDomain );
00726 mOutOfOfficeDomainItem->setLabel( i18n("Send out-of-office replies to mails coming from this domain only.") );
00727 addItem( mOutOfOfficeDomainItem, QString::fromLatin1( "OutOfOfficeDomain" ) );
00728 mOutOfOfficeReactToSpamItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "OutOfOfficeReactToSpam" ), mOutOfOfficeReactToSpam, false );
00729 mOutOfOfficeReactToSpamItem->setLabel( i18n("Allow out-of-office replies to be sent to messages marked as SPAM.") );
00730 addItem( mOutOfOfficeReactToSpamItem, QString::fromLatin1( "OutOfOfficeReactToSpam" ) );
00731 mCheckOutOfOfficeOnStartupItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "CheckOutOfOfficeOnStartup" ), mCheckOutOfOfficeOnStartup, true );
00732 mCheckOutOfOfficeOnStartupItem->setLabel( i18n("Check if there is still an active out-of-office reply configured when starting KMail.") );
00733 addItem( mCheckOutOfOfficeOnStartupItem, QString::fromLatin1( "CheckOutOfOfficeOnStartup" ) );
00734
00735 setCurrentGroup( QString::fromLatin1( "FavoriteFolderView" ) );
00736
00737 mEnableFavoriteFolderViewItem = new KConfigSkeleton::ItemBool( currentGroup(), QString::fromLatin1( "EnableFavoriteFolderView" ), mEnableFavoriteFolderView, true );
00738 mEnableFavoriteFolderViewItem->setLabel( i18n("EnableFavoriteFolderView") );
00739 addItem( mEnableFavoriteFolderViewItem, QString::fromLatin1( "EnableFavoriteFolderView" ) );
00740 QValueList<int> defaultFolderViewSplitterPosition;
00741
00742 mFolderViewSplitterPositionItem = new KConfigSkeleton::ItemIntList( currentGroup(), QString::fromLatin1( "FolderViewSplitterPosition" ), mFolderViewSplitterPosition, defaultFolderViewSplitterPosition );
00743 mFolderViewSplitterPositionItem->setLabel( i18n("FolderViewSplitterPosition") );
00744 addItem( mFolderViewSplitterPositionItem, QString::fromLatin1( "FolderViewSplitterPosition" ) );
00745 QValueList<int> defaultFavoriteFolderIds;
00746
00747 mFavoriteFolderIdsItem = new KConfigSkeleton::ItemIntList( currentGroup(), QString::fromLatin1( "FavoriteFolderIds" ), mFavoriteFolderIds, defaultFavoriteFolderIds );
00748 mFavoriteFolderIdsItem->setLabel( i18n("FavoriteFolderIds") );
00749 addItem( mFavoriteFolderIdsItem, QString::fromLatin1( "FavoriteFolderIds" ) );
00750 mFavoriteFolderNamesItem = new KConfigSkeleton::ItemStringList( currentGroup(), QString::fromLatin1( "FavoriteFolderNames" ), mFavoriteFolderNames );
00751 mFavoriteFolderNamesItem->setLabel( i18n("FavoriteFolderNames") );
00752 addItem( mFavoriteFolderNamesItem, QString::fromLatin1( "FavoriteFolderNames" ) );
00753 QValueList<int> defaultFavoriteFolderViewSeenInboxes;
00754
00755 mFavoriteFolderViewSeenInboxesItem = new KConfigSkeleton::ItemIntList( currentGroup(), QString::fromLatin1( "FavoriteFolderViewSeenInboxes" ), mFavoriteFolderViewSeenInboxes, defaultFavoriteFolderViewSeenInboxes );
00756 mFavoriteFolderViewSeenInboxesItem->setLabel( i18n("FavoriteFolderViewSeenInboxes") );
00757 addItem( mFavoriteFolderViewSeenInboxesItem, QString::fromLatin1( "FavoriteFolderViewSeenInboxes" ) );
00758 }
00759
00760 GlobalSettingsBase::~GlobalSettingsBase()
00761 {
00762 if ( mSelf == this )
00763 staticGlobalSettingsBaseDeleter.setObject( mSelf, 0, false );
00764 }
00765