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 /kontact/plugins/korganizer/todoplugin.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 'kontact/plugins/korganizer/todoplugin.cpp')
-rw-r--r-- | kontact/plugins/korganizer/todoplugin.cpp | 36 |
1 files changed, 19 insertions, 17 deletions
diff --git a/kontact/plugins/korganizer/todoplugin.cpp b/kontact/plugins/korganizer/todoplugin.cpp index 3b6ab214f..bc76205c2 100644 --- a/kontact/plugins/korganizer/todoplugin.cpp +++ b/kontact/plugins/korganizer/todoplugin.cpp @@ -161,22 +161,18 @@ bool TodoPlugin::isRunningStandalone() void TodoPlugin::processDropEvent( TQDropEvent *event ) { - TQString text; - - KABC::VCardConverter converter; - if ( KVCardDrag::canDecode( event ) && KVCardDrag::decode( event, text ) ) { - KABC::Addressee::List contacts = converter.parseVCards( text ); - KABC::Addressee::List::Iterator it; - + KABC::Addressee::List list; + if ( KVCardDrag::decode( event, list ) ) { TQStringList attendees; - for ( it = contacts.begin(); it != contacts.end(); ++it ) { + KABC::Addressee::List::Iterator it; + for ( it = list.begin(); it != list.end(); ++it ) { TQString email = (*it).fullEmail(); - if ( email.isEmpty() ) + if ( email.isEmpty() ) { attendees.append( (*it).realName() + "<>" ); - else + } else { attendees.append( email ); + } } - interface()->openTodoEditor( i18n( "Meeting" ), TQString::null, TQString::null, attendees ); return; @@ -185,17 +181,23 @@ void TodoPlugin::processDropEvent( TQDropEvent *event ) if ( KCal::ICalDrag::canDecode( event) ) { KCal::CalendarLocal cal( KPimPrefs::timezone() ); if ( KCal::ICalDrag::decode( event, &cal ) ) { - KCal::Journal::List journals = cal.journals(); - if ( !journals.isEmpty() ) { + KCal::Incidence::List incidences = cal.incidences(); + if ( !incidences.isEmpty() ) { event->accept(); - KCal::Journal *j = journals.first(); - interface()->openTodoEditor( i18n("Note: %1").arg( j->summary() ), j->description(), TQString() ); + KCal::Incidence *i = incidences.first(); + TQString summary; + if ( dynamic_cast<KCal::Journal*>( i ) ) + summary = i18n( "Note: %1" ).arg( i->summary() ); + else + summary = i->summary(); + interface()->openTodoEditor( summary, i->description(), TQString() ); return; } // else fall through to text decoding } } + TQString text; if ( TQTextDrag::decode( event, text ) ) { interface()->openTodoEditor( text ); return; @@ -217,8 +219,8 @@ void TodoPlugin::processDropEvent( TQDropEvent *event ) mail.messageId(); tf.file()->writeBlock( event->encodedData( "message/rfc822" ) ); tf.close(); - interface()->openTodoEditor( i18n("Mail: %1").arg( mail.subject() ), txt, - uri, tf.name(), TQStringList(), "message/rfc822" ); + interface()->openTodoEditor( i18n("Mail: %1").arg( mail.subject() ), + txt, uri, tf.name(), TQStringList(), "message/rfc822", false ); } return; } |