diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-09-01 00:37:02 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-09-01 00:37:02 +0000 |
commit | cc29364f06178f8f6b457384f2ec37a042bd9d43 (patch) | |
tree | 7c77a3184c698bbf9d98cef09fb1ba8124daceba /kmailcvt/kmailcvt.cpp | |
parent | 4f6c584bacc8c3c694228f36ada3de77a76614a6 (diff) | |
download | tdepim-cc29364f06178f8f6b457384f2ec37a042bd9d43.tar.gz tdepim-cc29364f06178f8f6b457384f2ec37a042bd9d43.zip |
* Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch
* Ensured that the Trinity changes were applied on top of those enhancements, and any redundancy removed
* Added journal read support to the CalDAV resource
* Fixed CalDAV resource to use events URL for tasks and journals when separate URL checkbox unchecked
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdepim@1170461 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kmailcvt/kmailcvt.cpp')
-rw-r--r-- | kmailcvt/kmailcvt.cpp | 60 |
1 files changed, 42 insertions, 18 deletions
diff --git a/kmailcvt/kmailcvt.cpp b/kmailcvt/kmailcvt.cpp index 08dabe830..d56577f4d 100644 --- a/kmailcvt/kmailcvt.cpp +++ b/kmailcvt/kmailcvt.cpp @@ -17,7 +17,9 @@ #include "kmailcvt.h" #include <kaboutapplication.h> #include <tqpushbutton.h> - +#include <dcopclient.h> +#include <dcopref.h> +#include <kdebug.h> #include "filters.hxx" KMailCVT::KMailCVT(TQWidget *parent, const char *name) @@ -34,6 +36,19 @@ KMailCVT::KMailCVT(TQWidget *parent, const char *name) } KMailCVT::~KMailCVT() { + endImport(); +} + +void KMailCVT::endImport() { + if ( !kapp->dcopClient()->isApplicationRegistered( "kmail" ) ) + KApplication::startServiceByDesktopName( "kmail", TQString::null ); // Will wait until kmail is started + + DCOPReply reply = DCOPRef( "kmail", "KMailIface" ).call( "dcopAddMessage", TQString::null, TQString::null, TQString::null); + if ( !reply.isValid() ) + return; + reply = DCOPRef( "kmail", "KMailIface" ).call( "dcopResetAddMessage" ); + if ( !reply.isValid() ) + return; } void KMailCVT::next() { @@ -41,24 +56,33 @@ void KMailCVT::next() { // Save selected filter Filter *selectedFilter = selfilterpage->getSelectedFilter(); // without filter don't go next - if (!selectedFilter) + if ( !selectedFilter ) return; - // Goto next page - KWizard::next(); - // Disable back & finish - setBackEnabled( currentPage(), false ); - setFinishEnabled( currentPage(), false ); - // Start import - FilterInfo *info = new FilterInfo(importpage, this, selfilterpage->removeDupMsg_checked()); - info->setStatusMsg(i18n("Import in progress")); - info->clear(); // Clear info from last time - selectedFilter->import(info); - info->setStatusMsg(i18n("Import finished")); - // Cleanup - delete info; - // Enable finish & back buttons - setFinishEnabled( currentPage(), true ); - setBackEnabled( currentPage(), true ); + + if ( !selectedFilter->needsSecondPage() ) { + FilterInfo *info = new FilterInfo( importpage, this, selfilterpage->removeDupMsg_checked() ); + selectedFilter->import( info ); + accept(); + delete info; + } + else { + // Goto next page + KWizard::next(); + // Disable back & finish + setBackEnabled( currentPage(), false ); + setFinishEnabled( currentPage(), false ); + // Start import + FilterInfo *info = new FilterInfo(importpage, this, selfilterpage->removeDupMsg_checked()); + info->setStatusMsg(i18n("Import in progress")); + info->clear(); // Clear info from last time + selectedFilter->import(info); + info->setStatusMsg(i18n("Import finished")); + // Cleanup + delete info; + // Enable finish & back buttons + setFinishEnabled( currentPage(), true ); + setBackEnabled( currentPage(), true ); + } } else KWizard::next(); } |