summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--bin/kdepim/WhatsNew.txt5
-rw-r--r--bin/kdepim/korganizer/germantranslation.txt2
-rw-r--r--korganizer/koprefs.cpp1
-rw-r--r--korganizer/koprefs.h1
-rw-r--r--korganizer/koprefsdialog.cpp6
-rw-r--r--korganizer/kowhatsnextview.cpp16
6 files changed, 27 insertions, 4 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt
index 368f379..2032420 100644
--- a/bin/kdepim/WhatsNew.txt
+++ b/bin/kdepim/WhatsNew.txt
@@ -1,101 +1,104 @@
1Info about the changes in new versions of KDE-Pim/Pi 1Info about the changes in new versions of KDE-Pim/Pi
2 2
3********** VERSION 2.1.17 ************ 3********** VERSION 2.1.17 ************
4 4
5 5KO/Pi:
6Added option to display times in What's Next View on two lines.
7Removed "Allday" for allday events of one day duration in What's Next View.
8Added date range for allday events of more than one day duration in What's Next View.
6 9
7********** VERSION 2.1.16 ************ 10********** VERSION 2.1.16 ************
8 11
9Fixed a problem with the menu bar in KO/Pi and using the "Menu" hardware key on the Zaurus. 12Fixed a problem with the menu bar in KO/Pi and using the "Menu" hardware key on the Zaurus.
10Added columns for datetime in todo view: Last modified, created and last modified subtodo 13Added columns for datetime in todo view: Last modified, created and last modified subtodo
11Fixed a bug in agenda view displaying recurring multiday events which are longer than two days. 14Fixed a bug in agenda view displaying recurring multiday events which are longer than two days.
12Made conflict detection up to 4 times faster. 15Made conflict detection up to 4 times faster.
13 16
14********** VERSION 2.1.15 ************ 17********** VERSION 2.1.15 ************
15 18
16Fixed two layout problems on the Z: 19Fixed two layout problems on the Z:
17Made the with of the newly added buttons on the Quick-Todo smaller. 20Made the with of the newly added buttons on the Quick-Todo smaller.
18Made listweek layout in 2 columns on the Z760 in portait screen and full menubar visible. 21Made listweek layout in 2 columns on the Z760 in portait screen and full menubar visible.
19 22
20 23
21********** VERSION 2.1.14 ************ 24********** VERSION 2.1.14 ************
22 25
23Added some buttons to the KO/Pi Quick-todo line to make it possible to quickly access some todo view layout settings like display all flat/open/close and hide/show running/done. 26Added some buttons to the KO/Pi Quick-todo line to make it possible to quickly access some todo view layout settings like display all flat/open/close and hide/show running/done.
24Added a button to add a subtodo quickly. 27Added a button to add a subtodo quickly.
25 28
26Added a possibility to search for conflicting events. (In the Action menu. Keyboard shortcut "q", shift+q or ctrl +q ). 29Added a possibility to search for conflicting events. (In the Action menu. Keyboard shortcut "q", shift+q or ctrl +q ).
27Added an option to change the layout of the list week to column mode. 30Added an option to change the layout of the list week to column mode.
28 31
29Fixed some usability problems in pi-sync mode by adding some progress information about file transfer. 32Fixed some usability problems in pi-sync mode by adding some progress information about file transfer.
30 33
31Fixed pi-sync problems with the new multi calendar feature. 34Fixed pi-sync problems with the new multi calendar feature.
32Now pi-sync behaviour should be: 35Now pi-sync behaviour should be:
331) Local sends file request ( as usual ) 361) Local sends file request ( as usual )
342) Remote sends file which contains data of all enabled ( the calendar where the "eye" column is checked ) calendars. 372) Remote sends file which contains data of all enabled ( the calendar where the "eye" column is checked ) calendars.
353) Local syncs with data, adds new entries to default calendar and sends file back ( as usual ). 383) Local syncs with data, adds new entries to default calendar and sends file back ( as usual ).
36 If the data which local receives contains entries which are on disabled calendars on local this entries are updated and not added as duplicates to the default calendar. 39 If the data which local receives contains entries which are on disabled calendars on local this entries are updated and not added as duplicates to the default calendar.
374) Remote updates the data and adds new entries to default calendar. Readonly entries are not changed on remote. 404) Remote updates the data and adds new entries to default calendar. Readonly entries are not changed on remote.
38 If the data which remote receives contains entries which are on disabled calendars on remote this entries are updated and not added as duplicates to the default calendar. 41 If the data which remote receives contains entries which are on disabled calendars on remote this entries are updated and not added as duplicates to the default calendar.
39 42
40Summary: 43Summary:
41No new item ( new created after the last sync ) in a disabled calendar is propagated to the sync partner. Readonly items are synced and added/changed on the sync partner if it is not readonly on the sync partner. 44No new item ( new created after the last sync ) in a disabled calendar is propagated to the sync partner. Readonly items are synced and added/changed on the sync partner if it is not readonly on the sync partner.
42If you have different calendars on remote and local and some of them disabled you may get some "strange" bahaviour. 45If you have different calendars on remote and local and some of them disabled you may get some "strange" bahaviour.
43Well, the syncing has become quite complicated ... you should have no problems if you enable all calendars. 46Well, the syncing has become quite complicated ... you should have no problems if you enable all calendars.
44 47
45********** VERSION 2.1.13 ************ 48********** VERSION 2.1.13 ************
46 49
47Fixed a problem in KA/Pi search. 50Fixed a problem in KA/Pi search.
48Fixed some minor problems in KO/Pi. 51Fixed some minor problems in KO/Pi.
49Added calendar selection possibility to the todo view popup and to the event/todo/journal editor. 52Added calendar selection possibility to the todo view popup and to the event/todo/journal editor.
50 53
51Fixed memory usage problems in KA/Pi: 54Fixed memory usage problems in KA/Pi:
52When loading data KA/Pi did load the file data twice. 55When loading data KA/Pi did load the file data twice.
53Example: 56Example:
54 A 600k file did consume 1200k memory during loading process. 57 A 600k file did consume 1200k memory during loading process.
55 This is fixed, it does now consume only 600k during loading process. 58 This is fixed, it does now consume only 600k during loading process.
56When saving data KA/Pi did consume a lot of memory for the data parsing during the save process. 59When saving data KA/Pi did consume a lot of memory for the data parsing during the save process.
57This is fixed. 60This is fixed.
58Example: 61Example:
59 Before saving a 600k file KA/Pi did consume 21.7 Meg of Ram. 62 Before saving a 600k file KA/Pi did consume 21.7 Meg of Ram.
60 When saving KA/Pi did consume 28.6 Meg of Ram. That causes a crash on the Zaurus because there was no memeory left in the system. 63 When saving KA/Pi did consume 28.6 Meg of Ram. That causes a crash on the Zaurus because there was no memeory left in the system.
61 Now KA/Pi is consuming on saving the same data 22.0 Meg of Ram during the save process. 64 Now KA/Pi is consuming on saving the same data 22.0 Meg of Ram during the save process.
62Note: The memory usage of KA/Pi after the data is loaded/saved has not changed. 65Note: The memory usage of KA/Pi after the data is loaded/saved has not changed.
63The saving of data may be a bit slower now. 66The saving of data may be a bit slower now.
64 67
65Fixed memory usage problems in KO/Pi: 68Fixed memory usage problems in KO/Pi:
66When KO/Pi did save the data to file, it did not release the used buffers after saving. 69When KO/Pi did save the data to file, it did not release the used buffers after saving.
67The used buffer was released after saving the next time, but there was new buffer space allocated again on that save operation. 70The used buffer was released after saving the next time, but there was new buffer space allocated again on that save operation.
68This is fixed. 71This is fixed.
69Example: 72Example:
70 When saving a 400k file KO/Pi do now use 400k less memory now. 73 When saving a 400k file KO/Pi do now use 400k less memory now.
71 74
72Optimized memory usage in KO/Pi Agenda view: 75Optimized memory usage in KO/Pi Agenda view:
73KO/Pi is storing some paint information in extra buffers for faster repainting of the agenda view. 76KO/Pi is storing some paint information in extra buffers for faster repainting of the agenda view.
74These buffers were not made smaller (i.e. downsized) because of performance reasons. 77These buffers were not made smaller (i.e. downsized) because of performance reasons.
75The handling of these buffers are now much smarter: 78The handling of these buffers are now much smarter:
76Two (of six) buffers are removed completely. 79Two (of six) buffers are removed completely.
77The remaing four buffers are now downsized after not using the agenda view for 45 seconds. 80The remaing four buffers are now downsized after not using the agenda view for 45 seconds.
78Such that the memory usage of KO/Pi is smaller now in general ( because 2 buffers are removed) and is much smaller when not using the agenda view. That is very important when using fastload for KO/Pi. 81Such that the memory usage of KO/Pi is smaller now in general ( because 2 buffers are removed) and is much smaller when not using the agenda view. That is very important when using fastload for KO/Pi.
79 82
80Worst case example ( for a maximum size agenda content): 83Worst case example ( for a maximum size agenda content):
81 When resizing the agenda content to a large scale, KO/Pi did use 17Meg of mem ( and did not use less memory until it was stopped). Now KO/Pi is using on the same operation only 14.3 Meg of mem and after 45 seconds not using the agenda view it uses only 9.4 Meg of mem. 84 When resizing the agenda content to a large scale, KO/Pi did use 17Meg of mem ( and did not use less memory until it was stopped). Now KO/Pi is using on the same operation only 14.3 Meg of mem and after 45 seconds not using the agenda view it uses only 9.4 Meg of mem.
82 85
83When switching to an unused Agenda view now KO/Pi is upizing the buffers again. This takes less than a second. Such that switching to Agenda view (after not using it for more than 45 seconds) is now a bit slower. 86When switching to an unused Agenda view now KO/Pi is upizing the buffers again. This takes less than a second. Such that switching to Agenda view (after not using it for more than 45 seconds) is now a bit slower.
84 87
85Summary: 88Summary:
86Many memory wasting problems of KA/Pi and KO/Pi fixed such that it is better to use on the Zaurus. 89Many memory wasting problems of KA/Pi and KO/Pi fixed such that it is better to use on the Zaurus.
87 90
88********** VERSION 2.1.12 ************ 91********** VERSION 2.1.12 ************
89 92
90KO/Pi: 93KO/Pi:
91Many small usability fixes, e.g. rearranged the popup menus such that they are better to use on the Zaurus. 94Many small usability fixes, e.g. rearranged the popup menus such that they are better to use on the Zaurus.
92Fixed a problem with the month view when file was saved but KO/Pi was not the active window. 95Fixed a problem with the month view when file was saved but KO/Pi was not the active window.
93Fixed some problems in the resource config dialog (e.g. added a warning if you set all calendars to read-only). 96Fixed some problems in the resource config dialog (e.g. added a warning if you set all calendars to read-only).
94Fixed some other small problems. 97Fixed some other small problems.
95 98
96********** VERSION 2.1.11 ************ 99********** VERSION 2.1.11 ************
97 100
98KO/Pi: 101KO/Pi:
99Because we can have many calendars now in KO/Pi we can have more than one journal entry per day. 102Because we can have many calendars now in KO/Pi we can have more than one journal entry per day.
100Added features to handle (and add ) more than one journal entry per day. 103Added features to handle (and add ) more than one journal entry per day.
101Added option for a journal title. 104Added option for a journal title.
diff --git a/bin/kdepim/korganizer/germantranslation.txt b/bin/kdepim/korganizer/germantranslation.txt
index 0b928ef..e699fe9 100644
--- a/bin/kdepim/korganizer/germantranslation.txt
+++ b/bin/kdepim/korganizer/germantranslation.txt
@@ -1436,108 +1436,108 @@
1436{ "Assistant","Assistent" }, 1436{ "Assistant","Assistent" },
1437{ "Manager","Manager" }, 1437{ "Manager","Manager" },
1438{ "Secrecy","Sichtbar" }, 1438{ "Secrecy","Sichtbar" },
1439{ "male","männlich" }, 1439{ "male","männlich" },
1440{ "female","weiblich" }, 1440{ "female","weiblich" },
1441{ "Hide!","Verbergen!" }, 1441{ "Hide!","Verbergen!" },
1442{ "Show!","Anzeigen!" }, 1442{ "Show!","Anzeigen!" },
1443{ "Details","Details" }, 1443{ "Details","Details" },
1444{ "Profession","Beruf" }, 1444{ "Profession","Beruf" },
1445{ "Children","Kinder" }, 1445{ "Children","Kinder" },
1446{ "Department","Abteilung" }, 1446{ "Department","Abteilung" },
1447{ "Backup cancelled","Backup abgebrochen" }, 1447{ "Backup cancelled","Backup abgebrochen" },
1448{ "Backup globally disabled","Backup global abgeschaltet" }, 1448{ "Backup globally disabled","Backup global abgeschaltet" },
1449{ "Backup succesfully finished","Backup erfolgreich beendet" }, 1449{ "Backup succesfully finished","Backup erfolgreich beendet" },
1450{ "(Hint: You can enable automatic backup in the global settings!)","(Hinweis: Sie können ein automatisches Backup in den globalen Einstellungen konfigurieren!)" }, 1450{ "(Hint: You can enable automatic backup in the global settings!)","(Hinweis: Sie können ein automatisches Backup in den globalen Einstellungen konfigurieren!)" },
1451{ "This will <b>backup all calendar files</b> to the directory %1 %2","Das schreibt ein <b>Backup aller Kalenderdateien</b> in das Verzeichnis %1 %2" }, 1451{ "This will <b>backup all calendar files</b> to the directory %1 %2","Das schreibt ein <b>Backup aller Kalenderdateien</b> in das Verzeichnis %1 %2" },
1452{ "Birthdays","Geburtstage" }, 1452{ "Birthdays","Geburtstage" },
1453{ "KO/Pi import information!","KO/Pi Import Information!" }, 1453{ "KO/Pi import information!","KO/Pi Import Information!" },
1454{ "Start this todo\nand stop all running","Starte dieses Todo\nund stoppe alle Laufenden" }, 1454{ "Start this todo\nand stop all running","Starte dieses Todo\nund stoppe alle Laufenden" },
1455{ "Cancel - do not start"," Abbrechen - Todo nicht starten" }, 1455{ "Cancel - do not start"," Abbrechen - Todo nicht starten" },
1456{ "The timezone has changed!\nShould the calendar be reloaded\nto shift the time of the events?\nPlease read Menu: Help->FAQ:\n"How do I change the timezone?"\nas well!","Die Zeitzone wurde geändert!\nSollen die Kalender neu geladen\nwerden num die Zeiten\nder Termine zu ändern?\nBitte lesen Sie auch\nMenu: Help->FAQ:\n"How do I change the timezone?"" }, 1456{ "The timezone has changed!\nShould the calendar be reloaded\nto shift the time of the events?\nPlease read Menu: Help->FAQ:\n"How do I change the timezone?"\nas well!","Die Zeitzone wurde geändert!\nSollen die Kalender neu geladen\nwerden num die Zeiten\nder Termine zu ändern?\nBitte lesen Sie auch\nMenu: Help->FAQ:\n"How do I change the timezone?"" },
1457{ "Reload","Neu laden" }, 1457{ "Reload","Neu laden" },
1458{ "Timezone settings","Zeitzoneneinstellung" }, 1458{ "Timezone settings","Zeitzoneneinstellung" },
1459{ "Title: ","Titel: " }, 1459{ "Title: ","Titel: " },
1460{ "Journal from: ","Journal vom: " }, 1460{ "Journal from: ","Journal vom: " },
1461{ "Journal: %1 from ","Journal: %1 vom " }, 1461{ "Journal: %1 from ","Journal: %1 vom " },
1462{ "<b>Click here to edit categories: </b>","<b>Klicke hier um Kategorien zu ändern: </b>" }, 1462{ "<b>Click here to edit categories: </b>","<b>Klicke hier um Kategorien zu ändern: </b>" },
1463{ "Selected Item","Ausgewähltes Item" }, 1463{ "Selected Item","Ausgewähltes Item" },
1464{ "Select Date...","Wähle Datum..." }, 1464{ "Select Date...","Wähle Datum..." },
1465{ "After importing/loading/syncing there may be new categories in events or todos which are not added automatically to the category list. Please choose what to do <b>now</b>:","Nach dem Importieren/Laden/Syncen kann es neue Kategorien in den Terminen oder Todos geben, die nicht automatisch der Kategorieliste hinzugefügt werden. Bitte wählen Sie, was <b>jetzt</b> passieren soll:" }, 1465{ "After importing/loading/syncing there may be new categories in events or todos which are not added automatically to the category list. Please choose what to do <b>now</b>:","Nach dem Importieren/Laden/Syncen kann es neue Kategorien in den Terminen oder Todos geben, die nicht automatisch der Kategorieliste hinzugefügt werden. Bitte wählen Sie, was <b>jetzt</b> passieren soll:" },
1466{ "Change category list now!","Ändere Kategorieliste jetzt!" }, 1466{ "Change category list now!","Ändere Kategorieliste jetzt!" },
1467{ "Edit category list...","Ändere Kategorieliste..." }, 1467{ "Edit category list...","Ändere Kategorieliste..." },
1468{ "Toolbar changes needs a restart!","Neustart benötigt für Toolbaränderungen!" }, 1468{ "Toolbar changes needs a restart!","Neustart benötigt für Toolbaränderungen!" },
1469{ "Filepath: ","Dateipfad: " }, 1469{ "Filepath: ","Dateipfad: " },
1470{ "You can try to reload the calendar in the Resource View!","In der Resourcenansicht können Sie erneut versuchen den Kalender zu laden!" }, 1470{ "You can try to reload the calendar in the Resource View!","In der Resourcenansicht können Sie erneut versuchen den Kalender zu laden!" },
1471{ "<b>WARNING:</b> There is a pending suspended alarm!","<b>WARNUNG:</b> Es gibt einen laufenden Suspendalarm!" }, 1471{ "<b>WARNING:</b> There is a pending suspended alarm!","<b>WARNUNG:</b> Es gibt einen laufenden Suspendalarm!" },
1472{ "Pending Suspend Alarm","Laufender Suspend Alarm" }, 1472{ "Pending Suspend Alarm","Laufender Suspend Alarm" },
1473{ "Error loading calendar %1","Fehler beim Laden von Kalender %1" }, 1473{ "Error loading calendar %1","Fehler beim Laden von Kalender %1" },
1474{ "Calendar(s) not loaded:","Nicht geladene(r) Kalender:" }, 1474{ "Calendar(s) not loaded:","Nicht geladene(r) Kalender:" },
1475{ "Loding of calendar(s) failed","Laden von Kalendern fehlgeschlagen" }, 1475{ "Loding of calendar(s) failed","Laden von Kalendern fehlgeschlagen" },
1476{ "Alarm Options","Alarm Einstellungen" }, 1476{ "Alarm Options","Alarm Einstellungen" },
1477{ "Delete selected...","Lösche Ausgewählte..." }, 1477{ "Delete selected...","Lösche Ausgewählte..." },
1478{ "None","Nichts" }, 1478{ "None","Nichts" },
1479{ "Selection","Auswahl" }, 1479{ "Selection","Auswahl" },
1480{ "Set categories","Setze Kategorien" }, 1480{ "Set categories","Setze Kategorien" },
1481{ "This adds the selected\nitems to the calendar\n%1\nand removes them from\ntheir current calendar!","Das fügt die ausgewählten\nEinträge dem Kalender\n%1\nhinzu und entfernt sie von\nihrem aktuellen Kalender!" }, 1481{ "This adds the selected\nitems to the calendar\n%1\nand removes them from\ntheir current calendar!","Das fügt die ausgewählten\nEinträge dem Kalender\n%1\nhinzu und entfernt sie von\nihrem aktuellen Kalender!" },
1482{ "Reset","Neu setzen" }, 1482{ "Reset","Neu setzen" },
1483{ "Do you want to <b>add</b> categories to the selected items or <b>reset</b> the list (i.e. remove current categories)?","Möchten Sie Kategorien zu den ausgewählten Einträgen <b>hinzufügen</b> oder die Liste <b>neu setzen</b> (d.h. vorhandene Kategorien löschen)?" }, 1483{ "Do you want to <b>add</b> categories to the selected items or <b>reset</b> the list (i.e. remove current categories)?","Möchten Sie Kategorien zu den ausgewählten Einträgen <b>hinzufügen</b> oder die Liste <b>neu setzen</b> (d.h. vorhandene Kategorien löschen)?" },
1484{ "The file\n%1\ndoes not exist!\nShall I create it for you?","Die Datei\n%1\nexistiert nicht!\nSoll sie neu angelegt werden?" }, 1484{ "The file\n%1\ndoes not exist!\nShall I create it for you?","Die Datei\n%1\nexistiert nicht!\nSoll sie neu angelegt werden?" },
1485{ "Sorry, cannot create the file\n%1!\nNo calendar added!","Kann leider die Datei\n%1\nnicht anlegen!\nKein Kalender hinzugefügt!" }, 1485{ "Sorry, cannot create the file\n%1!\nNo calendar added!","Kann leider die Datei\n%1\nnicht anlegen!\nKein Kalender hinzugefügt!" },
1486{ "\nNO\n WRITEABLE\n CALENDAR\n FOUND!\n\nPlease fix your calendar settings!\n","\nKEIN\n SCHREIBBARER\n KALENDER\n GEFUNDEN!\n\nBitte korrigieren Sie\nihre Kalendereinstellungen!\n" }, 1486{ "\nNO\n WRITEABLE\n CALENDAR\n FOUND!\n\nPlease fix your calendar settings!\n","\nKEIN\n SCHREIBBARER\n KALENDER\n GEFUNDEN!\n\nBitte korrigieren Sie\nihre Kalendereinstellungen!\n" },
1487{ "\nThe file\n%1\non disk has changed!\nFile size: %2 bytes.\nLast modified: %3\nDo you want to:\n\n - Save and overwrite file?\n - Sync with file, then save?\n - Cancel without saving? \n","\nDie Datei\n%1\nwurde verändert!\nDatei Grösse: %2 Bytes.\nZuletzt geändert: %3\nMöchten Sie:\n\n - Speichern und die Datei überschreiben?\n - Mit Datei Synchronisieren, dann speichern?\n - Abbrechen ohne zu speichern? \n" }, 1487{ "\nThe file\n%1\non disk has changed!\nFile size: %2 bytes.\nLast modified: %3\nDo you want to:\n\n - Save and overwrite file?\n - Sync with file, then save?\n - Cancel without saving? \n","\nDie Datei\n%1\nwurde verändert!\nDatei Grösse: %2 Bytes.\nZuletzt geändert: %3\nMöchten Sie:\n\n - Speichern und die Datei überschreiben?\n - Mit Datei Synchronisieren, dann speichern?\n - Abbrechen ohne zu speichern? \n" },
1488{ "Edit","Edit" }, 1488{ "Edit","Edit" },
1489{ "Last Modified","Zuletzt geändert" }, 1489{ "Last Modified","Zuletzt geändert" },
1490{ "Journal viewer","Journal Anzeige" }, 1490{ "Journal viewer","Journal Anzeige" },
1491{ "Configure Calendar Files...","Konfiguriere Kalenderdateien..." }, 1491{ "Configure Calendar Files...","Konfiguriere Kalenderdateien..." },
1492{ "You can use and display <b>more than one</b> calendar file in KO/Pi. A calendar file is called a <b>resource</b>. To add a calendar or change calendar settings please use menu: <b>View -> Toggle Resource View</b>.","Sie können <b>mehr als eine</b> Kalenderdatei in KO/Pi darstellen und benutzen. Eine Kalenderdatei wird <b>Resource</b> genannt. Um einen Kalender hinzuzufügen oder die Kalendereinstellungen zu ändern benutzen Sie bitte das Menu: <b>Ansicht -> Resourcenansicht umschalten</b>." }, 1492{ "You can use and display <b>more than one</b> calendar file in KO/Pi. A calendar file is called a <b>resource</b>. To add a calendar or change calendar settings please use menu: <b>View -> Toggle Resource View</b>.","Sie können <b>mehr als eine</b> Kalenderdatei in KO/Pi darstellen und benutzen. Eine Kalenderdatei wird <b>Resource</b> genannt. Um einen Kalender hinzuzufügen oder die Kalendereinstellungen zu ändern benutzen Sie bitte das Menu: <b>Ansicht -> Resourcenansicht umschalten</b>." },
1493{ "Hide Completed","Verstecke erledigte Todos" }, 1493{ "Hide Completed","Verstecke erledigte Todos" },
1494{ "Show not Running","Zeige nicht Laufende" }, 1494{ "Show not Running","Zeige nicht Laufende" },
1495{ "Click to add new Todo","Klick für neues Todo!" }, 1495{ "Click to add new Todo","Klick für neues Todo!" },
1496{ "Show next conflict for","Zeige nächsten Konflikt für" }, 1496{ "Show next conflict for","Zeige nächsten Konflikt für" },
1497{ "All events","Alle Termine" }, 1497{ "All events","Alle Termine" },
1498{ "Allday events","Ganztagestermine" }, 1498{ "Allday events","Ganztagestermine" },
1499{ "Events with time","Termine mit Zeit" }, 1499{ "Events with time","Termine mit Zeit" },
1500{ "No conflict found","Kein Konflikt gefunden" }, 1500{ "No conflict found","Kein Konflikt gefunden" },
1501{ "Conflict %1 <-> %2","Konflikt %1 <-> %2" }, 1501{ "Conflict %1 <-> %2","Konflikt %1 <-> %2" },
1502{ "<p><b>Q</b>: Show next date with conflicting events\n ","<p><b>Q</b>: Zeige nächstes Datum mit Terminen im Konflikt\n " }, 1502{ "<p><b>Q</b>: Show next date with conflicting events\n ","<p><b>Q</b>: Zeige nächstes Datum mit Terminen im Konflikt\n " },
1503{ "Week view mode uses row layout","Wochenansicht Modus nutzt Reihenlayout" }, 1503{ "Week view mode uses row layout","Wochenansicht Modus nutzt Reihenlayout" },
1504{ "The event\n%1\nconflicts with event\n%2\nat date\n%3.\n","Der Termin\n%1\nist im Konflikt mit Termin\n%2\nam Datum\n%3.\n" }, 1504{ "The event\n%1\nconflicts with event\n%2\nat date\n%3.\n","Der Termin\n%1\nist im Konflikt mit Termin\n%2\nam Datum\n%3.\n" },
1505{ "KO/Pi Conflict delected","KO/Pi Konflikt erkannt" }, 1505{ "KO/Pi Conflict delected","KO/Pi Konflikt erkannt" },
1506{ "Show date","Zeige Datum" }, 1506{ "Show date","Zeige Datum" },
1507{ "No problem!","Null Problemo!" }, 1507{ "No problem!","Null Problemo!" },
1508{ "Automatically sync with KDE-Desktop\nwhen receiving sync request","Synce automatisch mit KDE-Desktop\nwenn eine Sync-Anforderung kommt" }, 1508{ "Automatically sync with KDE-Desktop\nwhen receiving sync request","Synce automatisch mit KDE-Desktop\nwenn eine Sync-Anforderung kommt" },
1509{ "Pi-Sync Port Error","Pi-Sync Port Fehler" }, 1509{ "Pi-Sync Port Error","Pi-Sync Port Fehler" },
1510{ "<b>Enabling Pi-Sync failed!</b> Failed to bind or listen to the port %1! Is another instance already listening to that port?","<b>Anschalten von Pi-Sync fehlgeschlagen!</b> Fehler beim Ansprechen des Ports %1! Ist bereits eine andere Anwendung dabei diesen Port zu nutzen?" }, 1510{ "<b>Enabling Pi-Sync failed!</b> Failed to bind or listen to the port %1! Is another instance already listening to that port?","<b>Anschalten von Pi-Sync fehlgeschlagen!</b> Fehler beim Ansprechen des Ports %1! Ist bereits eine andere Anwendung dabei diesen Port zu nutzen?" },
1511{ "No valid port number:\n%1","Keine gültige Port Nummer:\n%1" }, 1511{ "No valid port number:\n%1","Keine gültige Port Nummer:\n%1" },
1512{ "Port number (Default: %1)\nValid range from 1 to 65535","Port Nummer (Standard: %1)\nGültiger Bereich von 1 bis 65535" }, 1512{ "Port number (Default: %1)\nValid range from 1 to 65535","Port Nummer (Standard: %1)\nGültiger Bereich von 1 bis 65535" },
1513{ "Pi-Sync Error","Pi-Sync Fehler" }, 1513{ "Pi-Sync Error","Pi-Sync Fehler" },
1514{ "Got send file request\nwith invalid password","Erhielt "sende Datei" Anfrage\nmit ungültigem Passwort" }, 1514{ "Got send file request\nwith invalid password","Erhielt "sende Datei" Anfrage\nmit ungültigem Passwort" },
1515{ "Got receive file request\nwith invalid password","Erhielt "empfange Datei" Anfrage\nmit ungültigem Passwort" }, 1515{ "Got receive file request\nwith invalid password","Erhielt "empfange Datei" Anfrage\nmit ungültigem Passwort" },
1516{ "Wrong password: Receiving remote file failed.","Falsches Passwort: Empfangen von entfernter Datei fehlgeschlagen." }, 1516{ "Wrong password: Receiving remote file failed.","Falsches Passwort: Empfangen von entfernter Datei fehlgeschlagen." },
1517{ "Please close error dialog on remote.","Bitte schließe Fehler-Dialog am entfernten Rechner" }, 1517{ "Please close error dialog on remote.","Bitte schließe Fehler-Dialog am entfernten Rechner" },
1518{ "Unknown error on remote.","Unbekannter Fehler am entfernten Rechner" }, 1518{ "Unknown error on remote.","Unbekannter Fehler am entfernten Rechner" },
1519{ "Pi-Sync: Connected!","Pi-Sync: Verbunden!" }, 1519{ "Pi-Sync: Connected!","Pi-Sync: Verbunden!" },
1520{ "Receiving file from remote...","Empfange entfernte Datei..." }, 1520{ "Receiving file from remote...","Empfange entfernte Datei..." },
1521{ "Sending back synced file...","Sende synchronisierte Datei zurück..." }, 1521{ "Sending back synced file...","Sende synchronisierte Datei zurück..." },
1522{ "Do you want to\nclear all sync info\nof all profiles?","Möchten Sie wirklich\ndie Sync-Info\nfür alle Profile\nlöschen?" }, 1522{ "Do you want to\nclear all sync info\nof all profiles?","Möchten Sie wirklich\ndie Sync-Info\nfür alle Profile\nlöschen?" },
1523{ "Do you want to\nclear the sync\ninfo of profile\n%1?\n","Möchten Sie wirklich\ndie Sync-Info für Profil\n%1?\nlöschen" }, 1523{ "Do you want to\nclear the sync\ninfo of profile\n%1?\n","Möchten Sie wirklich\ndie Sync-Info für Profil\n%1?\nlöschen" },
1524{ "Sorry, no valid port.Syncing cancelled.","Sorry, kein gültiger Port. Syncing abgebrochen." }, 1524{ "Sorry, no valid port.Syncing cancelled.","Sorry, kein gültiger Port. Syncing abgebrochen." },
1525{ "Remote port number:\n(May be: 1 - 65535)","Ferne Port Nummer:\n(Darf sein: 1 - 65535)" }, 1525{ "Remote port number:\n(May be: 1 - 65535)","Ferne Port Nummer:\n(Darf sein: 1 - 65535)" },
1526{ "Writing back file ...","Schreibe Datei zurück..." }, 1526{ "Writing back file ...","Schreibe Datei zurück..." },
1527{ "Sending back file ...","Sende Datei zurück..." }, 1527{ "Sending back file ...","Sende Datei zurück..." },
1528{ "Eeek, there I am ticklish!","Hihi, da bin ich kitzlig!" }, 1528{ "Eeek, there I am ticklish!","Hihi, da bin ich kitzlig!" },
1529{ "Created","Angelegt" }, 1529{ "Created","Angelegt" },
1530{ "Last Modified Sub","Zuletzt geändertes Sub" }, 1530{ "Last Modified Sub","Zuletzt geändertes Sub" },
1531{ "Checking conflicts ... please wait","Überprüfe Konflikte ... bitte warten" }, 1531{ "Checking conflicts ... please wait","Überprüfe Konflikte ... bitte warten" },
1532{ "","" }, 1532{ "Show times on two lines","Zeige Zeiten auf zwei Zeilen" },
1533{ "","" }, 1533{ "","" },
1534{ "","" }, 1534{ "","" },
1535{ "","" }, 1535{ "","" },
1536{ "","" }, 1536{ "","" },
1537{ "","" }, 1537{ "","" },
1538{ "","" }, 1538{ "","" },
1539{ "","" }, 1539{ "","" },
1540{ "","" }, 1540{ "","" },
1541{ "","" }, 1541{ "","" },
1542{ "","" }, 1542{ "","" },
1543{ "","" }, 1543{ "","" },
diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp
index 6560877..eb997f5 100644
--- a/korganizer/koprefs.cpp
+++ b/korganizer/koprefs.cpp
@@ -24,192 +24,193 @@
24#include <time.h> 24#include <time.h>
25#ifndef _WIN32_ 25#ifndef _WIN32_
26#include <unistd.h> 26#include <unistd.h>
27#endif 27#endif
28#include <qdir.h> 28#include <qdir.h>
29#include <qtextstream.h> 29#include <qtextstream.h>
30#include <qtextcodec.h> 30#include <qtextcodec.h>
31#include <qstring.h> 31#include <qstring.h>
32#include <qregexp.h> 32#include <qregexp.h>
33#include <qfont.h> 33#include <qfont.h>
34#include <qcolor.h> 34#include <qcolor.h>
35#include <qstringlist.h> 35#include <qstringlist.h>
36#include <stdlib.h> 36#include <stdlib.h>
37 37
38#include <kglobal.h> 38#include <kglobal.h>
39#include <kglobalsettings.h> 39#include <kglobalsettings.h>
40#include <kconfig.h> 40#include <kconfig.h>
41#include <klocale.h> 41#include <klocale.h>
42#include <kdebug.h> 42#include <kdebug.h>
43#include <kemailsettings.h> 43#include <kemailsettings.h>
44#include <kstaticdeleter.h> 44#include <kstaticdeleter.h>
45#include <libkdepim/kpimglobalprefs.h> 45#include <libkdepim/kpimglobalprefs.h>
46 46
47#include "koprefs.h" 47#include "koprefs.h"
48#include "mainwindow.h" 48#include "mainwindow.h"
49 49
50KOPrefs *KOPrefs::mInstance = 0; 50KOPrefs *KOPrefs::mInstance = 0;
51static KStaticDeleter<KOPrefs> insd; 51static KStaticDeleter<KOPrefs> insd;
52 52
53KOPrefs::KOPrefs() : 53KOPrefs::KOPrefs() :
54 KPimPrefs("korganizerrc") 54 KPimPrefs("korganizerrc")
55{ 55{
56 mGlobalUpdateDisabled = false; 56 mGlobalUpdateDisabled = false;
57 mCategoryColors.setAutoDelete(true); 57 mCategoryColors.setAutoDelete(true);
58 fillMailDefaults(); 58 fillMailDefaults();
59 mDefaultCategoryColor = QColor(175,210,255);//196,196,196); 59 mDefaultCategoryColor = QColor(175,210,255);//196,196,196);
60 QColor defaultHolidayColor = QColor(255,0,0); 60 QColor defaultHolidayColor = QColor(255,0,0);
61 QColor defaultHighlightColor = QColor(129,112,255);//64,64,255); 61 QColor defaultHighlightColor = QColor(129,112,255);//64,64,255);
62 QColor defaultAgendaBgColor = QColor(239,241,169);//128,128,128); 62 QColor defaultAgendaBgColor = QColor(239,241,169);//128,128,128);
63 QColor defaultWorkingHoursColor = QColor(170,223,150);//160,160,160); 63 QColor defaultWorkingHoursColor = QColor(170,223,150);//160,160,160);
64 QColor defaultTodoDueTodayColor = QColor(255,220,100); 64 QColor defaultTodoDueTodayColor = QColor(255,220,100);
65 QColor defaultTodoOverdueColor = QColor(255,153,125); 65 QColor defaultTodoOverdueColor = QColor(255,153,125);
66 QColor defaultTodoRunColor = QColor(99,194,30); 66 QColor defaultTodoRunColor = QColor(99,194,30);
67 KPrefs::setCurrentGroup("General"); 67 KPrefs::setCurrentGroup("General");
68 addItemBool("Enable Group Scheduling",&mEnableGroupScheduling,false); 68 addItemBool("Enable Group Scheduling",&mEnableGroupScheduling,false);
69 addItemBool("ShowIconNewTodo",&mShowIconNewTodo,true); 69 addItemBool("ShowIconNewTodo",&mShowIconNewTodo,true);
70 addItemBool("ShowIconNewEvent",&mShowIconNewEvent,true); 70 addItemBool("ShowIconNewEvent",&mShowIconNewEvent,true);
71 addItemBool("ShowIconSearch",&mShowIconSearch,true); 71 addItemBool("ShowIconSearch",&mShowIconSearch,true);
72 addItemBool("ShowIconList",&mShowIconList,true); 72 addItemBool("ShowIconList",&mShowIconList,true);
73 addItemBool("ShowIconDay1",&mShowIconDay1,true); 73 addItemBool("ShowIconDay1",&mShowIconDay1,true);
74 addItemBool("ShowIconDay5",&mShowIconDay5,true); 74 addItemBool("ShowIconDay5",&mShowIconDay5,true);
75 addItemBool("ShowIconDay6",&mShowIconDay6,true); 75 addItemBool("ShowIconDay6",&mShowIconDay6,true);
76 addItemBool("ShowIconDay7",&mShowIconDay7,true); 76 addItemBool("ShowIconDay7",&mShowIconDay7,true);
77 addItemBool("ShowIconMonth",&mShowIconMonth,true); 77 addItemBool("ShowIconMonth",&mShowIconMonth,true);
78 addItemBool("ShowIconTodoview",&mShowIconTodoview,true); 78 addItemBool("ShowIconTodoview",&mShowIconTodoview,true);
79 addItemBool("ShowIconBackFast",&mShowIconBackFast,true); 79 addItemBool("ShowIconBackFast",&mShowIconBackFast,true);
80 addItemBool("ShowIconBack",&mShowIconBack,true); 80 addItemBool("ShowIconBack",&mShowIconBack,true);
81 addItemBool("ShowIconToday",&mShowIconToday,true); 81 addItemBool("ShowIconToday",&mShowIconToday,true);
82 addItemBool("ShowIconForward",&mShowIconForward,true); 82 addItemBool("ShowIconForward",&mShowIconForward,true);
83 addItemBool("ShowIconForwardFast",&mShowIconForwardFast,true); 83 addItemBool("ShowIconForwardFast",&mShowIconForwardFast,true);
84 addItemBool("ShowIconWhatsThis",&mShowIconWhatsThis,true); 84 addItemBool("ShowIconWhatsThis",&mShowIconWhatsThis,true);
85 addItemBool("ShowIconWeekNum",&mShowIconWeekNum,true); 85 addItemBool("ShowIconWeekNum",&mShowIconWeekNum,true);
86 addItemBool("ShowIconNextDays",&mShowIconNextDays,true); 86 addItemBool("ShowIconNextDays",&mShowIconNextDays,true);
87 addItemBool("ShowIconNext",&mShowIconNext,true); 87 addItemBool("ShowIconNext",&mShowIconNext,true);
88 addItemBool("ShowIconJournal",&mShowIconJournal,true); 88 addItemBool("ShowIconJournal",&mShowIconJournal,true);
89 addItemBool("ShowIconStretch",&mShowIconStretch,true); 89 addItemBool("ShowIconStretch",&mShowIconStretch,true);
90 addItemBool("ShowIconFilter",&mShowIconFilter,false); 90 addItemBool("ShowIconFilter",&mShowIconFilter,false);
91 addItemBool("ShowIconOnetoolbar",&mShowIconOnetoolbar,true); 91 addItemBool("ShowIconOnetoolbar",&mShowIconOnetoolbar,true);
92 92
93 bool addIcons = false; 93 bool addIcons = false;
94#ifdef DESKTOP_VERSION 94#ifdef DESKTOP_VERSION
95 addIcons = true; 95 addIcons = true;
96#endif 96#endif
97 addItemBool("ShowIconNavigator",&mShowIconNavigator,addIcons); 97 addItemBool("ShowIconNavigator",&mShowIconNavigator,addIcons);
98 addItemBool("ShowIconAllday",&mShowIconAllday,addIcons); 98 addItemBool("ShowIconAllday",&mShowIconAllday,addIcons);
99 addItemBool("ShowIconFilterview",&mShowIconFilterview,addIcons); 99 addItemBool("ShowIconFilterview",&mShowIconFilterview,addIcons);
100 addItemBool("ShowIconToggleFull",&mShowIconToggleFull,addIcons); 100 addItemBool("ShowIconToggleFull",&mShowIconToggleFull,addIcons);
101 101
102 addItemInt("LastLoadedLanguage",&mOldLanguage,0); 102 addItemInt("LastLoadedLanguage",&mOldLanguage,0);
103 103
104 addItemBool("AskForQuit",&mAskForQuit,false); 104 addItemBool("AskForQuit",&mAskForQuit,false);
105 105
106#ifndef DESKTOP_VERSION 106#ifndef DESKTOP_VERSION
107 addItemBool("ShowFullMenu",&mShowFullMenu,false); 107 addItemBool("ShowFullMenu",&mShowFullMenu,false);
108#else 108#else
109 addItemBool("ShowFullMenu",&mShowFullMenu,true); 109 addItemBool("ShowFullMenu",&mShowFullMenu,true);
110#endif 110#endif
111 addItemBool("ToolBarHor",&mToolBarHor, true ); 111 addItemBool("ToolBarHor",&mToolBarHor, true );
112 addItemBool("ToolBarUp",&mToolBarUp, false ); 112 addItemBool("ToolBarUp",&mToolBarUp, false );
113 addItemBool("ToolBarHorV",&mToolBarHorV, true ); 113 addItemBool("ToolBarHorV",&mToolBarHorV, true );
114 addItemBool("ToolBarUpV",&mToolBarUpV, false ); 114 addItemBool("ToolBarUpV",&mToolBarUpV, false );
115 addItemBool("ToolBarHorN",&mToolBarHorN, true ); 115 addItemBool("ToolBarHorN",&mToolBarHorN, true );
116 addItemBool("ToolBarUpN",&mToolBarUpN, false ); 116 addItemBool("ToolBarUpN",&mToolBarUpN, false );
117 addItemBool("ToolBarHorF",&mToolBarHorF, true ); 117 addItemBool("ToolBarHorF",&mToolBarHorF, true );
118 addItemBool("ToolBarUpF",&mToolBarUpF, false ); 118 addItemBool("ToolBarUpF",&mToolBarUpF, false );
119 addItemBool("ToolBarMiniIcons",&mToolBarMiniIcons, false ); 119 addItemBool("ToolBarMiniIcons",&mToolBarMiniIcons, false );
120 addItemBool("WhatsNextTime2Lines",&mWhatsNextTime2Lines, false );
120 addItemInt("Whats Next Days",&mWhatsNextDays,3); 121 addItemInt("Whats Next Days",&mWhatsNextDays,3);
121 addItemInt("Whats Next Prios",&mWhatsNextPrios,1); 122 addItemInt("Whats Next Prios",&mWhatsNextPrios,1);
122 123
123 addItemBool("ShowTodoInAgenda",&mShowTodoInAgenda,true); 124 addItemBool("ShowTodoInAgenda",&mShowTodoInAgenda,true);
124 addItemBool("ShowCompletedTodoInAgenda",&mShowCompletedTodoInAgenda,true); 125 addItemBool("ShowCompletedTodoInAgenda",&mShowCompletedTodoInAgenda,true);
125 addItemBool("ShowTimeInAgenda",&mShowTimeInAgenda,true); 126 addItemBool("ShowTimeInAgenda",&mShowTimeInAgenda,true);
126 addItemBool("HideNonStartedTodos",&mHideNonStartedTodos,false); 127 addItemBool("HideNonStartedTodos",&mHideNonStartedTodos,false);
127 addItemBool("ShowCompletedTodo",&mShowCompletedTodo,true); 128 addItemBool("ShowCompletedTodo",&mShowCompletedTodo,true);
128 addItemInt("AllDay Size",&mAllDaySize,28); 129 addItemInt("AllDay Size",&mAllDaySize,28);
129 QString defAlarm = KGlobal::iconLoader()->iconPath()+"koalarm.wav"; 130 QString defAlarm = KGlobal::iconLoader()->iconPath()+"koalarm.wav";
130 addItemString("DefaultAlarmFile",&mDefaultAlarmFile,defAlarm ); 131 addItemString("DefaultAlarmFile",&mDefaultAlarmFile,defAlarm );
131 132
132 addItemStringList("LocationDefaults",&mLocationDefaults ); 133 addItemStringList("LocationDefaults",&mLocationDefaults );
133 addItemStringList("EventSummary User",&mEventSummaryUser); 134 addItemStringList("EventSummary User",&mEventSummaryUser);
134 addItemStringList("TodoSummary User",&mTodoSummaryUser); 135 addItemStringList("TodoSummary User",&mTodoSummaryUser);
135 addItemStringList("JournalSummary User",&mJournalSummaryUser); 136 addItemStringList("JournalSummary User",&mJournalSummaryUser);
136 137
137 addItemBool("Enable Group Scheduling",&mEnableGroupScheduling,false); 138 addItemBool("Enable Group Scheduling",&mEnableGroupScheduling,false);
138 addItemBool("Enable Project View",&mEnableProjectView,false); 139 addItemBool("Enable Project View",&mEnableProjectView,false);
139 addItemBool("Auto Save",&mAutoSave,false); 140 addItemBool("Auto Save",&mAutoSave,false);
140 addItemInt("Auto Save Interval",&mAutoSaveInterval,3); 141 addItemInt("Auto Save Interval",&mAutoSaveInterval,3);
141 addItemBool("Confirm Deletes",&mConfirm,true); 142 addItemBool("Confirm Deletes",&mConfirm,true);
142 addItemString("Archive File",&mArchiveFile); 143 addItemString("Archive File",&mArchiveFile);
143 addItemString("Html Export File",&mHtmlExportFile, 144 addItemString("Html Export File",&mHtmlExportFile,
144 QDir::homeDirPath() + "/" + i18n("Default export file", "calendar.html")); 145 QDir::homeDirPath() + "/" + i18n("Default export file", "calendar.html"));
145 addItemBool("Html With Save",&mHtmlWithSave,false); 146 addItemBool("Html With Save",&mHtmlWithSave,false);
146 147
147 KPrefs::setCurrentGroup("Personal Settings"); 148 KPrefs::setCurrentGroup("Personal Settings");
148 149
149 addItemInt("Mail Client",&mMailClient,MailClientKMail); 150 addItemInt("Mail Client",&mMailClient,MailClientKMail);
150 addItemBool("Use Control Center Email",&mEmailControlCenter,false); 151 addItemBool("Use Control Center Email",&mEmailControlCenter,false);
151 addItemBool("Bcc",&mBcc,false); 152 addItemBool("Bcc",&mBcc,false);
152 153
153 KPrefs::setCurrentGroup("Time & Date"); 154 KPrefs::setCurrentGroup("Time & Date");
154 155
155 156
156 addItemInt("Default Start Time",&mStartTime,10); 157 addItemInt("Default Start Time",&mStartTime,10);
157 addItemInt("Default Duration",&mDefaultDuration,2); 158 addItemInt("Default Duration",&mDefaultDuration,2);
158 addItemInt("Default Alarm Time",&mAlarmTime,3); 159 addItemInt("Default Alarm Time",&mAlarmTime,3);
159 KPrefs::setCurrentGroup("AlarmSettings"); 160 KPrefs::setCurrentGroup("AlarmSettings");
160 addItemInt("AlarmPlayBeeps",&mAlarmPlayBeeps,20); 161 addItemInt("AlarmPlayBeeps",&mAlarmPlayBeeps,20);
161 addItemInt("AlarmSuspendTime",&mAlarmSuspendTime,7); 162 addItemInt("AlarmSuspendTime",&mAlarmSuspendTime,7);
162 addItemInt("AlarmSuspendCount",&mAlarmSuspendCount,5); 163 addItemInt("AlarmSuspendCount",&mAlarmSuspendCount,5);
163 addItemInt("AlarmBeepInterval",&mAlarmBeepInterval,3); 164 addItemInt("AlarmBeepInterval",&mAlarmBeepInterval,3);
164 165
165 166
166 KPrefs::setCurrentGroup("Calendar"); 167 KPrefs::setCurrentGroup("Calendar");
167 168
168 addItemInt("Default Calendar Format",&mDefaultFormat,FormatICalendar); 169 addItemInt("Default Calendar Format",&mDefaultFormat,FormatICalendar);
169 170
170 KPrefs::setCurrentGroup("Fonts"); 171 KPrefs::setCurrentGroup("Fonts");
171 // qDebug(" KPrefs::setCurrentGroup(Fonts); "); 172 // qDebug(" KPrefs::setCurrentGroup(Fonts); ");
172 QFont fon = KGlobalSettings::generalFont(); 173 QFont fon = KGlobalSettings::generalFont();
173 addItemFont("TimeBar Font",&mTimeBarFont,fon ); 174 addItemFont("TimeBar Font",&mTimeBarFont,fon );
174 addItemFont("MonthView Font",&mMonthViewFont,fon); 175 addItemFont("MonthView Font",&mMonthViewFont,fon);
175 addItemFont("AgendaView Font",&mAgendaViewFont,fon); 176 addItemFont("AgendaView Font",&mAgendaViewFont,fon);
176 addItemFont("MarcusBains Font",&mMarcusBainsFont,fon); 177 addItemFont("MarcusBains Font",&mMarcusBainsFont,fon);
177 addItemFont("TimeLabels Font",&mTimeLabelsFont,fon); 178 addItemFont("TimeLabels Font",&mTimeLabelsFont,fon);
178 addItemFont("TodoView Font",&mTodoViewFont,fon); 179 addItemFont("TodoView Font",&mTodoViewFont,fon);
179 addItemFont("ListView Font",&mListViewFont,fon); 180 addItemFont("ListView Font",&mListViewFont,fon);
180 addItemFont("DateNavigator Font",&mDateNavigatorFont,fon); 181 addItemFont("DateNavigator Font",&mDateNavigatorFont,fon);
181 addItemFont("EditBox Font",&mEditBoxFont,fon); 182 addItemFont("EditBox Font",&mEditBoxFont,fon);
182 addItemFont("JournalView Font",&mJornalViewFont,fon); 183 addItemFont("JournalView Font",&mJornalViewFont,fon);
183 addItemFont("WhatsNextView Font",&mWhatsNextFont,fon); 184 addItemFont("WhatsNextView Font",&mWhatsNextFont,fon);
184 addItemFont("EventView Font",&mEventViewFont,fon); 185 addItemFont("EventView Font",&mEventViewFont,fon);
185 186
186 KPrefs::setCurrentGroup("RemoteSyncing"); 187 KPrefs::setCurrentGroup("RemoteSyncing");
187 addItemString("ActiveSyncPort",&mActiveSyncPort,"9197" ); 188 addItemString("ActiveSyncPort",&mActiveSyncPort,"9197" );
188 addItemString("ActiveSyncIP",&mActiveSyncIP,"192.168.0.40" ); 189 addItemString("ActiveSyncIP",&mActiveSyncIP,"192.168.0.40" );
189 addItemBool("ShowSyncEvents",&mShowSyncEvents,false); 190 addItemBool("ShowSyncEvents",&mShowSyncEvents,false);
190 addItemInt("LastSyncTime",&mLastSyncTime,0); 191 addItemInt("LastSyncTime",&mLastSyncTime,0);
191 192
192#ifdef _WIN32_ 193#ifdef _WIN32_
193 QString hdp= locateLocal("data","korganizer")+"\\\\"; 194 QString hdp= locateLocal("data","korganizer")+"\\\\";
194#else 195#else
195 QString hdp= locateLocal("data","korganizer")+"/"; 196 QString hdp= locateLocal("data","korganizer")+"/";
196#endif 197#endif
197 198
198 KPrefs::setCurrentGroup("LoadSaveFileNames"); 199 KPrefs::setCurrentGroup("LoadSaveFileNames");
199 200
200 addItemString("LastImportFile", &mLastImportFile ,hdp +"import.ics" ); 201 addItemString("LastImportFile", &mLastImportFile ,hdp +"import.ics" );
201 addItemString("LastVcalFile", &mLastVcalFile ,hdp +"export.vcs" ); 202 addItemString("LastVcalFile", &mLastVcalFile ,hdp +"export.vcs" );
202 addItemString("LastSaveFile", &mLastSaveFile ,hdp +"mybackup.ics" ); 203 addItemString("LastSaveFile", &mLastSaveFile ,hdp +"mybackup.ics" );
203 addItemString("LastLoadFile", &mLastLoadFile ,hdp +"mybackup.ics" ); 204 addItemString("LastLoadFile", &mLastLoadFile ,hdp +"mybackup.ics" );
204 205
205 206
206 KPrefs::setCurrentGroup("Locale"); 207 KPrefs::setCurrentGroup("Locale");
207 addItemBool("ShortDateInViewer",&mShortDateInViewer,false); 208 addItemBool("ShortDateInViewer",&mShortDateInViewer,false);
208 209
209 210
210 KPrefs::setCurrentGroup("Colors"); 211 KPrefs::setCurrentGroup("Colors");
211 addItemColor("Holiday Color",&mHolidayColor,defaultHolidayColor); 212 addItemColor("Holiday Color",&mHolidayColor,defaultHolidayColor);
212 addItemColor("Highlight Color",&mHighlightColor,defaultHighlightColor); 213 addItemColor("Highlight Color",&mHighlightColor,defaultHighlightColor);
213 addItemColor("Event Color",&mEventColor,mDefaultCategoryColor); 214 addItemColor("Event Color",&mEventColor,mDefaultCategoryColor);
214 addItemColor("Todo done Color",&mTodoDoneColor,QColor(111,255,115) ); 215 addItemColor("Todo done Color",&mTodoDoneColor,QColor(111,255,115) );
215 addItemColor("Agenda Background Color",&mAgendaBgColor,defaultAgendaBgColor); 216 addItemColor("Agenda Background Color",&mAgendaBgColor,defaultAgendaBgColor);
diff --git a/korganizer/koprefs.h b/korganizer/koprefs.h
index 2ff03fa..9749ba3 100644
--- a/korganizer/koprefs.h
+++ b/korganizer/koprefs.h
@@ -115,192 +115,193 @@ class KOPrefs : public KPimPrefs
115 /** Constructor disabled for public. Use instance() to create a KOPrefs 115 /** Constructor disabled for public. Use instance() to create a KOPrefs
116 object. */ 116 object. */
117 KOPrefs(); 117 KOPrefs();
118 118
119 static KOPrefs *mInstance; 119 static KOPrefs *mInstance;
120 QStringList getDefaultList(); 120 QStringList getDefaultList();
121 QStringList getLocationDefaultList(); 121 QStringList getLocationDefaultList();
122 public: 122 public:
123 // preferences data 123 // preferences data
124 KConfig* getConfig(); 124 KConfig* getConfig();
125 void setFullName(const QString &); 125 void setFullName(const QString &);
126 QString fullName(); 126 QString fullName();
127 void setEmail(const QString &); 127 void setEmail(const QString &);
128 QString email(); 128 QString email();
129 129
130 QString mAdditional; 130 QString mAdditional;
131 131
132 bool mEmailControlCenter; 132 bool mEmailControlCenter;
133 133
134 bool mBcc; 134 bool mBcc;
135 bool mAutoSave; 135 bool mAutoSave;
136 int mAutoSaveInterval; 136 int mAutoSaveInterval;
137 bool mConfirm; 137 bool mConfirm;
138 138
139 bool mEnableGroupScheduling; 139 bool mEnableGroupScheduling;
140 bool mEnableProjectView; 140 bool mEnableProjectView;
141 141
142 int mDefaultFormat; 142 int mDefaultFormat;
143 int mMailClient; 143 int mMailClient;
144 144
145 int mStartTime; 145 int mStartTime;
146 int mDefaultDuration; 146 int mDefaultDuration;
147 int mAlarmTime; 147 int mAlarmTime;
148 148
149 int mWorkingHoursStart; 149 int mWorkingHoursStart;
150 int mWorkingHoursEnd; 150 int mWorkingHoursEnd;
151 bool mExcludeHolidays; 151 bool mExcludeHolidays;
152 bool mExcludeSaturdays; 152 bool mExcludeSaturdays;
153 bool mMarcusBainsShowSeconds; 153 bool mMarcusBainsShowSeconds;
154 154
155 QFont mTimeBarFont; 155 QFont mTimeBarFont;
156 QFont mMonthViewFont; 156 QFont mMonthViewFont;
157 QFont mAgendaViewFont; 157 QFont mAgendaViewFont;
158 QFont mMarcusBainsFont; 158 QFont mMarcusBainsFont;
159 QFont mTimeLabelsFont; 159 QFont mTimeLabelsFont;
160 QFont mTodoViewFont; 160 QFont mTodoViewFont;
161 QFont mListViewFont; 161 QFont mListViewFont;
162 QFont mDateNavigatorFont; 162 QFont mDateNavigatorFont;
163 QFont mEditBoxFont; 163 QFont mEditBoxFont;
164 QFont mJornalViewFont; 164 QFont mJornalViewFont;
165 QFont mWhatsNextFont; 165 QFont mWhatsNextFont;
166 QFont mEventViewFont; 166 QFont mEventViewFont;
167 167
168 168
169 169
170 170
171 QColor mHolidayColor; 171 QColor mHolidayColor;
172 QColor mHighlightColor; 172 QColor mHighlightColor;
173 QColor mEventColor; 173 QColor mEventColor;
174 QColor mTodoDoneColor; 174 QColor mTodoDoneColor;
175 QColor mAgendaBgColor; 175 QColor mAgendaBgColor;
176 QColor mWorkingHoursColor; 176 QColor mWorkingHoursColor;
177 QColor mTodoDueTodayColor; 177 QColor mTodoDueTodayColor;
178 QColor mTodoOverdueColor; 178 QColor mTodoOverdueColor;
179 QColor mTodoRunColor; 179 QColor mTodoRunColor;
180 QColor mMonthViewEvenColor; 180 QColor mMonthViewEvenColor;
181 QColor mMonthViewOddColor; 181 QColor mMonthViewOddColor;
182 QColor mMonthViewHolidayColor; 182 QColor mMonthViewHolidayColor;
183 bool mMonthViewUsesDayColors; 183 bool mMonthViewUsesDayColors;
184 bool mMonthViewSatSunTog; 184 bool mMonthViewSatSunTog;
185 bool mMonthViewWeek; 185 bool mMonthViewWeek;
186 bool mMonthViewWeekRowlayout; 186 bool mMonthViewWeekRowlayout;
187 QColor mAppColor1; 187 QColor mAppColor1;
188 QColor mAppColor2; 188 QColor mAppColor2;
189 bool mUseAppColors; 189 bool mUseAppColors;
190 190
191 int mDayBegins; 191 int mDayBegins;
192 int mHourSize; 192 int mHourSize;
193 int mAllDaySize; 193 int mAllDaySize;
194 bool mShowFullMenu; 194 bool mShowFullMenu;
195 bool mDailyRecur; 195 bool mDailyRecur;
196 bool mWeeklyRecur; 196 bool mWeeklyRecur;
197 bool mMonthDailyRecur; 197 bool mMonthDailyRecur;
198 bool mMonthWeeklyRecur; 198 bool mMonthWeeklyRecur;
199 bool mMonthShowIcons; 199 bool mMonthShowIcons;
200 bool mMonthShowTimes; 200 bool mMonthShowTimes;
201 bool mMonthShowShort; 201 bool mMonthShowShort;
202 bool mEnableToolTips; 202 bool mEnableToolTips;
203 bool mEnableMonthScroll; 203 bool mEnableMonthScroll;
204 bool mFullViewMonth; 204 bool mFullViewMonth;
205 bool mMonthViewUsesCategoryColor; 205 bool mMonthViewUsesCategoryColor;
206 bool mFullViewTodo; 206 bool mFullViewTodo;
207 bool mShowCompletedTodo; 207 bool mShowCompletedTodo;
208 bool mMarcusBainsEnabled; 208 bool mMarcusBainsEnabled;
209 int mNextXDays; 209 int mNextXDays;
210 int mWhatsNextDays; 210 int mWhatsNextDays;
211 bool mWhatsNextTime2Lines;
211 int mWhatsNextPrios; 212 int mWhatsNextPrios;
212 bool mEnableQuickTodo; 213 bool mEnableQuickTodo;
213 214
214 bool mCompactDialogs; 215 bool mCompactDialogs;
215 bool mVerticalScreen; 216 bool mVerticalScreen;
216 217
217 bool mShowIconNewTodo; 218 bool mShowIconNewTodo;
218 bool mShowIconNewEvent; 219 bool mShowIconNewEvent;
219 bool mShowIconSearch; 220 bool mShowIconSearch;
220 bool mShowIconList; 221 bool mShowIconList;
221 bool mShowIconDay1; 222 bool mShowIconDay1;
222 bool mShowIconDay5; 223 bool mShowIconDay5;
223 bool mShowIconDay6; 224 bool mShowIconDay6;
224 bool mShowIconDay7; 225 bool mShowIconDay7;
225 bool mShowIconMonth; 226 bool mShowIconMonth;
226 bool mShowIconTodoview; 227 bool mShowIconTodoview;
227 bool mShowIconBackFast; 228 bool mShowIconBackFast;
228 bool mShowIconBack; 229 bool mShowIconBack;
229 bool mShowIconToday; 230 bool mShowIconToday;
230 bool mShowIconForward; 231 bool mShowIconForward;
231 bool mShowIconForwardFast; 232 bool mShowIconForwardFast;
232 bool mShowIconWhatsThis; 233 bool mShowIconWhatsThis;
233 bool mShowIconWeekNum; 234 bool mShowIconWeekNum;
234 bool mShowIconNextDays; 235 bool mShowIconNextDays;
235 bool mShowIconNext; 236 bool mShowIconNext;
236 bool mShowIconJournal; 237 bool mShowIconJournal;
237 bool mShowIconFilter; 238 bool mShowIconFilter;
238 bool mShowIconOnetoolbar; 239 bool mShowIconOnetoolbar;
239 bool mShowIconNavigator; 240 bool mShowIconNavigator;
240 bool mShowIconAllday; 241 bool mShowIconAllday;
241 bool mShowIconFilterview; 242 bool mShowIconFilterview;
242 bool mShowIconToggleFull; 243 bool mShowIconToggleFull;
243 244
244 bool mShowIconStretch; 245 bool mShowIconStretch;
245 246
246 bool mToolBarHor; 247 bool mToolBarHor;
247 bool mToolBarUp; 248 bool mToolBarUp;
248 bool mToolBarHorV; 249 bool mToolBarHorV;
249 bool mToolBarUpV; 250 bool mToolBarUpV;
250 bool mToolBarHorN; 251 bool mToolBarHorN;
251 bool mToolBarUpN; 252 bool mToolBarUpN;
252 bool mToolBarHorF; 253 bool mToolBarHorF;
253 bool mToolBarUpF; 254 bool mToolBarUpF;
254 bool mToolBarMiniIcons; 255 bool mToolBarMiniIcons;
255 256
256 bool mAskForQuit; 257 bool mAskForQuit;
257 bool mUsePassWd; 258 bool mUsePassWd;
258 bool mShowSyncEvents; 259 bool mShowSyncEvents;
259 bool mShowTodoInAgenda; 260 bool mShowTodoInAgenda;
260 bool mShowCompletedTodoInAgenda; 261 bool mShowCompletedTodoInAgenda;
261 bool mShowTimeInAgenda; 262 bool mShowTimeInAgenda;
262 bool mHideNonStartedTodos; 263 bool mHideNonStartedTodos;
263 264
264 bool mBlockPopupMenu; 265 bool mBlockPopupMenu;
265 266
266 int mLastSyncTime; 267 int mLastSyncTime;
267 void setCategoryColor(QString cat,const QColor & color); 268 void setCategoryColor(QString cat,const QColor & color);
268 QColor *categoryColor(QString cat); 269 QColor *categoryColor(QString cat);
269 270
270 QString mArchiveFile; 271 QString mArchiveFile;
271 QString mHtmlExportFile; 272 QString mHtmlExportFile;
272 bool mHtmlWithSave; 273 bool mHtmlWithSave;
273 274
274 QStringList mSelectedPlugins; 275 QStringList mSelectedPlugins;
275 276
276 QString mLastImportFile; 277 QString mLastImportFile;
277 QString mLastVcalFile; 278 QString mLastVcalFile;
278 QString mLastSaveFile; 279 QString mLastSaveFile;
279 QString mLastLoadFile; 280 QString mLastLoadFile;
280 281
281 282
282 QString mDefaultAlarmFile; 283 QString mDefaultAlarmFile;
283 int mIMIPScheduler; 284 int mIMIPScheduler;
284 int mIMIPSend; 285 int mIMIPSend;
285 QStringList mAdditionalMails; 286 QStringList mAdditionalMails;
286 int mIMIPAutoRefresh; 287 int mIMIPAutoRefresh;
287 int mIMIPAutoInsertReply; 288 int mIMIPAutoInsertReply;
288 int mIMIPAutoInsertRequest; 289 int mIMIPAutoInsertRequest;
289 int mIMIPAutoFreeBusy; 290 int mIMIPAutoFreeBusy;
290 int mIMIPAutoFreeBusyReply; 291 int mIMIPAutoFreeBusyReply;
291 292
292 QStringList mTodoTemplates; 293 QStringList mTodoTemplates;
293 QStringList mEventTemplates; 294 QStringList mEventTemplates;
294 295
295 int mDestination; 296 int mDestination;
296 297
297 298
298 bool mEditOnDoubleClick; 299 bool mEditOnDoubleClick;
299 bool mViewChangeHoldFullscreen; 300 bool mViewChangeHoldFullscreen;
300 bool mViewChangeHoldNonFullscreen; 301 bool mViewChangeHoldNonFullscreen;
301 bool mCenterOnCurrentTime; 302 bool mCenterOnCurrentTime;
302 bool mSetTimeToDayStartAt; 303 bool mSetTimeToDayStartAt;
303 bool mHighlightCurrentDay; 304 bool mHighlightCurrentDay;
304 bool mUseHighlightLightColor; 305 bool mUseHighlightLightColor;
305 bool mListViewMonthTimespan; 306 bool mListViewMonthTimespan;
306 bool mWNViewShowsParents; 307 bool mWNViewShowsParents;
diff --git a/korganizer/koprefsdialog.cpp b/korganizer/koprefsdialog.cpp
index 05bd73f..9e2378a 100644
--- a/korganizer/koprefsdialog.cpp
+++ b/korganizer/koprefsdialog.cpp
@@ -686,195 +686,199 @@ void KOPrefsDialog::setupViewsTab()
686 &(KOPrefs::instance()->mMonthShowShort),habo); 686 &(KOPrefs::instance()->mMonthShowShort),habo);
687 weeklyRecur = 687 weeklyRecur =
688 addWidBool(i18n("icons"), 688 addWidBool(i18n("icons"),
689 &(KOPrefs::instance()->mMonthShowIcons),habo); 689 &(KOPrefs::instance()->mMonthShowIcons),habo);
690 weeklyRecur = 690 weeklyRecur =
691 addWidBool(i18n("times"), 691 addWidBool(i18n("times"),
692 &(KOPrefs::instance()->mMonthShowTimes),habo); 692 &(KOPrefs::instance()->mMonthShowTimes),habo);
693 topLayout->addMultiCellWidget(habo,ii, ii,0,1); 693 topLayout->addMultiCellWidget(habo,ii, ii,0,1);
694 ii++; 694 ii++;
695#ifdef DESKTOP_VERSION 695#ifdef DESKTOP_VERSION
696 KPrefsDialogWidBool *enableMonthScroll = 696 KPrefsDialogWidBool *enableMonthScroll =
697 addWidBool(i18n("Enable scrollbars in month view cells"), 697 addWidBool(i18n("Enable scrollbars in month view cells"),
698 &(KOPrefs::instance()->mEnableMonthScroll),topFrame); 698 &(KOPrefs::instance()->mEnableMonthScroll),topFrame);
699 topLayout->addWidget(enableMonthScroll->checkBox(),ii++,0); 699 topLayout->addWidget(enableMonthScroll->checkBox(),ii++,0);
700#endif 700#endif
701 dummy = 701 dummy =
702 addWidBool(i18n("Week view mode uses bigger font"), 702 addWidBool(i18n("Week view mode uses bigger font"),
703 &(KOPrefs::instance()->mMonthViewUsesBigFont),topFrame); 703 &(KOPrefs::instance()->mMonthViewUsesBigFont),topFrame);
704 topLayout->addWidget(dummy->checkBox(),ii++,0); 704 topLayout->addWidget(dummy->checkBox(),ii++,0);
705 dummy = 705 dummy =
706 addWidBool(i18n("Week view mode uses row layout"), 706 addWidBool(i18n("Week view mode uses row layout"),
707 &(KOPrefs::instance()->mMonthViewWeekRowlayout),topFrame); 707 &(KOPrefs::instance()->mMonthViewWeekRowlayout),topFrame);
708 topLayout->addWidget(dummy->checkBox(),ii++,0); 708 topLayout->addWidget(dummy->checkBox(),ii++,0);
709 dummy = 709 dummy =
710 addWidBool(i18n("Show Sat/Sun together"), 710 addWidBool(i18n("Show Sat/Sun together"),
711 &(KOPrefs::instance()->mMonthViewSatSunTog),topFrame); 711 &(KOPrefs::instance()->mMonthViewSatSunTog),topFrame);
712 topLayout->addWidget(dummy->checkBox(),ii++,0); 712 topLayout->addWidget(dummy->checkBox(),ii++,0);
713 713
714 KPrefsDialogWidBool *coloredCategoriesInMonthView = 714 KPrefsDialogWidBool *coloredCategoriesInMonthView =
715 addWidBool(i18n("Month view uses category colors"), 715 addWidBool(i18n("Month view uses category colors"),
716 &(KOPrefs::instance()->mMonthViewUsesCategoryColor),topFrame); 716 &(KOPrefs::instance()->mMonthViewUsesCategoryColor),topFrame);
717 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0); 717 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0);
718 718
719 dummy = 719 dummy =
720 addWidBool(i18n("Category colors are applied to text"), 720 addWidBool(i18n("Category colors are applied to text"),
721 &(KOPrefs::instance()->mMonthViewUsesForegroundColor),topFrame); 721 &(KOPrefs::instance()->mMonthViewUsesForegroundColor),topFrame);
722 topLayout->addWidget(dummy->checkBox(),ii++,0); 722 topLayout->addWidget(dummy->checkBox(),ii++,0);
723 723
724 724
725 725
726 if ( QApplication::desktop()->height() <= 240 ) { 726 if ( QApplication::desktop()->height() <= 240 ) {
727 topFrame = addPage(i18n("Month View") +" 2",0,0); 727 topFrame = addPage(i18n("Month View") +" 2",0,0);
728 topLayout = new QGridLayout(topFrame,4,1); 728 topLayout = new QGridLayout(topFrame,4,1);
729 topLayout->setSpacing(2); 729 topLayout->setSpacing(2);
730 topLayout->setMargin(1); 730 topLayout->setMargin(1);
731 ii = 0; 731 ii = 0;
732 } 732 }
733 733
734 734
735 coloredCategoriesInMonthView = 735 coloredCategoriesInMonthView =
736 addWidBool(i18n("Month view uses day colors"), 736 addWidBool(i18n("Month view uses day colors"),
737 &(KOPrefs::instance()->mMonthViewUsesDayColors),topFrame); 737 &(KOPrefs::instance()->mMonthViewUsesDayColors),topFrame);
738 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0); 738 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0);
739 739
740 KPrefsDialogWidColor *holidayColor = 740 KPrefsDialogWidColor *holidayColor =
741 addWidColor(i18n("Day color odd months"), 741 addWidColor(i18n("Day color odd months"),
742 &(KOPrefs::instance()->mMonthViewOddColor),topFrame); 742 &(KOPrefs::instance()->mMonthViewOddColor),topFrame);
743 topLayout->addWidget(holidayColor->label(),ii,0); 743 topLayout->addWidget(holidayColor->label(),ii,0);
744 topLayout->addWidget(holidayColor->button(),ii++,1); 744 topLayout->addWidget(holidayColor->button(),ii++,1);
745 745
746 holidayColor = 746 holidayColor =
747 addWidColor(i18n("Day color even months"), 747 addWidColor(i18n("Day color even months"),
748 &(KOPrefs::instance()->mMonthViewEvenColor),topFrame); 748 &(KOPrefs::instance()->mMonthViewEvenColor),topFrame);
749 topLayout->addWidget(holidayColor->label(),ii,0); 749 topLayout->addWidget(holidayColor->label(),ii,0);
750 topLayout->addWidget(holidayColor->button(),ii++,1); 750 topLayout->addWidget(holidayColor->button(),ii++,1);
751 751
752 752
753 holidayColor = 753 holidayColor =
754 addWidColor(i18n("Color for Sundays + category \"Holiday\""), 754 addWidColor(i18n("Color for Sundays + category \"Holiday\""),
755 &(KOPrefs::instance()->mMonthViewHolidayColor),topFrame); 755 &(KOPrefs::instance()->mMonthViewHolidayColor),topFrame);
756 topLayout->addWidget(holidayColor->label(),ii,0); 756 topLayout->addWidget(holidayColor->label(),ii,0);
757 topLayout->addWidget(holidayColor->button(),ii++,1); 757 topLayout->addWidget(holidayColor->button(),ii++,1);
758 // *********************** What'sNext View 758 // *********************** What'sNext View
759 topFrame = addPage(i18n("What's Next View"),0,0); 759 topFrame = addPage(i18n("What's Next View"),0,0);
760 // DesktopIcon("viewmag",KIcon::SizeMedium)); 760 // DesktopIcon("viewmag",KIcon::SizeMedium));
761 761
762 topLayout = new QGridLayout(topFrame,4,1); 762 topLayout = new QGridLayout(topFrame,4,1);
763 topLayout->setSpacing(mSpacingHint); 763 topLayout->setSpacing(mSpacingHint);
764 topLayout->setMargin(mMarginHint); 764 topLayout->setMargin(mMarginHint);
765 ii = 0; 765 ii = 0;
766 766
767 767
768 QHBox* hdummy = new QHBox(topFrame); 768 QHBox* hdummy = new QHBox(topFrame);
769 new QLabel(i18n("Days in What's Next:"),hdummy); 769 new QLabel(i18n("Days in What's Next:"),hdummy);
770 mWhatsNextSpin = new QSpinBox(1,14,1,hdummy); 770 mWhatsNextSpin = new QSpinBox(1,14,1,hdummy);
771 771
772 topLayout->addWidget(hdummy,ii++,0); 772 topLayout->addWidget(hdummy,ii++,0);
773 773
774 QHBox *prioBox = new QHBox(topFrame); 774 QHBox *prioBox = new QHBox(topFrame);
775 // intervalBox->setSpacing(mSpacingHint); 775 // intervalBox->setSpacing(mSpacingHint);
776 topLayout->addWidget(prioBox,ii++,0); 776 topLayout->addWidget(prioBox,ii++,0);
777 777
778 QLabel *prioLabel = new QLabel(i18n("Number of max.displayed todo prios:"), prioBox); 778 QLabel *prioLabel = new QLabel(i18n("Number of max.displayed todo prios:"), prioBox);
779 mPrioSpin = new QSpinBox(0,5,1,prioBox); 779 mPrioSpin = new QSpinBox(0,5,1,prioBox);
780 if ( QApplication::desktop()->width() < 300 ) 780 if ( QApplication::desktop()->width() < 300 )
781 mPrioSpin->setFixedWidth( 40 ); 781 mPrioSpin->setFixedWidth( 40 );
782
783 KPrefsDialogWidBool *passwdk = 782 KPrefsDialogWidBool *passwdk =
784 783
784 addWidBool(i18n("Show times on two lines"),
785 &(KOPrefs::instance()->mWhatsNextTime2Lines),topFrame);
786 topLayout->addWidget(passwdk->checkBox(), ii++,0);
787 passwdk =
788
785 addWidBool(i18n("Show events that are done"), 789 addWidBool(i18n("Show events that are done"),
786 &(KOPrefs::instance()->mWNViewShowsPast),topFrame); 790 &(KOPrefs::instance()->mWNViewShowsPast),topFrame);
787 topLayout->addWidget(passwdk->checkBox(), ii++,0); 791 topLayout->addWidget(passwdk->checkBox(), ii++,0);
788 passwdk = 792 passwdk =
789 addWidBool(i18n("Show parent To-Do's"), 793 addWidBool(i18n("Show parent To-Do's"),
790 &(KOPrefs::instance()->mWNViewShowsParents),topFrame); 794 &(KOPrefs::instance()->mWNViewShowsParents),topFrame);
791 topLayout->addWidget(passwdk->checkBox(), ii++,0); 795 topLayout->addWidget(passwdk->checkBox(), ii++,0);
792 796
793 passwdk = 797 passwdk =
794 addWidBool(i18n("Show location"), 798 addWidBool(i18n("Show location"),
795 &(KOPrefs::instance()->mWNViewShowLocation),topFrame); 799 &(KOPrefs::instance()->mWNViewShowLocation),topFrame);
796 topLayout->addWidget(passwdk->checkBox(), ii++,0); 800 topLayout->addWidget(passwdk->checkBox(), ii++,0);
797 801
798 802
799 passwdk = 803 passwdk =
800 addWidBool(i18n("Use short date in WN+Event view"), 804 addWidBool(i18n("Use short date in WN+Event view"),
801 &(KOPrefs::instance()->mShortDateInViewer),topFrame); 805 &(KOPrefs::instance()->mShortDateInViewer),topFrame);
802 topLayout->addWidget(passwdk->checkBox(), ii++,0); 806 topLayout->addWidget(passwdk->checkBox(), ii++,0);
803 807
804 808
805 809
806 810
807 // *********************** Todo View 811 // *********************** Todo View
808 812
809 topFrame = addPage(i18n("Todo View"),0,0); 813 topFrame = addPage(i18n("Todo View"),0,0);
810 // DesktopIcon("viewmag",KIcon::SizeMedium)); 814 // DesktopIcon("viewmag",KIcon::SizeMedium));
811 815
812 topLayout = new QGridLayout(topFrame,4,1); 816 topLayout = new QGridLayout(topFrame,4,1);
813 topLayout->setSpacing(mSpacingHint); 817 topLayout->setSpacing(mSpacingHint);
814 topLayout->setMargin(mMarginHint); 818 topLayout->setMargin(mMarginHint);
815 ii = 0; 819 ii = 0;
816dummy = 820dummy =
817 addWidBool(i18n("Hide not running Todos in To-do view"), 821 addWidBool(i18n("Hide not running Todos in To-do view"),
818 &(KOPrefs::instance()->mHideNonStartedTodos),topFrame); 822 &(KOPrefs::instance()->mHideNonStartedTodos),topFrame);
819 topLayout->addWidget(dummy->checkBox(),ii++,0); 823 topLayout->addWidget(dummy->checkBox(),ii++,0);
820 824
821 825
822 KPrefsDialogWidBool *showCompletedTodo = 826 KPrefsDialogWidBool *showCompletedTodo =
823 addWidBool(i18n("To-do view shows completed Todos"), 827 addWidBool(i18n("To-do view shows completed Todos"),
824 &(KOPrefs::instance()->mShowCompletedTodo),topFrame); 828 &(KOPrefs::instance()->mShowCompletedTodo),topFrame);
825 topLayout->addWidget(showCompletedTodo->checkBox(),ii++,0); 829 topLayout->addWidget(showCompletedTodo->checkBox(),ii++,0);
826 dummy = 830 dummy =
827 addWidBool(i18n("To-do view shows complete as 'xx %'"), 831 addWidBool(i18n("To-do view shows complete as 'xx %'"),
828 &(KOPrefs::instance()->mTodoViewShowsPercentage),topFrame); 832 &(KOPrefs::instance()->mTodoViewShowsPercentage),topFrame);
829 topLayout->addWidget(dummy->checkBox(),ii++,0); 833 topLayout->addWidget(dummy->checkBox(),ii++,0);
830 834
831 dummy = 835 dummy =
832 addWidBool(i18n("Small To-do view uses smaller font"), 836 addWidBool(i18n("Small To-do view uses smaller font"),
833 &(KOPrefs::instance()->mTodoViewUsesSmallFont),topFrame); 837 &(KOPrefs::instance()->mTodoViewUsesSmallFont),topFrame);
834 topLayout->addWidget(dummy->checkBox(),ii++,0); 838 topLayout->addWidget(dummy->checkBox(),ii++,0);
835 839
836 840
837 841
838 dummy = 842 dummy =
839 addWidBool(i18n("Todo view uses category colors"), 843 addWidBool(i18n("Todo view uses category colors"),
840 &(KOPrefs::instance()->mTodoViewUsesCatColors),topFrame); 844 &(KOPrefs::instance()->mTodoViewUsesCatColors),topFrame);
841 topLayout->addWidget(dummy->checkBox(),ii++,0); 845 topLayout->addWidget(dummy->checkBox(),ii++,0);
842 846
843 847
844 QWidget* wid = new QWidget( topFrame ); 848 QWidget* wid = new QWidget( topFrame );
845 // Todo run today color 849 // Todo run today color
846 KPrefsDialogWidColor *todoRunColor = 850 KPrefsDialogWidColor *todoRunColor =
847 addWidColor(i18n("Color for running todos:"), 851 addWidColor(i18n("Color for running todos:"),
848 &(KOPrefs::instance()->mTodoRunColor),wid); 852 &(KOPrefs::instance()->mTodoRunColor),wid);
849 QHBoxLayout *widLayout = new QHBoxLayout(wid); 853 QHBoxLayout *widLayout = new QHBoxLayout(wid);
850 widLayout->addWidget( todoRunColor->label() ); 854 widLayout->addWidget( todoRunColor->label() );
851 widLayout->addWidget( todoRunColor->button() ); 855 widLayout->addWidget( todoRunColor->button() );
852 topLayout->addWidget(wid,ii++,0); 856 topLayout->addWidget(wid,ii++,0);
853 857
854 wid = new QWidget( topFrame ); 858 wid = new QWidget( topFrame );
855 // Todo due today color 859 // Todo due today color
856 KPrefsDialogWidColor *todoDueTodayColor = 860 KPrefsDialogWidColor *todoDueTodayColor =
857 addWidColor(i18n("Todo due today color:"), 861 addWidColor(i18n("Todo due today color:"),
858 &(KOPrefs::instance()->mTodoDueTodayColor),wid); 862 &(KOPrefs::instance()->mTodoDueTodayColor),wid);
859 widLayout = new QHBoxLayout(wid); 863 widLayout = new QHBoxLayout(wid);
860 widLayout->addWidget( todoDueTodayColor->label() ); 864 widLayout->addWidget( todoDueTodayColor->label() );
861 widLayout->addWidget( todoDueTodayColor->button() ); 865 widLayout->addWidget( todoDueTodayColor->button() );
862 topLayout->addWidget(wid,ii++,0); 866 topLayout->addWidget(wid,ii++,0);
863 //topLayout->addWidget(todoDueTodayColor->button(),ii++,1); 867 //topLayout->addWidget(todoDueTodayColor->button(),ii++,1);
864 868
865 // Todo overdue color 869 // Todo overdue color
866 wid = new QWidget( topFrame ); 870 wid = new QWidget( topFrame );
867 widLayout = new QHBoxLayout(wid); 871 widLayout = new QHBoxLayout(wid);
868 KPrefsDialogWidColor *todoOverdueColor = 872 KPrefsDialogWidColor *todoOverdueColor =
869 addWidColor(i18n("Todo overdue color:"), 873 addWidColor(i18n("Todo overdue color:"),
870 &(KOPrefs::instance()->mTodoOverdueColor),wid); 874 &(KOPrefs::instance()->mTodoOverdueColor),wid);
871 widLayout->addWidget(todoOverdueColor->label()); 875 widLayout->addWidget(todoOverdueColor->label());
872 widLayout->addWidget(todoOverdueColor->button()); 876 widLayout->addWidget(todoOverdueColor->button());
873 topLayout->addWidget(wid,ii++,0); 877 topLayout->addWidget(wid,ii++,0);
874 878
875 dummy = 879 dummy =
876 addWidBool(i18n("Colors are applied to text"), 880 addWidBool(i18n("Colors are applied to text"),
877 &(KOPrefs::instance()->mTodoViewUsesForegroundColor),topFrame); 881 &(KOPrefs::instance()->mTodoViewUsesForegroundColor),topFrame);
878 topLayout->addWidget(dummy->checkBox(),ii++,0); 882 topLayout->addWidget(dummy->checkBox(),ii++,0);
879 883
880 884
diff --git a/korganizer/kowhatsnextview.cpp b/korganizer/kowhatsnextview.cpp
index 221debc..fafcb58 100644
--- a/korganizer/kowhatsnextview.cpp
+++ b/korganizer/kowhatsnextview.cpp
@@ -436,227 +436,241 @@ void KOWhatsNextView::appendDay( int i, QDate eventDate )
436 } 436 }
437 else date = "<h2><em><font color=\"#000080\">" + i18n("In %1 days: ").arg( i ) +day + "</font></em></h2>"; 437 else date = "<h2><em><font color=\"#000080\">" + i18n("In %1 days: ").arg( i ) +day + "</font></em></h2>";
438#else 438#else
439 else if ( i == 1 ) { 439 else if ( i == 1 ) {
440 date = "<em><font color=\"#000080\">" + i18n("Tomorrow: ") + day +"</font></em>" ; 440 date = "<em><font color=\"#000080\">" + i18n("Tomorrow: ") + day +"</font></em>" ;
441 } 441 }
442 else date = "<em><font color=\"#000080\">" + i18n("In %1 days: ").arg( i ) +day + "</font></em>"; 442 else date = "<em><font color=\"#000080\">" + i18n("In %1 days: ").arg( i ) +day + "</font></em>";
443 443
444#endif 444#endif
445 mText += "<h2>" + date + "</h2>\n"; 445 mText += "<h2>" + date + "</h2>\n";
446 //mText += "<big><big><strong>" + date + "</strong></big></big>\n"; 446 //mText += "<big><big><strong>" + date + "</strong></big></big>\n";
447 mText += "<table>\n"; 447 mText += "<table>\n";
448 } 448 }
449} 449}
450 450
451 451
452void KOWhatsNextView::showDates(const QDate &, const QDate &) 452void KOWhatsNextView::showDates(const QDate &, const QDate &)
453{ 453{
454 updateView(); 454 updateView();
455} 455}
456 456
457void KOWhatsNextView::showEvents(QPtrList<Event>) 457void KOWhatsNextView::showEvents(QPtrList<Event>)
458{ 458{
459} 459}
460 460
461void KOWhatsNextView::changeEventDisplay(Event *, int action) 461void KOWhatsNextView::changeEventDisplay(Event *, int action)
462{ 462{
463 switch(action) { 463 switch(action) {
464 case KOGlobals::EVENTADDED: 464 case KOGlobals::EVENTADDED:
465 updateView(); 465 updateView();
466 break; 466 break;
467 case KOGlobals::EVENTEDITED: 467 case KOGlobals::EVENTEDITED:
468 updateView(); 468 updateView();
469 break; 469 break;
470 case KOGlobals::EVENTDELETED: 470 case KOGlobals::EVENTDELETED:
471 updateView(); 471 updateView();
472 break; 472 break;
473 default: 473 default:
474 updateView(); 474 updateView();
475 kdDebug() << "KOWhatsNextView::changeEventDisplay(): Illegal action " << action << endl; 475 kdDebug() << "KOWhatsNextView::changeEventDisplay(): Illegal action " << action << endl;
476 } 476 }
477} 477}
478 478
479bool KOWhatsNextView::appendEvent(Incidence *ev, bool reply, bool notRed, bool appendTable ) 479bool KOWhatsNextView::appendEvent(Incidence *ev, bool reply, bool notRed, bool appendTable )
480{ 480{
481 if ( !KOPrefs::instance()->mShowSyncEvents && ev->uid().left(15) == QString("last-syncEvent-") ) 481 if ( !KOPrefs::instance()->mShowSyncEvents && ev->uid().left(15) == QString("last-syncEvent-") )
482 return false; 482 return false;
483 QDateTime cdt = QDateTime::currentDateTime(); 483 QDateTime cdt = QDateTime::currentDateTime();
484 QDateTime noc; 484 QDateTime noc;
485 QString tempText; 485 QString tempText;
486 if ( appendTable && !notRed ) { 486 if ( appendTable && !notRed ) {
487 tempText = "<table>"; 487 tempText = "<table>";
488 } 488 }
489 bool ok = true; 489 bool ok = true;
490 if ( reply ) { 490 if ( reply ) {
491 noc = ev->getNextOccurence( cdt, &ok ); 491 noc = ev->getNextOccurence( cdt, &ok );
492 if (! ok && ev->typeID() == eventID) 492 if (! ok && ev->typeID() == eventID)
493 return false; 493 return false;
494 } 494 }
495 bool bDay = false; 495 bool bDay = false;
496 if ( ev->isBirthday() || ev->isAnniversary() ) 496 if ( ev->isBirthday() || ev->isAnniversary() )
497 bDay = true; 497 bDay = true;
498 tempText += "<tr><td><b>"; 498 tempText += "<tr><td><b>";
499 if (ev->typeID() == eventID ) { 499 if (ev->typeID() == eventID ) {
500 if (reply) { 500 if (reply) {
501 if (!ev->doesFloat()) 501 if (!ev->doesFloat())
502 tempText += KGlobal::locale()->formatDateTime( noc , KOPrefs::instance()->mShortDateInViewer) +": "; 502 tempText += KGlobal::locale()->formatDateTime( noc , KOPrefs::instance()->mShortDateInViewer) +": ";
503 else 503 else
504 tempText += KGlobal::locale()->formatDate( noc.date() , KOPrefs::instance()->mShortDateInViewer) +": "; 504 tempText += KGlobal::locale()->formatDate( noc.date() , KOPrefs::instance()->mShortDateInViewer) +": ";
505 505
506 } else { 506 } else {
507 if (!ev->doesFloat()) { 507 if (!ev->doesFloat()) {
508 Event *event = static_cast<Event *>(ev); 508 Event *event = static_cast<Event *>(ev);
509 QDateTime st,end; 509 QDateTime st,end;
510 if ( event->recurrence()->doesRecur() ) { 510 if ( event->recurrence()->doesRecur() ) {
511 QDate recDate= mEventDate; 511 QDate recDate= mEventDate;
512 int days = event->dtStart().date().daysTo (event->dtEnd().date() ); 512 int days = event->dtStart().date().daysTo (event->dtEnd().date() );
513 while ( ! event->recursOn( recDate ) ) { 513 while ( ! event->recursOn( recDate ) ) {
514 recDate = recDate.addDays( -1 ); 514 recDate = recDate.addDays( -1 );
515 515
516 } 516 }
517 st = QDateTime ( recDate, event->dtStart().time() ); 517 st = QDateTime ( recDate, event->dtStart().time() );
518 end = QDateTime ( recDate.addDays( days ), event->dtEnd().time() ); 518 end = QDateTime ( recDate.addDays( days ), event->dtEnd().time() );
519 } 519 }
520 else { 520 else {
521 st = event->dtStart(); 521 st = event->dtStart();
522 end = event->dtEnd(); 522 end = event->dtEnd();
523 } 523 }
524 524
525 525
526 QString dateText; 526 QString dateText;
527 // qDebug("%s %s %s %s ", mEventDate.toString().latin1(),event->summary().latin1(), st .toString().latin1(),end.toString().latin1() ); 527 // qDebug("%s %s %s %s ", mEventDate.toString().latin1(),event->summary().latin1(), st .toString().latin1(),end.toString().latin1() );
528 if ( st.date() < mEventDate ) 528 if ( st.date() < mEventDate )
529 dateText = "++:++-"; 529 dateText = "++:++-";
530 else 530 else
531 dateText = event->dtStartTimeStr() + "-"; 531 dateText = event->dtStartTimeStr() + "-";
532 if ( KOPrefs::instance()->mWhatsNextTime2Lines )
533 dateText += " ";
532 if ( end.date() > mEventDate ) 534 if ( end.date() > mEventDate )
533 dateText += "++:++"; 535 dateText += "++:++";
534 else 536 else
535 dateText += event->dtEndTimeStr(); 537 dateText += event->dtEndTimeStr();
536 if ( notRed ) 538 if ( notRed )
537 tempText += dateText; 539 tempText += dateText;
538 else { 540 else {
539 if ( end < cdt ) { 541 if ( end < cdt ) {
540 if ( !KOPrefs::instance()->mWNViewShowsPast ) 542 if ( !KOPrefs::instance()->mWNViewShowsPast )
541 return false; 543 return false;
542 tempText += "<font color=\"#F00000\">" + dateText + "</font>"; 544 tempText += "<font color=\"#F00000\">" + dateText + "</font>";
543 } 545 }
544 else if ( st < cdt ) 546 else if ( st < cdt )
545 tempText += "<font color=\"#008000\">" + dateText + "</font>"; 547 tempText += "<font color=\"#008000\">" + dateText + "</font>";
546 else 548 else
547 tempText += dateText; 549 tempText += dateText;
548 550
549 } 551 }
550 552
551 } else { 553 } else {
552 if ( bDay ) { 554 if ( bDay ) {
553 555
554 if ( ev->isBirthday()) 556 if ( ev->isBirthday())
555 tempText += "<font color=\"#00B000\">" + i18n("Birthday") +":</font>"; 557 tempText += "<font color=\"#00B000\">" + i18n("Birthday") +":</font>";
556 else 558 else
557 tempText += "<font color=\"#00B0000\">" + i18n("Anniversary")+":</font>"; 559 tempText += "<font color=\"#00B0000\">" + i18n("Anniversary")+":</font>";
558 } else { 560 } else {
559 tempText += i18n("Allday:"); 561 if ( ((Event*)ev)->isMultiDay() ) {
562 QString dfs = KGlobal::locale()->dateFormatShort();
563 KGlobal::locale()->setDateFormatShort("%d.%b");
564 tempText +=KGlobal::locale()->formatDate(((Event*)ev)->dtStart().date(), true, KLocale::Userdefined) + "-";
565 if ( KOPrefs::instance()->mWhatsNextTime2Lines )
566 tempText += " ";
567 tempText +=KGlobal::locale()->formatDate(((Event*)ev)->dtEnd().date(), true, KLocale::Userdefined);
568 KGlobal::locale()->setDateFormatShort(dfs);
569 } else {
570 tempText += " " ;//i18n("Allday:");
571 }
560 } 572 }
561 573
562 } 574 }
563 } 575 }
564 } else { 576 } else {
565 mTodos.append( ev ); 577 mTodos.append( ev );
566 tempText += i18n("ToDo:"); 578 tempText += i18n("ToDo:");
579 if ( KOPrefs::instance()->mWhatsNextTime2Lines )
580 tempText += " ";
567 if (reply) { 581 if (reply) {
568 tempText += " "; 582 tempText += " ";
569 if ( noc != cdt ) { 583 if ( noc != cdt ) {
570 tempText += KGlobal::locale()->formatDate( noc.date() , KOPrefs::instance()->mShortDateInViewer) +": "; 584 tempText += KGlobal::locale()->formatDate( noc.date() , KOPrefs::instance()->mShortDateInViewer) +": ";
571 } 585 }
572 } else { 586 } else {
573 if ( ((Todo*)ev)->dtDue().date() < QDate::currentDate() ) { 587 if ( ((Todo*)ev)->dtDue().date() < QDate::currentDate() ) {
574 // tempText +="<font color=\"#F00000\">" + i18n("O-due!") + "</font>"; 588 // tempText +="<font color=\"#F00000\">" + i18n("O-due!") + "</font>";
575 QString dfs = KGlobal::locale()->dateFormatShort(); 589 QString dfs = KGlobal::locale()->dateFormatShort();
576 KGlobal::locale()->setDateFormatShort("%d.%b"); 590 KGlobal::locale()->setDateFormatShort("%d.%b");
577 tempText +="<font color=\"#F00000\">" + KGlobal::locale()->formatDate(((Todo*)ev)->dtDue().date(), true, KLocale::Userdefined) + "</font>"; 591 tempText +="<font color=\"#F00000\">" + KGlobal::locale()->formatDate(((Todo*)ev)->dtDue().date(), true, KLocale::Userdefined) + "</font>";
578 KGlobal::locale()->setDateFormatShort(dfs); 592 KGlobal::locale()->setDateFormatShort(dfs);
579 } else { 593 } else {
580 if (!ev->doesFloat() ) 594 if (!ev->doesFloat() )
581 if( ( (Todo*)ev)->dtDue() < cdt ) { 595 if( ( (Todo*)ev)->dtDue() < cdt ) {
582 tempText +="<font color=\"#F00000\">" + ((Todo*)ev)->dtDueTimeStr() + "</font>"; 596 tempText +="<font color=\"#F00000\">" + ((Todo*)ev)->dtDueTimeStr() + "</font>";
583 597
584 598
585 } else 599 } else
586 tempText +=((Todo*)ev)->dtDueTimeStr(); 600 tempText +=((Todo*)ev)->dtDueTimeStr();
587 mTodos.append( ev ); 601 mTodos.append( ev );
588 } 602 }
589 } 603 }
590 } 604 }
591 tempText += "</b></td><td>"; 605 tempText += "</b></td><td>";
592 bool needClose = false; 606 bool needClose = false;
593 if ( ev->cancelled() ) { 607 if ( ev->cancelled() ) {
594 tempText += "<font color=\"#F00000\">[c"; 608 tempText += "<font color=\"#F00000\">[c";
595 needClose =true; 609 needClose =true;
596 610
597 } 611 }
598 if ( ev->isAlarmEnabled() && ev->alarmEnabled()) { 612 if ( ev->isAlarmEnabled() && ev->alarmEnabled()) {
599 if ( !needClose) 613 if ( !needClose)
600 tempText +="["; 614 tempText +="[";
601 tempText += "a"; 615 tempText += "a";
602 needClose =true; 616 needClose =true;
603 617
604 } 618 }
605 if ( ev->description().length() > 0 ) { 619 if ( ev->description().length() > 0 ) {
606 if ( !needClose) 620 if ( !needClose)
607 tempText +="["; 621 tempText +="[";
608 tempText += "i"; 622 tempText += "i";
609 needClose =true; 623 needClose =true;
610 } 624 }
611 if ( ev->recurrence()->doesRecur() ) { 625 if ( ev->recurrence()->doesRecur() ) {
612 if ( !needClose) 626 if ( !needClose)
613 tempText +="["; 627 tempText +="[";
614 tempText += "r"; 628 tempText += "r";
615 needClose =true; 629 needClose =true;
616 } 630 }
617 if ( needClose ) { 631 if ( needClose ) {
618 tempText += "] "; 632 tempText += "] ";
619 } 633 }
620 if ( ev->cancelled() ) 634 if ( ev->cancelled() )
621 tempText += "</font>"; 635 tempText += "</font>";
622 tempText += "<a "; 636 tempText += "<a ";
623 if (ev->typeID() == eventID ) tempText += "href=\"event:"; 637 if (ev->typeID() == eventID ) tempText += "href=\"event:";
624 if (ev->typeID() == todoID ) tempText += "href=\"todo:"; 638 if (ev->typeID() == todoID ) tempText += "href=\"todo:";
625 tempText += ev->uid() + "\">"; 639 tempText += ev->uid() + "\">";
626 if ( ev->summary().length() > 0 ) 640 if ( ev->summary().length() > 0 )
627 tempText += ev->summary(); 641 tempText += ev->summary();
628 else 642 else
629 tempText += i18n("-no summary-"); 643 tempText += i18n("-no summary-");
630 if ( bDay ) { 644 if ( bDay ) {
631 noc = ev->getNextOccurence( cdt.addDays(-1), &ok ); 645 noc = ev->getNextOccurence( cdt.addDays(-1), &ok );
632 if ( ok ) { 646 if ( ok ) {
633 int years = 0; 647 int years = 0;
634 if ( ev->typeID() == todoID ) { 648 if ( ev->typeID() == todoID ) {
635 years = noc.date().year() -((Todo*)ev)->dtDue().date().year(); 649 years = noc.date().year() -((Todo*)ev)->dtDue().date().year();
636 } else 650 } else
637 years = noc.date().year() - ev->dtStart().date().year(); 651 years = noc.date().year() - ev->dtStart().date().year();
638 tempText += i18n(" (%1 y.)"). arg( years ); 652 tempText += i18n(" (%1 y.)"). arg( years );
639 } 653 }
640 } 654 }
641 655
642 tempText += "</a>"; 656 tempText += "</a>";
643 if ( KOPrefs::instance()->mWNViewShowLocation ) 657 if ( KOPrefs::instance()->mWNViewShowLocation )
644 if ( !ev->location().isEmpty() ) 658 if ( !ev->location().isEmpty() )
645 tempText += " ("+ev->location() +")"; 659 tempText += " ("+ev->location() +")";
646 if ( ev->relatedTo() && KOPrefs::instance()->mWNViewShowsParents) 660 if ( ev->relatedTo() && KOPrefs::instance()->mWNViewShowsParents)
647 tempText += " ["+ev->relatedTo()->summary() +"]"; 661 tempText += " ["+ev->relatedTo()->summary() +"]";
648 tempText += "</td></tr>\n"; 662 tempText += "</td></tr>\n";
649 mText += tempText; 663 mText += tempText;
650 return true; 664 return true;
651} 665}
652 666
653bool KOWhatsNextView::appendTodo(Incidence *ev, QString ind , bool isSub ) 667bool KOWhatsNextView::appendTodo(Incidence *ev, QString ind , bool isSub )
654{ 668{
655 if ( mTodos.find( ev ) != mTodos.end() ) return false; 669 if ( mTodos.find( ev ) != mTodos.end() ) return false;
656 670
657 mTodos.append( ev ); 671 mTodos.append( ev );
658 if ( !isSub ) 672 if ( !isSub )
659 mText += "<p>"; 673 mText += "<p>";
660 else 674 else
661 mText += "<li>"; 675 mText += "<li>";
662 mText += "[" +QString::number(ev->priority()) + "/" + QString::number(((Todo*)ev)->percentComplete())+"%] "; 676 mText += "[" +QString::number(ev->priority()) + "/" + QString::number(((Todo*)ev)->percentComplete())+"%] ";