summaryrefslogtreecommitdiffabout
path: root/korganizer
Unidiff
Diffstat (limited to 'korganizer') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koeventviewer.cpp5
-rw-r--r--korganizer/kolistview.cpp13
-rw-r--r--korganizer/main.cpp2
3 files changed, 17 insertions, 3 deletions
diff --git a/korganizer/koeventviewer.cpp b/korganizer/koeventviewer.cpp
index e938e4e..1fcc977 100644
--- a/korganizer/koeventviewer.cpp
+++ b/korganizer/koeventviewer.cpp
@@ -450,108 +450,109 @@ void KOEventViewer::formatAttendees(Incidence *event)
450 mText += "<a href=\"uid:" + o.uid() + "\">"; 450 mText += "<a href=\"uid:" + o.uid() + "\">";
451 mText += o.formattedName(); 451 mText += o.formattedName();
452 mText += "</a>\n"; 452 mText += "</a>\n";
453 } else { 453 } else {
454 mText += "<li>"; 454 mText += "<li>";
455 mText.append(a->email()); 455 mText.append(a->email());
456 mText += "\n"; 456 mText += "\n";
457 } 457 }
458 } else { 458 } else {
459 mText += "<li><a href=\"uid:" + a->uid() + "\">"; 459 mText += "<li><a href=\"uid:" + a->uid() + "\">";
460 if (!a->name().isEmpty()) mText += a->name(); 460 if (!a->name().isEmpty()) mText += a->name();
461 else mText += a->email(); 461 else mText += a->email();
462 mText += "</a>\n"; 462 mText += "</a>\n";
463 } 463 }
464#else //DESKTOP_VERSION 464#else //DESKTOP_VERSION
465 mText += "<li><a href=\"uid:" + a->uid() + "\">"; 465 mText += "<li><a href=\"uid:" + a->uid() + "\">";
466 if (!a->name().isEmpty()) mText += a->name(); 466 if (!a->name().isEmpty()) mText += a->name();
467 else mText += a->email(); 467 else mText += a->email();
468 mText += "</a>\n"; 468 mText += "</a>\n";
469#endif //DESKTOP_VERSION 469#endif //DESKTOP_VERSION
470#else 470#else
471 //qDebug("nokabc "); 471 //qDebug("nokabc ");
472 mText += "<li><a href=\"uid:" + a->uid() + "\">"; 472 mText += "<li><a href=\"uid:" + a->uid() + "\">";
473 if (!a->name().isEmpty()) mText += a->name(); 473 if (!a->name().isEmpty()) mText += a->name();
474 else mText += a->email(); 474 else mText += a->email();
475 mText += "</a>\n"; 475 mText += "</a>\n";
476#endif 476#endif
477 477
478 478
479 if (!a->email().isEmpty()) { 479 if (!a->email().isEmpty()) {
480 if (iconPath) { 480 if (iconPath) {
481 mText += "<a href=\"mailto:" + a->name() +" <" + a->email() + ">:" + mMailSubject + "\">"; 481 mText += "<a href=\"mailto:" + a->name() +" <" + a->email() + ">:" + mMailSubject + "\">";
482 mText += "<IMG src=\"" + iconPath + "\">"; 482 mText += "<IMG src=\"" + iconPath + "\">";
483 mText += "</a>\n"; 483 mText += "</a>\n";
484 } 484 }
485 } 485 }
486 if (a->status() != Attendee::NeedsAction ) 486 if (a->status() != Attendee::NeedsAction )
487 mText +="[" + a->statusStr() + "] "; 487 mText +="[" + a->statusStr() + "] ";
488 if (a->role() == Attendee::Chair ) 488 if (a->role() == Attendee::Chair )
489 mText +="(" + a->roleStr().left(1) + ".)"; 489 mText +="(" + a->roleStr().left(1) + ".)";
490 } 490 }
491 mText.append("</li></ul>"); 491 mText.append("</li></ul>");
492 } 492 }
493 493
494} 494}
495void KOEventViewer::appendJournal(Journal *jour, int mode ) 495void KOEventViewer::appendJournal(Journal *jour, int mode )
496{ 496{
497 bool shortDate = KOPrefs::instance()->mShortDateInViewer; 497 bool shortDate = KOPrefs::instance()->mShortDateInViewer;
498 if (mode == 0 ) 498 if (mode == 0 ) {
499 addTag("h2",i18n("Journal from: ")); 499 addTag("h2",i18n("Journal from: "));
500 }
500 else { 501 else {
501 if ( mode == 1 ) { 502 if ( mode == 1 ) {
502 addTag("h2",i18n( "Local: " ) +i18n("Journal from: ")); 503 addTag("h2",i18n( "Local: " ) +i18n("Journal from: "));
503 } else { 504 } else {
504 addTag("h2",i18n( "Remote: " ) +i18n("Journal from: ")); 505 addTag("h2",i18n( "Remote: " ) +i18n("Journal from: "));
505 } 506 }
506 addTag("h3",i18n( "Last modified " ) + KGlobal::locale()->formatDateTime(jour->lastModified(),shortDate ) );
507 } 507 }
508 topLevelWidget()->setCaption("Journal Viewer"); 508 topLevelWidget()->setCaption("Journal Viewer");
509 mText.append(i18n("<h3> %1 </h3> ").arg(jour->dtStartDateStr(KOPrefs::instance()->mShortDateInViewer))); 509 mText.append(i18n("<h3> %1 </h3> ").arg(jour->dtStartDateStr(KOPrefs::instance()->mShortDateInViewer)));
510 addTag("b",i18n( "Last modified: " ) + KGlobal::locale()->formatDateTime(jour->lastModified(),shortDate ) );
510 if (!jour->description().isEmpty()) { 511 if (!jour->description().isEmpty()) {
511 addTag("p",jour->description()); 512 addTag("p",jour->description());
512 } 513 }
513 setText(mText); 514 setText(mText);
514} 515}
515 516
516void KOEventViewer::formatReadOnly(Incidence *event) 517void KOEventViewer::formatReadOnly(Incidence *event)
517{ 518{
518 if (event->isReadOnly()) { 519 if (event->isReadOnly()) {
519 addTag("p","<em>(" + i18n("read-only") + ")</em>"); 520 addTag("p","<em>(" + i18n("read-only") + ")</em>");
520 } 521 }
521} 522}
522void KOEventViewer::setSyncMode( bool b ) 523void KOEventViewer::setSyncMode( bool b )
523{ 524{
524 mSyncMode = b; 525 mSyncMode = b;
525} 526}
526 527
527 528
528void KOEventViewer::setTodo(Todo *event, bool clearV ) 529void KOEventViewer::setTodo(Todo *event, bool clearV )
529{ 530{
530 if ( clearV ) 531 if ( clearV )
531 clearEvents(); 532 clearEvents();
532 if ( mSyncMode ) { 533 if ( mSyncMode ) {
533 if ( clearV ) 534 if ( clearV )
534 appendTodo(event,1 ); 535 appendTodo(event,1 );
535 else 536 else
536 appendTodo(event,2); 537 appendTodo(event,2);
537 } else 538 } else
538 appendTodo(event); 539 appendTodo(event);
539} 540}
540void KOEventViewer::setJournal(Journal *event, bool clearV ) 541void KOEventViewer::setJournal(Journal *event, bool clearV )
541{ 542{
542 if ( clearV ) 543 if ( clearV )
543 clearEvents(); 544 clearEvents();
544 if ( mSyncMode ) { 545 if ( mSyncMode ) {
545 if ( clearV ) 546 if ( clearV )
546 appendJournal(event, 1); 547 appendJournal(event, 1);
547 else 548 else
548 appendJournal(event, 2); 549 appendJournal(event, 2);
549 } else 550 } else
550 appendJournal(event); 551 appendJournal(event);
551} 552}
552 553
553void KOEventViewer::setEvent(Event *event) 554void KOEventViewer::setEvent(Event *event)
554{ 555{
555 clearEvents(); 556 clearEvents();
556 if ( mSyncMode ) 557 if ( mSyncMode )
557 appendEvent(event, 1); 558 appendEvent(event, 1);
diff --git a/korganizer/kolistview.cpp b/korganizer/kolistview.cpp
index 9a3ba73..bafd349 100644
--- a/korganizer/kolistview.cpp
+++ b/korganizer/kolistview.cpp
@@ -1,82 +1,83 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KOrganizer.
3 Copyright (c) 1999 Preston Brown 3 Copyright (c) 1999 Preston Brown
4 Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org> 4 Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org>
5 5
6 This program is free software; you can redistribute it and/or modify 6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by 7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or 8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version. 9 (at your option) any later version.
10 10
11 This program is distributed in the hope that it will be useful, 11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details. 14 GNU General Public License for more details.
15 15
16 You should have received a copy of the GNU General Public License 16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software 17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 18 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 19
20 As a special exception, permission is given to link this program 20 As a special exception, permission is given to link this program
21 with any edition of Qt, and distribute the resulting executable, 21 with any edition of Qt, and distribute the resulting executable,
22 without including the source code for Qt in the source distribution. 22 without including the source code for Qt in the source distribution.
23*/ 23*/
24 24
25#include <qlistview.h> 25#include <qlistview.h>
26#include <qlayout.h> 26#include <qlayout.h>
27#include <qlabel.h> 27#include <qlabel.h>
28#include <qpopupmenu.h> 28#include <qpopupmenu.h>
29#include <qprogressbar.h> 29#include <qprogressbar.h>
30#include <qfileinfo.h> 30#include <qfileinfo.h>
31#include <qmessagebox.h> 31#include <qmessagebox.h>
32#include <qdialog.h> 32#include <qdialog.h>
33#include <qtextstream.h> 33#include <qtextstream.h>
34#include <qdir.h> 34#include <qdir.h>
35#include <qregexp.h>
35 36
36#include <klocale.h> 37#include <klocale.h>
37#include <kdebug.h> 38#include <kdebug.h>
38#include <kiconloader.h> 39#include <kiconloader.h>
39#include <kglobal.h> 40#include <kglobal.h>
40 41
41#include <libkcal/calendar.h> 42#include <libkcal/calendar.h>
42#include <libkcal/calendarlocal.h> 43#include <libkcal/calendarlocal.h>
43#include <libkcal/icalformat.h> 44#include <libkcal/icalformat.h>
44#include <libkcal/vcalformat.h> 45#include <libkcal/vcalformat.h>
45#include <libkcal/recurrence.h> 46#include <libkcal/recurrence.h>
46#include <libkcal/filestorage.h> 47#include <libkcal/filestorage.h>
47#include <libkdepim/categoryselectdialog.h> 48#include <libkdepim/categoryselectdialog.h>
48#ifndef DESKTOP_VERSION 49#ifndef DESKTOP_VERSION
49#include <qpe/qpeapplication.h> 50#include <qpe/qpeapplication.h>
50#else 51#else
51#include <qapplication.h> 52#include <qapplication.h>
52#endif 53#endif
53 54
54#ifndef KORG_NOPRINTER 55#ifndef KORG_NOPRINTER
55#include "calprinter.h" 56#include "calprinter.h"
56#endif 57#endif
57#include "koglobals.h" 58#include "koglobals.h"
58#include "koprefs.h" 59#include "koprefs.h"
59#include "kfiledialog.h" 60#include "kfiledialog.h"
60 61
61#include "kolistview.h" 62#include "kolistview.h"
62 63
63ListItemVisitor::ListItemVisitor(KOListViewItem *item, QDate date ) 64ListItemVisitor::ListItemVisitor(KOListViewItem *item, QDate date )
64{ 65{
65 mItem = item; 66 mItem = item;
66 mDate = date; 67 mDate = date;
67} 68}
68 69
69ListItemVisitor::~ListItemVisitor() 70ListItemVisitor::~ListItemVisitor()
70{ 71{
71} 72}
72 73
73bool ListItemVisitor::visit(Event *e) 74bool ListItemVisitor::visit(Event *e)
74{ 75{
75 76
76 bool ok = false; 77 bool ok = false;
77 QString start, end; 78 QString start, end;
78 if ( e->doesRecur() ) { 79 if ( e->doesRecur() ) {
79 QDate d = e->getNextOccurence( QDateTime( mDate, QTime(0,0,0)), &ok ).date(); 80 QDate d = e->getNextOccurence( QDateTime( mDate, QTime(0,0,0)), &ok ).date();
80 if ( ok ) { 81 if ( ok ) {
81 int days = e->dtStart().date().daysTo(e->dtEnd().date() ); 82 int days = e->dtStart().date().daysTo(e->dtEnd().date() );
82 start = KGlobal::locale()->formatDate(d,true); 83 start = KGlobal::locale()->formatDate(d,true);
@@ -120,106 +121,111 @@ bool ListItemVisitor::visit(Todo *t)
120 if (t->hasStartDate()) { 121 if (t->hasStartDate()) {
121 mItem->setText(1,t->dtStartDateStr()); 122 mItem->setText(1,t->dtStartDateStr());
122 if (t->doesFloat()) { 123 if (t->doesFloat()) {
123 mItem->setText(2,"---"); 124 mItem->setText(2,"---");
124 } else { 125 } else {
125 mItem->setText(2,t->dtStartTimeStr()); 126 mItem->setText(2,t->dtStartTimeStr());
126 } 127 }
127 } else { 128 } else {
128 mItem->setText(1,"---"); 129 mItem->setText(1,"---");
129 mItem->setText(2,"---"); 130 mItem->setText(2,"---");
130 } 131 }
131 mItem->setText(3,"---"); 132 mItem->setText(3,"---");
132 mItem->setText(4,"---"); 133 mItem->setText(4,"---");
133 mItem->setText(5,"---"); 134 mItem->setText(5,"---");
134 mItem->setText(6,"---"); 135 mItem->setText(6,"---");
135 if (t->hasDueDate()) { 136 if (t->hasDueDate()) {
136 mItem->setText(7,t->dtDueDateStr()); 137 mItem->setText(7,t->dtDueDateStr());
137 if (t->doesFloat()) { 138 if (t->doesFloat()) {
138 mItem->setText(8,"---"); 139 mItem->setText(8,"---");
139 } else { 140 } else {
140 mItem->setText(8,t->dtDueTimeStr()); 141 mItem->setText(8,t->dtDueTimeStr());
141 } 142 }
142 } else { 143 } else {
143 mItem->setText(7,"---"); 144 mItem->setText(7,"---");
144 mItem->setText(8,"---"); 145 mItem->setText(8,"---");
145 } 146 }
146 mItem->setText(9, t->cancelled() ? i18n("Yes") : i18n("No")); 147 mItem->setText(9, t->cancelled() ? i18n("Yes") : i18n("No"));
147 mItem->setText(10,t->categoriesStr()); 148 mItem->setText(10,t->categoriesStr());
148 149
149 QString key; 150 QString key;
150 QDate d; 151 QDate d;
151 if (t->hasDueDate()) { 152 if (t->hasDueDate()) {
152 d = t->dtDue().date(); 153 d = t->dtDue().date();
153 QTime tm = t->doesFloat() ? QTime(0,0) : t->dtDue().time(); 154 QTime tm = t->doesFloat() ? QTime(0,0) : t->dtDue().time();
154 key.sprintf("%04d%02d%02d%02d%02d",d.year(),d.month(),d.day(),tm.hour(),tm.minute()); 155 key.sprintf("%04d%02d%02d%02d%02d",d.year(),d.month(),d.day(),tm.hour(),tm.minute());
155 mItem->setSortKey(7,key); 156 mItem->setSortKey(7,key);
156 } 157 }
157 if ( t->hasStartDate() ) { 158 if ( t->hasStartDate() ) {
158 d = t->dtStart().date(); 159 d = t->dtStart().date();
159 QTime tm = t->doesFloat() ? QTime(0,0) : t->dtStart().time(); 160 QTime tm = t->doesFloat() ? QTime(0,0) : t->dtStart().time();
160 key.sprintf("%04d%02d%02d%02d%02d",d.year(),d.month(),d.day(),tm.hour(),tm.minute()); 161 key.sprintf("%04d%02d%02d%02d%02d",d.year(),d.month(),d.day(),tm.hour(),tm.minute());
161 mItem->setSortKey(1,key); 162 mItem->setSortKey(1,key);
162 } 163 }
163 return true; 164 return true;
164} 165}
165 166
166bool ListItemVisitor::visit(Journal * j) 167bool ListItemVisitor::visit(Journal * j)
167{ 168{
168 mItem->setText(0,i18n("Journal")); 169 QString des = j->description().left(50);
170 des = des.simplifyWhiteSpace ();
171 des.replace (QRegExp ("\\n"),"" );
172 des.replace (QRegExp ("\\r"),"" );
173 mItem->setText(0,i18n("Journal")+": "+des.left(25));
169 mItem->setText(1,j->dtStartDateStr()); 174 mItem->setText(1,j->dtStartDateStr());
170 mItem->setText(2,"---"); 175 mItem->setText(2,"---");
171 mItem->setText(3,"---"); 176 mItem->setText(3,"---");
172 mItem->setText(4,"---"); 177 mItem->setText(4,"---");
173 mItem->setText(5,"---"); 178 mItem->setText(5,"---");
174 mItem->setText(6,"---"); 179 mItem->setText(6,"---");
175 mItem->setText(7,j->dtStartDateStr()); 180 mItem->setText(7,j->dtStartDateStr());
176 mItem->setText(8,"---"); 181 mItem->setText(8,"---");
177 mItem->setText(9,"---"); 182 mItem->setText(9,"---");
183 mItem->setText(10,i18n("Last Modified: ")+ KGlobal::locale()->formatDateTime( j->lastModified() , true) );
178 184
179 QString key; 185 QString key;
180 QDate d = j->dtStart().date(); 186 QDate d = j->dtStart().date();
181 key.sprintf("%04d%02d%02d",d.year(),d.month(),d.day()); 187 key.sprintf("%04d%02d%02d",d.year(),d.month(),d.day());
182 mItem->setSortKey(1,key); 188 mItem->setSortKey(1,key);
183 mItem->setSortKey(7,key); 189 mItem->setSortKey(7,key);
184 190
185 return true; 191 return true;
186} 192}
187 193
188KOListView::KOListView(Calendar *calendar, QWidget *parent, 194KOListView::KOListView(Calendar *calendar, QWidget *parent,
189 const char *name) 195 const char *name)
190 : KOEventView(calendar, parent, name) 196 : KOEventView(calendar, parent, name)
191{ 197{
192 mActiveItem = 0; 198 mActiveItem = 0;
193 mListView = new KOListViewListView(this); 199 mListView = new KOListViewListView(this);
194 mListView->addColumn(i18n("Summary")); 200 mListView->addColumn(i18n("Summary"));
195 mListView->addColumn(i18n("Start Date")); 201 mListView->addColumn(i18n("Start Date"));
196 mListView->addColumn(i18n("Start Time")); 202 mListView->addColumn(i18n("Start Time"));
197 mListView->addColumn(i18n("End Date")); 203 mListView->addColumn(i18n("End Date"));
198 mListView->addColumn(i18n("End Time")); 204 mListView->addColumn(i18n("End Time"));
199 mListView->addColumn(i18n("Alarm")); // alarm set? 205 mListView->addColumn(i18n("Alarm")); // alarm set?
200 mListView->addColumn(i18n("Recurs")); // recurs? 206 mListView->addColumn(i18n("Recurs")); // recurs?
201 mListView->addColumn(i18n("Due Date")); 207 mListView->addColumn(i18n("Due Date"));
202 mListView->addColumn(i18n("Due Time")); 208 mListView->addColumn(i18n("Due Time"));
203 mListView->addColumn(i18n("Cancelled")); 209 mListView->addColumn(i18n("Cancelled"));
204 mListView->addColumn(i18n("Categories")); 210 mListView->addColumn(i18n("Categories"));
205 211
206 mListView->setColumnAlignment(0,AlignLeft); 212 mListView->setColumnAlignment(0,AlignLeft);
207 mListView->setColumnAlignment(1,AlignLeft); 213 mListView->setColumnAlignment(1,AlignLeft);
208 mListView->setColumnAlignment(2,AlignHCenter); 214 mListView->setColumnAlignment(2,AlignHCenter);
209 mListView->setColumnAlignment(3,AlignLeft); 215 mListView->setColumnAlignment(3,AlignLeft);
210 mListView->setColumnAlignment(4,AlignHCenter); 216 mListView->setColumnAlignment(4,AlignHCenter);
211 mListView->setColumnAlignment(5,AlignLeft); 217 mListView->setColumnAlignment(5,AlignLeft);
212 mListView->setColumnAlignment(6,AlignLeft); 218 mListView->setColumnAlignment(6,AlignLeft);
213 mListView->setColumnAlignment(7,AlignLeft); 219 mListView->setColumnAlignment(7,AlignLeft);
214 mListView->setColumnAlignment(8,AlignLeft); 220 mListView->setColumnAlignment(8,AlignLeft);
215 mListView->setColumnAlignment(9,AlignLeft); 221 mListView->setColumnAlignment(9,AlignLeft);
216 mListView->setColumnAlignment(10,AlignLeft); 222 mListView->setColumnAlignment(10,AlignLeft);
217 223
218 int iii = 0; 224 int iii = 0;
219 for ( iii = 0; iii< 10 ; ++iii ) 225 for ( iii = 0; iii< 10 ; ++iii )
220 mListView->setColumnWidthMode( iii, QListView::Manual ); 226 mListView->setColumnWidthMode( iii, QListView::Manual );
221 227
222 QBoxLayout *layoutTop = new QVBoxLayout(this); 228 QBoxLayout *layoutTop = new QVBoxLayout(this);
223 layoutTop->addWidget(mListView); 229 layoutTop->addWidget(mListView);
224 mListView->setFont ( KOPrefs::instance()->mListViewFont ); 230 mListView->setFont ( KOPrefs::instance()->mListViewFont );
225 mPopupMenu = eventPopup(); 231 mPopupMenu = eventPopup();
@@ -644,101 +650,106 @@ void KOListView::showDates(bool show)
644 } else { 650 } else {
645 mListView->setColumnWidth(1, oldColWidth1); 651 mListView->setColumnWidth(1, oldColWidth1);
646 mListView->setColumnWidth(3, oldColWidth3); 652 mListView->setColumnWidth(3, oldColWidth3);
647 } 653 }
648 mListView->repaint(); 654 mListView->repaint();
649} 655}
650 656
651void KOListView::printPreview(CalPrinter *calPrinter, const QDate &fd, 657void KOListView::printPreview(CalPrinter *calPrinter, const QDate &fd,
652 const QDate &td) 658 const QDate &td)
653{ 659{
654#ifndef KORG_NOPRINTER 660#ifndef KORG_NOPRINTER
655 calPrinter->preview(CalPrinter::Day, fd, td); 661 calPrinter->preview(CalPrinter::Day, fd, td);
656#endif 662#endif
657} 663}
658 664
659void KOListView::showDates() 665void KOListView::showDates()
660{ 666{
661 showDates(true); 667 showDates(true);
662} 668}
663 669
664void KOListView::hideDates() 670void KOListView::hideDates()
665{ 671{
666 showDates(false); 672 showDates(false);
667} 673}
668 674
669void KOListView::updateView() 675void KOListView::updateView()
670{ 676{
671 mListView->setFocus(); 677 mListView->setFocus();
672 if ( mListView->firstChild () ) 678 if ( mListView->firstChild () )
673 mListView->setCurrentItem( mListView->firstChild () ); 679 mListView->setCurrentItem( mListView->firstChild () );
674} 680}
675void KOListView::updateConfig() 681void KOListView::updateConfig()
676{ 682{
677 683
678 mListView->setFont ( KOPrefs::instance()->mListViewFont ); 684 mListView->setFont ( KOPrefs::instance()->mListViewFont );
679 updateView(); 685 updateView();
680 686
681} 687}
682void KOListView::setStartDate(const QDate &start) 688void KOListView::setStartDate(const QDate &start)
683{ 689{
684 mStartDate = start; 690 mStartDate = start;
685} 691}
686 692
687void KOListView::showDates(const QDate &start, const QDate &end) 693void KOListView::showDates(const QDate &start, const QDate &end)
688{ 694{
689 clear(); 695 clear();
690 mStartDate = start; 696 mStartDate = start;
691 QDate date = start; 697 QDate date = start;
698 QPtrList<Journal> j_list;
692 while( date <= end ) { 699 while( date <= end ) {
693 addEvents(calendar()->events(date)); 700 addEvents(calendar()->events(date));
694 addTodos(calendar()->todos(date)); 701 addTodos(calendar()->todos(date));
702 Journal* jo = calendar()->journal(date);
703 if ( jo )
704 j_list.append( jo );
695 date = date.addDays( 1 ); 705 date = date.addDays( 1 );
696 } 706 }
707 addJournals(j_list);
697 emit incidenceSelected( 0 ); 708 emit incidenceSelected( 0 );
698 updateView(); 709 updateView();
699 710
700} 711}
701 712
702void KOListView::addEvents(QPtrList<Event> eventList) 713void KOListView::addEvents(QPtrList<Event> eventList)
703{ 714{
704 Event *ev; 715 Event *ev;
705 for(ev = eventList.first(); ev; ev = eventList.next()) { 716 for(ev = eventList.first(); ev; ev = eventList.next()) {
706 addIncidence(ev); 717 addIncidence(ev);
707 } 718 }
708 if ( !mListView->currentItem() ){ 719 if ( !mListView->currentItem() ){
709 updateView(); 720 updateView();
710 } 721 }
711} 722}
712 723
713void KOListView::addTodos(QPtrList<Todo> eventList) 724void KOListView::addTodos(QPtrList<Todo> eventList)
714{ 725{
715 Todo *ev; 726 Todo *ev;
716 for(ev = eventList.first(); ev; ev = eventList.next()) { 727 for(ev = eventList.first(); ev; ev = eventList.next()) {
717 addIncidence(ev); 728 addIncidence(ev);
718 } 729 }
719 if ( !mListView->currentItem() ){ 730 if ( !mListView->currentItem() ){
720 updateView(); 731 updateView();
721 } 732 }
722} 733}
723void KOListView::addJournals(QPtrList<Journal> eventList) 734void KOListView::addJournals(QPtrList<Journal> eventList)
724{ 735{
725 Journal *ev; 736 Journal *ev;
726 for(ev = eventList.first(); ev; ev = eventList.next()) { 737 for(ev = eventList.first(); ev; ev = eventList.next()) {
727 addIncidence(ev); 738 addIncidence(ev);
728 } 739 }
729 if ( !mListView->currentItem() ){ 740 if ( !mListView->currentItem() ){
730 updateView(); 741 updateView();
731 } 742 }
732} 743}
733 744
734void KOListView::addIncidence(Incidence *incidence) 745void KOListView::addIncidence(Incidence *incidence)
735{ 746{
736 if ( mUidDict.find( incidence->uid() ) ) return; 747 if ( mUidDict.find( incidence->uid() ) ) return;
737 748
738 // mListView->setFont ( KOPrefs::instance()->mListViewFont ); 749 // mListView->setFont ( KOPrefs::instance()->mListViewFont );
739 mUidDict.insert( incidence->uid(), incidence ); 750 mUidDict.insert( incidence->uid(), incidence );
740 751
741 KOListViewItem *item = new KOListViewItem( incidence, mListView ); 752 KOListViewItem *item = new KOListViewItem( incidence, mListView );
742 ListItemVisitor v(item, mStartDate ); 753 ListItemVisitor v(item, mStartDate );
743 if (incidence->accept(v)) return; 754 if (incidence->accept(v)) return;
744 else delete item; 755 else delete item;
diff --git a/korganizer/main.cpp b/korganizer/main.cpp
index c8a55d2..ca53828 100644
--- a/korganizer/main.cpp
+++ b/korganizer/main.cpp
@@ -1,104 +1,106 @@
1 1
2 2
3#ifndef DESKTOP_VERSION 3#ifndef DESKTOP_VERSION
4#include <qpe/qpeapplication.h> 4#include <qpe/qpeapplication.h>
5#include <qcopchannel_qws.h> 5#include <qcopchannel_qws.h>
6#include <qpe/global.h> 6#include <qpe/global.h>
7#include <stdlib.h> 7#include <stdlib.h>
8#else 8#else
9#include <qapplication.h> 9#include <qapplication.h>
10#include <qstring.h> 10#include <qstring.h>
11#include <qwindowsstyle.h> 11#include <qwindowsstyle.h>
12#include <qplatinumstyle.h> 12#include <qplatinumstyle.h>
13#include <qsgistyle.h> 13#include <qsgistyle.h>
14#endif 14#endif
15#include <qtextcodec.h>
15 16
16#include <qdir.h> 17#include <qdir.h>
17#include <kstandarddirs.h> 18#include <kstandarddirs.h>
18#include <kglobal.h> 19#include <kglobal.h>
19#include <stdio.h> 20#include <stdio.h>
20#include "mainwindow.h" 21#include "mainwindow.h"
21 22
22int main( int argc, char **argv ) 23int main( int argc, char **argv )
23{ 24{
24#ifndef DESKTOP_VERSION 25#ifndef DESKTOP_VERSION
25 QPEApplication a( argc, argv ); 26 QPEApplication a( argc, argv );
26 a.setKeepRunning (); 27 a.setKeepRunning ();
27#else 28#else
28 QApplication a( argc, argv ); 29 QApplication a( argc, argv );
29 QApplication::setStyle( new QPlatinumStyle ()); 30 QApplication::setStyle( new QPlatinumStyle ());
30 QString hdir = QDir::homeDirPath(); 31 QString hdir = QDir::homeDirPath();
31 // there is a bug when creating dirs for WIN 98 32 // there is a bug when creating dirs for WIN 98
32 // it is difficult to fix, because we have no WIN 98 runnung 33 // it is difficult to fix, because we have no WIN 98 runnung
33 // such that we try it to create the dirs at startup here 34 // such that we try it to create the dirs at startup here
34 if ( hdir == "C:\\" ) { // win 98 or ME 35 if ( hdir == "C:\\" ) { // win 98 or ME
35 QDir app_dir; 36 QDir app_dir;
36 if ( !app_dir.exists("C:\\kdepim") ) 37 if ( !app_dir.exists("C:\\kdepim") )
37 app_dir.mkdir ("C:\\kdepim"); 38 app_dir.mkdir ("C:\\kdepim");
38 if ( !app_dir.exists("C:\\kdepim\\apps") ) 39 if ( !app_dir.exists("C:\\kdepim\\apps") )
39 app_dir.mkdir ("C:\\kdepim\\apps"); 40 app_dir.mkdir ("C:\\kdepim\\apps");
40 if ( !app_dir.exists("C:\\kdepim\\config") ) 41 if ( !app_dir.exists("C:\\kdepim\\config") )
41 app_dir.mkdir ("C:\\kdepim\\config"); 42 app_dir.mkdir ("C:\\kdepim\\config");
42 if ( !app_dir.exists("C:\\kdepim\\apps\\korganizer") ) 43 if ( !app_dir.exists("C:\\kdepim\\apps\\korganizer") )
43 app_dir.mkdir ("C:\\kdepim\\apps\\korganizer"); 44 app_dir.mkdir ("C:\\kdepim\\apps\\korganizer");
44 } 45 }
45#endif 46#endif
46 bool exitHelp = false; 47 bool exitHelp = false;
47 if ( argc > 1 ) { 48 if ( argc > 1 ) {
48 QString command = argv[1]; 49 QString command = argv[1];
49 if ( command == "-help" ){ 50 if ( command == "-help" ){
50 printf("KO/Pi command line commands:\n"); 51 printf("KO/Pi command line commands:\n");
51 printf(" no command: Start KO/Pi in usual way\n"); 52 printf(" no command: Start KO/Pi in usual way\n");
52 printf(" -help: This output\n"); 53 printf(" -help: This output\n");
53 printf("Next Option: Open or Show after start:\n"); 54 printf("Next Option: Open or Show after start:\n");
54 printf(" -newTodo: New Todo dialog\n"); 55 printf(" -newTodo: New Todo dialog\n");
55 printf(" -newEvent: New Event dialog\n"); 56 printf(" -newEvent: New Event dialog\n");
56 printf(" -showList: List view\n"); 57 printf(" -showList: List view\n");
57 printf(" -showDay: Day view\n"); 58 printf(" -showDay: Day view\n");
58 printf(" -showWWeek: Work Week view\n"); 59 printf(" -showWWeek: Work Week view\n");
59 printf(" -showWeek: Week view\n"); 60 printf(" -showWeek: Week view\n");
60 printf(" -showTodo: Todo view\n"); 61 printf(" -showTodo: Todo view\n");
61 printf(" -showJournal: Journal view\n"); 62 printf(" -showJournal: Journal view\n");
62 printf(" -showKO: Next Days view\n"); 63 printf(" -showKO: Next Days view\n");
63 printf(" -showWNext: What's Next view\n"); 64 printf(" -showWNext: What's Next view\n");
64 printf(" -showNextXView: Next X View\n"); 65 printf(" -showNextXView: Next X View\n");
65 printf(" -new[Y] and -show[X] may be used togehther\n"); 66 printf(" -new[Y] and -show[X] may be used togehther\n");
66 printf(" KO/Pi is exiting now. Bye!\n"); 67 printf(" KO/Pi is exiting now. Bye!\n");
67 exitHelp = true; 68 exitHelp = true;
68 } 69 }
69 } 70 }
70 if ( ! exitHelp ) { 71 if ( ! exitHelp ) {
71 KGlobal::setAppName( "korganizer" ); 72 KGlobal::setAppName( "korganizer" );
72 QString fileName ; 73 QString fileName ;
73#ifndef DESKTOP_VERSION 74#ifndef DESKTOP_VERSION
74 fileName = getenv("QPEDIR"); 75 fileName = getenv("QPEDIR");
75 KGlobal::iconLoader()->setIconPath( fileName +"/pics/kdepim/korganizer/"); 76 KGlobal::iconLoader()->setIconPath( fileName +"/pics/kdepim/korganizer/");
76#else 77#else
77 fileName = qApp->applicationDirPath () + "/kdepim/korganizer/"; 78 fileName = qApp->applicationDirPath () + "/kdepim/korganizer/";
78 KGlobal::iconLoader()->setIconPath(QDir::convertSeparators(fileName)); 79 KGlobal::iconLoader()->setIconPath(QDir::convertSeparators(fileName));
79#endif 80#endif
80 KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "korganizer"))); 81 KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "korganizer")));
81 MainWindow m; 82 MainWindow m;
82#ifndef DESKTOP_VERSION 83#ifndef DESKTOP_VERSION
83 84
84 QObject::connect( &a, SIGNAL (appMessage ( const QCString &, const QByteArray & )),&m, SLOT(recieve( const QCString&, const QByteArray& ))); 85 QObject::connect( &a, SIGNAL (appMessage ( const QCString &, const QByteArray & )),&m, SLOT(recieve( const QCString&, const QByteArray& )));
85 a.showMainWidget(&m ); 86 a.showMainWidget(&m );
86#else 87#else
87 a.setMainWidget(&m ); 88 a.setMainWidget(&m );
88 m.show(); 89 m.show();
89 //m.resize( 800, 600 ); 90 //m.resize( 800, 600 );
90 QObject::connect(&a, SIGNAL(lastWindowClosed()), &a, SLOT(quit())); 91 QObject::connect(&a, SIGNAL(lastWindowClosed()), &a, SLOT(quit()));
91#endif 92#endif
92 if ( argc > 1 ) { 93 if ( argc > 1 ) {
93 QCString command = argv[1]; 94 QCString command = argv[1];
94 if ( argc > 2 ) 95 if ( argc > 2 )
95 command += argv[2]; 96 command += argv[2];
96 qApp->processEvents(); 97 qApp->processEvents();
97 m.recieve(command, QByteArray() ); 98 m.recieve(command, QByteArray() );
98 99
99 } 100 }
101
100 a.exec(); 102 a.exec();
101 103
102 } 104 }
103 qDebug("KO: Bye! "); 105 qDebug("KO: Bye! ");
104} 106}