From a6f10ac2faaed2e4a329c7c822d703f29bf924e9 Mon Sep 17 00:00:00 2001 From: Till Adam Date: Wed, 21 Dec 2005 16:47:01 +0000 Subject: [PATCH] Make sure that the kmail config is reloaded when the kcms signal that things changed, even from the part, which means from inside Kontact. svn path=/branches/KDE/3.5/kdepim/; revision=490368 --- kmail_part.cpp | 16 ++++++++++------ kmail_part.h | 2 +- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/kmail_part.cpp b/kmail_part.cpp index 45fd1dc03..2fc8cb922 100644 --- a/kmail_part.cpp +++ b/kmail_part.cpp @@ -50,6 +50,8 @@ using KRecentAddress::RecentAddresses; #include #include #include +#include + #include @@ -82,15 +84,15 @@ KMailPart::KMailPart(QWidget *parentWidget, const char *widgetName, kapp->dcopClient()->suspend(); // Don't handle DCOP requests yet //local, do the init - KMKernel *kmailKernel = new KMKernel(); - kmailKernel->init(); - kmailKernel->setXmlGuiInstance( KMailFactory::instance() ); + KMKernel *mKMailKernel = new KMKernel(); + mKMailKernel->init(); + mKMailKernel->setXmlGuiInstance( KMailFactory::instance() ); // and session management - kmailKernel->doSessionManagement(); + mKMailKernel->doSessionManagement(); // any dead letters? - kmailKernel->recoverDeadLetters(); + mKMailKernel->recoverDeadLetters(); kmsetSignalHandler(kmsignalHandler); kapp->dcopClient()->resume(); // Ok. We are ready for DCOP requests. @@ -141,6 +143,9 @@ KMailPart::KMailPart(QWidget *parentWidget, const char *widgetName, KGlobal::iconLoader()->addAppDir( "kmail" ); setXMLFile( "kmail_part.rc" ); #endif + + KSettings::Dispatcher::self()->registerInstance( KMailFactory::instance(), mKMailKernel, + SLOT( slotConfigChanged() ) ); } KMailPart::~KMailPart() @@ -237,6 +242,5 @@ KMainWindow * KMailStatusBarExtension::mainWindow() const return static_cast( mParent->parentWidget() ); } - #include "kmail_part.moc" diff --git a/kmail_part.h b/kmail_part.h index 9a1261758..7a4ed9b78 100644 --- a/kmail_part.h +++ b/kmail_part.h @@ -78,7 +78,7 @@ class KDE_EXPORT KMailPart: public KParts::ReadOnlyPart, virtual public KMailPar virtual void guiActivateEvent(KParts::GUIActivateEvent *e); private: - KMKernel *kmailKernel; + KMKernel *mKMailKernel; KMMainWidget *mainWidget; ActionManager *mActionManager; KMailStatusBarExtension *mStatusBar;