From 4ec5d44e4ab561c636f84854cb94d93cde1babcd Mon Sep 17 00:00:00 2001 From: Andreas Gungl Date: Sun, 4 Dec 2005 19:31:10 +0000 Subject: [PATCH] apply changes from fix for bug 113730 - this needs more work though svn path=/trunk/KDE/kdepim/; revision=485529 --- kmcommands.cpp | 50 ++++++++++++++++++++++++++------------------------ kmkernel.cpp | 3 +++ 2 files changed, 29 insertions(+), 24 deletions(-) diff --git a/kmcommands.cpp b/kmcommands.cpp index ea8dd1a20..7ffdd42ef 100644 --- a/kmcommands.cpp +++ b/kmcommands.cpp @@ -1506,30 +1506,32 @@ KMMetaFilterActionCommand::KMMetaFilterActionCommand( KMFilter *filter, void KMMetaFilterActionCommand::start() { -#if 0 // use action scheduler - KMFilterMgr::FilterSet set = KMFilterMgr::All; - Q3PtrList filters; - filters.append( mFilter ); - ActionScheduler *scheduler = new ActionScheduler( set, filters, mHeaders ); - scheduler->setAlwaysMatch( true ); - scheduler->setAutoDestruct( true ); - - int contentX, contentY; - HeaderItem *nextItem = mHeaders->prepareMove( &contentX, &contentY ); - Q3PtrList msgList = *mHeaders->selectedMsgs(true); - mHeaders->finalizeMove( nextItem, contentX, contentY ); - - - for (KMMsgBase *msg = msgList.first(); msg; msg = msgList.next()) - scheduler->execFilters( msg ); -#else - KMCommand *filterCommand = new KMFilterActionCommand( mMainWidget, - *mHeaders->selectedMsgs(), mFilter); - filterCommand->start(); - int contentX, contentY; - HeaderItem *item = mHeaders->prepareMove( &contentX, &contentY ); - mHeaders->finalizeMove( item, contentX, contentY ); -#endif + if ( ActionScheduler::isEnabled() && false ) { // don't use it for now + // use action scheduler + KMFilterMgr::FilterSet set = KMFilterMgr::All; + QList filters; + filters.append( mFilter ); + ActionScheduler *scheduler = new ActionScheduler( set, filters, mHeaders ); + scheduler->setAlwaysMatch( true ); + scheduler->setAutoDestruct( true ); + + int contentX, contentY; + HeaderItem *nextItem = mHeaders->prepareMove( &contentX, &contentY ); +#warning Port me! + QList msgList; // = *mHeaders->selectedMsgs(true); + mHeaders->finalizeMove( nextItem, contentX, contentY ); + + QListIterator it( msgList ); + while ( it.hasNext()) + scheduler->execFilters( it.next() ); + } else { + KMCommand *filterCommand = new KMFilterActionCommand( mMainWidget, + *mHeaders->selectedMsgs(), mFilter); + filterCommand->start(); + int contentX, contentY; + HeaderItem *item = mHeaders->prepareMove( &contentX, &contentY ); + mHeaders->finalizeMove( item, contentX, contentY ); + } } FolderShortcutCommand::FolderShortcutCommand( KMMainWidget *mainwidget, diff --git a/kmkernel.cpp b/kmkernel.cpp index 6aa1def1a..989ce4960 100644 --- a/kmkernel.cpp +++ b/kmkernel.cpp @@ -1366,6 +1366,9 @@ void KMKernel::init() the_weaver = new KPIM::ThreadWeaver::Weaver( this ); the_weaverLogger = new KPIM::ThreadWeaver::WeaverThreadLogger(this); the_weaverLogger->attach (the_weaver); +#else + // make it obvious that this instance has not been initialized + // the_weaver = 0; #endif connect( the_folderMgr, SIGNAL( folderRemoved(KMFolder*) ),