summaryrefslogtreecommitdiffstats
path: root/kontact/plugins/korganizer
diff options
context:
space:
mode:
authortpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2010-09-01 00:37:02 +0000
committertpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2010-09-01 00:37:02 +0000
commitcc29364f06178f8f6b457384f2ec37a042bd9d43 (patch)
tree7c77a3184c698bbf9d98cef09fb1ba8124daceba /kontact/plugins/korganizer
parent4f6c584bacc8c3c694228f36ada3de77a76614a6 (diff)
downloadtdepim-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')
-rw-r--r--kontact/plugins/korganizer/journalplugin.desktop10
-rw-r--r--kontact/plugins/korganizer/journalplugin.h2
-rw-r--r--kontact/plugins/korganizer/kcmkorgsummary.desktop14
-rw-r--r--kontact/plugins/korganizer/korg_uniqueapp.cpp35
-rw-r--r--kontact/plugins/korganizer/korganizerplugin.cpp47
-rw-r--r--kontact/plugins/korganizer/korganizerplugin.desktop11
-rw-r--r--kontact/plugins/korganizer/summarywidget.cpp57
-rw-r--r--kontact/plugins/korganizer/todoplugin.cpp36
-rw-r--r--kontact/plugins/korganizer/todoplugin.desktop14
-rw-r--r--kontact/plugins/korganizer/todosummarywidget.cpp9
10 files changed, 117 insertions, 118 deletions
diff --git a/kontact/plugins/korganizer/journalplugin.desktop b/kontact/plugins/korganizer/journalplugin.desktop
index 8f33753ed..f24c1206c 100644
--- a/kontact/plugins/korganizer/journalplugin.desktop
+++ b/kontact/plugins/korganizer/journalplugin.desktop
@@ -21,21 +21,15 @@ Comment[ca]=Component de diari (endollable del KOrganizer)
Comment[da]=Journalkomponent (KOrganizer-plugin)
Comment[de]=Journal-Komponente (KOrganizer-Modul)
Comment[el]=Συστατικό χρονικών (Πρόσθετο του KOrganizer)
-Comment[es]=Componente de diario (Complemento de KOrganizer)
Comment[et]=Päevikuplugin (KOrganizer)
-Comment[fr]= Composant de journal (Module KOrganizer)
-Comment[is]=Dagbókareining (Journal KOrganizer íforrit)
Comment[it]=Componente diario (plugin KOrganizer)
Comment[ja]=ジャーナルコンポーネント (KOrganizer プラグイン)
-Comment[km]=សមាភាគទិនានុប្បវត្តិ (កម្មវិធី​ជំនួយ KOrganizer​)
Comment[nds]=Daagböker-Komponent (KOrganizer-Moduul)
Comment[nl]=Journaalcomponent (KOrganizer-plugin)
Comment[pl]=Składnik dziennika (wtyczka Korganizer)
-Comment[ru]=Журнал (модуль KOrganizer)
Comment[sr]=Компонента дневника (прикључак KOrganizer-а)
Comment[sr@Latn]=Komponenta dnevnika (priključak KOrganizer-a)
Comment[sv]=Journalkomponent (Korganizer-insticksprogram)
-Comment[tr]=Günlük Bileşeni (KOrganizer Eklentisi)
Comment[zh_CN]=日记组件(KOrganizer 插件)
Comment[zh_TW]=日誌組件(KOrganizer 外掛程式)
Name=Journal
@@ -61,7 +55,6 @@ Name[hu]=Napló
Name[is]=Dagbók
Name[it]=Diario
Name[ja]=ジャーナル
-Name[ka]=ჟურნალი
Name[kk]=Күнделік
Name[km]=ទិនានុប្បវត្តិ
Name[lt]=Dienynas
@@ -83,7 +76,6 @@ Name[ta]=பத்திரிகை
Name[th]=วารสาร
Name[tr]=Günlük
Name[uk]=Журнал
-Name[uz]=Kundalik
-Name[uz@cyrillic]=Кундалик
+Name[uz]=Кундалик
Name[zh_CN]=日记
Name[zh_TW]=日誌
diff --git a/kontact/plugins/korganizer/journalplugin.h b/kontact/plugins/korganizer/journalplugin.h
index 2aeca3544..beb4c2e95 100644
--- a/kontact/plugins/korganizer/journalplugin.h
+++ b/kontact/plugins/korganizer/journalplugin.h
@@ -40,7 +40,7 @@ class JournalPlugin : public Kontact::Plugin
virtual bool createDCOPInterface( const TQString& serviceType );
virtual bool isRunningStandalone();
- int weight() const { return 500; }
+ int weight() const { return 525; }
virtual TQStringList invisibleToolbarActions() const;
diff --git a/kontact/plugins/korganizer/kcmkorgsummary.desktop b/kontact/plugins/korganizer/kcmkorgsummary.desktop
index 2f657852e..175ed6242 100644
--- a/kontact/plugins/korganizer/kcmkorgsummary.desktop
+++ b/kontact/plugins/korganizer/kcmkorgsummary.desktop
@@ -16,21 +16,15 @@ Name[ca]=Resum de cites i tasques pendents
Name[da]=Oversigt over møder og gøremål
Name[de]=Übersicht über Termine und Aufgaben
Name[el]=Επισκόπηση ραντεβού και προς υλοποίηση εργασιών
-Name[es]=Resumen de citas y tareas pendientes
Name[et]=Kohtumised ja ülesannete ülevaade
-Name[fr]=Aperçu des rendez-vous et des tâches
-Name[is]=Yfirlit um fundi og verkþætti
Name[it]=Panoramica appuntamenti e cose da fare
Name[ja]=約束と To-Do の要約
-Name[km]=ទិដ្ឋភាព​ការ​ណាត់ និង​ការងារ​ត្រូវ​ធ្វើ
Name[nds]=Termin- un Opgaven-Översicht
Name[nl]=Overzicht van evenementen en taken
Name[pl]=Spotkania i zadania
-Name[ru]=Сводка встреч и задач
Name[sr]=Преглед састанака и обавеза
Name[sr@Latn]=Pregled sastanaka i obaveza
Name[sv]=Översikt av möten och uppgifter
-Name[tr]=Randevulara ve Yapılacaklara Genel Bakış
Name[zh_CN]=约会和待办概览
Name[zh_TW]=約會與待辦事項概觀
Comment=Appointments and To-dos Summary Setup
@@ -50,10 +44,9 @@ Comment[fr]=Configuration du résumé des évènements et des tâches
Comment[fy]=Oersichtsynstellings foar eveneminten en taken
Comment[gl]=Configuración de sumarios de tarefas e notas
Comment[hu]=A találkozók és feladatok áttekintőjének beállítása
-Comment[is]=Uppsetning á yfirliti yfir fundi og verkefni
+Comment[is]=Uppsetning á yfirliti yfir fundi og verkþætti
Comment[it]=Impostazioni sommario appuntamenti e cose da fare
Comment[ja]=約束と To-Do の要約設定
-Comment[ka]=შეხვედრათა და გასაკეთებელთა რეზიუმეს დაყენება
Comment[kk]=Кездесулер мен Жоспарлар тұжырымының баптау
Comment[km]=រៀបចំ​សេចក្ដី​សង្ខេប​ការ​ណាត់ និង​ការងារ​ត្រូវ​ធ្វើ
Comment[lt]=Susitikimų ir užduočių santraukos nustatymai
@@ -66,7 +59,7 @@ Comment[nn]=Oppsett av samandrag av avtalar og oppgåver
Comment[pl]=Ustawienia podsumowania spotkań i zadań
Comment[pt]=Configuração do Sumário de Compromissos e A-fazeres
Comment[pt_BR]=Configuração do Resumo de Compromissos e Tarefas
-Comment[ru]=Настройка сводки встреч и задач
+Comment[ru]=Настройка показа встреч и задач
Comment[sk]=Nastavenie súhrnu pripomienok a úloh
Comment[sl]=Nastavitve povzetka sestankov in opravil
Comment[sr]=Подешавање сажетка састанака и обавеза
@@ -97,10 +90,9 @@ Keywords[ga]=féilire, tascanna, cumraigh, socruithe
Keywords[gl]=calendario, pendentes, configurar, opcións
Keywords[he]=calendar, todos, configure, settings, יומן, יומנים, משימות, מטלות, הגדרות, תצורה
Keywords[hu]=naptár,feladatok,konfigurálás,beállítások
-Keywords[is]=dagatal, verkefni, stillingar, stilla
+Keywords[is]=dagatal, verkþættir, stillingar, stilla
Keywords[it]=calendario, cose da fare, configura, impostazioni
Keywords[ja]=カレンダー, To-Do, 設定
-Keywords[ka]=კალენდარი,გასაკეთებლები,კონფიგურაცია,პარამეტრები
Keywords[km]=ប្រតិទិន,ការងារ​ត្រូវ​ធ្វើ,កំណត់​រចនាសម្ព័ន្ធ,ការ​កំណត់
Keywords[lt]=calendar, todos, configure, settings, kalendorius, darbai, konfigūruoti, nustatymai
Keywords[ms]=kalendar, tugasan, konfigur, seting
diff --git a/kontact/plugins/korganizer/korg_uniqueapp.cpp b/kontact/plugins/korganizer/korg_uniqueapp.cpp
index b70042353..42a7adcae 100644
--- a/kontact/plugins/korganizer/korg_uniqueapp.cpp
+++ b/kontact/plugins/korganizer/korg_uniqueapp.cpp
@@ -20,19 +20,40 @@
*/
#include "korg_uniqueapp.h"
-#include <kdebug.h>
#include "../../korganizer/korganizer_options.h"
+#include "core.h"
+#include <dcopref.h>
+#include <kapplication.h>
+#include <kstartupinfo.h>
+#include <kwin.h>
+
void KOrganizerUniqueAppHandler::loadCommandLineOptions()
{
- KCmdLineArgs::addCmdLineOptions( korganizer_options );
+ KCmdLineArgs::addCmdLineOptions( korganizer_options );
}
int KOrganizerUniqueAppHandler::newInstance()
{
- //kdDebug(5602) << k_funcinfo << endl;
- // Ensure part is loaded
- (void)plugin()->part();
- // TODO handle command line options
- return Kontact::UniqueAppHandler::newInstance();
+ // Ensure part is loaded
+ (void)plugin()->part();
+ DCOPRef korganizer( "korganizer", "KOrganizerIface" );
+ korganizer.send( "handleCommandLine" );
+
+ // Bring korganizer's plugin to front
+ // This bit is duplicated from KUniqueApplication::newInstance()
+ if ( kapp->mainWidget() ) {
+ kapp->mainWidget()->show();
+ KWin::forceActiveWindow( kapp->mainWidget()->winId() );
+ KStartupInfo::appStarted();
+ }
+
+ // Then ensure the part appears in kontact.
+ // ALWAYS use the korganizer plugin; i.e. never show the todo nor journal
+ // plugins when creating a new instance via the command line, even if
+ // the command line options are empty; else we'd need to examine the
+ // options and then figure out which plugin we should show.
+ // kolab/issue3971
+ plugin()->core()->selectPlugin( "kontact_korganizerplugin" );
+ return 0;
}
diff --git a/kontact/plugins/korganizer/korganizerplugin.cpp b/kontact/plugins/korganizer/korganizerplugin.cpp
index f0f88c7ca..cd590ec96 100644
--- a/kontact/plugins/korganizer/korganizerplugin.cpp
+++ b/kontact/plugins/korganizer/korganizerplugin.cpp
@@ -42,6 +42,10 @@
#include <libkdepim/kvcarddrag.h>
#include <libkdepim/maillistdrag.h>
+#include <libkdepim/kpimprefs.h>
+
+#include <libkcal/calendarlocal.h>
+#include <libkcal/icaldrag.h>
#include "core.h"
#include "summarywidget.h"
@@ -78,6 +82,11 @@ KOrganizerPlugin::~KOrganizerPlugin()
Kontact::Summary *KOrganizerPlugin::createSummaryWidget( TQWidget *parent )
{
+ // korg part must be loaded, otherwise when starting kontact on summary view
+ // it won't display our stuff.
+ // If the part is already loaded loadPart() is harmless and just returns
+ loadPart();
+
return new SummaryWidget( this, parent );
}
@@ -160,27 +169,43 @@ bool KOrganizerPlugin::canDecodeDrag( TQMimeSource *mimeSource )
void KOrganizerPlugin::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()->openEventEditor( i18n( "Meeting" ), TQString::null, TQString::null,
attendees );
return;
}
+ if ( KCal::ICalDrag::canDecode( event) ) {
+ KCal::CalendarLocal cal( KPimPrefs::timezone() );
+ if ( KCal::ICalDrag::decode( event, &cal ) ) {
+ KCal::Incidence::List incidences = cal.incidences();
+ if ( !incidences.isEmpty() ) {
+ event->accept();
+ 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()->openEventEditor( summary, i->description(), TQString() );
+ return;
+ }
+ // else fall through to text decoding
+ }
+ }
+
+ TQString text;
if ( TQTextDrag::decode( event, text ) ) {
kdDebug(5602) << "DROP:" << text << endl;
interface()->openEventEditor( text );
diff --git a/kontact/plugins/korganizer/korganizerplugin.desktop b/kontact/plugins/korganizer/korganizerplugin.desktop
index 7a29913c1..896320c15 100644
--- a/kontact/plugins/korganizer/korganizerplugin.desktop
+++ b/kontact/plugins/korganizer/korganizerplugin.desktop
@@ -21,22 +21,15 @@ Comment[ca]=Component de calendari (endollable del KOrganizer)
Comment[da]=Kalenderkomponent (KOrganizer-plugin)
Comment[de]=Kalender-Komponente (KOrganizer-Modul)
Comment[el]=Συστατικό ημερολογίου (Πρόσθετο του KOrganizer)
-Comment[es]=Componente de calendario (complemento de KOrganizer)
Comment[et]=Kalendriplugin (KOrganizer)
-Comment[fr]= Composant de calendrier (Module KOrganizer)
-Comment[is]=Dagatalseining (KOrganizer íforrit)
Comment[it]=Componente calendario (plugin KOrganizer)
Comment[ja]=カレンダーコンポーネント (KOrganizer プラグイン)
-Comment[km]=សមាសភាគ​ប្រតិទិន (កម្មវិធីជំនួយ​ KOrganizer​)
Comment[nds]=Kalenner-Komponent (KOrganizer-Moduul)
Comment[nl]=Agendacomponent (KOrganizer-plugin)
Comment[pl]=Składnik kalendarza (wtyczka KOrganizer)
-Comment[ru]=Календарь (модуль KOrganizer)
-Comment[sk]=Kalendárový komponent (Modeul pre KOrganizer)
Comment[sr]=Компонента календара (прикључак KOrganizer-а)
Comment[sr@Latn]=Komponenta kalendara (priključak KOrganizer-a)
Comment[sv]=Kalenderkomponent (Korganizer-insticksprogram)
-Comment[tr]=Takvim Bileşeni (KOrganizer Eklentisi)
Comment[zh_CN]=日历组件(KOrganizer 插件)
Comment[zh_TW]=行事曆組件(KOrganizer 外掛程式)
Name=Calendar
@@ -68,7 +61,6 @@ Name[hu]=Naptár
Name[is]=Dagatal
Name[it]=Calendario
Name[ja]=カレンダー
-Name[ka]=კალენდარი
Name[kk]=Күнтізбе
Name[km]=ប្រតិទិន
Name[lt]=Kalendorius
@@ -95,7 +87,6 @@ Name[tg]=Тақвим
Name[th]=บันทึกประจำวัน
Name[tr]=Takvim
Name[uk]=Календар
-Name[uz]=Kalendar
-Name[uz@cyrillic]=Календар
+Name[uz]=Календар
Name[zh_CN]=日历
Name[zh_TW]=行事曆
diff --git a/kontact/plugins/korganizer/summarywidget.cpp b/kontact/plugins/korganizer/summarywidget.cpp
index ff3d5da9d..cab7788f9 100644
--- a/kontact/plugins/korganizer/summarywidget.cpp
+++ b/kontact/plugins/korganizer/summarywidget.cpp
@@ -65,7 +65,6 @@ SummaryWidget::SummaryWidget( KOrganizerPlugin *plugin, TQWidget *parent,
mLayout->setRowStretch( 6, 1 );
mCalendar = KOrg::StdCalendar::self();
- mCalendar->load();
connect( mCalendar, TQT_SIGNAL( calendarChanged() ), TQT_SLOT( updateView() ) );
connect( mPlugin->core(), TQT_SIGNAL( dayChanged( const TQDate& ) ),
@@ -94,6 +93,8 @@ void SummaryWidget::updateView()
TQLabel *label = 0;
int counter = 0;
TQPixmap pm = loader.loadIcon( "appointment", KIcon::Small );
+ TQPixmap pmb = loader.loadIcon( "calendarbirthday", KIcon::Small );
+ TQPixmap pma = loader.loadIcon( "calendaranniversary", KIcon::Small );
TQDate dt;
TQDate currentDate = TQDate::currentDate();
@@ -101,38 +102,22 @@ void SummaryWidget::updateView()
dt<=currentDate.addDays( days - 1 );
dt=dt.addDays(1) ) {
- KCal::Event *ev;
-
- KCal::Event::List events_orig = mCalendar->events( dt );
- KCal::Event::List::ConstIterator it = events_orig.begin();
-
- KCal::Event::List events;
- events.setAutoDelete( true );
- TQDateTime qdt;
-
- // prevent implicitely sharing while finding recurring events
- // replacing the TQDate with the currentDate
- for ( ; it != events_orig.end(); ++it ) {
- ev = (*it)->clone();
- if ( ev->recursOn( dt ) ) {
- qdt = ev->dtStart();
- qdt.setDate( dt );
- ev->setDtStart( qdt );
- }
- events.append( ev );
- }
+ KCal::Event::List events = mCalendar->events( dt );
// sort the events for this date by summary
- events = KCal::Calendar::sortEvents( &events,
- KCal::EventSortSummary,
- KCal::SortDirectionAscending );
+ events = KCal::Calendar::sortEventsForDate( &events,
+ dt,
+ KCal::EventSortSummary,
+ KCal::SortDirectionAscending );
// sort the events for this date by start date
- events = KCal::Calendar::sortEvents( &events,
- KCal::EventSortStartDate,
- KCal::SortDirectionAscending );
+ events = KCal::Calendar::sortEventsForDate( &events,
+ dt,
+ KCal::EventSortStartDate,
+ KCal::SortDirectionAscending );
+ KCal::Event::List::ConstIterator it = events.begin();
for ( it=events.begin(); it!=events.end(); ++it ) {
- ev = *it;
+ KCal::Event *ev = *it;
// Count number of days remaining in multiday event
int span=1; int dayof=1;
@@ -156,7 +141,13 @@ void SummaryWidget::updateView()
// Fill Appointment Pixmap Field
label = new TQLabel( this );
- label->setPixmap( pm );
+ if ( ev->categories().contains( "Birthday" ) ) {
+ label->setPixmap( pmb );
+ } else if ( ev->categories().contains( "Anniversary" ) ) {
+ label->setPixmap( pma );
+ } else {
+ label->setPixmap( pm );
+ }
label->setMaximumWidth( label->minimumSizeHint().width() );
label->setAlignment( AlignVCenter );
mLayout->addWidget( label, counter, 0 );
@@ -167,7 +158,7 @@ void SummaryWidget::updateView()
TQString datestr;
// Modify event date for printing
- TQDate sD = TQDate::TQDate( dt.year(), dt.month(), dt.day() );
+ TQDate sD = TQDate( dt.year(), dt.month(), dt.day() );
if ( ( sD.month() == currentDate.month() ) &&
( sD.day() == currentDate.day() ) ) {
datestr = i18n( "Today" );
@@ -216,7 +207,7 @@ void SummaryWidget::updateView()
connect( urlLabel, TQT_SIGNAL( rightClickedURL( const TQString& ) ),
this, TQT_SLOT( popupMenu( const TQString& ) ) );
- TQString tipText( KCal::IncidenceFormatter::toolTipString( ev, true ) );
+ TQString tipText( KCal::IncidenceFormatter::toolTipStr( mCalendar, ev, dt, true ) );
if ( !tipText.isEmpty() ) {
TQToolTip::add( urlLabel, tipText );
}
@@ -227,10 +218,10 @@ void SummaryWidget::updateView()
TQTime sET = ev->dtEnd().time();
if ( ev->isMultiDay() ) {
if ( ev->dtStart().date() < dt ) {
- sST = TQTime::TQTime( 0, 0 );
+ sST = TQTime( 0, 0 );
}
if ( ev->dtEnd().date() > dt ) {
- sET = TQTime::TQTime( 23, 59 );
+ sET = TQTime( 23, 59 );
}
}
datestr = i18n( "Time from - to", "%1 - %2" )
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;
}
diff --git a/kontact/plugins/korganizer/todoplugin.desktop b/kontact/plugins/korganizer/todoplugin.desktop
index a571539d8..dde1a0c1b 100644
--- a/kontact/plugins/korganizer/todoplugin.desktop
+++ b/kontact/plugins/korganizer/todoplugin.desktop
@@ -21,22 +21,15 @@ Comment[ca]=Component de llista de pendents (endollable del KOrganizer)
Comment[da]=Komponent til gøremålsliste (KOrganizer-plugin)
Comment[de]=Aufgabenlisten-Komponente (KOrganizer-Modul)
Comment[el]=Συστατικό λίστα προς υλοποίηση εργασιών (Πρόσθετο του KOrganizer)
-Comment[es]=Componente de tareas pendientes (complemento de KOrganizer)
Comment[et]=Ülesannete nimekirja plugin (KOrganizer)
-Comment[fr]=Composant de la liste des tâches (Module KOrganizer)
-Comment[is]=Verkefnaeining (KOrganizer íforrit)
Comment[it]=Componente elenco delle cose da fare (plugin KOrganizer)
Comment[ja]=To-Do リストコンポーネント (KOrganizer プラグイン)
-Comment[km]=សមាសភាគ​បញ្ជី​ការងារ​ត្រូវ​ធ្វើ (កម្មវិធី​ជំនួយ KOrganizer​)
Comment[nds]=Opgavenlist-Komponent (KOrganizer-Moduul)
Comment[nl]=Takenlijstcomponent (KOrganizer-plugin)
Comment[pl]=Składnik zadań (wtyczka KOrganizer)
-Comment[ru]=Задачи (модуль KOrganizer)
-Comment[sk]=Komponent zoznamu úloh (Modul pre KOrganizer)
Comment[sr]=Прикључак листе обавеза (прикључак KOrganizer-а)
Comment[sr@Latn]=Priključak liste obaveza (priključak KOrganizer-a)
Comment[sv]=Uppgiftslistkomponent (Korganizer-insticksprogram)
-Comment[tr]=Yapılacak İşler Bileşeni (KOrganizer eklentisi)
Comment[zh_CN]=待办清单组件(KOrganizer 插件)
Comment[zh_TW]=待辦事項清單組件(KOrganizer 外掛程式)
Name=To-do
@@ -45,21 +38,14 @@ Name[ca]=Pendents
Name[da]=Gøremål
Name[de]=Aufgaben
Name[el]=Προς υλοποίηση εργασίες
-Name[es]=Tareas pendientes
Name[et]=Ülesanded
-Name[fr]=Tâches
-Name[is]=Verkefni
Name[it]=Cose da fare
Name[ja]=To-Do
-Name[km]=​ការងារ​ត្រូវ​ធ្វើ
Name[nds]=Opgaav
Name[nl]=Takenlijst
Name[pl]=Lista zadań
-Name[ru]=Задачи
-Name[sk]=Zoznam úloh
Name[sr]=Обавезе
Name[sr@Latn]=Obaveze
Name[sv]=Uppgift
-Name[tr]=Yapılacak Ögeleri
Name[zh_CN]=待办清单
Name[zh_TW]=待辦事項
diff --git a/kontact/plugins/korganizer/todosummarywidget.cpp b/kontact/plugins/korganizer/todosummarywidget.cpp
index e58ee6aa0..953aa42cb 100644
--- a/kontact/plugins/korganizer/todosummarywidget.cpp
+++ b/kontact/plugins/korganizer/todosummarywidget.cpp
@@ -67,7 +67,6 @@ TodoSummaryWidget::TodoSummaryWidget( TodoPlugin *plugin,
mLayout->setRowStretch( 6, 1 );
mCalendar = KOrg::StdCalendar::self();
- mCalendar->load();
connect( mCalendar, TQT_SIGNAL( calendarChanged() ), TQT_SLOT( updateView() ) );
connect( mPlugin->core(), TQT_SIGNAL( dayChanged( const TQDate& ) ),
@@ -169,7 +168,7 @@ void TodoSummaryWidget::updateView()
connect( urlLabel, TQT_SIGNAL( rightClickedURL( const TQString& ) ),
this, TQT_SLOT( popupMenu( const TQString& ) ) );
- TQString tipText( KCal::IncidenceFormatter::toolTipString( todo, true ) );
+ TQString tipText( KCal::IncidenceFormatter::toolTipStr( mCalendar, todo, currentDate, true ) );
if ( !tipText.isEmpty() ) {
TQToolTip::add( urlLabel, tipText );
}
@@ -213,11 +212,11 @@ void TodoSummaryWidget::completeTodo( const TQString &uid )
{
KCal::Todo *todo = mCalendar->todo( uid );
IncidenceChanger *changer = new IncidenceChanger( mCalendar, this );
- if ( !todo->isReadOnly() && changer->beginChange( todo ) ) {
+ if ( !todo->isReadOnly() && changer->beginChange( todo, 0, TQString() ) ) {
KCal::Todo *oldTodo = todo->clone();
todo->setCompleted( TQDateTime::currentDateTime() );
- changer->changeIncidence( oldTodo, todo, KOGlobals::COMPLETION_MODIFIED );
- changer->endChange( todo );
+ changer->changeIncidence( oldTodo, todo, KOGlobals::COMPLETION_MODIFIED, this );
+ changer->endChange( todo, 0, TQString() );
delete oldTodo;
updateView();
}