summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2005-07-02 21:45:23 (UTC)
committer zautrix <zautrix>2005-07-02 21:45:23 (UTC)
commit5cf73f798229641d23025af064e87fa88ab3de91 (patch) (unidiff)
tree12b618f0eedea62fb281e576b657b60bd2c3cc9c
parentc69004813dce7402f56e7f90e172c8fb56e9cc55 (diff)
downloadkdepimpi-5cf73f798229641d23025af064e87fa88ab3de91.zip
kdepimpi-5cf73f798229641d23025af064e87fa88ab3de91.tar.gz
kdepimpi-5cf73f798229641d23025af064e87fa88ab3de91.tar.bz2
fixes
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--bin/kdepim/korganizer/germantranslation.txt14
-rw-r--r--korganizer/koeventpopupmenu.cpp2
-rw-r--r--korganizer/kolistview.cpp2
-rw-r--r--korganizer/mainwindow.cpp17
4 files changed, 16 insertions, 19 deletions
diff --git a/bin/kdepim/korganizer/germantranslation.txt b/bin/kdepim/korganizer/germantranslation.txt
index 5fece5b..bd946fd 100644
--- a/bin/kdepim/korganizer/germantranslation.txt
+++ b/bin/kdepim/korganizer/germantranslation.txt
@@ -1,1496 +1,1496 @@
1{ "10 minutes","10 Minuten" }, 1{ "10 minutes","10 Minuten" },
2{ "10th","10." }, 2{ "10th","10." },
3{ "11th","11." }, 3{ "11th","11." },
4{ "12 pm Format","12 AM/PM Format" }, 4{ "12 pm Format","12 AM/PM Format" },
5{ "12th","12." }, 5{ "12th","12." },
6{ "13th","13." }, 6{ "13th","13." },
7{ "14th","14." }, 7{ "14th","14." },
8{ "15th","15." }, 8{ "15th","15." },
9{ "16th","16." }, 9{ "16th","16." },
10{ "17th","17." }, 10{ "17th","17." },
11{ "18th","18." }, 11{ "18th","18." },
12{ "19th","19." }, 12{ "19th","19." },
13{ "1 Day","1 Tag" }, 13{ "1 Day","1 Tag" },
14{ "1 h","1 Std" }, 14{ "1 h","1 Std" },
15{ "1 (high)","1 (hoch)" }, 15{ "1 (high)","1 (hoch)" },
16{ "5 (low)","5" }, 16{ "5 (low)","5" },
17{ "1st","1." }, 17{ "1st","1." },
18{ "20th","20." }, 18{ "20th","20." },
19{ "21st","21." }, 19{ "21st","21." },
20{ "22nd","22." }, 20{ "22nd","22." },
21{ "23rd","23." }, 21{ "23rd","23." },
22{ "24:00 Hour Format","24:00 Stunden Format" }, 22{ "24:00 Hour Format","24:00 Stunden Format" },
23{ "24th","24." }, 23{ "24th","24." },
24{ "25th","25." }, 24{ "25th","25." },
25{ "26th","26." }, 25{ "26th","26." },
26{ "27th","27." }, 26{ "27th","27." },
27{ "28th","28." }, 27{ "28th","28." },
28{ "29th","29." }, 28{ "29th","29." },
29{ "2nd","2." }, 29{ "2nd","2." },
30{ "30 minutes","30 Minuten" }, 30{ "30 minutes","30 Minuten" },
31{ "30th","30." }, 31{ "30th","30." },
32{ "31st","31." }, 32{ "31st","31." },
33{ "3rd","3." }, 33{ "3rd","3." },
34{ "4th","4." }, 34{ "4th","4." },
35{ "5 (lowest)","5 (Niedrigster)" }, 35{ "5 (lowest)","5 (Niedrigster)" },
36{ "5th","5." }, 36{ "5th","5." },
37{ "6th","6." }, 37{ "6th","6." },
38{ "7th","7." }, 38{ "7th","7." },
39{ "8th","8." }, 39{ "8th","8." },
40{ "9th","9." }, 40{ "9th","9." },
41{ "About...","Über..." }, 41{ "About...","Über..." },
42{ "&Accept","&Akzeptieren" }, 42{ "&Accept","&Akzeptieren" },
43{ "Accept","Akzeptieren" }, 43{ "Accept","Akzeptieren" },
44{ "Accept A&ll","A&lles Akzepieren" }, 44{ "Accept A&ll","A&lles Akzepieren" },
45{ "Access:","Zugriff:" }, 45{ "Access:","Zugriff:" },
46{ "A corresponding event is missing in your calendar!","Ein zugehöriger Termin fehlt in ihrem Kalender!" }, 46{ "A corresponding event is missing in your calendar!","Ein zugehöriger Termin fehlt in ihrem Kalender!" },
47{ "Actions","Aktionen" }, 47{ "Action","Aktion" },
48{ "Add Filter","Filter Hinzufügen" }, 48{ "Add Filter","Filter Hinzufügen" },
49{ "&Add","Hinzufügen" }, 49{ "&Add","Hinzufügen" },
50{ "Add","Hinzufügen" }, 50{ "Add","Hinzufügen" },
51{ "Additional email addresses:","Zusätzliche E-Mail Adressen:" }, 51{ "Additional email addresses:","Zusätzliche E-Mail Adressen:" },
52{ "Additional email address:","Zusätzliche E-Mail Adresse:" }, 52{ "Additional email address:","Zusätzliche E-Mail Adresse:" },
53{ "&Addressbook","&Adressbuch" }, 53{ "&Addressbook","&Adressbuch" },
54{ "Address &Book...","Adress&buch..." }, 54{ "Address &Book...","Adress&buch..." },
55{ "Agenda Size","Agende Größe" }, 55{ "Agenda Size","Agende Größe" },
56{ "Agenda Size:","Größe der Agenda:" }, 56{ "Agenda Size:","Größe der Agenda:" },
57{ "Agenda view:","Agenda Ansicht:" }, 57{ "Agenda view:","Agenda Ansicht:" },
58{ "Agenda view background color:","Hintergrund der Agenda Ansicht:" }, 58{ "Agenda view background color:","Hintergrund der Agenda Ansicht:" },
59{ "All attendees","Alle Teilnehmer" }, 59{ "All attendees","Alle Teilnehmer" },
60{ "AllDayAgenda Height:","Höhe Ganztages Agenda:" }, 60{ "AllDayAgenda Height:","Höhe Ganztages Agenda:" },
61{ "All day event","Ganztägig" }, 61{ "All day event","Ganztägig" },
62{ "Anonymous","Anonym" }, 62{ "Anonymous","Anonym" },
63{ "Apply","Anwenden" }, 63{ "Apply","Anwenden" },
64{ "Apr","Apr" }, 64{ "Apr","Apr" },
65{ "April","April" }, 65{ "April","April" },
66{"Ask for every entry on conflict","Frage bei Konflikten nach"}, 66{"Ask for every entry on conflict","Frage bei Konflikten nach"},
67{ "Ask for preferences before syncing","Vor dem Syncronisieren nachfragen" }, 67{ "Ask for preferences before syncing","Vor dem Syncronisieren nachfragen" },
68{ "Ask for quit when closing KO/Pi","Vor dem Beenden von KO/Pi nachfragen" }, 68{ "Ask for quit when closing KO/Pi","Vor dem Beenden von KO/Pi nachfragen" },
69{ "Attendees","Teilnehmer" }, 69{ "Attendees","Teilnehmer" },
70{ "Aug","Aug" }, 70{ "Aug","Aug" },
71{ "August","August" }, 71{ "August","August" },
72{ "Auto-Save","Automatisches Abspeichern" }, 72{ "Auto-Save","Automatisches Abspeichern" },
73{ "Auto save delay in minutes:","Verzög.autom.Speichern in Min" }, 73{ "Auto save delay in minutes:","Verzög.autom.Speichern in Min" },
74{ "Auto saving...","Automatische Sicherung..." }, 74{ "Auto saving...","Automatische Sicherung..." },
75{ "Begin on:","Starte mit:" }, 75{ "Begin on:","Starte mit:" },
76{ "Begins on: %1","Starte mit: %1" }, 76{ "Begins on: %1","Starte mit: %1" },
77{ "<b>From:</b> %1 <b>To:</b> %2","<b>Vom:</b> %1 <b>Zum:</b> %2" }, 77{ "<b>From:</b> %1 <b>To:</b> %2","<b>Vom:</b> %1 <b>Zum:</b> %2" },
78{ "<b>On:</b> %1","<b>Am:</b> %1" }, 78{ "<b>On:</b> %1","<b>Am:</b> %1" },
79{ "<b>On:</b> %1 <b>From:S</b> %2 <b>To:</b> %3","<b>Am:</b> %1 <b>Vom:S</b> %2 <b>Zum:</b> %3" }, 79{ "<b>On:</b> %1 <b>From:S</b> %2 <b>To:</b> %3","<b>Am:</b> %1 <b>Vom:S</b> %2 <b>Zum:</b> %3" },
80{ "<b>Original event:</b><p>","<b>Original Termin:</b><p>" }, 80{ "<b>Original event:</b><p>","<b>Original Termin:</b><p>" },
81{ " - both are modified after last sync"," - beide wurden nach der letzten Syncronisation verändert" }, 81{ " - both are modified after last sync"," - beide wurden nach der letzten Syncronisation verändert" },
82{ "Busy","Belegt" }, 82{ "Busy","Belegt" },
83{ "&Cancel","Abbre&chen" }, 83{ "&Cancel","Abbre&chen" },
84{ "Cancel","Abbrechen" }, 84{ "Cancel","Abbrechen" },
85{ "Cannot delete To-Do\nwhich has children.","Kann Todo nicht löschen,\n da noch Einträge vorhanden sind" }, 85{ "Cannot delete To-Do\nwhich has children.","Kann Todo nicht löschen,\n da noch Einträge vorhanden sind" },
86{ "Can't generate mail:\nNo event selected.","Kann e-Mail nicht erstellen:\nKein Termin ausgewählt." }, 86{ "Can't generate mail:\nNo event selected.","Kann e-Mail nicht erstellen:\nKein Termin ausgewählt." },
87{ "Categories...","Kategorien..." }, 87{ "Categories...","Kategorien..." },
88{ "Categories","Kategorien" }, 88{ "Categories","Kategorien" },
89{ "Category","Kategorie" }, 89{ "Category","Kategorie" },
90{ "Center View","Zentriere Ansicht" }, 90{ "Center View","Zentriere Ansicht" },
91{ "Change","Ändere" }, 91{ "Change","Ändere" },
92{ "Cinema","Kino" }, 92{ "Cinema","Kino" },
93{ "Click to add a new Todo","Hier klicken, um ein neues Todo anzulegen" }, 93{ "Click to add a new Todo","Hier klicken, um ein neues Todo anzulegen" },
94{ "Clone Item","Klone Eintrag" }, 94{ "Clone Item","Klone Eintrag" },
95{ "&Close","S&chließen" }, 95{ "&Close","S&chließen" },
96{ "Close","Schließen" }, 96{ "Close","Schließen" },
97{ "Close this dialog to abort deletion!","Zum Abbrechen des Löschvorganges Dialog schließen!" }, 97{ "Close this dialog to abort deletion!","Zum Abbrechen des Löschvorganges Dialog schließen!" },
98{ "Colors","Farben" }, 98{ "Colors","Farben" },
99{ "completed","erledigt" }, 99{ "completed","erledigt" },
100{ "completed on %1","erledigt am %1" }, 100{ "completed on %1","erledigt am %1" },
101{ "Complete","Erledigt" }, 101{ "Complete","Erledigt" },
102{ "Confidential","Vertraulich" }, 102{ "Confidential","Vertraulich" },
103{ "Configure...","Einstellungen..." }, 103{ "Configure...","Einstellungen..." },
104{ "Confirm &deletes","Löschvogang bestätigen" }, 104{ "Confirm &deletes","Löschvogang bestätigen" },
105{ "Couldn't load calendar\n '%1'.","Kann Kalender\n '%1' nicht laden." }, 105{ "Couldn't load calendar\n '%1'.","Kann Kalender\n '%1' nicht laden." },
106{ "Counter-event Viewer","Terminzähler Ansicht" }, 106{ "Counter-event Viewer","Terminzähler Ansicht" },
107{ "Daily ending hour:","Feierabend:" }, 107{ "Daily ending hour:","Feierabend:" },
108{ "Daily starting hour:","Anfangszeit:" }, 108{ "Daily starting hour:","Anfangszeit:" },
109{ "Daily","Täglich" }, 109{ "Daily","Täglich" },
110{ "Date Format","Datums Format" }, 110{ "Date Format","Datums Format" },
111{ "Date Format:","Datums Format:" }, 111{ "Date Format:","Datums Format:" },
112{ "DateNavigator:(nr)","Datums Navigator" }, 112{ "DateNavigator:(nr)","Datums Navigator" },
113{ "Dates: ","Datum: " }, 113{ "Dates: ","Datum: " },
114{ "Date && Time","Datum && Zeit" }, 114{ "Date && Time","Datum && Zeit" },
115{ "Day begins at:","Der Tag beginnt um:" }, 115{ "Day begins at:","Der Tag beginnt um:" },
116{ "Days in Next-X-Days:","Tage in Nächste-X-Tage:" }, 116{ "Days in Next-X-Days:","Tage in Nächste-X-Tage:" },
117{ "Days in What's Next:","Tage in What's Next:" }, 117{ "Days in What's Next:","Tage in What's Next:" },
118{ "day(s)","Tag(e)" }, 118{ "day(s)","Tag(e)" },
119{ "Days to show in Next-X-Days view:","Welche Tage in Nächste-X-Tagen anzeigen:" }, 119{ "Days to show in Next-X-Days view:","Welche Tage in Nächste-X-Tagen anzeigen:" },
120{ "day","Tag" }, 120{ "day","Tag" },
121{ "Dec","Dez" }, 121{ "Dec","Dez" },
122{ "December","Dezember" }, 122{ "December","Dezember" },
123{ "Default alarm time:","Standard Alarmzeit:" }, 123{ "Default alarm time:","Standard Alarmzeit:" },
124{ "Default appointment time:","Standard Termin Startzeit:" }, 124{ "Default appointment time:","Standard Termin Startzeit:" },
125{ "Default event color:","Standard Terminfarbe:" }, 125{ "Default event color:","Standard Terminfarbe:" },
126{ "Default","Standard" }, 126{ "Default","Standard" },
127{ "Def. duration of new app.:","Standard Termin Länge:" }, 127{ "Def. duration of new app.:","Standard Termin Länge:" },
128{ "Delete All","Lösche alles" }, 128{ "Delete All","Lösche alles" },
129{ "Delete all selected","Lösche alle Selektierten" }, 129{ "Delete all selected","Lösche alle Selektierten" },
130{ "Delete Current","Aktuellen löschen" }, 130{ "Delete Current","Aktuellen löschen" },
131{ "Delete Event...","Lösche Termin..." }, 131{ "Delete Event...","Lösche Termin..." },
132{ "Delete Event","Lösche Termin" }, 132{ "Delete Event","Lösche Termin" },
133{ "&Delete","Löschen" }, 133{ "&Delete...","Löschen..." },
134{ "Delete...","Löschen..." }, 134{ "Delete...","Löschen..." },
135{ "Delete","Löschen" }, 135{ "Delete","Löschen" },
136{ "Delete Todo...","Lösche Todo..." }, 136{ "Delete Todo...","Lösche Todo..." },
137{ "Delete To-Do","Lösche Todo" }, 137{ "Delete To-Do","Lösche Todo" },
138{ "Deleting item %d ...","Lösche Eintrag %d..." }, 138{ "Deleting item %d ...","Lösche Eintrag %d..." },
139{ "Descriptions","Beschreibungen" }, 139{ "Descriptions","Beschreibungen" },
140{ "Deselect all","Deselektiere Alle" }, 140{ "Deselect all","Deselektiere Alle" },
141{ "Details","Details" }, 141{ "Details","Details" },
142{ "Dinner","Abendessen" }, 142{ "Dinner","Abendessen" },
143{ "Do you really want\nto close KO/Pi?","Möchten Sie wirklich\nKO/PI verlassen?" }, 143{ "Do you really want\nto close KO/Pi?","Möchten Sie wirklich\nKO/PI verlassen?" },
144{ "Due Date","Fällig am" }, 144{ "Due Date","Fällig am" },
145{ "Due: ","Fällig: "}, 145{ "Due: ","Fällig: "},
146{ "Due Time","Fällig um" }, 146{ "Due Time","Fällig um" },
147{ "Due:","Fällig:"}, 147{ "Due:","Fällig:"},
148{ "Duration: ","Dauer: " }, 148{ "Duration: ","Dauer: " },
149{ "Edit...","Bearbeite..." }, 149{ "Edit...","Bearbeite..." },
150{ "Edit","Bearbeite" },
151{ "Edit Event...","Bearbeite Termin..." }, 150{ "Edit Event...","Bearbeite Termin..." },
152{ "Edit Event","Bearbeite Termin" }, 151{ "Edit Event","Bearbeite Termin" },
153{ "Edit exceptions","Bearbeite Ausnahmen" }, 152{ "Edit exceptions","Bearbeite Ausnahmen" },
154{ "EditorBox:","Editor Fenster:" }, 153{ "EditorBox:","Editor Fenster:" },
155{ "Edit Recurrence Range","Bearbeite Wiederholung" }, 154{ "Edit Recurrence Range","Bearbeite Wiederholung" },
156{ "Edit Todo...","Berabeite Todo..." }, 155{ "Edit Todo...","Berabeite Todo..." },
157{ "Edit To-Do","Todo bearbeiten" }, 156{ "Edit To-Do","Todo bearbeiten" },
158{ "E&mail address:","E&mail Adresse:" }, 157{ "E&mail address:","E&mail Adresse:" },
159{ "(EmptyEmail)","(KeineEmail)" }, 158{ "(EmptyEmail)","(KeineEmail)" },
160{ "(EmptyName)","(KeinName)" }, 159{ "(EmptyName)","(KeinName)" },
161{ "Enable Recurrence","Wiederholung anschalten" }, 160{ "Enable Recurrence","Wiederholung anschalten" },
162{ "End after","Endet nach"}, 161{ "End after","Endet nach"},
163{ "End by:","Endet am"}, 162{ "End by:","Endet am"},
164{ "End Date","End Datum" }, 163{ "End Date","End Datum" },
165{ "End:","Ende:" }, 164{ "End:","Ende:" },
166{ "End Time","End Zeit" }, 165{ "End Time","End Zeit" },
167{ "English","Englisch" }, 166{ "English","Englisch" },
168{ "Event","Termin" }, 167{ "Event","Termin" },
169{ "Event list","Termin Liste" }, 168{ "Event list","Termin Liste" },
170{ "Events","Termine" }, 169{ "Events","Termine" },
171{ "Event Viewer:","Termin Übersicht:" }, 170{ "Event Viewer:","Termin Übersicht:" },
172{ "every","jede" }, 171{ "every","jede" },
173{ "Exceptions...","Ausnahmen..." }, 172{ "Exceptions...","Ausnahmen..." },
174{ "Exceptions","Ausnahmen" }, 173{ "Exceptions","Ausnahmen" },
175{ "Exclude holidays","Ohne freie Tage" }, 174{ "Exclude holidays","Ohne freie Tage" },
176{ "Exclude Saturdays","Ohne Samstage" }, 175{ "Exclude Saturdays","Ohne Samstage" },
177{ "Feb","Feb" }, 176{ "Feb","Feb" },
178{ "February","Februar" }, 177{ "February","Februar" },
179{ "&Find","Suche!" }, 178{ "&Find","Suche!" },
180{ "Fonts","Schriftart" }, 179{ "Fonts","Schriftart" },
181{ "Force take local entry always","Erzwinge:Nimm immer lokalen Eintrag" }, 180{ "Force take local entry always","Erzwinge:Nimm immer lokalen Eintrag" },
182{ "Force take remote entry always","Erzwinge:Nimm immer fernen Eintrag"}, 181{ "Force take remote entry always","Erzwinge:Nimm immer fernen Eintrag"},
183{ "Free","Frei" }, 182{ "Free","Frei" },
184{ "Friday","Freitag" }, 183{ "Friday","Freitag" },
185{ "Fri","Fr" }, 184{ "Fri","Fr" },
186{ "From:","Vom:" }, 185{ "From:","Vom:" },
187{ "Full &name:","Vor- und &Nachname:" }, 186{ "Full &name:","Vor- und &Nachname:" },
188{ "General","Allgemein" }, 187{ "General","Allgemein" },
189{ "German","Deutsch" }, 188{ "German","Deutsch" },
190{ "Gifts","Geschenke" }, 189{ "Gifts","Geschenke" },
191{ "Go to Today","Heute anzeigen" }, 190{ "Go to Today","Heute anzeigen" },
192{ "Help","Hilfe" }, 191{ "Help","Hilfe" },
193{ "Hide Dates","Daten ausblenden" }, 192{ "Hide Dates","Daten ausblenden" },
194{ "Highlight color:","Markierungen:" }, 193{ "Highlight color:","Markierungen:" },
195{ "Holiday color:","Freie Tage:" }, 194{ "Holiday color:","Freie Tage:" },
196{ "hour(s)","Stunde(n)" }, 195{ "hour(s)","Stunde(n)" },
197{ "In %1 days: ","In %1 Tagen: " }, 196{ "In %1 days: ","In %1 Tagen: " },
198{ "Incomplete Todo:","Unerledigte Aufgaben:" }, 197{ "Incomplete Todo:","Unerledigte Aufgaben:" },
199{ "Information","Information" }, 198{ "Information","Information" },
200{ "Invalid search expression,\ncannot perform ","Kann Suche nicht ausführen" }, 199{ "Invalid search expression,\ncannot perform ","Kann Suche nicht ausführen" },
201{ "Jan","Jan" }, 200{ "Jan","Jan" },
202{ "January","Januar" }, 201{ "January","Januar" },
203{ "JournalView:","Journal Ansicht:" }, 202{ "JournalView:","Journal Ansicht:" },
204{ "Journals","Journale" }, 203{ "Journals","Journale" },
205{ "Jul","Jul" }, 204{ "Jul","Jul" },
206{ "July","Juli" }, 205{ "July","Juli" },
207{ "Jump to date","Springe zum Datum" }, 206{ "Jump to date","Springe zum Datum" },
208{ "June","Juni" }, 207{ "June","Juni" },
209{ "Jun","Jun" }, 208{ "Jun","Jun" },
210{ "Key Bindings...","Tastenzuordnung..." }, 209{ "Key Bindings...","Tastenzuordnung..." },
211{ "Kids","Kinder" }, 210{ "Kids","Kinder" },
212{ "Known Problems...","Bekannte Probleme..." }, 211{ "Known Problems...","Bekannte Probleme..." },
213{ "KO/Pi Find ","KO/Pi Suchdialog " }, 212{ "KO/Pi Find ","KO/Pi Suchdialog " },
214{ "KO/Pi Find: ","KO/Pi Suchen: " }, 213{ "KO/Pi Find: ","KO/Pi Suchen: " },
215{ "KO/Pi is starting ... "," KO/Pi startet ... \n... Zeit für eine Kaffeepause ..." }, 214{ "KO/Pi is starting ... "," KO/Pi startet ... \n... Zeit für eine Kaffeepause ..." },
216{ "Language:(needs restart)","Sprache (Neustart!)" }, 215{ "Language:(needs restart)","Sprache (Neustart!)" },
217{ "Language:","Sprache" }, 216{ "Language:","Sprache" },
218{ "Large","Etwas mehr" }, 217{ "Large","Etwas mehr" },
219{ "List View:","Listenansicht:" }, 218{ "List View:","Listenansicht:" },
220{ "List View","Listenansicht" }, 219{ "List View","Listenansicht" },
221{ "Load/Save","Laden/Speichern" }, 220{ "Load/Save","Laden/Speichern" },
222{ "Load Template","Lade Vorlage" }, 221{ "Load Template","Lade Vorlage" },
223{ "Locale","Localisation" }, 222{ "Locale","Lokalisation" },
224{ "Local temp file:","Lokale temp. Datei:" }, 223{ "Local temp file:","Lokale temp. Datei:" },
225{ "Location: ","Ort: " }, 224{ "Location: ","Ort: " },
226{ "Location:","Ort:" }, 225{ "Location:","Ort:" },
227{ "Mail client","Mail Programm" }, 226{ "Mail client","Mail Programm" },
228{ "Mail Client","Mail Programm" }, 227{ "Mail Client","Mail Programm" },
229{ "March","März" }, 228{ "March","März" },
230{ "Mar","Mär" }, 229{ "Mar","Mär" },
231{ "May","Mai" }, 230{ "May","Mai" },
232{ "M. Bains line:","M. Bains Linie:" }, 231{ "M. Bains line:","M. Bains Linie:" },
233{ "Medium","Medium" }, 232{ "Medium","Medium" },
234{ "Method","Methode" }, 233{ "Method","Methode" },
235{ "minute(s)","Minute(n)" }, 234{ "minute(s)","Minute(n)" },
236{ "Monday","Montag" }, 235{ "Monday","Montag" },
237{ "Mon","Mo" }, 236{ "Mon","Mo" },
238{ "Monthly","Monatlich" }, 237{ "Monthly","Monatlich" },
239{ "Month not long enough","Monat ist nicht lang genug" }, 238{ "Month not long enough","Monat ist nicht lang genug" },
240{ "month(s)","Monat(e)" }, 239{ "month(s)","Monat(e)" },
241{ "Month view:","Monatsansicht:" }, 240{ "Month view:","Monatsansicht:" },
242{ "Month view uses category colors","Monatsansicht zeigt Kategorie Farben" }, 241{ "Month view uses category colors","Monatsansicht zeigt Kategorie Farben" },
243{ "Todo view uses category colors","To-Do Ansicht zeigt Kategorie Farben" }, 242{ "Todo view uses category colors","To-Do Ansicht zeigt Kategorie Farben" },
244{ "Move &Down","Nach unten verschieben" }, 243{ "Move &Down","Nach unten verschieben" },
245{ "Move &Up","Nach oben verschieben" }, 244{ "Move &Up","Nach oben verschieben" },
246{ "Name:","Name:" }, 245{ "Name:","Name:" },
247{ "Name","Name" }, 246{ "Name","Name" },
248{ "\nAre you sure you want\nto delete this event?","\nSind Sie sicher, dass Sie\nden Termin löschen möchten?" }, 247{ "\nAre you sure you want\nto delete this event?","\nSind Sie sicher, dass Sie\nden Termin löschen möchten?" },
249{ "%n Days","%n Tage" }, 248{ "%n Days","%n Tage" },
250{ "Never","Nie" }, 249{ "Never","Nie" },
251{ "New event...","Neuer Termin..." }, 250{ "New event...","Neuer Termin..." },
252{ "New event","Neuer Termin" }, 251{ "New event","Neuer Termin" },
253{ "New Event...","Neuer Termin..." }, 252{ "New Event...","Neuer Termin..." },
254{ "New Events/Todos should","Neue Termine/Todos sollten" }, 253{ "New Events/Todos should","Neue Termine/Todos sollten" },
255{ "&New","&Neu" }, 254{ "&New","&Neu" },
256{ "New","Neu", }, 255{ "New","Neu", },
257{ "New Sub-Todo...","Neues Sub-Todo..." }, 256{ "New Sub-Todo...","Neues Sub-Todo..." },
258{ "New Todo...","Neues Todo..." }, 257{ "New Todo...","Neues Todo..." },
259{ "Next Alarm: ","Nächster Alarm: ", }, 258{ "Next Alarm: ","Nächster Alarm: ", },
260{ "&Next Day","&Nächster Tag", }, 259{ "&Next Day","&Nächster Tag", },
261{ "Next days view uses full window","Nächste-X-Tage nutzt Vollbild" }, 260{ "Next days view uses full window","Nächste-X-Tage nutzt Vollbild" },
262{ "Next month","Nächster Monat" }, 261{ "Next month","Nächster Monat" },
263{ "&Next Week","&Nächste Woche" }, 262{ "&Next Week","&Nächste Woche" },
264{ "Next year","Nächstes Jahr" }, 263{ "Next year","Nächstes Jahr" },
265{ "Next Year","Nächstes Jahr" }, 264{ "Next Year","Nächstes Jahr" },
266{ "%n h","%n Std" }, 265{ "%n h","%n Std" },
267{ "No ending date","Kein End-Datum", }, 266{ "No ending date","Kein End-Datum", },
268{ "No event, nothing to do.","Kein Termin, nichts zu tun.", }, 267{ "No event, nothing to do.","Kein Termin, nichts zu tun.", },
269{ "No event selected.","Kein Termin selektiert" }, 268{ "No event selected.","Kein Termin selektiert" },
270{ "No","Nein" }, 269{ "No","Nein" },
271{ "No program set","Kein Programm ausgewählt", }, 270{ "No program set","Kein Programm ausgewählt", },
272{ "Normal","Normal" }, 271{ "Normal","Normal" },
273{ "[No selection]","Keine Selektion", }, 272{ "[No selection]","Keine Selektion", },
274{ "No sound set","Kein Sound ausgewählt", }, 273{ "No sound set","Kein Sound ausgewählt", },
275{ "no time ","keine Zeit ", }, 274{ "no time ","keine Zeit ", },
276{ "no time","keine Zeit", }, 275{ "no time","keine Zeit", },
277{ "No Time","Keine Zeit" }, 276{ "No Time","Keine Zeit" },
278{ "November","November" }, 277{ "November","November" },
279{ "Nov","Nov", }, 278{ "Nov","Nov", },
280{ "\nThis event recurs\nover multiple dates.\n","\nDieser Termin wiederholt sich an mehreren Tagen.\n" }, 279{ "\nThis event recurs\nover multiple dates.\n","\nDieser Termin wiederholt sich an mehreren Tagen.\n" },
281{ "occurrence(s)","Vorkommen" }, 280{ "occurrence(s)","Vorkommen" },
282{ "October","Oktober" }, 281{ "October","Oktober" },
283{ "Oct","Okt", }, 282{ "Oct","Okt", },
284{ "O-due!","Ü-fällig! " }, 283{ "O-due!","Ü-fällig! " },
285{ "&OK","&OK" }, 284{ "&OK","&OK" },
286{ "Ok+Show!","Ok+Anzeigen" }, 285{ "Ok+Show!","Ok+Anzeigen" },
287{ "Organizer: %1","Organisator %1" }, 286{ "Organizer: %1","Organisator %1" },
288{ "Organizer","Organisator" }, 287{ "Organizer","Organisator" },
289{ "Owner: ","Besitzer: " }, 288{ "Owner: ","Besitzer: " },
290{ "Owner:","Besitzer:" }, 289{ "Owner:","Besitzer:" },
291{ "<p><b>Priority:</b> %2</p>","<p><b>Priorität:</b> %2</p>" }, 290{ "<p><b>Priority:</b> %2</p>","<p><b>Priorität:</b> %2</p>" },
292{ "Pick a date to display","Wähle einen Tag zum anzeigen aus" }, 291{ "Pick a date to display","Wähle einen Tag zum anzeigen aus" },
293{ "Please specify a valid due date.","Bitte gültiges Fälligkeitsdatum angeben."}, 292{ "Please specify a valid due date.","Bitte gültiges Fälligkeitsdatum angeben."},
294{ "Please specify a valid end date,\nfor example '%1'.","Bitte gültiges Enddatum angeben,\nz.B.'%1'." }, 293{ "Please specify a valid end date,\nfor example '%1'.","Bitte gültiges Enddatum angeben,\nz.B.'%1'." },
295{ "Please specify a valid start date.","Bitte gültiges Startdatum angeben." }, 294{ "Please specify a valid start date.","Bitte gültiges Startdatum angeben." },
296{ "Please specify a valid start date,\nfor example '%1'.","Bitte gültiges Startdatum angeben,\nz.B. '%1'." }, 295{ "Please specify a valid start date,\nfor example '%1'.","Bitte gültiges Startdatum angeben,\nz.B. '%1'." },
297{ "Please specify a valid start time.","Bitte gültige Startzeit angeben."}, 296{ "Please specify a valid start time.","Bitte gültige Startzeit angeben."},
298{ "Please specify a valid start time,\nfor example '%1'.","Bitte gültige Startzeit angeben,\nz.B. '%1'." }, 297{ "Please specify a valid start time,\nfor example '%1'.","Bitte gültige Startzeit angeben,\nz.B. '%1'." },
299{ "Preferences - some settings need a restart (nr)","Einstellungen - teilweise Neustart erforderlich (bn)" }, 298{ "Preferences - some settings need a restart (nr)","Einstellungen - teilweise Neustart erforderlich (bn)" },
300{ "&Previous Day","Vorheriger Tag" }, 299{ "&Previous Day","Vorheriger Tag" },
301{ "Previous month","Vorheriger Monat" }, 300{ "Previous month","Vorheriger Monat" },
302{ "Previous Month","Vorheriger Monat" }, 301{ "Previous Month","Vorheriger Monat" },
303{ "&Previous Week","Vorherige Woche" }, 302{ "&Previous Week","Vorherige Woche" },
304{ "Previous year","Vorheriges Jahr" }, 303{ "Previous year","Vorheriges Jahr" },
305{ "Previous Year","Vorheriges Jahr" }, 304{ "Previous Year","Vorheriges Jahr" },
306{ "Printing","Drucken" }, 305{ "Printing","Drucken" },
307{ "Priority:","Priorität:" }, 306{ "Priority:","Priorität:" },
308{ "Private","Privat" }, 307{ "Private","Privat" },
309{ "Proceed","Weiter" }, 308{ "Proceed","Weiter" },
310{ "Public","Öffentlich" }, 309{ "Public","Öffentlich" },
311{ "Purge","Entferne" }, 310{ "Purge","Entferne" },
312{ "Purge Completed...","Entferne erledigte Todos..." }, 311{ "Purge Completed...","Entferne erledigte Todos..." },
313{ "Purge Todos","Todos bereinigen" }, 312{ "Purge Todos","Todos bereinigen" },
314{ "read-only","schreibgeschützt" }, 313{ "read-only","schreibgeschützt" },
315{ "Recur every","Wiederh. alle" }, 314{ "Recur every","Wiederh. alle" },
316{ "Recur in the month of","Wiederh. im Monat" }, 315{ "Recur in the month of","Wiederh. im Monat" },
317{ "Recur on the","Wiederh. am" }, 316{ "Recur on the","Wiederh. am" },
318{ "Recur on this day","Wiederh. am diesen Tag" }, 317{ "Recur on this day","Wiederh. am diesen Tag" },
319{ "Recurrence Range...","Wiederholungs Zeitraum..." }, 318{ "Recurrence Range...","Wiederholungs Zeitraum..." },
320{ "Recurrence Range","Wiederholungs Zeitraum" }, 319{ "Recurrence Range","Wiederholungs Zeitraum" },
321{ "Recurrence Rule","Wiederholungs Regel" }, 320{ "Recurrence Rule","Wiederholungs Regel" },
322{ "Recurrence","Wiederholung" }, 321{ "Recurrence","Wiederholung" },
323{ "Recurs","Wiederholung" }, 322{ "Recurs","Wiederholung" },
324{"&Reject","Abweisen"}, 323{"&Reject","Abweisen"},
325{ "Reminder:","Alarm:" }, 324{ "Reminder:","Alarm:" },
326{ "Rem.:","Alarm:" }, 325{ "Rem.:","Alarm:" },
327{ "Rem.","Alarm:" }, 326{ "Rem.","Alarm:" },
328{ "Remote file:","Remote Datei:"}, 327{ "Remote file:","Remote Datei:"},
329{ "Remote IP:","Remote (ferne) IP:" }, 328{ "Remote IP:","Remote (ferne) IP:" },
330{ "Remote syncing (via ssh/scp) network settings ","Remote Sync (via ssh/scp) Netzwerk Einstellungen " }, 329{ "Remote syncing (via ssh/scp) network settings ","Remote Sync (via ssh/scp) Netzwerk Einstellungen " },
331{ "Remote user:","Remote Benutzer"}, 330{ "Remote user:","Remote Benutzer"},
332{ "&Remove","Entfe&rnen" }, 331{ "&Remove","Entfe&rnen" },
333{ "Remove","Entfernen" }, 332{ "Remove","Entfernen" },
334{ "Request response","Bemerkung anfordern" }, 333{ "Request response","Bemerkung anfordern" },
335{ "Role:","Rolle:" }, 334{ "Role:","Rolle:" },
336{ "Role","Rolle" }, 335{ "Role","Rolle" },
337{ "Sat","Sa" }, 336{ "Sat","Sa" },
338{ "Saturday","Samstag" }, 337{ "Saturday","Samstag" },
339{ "Search for:","Suche nach:" }, 338{ "Search for:","Suche nach:" },
340{ "Search In","Suche in" }, 339{ "Search In","Suche in" },
341{ "Search...","Suche..." }, 340{ "Search...","Suche..." },
342{ "Search","Suche" }, 341{ "Search","Suche" },
343{ "Select Addresses","Wähle Adressen" }, 342{ "Select Addresses","Wähle Adressen" },
344{ "Select all","Selektiere Alle" }, 343{ "Select all","Selektiere Alle" },
345{ "Select a month","Wähle Monat" }, 344{ "Select a month","Wähle Monat" },
346{ "Select a week","Wähle Woche" }, 345{ "Select a week","Wähle Woche" },
347{ "Select a year","Wähle Jahr" }, 346{ "Select a year","Wähle Jahr" },
348{ "Send directly","Sende direkt" }, 347{ "Send directly","Sende direkt" },
349{ "&Send Messages","&Sende Nachrichten", }, 348{ "&Send Messages","&Sende Nachrichten", },
350{ "Sep","Sep" }, 349{ "Sep","Sep" },
351{ "September","September" }, 350{ "September","September" },
352{ "Shopping","Einkaufen" }, 351{ "Shopping","Einkaufen" },
353{ "Show Dates","Zeige Daten" }, 352{ "Show Dates","Zeige Daten" },
354{ "Show events that recur daily in date nav.","Zeige tägl.wiederh.Term.in Datums Nav." }, 353{ "Show events that recur daily in date nav.","Zeige tägl.wiederh.Term.in Datums Nav." },
355{ "Show Event...","Zeige Termin..." }, 354{ "Show Event...","Zeige Termin..." },
356{ "Show ev. that recur weekly in date nav.","Zeige wöch.wiederh.Term.in Datums Nav." }, 355{ "Show ev. that recur weekly in date nav.","Zeige wöch.wiederh.Term.in Datums Nav." },
357{ "Show Marcus Bains line","Zeige Marcus Bains Linie" }, 356{ "Show Marcus Bains line","Zeige Marcus Bains Linie" },
358{ "Show summary after syncing","Zeige Zusammenfassung nach Sync." }, 357{ "Show summary after syncing","Zeige Zusammenfassung nach Sync." },
359{ "Show time as:","Zeige Zeit als" }, 358{ "Show time as:","Zeige Zeit als" },
360{ "Show Todo...","Zeige To-Do" }, 359{ "Show Todo...","Zeige To-Do" },
361{ "Vertical screen layout(Needs restart)","Vertikaler Bildschirm-Layout (Neustart!)" }, 360{ "Vertical screen layout(Needs restart)","Vertikaler Bildschirm-Layout (Neustart!)" },
362{ "&Show","Zeige" }, 361{ "&Show","Zeige" },
363{ "Show...","Zeige..." }, 362{ "Show...","Zeige..." },
364{ "Show","Zeige" }, 363{ "Show","Zeige" },
365{ "Small","Klein" }, 364{ "Small","Klein" },
366{ "Sorry","Tut mir leid" }, 365{ "Sorry","Tut mir leid" },
367{"Sorry, the copy command failed!\nCommand was:\n","Der Kopierbefehl schlug fehl!\nBefehl war:\n"}, 366{"Sorry, the copy command failed!\nCommand was:\n","Der Kopierbefehl schlug fehl!\nBefehl war:\n"},
368{ "Start:","Start:" }, 367{ "Start:","Start:" },
369{ "Start Date","Start Datum" }, 368{ "Start Date","Start Datum" },
370{ "Start date: %1","Start Datum: %1" }, 369{ "Start date: %1","Start Datum: %1" },
371{ "Start Time","Start Zeit" }, 370{ "Start Time","Start Zeit" },
372{ "Status:","Status:" }, 371{ "Status:","Status:" },
373{ "Status","Status:" }, 372{ "Status","Status:" },
374{ "Summaries","Titel" }, 373{ "Summaries","Titel" },
375{ "Summary:","Titel:" }, 374{ "Summary:","Titel:" },
376{ "Summary","Titel" }, 375{ "Summary","Titel" },
377{ "Sunday","Sonntag" }, 376{ "Sunday","Sonntag" },
378{ "Sun","So" }, 377{ "Sun","So" },
379{ "Sync preferences:","Sync Einstellungen" }, 378{ "Sync preferences:","Sync Einstellungen" },
380{ "Sync Prefs","Sync Einstellungen" }, 379{ "Sync Prefs","Sync Einstellungen" },
381{ "Syncronize","Daten abgleich" }, 380{ "Syncronize","Daten abgleich" },
382{ "Take local entry on conflict","Nimm lokalen Eintrag beim Konflikt" }, 381{ "Take local entry on conflict","Nimm lokalen Eintrag beim Konflikt" },
383{ "Take newest entry on conflict","Nimm neuesten Eintrag beim Konflikt" }, 382{ "Take newest entry on conflict","Nimm neuesten Eintrag beim Konflikt" },
384{ "Take remote entry on conflict","Nimm fernen Eintrag beim Konflikt" }, 383{ "Take remote entry on conflict","Nimm fernen Eintrag beim Konflikt" },
385{ "Template '%1' does not contain a valid Todo.","Template '%1' enthält kein gültiges To-Do" }, 384{ "Template '%1' does not contain a valid Todo.","Template '%1' enthält kein gültiges To-Do" },
386{ "Template does not contain a valid Event.","Template '%1' enthält keinen gültigen Termin" }, 385{ "Template does not contain a valid Event.","Template '%1' enthält keinen gültigen Termin" },
387{ "Template...","Vorlage..." }, 386{ "Template...","Vorlage..." },
388{ "This day","Dieser Tag" }, 387{ "This day","Dieser Tag" },
389{ "This is an experimental feature. ","Dieses Feature ist experimentel" }, 388{ "This is an experimental feature. ","Dieses Feature ist experimentel" },
390{ "This item will be\npermanently deleted.","Dieser Eintrag wird\nkomplett gelöscht." }, 389{ "This item will be\npermanently deleted.","Dieser Eintrag wird\nkomplett gelöscht." },
391{ "This item will be permanently deleted.", "Dieser Eintrag wird komplett gelöscht." }, 390{ "This item will be permanently deleted.", "Dieser Eintrag wird komplett gelöscht." },
392{ "Thu","Do" }, 391{ "Thu","Do" },
393{ "Thursday","Donnerstag" }, 392{ "Thursday","Donnerstag" },
394{ "Time associated","Mit Zeit" }, 393{ "Time associated","Mit Zeit" },
395{ "Time bar:","Uhrzeit Zeile:" }, 394{ "Time bar:","Uhrzeit Zeile:" },
396{ "Time && Date","Zeit und Datum" }, 395{ "Time && Date","Zeit und Datum" },
397{ "Time Format","Zeit Format" }, 396{ "Time Format","Zeit Format" },
398{ "Time Format(nr):","Zeit Format(Neustart!)" }, 397{ "Time Format(nr):","Zeit Format(Neustart!)" },
399{ "Date Labels:","Datumsleiste:" }, 398{ "Date Labels:","Datumsleiste:" },
400{ "Time: ","Zeit: " }, 399{ "Time: ","Zeit: " },
401{ "Timezone:","Zeitzone:" }, 400{ "Timezone:","Zeitzone:" },
402{ "To: ","Bis: " }, 401{ "To: ","Bis: " },
403{ "To:","Bis:" }, 402{ "To:","Bis:" },
404{ "Today: ","Heute: " }, 403{ "Today: ","Heute: " },
405{ "Todo due today color:","Heute fällige To-Do's" }, 404{ "Todo due today color:","Heute fällige To-Do's" },
406{ "To-do items:","To-Do items:" }, 405{ "To-do items:","To-Do items:" },
407{ "Todo overdue color:","Überfällige To-Do's" }, 406{ "Todo overdue color:","Überfällige To-Do's" },
408{ "Todo","Todo" }, 407{ "Todo","Todo" },
409{ "To-do view shows completed Todos","To-do Ansicht zeigt erledigte To-dos" }, 408{ "To-do view shows completed Todos","To-do Ansicht zeigt erledigte To-dos" },
410{ "ToDoView:","Todo Ansicht:" }, 409{ "ToDoView:","Todo Ansicht:" },
411{ "Toggle Alarm","Wechsle Alarm" }, 410{ "Toggle Alarm","Wechsle Alarm" },
412{ "Toggle Allday","Umschalten Ganztag" }, 411{ "Toggle Allday","Umschalten Ganztag" },
413{ "Tomorrow: ","Morgen: " }, 412{ "Tomorrow: ","Morgen: " },
414{ "Tue","Di" }, 413{ "Tue","Di" },
415{ "Tuesday","Dienstag" }, 414{ "Tuesday","Dienstag" },
416{ "Two entries are in conflict, if: ","Zwei Einträge haben einen Konflikt, wenn:" }, 415{ "Two entries are in conflict, if: ","Zwei Einträge haben einen Konflikt, wenn:" },
417{ "Unable to find template '%1'.","Kann Vorlage '%1' nicht finden." }, 416{ "Unable to find template '%1'.","Kann Vorlage '%1' nicht finden." },
418{ "Unknown","Unbekannt" }, 417{ "Unknown","Unbekannt" },
419{ "Up","Hinauf" }, 418{ "Up","Hinauf" },
420{ "Use password (if not, ask when syncing)","Passwort: (sonst jedesmal anfragen)" }, 419{ "Use password (if not, ask when syncing)","Passwort: (sonst jedesmal anfragen)" },
421{ "User defined","Benutzerdefiniert" }, 420{ "User defined","Benutzerdefiniert" },
422{ "User long date:","Format langes Datum:" }, 421{ "User long date:","Format langes Datum:" },
423{ "User short date:","Forma kurzes Datum:" }, 422{ "User short date:","Forma kurzes Datum:" },
424{ "View","Ansicht" }, 423{ "View","Ansicht" },
425{ "View Fonts","Schriftarten Ansichten" }, 424{ "View Fonts","Schriftarten Ansichten" },
426{ "Views","Ansichten" }, 425{ "Views","Ansichten" },
427{ "Wed","Mi" }, 426{ "Wed","Mi" },
428{ "Wednesday","Mittwoch" }, 427{ "Wednesday","Mittwoch" },
429{ "Week %1","Woche %1" }, 428{ "Week %1","Woche %1" },
430{ "Weekly","Wöchentlich" }, 429{ "Weekly","Wöchentlich" },
431{ "Week starts on Sunday","Woche beginnt Sonntags" }, 430{ "Week starts on Sunday","Woche beginnt Sonntags" },
432{ "What's Next View:","What's Next Anz." }, 431{ "What's Next View:","What's Next Anz." },
433{ "What's next ?","Was kommt als nächstes?(What's Next)" }, 432{ "What's next ?","Was kommt als nächstes?(What's Next)" },
434{ "Working Hours","Tägliche Arbeitszeit" }, 433{ "Working Hours","Tägliche Arbeitszeit" },
435{ "Working hours color:","Arbeitszeit in der Agenda Ansicht:" }, 434{ "Working hours color:","Arbeitszeit in der Agenda Ansicht:" },
436{ "Write back existing entries only","Nur exisitierende Einträge zurückschreiben" }, 435{ "Write back existing entries only","Nur exisitierende Einträge zurückschreiben" },
437{ "Write back synced file","Syncronisierte Datei zurückschreiben" }, 436{ "Write back synced file","Syncronisierte Datei zurückschreiben" },
438{ "Yearly","Jährlich" }, 437{ "Yearly","Jährlich" },
439{ "year(s)","Jahr(e)" }, 438{ "year(s)","Jahr(e)" },
440{ "Yes","Ja" }, 439{ "Yes","Ja" },
441{ "You have %d item(s) selected.\n","Sie haben %d Einträge ausgewählt.\n" }, 440{ "You have %d item(s) selected.\n","Sie haben %d Einträge ausgewählt.\n" },
442{ "You have to restart KOrganizer for this setting to take effect.","Sie müssem Korganizer neu starten, damit diese Einstellung aktiviert wird." }, 441{ "You have to restart KOrganizer for this setting to take effect.","Sie müssem Korganizer neu starten, damit diese Einstellung aktiviert wird." },
443{ "week(s) on:","Woche(n) am: " }, 442{ "week(s) on:","Woche(n) am: " },
444{ "Full menu bar(nr)","Volle Menuleiste(bn)" }, 443{ "Full menu bar(nr)","Volle Menuleiste(bn)" },
445{ "Timezone has daylight saving","Zeitzone hat Sommerzeit" }, 444{ "Timezone has daylight saving","Zeitzone hat Sommerzeit" },
446{ "Actual start and end is the\nsunday before this date.","Tatsächlicher Beginn/Ende ist der\nSonntag vor diesem Datum!" }, 445{ "Actual start and end is the\nsunday before this date.","Tatsächlicher Beginn/Ende ist der\nSonntag vor diesem Datum!" },
447{ "The year in the date is ignored.","Das Jahr vom Datum wird ignoriert." }, 446{ "The year in the date is ignored.","Das Jahr vom Datum wird ignoriert." },
448{ "Daylight start:","Sommerzeit Start:" }, 447{ "Daylight start:","Sommerzeit Start:" },
449{ "Daylight end:","Sommerzeit Ende:" }, 448{ "Daylight end:","Sommerzeit Ende:" },
450{ "Time Zone","Zeitzone" }, 449{ "Time Zone","Zeitzone" },
451{ "Monday 19 April 2004: %A %d %B %Y","Montag 19 April 2004: %A %d %B %Y" }, 450{ "Monday 19 April 2004: %A %d %B %Y","Montag 19 April 2004: %A %d %B %Y" },
452{ "%A: Monday --- %a: Mon","%A: Montag --- %a: Mon" }, 451{ "%A: Monday --- %a: Mon","%A: Montag --- %a: Mon" },
453{ "minutely","minütlich" }, 452{ "minutely","minütlich" },
454{ "hourly","stündlich" }, 453{ "hourly","stündlich" },
455{ "daily","täglich" }, 454{ "daily","täglich" },
456{ "weekly","wöchentlich" }, 455{ "weekly","wöchentlich" },
457{ "monthly","monatlich" }, 456{ "monthly","monatlich" },
458{ "day-monthly","tag-monatlich" }, 457{ "day-monthly","tag-monatlich" },
459{ "month-yearly","monat-jährlich" }, 458{ "month-yearly","monat-jährlich" },
460{ "day-yearly","tag-jährlich" }, 459{ "day-yearly","tag-jährlich" },
461{ "position-yearly","pos-jährlich" }, 460{ "position-yearly","pos-jährlich" },
462{ "Edit item on doubleclick (if not, show)","Editiere mit Doppelklick(wenn nicht, zeige)" }, 461{ "Edit item on doubleclick (if not, show)","Editiere mit Doppelklick(wenn nicht, zeige)" },
463{ "Highlight current day in agenda","Hebe >>heute<< in Agenda hervor" }, 462{ "Highlight current day in agenda","Hebe >>heute<< in Agenda hervor" },
464{ "Use light color for highlight current day","Helle Farbe für >>heute<< Hervorhebung" }, 463{ "Use light color for highlight current day","Helle Farbe für >>heute<< Hervorhebung" },
465{ "Highlight selection in Time Edit","Hebe Auswahl in Zeit Edit hervor" }, 464{ "Highlight selection in Time Edit","Hebe Auswahl in Zeit Edit hervor" },
466{ "Hold fullscreen on view change","Behalte Vollbild bei Ansichswechsel" }, 465{ "Hold fullscreen on view change","Behalte Vollbild bei Ansichswechsel" },
467{ "Hold non-fullscreen on view change","Behalte Nicht-Vollbild bei Ansichtsw." }, 466{ "Hold non-fullscreen on view change","Behalte Nicht-Vollbild bei Ansichtsw." },
468{ "Event list view uses full window","Listenansicht nutzt Vollbild" }, 467{ "Event list view uses full window","Listenansicht nutzt Vollbild" },
469{ "Set agenda to DayBeginsAt on change","Setze Agenda auf TagBeginntUm bei Wechsel" }, 468{ "Set agenda to DayBeginsAt on change","Setze Agenda auf TagBeginntUm bei Wechsel" },
470{ "Set agenda to current time on change","Setze Agenda auf gegenw.Zeit bei Wechsel" }, 469{ "Set agenda to current time on change","Setze Agenda auf gegenw.Zeit bei Wechsel" },
471{ "Listview uses monthly timespan","Listenansicht zeigt monatliche Zeitspanne" }, 470{ "Listview uses monthly timespan","Listenansicht zeigt monatliche Zeitspanne" },
472{ "ViewChange","Ansichtswechsel" }, 471{ "ViewChange","Ansichtswechsel" },
473{ "Default alarm *.wav file:","Standard Alarm *.wav Datei:" }, 472{ "Default alarm *.wav file:","Standard Alarm *.wav Datei:" },
474{ "This setting is useless for 5500 user!","Diese Einst. ist nutzlos für 5500 Nutzer" }, 473{ "This setting is useless for 5500 user!","Diese Einst. ist nutzlos für 5500 Nutzer" },
475{ "File","Datei" }, 474{ "File","Datei" },
476{ "Clone...","Dupliziere..." }, 475{ "Clone...","Dupliziere..." },
477{ "Move...","Bewege..." }, 476{ "Move...","Bewege..." },
478{ "Beam...","Sende via IR..." }, 477{ "Beam...","Sende via IR..." },
479{ "&Clone...","Dupliziere.." }, 478{ "&Clone...","Dupliziere..." },
480{ "&Move...","Bewege..." }, 479{ "&Move...","Bewege..." },
481{ "&Beam...","Sende via IR..." }, 480{ "&Beam...","Sende via IR..." },
482{ "Show Completed","Zeige erledigte Todos" }, 481{ "Show Completed","Zeige erledigte Todos" },
483{ "Show Quick Todo","Zeige Quick Todo" }, 482{ "Show Quick Todo","Zeige Quick Todo" },
484{ "Unparent Todo","Un-sub Todo" }, 483{ "Unparent Todo","Un-sub Todo" },
485{ "Save selected to file...","Speichere Selektierte..." }, 484{ "Save selected to file...","Speichere Selektierte..." },
486{ "Add Categ. to selected...","Füge zu Selekt. Kateg. hinzu..." }, 485{ "Add Categ. to selected...","Füge zu Selekt. Kateg. hinzu..." },
487{ "Set Categ. for selected...","Setze Kateg. für Selekt." }, 486{ "Set Categ. for selected...","Setze Kateg. für Selekt." },
488{ "Beam via IR","Sende via IR" }, 487{ "Beam via IR...","Sende via IR..." },
489{ "Search","Suchen" }, 488{ "Search","Suchen" },
490{ "Date Picker","Datum auswählen" }, 489{ "Date Picker","Datum auswählen" },
491{ "Day View","Tagesansicht" }, 490{ "Day View","Tagesansicht" },
492{ "Work Week","Arbeitswoche" }, 491{ "Work Week","Arbeitswoche" },
493{ "Week","Wochenansicht" }, 492{ "Week","Wochenansicht" },
494{ "Month","Monatsansicht" }, 493{ "Month","Monatsansicht" },
495{ "Todo View","Todo Liste" }, 494{ "Todo View","Todo Liste" },
496{ "Journal","Journal" }, 495{ "Journal","Journal" },
497{ "Next days","Nächste Tage" }, 496{ "Next days","Nächste Tage" },
498{ "Print agenda selection...","Drucke Agendaselektion..." }, 497{ "Print agenda selection...","Drucke Agendaselektion..." },
499{ "Toggle DateNavigator","Navigator umschalten" }, 498{ "Toggle DateNavigator","Navigator umschalten" },
500{ "Toggle FilterView","Filteransicht umschalten" }, 499{ "Toggle FilterView","Filteransicht umschalten" },
501{ "Prev. month","Vorheriger Monat" }, 500{ "Prev. month","Vorheriger Monat" },
502{ "Go backward","Gehe zurück" }, 501{ "Go backward","Gehe zurück" },
503{ "Go forward","Gehe weiter" }, 502{ "Go forward","Gehe weiter" },
504{ "Synchronize","Synchronisieren" }, 503{ "Synchronize","Synchronisieren" },
505{ "AgendaSize","Agendagröße" }, 504{ "AgendaSize","Agendagröße" },
506{ "Import (*.ics/*.vcs) file","Importiere (*.ics/*.vcs) Datei" }, 505{ "Import (*.ics/*.vcs) file","Importiere (*.ics/*.vcs) Datei" },
507{ "Import last file","Importiere letzte Datei" }, 506{ "Import last file","Importiere letzte Datei" },
508{ "Import Opie/Qtopia Cal.","Importiere Opie/Qtopia Kal." }, 507{ "Import Opie/Qtopia Cal.","Importiere Opie/Qtopia Kal." },
509{ "Save Backup...","Speichere Backup..." }, 508{ "Save Backup...","Speichere Backup..." },
510{ "Export VCalendar","Exportiere VCalendar" }, 509{ "Export VCalendar","Exportiere VCalendar" },
511{ "Manage new categories...","Verwalte neue Kategorien..." }, 510{ "Manage new categories...","Verwalte neue Kategorien..." },
512{ "Beam complete calendar...","Sende kompletten Kalender..." }, 511{ "Beam complete calendar...","Sende kompletten Kalender..." },
513{ "Beam filtered calendar...","Sende gefilterten Kalender..." }, 512{ "Beam filtered calendar...","Sende gefilterten Kalender..." },
514{ "Remote via ssh","Über Netzwerk via ssh" }, 513{ "Remote via ssh","Über Netzwerk via ssh" },
515{ "With local file","Mit lokaler Datei" }, 514{ "With local file","Mit lokaler Datei" },
516{ "With last file","Mit letzter Datei" }, 515{ "With last file","Mit letzter Datei" },
517{ "KO/Pi: Ready for beaming","KO/Pi: Bereit zum Senden" }, 516{ "KO/Pi: Ready for beaming","KO/Pi: Bereit zum Senden" },
518{ "KO/Pi:Beaming done","KO/Pi: Senden erfolgt" }, 517{ "KO/Pi:Beaming done","KO/Pi: Senden erfolgt" },
519{ "Save filename","Speichern: Dateinamen wählen" }, 518{ "Save filename","Speichern: Dateinamen wählen" },
520{ "File already exists!\nOld file from:\n%1\nOverwrite?\n","Dateiname existiert bereits!\nAlte Datei vom:\n%1\nÜberschreiben?\n" }, 519{ "File already exists!\nOld file from:\n%1\nOverwrite?\n","Dateiname existiert bereits!\nAlte Datei vom:\n%1\nÜberschreiben?\n" },
521{ "KO/Pi: Warning!","KO/Pi: Warnung!" }, 520{ "KO/Pi: Warning!","KO/Pi: Warnung!" },
522{ "Overwrite!","Überschreibe!" }, 521{ "Overwrite!","Überschreibe!" },
523{ "KO/Pi:Saved %1","KO/Pi:Gespeichert %1" }, 522{ "KO/Pi:Saved %1","KO/Pi:Gespeichert %1" },
524{ "All selected items will be\npermanently deleted.\n(Deleting items will take\nsome time on a PDA)\n","Alle selektierten Einträge werden\nunwiederbringlich gelöscht.\n(Löschen kann auf dem\nPDA einige Zeit dauern)\n" }, 523{ "All selected items will be\npermanently deleted.\n(Deleting items will take\nsome time on a PDA)\n","Alle selektierten Einträge werden\nunwiederbringlich gelöscht.\n(Löschen kann auf dem\nPDA einige Zeit dauern)\n" },
525{ "KO/Pi Confirmation","KO/Pi Bestätigung" }, 524{ "KO/Pi Confirmation","KO/Pi Bestätigung" },
526{ "Close dialog to abort deletion!","Schließe Dialog um das Löschen abzubrechen!" }, 525{ "Close dialog to abort deletion!","Schließe Dialog um das Löschen abzubrechen!" },
527{ "Deleting item %d ...","Lösche Eintrag %d ..." }, 526{ "Deleting item %d ...","Lösche Eintrag %d ..." },
528{ "%d items remaining in list.","%d Einträge sind in der Liste verblieben." }, 527{ "%d items remaining in list.","%d Einträge sind in der Liste verblieben." },
529{ "Size","Größe" }, 528{ "Size","Größe" },
530{ "Date","Datum" }, 529{ "Date","Datum" },
531{ "Mime Type","Datei Typ" }, 530{ "Mime Type","Datei Typ" },
532{ "All Files","Alle Dateien" }, 531{ "All Files","Alle Dateien" },
533{ "Files","Dateien" }, 532{ "Files","Dateien" },
534{ "Documents","DoKumente" }, 533{ "Documents","DoKumente" },
535{ "Select Categories","Selektiere Kategorien" }, 534{ "Select Categories","Selektiere Kategorien" },
536{ " &Deselect All "," Auswahl aufheben " }, 535{ " &Deselect All "," Auswahl aufheben " },
537{ "A&dd","Hinzu" }, 536{ "A&dd","Hinzu" },
538{ "&Modify","Ändern" }, 537{ "&Modify","Ändern" },
539{ "Edit Categories","Editiere Kategorien" }, 538{ "Edit Categories","Editiere Kategorien" },
540{ " &Edit Categories "," &Editiere Kategorien " }, 539{ " &Edit Categories "," &Editiere Kategorien " },
541{ "Beam Options","Beam Einstellungen" }, 540{ "Beam Options","Beam Einstellungen" },
542{ " With timezone "," Mit Zeitzone " }, 541{ " With timezone "," Mit Zeitzone " },
543{ " Local time ", " Lokale Zeit " }, 542{ " Local time ", " Lokale Zeit " },
544{ "Manage new Categories","Verwalte neue Kategorien" }, 543{ "Manage new Categories","Verwalte neue Kategorien" },
545{ "Add to category list","Füge zur Kategorieliste hinzu" }, 544{ "Add to category list","Füge zur Kategorieliste hinzu" },
546{ "Remove from Events/Todos","Entferne von Terminen/Todos" }, 545{ "Remove from Events/Todos","Entferne von Terminen/Todos" },
547{ "New categories not in list:","Kategorien, die nicht in der Liste sind:" }, 546{ "New categories not in list:","Kategorien, die nicht in der Liste sind:" },
548{ "File format","Datei Format" }, 547{ "File format","Datei Format" },
549{ "Time format","Zeit Format" }, 548{ "Time format","Zeit Format" },
550{ "KO/Pi:Saving Data to File ...","KO/Pi: Speichere Kalender in Datei ..." }, 549{ "KO/Pi:Saving Data to File ...","KO/Pi: Speichere Kalender in Datei ..." },
551{ "KO/Pi:File Saved. Needed %d sec, %d ms","KO/Pi: Abgespeichert in %d sec, %d ms" }, 550{ "KO/Pi:File Saved. Needed %d sec, %d ms","KO/Pi: Abgespeichert in %d sec, %d ms" },
552{ "h","Std" }, 551{ "h","Std" },
553{ "min","Min" }, 552{ "min","Min" },
554{ "hou","Std" }, 553{ "hou","Std" },
555{ "day","Tag" }, 554{ "day","Tag" },
556{ "French","Französich" }, 555{ "French","Französich" },
557{ "Time","Zeit" }, 556{ "Time","Zeit" },
558{ "Event Viewer","Termin Ansicht" }, 557{ "Event Viewer","Termin Ansicht" },
559{ "Cancel Sync","Sync Abbrechen" }, 558{ "Cancel Sync","Sync Abbrechen" },
560{ "Remote","Fern" }, 559{ "Remote","Fern" },
561{ "Local","Lokal" }, 560{ "Local","Lokal" },
562{ "Conflict! Please choose entry","Konflikt! Bitte Eintrag wählen" }, 561{ "Conflict! Please choose entry","Konflikt! Bitte Eintrag wählen" },
563{ "Local: ","Lokal: " }, 562{ "Local: ","Lokal: " },
564{ "Remote: ","Fern: " }, 563{ "Remote: ","Fern: " },
565{ "Last modified: ","Zuletzt geändert: " }, 564{ "Last modified: ","Zuletzt geändert: " },
566{ "Location: ","Ort: " }, 565{ "Location: ","Ort: " },
567{ "<p><b>From:</b> %1 </p><p><b>To:</b> %2</p>","<p><b>Von:</b> %1 </p><p><b>Bis:</b> %2</p>" }, 566{ "<p><b>From:</b> %1 </p><p><b>To:</b> %2</p>","<p><b>Von:</b> %1 </p><p><b>Bis:</b> %2</p>" },
568{ "<p><b>On:</b> %1</p>","<p><b>Am:</b> %1</p>" }, 567{ "<p><b>On:</b> %1</p>","<p><b>Am:</b> %1</p>" },
569{ "<p><b>From:</b> %1</p> ","<p><b>Von:</b> %1</p> " }, 568{ "<p><b>From:</b> %1</p> ","<p><b>Von:</b> %1</p> " },
570{ "<p><b>To:</b> %1</p>","<p><b>Bis:</b> %1</p>" }, 569{ "<p><b>To:</b> %1</p>","<p><b>Bis:</b> %1</p>" },
571{ "<p><b>On:</b> %1</p> ","<p><b>Am:</b> %1</p> " }, 570{ "<p><b>On:</b> %1</p> ","<p><b>Am:</b> %1</p> " },
572{ "<p><b>From:</b> %1 <b>To:</b> %2</p>","<p><b>Von:</b> %1 <b>Bis:</b> %2</p>" }, 571{ "<p><b>From:</b> %1 <b>To:</b> %2</p>","<p><b>Von:</b> %1 <b>Bis:</b> %2</p>" },
573{ "This is a %1 recurring event.","Das ist ein %1 wiederholender Termin." }, 572{ "This is a %1 recurring event.","Das ist ein %1 wiederholender Termin." },
574{ "<b>Next recurrence is on:</b>","<b>Nächste Wiederholung ist am:</b>" }, 573{ "<b>Next recurrence is on:</b>","<b>Nächste Wiederholung ist am:</b>" },
575{ "<b>Last recurrence was on:</b>","<b>Letzte Wiederholung war am:</b>" }, 574{ "<b>Last recurrence was on:</b>","<b>Letzte Wiederholung war am:</b>" },
576{ "( %1 min before )","( %1 min vorher )" }, 575{ "( %1 min before )","( %1 min vorher )" },
577{ "<b>Alarm on: ","<b>Alarm am: " }, 576{ "<b>Alarm on: ","<b>Alarm am: " },
578{ "<b>Details: </b>","<b>Details: </b>" }, 577{ "<b>Details: </b>","<b>Details: </b>" },
579{ "<p><b>Priority:</b> %2</p>","<p><b>Priorität:</b> %2</p>" }, 578{ "<p><b>Priority:</b> %2</p>","<p><b>Priorität:</b> %2</p>" },
580{ "<p><i>%1 % completed</i></p>","<p><i>%1 % erledigt</i></p>" }, 579{ "<p><i>%1 % completed</i></p>","<p><i>%1 % erledigt</i></p>" },
581{ "Organizer","Organisator" }, 580{ "Organizer","Organisator" },
582{ "Save","Speichern" }, 581{ "Save","Speichern" },
583{ "Exit (+save)","Beenden(+speichern)" }, 582{ "Exit (+save)","Beenden(+speichern)" },
584{ "Home","Zuhause" }, 583{ "Home","Zuhause" },
585{ "Office","Büro" }, 584{ "Office","Büro" },
586{ "Library","Bibliothek" }, 585{ "Library","Bibliothek" },
587{ "Doctor","Arzt" }, 586{ "Doctor","Arzt" },
588{ "Beach","Strand" }, 587{ "Beach","Strand" },
589{ "Conference room","Konferenzraum" }, 588{ "Conference room","Konferenzraum" },
590{ "Drive Home","Heimfahrt" }, 589{ "Drive Home","Heimfahrt" },
591{ "Watch TV","Tv gucken" }, 590{ "Watch TV","Tv gucken" },
592{ "Phone call","Telefonanruf" }, 591{ "Phone call","Telefonanruf" },
593{ "Pay bill","Rechnung bezahlen" }, 592{ "Pay bill","Rechnung bezahlen" },
594{ "Read book","Buch lesen" }, 593{ "Read book","Buch lesen" },
595{ "Watering plants","Pflanzen giessen" }, 594{ "Watering plants","Pflanzen giessen" },
596{"Appointment","Verabredung" }, 595{"Appointment","Verabredung" },
597{"Birthday","Geburtstag" }, 596{"Birthday","Geburtstag" },
598{"Business","Geschäft" }, 597{"Business","Geschäft" },
599{"Business Travel","Geschäftsreise" }, 598{"Business Travel","Geschäftsreise" },
600{"Cinema","Kino" }, 599{"Cinema","Kino" },
601{"Customer","Kunde" }, 600{"Customer","Kunde" },
602{"Break","Pause" }, 601{"Break","Pause" },
603{"Breakfast","Frühstück" }, 602{"Breakfast","Frühstück" },
604{"Competition","Wettkampf" }, 603{"Competition","Wettkampf" },
605{"Dinner","Abendessen" }, 604{"Dinner","Abendessen" },
606{"Education","Erziehung" }, 605{"Education","Erziehung" },
607{"Family","Familie" }, 606{"Family","Familie" },
608{"Favorites","Favoriten" }, 607{"Favorites","Favoriten" },
609{"Festival","Festival" }, 608{"Festival","Festival" },
610{"Fishing","Angeln" }, 609{"Fishing","Angeln" },
611{"Flight","Flug" }, 610{"Flight","Flug" },
612{"Gifts","Geschenk" }, 611{"Gifts","Geschenk" },
613{"Holiday","Feiertag" }, 612{"Holiday","Feiertag" },
614{"Holiday Cards","Ansichtskarten" }, 613{"Holiday Cards","Ansichtskarten" },
615{"Hot Contacts","Heisse Kontakte" }, 614{"Hot Contacts","Heisse Kontakte" },
616{"Hiking","Wandern" }, 615{"Hiking","Wandern" },
617{"Hunting","Jagen" }, 616{"Hunting","Jagen" },
618{"Key Customer","Wichtiger Kunde" }, 617{"Key Customer","Wichtiger Kunde" },
619{"Kids","Kinder" }, 618{"Kids","Kinder" },
620{"Lunch","Mittagessen" }, 619{"Lunch","Mittagessen" },
621{"Meeting","Treffen" }, 620{"Meeting","Treffen" },
622{"Miscellaneous","Verschiedenes" }, 621{"Miscellaneous","Verschiedenes" },
623{"Partner","Partner" }, 622{"Partner","Partner" },
624{"Party","Partie" }, 623{"Party","Partie" },
625{"Personal","Privat" }, 624{"Personal","Privat" },
626{"Personal Travel","Privatreise"}, 625{"Personal Travel","Privatreise"},
627{"PHB","PHB" }, 626{"PHB","PHB" },
628{"Phone Calls","Telefonanruf" }, 627{"Phone Calls","Telefonanruf" },
629{"Projects","Projekt" }, 628{"Projects","Projekt" },
630{"Recurring","Wiederholend" }, 629{"Recurring","Wiederholend" },
631{"School","Schule" }, 630{"School","Schule" },
632{"Shopping","Einkaufen" }, 631{"Shopping","Einkaufen" },
633{"Speach","Rede" }, 632{"Speach","Rede" },
634{"Special Occasion","Spez.Gelegenheit" }, 633{"Special Occasion","Spez.Gelegenheit" },
635{"Sports","Sport" }, 634{"Sports","Sport" },
636{"Talk","Vortrag" }, 635{"Talk","Vortrag" },
637{"Travel","Reise" }, 636{"Travel","Reise" },
638{"TV","TV" }, 637{"TV","TV" },
639{"Germany","Deutschland" }, 638{"Germany","Deutschland" },
640{"Sweden","Schweden" }, 639{"Sweden","Schweden" },
641{"Forest","Wald" }, 640{"Forest","Wald" },
642{ "Desert","Wüste" }, 641{ "Desert","Wüste" },
643{ "Kitchen","Küche" }, 642{ "Kitchen","Küche" },
644{ "Lake","See" }, 643{ "Lake","See" },
645{"University","Universität"}, 644{"University","Universität"},
646{"Vacation","Urlaub" }, 645{"Vacation","Urlaub" },
647{"VIP","VIP" }, 646{"VIP","VIP" },
648{ "Import Sharp Calendar","Importiere Sharp Kalender" }, 647{ "Import Sharp Calendar","Importiere Sharp Kalender" },
649{ "This todo has been cancelled!","Dieses Todo wurde gecancelt!" }, 648{ "This todo has been cancelled!","Dieses Todo wurde gecancelt!" },
650{ "This event has been cancelled!","Dieser Termin wurde gecancelt!" }, 649{ "This event has been cancelled!","Dieser Termin wurde gecancelt!" },
651{ "Cancelled","Gecancelt" }, 650{ "Cancelled","Gecancelt" },
652{ "Multiple sync","Mehrfach Sync" }, 651{ "Multiple sync","Mehrfach Sync" },
653{ "Local file","Lokale Datei" }, 652{ "Local file","Lokale Datei" },
654{ "Last file","Letzte Datei" }, 653{ "Last file","Letzte Datei" },
655{ "Keys + Colors...","Tasten + Farben..." }, 654{ "Keys + Colors...","Tasten + Farben..." },
656{ "Mini icons in toolbar(nr)","Mini Icons in ToolBar(bn)" }, 655{ "Mini icons in toolbar(nr)","Mini Icons in ToolBar(bn)" },
657{ "Quick load/save (w/o Unicode)","Schnelles Laden/Speichern (o Unicode)" }, 656{ "Quick load/save (w/o Unicode)","Schnelles Laden/Speichern (o Unicode)" },
658{ "Choose...","Wähle..." }, 657{ "Choose...","Wähle..." },
659{ "Use colors for application:","Setze Farben für Programm:" }, 658{ "Use colors for application:","Setze Farben für Programm:" },
660{ "Buttons, menus, etc.:","Knöpfe, Menu, etc.:" }, 659{ "Buttons, menus, etc.:","Knöpfe, Menu, etc.:" },
661{ "Frames, labels, etc.:","Rahmen, Label, etc.:" }, 660{ "Frames, labels, etc.:","Rahmen, Label, etc.:" },
662{ "Show parent To-Do's","Zeige Ober-Todos" }, 661{ "Show parent To-Do's","Zeige Ober-Todos" },
663{ "Show location","Zeige Orte" }, 662{ "Show location","Zeige Orte" },
664{ "Show events that recur ","Zeige Termine, die sich wiederholen:" }, 663{ "Show events that recur ","Zeige Termine, die sich wiederholen:" },
665{ "Show in every cell ","Zeige in jeder Zelle " }, 664{ "Show in every cell ","Zeige in jeder Zelle " },
666{ "short month","kurzen Monat" }, 665{ "short month","kurzen Monat" },
667{ "icons","Icons" }, 666{ "icons","Icons" },
668{ "Show Sat/Sun together","Zeige Sam/Son zusammen" }, 667{ "Show Sat/Sun together","Zeige Sam/Son zusammen" },
669{ "Category colors are applied to text","Kategorie Farben färben Text" }, 668{ "Category colors are applied to text","Kategorie Farben färben Text" },
670{ "Month view uses day colors","Monatsansicht zeigt Tagesfarben" }, 669{ "Month view uses day colors","Monatsansicht zeigt Tagesfarben" },
671{ "Day color odd months","Tagesfarbe ungerade Monate" }, 670{ "Day color odd months","Tagesfarbe ungerade Monate" },
672{ "Day color even months","Tagesfarbe gerade Monate" }, 671{ "Day color even months","Tagesfarbe gerade Monate" },
673{ "Color for Sundays + category \"Holiday\"","Farbe für Sonntag + Kateg.\" Feiertag\"" }, 672{ "Color for Sundays + category \"Holiday\"","Farbe für Sonntag + Kateg.\" Feiertag\"" },
674{ "To-do view shows complete as 'xx %'","Zeige Prozent erledigt als 'xx %'" }, 673{ "To-do view shows complete as 'xx %'","Zeige Prozent erledigt als 'xx %'" },
675{ "Small To-do view uses smaller font","Kleine To-do Ansicht nutzt kleineren Font" }, 674{ "Small To-do view uses smaller font","Kleine To-do Ansicht nutzt kleineren Font" },
676{ "Colors are applied to text","Farben werden auf Text angewendet" }, 675{ "Colors are applied to text","Farben werden auf Text angewendet" },
677{ "Use internal alarm notification","Nutze interne Alarm Benachrichtigung" }, 676{ "Use internal alarm notification","Nutze interne Alarm Benachrichtigung" },
678{ "Note: KO/Pi must be running to notify you about an alarm. Recommended for use on Zaurus: Disable this option and install KO/Pi alarm applet.\n","Achtung: KO/Pi muß ausgeführt werden damit die Benachrichtigung funktioniert. Empfehlung für Zaurus: Diese Option nicht wählen und KO/Pi Alarm Applet installieren.\n" }, 677{ "Note: KO/Pi must be running to notify you about an alarm. Recommended for use on Zaurus: Disable this option and install KO/Pi alarm applet.\n","Achtung: KO/Pi muß ausgeführt werden damit die Benachrichtigung funktioniert. Empfehlung für Zaurus: Diese Option nicht wählen und KO/Pi Alarm Applet installieren.\n" },
679{ "Play beeps count:","Anzahl der Alarmpiepse: " }, 678{ "Play beeps count:","Anzahl der Alarmpiepse: " },
680{ "Beeps interval in sec:","Zeitintervall der Alarmpiepse: " }, 679{ "Beeps interval in sec:","Zeitintervall der Alarmpiepse: " },
681{ "Default suspend time in min:","Standard Supendierungs Zeit: " }, 680{ "Default suspend time in min:","Standard Supendierungs Zeit: " },
682{ "Auto suspend count:","Anzahl der auto Suspendierungen" }, 681{ "Auto suspend count:","Anzahl der auto Suspendierungen" },
683{ "Alarm *.wav file for newly created alarm:","Alarm *.wav Datei für neu angelegte Alarme:" }, 682{ "Alarm *.wav file for newly created alarm:","Alarm *.wav Datei für neu angelegte Alarme:" },
684{ "New profile","Neues Profil" }, 683{ "New profile","Neues Profil" },
685{ "Clone profile","Klone Profil" }, 684{ "Clone profile","Klone Profil" },
686{ "Delete profile","Lösche Profil" }, 685{ "Delete profile","Lösche Profil" },
687{ "Profile:","Profil:" }, 686{ "Profile:","Profil:" },
688{ "Include in multiple sync","Beziehe Profil in mehrfach Sync mit ein" }, 687{ "Include in multiple sync","Beziehe Profil in mehrfach Sync mit ein" },
689{ "Force: Take local entry always","Erzwinge: Nimm immer lokalen Eintrag" }, 688{ "Force: Take local entry always","Erzwinge: Nimm immer lokalen Eintrag" },
690{ "Force: Take remote entry always","Erzwinge: Nimm immer fernen Eintrag" }, 689{ "Force: Take remote entry always","Erzwinge: Nimm immer fernen Eintrag" },
691{ "Show summary after sync","Zeige Zusammenfassung nach dem Synchronisieren" }, 690{ "Show summary after sync","Zeige Zusammenfassung nach dem Synchronisieren" },
692{ "Write back file","Schreibe Datei zurück" }, 691{ "Write back file","Schreibe Datei zurück" },
693{ "Remote file (w down/upload command)","Entfernte Datei (via down/upload Kommando)" }, 692{ "Remote file (w down/upload command)","Entfernte Datei (via down/upload Kommando)" },
694{ "Pre sync (download) command:","Bevor Sync (download) Kommando:" }, 693{ "Pre sync (download) command:","Bevor Sync (download) Kommando:" },
695{ "Local device name:","Name dieses Gerätes:" }, 694{ "Local device name:","Name dieses Gerätes:" },
696{ "Ask for preferences before sync","Frage nach Synchronisationseinstellungen vor dem Syncen" }, 695{ "Ask for preferences before sync","Frage nach Synchronisationseinstellungen vor dem Syncen" },
697{ "Sync preferences","Synchronisations Einstellungen" }, 696{ "Sync preferences","Synchronisations Einstellungen" },
698{ "Profile kind","Profil Art" }, 697{ "Profile kind","Profil Art" },
699{ "Local file","Lokale Datei" }, 698{ "Local file","Lokale Datei" },
700{ "Local file:","Lokale Datei:" }, 699{ "Local file:","Lokale Datei:" },
701{ "Post sync (upload) command:","Nach Sync (upload) Kommando:" }, 700{ "Post sync (upload) command:","Nach Sync (upload) Kommando:" },
702{ "Fill in default values for:","Setze Beispiel Werte ein für:" }, 701{ "Fill in default values for:","Setze Beispiel Werte ein für:" },
703{ "Hint: Use $PWD$ for placeholder of password!","Hinweis: Benutze $PWD$ als Platzhalter für ein Passwort!" }, 702{ "Hint: Use $PWD$ for placeholder of password!","Hinweis: Benutze $PWD$ als Platzhalter für ein Passwort!" },
704{ "Synchronization Preferences","Einstellungen der Synchronisationsprofile"}, 703{ "Synchronization Preferences","Einstellungen der Synchronisationsprofile"},
705{ "Device","Gerät:" }, 704{ "Device","Gerät:" },
706{ "Sync with file \n...%1\nfrom:\n%2\n","Sync mit Datei \n...%1\nvom:\n%2\n" }, 705{ "Sync with file \n...%1\nfrom:\n%2\n","Sync mit Datei \n...%1\nvom:\n%2\n" },
707{ "Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n","Synchronisationsübersicht:\n\n %d items lokal hinzugefügt\n %d items entfernt hinzugefügt\n %d items lokal geändert\n %d items entfernt geändert\n %d items lokal gelöscht\n %d items entfernt gelöscht\n" }, 706{ "Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n","Synchronisationsübersicht:\n\n %d items lokal hinzugefügt\n %d items entfernt hinzugefügt\n %d items lokal geändert\n %d items entfernt geändert\n %d items lokal gelöscht\n %d items entfernt gelöscht\n" },
708{ "Synchronization successful","Synchronisation erfolgreich" }, 707{ "Synchronization successful","Synchronisation erfolgreich" },
709{ "Sync cancelled or failed. Nothing synced.","Sync abgebrochen oder fehlgeschlagen. Nichts wurde gesynced." }, 708{ "Sync cancelled or failed. Nothing synced.","Sync abgebrochen oder fehlgeschlagen. Nichts wurde gesynced." },
710{ "Sync file \n...%1\ndoes not exist!\nNothing synced!\n","Sync Datei \n...%1\nexistiert nicht!\nNichts wurde gesynced!\n" }, 709{ "Sync file \n...%1\ndoes not exist!\nNothing synced!\n","Sync Datei \n...%1\nexistiert nicht!\nNichts wurde gesynced!\n" },
711{ "Sync filename(*.ics/*.vcs)","Sync Dateiname(*.ics/*.vcs)" }, 710{ "Sync filename(*.ics/*.vcs)","Sync Dateiname(*.ics/*.vcs)" },
712{ "Enter password","Passwort eingeben" }, 711{ "Enter password","Passwort eingeben" },
713{ "Do you really want\nto remote sync\nwith profile \n","Wollen Sie wirklich\nmit dem entfernten\nProfil syncen: \n" }, 712{ "Do you really want\nto remote sync\nwith profile \n","Wollen Sie wirklich\nmit dem entfernten\nProfil syncen: \n" },
714{ "Copy remote file to local machine...","Kopiere entfernte Datei auf lokalen Rechner..." }, 713{ "Copy remote file to local machine...","Kopiere entfernte Datei auf lokalen Rechner..." },
715{ "Sorry, the copy command failed!\nCommand was:\n%1\n \nTry command on console to get more\ndetailed info about the reason.\n","Sorry, das Kopierkommando schlug fehl!\nKommando war:\n%1\n \nVersuche Kommando von Kosole um\nDetails für das Fehlschlagen\nzu erfahren.\n" }, 714{ "Sorry, the copy command failed!\nCommand was:\n%1\n \nTry command on console to get more\ndetailed info about the reason.\n","Sorry, das Kopierkommando schlug fehl!\nKommando war:\n%1\n \nVersuche Kommando von Kosole um\nDetails für das Fehlschlagen\nzu erfahren.\n" },
716{ "Writing back file result: ","Resultat des Dateizurückschreibens: " }, 715{ "Writing back file result: ","Resultat des Dateizurückschreibens: " },
717{ "Syncronization sucessfully completed","Synchronisation erfolgreich abgeschlossen" }, 716{ "Syncronization sucessfully completed","Synchronisation erfolgreich abgeschlossen" },
718{ "Edit Calendar Filters","Editiere Kalendar Filter" }, 717{ "Edit Calendar Filters","Editiere Kalendar Filter" },
719{ "Enter filter name:","Neuer Filter Name:" }, 718{ "Enter filter name:","Neuer Filter Name:" },
720{ "Add Filter","Filter hinzufügen" }, 719{ "Add Filter","Filter hinzufügen" },
721{ "Question","Frage" }, 720{ "Question","Frage" },
722{ "Filter position: ","Filter Position: " }, 721{ "Filter position: ","Filter Position: " },
723{ "Month View","Monatsansicht" }, 722{ "Month View","Monatsansicht" },
724{ "This profil cannot be deleted!\n","Dieses Profil kann\nnicht gelöscht werden!" }, 723{ "This profil cannot be deleted!\n","Dieses Profil kann\nnicht gelöscht werden!" },
725{ "KO/Pi config error","KO/Pi Konfig. Fehler" }, 724{ "KO/Pi config error","KO/Pi Konfig. Fehler" },
726{ "Local device name undefined!\nPlease define device name!","Name dieses Gerätes undefiniert!\nBitte Namen angeben!" }, 725{ "Local device name undefined!\nPlease define device name!","Name dieses Gerätes undefiniert!\nBitte Namen angeben!" },
727{ "Multiple profiles with same name!\nPlease use unique profile names!","Mehrere Profile haben denselben Namen!\nBitte unterschiedliche Namen wählen!" }, 726{ "Multiple profiles with same name!\nPlease use unique profile names!","Mehrere Profile haben denselben Namen!\nBitte unterschiedliche Namen wählen!" },
728{ "Access: ","Zugriff: " }, 727{ "Access: ","Zugriff: " },
729{ "Needs Action","Aktion notwendig" }, 728{ "Needs Action","Aktion notwendig" },
730{ "Accepted","Akzeptiert" }, 729{ "Accepted","Akzeptiert" },
731{ "Declined","Abgelehnt" }, 730{ "Declined","Abgelehnt" },
732{ "Tentative","Vorläufig" }, 731{ "Tentative","Vorläufig" },
733{ "Delegated","Beauftragt" }, 732{ "Delegated","Beauftragt" },
734{ "Completed","Vollständig" }, 733{ "Completed","Vollständig" },
735{ "In Process","In Bearbeitung" }, 734{ "In Process","In Bearbeitung" },
736{ "Participant","Teilnehmer" }, 735{ "Participant","Teilnehmer" },
737{ "Optional Participant","Möglicher Teilnehmer" }, 736{ "Optional Participant","Möglicher Teilnehmer" },
738{ "Observer","Beobachter" }, 737{ "Observer","Beobachter" },
739{ "Chair","Vorsitzender" }, 738{ "Chair","Vorsitzender" },
740{ "Not supported \non desktop!\n","" }, 739{ "Not supported \non desktop!\n","" },
741{ "Nothing selected!\n\nThis prints the full width of the Agenda view as you see it!\n\nTo determine the vertical range of the printing, please select\na vertical range (with the left mouse button down) in one column. ","Es ist nichts selektiert!\nDieses druckt die volle Breite der Agenda View, so wie man sie sieht.\nUm die vertikale Auswahl zum Drucken zu bestimmen,\nbitte einen vertikalen Zeitraum (mit gedrückter linker Maustaste)\nin einer Spalte auswählen.\n(Es wird danach direkt der Termin Dialog angezeigt\n - dort bitte auf Abbrechen klicken) " }, 740{ "Nothing selected!\n\nThis prints the full width of the Agenda view as you see it!\n\nTo determine the vertical range of the printing, please select\na vertical range (with the left mouse button down) in one column. ","Es ist nichts selektiert!\nDieses druckt die volle Breite der Agenda View, so wie man sie sieht.\nUm die vertikale Auswahl zum Drucken zu bestimmen,\nbitte einen vertikalen Zeitraum (mit gedrückter linker Maustaste)\nin einer Spalte auswählen.\n(Es wird danach direkt der Termin Dialog angezeigt\n - dort bitte auf Abbrechen klicken) " },
742{ "Date range: ","Datums Zeitspanne: " }, 741{ "Date range: ","Datums Zeitspanne: " },
743{ "Not supported \non PDA!\n","Nicht verfügbar\nauf dem PDA. " }, 742{ "Not supported \non PDA!\n","Nicht verfügbar\nauf dem PDA. " },
744{ "Syncing - close to abort!","Syncing-schließe um abzubrechen." }, 743{ "Syncing - close to abort!","Syncing-schließe um abzubrechen." },
745{ "Add / remove events","Add./entferne Termine" }, 744{ "Add / remove events","Add./entferne Termine" },
746{ "File does not exist:\n '%1'.","Datei existiert nicht:\n '%1'." }, 745{ "File does not exist:\n '%1'.","Datei existiert nicht:\n '%1'." },
747{ "Couldn't load calendar\n '%1'.","Kann Kalender nicht laden:\n '%1'." }, 746{ "Couldn't load calendar\n '%1'.","Kann Kalender nicht laden:\n '%1'." },
748{ "Overwrite","Überschreiben" }, 747{ "Overwrite","Überschreiben" },
749{ "Sync+save","Syncen+speichern" }, 748{ "Sync+save","Syncen+speichern" },
750{ "Default","Standard" }, 749{ "Default","Standard" },
751{ " Categories added to list! "," Kategorien zur Liste hinzugefügt! " }, 750{ " Categories added to list! "," Kategorien zur Liste hinzugefügt! " },
752{ " %d items?"," %d Einträge?" }, 751{ " %d items?"," %d Einträge?" },
753{ "\nThis event recurs\nover multiple dates.\nAre you sure you want\nto delete this event\nand all its recurrences?","\nDieses ist ein\nwiederholender Termin!.\nSind Sie sicher, dass Sie\ndiesen Termin und alle\nWiederholungen löschen möchten?" }, 752{ "\nThis event recurs\nover multiple dates.\nAre you sure you want\nto delete this event\nand all its recurrences?","\nDieses ist ein\nwiederholender Termin!.\nSind Sie sicher, dass Sie\ndiesen Termin und alle\nWiederholungen löschen möchten?" },
754{ " ?\n\nDelete:\n"," ?\n\nLösche:\n" }, 753{ " ?\n\nDelete:\n"," ?\n\nLösche:\n" },
755{ "Current","Aktuelle" }, 754{ "Current","Aktuelle" },
756{ "\nThis event recurs\nover multiple dates.\nDo you want to delete\nall it's recurrences,\nor only the current one on:\n","\nDieses ist ein\nwiederholender Termin!\nMöchten sie alle Wiederholungen\nlöschen, oder nur die aktuelle am:\n" }, 755{ "\nThis event recurs\nover multiple dates.\nDo you want to delete\nall it's recurrences,\nor only the current one on:\n","\nDieses ist ein\nwiederholender Termin!\nMöchten sie alle Wiederholungen\nlöschen, oder nur die aktuelle am:\n" },
757{ "All","Alle" }, 756{ "All","Alle" },
758{ "Data Loss Warning","Datenverlust Warnung" }, 757{ "Data Loss Warning","Datenverlust Warnung" },
759{ "Proceed","Weitermachen" }, 758{ "Proceed","Weitermachen" },
760{ "The journal entries can not be\nexported to a vCalendar file.","Die Journal Einträge können\nnicht in eine vCalendar\nDatei exportiert werden!" }, 759{ "The journal entries can not be\nexported to a vCalendar file.","Die Journal Einträge können\nnicht in eine vCalendar\nDatei exportiert werden!" },
761{ "Filter disabled ","Filter abgeschaltet" }, 760{ "Filter disabled ","Filter abgeschaltet" },
762{ "Filter selected: ","Gewählter Filter: " }, 761{ "Filter selected: ","Gewählter Filter: " },
763{ "Toggle Cancel","Gecancelt ändern" }, 762{ "Toggle Cancel","Gecancelt ändern" },
764{ "&Toggle Cancel","Gecancel&t ändern" }, 763{ "&Toggle Cancel","Gecancel&t ändern" },
765{ "Configure Toolbar","Konfiguriere Toolbar" }, 764{ "Configure Toolbar","Konfiguriere Toolbar" },
766{ "Stretched TB","Gedehnte TB" }, 765{ "Stretched TB","Gedehnte TB" },
767{ "Import file \n...%1\ndoes not exist!\nNothing imported!\n","Import Datei \n...%1\nexistiert nicht!\nNichts importiert!\n" }, 766{ "Import file \n...%1\ndoes not exist!\nNothing imported!\n","Import Datei \n...%1\nexistiert nicht!\nNichts importiert!\n" },
768{ "Import filename(*.ics/*.vcs)","Import Dateiname(*.ics/*.vcs)" }, 767{ "Import filename(*.ics/*.vcs)","Import Dateiname(*.ics/*.vcs)" },
769{ "When importing a calendar twice\nduplicated events will be ignored!\nYou can create a backup file with\nFile - Save Calendar Backup\nto revert importing","Wenn ein Kalender doppelt importiert\nwird, werden doppelte Einträge ignoriert!\nSie können eine Backup Datei anlegen unter\nDatei - Speichere Kalender Backup\num den Import rückgängig machen zu können.\n" }, 768{ "When importing a calendar twice\nduplicated events will be ignored!\nYou can create a backup file with\nFile - Save Calendar Backup\nto revert importing","Wenn ein Kalender doppelt importiert\nwird, werden doppelte Einträge ignoriert!\nSie können eine Backup Datei anlegen unter\nDatei - Speichere Kalender Backup\num den Import rückgängig machen zu können.\n" },
770{ "Not supported \non desktop!\n","Nur verfügbar auf PDA!" }, 769{ "Not supported \non desktop!\n","Nur verfügbar auf PDA!" },
771{ "Imported file successfully","Datei erfolgreich importiert" }, 770{ "Imported file successfully","Datei erfolgreich importiert" },
772{ "Error importing file","Fehler beim Importieren der Datei" }, 771{ "Error importing file","Fehler beim Importieren der Datei" },
773{ "Export vcal filename(*.vcs)","Export vcal Dateiname(*.vcs)" }, 772{ "Export vcal filename(*.vcs)","Export vcal Dateiname(*.vcs)" },
774{ "Save file\nalready exists!\nOld save file from:\n%1\nOverwrite?\n","Zu speichernde Datei\existiert bereits!\nExist. Datei vom:\n%1\nÜberschreiben?\n" }, 773{ "Save file\nalready exists!\nOld save file from:\n%1\nOverwrite?\n","Zu speichernde Datei\existiert bereits!\nExist. Datei vom:\n%1\nÜberschreiben?\n" },
775{ "Overwrite!","Überschreiben!" }, 774{ "Overwrite!","Überschreiben!" },
776{ "Import file \n...%1\nfrom:\n%2\nDuplicated entries\nwill not be imported!\n","Import Datei \n...%1\nvom:\n%2\nDuplizierte Einträge\nwerden nicht importiert!\n" }, 775{ "Import file \n...%1\nfrom:\n%2\nDuplicated entries\nwill not be imported!\n","Import Datei \n...%1\nvom:\n%2\nDuplizierte Einträge\nwerden nicht importiert!\n" },
777{ "Load backup filename","Lade Backup Dateiname" }, 776{ "Load backup filename","Lade Backup Dateiname" },
778{ "Backup file\ndoes not exist!\nNothing loaded!","Backup Datei\nexistiert nicht!\nNichts geladen!" }, 777{ "Backup file\ndoes not exist!\nNothing loaded!","Backup Datei\nexistiert nicht!\nNichts geladen!" },
779{ "KO/Pi:Loaded %1","KO/Pi:Geladen %1" }, 778{ "KO/Pi:Loaded %1","KO/Pi:Geladen %1" },
780{ "Save backup filename","Speichere Backup Dateiname" }, 779{ "Save backup filename","Speichere Backup Dateiname" },
781{ "Backup file\nalready exists!\nOld backup file from:\n%1\nOverwrite?\n","Backup Datei\nexistiert bereits!\nAlte Backup Datei vom:\n%1\nÜberschreiben?\n" }, 780{ "Backup file\nalready exists!\nOld backup file from:\n%1\nOverwrite?\n","Backup Datei\nexistiert bereits!\nAlte Backup Datei vom:\n%1\nÜberschreiben?\n" },
782{ "KO/Pi:Saved %1","KO/Pi:Gespeichert %1" }, 781{ "KO/Pi:Saved %1","KO/Pi:Gespeichert %1" },
783{ "Details of attendee","Teilnehmerdetails" }, 782{ "Details of attendee","Teilnehmerdetails" },
784{ "Work phone:\n","Telefon Arbeit:\n" }, 783{ "Work phone:\n","Telefon Arbeit:\n" },
785{ "Work mobile phone:\n","Mobiltelefon Arbeit:\n" }, 784{ "Work mobile phone:\n","Mobiltelefon Arbeit:\n" },
786{ "Home phone:\n","Telefon privat:\n" }, 785{ "Home phone:\n","Telefon privat:\n" },
787{ "Mobile home phone:\n","Mobiltelefon privat:\n" }, 786{ "Mobile home phone:\n","Mobiltelefon privat:\n" },
788{ "Email:\n","Email:\n" }, 787{ "Email:\n","Email:\n" },
789{ "Alarm disabled for this item","Alarm deaktiviert für dieses Item" }, 788{ "Alarm disabled for this item","Alarm deaktiviert für dieses Item" },
790{ "Audio Al.: ","Audio Al.: " }, 789{ "Audio Al.: ","Audio Al.: " },
791{ "Proc.Al.: ","Proz.Al.: " }, 790{ "Proc.Al.: ","Proz.Al.: " },
792{ "No sound set","Kein Sound definiert" }, 791{ "No sound set","Kein Sound definiert" },
793{ "*.wav|Wav Files","*.wav|Wav Dateien" }, 792{ "*.wav|Wav Files","*.wav|Wav Dateien" },
794{ "No program set","Kein Programm definiert" }, 793{ "No program set","Kein Programm definiert" },
795{ "Running '%1'","Ausführen '%1'" }, 794{ "Running '%1'","Ausführen '%1'" },
796{ "Playing '%1'","Abspielen '%1'" }, 795{ "Playing '%1'","Abspielen '%1'" },
797{ "User defined (usertranslation.txt)","Benutzerdefiniert (usertranslation.txt)" }, 796{ "User defined (usertranslation.txt)","Benutzerdefiniert (usertranslation.txt)" },
798{ "Load!","Laden!" }, 797{ "Load!","Laden!" },
799{ "Backup file from:\n%1\nLoading backup\nfile will delete\nyour current Data!\n","Backup Datei vom:\n%1\nDas Laden der Backup Datei\nlöscht die aktuellen Daten!\n" }, 798{ "Backup file from:\n%1\nLoading backup\nfile will delete\nyour current Data!\n","Backup Datei vom:\n%1\nDas Laden der Backup Datei\nlöscht die aktuellen Daten!\n" },
800{ "KO/Pi Features and hints","KO/Pi Eigenschaften und Tipps" }, 799{ "KO/Pi Features and hints","KO/Pi Eigenschaften und Tipps" },
801{ "KO/Pi User translation HowTo","KO/Pi Benutzer-Übersetzung HowTo" }, 800{ "KO/Pi User translation HowTo","KO/Pi Benutzer-Übersetzung HowTo" },
802{ "KO/Pi Synchronization HowTo","KO/Pi Synchronisation HowTo" }, 801{ "KO/Pi Synchronization HowTo","KO/Pi Synchronisation HowTo" },
803{ "Features + hints...","Eigenschaften + Tipps..." }, 802{ "Features + hints...","Eigenschaften + Tipps..." },
804{ "User translation...","Benutzer Übersetzung..." }, 803{ "User translation...","Benutzer Übersetzung..." },
805{ "Sync HowTo...","Synchronisation HowTo..." }, 804{ "Sync HowTo...","Synchronisation HowTo..." },
806{ "Print calendar...","Drucke Kalender..." }, 805{ "Print calendar...","Drucke Kalender..." },
807{ "Anniversary","Jahrestag" }, 806{ "Anniversary","Jahrestag" },
808{ "When importing birthdays twice\nduplicated events will be ignored,\nif the event has not been\nchanged in KO/Pi!\n","Wenn Geburtstage mehrfach importiert\nwerden, werden doppelte Einträge ignoriert\nwenn sie nicht verändert wurden.\n" }, 807{ "When importing birthdays twice\nduplicated events will be ignored,\nif the event has not been\nchanged in KO/Pi!\n","Wenn Geburtstage mehrfach importiert\nwerden, werden doppelte Einträge ignoriert\nwenn sie nicht verändert wurden.\n" },
809{ "Import Birthdays (KA/Pi)","Importiere Geburtstage (KA/Pi)" }, 808{ "Import Birthdays (KA/Pi)","Importiere Geburtstage (KA/Pi)" },
810{ "Next recurrence is on: ","Nächste Wiederholung ist am:" }, 809{ "Next recurrence is on: ","Nächste Wiederholung ist am:" },
811{ "<b>Alarm on: </b>","<b>Alarm am: </b>" }, 810{ "<b>Alarm on: </b>","<b>Alarm am: </b>" },
812{ "<b>Access: </b>","<b>Zugriff: </b>" }, 811{ "<b>Access: </b>","<b>Zugriff: </b>" },
813{ "(%1 min before)","(%1 min vorher)" }, 812{ "(%1 min before)","(%1 min vorher)" },
814{ "<b>Categories: </b>","<b>Kategorien: </b>" }, 813{ "<b>Categories: </b>","<b>Kategorien: </b>" },
815{ "Save Journal/Description...","Speichere Journal/Details..." }, 814{ "Save Journal/Description...","Speichere Journal/Details..." },
816{ "This saves the text/details of selected\nJournals and Events/Todos\nto a text file.","Das speichert den Text bzw.\ndie Details von selektierten\nJournalen und Events/Todos\nin eine Textdatei." }, 815{ "This saves the text/details of selected\nJournals and Events/Todos\nto a text file.","Das speichert den Text bzw.\ndie Details von selektierten\nJournalen und Events/Todos\nin eine Textdatei." },
817{ "Continue","Weitermachen" }, 816{ "Continue","Weitermachen" },
818{ " birthdays/anniversaries added!"," Geburts-/Jahrestage hinzugefügt" }, 817{ " birthdays/anniversaries added!"," Geburts-/Jahrestage hinzugefügt" },
819{ "Attendee:","Teilnehmer:" }, 818{ "Attendee:","Teilnehmer:" },
820{ "Click OK to search ->","Klicke zum Suchen auf OK ->" }, 819{ "Click OK to search ->","Klicke zum Suchen auf OK ->" },
821{ "On day ","Am Tag " }, 820{ "On day ","Am Tag " },
822{ "%1 of ","%1 des Monats" }, 821{ "%1 of ","%1 des Monats" },
823{ "%1 of the year","%1 des Jahres" }, 822{ "%1 of the year","%1 des Jahres" },
824{ "Anonymous","Anonymo" }, 823{ "Anonymous","Anonymo" },
825{ "nobody@nowhere","niemand@nirgendwo" }, 824{ "nobody@nowhere","niemand@nirgendwo" },
826{ "calendar.html","calendar.html" }, 825{ "calendar.html","calendar.html" },
827{ " Local Time"," Lokale Zeit" }, 826{ " Local Time"," Lokale Zeit" },
828{ "Unknown Name","Unbekannter Name" }, 827{ "Unknown Name","Unbekannter Name" },
829{ "unknown@nowhere","unbekannt@nirgendwo" }, 828{ "unknown@nowhere","unbekannt@nirgendwo" },
830{ "Beam via IR!","Beam via IR!" }, 829{ "Beam via IR!","Beam via IR!" },
831{ "Next Month","Nächster Monat" }, 830{ "Next Month","Nächster Monat" },
832{ "Prio","Prio" }, 831{ "Prio","Prio" },
833{ "Reparent Todo","Mache Sub-Todo" }, 832{ "Reparent Todo","Mache Sub-Todo" },
834{ "tomorrow","morgen" }, 833{ "tomorrow","morgen" },
835{ "today","heute" }, 834{ "today","heute" },
836{ "yesterday","gestern" }, 835{ "yesterday","gestern" },
837{ "Ok","Ok" }, 836{ "Ok","Ok" },
838{ "Ok+Agenda","Ok+Agenda" }, 837{ "Ok+Agenda","Ok+Agenda" },
839{ "Email","Email" }, 838{ "Email","Email" },
840{ "RSVP","RSVP" }, 839{ "RSVP","RSVP" },
841{ "Email:","Email:" }, 840{ "Email:","Email:" },
842{ "Appointment Time ","Termin Zeit " }, 841{ "Appointment Time ","Termin Zeit " },
843{ "2","2" }, 842{ "2","2" },
844{ "3","3" }, 843{ "3","3" },
845{ "4","4" }, 844{ "4","4" },
846{ " 0 %"," 0 %" }, 845{ " 0 %"," 0 %" },
847{ " 20 %"," 20 %" }, 846{ " 20 %"," 20 %" },
848{ " 40 %"," 40 %" }, 847{ " 40 %"," 40 %" },
849{ " 60 %"," 60 %" }, 848{ " 60 %"," 60 %" },
850{ " 80 %"," 80 %" }, 849{ " 80 %"," 80 %" },
851{ "100 %","100 %" }, 850{ "100 %","100 %" },
852{ "Filter","Filter" }, 851{ "Filter","Filter" },
853{ "Configure","Konfiguriere" }, 852{ "Configure","Konfiguriere" },
854{ "What's Next","What's Next" }, 853{ "What's Next","What's Next" },
855{ "Complete calendar...","Kompletten Kalender..." }, 854{ "Complete calendar...","Kompletten Kalender..." },
856{ "Filtered calendar...","Gefilterten Kalender..." }, 855{ "Filtered calendar...","Gefilterten Kalender..." },
857{ "Export to phone","Exportiere zum Handy" }, 856{ "Export to phone","Exportiere zum Handy" },
858{ "Beam receive enabled","Beam Empfang an" }, 857{ "Beam receive enabled","Beam Empfang an" },
859{ "What's new?","Was ist neu?" }, 858{ "What's new?","Was ist neu?" },
860{ "FAQ...","FAQ..." }, 859{ "FAQ...","FAQ..." },
861{ "Licence...","Licence..." }, 860{ "Licence...","Licence..." },
862{ "What's This?","What's This?" }, 861{ "What's This?","What's This?" },
863{ "&Edit...","&Editiere..." }, 862{ "&Edit...","&Editiere..." },
864{ "Oktober","Oktober" }, 863{ "Oktober","Oktober" },
865{ "Title","Titel" }, 864{ "Title","Titel" },
866{ "%1 %","%1 %" }, 865{ "%1 %","%1 %" },
867{ "Enable Pi-Sync","Schalte Pi-Sync an" }, 866{ "Enable Pi-Sync","Schalte Pi-Sync an" },
868{ "Import!","Importiere!" }, 867{ "Import!","Importiere!" },
869{ "inserting birthdays - close to abort!","Burzeltage werden eingefügt - schließe um abzubrechen!" }, 868{ "inserting birthdays - close to abort!","Burzeltage werden eingefügt - schließe um abzubrechen!" },
870{ "Export to phone options","Export ans Handy Optionen" }, 869{ "Export to phone options","Export ans Handy Optionen" },
871{ "Please read Help-Sync Howto\nto know what settings to use.","Bitte lese Hilfe-Sync Howto\num zu erfahren welche Einstellungen\ndie richtigen sind." }, 870{ "Please read Help-Sync Howto\nto know what settings to use.","Bitte lese Hilfe-Sync Howto\num zu erfahren welche Einstellungen\ndie richtigen sind." },
872{ "I/O device: ","I/O device: " }, 871{ "I/O device: ","I/O device: " },
873{ "Connection: ","Connection: " }, 872{ "Connection: ","Connection: " },
874{ "Model(opt.): ","Model(opt.): " }, 873{ "Model(opt.): ","Model(opt.): " },
875{ "Write back events in future only","Schreibe nur zukünftige Termine zurück" }, 874{ "Write back events in future only","Schreibe nur zukünftige Termine zurück" },
876{ "Max. weeks in future: ","Max. Wochen in der Zukunft: " }, 875{ "Max. weeks in future: ","Max. Wochen in der Zukunft: " },
877{ "NOTE: This will remove all old\ntodo/calendar data on phone!","ACHTUNG: Das löscht alle alten\nTodo/Kalender Daten auf dem Handy!" }, 876{ "NOTE: This will remove all old\ntodo/calendar data on phone!","ACHTUNG: Das löscht alle alten\nTodo/Kalender Daten auf dem Handy!" },
878{ "Export to mobile phone!","Exportiere auf das Handy!" }, 877{ "Export to mobile phone!","Exportiere auf das Handy!" },
879{ "Export complete calendar","Exportiere kompletten Kalender" }, 878{ "Export complete calendar","Exportiere kompletten Kalender" },
880{ "Writing to phone...","Sende Daten ans Handy..." }, 879{ "Writing to phone...","Sende Daten ans Handy..." },
881{ " This may take 1-3 minutes!"," Das kann 1-3 Minuten dauern!" }, 880{ " This may take 1-3 minutes!"," Das kann 1-3 Minuten dauern!" },
882{ "Retry","Nochmal versuchen" }, 881{ "Retry","Nochmal versuchen" },
883{ "KDE/Pim phone access","KDE/Pim Handy Zugriff" }, 882{ "KDE/Pim phone access","KDE/Pim Handy Zugriff" },
884{ "Error accessing device!\nPlease turn on connection\nand retry!","Fehler beim Zugriff auf das Gerät!\nBitte die Verbindung aktivieren\nund nochmal versuchen!" }, 883{ "Error accessing device!\nPlease turn on connection\nand retry!","Fehler beim Zugriff auf das Gerät!\nBitte die Verbindung aktivieren\nund nochmal versuchen!" },
885{ "Error exporting to phone!","Fehler beim Export auf das Handy!" }, 884{ "Error exporting to phone!","Fehler beim Export auf das Handy!" },
886{ "Export filtered calendar","Exportiere gefilterten Kalender" }, 885{ "Export filtered calendar","Exportiere gefilterten Kalender" },
887{ "Preferences","Vorlieben" }, 886{ "Preferences","Vorlieben" },
888{ "Global","Global" }, 887{ "Global","Global" },
889{ "Phone","Phone" }, 888{ "Phone","Phone" },
890{ "SMS","SMS" }, 889{ "SMS","SMS" },
891{ "Fax","Fax" }, 890{ "Fax","Fax" },
892{ "Pager","Pager" }, 891{ "Pager","Pager" },
893{ "SIP","SIP" }, 892{ "SIP","SIP" },
894{ "Italian","Italienisch" }, 893{ "Italian","Italienisch" },
895{ "24:00","24:00" }, 894{ "24:00","24:00" },
896{ "12:00am","12:00am" }, 895{ "12:00am","12:00am" },
897{ "24.03.2004 (%d.%m.%Y|%A %d %B %Y)","24.03.2004 (%d.%m.%Y|%A %d %B %Y)" }, 896{ "24.03.2004 (%d.%m.%Y|%A %d %B %Y)","24.03.2004 (%d.%m.%Y|%A %d %B %Y)" },
898{ "03.24.2004 (%m.%d.%Y|%A %B %d %Y)","03.24.2004 (%m.%d.%Y|%A %B %d %Y)" }, 897{ "03.24.2004 (%m.%d.%Y|%A %B %d %Y)","03.24.2004 (%m.%d.%Y|%A %B %d %Y)" },
899{ "2004-03-24 (%Y-%m-%d|%A %Y %B %d)","2004-03-24 (%Y-%m-%d|%A %Y %B %d)" }, 898{ "2004-03-24 (%Y-%m-%d|%A %Y %B %d)","2004-03-24 (%Y-%m-%d|%A %Y %B %d)" },
900{ "Mon 19.04.04: %a %d.%m.%y","Mon 19.04.04: %a %d.%m.%y" }, 899{ "Mon 19.04.04: %a %d.%m.%y","Mon 19.04.04: %a %d.%m.%y" },
901{ "Mon, 19.Apr.04: %a, %d.%b.%y","Mon, 19.Apr.04: %a, %d.%b.%y" }, 900{ "Mon, 19.Apr.04: %a, %d.%b.%y","Mon, 19.Apr.04: %a, %d.%b.%y" },
902{ "Add 30 min to selected Timezone","Addiere 30 min zur Zeitzone" }, 901{ "Add 30 min to selected Timezone","Addiere 30 min zur Zeitzone" },
903{ "Used Mail Client","Benutzter Mail Client" }, 902{ "Used Mail Client","Benutzter Mail Client" },
904{ "Channel:","Channel:" }, 903{ "Channel:","Channel:" },
905{ "Message:","Message:" }, 904{ "Message:","Message:" },
906{ "Parameters:","Parameter:" }, 905{ "Parameters:","Parameter:" },
907{ "HINT: Delimiter=; Name=%1,Email=%2","Hinweis: Begrenzer=; Name=%1,Email=%2" }, 906{ "HINT: Delimiter=; Name=%1,Email=%2","Hinweis: Begrenzer=; Name=%1,Email=%2" },
908{ "extra Message:","extra Message:" }, 907{ "extra Message:","extra Message:" },
909{ "extra Parameters:","extra Parameter:" }, 908{ "extra Parameters:","extra Parameter:" },
910{ "HINT: Emails=%1,Attachments=%2","Hinweis: Emails=%1,Attachments=%2" }, 909{ "HINT: Emails=%1,Attachments=%2","Hinweis: Emails=%1,Attachments=%2" },
911{ "External Apps.","Externe Appl." }, 910{ "External Apps.","Externe Appl." },
912{ "24 hours","24 Std." }, 911{ "24 hours","24 Std." },
913{ "3 hours","3 Std." }, 912{ "3 hours","3 Std." },
914{ "1 hour","1 Std." }, 913{ "1 hour","1 Std." },
915{ "15 minutes","15 Min." }, 914{ "15 minutes","15 Min." },
916{ "5 minutes","5 Min." }, 915{ "5 minutes","5 Min." },
917{ "1 minute","1 Min." }, 916{ "1 minute","1 Min." },
918{ "23","23" }, 917{ "23","23" },
919{ "Mon 15","Mon 15" }, 918{ "Mon 15","Mon 15" },
920{ "Configure KO","Konfiguriere KO" }, 919{ "Configure KO","Konfiguriere KO" },
921{ "Event text","Termin Text" }, 920{ "Event text","Termin Text" },
922{ "ToDo","Todo" }, 921{ "ToDo","Todo" },
923{ "Today","Heute" }, 922{ "Today","Heute" },
924{ "What's Next View","What's Next Ansicht" }, 923{ "What's Next View","What's Next Ansicht" },
925{ "Allday Agenda view shows todos","Ganztag Agenda zeigt Todos" }, 924{ "Allday Agenda view shows todos","Ganztag Agenda zeigt Todos" },
926{ "Alarm","Alarm" }, 925{ "Alarm","Alarm" },
927{ "Used %1 Client","Benutzter %1 Client" }, 926{ "Used %1 Client","Benutzter %1 Client" },
928{ "No email client installed","Kein Email Klient installiert" }, 927{ "No email client installed","Kein Email Klient installiert" },
929{ "Userdefined email client","Benutzerdef. Email Klient" }, 928{ "Userdefined email client","Benutzerdef. Email Klient" },
930{ "OM/Pi email client","OM/Pi Email Klient" }, 929{ "OM/Pi email client","OM/Pi Email Klient" },
931{ "Include in multiple ","Beziehe in multiple " }, 930{ "Include in multiple ","Beziehe in multiple " },
932{ "calendar ","Kalender " }, 931{ "calendar ","Kalender " },
933{ "addressbook ","Adressbuch " }, 932{ "addressbook ","Adressbuch " },
934{ "pwmanager","PWmanager" }, 933{ "pwmanager","PWmanager" },
935{ " sync"," Sync ein" }, 934{ " sync"," Sync ein" },
936{ "Write back synced data","Schreibe gesyncte Daten zurück" }, 935{ "Write back synced data","Schreibe gesyncte Daten zurück" },
937{ "-- Write back (on remote) existing entries only","-- Schreibe nur existierende (entfernte) Einträge zurück" }, 936{ "-- Write back (on remote) existing entries only","-- Schreibe nur existierende (entfernte) Einträge zurück" },
938{ "-- Write back (calendar) entries in future only","-- Schreibe nur zukünftige Kalender-Einträge zurück" }, 937{ "-- Write back (calendar) entries in future only","-- Schreibe nur zukünftige Kalender-Einträge zurück" },
939{ "---- Max. weeks in future: ","---- Max. wochen in der Zukunft: " }, 938{ "---- Max. weeks in future: ","---- Max. wochen in der Zukunft: " },
940{ "Pi-Sync ( direct Kx/Pi to Kx/Pi sync )","Pi-Sync ( direktes Kx/Pi zu Kx/Pi sync )" }, 939{ "Pi-Sync ( direct Kx/Pi to Kx/Pi sync )","Pi-Sync ( direktes Kx/Pi zu Kx/Pi sync )" },
941{ "Mobile device (cell phone)","Mobiles Gerät (Handy)" }, 940{ "Mobile device (cell phone)","Mobiles Gerät (Handy)" },
942{ "Help...","Hilfe..." }, 941{ "Help...","Hilfe..." },
943{ "Local file Cal:","Lokale Datei Kal:" }, 942{ "Local file Cal:","Lokale Datei Kal:" },
944{ "Local file ABook:","Lokale Datei ABuch:" }, 943{ "Local file ABook:","Lokale Datei ABuch:" },
945{ "Local file PWMgr:","Lokale Datei PWMgr:" }, 944{ "Local file PWMgr:","Lokale Datei PWMgr:" },
946{ "Addressbook file (*.vcf) is used by KA/Pi","Adressbuch Datei (*.vcf) wird von KA/Pi genutzt" }, 945{ "Addressbook file (*.vcf) is used by KA/Pi","Adressbuch Datei (*.vcf) wird von KA/Pi genutzt" },
947{ "Calendar:","Kalender:" }, 946{ "Calendar:","Kalender:" },
948{ "AddressBook:","AdressBuch:" }, 947{ "AddressBook:","AdressBuch:" },
949{ "PWManager:","PWManager:" }, 948{ "PWManager:","PWManager:" },
950{ "Addressbook file is used by KA/Pi","Adressbuch Datei wird von KA/Pi genutzt" }, 949{ "Addressbook file is used by KA/Pi","Adressbuch Datei wird von KA/Pi genutzt" },
951{ "ssh/scp","ssh/scp" }, 950{ "ssh/scp","ssh/scp" },
952{ "ftp","ftp" }, 951{ "ftp","ftp" },
953{ "Password for remote access: (could be the same for each)","Passwort für entfernten Zugriff: (kann dasselbe sein für alle)" }, 952{ "Password for remote access: (could be the same for each)","Passwort für entfernten Zugriff: (kann dasselbe sein für alle)" },
954{ "Remote IP address: (could be the same for each)","Entfernte IP Adresse: (kann dasselbe sein für alle)" }, 953{ "Remote IP address: (could be the same for each)","Entfernte IP Adresse: (kann dasselbe sein für alle)" },
955{ "Remote port number: (should be different for each)","Entfernte Port Nummer: (Sollte für alle unterschiedlich sein)" }, 954{ "Remote port number: (should be different for each)","Entfernte Port Nummer: (Sollte für alle unterschiedlich sein)" },
956{ "command for downloading remote file to local device","Kommando zum Download der entfernten Datei zum lokalen Gerät" }, 955{ "command for downloading remote file to local device","Kommando zum Download der entfernten Datei zum lokalen Gerät" },
957{ "command for uploading local temp file to remote device","Kommando zum Upload der lokalen temp. Datei zum entfernten Gerät" }, 956{ "command for uploading local temp file to remote device","Kommando zum Upload der lokalen temp. Datei zum entfernten Gerät" },
958{ "Insert device where\nphone is connected. E.g.:\n","Füge Device ein, an dem\ndas Handy angeschlossen ist. Z.B.:\n" }, 957{ "Insert device where\nphone is connected. E.g.:\n","Füge Device ein, an dem\ndas Handy angeschlossen ist. Z.B.:\n" },
959{ "KDE-Pim sync config","KDE-Pim sync Konfig" }, 958{ "KDE-Pim sync config","KDE-Pim sync Konfig" },
960{ "Insert kind of connection,e.g.:\n","Füge Art der Verbindung ein,z.B.:\n" }, 959{ "Insert kind of connection,e.g.:\n","Füge Art der Verbindung ein,z.B.:\n" },
961{ "Recommended: Leave empty!\n(Such that model can\nbe auto detected)\nOr insert name of model:\n","Empfohlen: Leer lassen!\n(So dass das Model\nautomatisch erkannt\nwerden kann)\nOder füge Model Name ein:\n" }, 960{ "Recommended: Leave empty!\n(Such that model can\nbe auto detected)\nOr insert name of model:\n","Empfohlen: Leer lassen!\n(So dass das Model\nautomatisch erkannt\nwerden kann)\nOder füge Model Name ein:\n" },
962{ "Port number (Default: %1)","Port Nummer (Default: %1)" }, 961{ "Port number (Default: %1)","Port Nummer (Default: %1)" },
963{ "Password to enable\naccess from remote:","Passwort um entfernten\nZugriff zuzulassen:" }, 962{ "Password to enable\naccess from remote:","Passwort um entfernten\nZugriff zuzulassen:" },
964{ "Automatically start\nat application startup","Starte automatisch\nbeim Programmstart" }, 963{ "Automatically start\nat application startup","Starte automatisch\nbeim Programmstart" },
965{ "Automatically sync\nwith KDE-Desktop","Automatischer Sync\nmit dem KDE-Desktop" }, 964{ "Automatically sync\nwith KDE-Desktop","Automatischer Sync\nmit dem KDE-Desktop" },
966{ "Enter port for Pi-Sync","Port Nummer für Pi-Sync" }, 965{ "Enter port for Pi-Sync","Port Nummer für Pi-Sync" },
967{ "Disable Pi-Sync","Schalte Pi-Sync aus" }, 966{ "Disable Pi-Sync","Schalte Pi-Sync aus" },
968{ "Do you really want\nto multiple sync\nwith all checked profiles?\nSyncing takes some\ntime - all profiles\nare synced twice!","Wollen Sie wirklich\nmit allen selektierten\nProfilen "Multi-Syncen"?\nDas Syncen dauert einige Zeit -\nalle Profile werden zweimal gesynct!" }, 967{ "Do you really want\nto multiple sync\nwith all checked profiles?\nSyncing takes some\ntime - all profiles\nare synced twice!","Wollen Sie wirklich\nmit allen selektierten\nProfilen "Multi-Syncen"?\nDas Syncen dauert einige Zeit -\nalle Profile werden zweimal gesynct!" },
969{ "KDE-Pim Sync","KDE-Pim Sync" }, 968{ "KDE-Pim Sync","KDE-Pim Sync" },
970{ "Multiple profiles","Multi-Sync Profile" }, 969{ "Multiple profiles","Multi-Sync Profile" },
971{ "Device: ","Gerät: " }, 970{ "Device: ","Gerät: " },
972{ "Multiple sync started.","Multi-Sync gestartet." }, 971{ "Multiple sync started.","Multi-Sync gestartet." },
973{ "Nothing synced! No profiles defined for multisync!","Nichts gesynct! Keine Profile\nselektiert für Multi-Sync" }, 972{ "Nothing synced! No profiles defined for multisync!","Nichts gesynct! Keine Profile\nselektiert für Multi-Sync" },
974{ "Turn filter on","Schalte Filter an" }, 973{ "Turn filter on","Schalte Filter an" },
975{ "Turn filter off","Schalte Filter aus" }, 974{ "Turn filter off","Schalte Filter aus" },
976{ "Key bindings KOrganizer/Pi","Tastatur Belegung KOrganizer/Pi" }, 975{ "Key bindings KOrganizer/Pi","Tastatur Belegung KOrganizer/Pi" },
977{ "<p><b>White</b>: Item readonly</p>\n","<p><b>Weiss</b>: Eintrag schreibgeschützt</p>\n" }, 976{ "<p><b>White</b>: Item readonly</p>\n","<p><b>Weiss</b>: Eintrag schreibgeschützt</p>\n" },
978{ "<p><b>Dark yellow</b>: Event/todo with attendees.</p>\n","<p><b>Dunkelgelb</b>: Termin/Todo mit Teilnehmern.</p>\n" }, 977{ "<p><b>Dark yellow</b>: Event/todo with attendees.</p>\n","<p><b>Dunkelgelb</b>: Termin/Todo mit Teilnehmern.</p>\n" },
979{ "<p><b>Black</b>: Event/todo with attendees. You are the organizer!</p>\n","<p><b>Schwarz</b>: Termin/Todo mit Teilnehmern. Sie sind der Organisator!</p>\n" }, 978{ "<p><b>Black</b>: Event/todo with attendees. You are the organizer!</p>\n","<p><b>Schwarz</b>: Termin/Todo mit Teilnehmern. Sie sind der Organisator!</p>\n" },
980{ "<p><b>Dark green</b>: Information(description) available.([i] in WN view)</p>\n","<p><b>Dunkelgrün</b>: Information(Beschreibung) verfügbar.([i] in WN Ansicht)</p>\n" }, 979{ "<p><b>Dark green</b>: Information(description) available.([i] in WN view)</p>\n","<p><b>Dunkelgrün</b>: Information(Beschreibung) verfügbar.([i] in WN Ansicht)</p>\n" },
981{ "<p><b>Blue</b>: Recurrent event.([r] in Whats'Next view)</p>\n","<p><b>Blau</b>: Wiederholender Termin.([r] in Whats'Next Ansicht)</p>\n" }, 980{ "<p><b>Blue</b>: Recurrent event.([r] in Whats'Next view)</p>\n","<p><b>Blau</b>: Wiederholender Termin.([r] in Whats'Next Ansicht)</p>\n" },
982{ "<p><b>Red</b>: Alarm set.([a] in Whats'Next view)</p>\n","<p><b>Rot</b>: Alarm gesetzt.([a] in Whats'Next Ansicht)</p>\n" }, 981{ "<p><b>Red</b>: Alarm set.([a] in Whats'Next view)</p>\n","<p><b>Rot</b>: Alarm gesetzt.([a] in Whats'Next Ansicht)</p>\n" },
983{ "<p><b>Cross</b>: Item cancelled.([c] in Whats'Next view)</p>\n","<p><b>Kreuz</b>: Eintrag gecancelt.([c] in Whats'Next Ansicht)</p>\n" }, 982{ "<p><b>Cross</b>: Item cancelled.([c] in Whats'Next view)</p>\n","<p><b>Kreuz</b>: Eintrag gecancelt.([c] in Whats'Next Ansicht)</p>\n" },
984{ "<p><b>(for square icons in agenda and month view)</b></p>\n","<p><b>(für quadratische Icons in Agenda und Monats Ansicht)</b></p>\n" }, 983{ "<p><b>(for square icons in agenda and month view)</b></p>\n","<p><b>(für quadratische Icons in Agenda und Monats Ansicht)</b></p>\n" },
985{ "<p><h2>KO/Pi icon colors:</h2></p>\n","<p><h2>KO/Pi Icon Farben:</h2></p>\n" }, 984{ "<p><h2>KO/Pi icon colors:</h2></p>\n","<p><h2>KO/Pi Icon Farben:</h2></p>\n" },
986{ "<p><b>E</b>: Edit item</p>\n","<p><b>E</b>: Editiere Eintrag</p>\n" }, 985{ "<p><b>E</b>: Edit item</p>\n","<p><b>E</b>: Editiere Eintrag</p>\n" },
987{ "<p><b>A</b>: Show agenda view.</p>\n","<p><b>A</b>: Zeige Agenda Ansicht.</p>\n" }, 986{ "<p><b>A</b>: Show agenda view.</p>\n","<p><b>A</b>: Zeige Agenda Ansicht.</p>\n" },
988{ "<p><b>I,C</b>: Close dialog.</p>\n","<p><b>I,C</b>: Schließe Dialog.</p>\n" }, 987{ "<p><b>I,C</b>: Close dialog.</p>\n","<p><b>I,C</b>: Schließe Dialog.</p>\n" },
989{ "<p><h3>In event/todo viewer:</h3></p>\n","<p><h3>In Termin/Todo Detail-Anzeige:</h3></p>\n" }, 988{ "<p><h3>In event/todo viewer:</h3></p>\n","<p><h3>In Termin/Todo Detail-Anzeige:</h3></p>\n" },
990{ "<p><b>shift+up/down</b>: Goto first/last item</p>\n","<p><b>shift+up/down</b>: Gehe zum ersten/letzten Eintrag</p>\n" }, 989{ "<p><b>shift+up/down</b>: Goto first/last item</p>\n","<p><b>shift+up/down</b>: Gehe zum ersten/letzten Eintrag</p>\n" },
991{ "<p><b>ctrl+up/down</b>: Goto up/down by 20% of items</p>\n","<p><b>ctrl+up/down</b>: Gehe hoch/runter 20% aller Einträge</p>\n" }, 990{ "<p><b>ctrl+up/down</b>: Goto up/down by 20% of items</p>\n","<p><b>ctrl+up/down</b>: Gehe hoch/runter 20% aller Einträge</p>\n" },
992{ "<p><b>up/down</b>: Next/prev item</p>\n","<p><b>up/down</b>: Nächster/vorheriger Eintrag</p>\n" }, 991{ "<p><b>up/down</b>: Next/prev item</p>\n","<p><b>up/down</b>: Nächster/vorheriger Eintrag</p>\n" },
993{ "<p><b>return+shift</b>: Deselect item+one step down</p>\n","<p><b>return+shift</b>: Deselektiere Item+Cursor einen Eintrag runter</p>\n" }, 992{ "<p><b>return+shift</b>: Deselect item+one step down</p>\n","<p><b>return+shift</b>: Deselektiere Item+Cursor einen Eintrag runter</p>\n" },
994{ "<p><b>return</b>: Select item+one step down</p>\n","<p><b>return</b>: Selektiere Item+Cursor einen Eintrag runter</p>\n" }, 993{ "<p><b>return</b>: Select item+one step down</p>\n","<p><b>return</b>: Selektiere Item+Cursor einen Eintrag runter</p>\n" },
995{ "<p><b>I</b>: Show info of current item+one step down.</p>\n","<p><b>I</b>: Zeige Detail-Ansicht vom sel.Eintrag+Cursor einen Eintrag runter.</p>\n" }, 994{ "<p><b>I</b>: Show info of current item+one step down.</p>\n","<p><b>I</b>: Zeige Detail-Ansicht vom sel.Eintrag+Cursor einen Eintrag runter.</p>\n" },
996{ "<p><h3>In list view:</h3></p>\n","<p><h3>In Listen Ansicht:</h3></p>\n" }, 995{ "<p><h3>In list view:</h3></p>\n","<p><h3>In Listen Ansicht:</h3></p>\n" },
997{ "<p><b>return+shift</b>: Mark item as not completed+one step down</p>\n","<p><b>return+shift</b>: Markiere Todo als nicht erledigt+Cursor einen Eintrag runter</p>\n" }, 996{ "<p><b>return+shift</b>: Mark item as not completed+one step down</p>\n","<p><b>return+shift</b>: Markiere Todo als nicht erledigt+Cursor einen Eintrag runter</p>\n" },
998{ "<p><b>return</b>: Mark item as completed+one step down.</p>\n","<p><b>return</b>: Markiere Todo als erledigt+Cursor einen Eintrag runter.</p>\n" }, 997{ "<p><b>return</b>: Mark item as completed+one step down.</p>\n","<p><b>return</b>: Markiere Todo als erledigt+Cursor einen Eintrag runter.</p>\n" },
999{ "<p><b>Q</b>: Toggle quick todo line edit.</p>\n","<p><b>Q</b>: Zeige/verstecke Quick Todo Eingabe Zeile.</p>\n" }, 998{ "<p><b>Q</b>: Toggle quick todo line edit.</p>\n","<p><b>Q</b>: Zeige/verstecke Quick Todo Eingabe Zeile.</p>\n" },
1000{ "<p><b>shift+P</b>: Make new <b>P</b>arent for todo selected with shift+S</p>\n","<p><b>shift+P</b>: Mache Todo zum neuen <b>P</b>arent Todo für das Todo, welches mit shift+Sselektiert wurde.</p>\n" }, 999{ "<p><b>shift+P</b>: Make new <b>P</b>arent for todo selected with shift+S</p>\n","<p><b>shift+P</b>: Mache Todo zum neuen <b>P</b>arent Todo für das Todo, welches mit shift+Sselektiert wurde.</p>\n" },
1001{ "<p><b>shift+S</b>: Make <b>S</b>ubtodo (reparent todo)</p>\n","<p><b>shift+S</b>: Mache Todo zum <b>S</b>ubtodo</p>\n" }, 1000{ "<p><b>shift+S</b>: Make <b>S</b>ubtodo (reparent todo)</p>\n","<p><b>shift+S</b>: Mache Todo zum <b>S</b>ubtodo</p>\n" },
1002{ "<p><b>shift+U</b>: <b>U</b>nparent todo (make root todo)</p>\n","<p><b>shift+U</b>: <b>U</b>nparent Todo (Mache Sub-Todo zum Toplevel Todo)</p>\n" }, 1001{ "<p><b>shift+U</b>: <b>U</b>nparent todo (make root todo)</p>\n","<p><b>shift+U</b>: <b>U</b>nparent Todo (Mache Sub-Todo zum Toplevel Todo)</p>\n" },
1003{ "<p><h3>In todo view:</h3></p>\n","<p><h3>In Todo Anzige:</h3></p>\n" }, 1002{ "<p><h3>In todo view:</h3></p>\n","<p><h3>In Todo Anzige:</h3></p>\n" },
1004{ "<p><b>ctrl+up/down</b>: Scroll small todo view</p>\n","<p><b>ctrl+up/down</b>: Scrolle kleine Todo Ansicht</p>\n" }, 1003{ "<p><b>ctrl+up/down</b>: Scroll small todo view</p>\n","<p><b>ctrl+up/down</b>: Scrolle kleine Todo Ansicht</p>\n" },
1005{ "<p><b>up/down</b>: Scroll agenda view</p>\n","<p><b>up/down</b>: Scrolle Agenda Ansicht</p>\n" }, 1004{ "<p><b>up/down</b>: Scroll agenda view</p>\n","<p><b>up/down</b>: Scrolle Agenda Ansicht</p>\n" },
1006{ "<p><h3>In agenda view:</h3></p>\n","<p><h3>In Agenda Ansicht:</h3></p>\n" }, 1005{ "<p><h3>In agenda view:</h3></p>\n","<p><h3>In Agenda Ansicht:</h3></p>\n" },
1007{ "<p><b>del,backspace</b>: Delete selected item</p>\n","<p><b>del,backspace</b>: Lösche selektiertes Item</p>\n" }, 1006{ "<p><b>del,backspace</b>: Delete selected item</p>\n","<p><b>del,backspace</b>: Lösche selektiertes Item</p>\n" },
1008{ "<p><b>left</b>: Prev. week | <b>left+ctrl</b>: Prev. month</p>\n","<p><b>left</b>: Vorh. Woche | <b>left+ctrl</b>: Vorh. Monat</p>\n" }, 1007{ "<p><b>left</b>: Prev. week | <b>left+ctrl</b>: Prev. month</p>\n","<p><b>left</b>: Vorh. Woche | <b>left+ctrl</b>: Vorh. Monat</p>\n" },
1009{ "<p><b>right</b>: Next week | <b>right+ctrl</b>: Next month</p>\n","<p><b>right</b>: Nächste Woche | <b>right+ctrl</b>: Nächste Woche</p>\n" }, 1008{ "<p><b>right</b>: Next week | <b>right+ctrl</b>: Next month</p>\n","<p><b>right</b>: Nächste Woche | <b>right+ctrl</b>: Nächste Woche</p>\n" },
1010{ "<p><b>B</b>: Edit description (details) of selected item</p>\n","<p><b>B</b>: Editiere Beschreibung (Details) des selektierten Items</p>\n" }, 1009{ "<p><b>B</b>: Edit description (details) of selected item</p>\n","<p><b>B</b>: Editiere Beschreibung (Details) des selektierten Items</p>\n" },
1011{ "<p><b>C</b>: Show current time in agenda view</p>\n","<p><b>C</b>: Zeige aktuelle Zeit in Agenda Ansicht</p>\n" }, 1010{ "<p><b>C</b>: Show current time in agenda view</p>\n","<p><b>C</b>: Zeige aktuelle Zeit in Agenda Ansicht</p>\n" },
1012{ "<p><b>+,-</b> : Zoom in/out agenda | <b>A</b>: Toggle allday agenda height</p>\n","<p><b>+,-</b> : Zoom rein/raus Agenda | <b>A</b>: Wechsle Ganztag Agenda Höhe</p>\n" }, 1011{ "<p><b>+,-</b> : Zoom in/out agenda | <b>A</b>: Toggle allday agenda height</p>\n","<p><b>+,-</b> : Zoom rein/raus Agenda | <b>A</b>: Wechsle Ganztag Agenda Höhe</p>\n" },
1013{ "<p><b>S+ctrl</b>: Add sub-todo | <b>X+ctrl</b>: Toggle datenavigator</p>\n","<p><b>S+ctrl</b>: Füge Sub-Todo hinzu | <b>X+ctrl</b>: Zeige/verstecke Datumsnavigator</p>\n" }, 1012{ "<p><b>S+ctrl</b>: Add sub-todo | <b>X+ctrl</b>: Toggle datenavigator</p>\n","<p><b>S+ctrl</b>: Füge Sub-Todo hinzu | <b>X+ctrl</b>: Zeige/verstecke Datumsnavigator</p>\n" },
1014{ "<p><b>T</b>: Goto today | <b>T+ctrl</b>: New Todo</p>\n","<p><b>T</b>: Gehe zu Heute | <b>T+ctrl</b>: Neues Todo</p>\n" }, 1013{ "<p><b>T</b>: Goto today | <b>T+ctrl</b>: New Todo</p>\n","<p><b>T</b>: Gehe zu Heute | <b>T+ctrl</b>: Neues Todo</p>\n" },
1015{ "<p><b>E</b>: Edit selected item |<b> E+ctrl</b>: New Event</p>\n","<p><b>E</b>: Editiere selektiertes Item |<b> E+ctrl</b>: Neuer Termin</p>\n" }, 1014{ "<p><b>E</b>: Edit selected item |<b> E+ctrl</b>: New Event</p>\n","<p><b>E</b>: Editiere selektiertes Item |<b> E+ctrl</b>: Neuer Termin</p>\n" },
1016{ "<p><b>D</b>: One day view | <b>M</b>: Month view</p>\n","<p><b>D</b>: Ein-Tages Ansicht | <b>M</b>: Monatsansicht</p>\n" }, 1015{ "<p><b>D</b>: One day view | <b>M</b>: Month view</p>\n","<p><b>D</b>: Ein-Tages Ansicht | <b>M</b>: Monatsansicht</p>\n" },
1017{ "<p><b>Z,Y</b>: Work week view | <b>U</b>: Week view</p>\n","<p><b>Z,Y</b>: Arbeitswochenansicht | <b>U</b>: Wochenansicht</p>\n" }, 1016{ "<p><b>Z,Y</b>: Work week view | <b>U</b>: Week view</p>\n","<p><b>Z,Y</b>: Arbeitswochenansicht | <b>U</b>: Wochenansicht</p>\n" },
1018{ "<p><b>V</b>: Todo view | <b>L</b>: Event list view</p>\n","<p><b>V</b>: Todo Ansicht | <b>L</b>: Termin Listen Ansicht</p>\n" }, 1017{ "<p><b>V</b>: Todo view | <b>L</b>: Event list view</p>\n","<p><b>V</b>: Todo Ansicht | <b>L</b>: Termin Listen Ansicht</p>\n" },
1019{ "<p><b>X</b>: Next X days view| <b>W</b>: What's next view\n ","<p><b>X</b>: Nächste-X-Tage Ansicht | <b>W</b>: What's Next Ansicht\n " }, 1018{ "<p><b>X</b>: Next X days view| <b>W</b>: What's next view\n ","<p><b>X</b>: Nächste-X-Tage Ansicht | <b>W</b>: What's Next Ansicht\n " },
1020{ "<p><b>1-0</b> (+<b>ctrl</b>): Select filter 1-10 (11-20)</p>\n","<p><b>1-0</b> (+<b>ctrl</b>): Selektiere Filter 1-10 (11-20)</p>\n" }, 1019{ "<p><b>1-0</b> (+<b>ctrl</b>): Select filter 1-10 (11-20)</p>\n","<p><b>1-0</b> (+<b>ctrl</b>): Selektiere Filter 1-10 (11-20)</p>\n" },
1021{ "<p><b>O</b>: Filter On/Off | <b>J</b>: Journal view</p>\n","<p><b>O</b>: Filter An/Aus | <b>J</b>: Journal Ansicht</p>\n" }, 1020{ "<p><b>O</b>: Filter On/Off | <b>J</b>: Journal view</p>\n","<p><b>O</b>: Filter An/Aus | <b>J</b>: Journal Ansicht</p>\n" },
1022{ "<p><b>Space</b>: Toggle fullscreen | <b>P</b>: Date picker</p>\n","<p><b>Space</b>: Zeige fullscreen | <b>P</b>: Datums Picker</p>\n" }, 1021{ "<p><b>Space</b>: Toggle fullscreen | <b>P</b>: Date picker</p>\n","<p><b>Space</b>: Zeige fullscreen | <b>P</b>: Datums Picker</p>\n" },
1023{ "<p><b>I</b>: Show info for selected event/todo</p>\n","<p><b>I</b>: Zeige Info (Details) für selektiertes Item</p>\n" }, 1022{ "<p><b>I</b>: Show info for selected event/todo</p>\n","<p><b>I</b>: Zeige Info (Details) für selektiertes Item</p>\n" },
1024{ "<p><b>H</b>: This help dialog | <b>S</b>: Search dialog</p>\n","<p><b>H</b>: Dieser Hilfe Dialog | <b>S</b>: Such Dialog</p>\n" }, 1023{ "<p><b>H</b>: This help dialog | <b>S</b>: Search dialog</p>\n","<p><b>H</b>: Dieser Hilfe Dialog | <b>S</b>: Such Dialog</p>\n" },
1025{ "<p><h2>KO/Pi key shortcuts:</h2></p>\n","<p><h2>KO/Pi Tastatur Kurzbefehle:</h2></p>\n" }, 1024{ "<p><h2>KO/Pi key shortcuts:</h2></p>\n","<p><h2>KO/Pi Tastatur Kurzbefehle:</h2></p>\n" },
1026{ "After changing something, the data is\nautomatically saved to the file\n~/kdepim/apps/korganizer/mycalendar.ics\nafter (configurable) three minutes.\nFor safety reasons there is one autosaving\nafter 10 minutes (of idle time) again. The \ndata is saved automatically when closing KO/Pi\nYou can create a backup file \nwith: File - Save Calendar Backup\n","Nachdem etwas geändert wurde, werden die\nDaten automatisch in die Datei abgespeichert\n~/kdepim/apps/korganizer/mycalendar.ics\nnach (konfigurierbar) drei Minuten.\nAus Sicherheitsgründen wird noch einmal\nnach 10 Min. abgespeichert, wenn keine\nÄnderungen vorgenommen wurden. Die \nDaten werden automatisch gespeichert,\nwenn KO/Pi beendet wird.\nSie können eine Backup-Datei erstellen im\nMenu: Datei - Speichere Kalender Backup\n" }, 1025{ "After changing something, the data is\nautomatically saved to the file\n~/kdepim/apps/korganizer/mycalendar.ics\nafter (configurable) three minutes.\nFor safety reasons there is one autosaving\nafter 10 minutes (of idle time) again. The \ndata is saved automatically when closing KO/Pi\nYou can create a backup file \nwith: File - Save Calendar Backup\n","Nachdem etwas geändert wurde, werden die\nDaten automatisch in die Datei abgespeichert\n~/kdepim/apps/korganizer/mycalendar.ics\nnach (konfigurierbar) drei Minuten.\nAus Sicherheitsgründen wird noch einmal\nnach 10 Min. abgespeichert, wenn keine\nÄnderungen vorgenommen wurden. Die \nDaten werden automatisch gespeichert,\nwenn KO/Pi beendet wird.\nSie können eine Backup-Datei erstellen im\nMenu: Datei - Speichere Kalender Backup\n" },
1027{ "Auto Saving in KOrganizer/Pi","Auto Speichern in KOrganizer/Pi" }, 1026{ "Auto Saving in KOrganizer/Pi","Auto Speichern in KOrganizer/Pi" },
1028{ "\nhttp://sourceforge.net/projects/kdepimpi\n","\nhttp://sourceforge.net/projects/kdepimpi\n" }, 1027{ "\nhttp://sourceforge.net/projects/kdepimpi\n","\nhttp://sourceforge.net/projects/kdepimpi\n" },
1029{ "\nor report them in the bugtracker on\n","\noder trage sie in dem Bugtracker ein auf\n" }, 1028{ "\nor report them in the bugtracker on\n","\noder trage sie in dem Bugtracker ein auf\n" },
1030{ "\nPlease report unexpected behaviour to\nlutz@pi-sync.info\n","\nBitte melde fehlerhaftes Verhalten an\nlutz@pi-sync.info\n" }, 1029{ "\nPlease report unexpected behaviour to\nlutz@pi-sync.info\n","\nBitte melde fehlerhaftes Verhalten an\nlutz@pi-sync.info\n" },
1031{ "2) Audio alarm daemon\nfor Zaurus is available!\nas an additional small application\n","2) Ein Audio Alarm Daemon\nfür den Zaurus ist verfügbar\nals zusätzliche Anwendung\n" }, 1030{ "2) Audio alarm daemon\nfor Zaurus is available!\nas an additional small application\n","2) Ein Audio Alarm Daemon\nfür den Zaurus ist verfügbar\nals zusätzliche Anwendung\n" },
1032{ "1) Importing *.vcs or *.ics files from\nother applications may not work properly,\nif there are events with properties\nKO/Pi does not support.\n","1) Importieren von *.vcs oder *.ics Dateien von\nanderen Anwendungen kann möglicherweise\n nicht richtig funktionieren,\nwenn die Termine Eigenschaften haben,\ndie KO/Pi nicht unterstützt.\n" }, 1031{ "1) Importing *.vcs or *.ics files from\nother applications may not work properly,\nif there are events with properties\nKO/Pi does not support.\n","1) Importieren von *.vcs oder *.ics Dateien von\nanderen Anwendungen kann möglicherweise\n nicht richtig funktionieren,\nwenn die Termine Eigenschaften haben,\ndie KO/Pi nicht unterstützt.\n" },
1033{ "Known Problems in KOrganizer/Pi","Bekannte Probleme in KOrganizer/Pi" }, 1032{ "Known Problems in KOrganizer/Pi","Bekannte Probleme in KOrganizer/Pi" },
1034{ "KO/Pi FAQ","KO/Pi FAQ" }, 1033{ "KO/Pi FAQ","KO/Pi FAQ" },
1035{ "PDA-Edition\nfor: Zaurus 5x00/7x0/860/3000/6000\n","PDA-Edition\nfür: Zaurus 5x00/7x0/860/3000/6000\n" }, 1034{ "PDA-Edition\nfor: Zaurus 5x00/7x0/860/3000/6000\n","PDA-Edition\nfür: Zaurus 5x00/7x0/860/3000/6000\n" },
1036{ "KOrganizer/Platform-independent\n","KOrganizer/Platform-independent\n" }, 1035{ "KOrganizer/Platform-independent\n","KOrganizer/Platform-independent\n" },
1037{ "About KOrganizer/Pi","Über KOrganizer/Pi" }, 1036{ "About KOrganizer/Pi","Über KOrganizer/Pi" },
1038{ "From: ","Von: " }, 1037{ "From: ","Von: " },
1039{ "Remove sync info","Entferne Sync Info" }, 1038{ "Remove sync info","Entferne Sync Info" },
1040{ "For all profiles","Für alle Profile" }, 1039{ "For all profiles","Für alle Profile" },
1041{ "Hide not Running","Verstecke nicht Laufende" }, 1040{ "Hide not Running","Verstecke nicht Laufende" },
1042{ "ME","ME" }, 1041{ "ME","ME" },
1043{ "Toolbar","Toolbar" }, 1042{ "Toolbar","Toolbar" },
1044{ "Undo Delete...","Undo Löschen..." }, 1043{ "Undo Delete...","Undo Löschen..." },
1045{ "Undo Delete","Löschen rückgängig machen" }, 1044{ "Undo Delete","Löschen rückgängig machen" },
1046{ "KDE Sync HowTo...","KDE Sync HowTo..." }, 1045{ "KDE Sync HowTo...","KDE Sync HowTo..." },
1047{ "Multi Sync HowTo...","Multi Sync HowTo..." }, 1046{ "Multi Sync HowTo...","Multi Sync HowTo..." },
1048{ "Januar","Januar" }, 1047{ "Januar","Januar" },
1049{ "KO/Pi Keys + Colors","KO/Pi Tasten + Farben" }, 1048{ "KO/Pi Keys + Colors","KO/Pi Tasten + Farben" },
1050{ "No Filter","Kein Filter" }, 1049{ "No Filter","Kein Filter" },
1051{ "Multiple Sync options","Multi Sync Optionen" }, 1050{ "Multiple Sync options","Multi Sync Optionen" },
1052{ "Sync algo options","Sync Ablauf Optionen" }, 1051{ "Sync algo options","Sync Ablauf Optionen" },
1053{ "Apply filter when adding data to local:","Filter für das Hinzufügen von Daten zu Lokal:" }, 1052{ "Apply filter when adding data to local:","Filter für das Hinzufügen von Daten zu Lokal:" },
1054{ "Incoming calendar filter:","Eingehender Kalender Filter:" }, 1053{ "Incoming calendar filter:","Eingehender Kalender Filter:" },
1055{ "Incoming addressbook filter:","Eingehender Adressbuch Filter:" }, 1054{ "Incoming addressbook filter:","Eingehender Adressbuch Filter:" },
1056{ "Write back options","Optionen zum Zurückschreiben" }, 1055{ "Write back options","Optionen zum Zurückschreiben" },
1057{ "Write back (on remote) existing entries only","Schreibe nur existierende (auf Entfernt) Einträge zurück" }, 1056{ "Write back (on remote) existing entries only","Schreibe nur existierende (auf Entfernt) Einträge zurück" },
1058{ "Apply filter when adding data to remote:","Filter für das Hinzufügen von Daten zu Entfernt:" }, 1057{ "Apply filter when adding data to remote:","Filter für das Hinzufügen von Daten zu Entfernt:" },
1059{ "Outgoing calendar filter:","Ausgehender Kalender Filter:" }, 1058{ "Outgoing calendar filter:","Ausgehender Kalender Filter:" },
1060{ "Outgoing addressbook filter:","Ausgehender Adressbuch Filter:" }, 1059{ "Outgoing addressbook filter:","Ausgehender Adressbuch Filter:" },
1061{ "Write back (calendar) entries for time period only","Schreibe nur Kalender Einträge für Zeitspanne zurück" }, 1060{ "Write back (calendar) entries for time period only","Schreibe nur Kalender Einträge für Zeitspanne zurück" },
1062{ "Time period","Zeitspanne" }, 1061{ "Time period","Zeitspanne" },
1063{ "From ","Von " }, 1062{ "From ","Von " },
1064{ " weeks in the past to "," Wochen in der Vergangenheit bis zu " }, 1063{ " weeks in the past to "," Wochen in der Vergangenheit bis zu " },
1065{ " weeks in the future "," Wochen in der Zukunft " }, 1064{ " weeks in the future "," Wochen in der Zukunft " },
1066{ "Profile kind specific settings","Profil Art abhängige Einstellungen" }, 1065{ "Profile kind specific settings","Profil Art abhängige Einstellungen" },
1067{ "Local temp file:","Lokale temp Datei:" }, 1066{ "Local temp file:","Lokale temp Datei:" },
1068{ "Multiple profiles with same name!\nPlease use unique profile names!","Mehrere Profile mit demselben Namen!\nBitte verschiedene Namen benutzen!" }, 1067{ "Multiple profiles with same name!\nPlease use unique profile names!","Mehrere Profile mit demselben Namen!\nBitte verschiedene Namen benutzen!" },
1069{ "Aborted! Nothing synced!","Abgebrochen! Nichts wurde gesynct!" }, 1068{ "Aborted! Nothing synced!","Abgebrochen! Nichts wurde gesynct!" },
1070{ "Language","Sprache" }, 1069{ "Language","Sprache" },
1071{ "Time Format","Zeit Format" }, 1070{ "Time Format","Zeit Format" },
1072{ "Time Zone","Zeit Zone" }, 1071{ "Time Zone","Zeit Zone" },
1073{ "%1 groups subscribed","%1 Guppen abboniert" }, 1072{ "%1 groups subscribed","%1 Guppen abboniert" },
1074{ "Your current storage dir is:\n%1\nYour mail is stored in:\n(storagedir)/apps/kopiemail/localmail","Aktuelles Speicherverzeichnis ist:\n%1\nIhre Mail wird gespeichert in:\n(speicherverz.)/apps/kopiemail/localmail" }, 1073{ "Your current storage dir is:\n%1\nYour mail is stored in:\n(storagedir)/apps/kopiemail/localmail","Aktuelles Speicherverzeichnis ist:\n%1\nIhre Mail wird gespeichert in:\n(speicherverz.)/apps/kopiemail/localmail" },
1075{ "<b>New data storage dir:</b>","<b>Neues Datenspeicherverzeichnis:</b>" }, 1074{ "<b>New data storage dir:</b>","<b>Neues Datenspeicherverzeichnis:</b>" },
1076{ "New dirs are created automatically","Neue Verzeichnisse werden aut. erstellt" }, 1075{ "New dirs are created automatically","Neue Verzeichnisse werden aut. erstellt" },
1077{ "Save settings","Speichere Einstellungen" }, 1076{ "Save settings","Speichere Einstellungen" },
1078{ "Save standard","Speichere Standard" }, 1077{ "Save standard","Speichere Standard" },
1079{ "<b>New settings are used\nafter a restart</b>","<b>Neue Einstellungen werden nach\neinem Neustart genutzt</b>" }, 1078{ "<b>New settings are used\nafter a restart</b>","<b>Neue Einstellungen werden nach\neinem Neustart genutzt</b>" },
1080{ "Settings are stored in\n%1","Einstellungen werden gespeichert in:\n%1" }, 1079{ "Settings are stored in\n%1","Einstellungen werden gespeichert in:\n%1" },
1081{ "Data storage path","Daten Speicherpfad" }, 1080{ "Data storage path","Daten Speicherpfad" },
1082{ "Language","Sprache" }, 1081{ "Language","Sprache" },
1083{ "Show time in agenda items","Zeige Zeit in Agenda Items" }, 1082{ "Show time in agenda items","Zeige Zeit in Agenda Items" },
1084{ "Color for Sundays + category "Holiday"","Farbe für Sonntags + Kategorie "Feiertag"" }, 1083{ "Color for Sundays + category "Holiday"","Farbe für Sonntags + Kategorie "Feiertag"" },
1085{ "Show events that are done","Zeige abgelaufene Termine" }, 1084{ "Show events that are done","Zeige abgelaufene Termine" },
1086{ "Hide not running Todos in To-do view","Verstecke nicht laufende Todos" }, 1085{ "Hide not running Todos in To-do view","Verstecke nicht laufende Todos" },
1087{ "+01:00 Europe/Oslo(CET)","+01:00 Europe/Oslo(CET)" }, 1086{ "+01:00 Europe/Oslo(CET)","+01:00 Europe/Oslo(CET)" },
1088{ "KO/Pi","KO/Pi" }, 1087{ "KO/Pi","KO/Pi" },
1089{ "There is nothing to undo!","Es gibt nichts zum\nRückgängigmachen!" }, 1088{ "There is nothing to undo!","Es gibt nichts zum\nRückgängigmachen!" },
1090{ "Recreating edit dialog. Please wait...","Recreating edit dialog. Please wait..." }, 1089{ "Recreating edit dialog. Please wait...","Recreating edit dialog. Please wait..." },
1091{ "Sound.Al.: ","Sound.Al.: " }, 1090{ "Sound.Al.: ","Sound.Al.: " },
1092{ "From: %1 To: %2 %3","Von: %1 Bis: %2 %3" }, 1091{ "From: %1 To: %2 %3","Von: %1 Bis: %2 %3" },
1093{ "Restore","Wiederherstellen" }, 1092{ "Restore","Wiederherstellen" },
1094{ "\nAre you sure you want\nto restore this?","\nMöchten Sie das wirklich\nwiederherstellen?" }, 1093{ "\nAre you sure you want\nto restore this?","\nMöchten Sie das wirklich\nwiederherstellen?" },
1095{ "% completed","% erledigt" }, 1094{ "% completed","% erledigt" },
1096{ "%d item(s) found.","%d Item(s) gefunden." }, 1095{ "%d item(s) found.","%d Item(s) gefunden." },
1097{ "Set complete","Setze auf erledigt" }, 1096{ "Set complete","Setze auf erledigt" },
1098{ "(cancelled)","(gecancelt)" }, 1097{ "(cancelled)","(gecancelt)" },
1099{ "Click on the week number to\nshow week in agenda view","Klicke auf die Wochennummer\num die Woche in der Agenda anzuzeigen" }, 1098{ "Click on the week number to\nshow week in agenda view","Klicke auf die Wochennummer\num die Woche in der Agenda anzuzeigen" },
1100{ " Local time "," Locale Zeit " }, 1099{ " Local time "," Lokale Zeit " },
1101{ "Form2","Form2" }, 1100{ "Form2","Form2" },
1102{ "Filter enabled","Filter angeschaltet" }, 1101{ "Filter enabled","Filter angeschaltet" },
1103{ "Edit Filters","Ändere Filter" }, 1102{ "Edit Filters","Ändere Filter" },
1104{ "Print What's Next View...","Drucke What's Next Ansicht..." }, 1103{ "Print What's Next View...","Drucke What's Next Ansicht..." },
1105{ "Agenda","Agenda" }, 1104{ "Agenda","Agenda" },
1106{ " ("," (" }, 1105{ " ("," (" },
1107{ "<p><b>Due on:</b> %1</p>","<p><b>Fällig am:</b> %1</p>" }, 1106{ "<p><b>Due on:</b> %1</p>","<p><b>Fällig am:</b> %1</p>" },
1108{ "Print","Print" }, 1107{ "Print","Print" },
1109{ "&Setup Printer...","Drucker &Setup..." }, 1108{ "&Setup Printer...","Drucker &Setup..." },
1110{ "View Type","Zeige Typ" }, 1109{ "View Type","Zeige Typ" },
1111{ "Page &orientation:","Seiten Ausrichtung:" }, 1110{ "Page &orientation:","Seiten Ausrichtung:" },
1112{ "Use Default of Selected Style","Default des selektierten Stils" }, 1111{ "Use Default of Selected Style","Default des selektierten Stils" },
1113{ "Use Default Setting of Printer","Default Einstellung des Druckers" }, 1112{ "Use Default Setting of Printer","Default Einstellung des Druckers" },
1114{ "Portrait","Portrait" }, 1113{ "Portrait","Portrait" },
1115{ "Landscape","Landschaft" }, 1114{ "Landscape","Landschaft" },
1116{ "Print day","Drucke Tag" }, 1115{ "Print day","Drucke Tag" },
1117{ "CalPrintDay_Base","CalPrintDay_Base" }, 1116{ "CalPrintDay_Base","CalPrintDay_Base" },
1118{ "Date && Time Range","Datum && Zeitspanne" }, 1117{ "Date && Time Range","Datum && Zeitspanne" },
1119{ "&End date:","&Enddatum:" }, 1118{ "&End date:","&Enddatum:" },
1120{ "&Start date:","&Startdatum:" }, 1119{ "&Start date:","&Startdatum:" },
1121{ "Start &time:","Startzeit:" }, 1120{ "Start &time:","Startzeit:" },
1122{ "End ti&me:","Endzeit:" }, 1121{ "End ti&me:","Endzeit:" },
1123{ "E&xtend time range to include all events","Erweitere Zeitspanne um alle Termine einzuschliessen" }, 1122{ "E&xtend time range to include all events","Erweitere Zeitspanne um alle Termine einzuschliessen" },
1124{ "Include to&dos that are due on the printed day(s)","Inclusive To&dos, die an den selektierten Tagen fällig sind" }, 1123{ "Include to&dos that are due on the printed day(s)","Inclusive To&dos, die an den selektierten Tagen fällig sind" },
1125{ "Alt+D","Alt+D" }, 1124{ "Alt+D","Alt+D" },
1126{ "&Use colors","Nutze Farben" }, 1125{ "&Use colors","Nutze Farben" },
1127{ "Alt+U","Alt+U" }, 1126{ "Alt+U","Alt+U" },
1128{ "Print week","Drucke Woche" }, 1127{ "Print week","Drucke Woche" },
1129{ "CalPrintWeek_Base","CalPrintWeek_Base" }, 1128{ "CalPrintWeek_Base","CalPrintWeek_Base" },
1130{ "Use &colors","Nutze Farben" }, 1129{ "Use &colors","Nutze Farben" },
1131{ "Type of View","Typ der Ansicht" }, 1130{ "Type of View","Typ der Ansicht" },
1132{ "Print as &Filofax page","Drucke als &Filofax Seite" }, 1131{ "Print as &Filofax page","Drucke als &Filofax Seite" },
1133{ "Alt+F","Alt+F" }, 1132{ "Alt+F","Alt+F" },
1134{ "Print as &timetable view:","Drucke als Zeittabelle:" }, 1133{ "Print as &timetable view:","Drucke als Zeittabelle:" },
1135{ "Alt+T","Alt+T" }, 1134{ "Alt+T","Alt+T" },
1136{ "Print as split week view","Drucke als gesplittete Wochenansicht" }, 1135{ "Print as split week view","Drucke als gesplittete Wochenansicht" },
1137{ "Print month","Drucke Monat" }, 1136{ "Print month","Drucke Monat" },
1138{ "CalPrintMonth_Base","CalPrintMonth_Base" }, 1137{ "CalPrintMonth_Base","CalPrintMonth_Base" },
1139{ "&Start month:","&Startmonat:" }, 1138{ "&Start month:","&Startmonat:" },
1140{ "&End month:","&Endmonat:" }, 1139{ "&End month:","&Endmonat:" },
1141{ "Print week &numbers","Drucke Wochen Nummer(n)" }, 1140{ "Print week &numbers","Drucke Wochen Nummer(n)" },
1142{ "Print todos","Drucke Todos" }, 1141{ "Print todos","Drucke Todos" },
1143{ "CalPrintTodoConfig_Base","CalPrintTodoConfig_Base" }, 1142{ "CalPrintTodoConfig_Base","CalPrintTodoConfig_Base" },
1144{ "Include &description of the item","Inclusive Itembeschreibung" }, 1143{ "Include &description of the item","Inclusive Itembeschreibung" },
1145{ "Include d&ue date of the item","Inclusive Fälligkeitsdatum des Items" }, 1144{ "Include d&ue date of the item","Inclusive Fälligkeitsdatum des Items" },
1146{ "Include &priority of the item","Inclusive Priorität des Items" }, 1145{ "Include &priority of the item","Inclusive Priorität des Items" },
1147{ "Items to Print","Zu druckende Items" }, 1146{ "Items to Print","Zu druckende Items" },
1148{ "&From:","Von:" }, 1147{ "&From:","Von:" },
1149{ "&To:","Bis:" }, 1148{ "&To:","Bis:" },
1150{ "Print &all todo items","Drucke alle Todo Items" }, 1149{ "Print &all todo items","Drucke alle Todo Items" },
1151{ "Print only &uncompleted items","Drucke nur nicht erledigte Todos" }, 1150{ "Print only &uncompleted items","Drucke nur nicht erledigte Todos" },
1152{ "Only items due in the &range:","Nur Items in dem Zeitraum:" }, 1151{ "Only items due in the &range:","Nur Items in dem Zeitraum:" },
1153{ "Todo List","Todo Liste" }, 1152{ "Todo List","Todo Liste" },
1154{ "&Title:","&Titel:" }, 1153{ "&Title:","&Titel:" },
1155{ "Co&nnect subtodos with its parent","Verbinde Untertodos mit ihren Ober-Todos" }, 1154{ "Co&nnect subtodos with its parent","Verbinde Untertodos mit ihren Ober-Todos" },
1156{ "Todo list","Todo Liste" }, 1155{ "Todo list","Todo Liste" },
1157{ "&Print...","Drucke..." }, 1156{ "&Print...","Drucke..." },
1158{ "<qt>Printing on printer <b>%1</b></qt>","<qt>Drucke auf Drucker <b>%1</b></qt>" }, 1157{ "<qt>Printing on printer <b>%1</b></qt>","<qt>Drucke auf Drucker <b>%1</b></qt>" },
1159{ "[Unconfigured]","[Unkonfiguriert]" }, 1158{ "[Unconfigured]","[Unkonfiguriert]" },
1160{ "OK","OK" }, 1159{ "OK","OK" },
1161{ "FilterEditor","FilterEditor" }, 1160{ "FilterEditor","FilterEditor" },
1162{ "Include","Inclusive" }, 1161{ "Include","Inclusive" },
1163{ "Exclude","Exclusive" }, 1162{ "Exclude","Exclusive" },
1164{ "Edit Selection...","Editiere Auswahl" }, 1163{ "Edit Selection...","Editiere Auswahl" },
1165{ "recurring events","wiederholende Termine" }, 1164{ "recurring events","wiederholende Termine" },
1166{ "recurr. events","wiederh.Termine" }, 1165{ "recurr. events","wiederh.Termine" },
1167{ "completed to-dos","erledigte Todos" }, 1166{ "completed to-dos","erledigte Todos" },
1168{ "events","Termine" }, 1167{ "events","Termine" },
1169{ "todos","Todos" }, 1168{ "todos","Todos" },
1170{ "journals","Journale" }, 1169{ "journals","Journale" },
1171{ "public","öffentl." }, 1170{ "public","öffentl." },
1172{ "private","privat" }, 1171{ "private","privat" },
1173{ "confidential","vertraul." }, 1172{ "confidential","vertraul." },
1174{ "\nhas sub-todos.\nAll completed sub-todos\nwill be deleted as well!","\nhat Untertodos.\nAlle erledigten Untertodos\nwerden auch gelöscht!" }, 1173{ "\nhas sub-todos.\nAll completed sub-todos\nwill be deleted as well!","\nhat Untertodos.\nAlle erledigten Untertodos\nwerden auch gelöscht!" },
1175{ "Yesterday","Gestern" }, 1174{ "Yesterday","Gestern" },
1176{ "Day after tomorrow","Übermorgen" }, 1175{ "Day after tomorrow","Übermorgen" },
1177{ "Tomorrow","Morgen" }, 1176{ "Tomorrow","Morgen" },
1178{ "Day before yesterday","Vorgestern" }, 1177{ "Day before yesterday","Vorgestern" },
1179{ "Size %1","Größe %1" }, 1178{ "Size %1","Größe %1" },
1180{ "New Agendasize: %1","Neue Agendagröße: %1" }, 1179{ "New Agendasize: %1","Neue Agendagröße: %1" },
1181{ " (%1 y.)"," (%1 J.)" }, 1180{ " (%1 y.)"," (%1 J.)" },
1182{ "Allday:","Ganztägig:" }, 1181{ "Allday:","Ganztägig:" },
1183{ "compl.todos","erled.Todos" }, 1182{ "compl.todos","erled.Todos" },
1184{ "Day view","Tagesansicht" }, 1183{ "Day view","Tagesansicht" },
1185{ "Next days","Nächste Tage" }, 1184{ "Next days","Nächste Tage" },
1186{ "Next week","Nächste Woche" }, 1185{ "Next week","Nächste Woche" },
1187{ "Next two weeks","Nächste zwei Wochen" }, 1186{ "Next two weeks","Nächste zwei Wochen" },
1188{ "This month","Dieser Monat" }, 1187{ "This month","Dieser Monat" },
1189{ "Journal view","Journal" }, 1188{ "Journal view","Journal" },
1190{ "Display all opened","Zeige alle geöffnet" }, 1189{ "Display all opened","Zeige alle geöffnet" },
1191{ "Display all closed","Zeige alle geschlossen" }, 1190{ "Display all closed","Zeige alle geschlossen" },
1192{ "Display all flat","Zeige alle flach" }, 1191{ "Display all flat","Zeige alle flach" },
1193{ "<p><i>Completed on %1</i></p>","<p><i>Erledigt am %1</i></p>" }, 1192{ "<p><i>Completed on %1</i></p>","<p><i>Erledigt am %1</i></p>" },
1194{ "Default todo done color:","Standard Todo erledigt Farbe" }, 1193{ "Default todo done color:","Standard Todo erledigt Farbe" },
1195{ "Select week %1-%2","Wähle Woche %1-%2" }, 1194{ "Select week %1-%2","Wähle Woche %1-%2" },
1196{ "Select Week","Wähle Woche" }, 1195{ "Select Week","Wähle Woche" },
1197{ "Set alarm...","Setze Alarm..." }, 1196{ "Set alarm...","Setze Alarm..." },
1198{ "Set Alarm!","Setze Alarm!" }, 1197{ "Set Alarm!","Setze Alarm!" },
1199{ "Changed alarm for %1 items","Alarm für %1 Items geändert" }, 1198{ "Changed alarm for %1 items","Alarm für %1 Items geändert" },
1200{ " and "," und " }, 1199{ " and "," und " },
1201{ "<IMG src="%1"> only )","nur <IMG src="%1"> )" }, 1200{ "<IMG src="%1"> only )","nur <IMG src="%1"> )" },
1202{ "Mail to selected","Mail an Ausgewählte" }, 1201{ "Mail to selected","Mail an Ausgewählte" },
1203{ "Mail to all","Mail an Alle" }, 1202{ "Mail to all","Mail an Alle" },
1204{ "Week view mode uses bigger font","Wochenansicht Modus nutzt größeren Font" }, 1203{ "Week view mode uses bigger font","Wochenansicht Modus nutzt größeren Font" },
1205{ "Set reminder ON with offset to:","Alarm AN mit Offset auf:" }, 1204{ "Set reminder ON with offset to:","Alarm AN mit Offset auf:" },
1206{ " on"," am" }, 1205{ " on"," am" },
1207{ " completed on "," erledigt am " }, 1206{ " completed on "," erledigt am " },
1208{ "Save as Event template","Speichere als Vorlage" }, 1207{ "Save as Event template","Speichere als Vorlage" },
1209{ "Load Event template","Lade Termin Vorlage" }, 1208{ "Load Event template","Lade Termin Vorlage" },
1210{ "Save as Journal template","Speichere als Journal Vorlage" }, 1209{ "Save as Journal template","Speichere als Journal Vorlage" },
1211{ "Insert Journal template","Füge Journal Vorlage ein" }, 1210{ "Insert Journal template","Füge Journal Vorlage ein" },
1212{ "Sub todos:<br>","Unter Todos:<br>" }, 1211{ "Sub todos:<br>","Unter Todos:<br>" },
1213{ "Parent todo:<br>","Über Todo:<br>" }, 1212{ "Parent todo:<br>","Über Todo:<br>" },
1214{ "Set current as color category","Setze Gewählte als Farbkategorie" }, 1213{ "Set current as color category","Setze Gewählte als Farbkategorie" },
1215{ " completed"," erledigt" }, 1214{ " completed"," erledigt" },
1216{ "(c)2004 Lutz Rogowski (rogowski@kde.org)\nKO/Pi is based on KOrganizer\n(c)2002,2003 Cornelius Schumacher\n(schumacher@kde.org) and the KDE team.\nKOrganizer/Pi is licensed under the GPL.\nKO/Pi can be compiled for\nLinux, Zaurus-PDA and Windows\nwww.pi-sync.info --- www.korganizer.org\nSpecial thanks to Michael and Ben\nfor intensive testing!","(c)2004 Lutz Rogowski (rogowski@kde.org)\nKO/Pi basiert auf KOrganizer\n(c)2002,2003 Cornelius Schumacher\n(schumacher@kde.org) und das KDE Team.\nKOrganizer/Pi ist lizensiert unter der GPL.\nKO/Pi kann kompiliert werden für\nLinux, Zaurus-PDA und Windows\nwww.pi-sync.info --- www.korganizer.org\nBesonderen Dank an Michael und Ben\nfür intensives Testen!" }, 1215{ "(c)2004 Lutz Rogowski (rogowski@kde.org)\nKO/Pi is based on KOrganizer\n(c)2002,2003 Cornelius Schumacher\n(schumacher@kde.org) and the KDE team.\nKOrganizer/Pi is licensed under the GPL.\nKO/Pi can be compiled for\nLinux, Zaurus-PDA and Windows\nwww.pi-sync.info --- www.korganizer.org\nSpecial thanks to Michael and Ben\nfor intensive testing!","(c)2004 Lutz Rogowski (rogowski@kde.org)\nKO/Pi basiert auf KOrganizer\n(c)2002,2003 Cornelius Schumacher\n(schumacher@kde.org) und das KDE Team.\nKOrganizer/Pi ist lizensiert unter der GPL.\nKO/Pi kann kompiliert werden für\nLinux, Zaurus-PDA und Windows\nwww.pi-sync.info --- www.korganizer.org\nBesonderen Dank an Michael und Ben\nfür intensives Testen!" },
1217{ "Syncing aborted. Nothing synced.","Syncing abgebrochen.Nichts wurde gesynct." }, 1216{ "Syncing aborted. Nothing synced.","Syncing abgebrochen.Nichts wurde gesynct." },
1218{ "Connected! Sending request for remote file ...","Verbunden! Sende Daten Anfrage..." }, 1217{ "Connected! Sending request for remote file ...","Verbunden! Sende Daten Anfrage..." },
1219{ "Trying to connect to remote...","Versuche mit Gegenstelle zu verbinden..." }, 1218{ "Trying to connect to remote...","Versuche mit Gegenstelle zu verbinden..." },
1220{ "Connection to remote\nhost timed out!\nDid you forgot to enable\nsyncing on remote host?","Verbindungsversuch wegen\nZeitüberschreitung gescheitert!\nWurde vergessen Pi-Sync auf\nder Gegenstelle anzuschalten?" }, 1219{ "Connection to remote\nhost timed out!\nDid you forgot to enable\nsyncing on remote host?","Verbindungsversuch wegen\nZeitüberschreitung gescheitert!\nWurde vergessen Pi-Sync auf\nder Gegenstelle anzuschalten?" },
1221{ "ERROR: Receiving remote file failed.","FEHLER: Empfang der entfernten Daten fehlgeschlagen." }, 1220{ "ERROR: Receiving remote file failed.","FEHLER: Empfang der entfernten Daten fehlgeschlagen." },
1222{ "Error","Fehler" }, 1221{ "Error","Fehler" },
1223{ ""You entered an invalid date!\n Date changed to current date.","Ungültiges Datum eingegeben.\nSetze heutiges Datum." }, 1222{ ""You entered an invalid date!\n Date changed to current date.","Ungültiges Datum eingegeben.\nSetze heutiges Datum." },
1224{ "You entered an invalid date!\n Will use current date instead.","Ungültiges Datum eingegeben.\nSetze stattdessen heutiges Datum." }, 1223{ "You entered an invalid date!\n Will use current date instead.","Ungültiges Datum eingegeben.\nSetze stattdessen heutiges Datum." },
1225{ "Warning","Warnung" }, 1224{ "Warning","Warnung" },
1226{ "Select week number","Wähle Wochen Nummer" }, 1225{ "Select week number","Wähle Wochen Nummer" },
1227{ "Februar","Februar" }, 1226{ "Februar","Februar" },
1228{ "Click on the week number to\nshow week zoomed","Klicke auf die Wochennummer\num die Woche groß zu zeigen" }, 1227{ "Click on the week number to\nshow week zoomed","Klicke auf die Wochennummer\num die Woche groß zu zeigen" },
1229{ "W","W" }, 1228{ "W","W" },
1230{ "Click on this to\nselect week number","Klicke hierauf um\ndie Woche auszuwählen" }, 1229{ "Click on this to\nselect week number","Klicke hierauf um\ndie Woche auszuwählen" },
1231{ "T: %1","T: %1" }, 1230{ "T: %1","T: %1" },
1232{ "Start: ","Start: " }, 1231{ "Start: ","Start: " },
1233{ "Pi-Sync options for device: ","Pi-Sync Einstellungen für Gerät: " }, 1232{ "Pi-Sync options for device: ","Pi-Sync Einstellungen für Gerät: " },
1234{ "Password for remote access:","Passwort für fernen Zugriff:" }, 1233{ "Password for remote access:","Passwort für fernen Zugriff:" },
1235{ "Remote IP address:","Ferne IP Adresse:" }, 1234{ "Remote IP address:","Ferne IP Adresse:" },
1236{ "Remote port number:","Ferne Port Nummer:" }, 1235{ "Remote port number:","Ferne Port Nummer:" },
1237{ "Remote file saved to temp file.","Ferne Daten in temp Datei gespeichert." }, 1236{ "Remote file saved to temp file.","Ferne Daten in temp Datei gespeichert." },
1238{ "Remote from: ","Fern von: " }, 1237{ "Remote from: ","Fern von: " },
1239{ "Local from: ","Lokal von: " }, 1238{ "Local from: ","Lokal von: " },
1240{ "Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n %d incoming filtered out\n %d outgoing filtered out\n","Synchronisationsübersicht:\n\n %d lokal hinzugefügt\n %d fern hinzugefügt\n %d lokal geändert\n %d fern geändert\n %d lokal gelöscht\n %d fern gelöscht\n %d eingehende ausgefiltert\n %d ausgehende ausgefiltert\n" }, 1239{ "Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n %d incoming filtered out\n %d outgoing filtered out\n","Synchronisationsübersicht:\n\n %d lokal hinzugefügt\n %d fern hinzugefügt\n %d lokal geändert\n %d fern geändert\n %d lokal gelöscht\n %d fern gelöscht\n %d eingehende ausgefiltert\n %d ausgehende ausgefiltert\n" },
1241{ "Local calendar changed!\n","Lokaler Kalender geändert!\n" }, 1240{ "Local calendar changed!\n","Lokaler Kalender geändert!\n" },
1242{ "Write back","Schreibe zurück" }, 1241{ "Write back","Schreibe zurück" },
1243{ "KO/Pi Synchronization","KO/Pi Synchronisation" }, 1242{ "KO/Pi Synchronization","KO/Pi Synchronisation" },
1244{ "Pi-Sync succesful!","Pi-Sync erfolgreich!" }, 1243{ "Pi-Sync succesful!","Pi-Sync erfolgreich!" },
1245{ "Received sync request","Sync Anfrage erhalten" }, 1244{ "Received sync request","Sync Anfrage erhalten" },
1246{ "Synchronizing from remote ...\n\nDo not use this application!\n\nIf syncing fails\nyou can close this dialog.","Ferne Synchronisation ...\n\nBenutze diese Anwendung nicht!\n\nWenn das Syncen fehlschlägt kann\ndieser Dialog geschlossen werden." }, 1245{ "Synchronizing from remote ...\n\nDo not use this application!\n\nIf syncing fails\nyou can close this dialog.","Ferne Synchronisation ...\n\nBenutze diese Anwendung nicht!\n\nWenn das Syncen fehlschlägt kann\ndieser Dialog geschlossen werden." },
1247{ "Saving Data to temp file ...","Speichere Daten in temp Datei..." }, 1246{ "Saving Data to temp file ...","Speichere Daten in temp Datei..." },
1248{ "Data saved to temp file!","Daten in temp Datei gespeichert!" }, 1247{ "Data saved to temp file!","Daten in temp Datei gespeichert!" },
1249{ "Sending file...","Sende Datei..." }, 1248{ "Sending file...","Sende Datei..." },
1250{ "Waiting for synced file...","Warte auf gesyncte Daten..." }, 1249{ "Waiting for synced file...","Warte auf gesyncte Daten..." },
1251{ "Receiving synced file...","Gesyncte Daten erhalten..." }, 1250{ "Receiving synced file...","Gesyncte Daten erhalten..." },
1252{ "Received %1 bytes","%1 Bytes erhalten" }, 1251{ "Received %1 bytes","%1 Bytes erhalten" },
1253{ "Writing file to disk...","Speichere Datei..." }, 1252{ "Writing file to disk...","Speichere Datei..." },
1254{ "Pi-Sync successful!","Pi-Sync erfolgreich!" }, 1253{ "Pi-Sync successful!","Pi-Sync erfolgreich!" },
1255{ "Clock skew of\nsyncing devices\nis %1 seconds!","Uhrzeitunterschied der\nsyncenden Geräte\nist %1 Sekunden!" }, 1254{ "Clock skew of\nsyncing devices\nis %1 seconds!","Uhrzeitunterschied der\nsyncenden Geräte\nist %1 Sekunden!" },
1256{ "Synchronize!","Synchronisiere!" }, 1255{ "Synchronize!","Synchronisiere!" },
1257{ "High clock skew!","Großer Uhrzeitunterschied!" }, 1256{ "High clock skew!","Großer Uhrzeitunterschied!" },
1258{ "ADJUST\nYOUR\nCLOCKS!","JUSTIERE\nDIE\nUHREN!" }, 1257{ "ADJUST\nYOUR\nCLOCKS!","JUSTIERE\nDIE\nUHREN!" },
1259{ "The clocks of the syncing\ndevices have a difference\nof more than 5 minutes.\nPlease adjust your clocks.\nYou may get wrong syncing results!\nPlease confirm synchronization!","Die Uhren der syncenden Geräte\nhaben einen Unterschied von\nmehr als 5 Minuten. Bitte die\nUhrzeiten anpassen. Sie können\nfalsche Sync-Resultate erhalten!\nBitte das Syncen bestätigen!" }, 1258{ "The clocks of the syncing\ndevices have a difference\nof more than 5 minutes.\nPlease adjust your clocks.\nYou may get wrong syncing results!\nPlease confirm synchronization!","Die Uhren der syncenden Geräte\nhaben einen Unterschied von\nmehr als 5 Minuten. Bitte die\nUhrzeiten anpassen. Sie können\nfalsche Sync-Resultate erhalten!\nBitte das Syncen bestätigen!" },
1260{ "This is a %1 recurring todo.","Das ist eine %1 wiederholende Aufgabe." }, 1259{ "This is a %1 recurring todo.","Das ist eine %1 wiederholende Aufgabe." },
1261{ "<p><b>Start on:</b> %1</p>","<p><b>Start am:</b> %1</p>" }, 1260{ "<p><b>Start on:</b> %1</p>","<p><b>Start am:</b> %1</p>" },
1262{ "List week view","Listenwochenansicht" }, 1261{ "List week view","Listenwochenansicht" },
1263{ "List week","Listenwochenansicht" }, 1262{ "List week","Listenwochenansicht" },
1264{ "Next Week","Nächste Woche" }, 1263{ "Next Week","Nächste Woche" },
1265{ "Previous Week","Vorherige Woche" }, 1264{ "Previous Week","Vorherige Woche" },
1266{ "No items were found matching\nyour search expression.\nUse the wildcard characters\n'*' and '?' where needed.","Keine Einträge gefunden die\ndem Suchausdruck entsprechen.\nBenutze Platzhalter Zeichen\n'*' und '?' wo benötigt." }, 1265{ "No items were found matching\nyour search expression.\nUse the wildcard characters\n'*' and '?' where needed.","Keine Einträge gefunden die\ndem Suchausdruck entsprechen.\nBenutze Platzhalter Zeichen\n'*' und '?' wo benötigt." },
1267{ "Show in todo/event viewer:","Zeige in Termin/Todo Anzeige:" }, 1266{ "Show in todo/event viewer:","Zeige in Termin/Todo Anzeige:" },
1268{ "Details","Details" }, 1267{ "Details","Details" },
1269{ "Created time","Erstellt Zeit" }, 1268{ "Created time","Erstellt Zeit" },
1270{ "Last modified time","Geändert Zeit" }, 1269{ "Last modified time","Geändert Zeit" },
1271{ "Show in What'sThis quick overview:","Zeige in What'sThis Schnellübersicht:" }, 1270{ "Show in What'sThis quick overview:","Zeige in What'sThis Schnellübersicht:" },
1272{ "View Options","Anzeige Optionen" }, 1271{ "View Options","Anzeige Optionen" },
1273{ "<b>Created: ","<b>Erstellt am: " }, 1272{ "<b>Created: ","<b>Erstellt am: " },
1274{ "<b>Last modified: ","<b>Zuletzt geändert am: " }, 1273{ "<b>Last modified: ","<b>Zuletzt geändert am: " },
1275{ "Journal: ","Journal: " }, 1274{ "Journal: ","Journal: " },
1276{ "yearly","jährlich" }, 1275{ "yearly","jährlich" },
1277{ "(%1) ","%1-" }, 1276{ "(%1) ","%1-" },
1278{ "<p><b>K</b>: Week view in Month view syle</p>\n","<p><b>K</b>: Wochenansicht in Art der Monatsansicht</p>\n" }, 1277{ "<p><b>K</b>: Week view in Month view syle</p>\n","<p><b>K</b>: Wochenansicht in Art der Monatsansicht</p>\n" },
1279{ "Enable tooltips displaying summary of ev.","Titel-Tooltips anzeigen" }, 1278{ "Enable tooltips displaying summary of ev.","Titel-Tooltips anzeigen" },
1280{ "Enable scrollbars in month view cells","Scrollbar in Zellen anzeigen" }, 1279{ "Enable scrollbars in month view cells","Scrollbar in Zellen anzeigen" },
1281{ "Summary/Loc.","Titel/Ort" }, 1280{ "Summary/Loc.","Titel/Ort" },
1282{ "No items found. Use '*' and '?' where needed.","Nichts gefunden. Benutze '*' and '?' wo benötigt." }, 1281{ "No items found. Use '*' and '?' where needed.","Nichts gefunden. Benutze '*' and '?' wo benötigt." },
1283{ "Week Number","Wochennummer" }, 1282{ "Week Number","Wochennummer" },
1284{ "Import","Importiere" }, 1283{ "Import","Importiere" },
1285{ "Export","Exportiere" }, 1284{ "Export","Exportiere" },
1286{ "Beam","Beame" }, 1285{ "Beam","Beame" },
1287{ "Export","Exportiere" }, 1286{ "Export","Exportiere" },
1288{ "As iCal (ics) file...","Als iCal (ics) Datei..." }, 1287{ "As iCal (ics) file...","Als iCal (ics) Datei..." },
1289{ "As vCal (vcs) file...","Als vCal (vcs) Datei..." }, 1288{ "As vCal (vcs) file...","Als vCal (vcs) Datei..." },
1290{ "Journal/Details...","Journale/Details..." }, 1289{ "Journal/Details...","Journale/Details..." },
1291{ "Agenda View","Agenda Ansicht" }, 1290{ "Agenda View","Agenda Ansicht" },
1292{ "Show current time","Zeige aktuelle Zeit" }, 1291{ "Show current time","Zeige aktuelle Zeit" },
1293{ "Edit new item","Bearbeite neuen Eintrag" }, 1292{ "Edit new item","Bearbeite neuen Eintrag" },
1294{ "Please select at least one\nof the types to search for:\n\nEvents\nTodos\nJournals","Bitte wählen Sie mindestens\neinen dieser Typen\num darin zu suchen:\n\nTermine\nTodos\nJournale" }, 1293{ "Please select at least one\nof the types to search for:\n\nEvents\nTodos\nJournals","Bitte wählen Sie mindestens\neinen dieser Typen\num darin zu suchen:\n\nTermine\nTodos\nJournale" },
1295{ "There is no next alarm.","Es gibt keinen nächsten Alarm." }, 1294{ "There is no next alarm.","Es gibt keinen nächsten Alarm." },
1296{ "%1 %2 - %3 (next event/todo with alarm)","%1 %2 - %3 (nächster Termin/Todo mit Alarm)" }, 1295{ "%1 %2 - %3 (next event/todo with alarm)","%1 %2 - %3 (nächster Termin/Todo mit Alarm)" },
1297{ "The next alarm is in:\n","Der nächste Alarm ist in:\n" }, 1296{ "The next alarm is in:\n","Der nächste Alarm ist in:\n" },
1298{ "%1 days\n","%1 Tagen\n" }, 1297{ "%1 days\n","%1 Tagen\n" },
1299{ "1 day\n","1 Tag\n" }, 1298{ "1 day\n","1 Tag\n" },
1300{ "%1 hours\n","%1 Stunden\n" }, 1299{ "%1 hours\n","%1 Stunden\n" },
1301{ "1 hour\n","1 Stunde\n" }, 1300{ "1 hour\n","1 Stunde\n" },
1302{ "%1 minutes\n","%1 Minuten\n" }, 1301{ "%1 minutes\n","%1 Minuten\n" },
1303{ "1 minute\n","1 Minute\n" }, 1302{ "1 minute\n","1 Minute\n" },
1304{ "Only one toolbar","Nur eine Toolbar" }, 1303{ "Only one toolbar","Nur eine Toolbar" },
1305{ "Print","Drucke" }, 1304{ "Print","Drucke" },
1306{ "Print selected event / todo...","Drucke ausgewählten Termin / Todo..." }, 1305{ "Print selected event / todo...","Drucke ausgewählten Termin / Todo..." },
1307{ "There is nothing selected!","Es ist nichts ausgewählt!" }, 1306{ "There is nothing selected!","Es ist nichts ausgewählt!" },
1308{ "\n\nDo you really want to print this item?","\n\nMöchten Sie wirklich diesen Eintrag ausdrucken? " }, 1307{ "\n\nDo you really want to print this item?","\n\nMöchten Sie wirklich diesen Eintrag ausdrucken? " },
1309{ "KO/Pi Print Confirmation","KO/Pi Druckbestätigung" }, 1308{ "KO/Pi Print Confirmation","KO/Pi Druckbestätigung" },
1310{ "This prints the view as you see it.\n(With the complete content, of course.)\nYou may change the print layout by resizing the view.\nPrint unscaled may print several pages\ndepending on the amount of data.\nPrint scaled down will print all on one page.\nPrint scaled up/down will print all on one page,\nbut will scale up the text to page boundaries,\nif the text is smaller than the page.\nYou can select page geometry setup in the next dialog.\n","Dies druckt die Ansicht wie man sie sieht.\n(Mit dem kompletten Inhalt natürlich.)\nMan kann das Layout ändern durch ändern der Fenstergröße.\nDrucke unskaliert druckt ggf. mehrere Seiten\nabhängig von der Menge der Daten.\nDrucke runterskaliert um auf eine Seite zu passen\ndruckt alles auf eine Seite.\nDrucke hoch/runterskaliert um genau auf eine Seite zu passen\nvergrößert den Text gegebenenfalls.\nDas Seitenlayout kann im nächsten Dialog gewählt werden.\n" }, 1309{ "This prints the view as you see it.\n(With the complete content, of course.)\nYou may change the print layout by resizing the view.\nPrint unscaled may print several pages\ndepending on the amount of data.\nPrint scaled down will print all on one page.\nPrint scaled up/down will print all on one page,\nbut will scale up the text to page boundaries,\nif the text is smaller than the page.\nYou can select page geometry setup in the next dialog.\n","Dies druckt die Ansicht wie man sie sieht.\n(Mit dem kompletten Inhalt natürlich.)\nMan kann das Layout ändern durch ändern der Fenstergröße.\nDrucke unskaliert druckt ggf. mehrere Seiten\nabhängig von der Menge der Daten.\nDrucke runterskaliert um auf eine Seite zu passen\ndruckt alles auf eine Seite.\nDrucke hoch/runterskaliert um genau auf eine Seite zu passen\nvergrößert den Text gegebenenfalls.\nDas Seitenlayout kann im nächsten Dialog gewählt werden.\n" },
1311{ "KO/Pi Printout","KO/Pi Ausdruck" }, 1310{ "KO/Pi Printout","KO/Pi Ausdruck" },
1312{ "Print unscaled","Drucke unskaliert" }, 1311{ "Print unscaled","Drucke unskaliert" },
1313{ "Print scaled down to fit one page","Drucke runterskaliert um auf eine Seite zu passen." }, 1312{ "Print scaled down to fit one page","Drucke runterskaliert um auf eine Seite zu passen." },
1314{ "Print scaled up/down to fit one page","Drucke hoch/runterskaliert um genau auf eine Seite zu passen." }, 1313{ "Print scaled up/down to fit one page","Drucke hoch/runterskaliert um genau auf eine Seite zu passen." },
1315{ "Printout Mode","Druck Modus" }, 1314{ "Printout Mode","Druck Modus" },
1316{ "Filter menu icon","Filtermenu Icon" }, 1315{ "Filter menu icon","Filtermenu Icon" },
1317{ "<p><b>A+(shift or ctrl)</b>: Show occurence of next alarm</p>\n","<p><b>A+(shift oder ctrl)</b>: Zeige Zeit bis zum nächsten Alarm</p>\n" }, 1316{ "<p><b>A+(shift or ctrl)</b>: Show occurence of next alarm</p>\n","<p><b>A+(shift oder ctrl)</b>: Zeige Zeit bis zum nächsten Alarm</p>\n" },
1318{ "<p><b>N</b>: Switch to next view which has a toolbar icon</p>\n","<p><b>N</b>: Wechsle zur nächsten Ansicht, die ein Icon in der Toolbar hat</p>\n" }, 1317{ "<p><b>N</b>: Switch to next view which has a toolbar icon</p>\n","<p><b>N</b>: Wechsle zur nächsten Ansicht, die ein Icon in der Toolbar hat</p>\n" },
1319{ "%1d","%1t" }, 1318{ "%1d","%1t" },
1320{ "%1h","%1std" }, 1319{ "%1h","%1std" },
1321{ "%1min","%1min" }, 1320{ "%1min","%1min" },
1322{ "( %1 before )","( %1 vorher )" }, 1321{ "( %1 before )","( %1 vorher )" },
1323{ "The next alarm is in\nless than one minute!","Der nächste Alarm kommt in\nweniger als einer Minute!" }, 1322{ "The next alarm is in\nless than one minute!","Der nächste Alarm kommt in\nweniger als einer Minute!" },
1324{ "\nThe internal alarm notification is disabled!\n","\nDie interne Alarmbenachrichtigung ist ausgeschaltet!\n" }, 1323{ "\nThe internal alarm notification is disabled!\n","\nDie interne Alarmbenachrichtigung ist ausgeschaltet!\n" },
1325{ "Enable it in the settings menu, TAB alarm.","Schalten Sie sie an im Menu Einstellungen, TAB Alarm." }, 1324{ "Enable it in the settings menu, TAB alarm.","Schalten Sie sie an im Menu Einstellungen, TAB Alarm." },
1326{ "Show Sync Events","Zeige Sync-Ereignisse" }, 1325{ "Show Sync Events","Zeige Sync-Ereignisse" },
1327{ "Use short date in WN+Event view","Zeige Kurzdatum in WN+Terminanzeige" }, 1326{ "Use short date in WN+Event view","Zeige Kurzdatum in WN+Terminanzeige" },
1328{ "Number of max.displayed todo prios:","Anzahl max.angezeigter Todo-Prios:" }, 1327{ "Number of max.displayed todo prios:","Anzahl max.angezeigter Todo-Prios:" },
1329{ " on "," am " }, 1328{ " on "," am " },
1330{ "On: ","Am: " }, 1329{ "On: ","Am: " },
1331{ "<i>The recurrence is computed from the start datetime!</i>","<i>Die Wiederholung wird vom Startwert aus berechnet!</i>" }, 1330{ "<i>The recurrence is computed from the start datetime!</i>","<i>Die Wiederholung wird vom Startwert aus berechnet!</i>" },
1332{ "Start/Stop todo...","Starte/Stoppe Todo..." }, 1331{ "Start/Stop todo...","Starte/Stoppe Todo..." },
1333{ "Color for running todos:","Farbe für laufende Todos:" }, 1332{ "Color for running todos:","Farbe für laufende Todos:" },
1334{ "The todo\n%1\nis started.\nDo you want to set\nthe state to stopped?","Das Todo\n%1\nist gestartet.\nWollen Sie es\nauf gestoppt setzen?" }, 1333{ "The todo\n%1\nis started.\nDo you want to set\nthe state to stopped?","Das Todo\n%1\nist gestartet.\nWollen Sie es\nauf gestoppt setzen?" },
1335{ "Todo is started","Todo ist gestartet" }, 1334{ "Todo is started","Todo ist gestartet" },
1336{ "Stop todo","Stoppe Todo" }, 1335{ "Stop todo","Stoppe Todo" },
1337{ "Todo is stopped","Todo ist gestoppt" }, 1336{ "Todo is stopped","Todo ist gestoppt" },
1338{ "Start todo","Starte Todo" }, 1337{ "Start todo","Starte Todo" },
1339{ "The todo\n%1\nis stopped.\nDo you want to set\nthe state to started?","Das Todo\n%1\nist gestoppt.\nWollen Sie es auf\ngestartet setzen?" }, 1338{ "The todo\n%1\nis stopped.\nDo you want to set\nthe state to started?","Das Todo\n%1\nist gestoppt.\nWollen Sie es auf\ngestartet setzen?" },
1340{ "The todo\n%1\nwill be cloned!\nIt has subtodos!\nDo you want to clone\nall subtodos as well?","Das Todo\n%1\nwird geklont!\nEs hat Untertodos!\nMöchten Sie alle\nUntertodos auch klonen?" }, 1339{ "The todo\n%1\nwill be cloned!\nIt has subtodos!\nDo you want to clone\nall subtodos as well?","Das Todo\n%1\nwird geklont!\nEs hat Untertodos!\nMöchten Sie alle\nUntertodos auch klonen?" },
1341{ "Todo has subtodos","Todo hat Untertodos" }, 1340{ "Todo has subtodos","Todo hat Untertodos" },
1342{ "Block popup until mouse button release","Sperre Popup bis Mausknopf losgelassen" }, 1341{ "Block popup until mouse button release","Sperre Popup bis Mausknopf losgelassen" },
1343{ "Colors","Farben" }, 1342{ "Colors","Farben" },
1344{ "Click on new parent item","Klicke auf neues Übertodo" }, 1343{ "Click on new parent item","Klicke auf neues Übertodo" },
1345{ "Reparenting aborted!","Übertodo setzen abgebrochen" }, 1344{ "Reparenting aborted!","Übertodo setzen abgebrochen" },
1346{ "Cannot move Todo to itself\nor a child of itself","Kann nicht Todo auf\nsich selbst oder\nein Untertodo verschieben" }, 1345{ "Cannot move Todo to itself\nor a child of itself","Kann nicht Todo auf\nsich selbst oder\nein Untertodo verschieben" },
1347{ "Recursive reparenting not possible!","Rekursives Verschieben nicht möglich" }, 1346{ "Recursive reparenting not possible!","Rekursives Verschieben nicht möglich" },
1348{ "Delete all completed todos?\n(Completed recurring todos\nwill not be deleted!)","Entferne alle erledigten Todos?\n(Erledigte wiederholende Todos\nwerden nicht gelöscht!)" }, 1347{ "Delete all completed todos?\n(Completed recurring todos\nwill not be deleted!)","Entferne alle erledigten Todos?\n(Erledigte wiederholende Todos\nwerden nicht gelöscht!)" },
1349{ "Alternating background of list views","Abwechselnder Hintergrund für Listen" }, 1348{ "Alternating background of list views","Abwechselnder Hintergrund für Listen" },
1350{ "times","Zeiten" }, 1349{ "times","Zeiten" },
1351{ "The todo\n%1\nhas subtodos!\nDo you want to set\nthe categories for\nall subtodos as well?","Das Todo\n%1\nhat Untertodos!\nMöchten Sie die Kategorien\nauch für alle Untertodos setzen?" }, 1350{ "The todo\n%1\nhas subtodos!\nDo you want to set\nthe categories for\nall subtodos as well?","Das Todo\n%1\nhat Untertodos!\nMöchten Sie die Kategorien\nauch für alle Untertodos setzen?" },
1352{ "Backup enabled","Backup angeschaltet" }, 1351{ "Backup enabled","Backup angeschaltet" },
1353{ "Use standard backup dir","Standard Backupverzeichnis" }, 1352{ "Use standard backup dir","Standard Backupverzeichnis" },
1354{ "Number of Backups:","Anzahl der Backups" }, 1353{ "Number of Backups:","Anzahl der Backups" },
1355{ "Make backup every ","Mache ein Backup alle " }, 1354{ "Make backup every ","Mache ein Backup alle " },
1356{ " days"," Tage" }, 1355{ " days"," Tage" },
1357{ "Creating backup ... please wait ...","Erstelle Backup ... bitte warten ..." }, 1356{ "Creating backup ... please wait ...","Erstelle Backup ... bitte warten ..." },
1358{ "Backup Failed!","Backup Problem!" }, 1357{ "Backup Failed!","Backup Problem!" },
1359{ "Try again now","Versuche jetzt nochmal" }, 1358{ "Try again now","Versuche jetzt nochmal" },
1360{ "Try again later","Versuche später nochmal" }, 1359{ "Try again later","Versuche später nochmal" },
1361{ "Try again tomorrow","Versuche morgen nochmal" }, 1360{ "Try again tomorrow","Versuche morgen nochmal" },
1362{ "Disable backup","Schalte Backup ab" }, 1361{ "Disable backup","Schalte Backup ab" },
1363{ "<b>Backup directory does not exist: </b>","<b>Backup Verzeichnis existiert nicht: </b>" }, 1362{ "<b>Backup directory does not exist: </b>","<b>Backup Verzeichnis existiert nicht: </b>" },
1364{ "<b>The backup copy command failed!</b>","<b>Das Backup Kopierkommando is fehlgeschlagen!</b>" }, 1363{ "<b>The backup copy command failed!</b>","<b>Das Backup Kopierkommando is fehlgeschlagen!</b>" },
1365{ "Choose action","Wähle Aktion" }, 1364{ "Choose action","Wähle Aktion" },
1366{ "Comment for todo:","Kommentar zum Todo:" }, 1365{ "Comment for todo:","Kommentar zum Todo:" },
1367{ "Stop+note","Stop+Notiz" }, 1366{ "Stop+note","Stop+Notiz" },
1368{ "Agenda view shows completed todos","Agenda Ansicht zeigt erledigte Todos" }, 1367{ "Agenda view shows completed todos","Agenda Ansicht zeigt erledigte Todos" },
1369{ "KO/Pi: Missing alarms!","KO/Pi: Verpasste Alarme!" }, 1368{ "KO/Pi: Missing alarms!","KO/Pi: Verpasste Alarme!" },
1370{ "You missed the alarms for the following events or todos:","Sie verpassten die Alarme für folgende Termine oder Todos:" }, 1369{ "You missed the alarms for the following events or todos:","Sie verpassten die Alarme für folgende Termine oder Todos:" },
1371{ "Print complete list","Drucke komplette Liste" }, 1370{ "Print complete list","Drucke komplette Liste" },
1372{ "Hide all selected","Verstecke Selektierte" }, 1371{ "Hide all selected","Verstecke Selektierte" },
1373{ "Add items","hinzufügen" }, 1372{ "Add items","hinzufügen" },
1374{ "One (or more) selected\ntodo has subtodos!\nDo you want to select\nall subtodos of all\nselected todos as well?","Ein (oder mehrere) ausgewähltes\nTodo hat Untertodos!\nMöchten Sie der Auswahlliste\nalle Untertodos von allen\nausgewählten Todos hinzufügen?" }, 1373{ "One (or more) selected\ntodo has subtodos!\nDo you want to select\nall subtodos of all\nselected todos as well?","Ein (oder mehrere) ausgewähltes\nTodo hat Untertodos!\nMöchten Sie der Auswahlliste\nalle Untertodos von allen\nausgewählten Todos hinzufügen?" },
1375{ "Print List View...","Drucke Listenansicht..." }, 1374{ "Print List View...","Drucke Listenansicht..." },
1376{ "You can make a printout of the <b>List View</b> and the list view in the <b>Search Dialog</b>! To do this, please go to the <b>List View/Search Dialog</b>. Right click on the list. Select in the popup menu the entry <b>Print complete list</b>. That prints the list as you see it. You can remove items from the list before printing without deleting the corresponding event/todo! Simply select all items you do not want to print out. Then right click on one of the items and choose <b>Hide selected items</b>. After that you can print the list without these items.","Sie können die <b>Listenansicht</b> und die Listenansicht im <b>Suchdialog</b> ausdrucken! Um das zu machen gehen Sie bitte zur <b>Listenansicht</b> oder zum <b>Suchdialog</b>. Rechtsklicken Sie auf die Liste. Wählen Sie im Popupmenu den Eintrag <b>Drucke komplette Liste</b>. Das druckt die Liste so, wie man sie sieht. Sie können Listeneinträge entfernen ohne die korrespondierenden Ereignisse/Todos zu löschen! Selektieren sie einfach alle Einträge, die sie nicht ausdrucken möchten. Dann Rechtsklicken Sie auf einen Eintrag und wählen <b>Verstecke Selektierte</b>. Danach können Sie die Liste ohne diese Einträge ausdrucken." }, 1375{ "You can make a printout of the <b>List View</b> and the list view in the <b>Search Dialog</b>! To do this, please go to the <b>List View/Search Dialog</b>. Right click on the list. Select in the popup menu the entry <b>Print complete list</b>. That prints the list as you see it. You can remove items from the list before printing without deleting the corresponding event/todo! Simply select all items you do not want to print out. Then right click on one of the items and choose <b>Hide selected items</b>. After that you can print the list without these items.","Sie können die <b>Listenansicht</b> und die Listenansicht im <b>Suchdialog</b> ausdrucken! Um das zu machen gehen Sie bitte zur <b>Listenansicht</b> oder zum <b>Suchdialog</b>. Rechtsklicken Sie auf die Liste. Wählen Sie im Popupmenu den Eintrag <b>Drucke komplette Liste</b>. Das druckt die Liste so, wie man sie sieht. Sie können Listeneinträge entfernen ohne die korrespondierenden Ereignisse/Todos zu löschen! Selektieren sie einfach alle Einträge, die sie nicht ausdrucken möchten. Dann Rechtsklicken Sie auf einen Eintrag und wählen <b>Verstecke Selektierte</b>. Danach können Sie die Liste ohne diese Einträge ausdrucken." },
1377{ "Configure KO/Pi...","Konfiguriere KO/Pi..." }, 1376{ "Configure KO/Pi...","Konfiguriere KO/Pi..." },
1378{ "Global Settings...","Globale Einstellungen..." }, 1377{ "Global Settings...","Globale Einstellungen..." },
1379{ "<p><b>R</b>: Toggle Resource View |<b>F</b>: Edit filter </p>\n","<p><b>R</b>: Zeige Resource Ansicht | <b>F</b>: Editiere Filter </p>\n" }, 1378{ "<p><b>R</b>: Toggle Resource View |<b>F</b>: Edit filter </p>\n","<p><b>R</b>: Zeige Resource Ansicht | <b>F</b>: Editiere Filter </p>\n" },
1380{ "(disabled)","(abgeschaltet)" }, 1379{ "(disabled)","(abgeschaltet)" },
1381{ "New Calendar","Neuer Kalender" }, 1380{ "New Calendar","Neuer Kalender" },
1382{ "Calendar","Kalender" }, 1381{ "Calendar","Kalender" },
1383{ "Filter selector","Filterauswahl" }, 1382{ "Filter selector","Filterauswahl" },
1384{ "Filtermenu","Filtermenu" }, 1383{ "Filtermenu","Filtermenu" },
1385{ "Toggle Fullscreen","Vollbild umschalten" }, 1384{ "Toggle Fullscreen","Vollbild umschalten" },
1386{ "Toggle Resource View","Resourcenansicht umschalten" }, 1385{ "Toggle Resource View","Resourcenansicht umschalten" },
1387{ "Storage HowTo...","Speicherort HowTo..." }, 1386{ "Storage HowTo...","Speicherort HowTo..." },
1388{ "Timetracking HowTo...","Timetracking HowTo..." }, 1387{ "Timetracking HowTo...","Timetracking HowTo..." },
1389{ "Juni","Juni" }, 1388{ "Juni","Juni" },
1390{ "Juli","Juli" }, 1389{ "Juli","Juli" },
1391{ "ToDo:","ToDo:" }, 1390{ "ToDo:","ToDo:" },
1392{ "Set Calendar","Setze Kalender" }, 1391{ "Set Calendar","Setze Kalender" },
1393{ "Todo: %1","Todo: %1" }, 1392{ "Todo: %1","Todo: %1" },
1394{ ": (Prio ",": (Prio " }, 1393{ ": (Prio ",": (Prio " },
1395{ "Todos","Todos" }, 1394{ "Todos","Todos" },
1396{ "Todo Viewer","Todo Viewer" }, 1395{ "Todo Viewer","Todo Viewer" },
1397{ "Todo ","Todo " }, 1396{ "Todo ","Todo " },
1398{ " Calendar \n Resource "," Kalender \n Resource " }, 1397{ " Calendar \n Resource "," Kalender \n Resource " },
1399{ " Color "," Farbe " }, 1398{ " Color "," Farbe " },
1400{ "The calendar <b>%1</b> is displaying file <b>%2</b>. Do you want to remove this calendar from KO/Pi? (The file is not removed!)","Der Kalender <b>%1</b> zeigt die Datei <b>%2</b>. Möchten Sie diesen Kalender aus KO/Pi entfernen? (Die Datei wird dabei nicht gelöscht!)" }, 1399{ "The calendar <b>%1</b> is displaying file <b>%2</b>. Do you want to remove this calendar from KO/Pi? (The file is not removed!)","Der Kalender <b>%1</b> zeigt die Datei <b>%2</b>. Möchten Sie diesen Kalender aus KO/Pi entfernen? (Die Datei wird dabei nicht gelöscht!)" },
1401{ "The calendar <b>%1</b> is displaying file <b>%2</b>","Der Kalender <b>%1</b> zeigt die Datei <b>%2</b>" }, 1400{ "The calendar <b>%1</b> is displaying file <b>%2</b>","Der Kalender <b>%1</b> zeigt die Datei <b>%2</b>" },
1402{ "Add new Calendar","Füge Kalender hinzu" }, 1401{ "Add new Calendar","Füge Kalender hinzu" },
1403{ "<b>Name of new calendar:</b>","<b>Name des Kalenders:</b>" }, 1402{ "<b>Name of new calendar:</b>","<b>Name des Kalenders:</b>" },
1404{ "<b>Local ical (*.ics) file:</b>","<b>Lokale ical (*.ics) Datei:</b>" }, 1403{ "<b>Local ical (*.ics) file:</b>","<b>Lokale ical (*.ics) Datei:</b>" },
1405{ "Sorry, the calendar name is empty!","Sorry, der Kalendername ist leer!" }, 1404{ "Sorry, the calendar name is empty!","Sorry, der Kalendername ist leer!" },
1406{ "Sorry, the file name is empty!","Sorry, der Dateiname ist leer!" }, 1405{ "Sorry, the file name is empty!","Sorry, der Dateiname ist leer!" },
1407{ "Error loading calendar file\n%1.","Fehler beim Laden der Kalenderdatei\n%1." }, 1406{ "Error loading calendar file\n%1.","Fehler beim Laden der Kalenderdatei\n%1." },
1408{ "The calendar <b>%1</b> is not loaded! Loading of file <b>%2</b> failed! <b>Try again to load the calendar?</b>","Der Kalender <b>%1</b> ist nicht geladen! Das Laden der Datei <b>%2</b> schlug fehl! <b>Soll erneut versucht werden den Kalender zu laden?</b>" }, 1407{ "The calendar <b>%1</b> is not loaded! Loading of file <b>%2</b> failed! <b>Try again to load the calendar?</b>","Der Kalender <b>%1</b> ist nicht geladen! Das Laden der Datei <b>%2</b> schlug fehl! <b>Soll erneut versucht werden den Kalender zu laden?</b>" },
1409{ "Global application font for all apps:","Globale Schriftart:" }, 1408{ "Global application font for all apps:","Globale Schriftart:" },
1410{ "Application Font","Applikationsschriftart" }, 1409{ "Application Font","Applikationsschriftart" },
1411{ "Kx/Pi","Kx/Pi" }, 1410{ "Kx/Pi","Kx/Pi" },
1412{ "Backup","Backup" }, 1411{ "Backup","Backup" },
1413{ "KDE-Pim Global Settings","KDE-Pim Globale Einstellungen" }, 1412{ "KDE-Pim Global Settings","KDE-Pim Globale Einstellungen" },
1414{ "Sorry, the calendar name \n%1\nalready exists!\nPlease choose another name!","Sorry, der Kalendername \n%1\nist schon in Benutzung!\nBitte wählen Sie einen anderen!" }, 1413{ "Sorry, the calendar name \n%1\nalready exists!\nPlease choose another name!","Sorry, der Kalendername \n%1\nist schon in Benutzung!\nBitte wählen Sie einen anderen!" },
1415{ "Sorry, the file \n%1\nis already loaded!\nPlease choose another file!","Sorry, die Datei \n%1\nist schon geladen!\nBitte wählen Sie eine andere!" }, 1414{ "Sorry, the file \n%1\nis already loaded!\nPlease choose another file!","Sorry, die Datei \n%1\nist schon geladen!\nBitte wählen Sie eine andere!" },
1416{ "Choose Color","Wähle Farbe" }, 1415{ "Choose Color","Wähle Farbe" },
1417{ " OK "," OK " }, 1416{ " OK "," OK " },
1418{ " Cancel "," Abbrechen " }, 1417{ " Cancel "," Abbrechen " },
1419{ "Matching items will be added to list","Passende werden zur Liste hinzugefügt" }, 1418{ "Matching items will be added to list","Passende werden zur Liste hinzugefügt" },
1420{ "Matching items will be removed from list","Passende werden von der Liste entfernt" }, 1419{ "Matching items will be removed from list","Passende werden von der Liste entfernt" },
1421{ "Search on displayed list only","Suche auf der dargestellten Liste" }, 1420{ "Search on displayed list only","Suche auf der dargestellten Liste" },
1422{ "List will be cleared before search","Liste wird vor der Suche gelöscht" }, 1421{ "List will be cleared before search","Liste wird vor der Suche gelöscht" },
1423{ "<center>%1</center> <center>is not running. Do you want to set\nthe state to running?</center>","<center>%1</center> <center>ist nicht am Laufen. Möchten Sie den Zustand auf "laufend" setzen?</center>" }, 1422{ "<center>%1</center> <center>is not running. Do you want to set\nthe state to running?</center>","<center>%1</center> <center>ist nicht am Laufen. Möchten Sie den Zustand auf "laufend" setzen?</center>" },
1424{ "%1\nis running!","%1\nist am Laufen!" }, 1423{ "%1\nis running!","%1\nist am Laufen!" },
1425{ "Additional Comment:","Zusätzlicher Kommentar:" }, 1424{ "Additional Comment:","Zusätzlicher Kommentar:" },
1426{ "Stop and save","Stopp und Speichern" }, 1425{ "Stop and save","Stopp und Speichern" },
1427{ "Continue running","Weiter laufen lassen" }, 1426{ "Continue running","Weiter laufen lassen" },
1428{ "Stop - do not save","Stopp - nicht Speichern" }, 1427{ "Stop - do not save","Stopp - nicht Speichern" },
1429{ "Do you really want to set\nthe state to stopped\nwithout saving the data?","Möchten sie den Zustand\nwirklich auf gestoppt setzen\nohne die Daten abzuspeichern?" }, 1428{ "Do you really want to set\nthe state to stopped\nwithout saving the data?","Möchten sie den Zustand\nwirklich auf gestoppt setzen\nohne die Daten abzuspeichern?" },
1430{ "Time mismatch!","Zeiten stimmen nicht!" }, 1429{ "Time mismatch!","Zeiten stimmen nicht!" },
1431{ "The start time is\nafter the end time!","Die Startzeit ist\nhinter der Endzeit!" }, 1430{ "The start time is\nafter the end time!","Die Startzeit ist\nhinter der Endzeit!" },
1432{ "Yes, stop todo","Ja, stoppe Todo" }, 1431{ "Yes, stop todo","Ja, stoppe Todo" },
1433{ "Todo stopped - no data saved because runtime was < 15 sec!","Todo gestoppt - nichts gespeichert da Laufzeit < 15 sec!" }, 1432{ "Todo stopped - no data saved because runtime was < 15 sec!","Todo gestoppt - nichts gespeichert da Laufzeit < 15 sec!" },
1434{ "Todo started! Double click again to stop!","Todo gestartet! Doppelklicke um es zu stoppen!" }, 1433{ "Todo started! Double click again to stop!","Todo gestartet! Doppelklicke um es zu stoppen!" },
1435{ "Please choose the <b>default calendar</b> in this column. Newly created or imported items are added to the default calendar.","Bitte wählen Sie den <b>Default-Kalender</b> in dieser Spalte. Neu angelegte oder importierte Einträge werden dem Default-Kalender hinzugefügt." }, 1434{ "Please choose the <b>default calendar</b> in this column. Newly created or imported items are added to the default calendar.","Bitte wählen Sie den <b>Default-Kalender</b> in dieser Spalte. Neu angelegte oder importierte Einträge werden dem Default-Kalender hinzugefügt." },
1436{ "Spouse","Ehegatte" }, 1435{ "Spouse","Ehegatte" },
1437{ "Notes","Notizen" }, 1436{ "Notes","Notizen" },
1438{ "Messanger","Messanger" }, 1437{ "Messanger","Messanger" },
1439{ "Assistant","Assistent" }, 1438{ "Assistant","Assistent" },
1440{ "Manager","Manager" }, 1439{ "Manager","Manager" },
1441{ "Secrecy","Sichtbar" }, 1440{ "Secrecy","Sichtbar" },
1442{ "male","männlich" }, 1441{ "male","männlich" },
1443{ "female","weiblich" }, 1442{ "female","weiblich" },
1444{ "Hide!","Verbergen!" }, 1443{ "Hide!","Verbergen!" },
1445{ "Show!","Anzeigen!" }, 1444{ "Show!","Anzeigen!" },
1446{ "Details","Details" }, 1445{ "Details","Details" },
1447{ "Profession","Beruf" }, 1446{ "Profession","Beruf" },
1448{ "Children","Kinder" }, 1447{ "Children","Kinder" },
1449{ "Department","Abteilung" }, 1448{ "Department","Abteilung" },
1450{ "Backup cancelled","Backup abgebrochen" }, 1449{ "Backup cancelled","Backup abgebrochen" },
1451{ "Backup globally disabled","Backup global abgeschaltet" }, 1450{ "Backup globally disabled","Backup global abgeschaltet" },
1452{ "Backup succesfully finished","Backup erfolgreich beendet" }, 1451{ "Backup succesfully finished","Backup erfolgreich beendet" },
1453{ "(Hint: You can enable automatic backup in the global settings!)","(Hinweis: Sie können ein automatisches Backup in den globalen Einstellungen konfigurieren!)" }, 1452{ "(Hint: You can enable automatic backup in the global settings!)","(Hinweis: Sie können ein automatisches Backup in den globalen Einstellungen konfigurieren!)" },
1454{ "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" }, 1453{ "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" },
1455{ "Birthdays","Geburtstage" }, 1454{ "Birthdays","Geburtstage" },
1456{ "KO/Pi import information!","KO/Pi Import Information!" }, 1455{ "KO/Pi import information!","KO/Pi Import Information!" },
1457{ "Start this todo\nand stop all running","Starte dieses Todo\nund stoppe alle Laufenden" }, 1456{ "Start this todo\nand stop all running","Starte dieses Todo\nund stoppe alle Laufenden" },
1458{ "Cancel - do not start"," Abbrechen - Todo nicht starten" }, 1457{ "Cancel - do not start"," Abbrechen - Todo nicht starten" },
1459{ "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?"" }, 1458{ "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?"" },
1460{ "Reload","Neu laden" }, 1459{ "Reload","Neu laden" },
1461{ "Timezone settings","Zeitzoneneinstellung" }, 1460{ "Timezone settings","Zeitzoneneinstellung" },
1462{ "Title: ","Titel: " }, 1461{ "Title: ","Titel: " },
1463{ "Journal from: ","Journal vom: " }, 1462{ "Journal from: ","Journal vom: " },
1464{ "Journal: %1 from ","Journal: %1 vom " }, 1463{ "Journal: %1 from ","Journal: %1 vom " },
1465{ "<b>Click here to edit categories: </b>","<b>Klicke hier um Kategorien zu ändern: </b>" }, 1464{ "<b>Click here to edit categories: </b>","<b>Klicke hier um Kategorien zu ändern: </b>" },
1466{ "Selected Item","Ausgewähltes Item" }, 1465{ "Selected Item","Ausgewähltes Item" },
1467{ "Select Date...","Wähle Datum..." }, 1466{ "Select Date...","Wähle Datum..." },
1468{ "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:" }, 1467{ "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:" },
1469{ "Change category list now!","Ändere Kategorieliste jetzt!" }, 1468{ "Change category list now!","Ändere Kategorieliste jetzt!" },
1470{ "Edit category list...","Ändere Kategorieliste..." }, 1469{ "Edit category list...","Ändere Kategorieliste..." },
1471{ "Toolbar changes needs a restart!","Neustart benötigt für Toolbaränderungen!" }, 1470{ "Toolbar changes needs a restart!","Neustart benötigt für Toolbaränderungen!" },
1472{ "Filepath: ","Dateipfad: " }, 1471{ "Filepath: ","Dateipfad: " },
1473{ "You can try to reload the calendar in the Resource View!","In der Resourcenansicht können Sie erneut versuchen den Kalender zu laden!" }, 1472{ "You can try to reload the calendar in the Resource View!","In der Resourcenansicht können Sie erneut versuchen den Kalender zu laden!" },
1474{ "<b>WARNING:</b> There is a pending suspended alarm!","<b>WARNUNG:</b> Es gibt einen laufenden Suspendalarm!" }, 1473{ "<b>WARNING:</b> There is a pending suspended alarm!","<b>WARNUNG:</b> Es gibt einen laufenden Suspendalarm!" },
1475{ "Pending Suspend Alarm","Laufender Suspend Alarm" }, 1474{ "Pending Suspend Alarm","Laufender Suspend Alarm" },
1476{ "Error loading calendar %1","Fehler beim Laden von Kalender %1" }, 1475{ "Error loading calendar %1","Fehler beim Laden von Kalender %1" },
1477{ "Calendar(s) not loaded:","Nicht geladene(r) Kalender:" }, 1476{ "Calendar(s) not loaded:","Nicht geladene(r) Kalender:" },
1478{ "Loding of calendar(s) failed","Laden von Kalendern fehlgeschlagen" }, 1477{ "Loding of calendar(s) failed","Laden von Kalendern fehlgeschlagen" },
1479{ "Alarm Options","Alarm Einstellungen" }, 1478{ "Alarm Options","Alarm Einstellungen" },
1480{ "Delete selected...","Lösche Ausgewählte..." }, 1479{ "Delete selected...","Lösche Ausgewählte..." },
1481{ "None","Nichts" }, 1480{ "None","Nichts" },
1482{ "Selection","Auswahl" }, 1481{ "Selection","Auswahl" },
1483{ "Set categories","Setze Kategorien" }, 1482{ "Set categories","Setze Kategorien" },
1484{ "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!" }, 1483{ "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!" },
1485{ "Reset","Neu setzen" }, 1484{ "Reset","Neu setzen" },
1486{ "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)?" }, 1485{ "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)?" },
1487{ "The file\n%1\ndoes not exist!\nShall I create it for you?","Die Datei\n%1\nexistiert nicht!\nSoll sie neu angelegt werden?" }, 1486{ "The file\n%1\ndoes not exist!\nShall I create it for you?","Die Datei\n%1\nexistiert nicht!\nSoll sie neu angelegt werden?" },
1488{ "Sorry, cannot create the file\n%1!\nNo calendar added!","Kann leider die Datei\n%1\nnicht anlegen!\nKein Kalender hinzugefügt!" }, 1487{ "Sorry, cannot create the file\n%1!\nNo calendar added!","Kann leider die Datei\n%1\nnicht anlegen!\nKein Kalender hinzugefügt!" },
1489{ "\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" }, 1488{ "\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" },
1490{ "\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" }, 1489{ "\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" },
1490{ "Edit","Edit" },
1491{ "","" }, 1491{ "","" },
1492{ "","" }, 1492{ "","" },
1493{ "","" }, 1493{ "","" },
1494{ "","" }, 1494{ "","" },
1495{ "","" }, 1495{ "","" },
1496{ "","" }, 1496{ "","" },
diff --git a/korganizer/koeventpopupmenu.cpp b/korganizer/koeventpopupmenu.cpp
index 41d331a..0b0fe8e 100644
--- a/korganizer/koeventpopupmenu.cpp
+++ b/korganizer/koeventpopupmenu.cpp
@@ -1,195 +1,195 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KOrganizer.
3 Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org> 3 Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org>
4 4
5 This program is free software; you can redistribute it and/or modify 5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by 6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or 7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version. 8 (at your option) any later version.
9 9
10 This program is distributed in the hope that it will be useful, 10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details. 13 GNU General Public License for more details.
14 14
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 18
19 As a special exception, permission is given to link this program 19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable, 20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution. 21 without including the source code for Qt in the source distribution.
22*/ 22*/
23 23
24#include <qcursor.h> 24#include <qcursor.h>
25 25
26#include <klocale.h> 26#include <klocale.h>
27#include <kdebug.h> 27#include <kdebug.h>
28#include <kiconloader.h> 28#include <kiconloader.h>
29 29
30#include <libkcal/event.h> 30#include <libkcal/event.h>
31 31
32#include "koeventpopupmenu.h" 32#include "koeventpopupmenu.h"
33#include "koprefs.h" 33#include "koprefs.h"
34 34
35KOEventPopupMenu::KOEventPopupMenu(): QPopupMenu() 35KOEventPopupMenu::KOEventPopupMenu(): QPopupMenu()
36{ 36{
37 mCurrentIncidence = 0; 37 mCurrentIncidence = 0;
38 mHasAdditionalItems = false; 38 mHasAdditionalItems = false;
39 39
40 40
41 mSingleOnlyItems.append( insertItem (i18n("&Show"),this,SLOT(popupShow()))); 41 mSingleOnlyItems.append( insertItem (i18n("&Show"),this,SLOT(popupShow())));
42 mEditOnlyItems.append(insertItem (i18n("&Edit..."),this,SLOT(popupEdit()))); 42 mEditOnlyItems.append(insertItem (i18n("&Edit..."),this,SLOT(popupEdit())));
43 mEditOnlyItems.append(insertItem (i18n("&Delete"), 43 mEditOnlyItems.append(insertItem (i18n("&Delete..."),
44 this,SLOT(popupDelete()))); 44 this,SLOT(popupDelete())));
45 mEditOnlyItems.append(insertItem (i18n("&Clone..."), 45 mEditOnlyItems.append(insertItem (i18n("&Clone..."),
46 this,SLOT(popupClone()))); 46 this,SLOT(popupClone())));
47 mEditOnlyItems.append(insertItem (i18n("&Move..."), 47 mEditOnlyItems.append(insertItem (i18n("&Move..."),
48 this,SLOT(popupMove()))); 48 this,SLOT(popupMove())));
49#ifndef DESKTOP_VERSION 49#ifndef DESKTOP_VERSION
50 mEditOnlyItems.append(insertItem (i18n("&Beam..."), 50 mEditOnlyItems.append(insertItem (i18n("&Beam..."),
51 this,SLOT(popupBeam()))); 51 this,SLOT(popupBeam())));
52#endif 52#endif
53 mEditOnlyItems.append(insertItem (i18n("&Toggle Cancel"), 53 mEditOnlyItems.append(insertItem (i18n("&Toggle Cancel"),
54 this,SLOT(popupCancel()))); 54 this,SLOT(popupCancel())));
55 isDisabled = false; 55 isDisabled = false;
56 mCatPopup = new QPopupMenu ( this ); 56 mCatPopup = new QPopupMenu ( this );
57 mCatPopup->setCheckable (true); 57 mCatPopup->setCheckable (true);
58 connect(mCatPopup,SIGNAL( aboutToShow ()), this ,SLOT( fillCatPopup())); 58 connect(mCatPopup,SIGNAL( aboutToShow ()), this ,SLOT( fillCatPopup()));
59 connect(mCatPopup,SIGNAL( activated ( int ) ), this ,SLOT( computeCatPopup( int ))); 59 connect(mCatPopup,SIGNAL( activated ( int ) ), this ,SLOT( computeCatPopup( int )));
60 mCalPopup = new QPopupMenu ( this ); 60 mCalPopup = new QPopupMenu ( this );
61 mCalPopup->setCheckable (true); 61 mCalPopup->setCheckable (true);
62 connect(mCalPopup,SIGNAL( aboutToShow ()), this ,SLOT( fillCalPopup())); 62 connect(mCalPopup,SIGNAL( aboutToShow ()), this ,SLOT( fillCalPopup()));
63 connect(mCalPopup,SIGNAL( activated ( int ) ), this ,SLOT( computeCalPopup( int ))); 63 connect(mCalPopup,SIGNAL( activated ( int ) ), this ,SLOT( computeCalPopup( int )));
64 mEditOnlyItems.append(insertItem (i18n("Categories"),mCatPopup )); 64 mEditOnlyItems.append(insertItem (i18n("Categories"),mCatPopup ));
65 mEditOnlyItems.append(insertItem (i18n("Calendar"),mCalPopup )); 65 mEditOnlyItems.append(insertItem (i18n("Calendar"),mCalPopup ));
66 QValueList<int>::Iterator it; 66 QValueList<int>::Iterator it;
67 for( it = mEditOnlyItems.begin(); it != mEditOnlyItems.end(); ++it ) { 67 for( it = mEditOnlyItems.begin(); it != mEditOnlyItems.end(); ++it ) {
68 mSingleOnlyItems.append(*it); 68 mSingleOnlyItems.append(*it);
69 } 69 }
70 70
71} 71}
72void KOEventPopupMenu::enableDefault( bool enable ) 72void KOEventPopupMenu::enableDefault( bool enable )
73{ 73{
74 isDisabled = !enable; 74 isDisabled = !enable;
75 QValueList<int>::Iterator it; 75 QValueList<int>::Iterator it;
76 for( it = mSingleOnlyItems.begin(); it != mSingleOnlyItems.end(); ++it ) { 76 for( it = mSingleOnlyItems.begin(); it != mSingleOnlyItems.end(); ++it ) {
77 setItemEnabled(*it,enable); 77 setItemEnabled(*it,enable);
78 } 78 }
79 79
80} 80}
81 81
82void KOEventPopupMenu::fillCalPopup() // CAL 82void KOEventPopupMenu::fillCalPopup() // CAL
83{ 83{
84 mCalPopup->clear(); 84 mCalPopup->clear();
85 if (!mCurrentIncidence) return; 85 if (!mCurrentIncidence) return;
86 KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); 86 KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first();
87 while ( kkf ) { 87 while ( kkf ) {
88 int index = mCalPopup->insertItem( kkf->mName, kkf->mCalNumber); 88 int index = mCalPopup->insertItem( kkf->mName, kkf->mCalNumber);
89 if ( kkf->mErrorOnLoad || kkf->isReadOnly ) 89 if ( kkf->mErrorOnLoad || kkf->isReadOnly )
90 mCalPopup->setItemEnabled( index, false ); 90 mCalPopup->setItemEnabled( index, false );
91 mCalPopup->setItemChecked (index, kkf->mCalNumber == mCurrentIncidence->calID()); 91 mCalPopup->setItemChecked (index, kkf->mCalNumber == mCurrentIncidence->calID());
92 kkf = KOPrefs::instance()->mCalendars.next(); 92 kkf = KOPrefs::instance()->mCalendars.next();
93 } 93 }
94} 94}
95void KOEventPopupMenu::computeCalPopup( int index ) // CAL 95void KOEventPopupMenu::computeCalPopup( int index ) // CAL
96{ 96{
97 if (!mCurrentIncidence) return; 97 if (!mCurrentIncidence) return;
98 mCurrentIncidence->setCalID( index ); 98 mCurrentIncidence->setCalID( index );
99 emit categoryChanged( mCurrentIncidence ); 99 emit categoryChanged( mCurrentIncidence );
100} 100}
101void KOEventPopupMenu::fillCatPopup() 101void KOEventPopupMenu::fillCatPopup()
102{ 102{
103 mCatPopup->clear(); 103 mCatPopup->clear();
104 if (!mCurrentIncidence) return; 104 if (!mCurrentIncidence) return;
105 QStringList checkedCategories = mCurrentIncidence->categories(); 105 QStringList checkedCategories = mCurrentIncidence->categories();
106 int index = 0; 106 int index = 0;
107 for (QStringList::Iterator it = KOPrefs::instance()->mCustomCategories.begin (); 107 for (QStringList::Iterator it = KOPrefs::instance()->mCustomCategories.begin ();
108 it != KOPrefs::instance()->mCustomCategories.end (); 108 it != KOPrefs::instance()->mCustomCategories.end ();
109 ++it) { 109 ++it) {
110 mCatPopup->insertItem (*it, index ); 110 mCatPopup->insertItem (*it, index );
111 if (checkedCategories.find (*it) != checkedCategories.end ()) { 111 if (checkedCategories.find (*it) != checkedCategories.end ()) {
112 mCatPopup->setItemChecked (index, true); 112 mCatPopup->setItemChecked (index, true);
113 } 113 }
114 ++index; 114 ++index;
115 } 115 }
116} 116}
117void KOEventPopupMenu::computeCatPopup( int index ) 117void KOEventPopupMenu::computeCatPopup( int index )
118{ 118{
119 if (!mCurrentIncidence) return; 119 if (!mCurrentIncidence) return;
120 QStringList categories = mCurrentIncidence->categories(); 120 QStringList categories = mCurrentIncidence->categories();
121 QString colcat = categories.first(); 121 QString colcat = categories.first();
122 if (categories.find (KOPrefs::instance()->mCustomCategories[index]) != categories.end ()) 122 if (categories.find (KOPrefs::instance()->mCustomCategories[index]) != categories.end ())
123 categories.remove (KOPrefs::instance()->mCustomCategories[index]); 123 categories.remove (KOPrefs::instance()->mCustomCategories[index]);
124 else 124 else
125 categories.insert (categories.end(), KOPrefs::instance()->mCustomCategories[index]); 125 categories.insert (categories.end(), KOPrefs::instance()->mCustomCategories[index]);
126 categories.sort (); 126 categories.sort ();
127 if ( !colcat.isEmpty() ) { 127 if ( !colcat.isEmpty() ) {
128 if ( categories.find ( colcat ) != categories.end () ) { 128 if ( categories.find ( colcat ) != categories.end () ) {
129 categories.remove( colcat ); 129 categories.remove( colcat );
130 categories.prepend( colcat ); 130 categories.prepend( colcat );
131 } 131 }
132 } 132 }
133 mCurrentIncidence->setCategories( categories ); 133 mCurrentIncidence->setCategories( categories );
134 emit categoryChanged( mCurrentIncidence ); 134 emit categoryChanged( mCurrentIncidence );
135} 135}
136void KOEventPopupMenu::showIncidencePopup(Incidence *incidence) 136void KOEventPopupMenu::showIncidencePopup(Incidence *incidence)
137{ 137{
138 if ( !incidence) return; 138 if ( !incidence) return;
139 mCurrentIncidence = incidence; 139 mCurrentIncidence = incidence;
140 140
141 if (mCurrentIncidence) { 141 if (mCurrentIncidence) {
142 // Enable/Disabled menu items only valid for editable events. 142 // Enable/Disabled menu items only valid for editable events.
143 if ( !isDisabled ) { 143 if ( !isDisabled ) {
144 QValueList<int>::Iterator it; 144 QValueList<int>::Iterator it;
145 for( it = mEditOnlyItems.begin(); it != mEditOnlyItems.end(); ++it ) { 145 for( it = mEditOnlyItems.begin(); it != mEditOnlyItems.end(); ++it ) {
146 setItemEnabled(*it,!mCurrentIncidence->isReadOnly()); 146 setItemEnabled(*it,!mCurrentIncidence->isReadOnly());
147 } 147 }
148 } 148 }
149 popup(QCursor::pos()); 149 popup(QCursor::pos());
150 } 150 }
151} 151}
152 152
153void KOEventPopupMenu::addAdditionalItem(const QIconSet &icon,const QString &text, 153void KOEventPopupMenu::addAdditionalItem(const QIconSet &icon,const QString &text,
154 const QObject *receiver, const char *member, 154 const QObject *receiver, const char *member,
155 bool editOnly) 155 bool editOnly)
156{ 156{
157 if (!mHasAdditionalItems) { 157 if (!mHasAdditionalItems) {
158 mHasAdditionalItems = true; 158 mHasAdditionalItems = true;
159 insertSeparator(); 159 insertSeparator();
160 } 160 }
161 int id = insertItem(icon,text,receiver,member); 161 int id = insertItem(icon,text,receiver,member);
162 if (editOnly) mEditOnlyItems.append(id); 162 if (editOnly) mEditOnlyItems.append(id);
163} 163}
164 164
165void KOEventPopupMenu::popupShow() 165void KOEventPopupMenu::popupShow()
166{ 166{
167 if (mCurrentIncidence) emit showIncidenceSignal(mCurrentIncidence); 167 if (mCurrentIncidence) emit showIncidenceSignal(mCurrentIncidence);
168} 168}
169 169
170void KOEventPopupMenu::popupEdit() 170void KOEventPopupMenu::popupEdit()
171{ 171{
172 if (mCurrentIncidence) emit editIncidenceSignal(mCurrentIncidence); 172 if (mCurrentIncidence) emit editIncidenceSignal(mCurrentIncidence);
173} 173}
174 174
175void KOEventPopupMenu::popupDelete() 175void KOEventPopupMenu::popupDelete()
176{ 176{
177 if (mCurrentIncidence) emit deleteIncidenceSignal(mCurrentIncidence); 177 if (mCurrentIncidence) emit deleteIncidenceSignal(mCurrentIncidence);
178} 178}
179void KOEventPopupMenu::popupClone() 179void KOEventPopupMenu::popupClone()
180{ 180{
181 if (mCurrentIncidence) emit cloneIncidenceSignal(mCurrentIncidence); 181 if (mCurrentIncidence) emit cloneIncidenceSignal(mCurrentIncidence);
182} 182}
183void KOEventPopupMenu::popupCancel() 183void KOEventPopupMenu::popupCancel()
184{ 184{
185 if (mCurrentIncidence) emit cancelIncidenceSignal(mCurrentIncidence); 185 if (mCurrentIncidence) emit cancelIncidenceSignal(mCurrentIncidence);
186} 186}
187void KOEventPopupMenu::popupMove() 187void KOEventPopupMenu::popupMove()
188{ 188{
189 if (mCurrentIncidence) emit moveIncidenceSignal(mCurrentIncidence); 189 if (mCurrentIncidence) emit moveIncidenceSignal(mCurrentIncidence);
190} 190}
191 191
192void KOEventPopupMenu::popupBeam() 192void KOEventPopupMenu::popupBeam()
193{ 193{
194 if (mCurrentIncidence) emit beamIncidenceSignal(mCurrentIncidence); 194 if (mCurrentIncidence) emit beamIncidenceSignal(mCurrentIncidence);
195} 195}
diff --git a/korganizer/kolistview.cpp b/korganizer/kolistview.cpp
index cdcbbf0..ea037a9 100644
--- a/korganizer/kolistview.cpp
+++ b/korganizer/kolistview.cpp
@@ -1,734 +1,734 @@
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 <qwhatsthis.h> 35#include <qwhatsthis.h>
36#include <qregexp.h> 36#include <qregexp.h>
37#include <qpainter.h> 37#include <qpainter.h>
38#include <qpaintdevicemetrics.h> 38#include <qpaintdevicemetrics.h>
39 39
40#include <klocale.h> 40#include <klocale.h>
41#include <kdebug.h> 41#include <kdebug.h>
42#include <kiconloader.h> 42#include <kiconloader.h>
43#include <kglobal.h> 43#include <kglobal.h>
44 44
45#include <libkdepim/kpimglobalprefs.h> 45#include <libkdepim/kpimglobalprefs.h>
46#include <libkcal/calendar.h> 46#include <libkcal/calendar.h>
47#include <libkcal/calendarlocal.h> 47#include <libkcal/calendarlocal.h>
48#include <libkcal/icalformat.h> 48#include <libkcal/icalformat.h>
49#include <libkcal/vcalformat.h> 49#include <libkcal/vcalformat.h>
50#include <libkcal/recurrence.h> 50#include <libkcal/recurrence.h>
51#include <libkcal/filestorage.h> 51#include <libkcal/filestorage.h>
52#include <libkdepim/categoryselectdialog.h> 52#include <libkdepim/categoryselectdialog.h>
53#include <libkcal/kincidenceformatter.h> 53#include <libkcal/kincidenceformatter.h>
54#ifndef DESKTOP_VERSION 54#ifndef DESKTOP_VERSION
55#include <qpe/qpeapplication.h> 55#include <qpe/qpeapplication.h>
56#else 56#else
57#include <qapplication.h> 57#include <qapplication.h>
58#endif 58#endif
59 59
60#ifndef KORG_NOPRINTER 60#ifndef KORG_NOPRINTER
61#include "calprinter.h" 61#include "calprinter.h"
62#endif 62#endif
63#include "koglobals.h" 63#include "koglobals.h"
64#include "koprefs.h" 64#include "koprefs.h"
65#include "kfiledialog.h" 65#include "kfiledialog.h"
66 66
67#include "kolistview.h" 67#include "kolistview.h"
68#include "koeventviewer.h" 68#include "koeventviewer.h"
69 69
70extern QPixmap* sgListViewCompletedPix[6]; 70extern QPixmap* sgListViewCompletedPix[6];
71 71
72class KOListViewWhatsThis :public QWhatsThis 72class KOListViewWhatsThis :public QWhatsThis
73{ 73{
74public: 74public:
75 KOListViewWhatsThis( QWidget *wid, KOListView* view ) : QWhatsThis( wid ), _wid(wid),_view (view) { }; 75 KOListViewWhatsThis( QWidget *wid, KOListView* view ) : QWhatsThis( wid ), _wid(wid),_view (view) { };
76 76
77protected: 77protected:
78 virtual QString text( const QPoint& p) 78 virtual QString text( const QPoint& p)
79 { 79 {
80 return _view->getWhatsThisText(p) ; 80 return _view->getWhatsThisText(p) ;
81 } 81 }
82private: 82private:
83 QWidget* _wid; 83 QWidget* _wid;
84 KOListView * _view; 84 KOListView * _view;
85}; 85};
86 86
87 87
88ListItemVisitor::ListItemVisitor(KOListViewItem *item, QDate date ) 88ListItemVisitor::ListItemVisitor(KOListViewItem *item, QDate date )
89{ 89{
90 mItem = item; 90 mItem = item;
91 mDate = date; 91 mDate = date;
92} 92}
93 93
94ListItemVisitor::~ListItemVisitor() 94ListItemVisitor::~ListItemVisitor()
95{ 95{
96} 96}
97 97
98bool ListItemVisitor::visit(Event *e) 98bool ListItemVisitor::visit(Event *e)
99{ 99{
100 bool ok = false; 100 bool ok = false;
101 QString start, end; 101 QString start, end;
102 QDate ds, de; 102 QDate ds, de;
103 if ( e->doesRecur() ) { 103 if ( e->doesRecur() ) {
104 ds = e->getNextOccurence( QDateTime( mDate, QTime(0,0,0)), &ok ).date(); 104 ds = e->getNextOccurence( QDateTime( mDate, QTime(0,0,0)), &ok ).date();
105 if ( ok ) { 105 if ( ok ) {
106 int days = e->dtStart().date().daysTo(e->dtEnd().date() ); 106 int days = e->dtStart().date().daysTo(e->dtEnd().date() );
107 start = KGlobal::locale()->formatDate(ds,true); 107 start = KGlobal::locale()->formatDate(ds,true);
108 de = ds.addDays( days); 108 de = ds.addDays( days);
109 end = KGlobal::locale()->formatDate(de,true); 109 end = KGlobal::locale()->formatDate(de,true);
110 } 110 }
111 111
112 } 112 }
113 if ( ! ok ) { 113 if ( ! ok ) {
114 start =e->dtStartDateStr(); 114 start =e->dtStartDateStr();
115 end = e->dtEndDateStr(); 115 end = e->dtEndDateStr();
116 ds = e->dtStart().date(); 116 ds = e->dtStart().date();
117 de = e->dtEnd().date(); 117 de = e->dtEnd().date();
118 } 118 }
119 mItem->setText(0,e->summary()); 119 mItem->setText(0,e->summary());
120 mItem->setText(1,start); 120 mItem->setText(1,start);
121 if ( e->doesFloat() ) 121 if ( e->doesFloat() )
122 mItem->setText(2,"---"); 122 mItem->setText(2,"---");
123 else 123 else
124 mItem->setText(2,e->dtStartTimeStr()); 124 mItem->setText(2,e->dtStartTimeStr());
125 mItem->setText(3,end); 125 mItem->setText(3,end);
126 if ( e->doesFloat() ) 126 if ( e->doesFloat() )
127 mItem->setText(4,"---"); 127 mItem->setText(4,"---");
128 else 128 else
129 mItem->setText(4,e->dtEndTimeStr()); 129 mItem->setText(4,e->dtEndTimeStr());
130 if ( e->isAlarmEnabled() ) { 130 if ( e->isAlarmEnabled() ) {
131 mItem->setText(5,e->alarms().first()->offsetText() ); 131 mItem->setText(5,e->alarms().first()->offsetText() );
132 } else { 132 } else {
133 mItem->setText(5, i18n("No")); 133 mItem->setText(5, i18n("No"));
134 } 134 }
135 mItem->setText(6, e->recurrence()->recurrenceText()); 135 mItem->setText(6, e->recurrence()->recurrenceText());
136 if( ! e->doesRecur() ) 136 if( ! e->doesRecur() )
137 mItem->setSortKey( 6, "-" ); 137 mItem->setSortKey( 6, "-" );
138 mItem->setText(7,"---"); 138 mItem->setText(7,"---");
139 mItem->setText(8,"---"); 139 mItem->setText(8,"---");
140 mItem->setText(9, e->cancelled() ? i18n("Yes") : i18n("No")); 140 mItem->setText(9, e->cancelled() ? i18n("Yes") : i18n("No"));
141 mItem->setText(10,e->categoriesStr()); 141 mItem->setText(10,e->categoriesStr());
142 mItem->setText(11, KOPrefs::instance()->calName( e->calID() )); 142 mItem->setText(11, KOPrefs::instance()->calName( e->calID() ));
143 143
144 QString key; 144 QString key;
145 QTime t = e->doesFloat() ? QTime(0,0) : e->dtStart().time(); 145 QTime t = e->doesFloat() ? QTime(0,0) : e->dtStart().time();
146 key.sprintf("%04d%02d%02d%02d%02d",ds.year(),ds.month(),ds.day(),t.hour(),t.minute()); 146 key.sprintf("%04d%02d%02d%02d%02d",ds.year(),ds.month(),ds.day(),t.hour(),t.minute());
147 mItem->setSortKey(1,key); 147 mItem->setSortKey(1,key);
148 148
149 t = e->doesFloat() ? QTime(0,0) : e->dtEnd().time(); 149 t = e->doesFloat() ? QTime(0,0) : e->dtEnd().time();
150 key.sprintf("%04d%02d%02d%02d%02d",de.year(),de.month(),de.day(),t.hour(),t.minute()); 150 key.sprintf("%04d%02d%02d%02d%02d",de.year(),de.month(),de.day(),t.hour(),t.minute());
151 mItem->setSortKey(3,key); 151 mItem->setSortKey(3,key);
152 return true; 152 return true;
153} 153}
154 154
155bool ListItemVisitor::visit(Todo *t) 155bool ListItemVisitor::visit(Todo *t)
156{ 156{
157 mItem->setText(0,t->summary()); 157 mItem->setText(0,t->summary());
158 if ( t->isCompleted() ) { 158 if ( t->isCompleted() ) {
159 mItem->setSortKey(0,"99"+ t->summary().left(10)); 159 mItem->setSortKey(0,"99"+ t->summary().left(10));
160 } else 160 } else
161 mItem->setSortKey(0,QString::number( t->percentComplete() )+ t->summary().left(10)); 161 mItem->setSortKey(0,QString::number( t->percentComplete() )+ t->summary().left(10));
162 mItem->setPixmap( 0, *(sgListViewCompletedPix[t->percentComplete()/20])); 162 mItem->setPixmap( 0, *(sgListViewCompletedPix[t->percentComplete()/20]));
163 if (t->hasStartDate()) { 163 if (t->hasStartDate()) {
164 mItem->setText(1,t->dtStartDateStr()); 164 mItem->setText(1,t->dtStartDateStr());
165 if (t->doesFloat()) { 165 if (t->doesFloat()) {
166 mItem->setText(2,"---"); 166 mItem->setText(2,"---");
167 } else { 167 } else {
168 mItem->setText(2,t->dtStartTimeStr()); 168 mItem->setText(2,t->dtStartTimeStr());
169 } 169 }
170 } else { 170 } else {
171 mItem->setText(1,"---"); 171 mItem->setText(1,"---");
172 mItem->setText(2,"---"); 172 mItem->setText(2,"---");
173 } 173 }
174 mItem->setText(3,"---"); 174 mItem->setText(3,"---");
175 mItem->setText(4,"---"); 175 mItem->setText(4,"---");
176 if ( t->isAlarmEnabled() ) { 176 if ( t->isAlarmEnabled() ) {
177 mItem->setText(5,t->alarms().first()->offsetText() ); 177 mItem->setText(5,t->alarms().first()->offsetText() );
178 } else { 178 } else {
179 mItem->setText(5, i18n("No")); 179 mItem->setText(5, i18n("No"));
180 } 180 }
181 mItem->setText(6, t->recurrence()->recurrenceText()); 181 mItem->setText(6, t->recurrence()->recurrenceText());
182 if( ! t->doesRecur() ) 182 if( ! t->doesRecur() )
183 mItem->setSortKey( 6, "-" ); 183 mItem->setSortKey( 6, "-" );
184 if (t->hasDueDate()) { 184 if (t->hasDueDate()) {
185 mItem->setText(7,t->dtDueDateStr()); 185 mItem->setText(7,t->dtDueDateStr());
186 if (t->doesFloat()) { 186 if (t->doesFloat()) {
187 mItem->setText(8,"---"); 187 mItem->setText(8,"---");
188 } else { 188 } else {
189 mItem->setText(8,t->dtDueTimeStr()); 189 mItem->setText(8,t->dtDueTimeStr());
190 } 190 }
191 } else { 191 } else {
192 mItem->setText(7,"---"); 192 mItem->setText(7,"---");
193 mItem->setText(8,"---"); 193 mItem->setText(8,"---");
194 } 194 }
195 mItem->setText(9, t->cancelled() ? i18n("Yes") : i18n("No")); 195 mItem->setText(9, t->cancelled() ? i18n("Yes") : i18n("No"));
196 mItem->setText(10,t->categoriesStr()); 196 mItem->setText(10,t->categoriesStr());
197 mItem->setText(11, KOPrefs::instance()->calName( t->calID() )); 197 mItem->setText(11, KOPrefs::instance()->calName( t->calID() ));
198 198
199 QString key; 199 QString key;
200 QDate d; 200 QDate d;
201 if (t->hasDueDate()) { 201 if (t->hasDueDate()) {
202 d = t->dtDue().date(); 202 d = t->dtDue().date();
203 QTime tm = t->doesFloat() ? QTime(0,0) : t->dtDue().time(); 203 QTime tm = t->doesFloat() ? QTime(0,0) : t->dtDue().time();
204 key.sprintf("%04d%02d%02d%02d%02d",d.year(),d.month(),d.day(),tm.hour(),tm.minute()); 204 key.sprintf("%04d%02d%02d%02d%02d",d.year(),d.month(),d.day(),tm.hour(),tm.minute());
205 mItem->setSortKey(7,key); 205 mItem->setSortKey(7,key);
206 } 206 }
207 if ( t->hasStartDate() ) { 207 if ( t->hasStartDate() ) {
208 d = t->dtStart().date(); 208 d = t->dtStart().date();
209 QTime tm = t->doesFloat() ? QTime(0,0) : t->dtStart().time(); 209 QTime tm = t->doesFloat() ? QTime(0,0) : t->dtStart().time();
210 key.sprintf("%04d%02d%02d%02d%02d",d.year(),d.month(),d.day(),tm.hour(),tm.minute()); 210 key.sprintf("%04d%02d%02d%02d%02d",d.year(),d.month(),d.day(),tm.hour(),tm.minute());
211 mItem->setSortKey(1,key); 211 mItem->setSortKey(1,key);
212 } 212 }
213 return true; 213 return true;
214} 214}
215 215
216bool ListItemVisitor::visit(Journal * j) 216bool ListItemVisitor::visit(Journal * j)
217{ 217{
218 218
219 QString des; 219 QString des;
220 if ( !j->summary().isEmpty() ) { 220 if ( !j->summary().isEmpty() ) {
221 des = j->summary(); 221 des = j->summary();
222 } else { 222 } else {
223 des = j->description().left(30); 223 des = j->description().left(30);
224 des = des.simplifyWhiteSpace (); 224 des = des.simplifyWhiteSpace ();
225 des.replace (QRegExp ("\\n"),"" ); 225 des.replace (QRegExp ("\\n"),"" );
226 des.replace (QRegExp ("\\r"),"" ); 226 des.replace (QRegExp ("\\r"),"" );
227 } 227 }
228 mItem->setText(0,i18n("Journal: ")+des.left(25)); 228 mItem->setText(0,i18n("Journal: ")+des.left(25));
229 mItem->setText(1,j->dtStartDateStr()); 229 mItem->setText(1,j->dtStartDateStr());
230 mItem->setText(2,"---"); 230 mItem->setText(2,"---");
231 mItem->setText(3,"---"); 231 mItem->setText(3,"---");
232 mItem->setText(4,"---"); 232 mItem->setText(4,"---");
233 mItem->setText(5,"---"); 233 mItem->setText(5,"---");
234 mItem->setText(6,"---"); 234 mItem->setText(6,"---");
235 mItem->setText(7,j->dtStartDateStr()); 235 mItem->setText(7,j->dtStartDateStr());
236 mItem->setText(8,"---"); 236 mItem->setText(8,"---");
237 mItem->setText(9,"---"); 237 mItem->setText(9,"---");
238 mItem->setText(10,j->categoriesStr()); 238 mItem->setText(10,j->categoriesStr());
239 mItem->setText(11, KOPrefs::instance()->calName( j->calID() )); 239 mItem->setText(11, KOPrefs::instance()->calName( j->calID() ));
240 240
241 QString key; 241 QString key;
242 QDate d = j->dtStart().date(); 242 QDate d = j->dtStart().date();
243 key.sprintf("%04d%02d%02d",d.year(),d.month(),d.day()); 243 key.sprintf("%04d%02d%02d",d.year(),d.month(),d.day());
244 mItem->setSortKey(1,key); 244 mItem->setSortKey(1,key);
245 mItem->setSortKey(7,key); 245 mItem->setSortKey(7,key);
246 246
247 return true; 247 return true;
248} 248}
249 249
250KOListView::KOListView(Calendar *calendar, QWidget *parent, 250KOListView::KOListView(Calendar *calendar, QWidget *parent,
251 const char *name) 251 const char *name)
252 : KOEventView(calendar, parent, name) 252 : KOEventView(calendar, parent, name)
253{ 253{
254 254
255 mActiveItem = 0; 255 mActiveItem = 0;
256 mForceShowCompletedTodos = false; 256 mForceShowCompletedTodos = false;
257 mListView = new KOListViewListView(this); 257 mListView = new KOListViewListView(this);
258 mListView->addColumn(i18n("Summary")); 258 mListView->addColumn(i18n("Summary"));
259 mListView->addColumn(i18n("Start Date")); 259 mListView->addColumn(i18n("Start Date"));
260 mListView->addColumn(i18n("Start Time")); 260 mListView->addColumn(i18n("Start Time"));
261 mListView->addColumn(i18n("End Date")); 261 mListView->addColumn(i18n("End Date"));
262 mListView->addColumn(i18n("End Time")); 262 mListView->addColumn(i18n("End Time"));
263 mListView->addColumn(i18n("Alarm")); // alarm set? 263 mListView->addColumn(i18n("Alarm")); // alarm set?
264 mListView->addColumn(i18n("Recurs")); // recurs? 264 mListView->addColumn(i18n("Recurs")); // recurs?
265 mListView->addColumn(i18n("Due Date")); 265 mListView->addColumn(i18n("Due Date"));
266 mListView->addColumn(i18n("Due Time")); 266 mListView->addColumn(i18n("Due Time"));
267 mListView->addColumn(i18n("Cancelled")); 267 mListView->addColumn(i18n("Cancelled"));
268 mListView->addColumn(i18n("Categories")); 268 mListView->addColumn(i18n("Categories"));
269 mListView->addColumn(i18n("Calendar")); 269 mListView->addColumn(i18n("Calendar"));
270 270
271 mListView->setColumnAlignment(0,AlignLeft); 271 mListView->setColumnAlignment(0,AlignLeft);
272 mListView->setColumnAlignment(1,AlignLeft); 272 mListView->setColumnAlignment(1,AlignLeft);
273 mListView->setColumnAlignment(2,AlignHCenter); 273 mListView->setColumnAlignment(2,AlignHCenter);
274 mListView->setColumnAlignment(3,AlignLeft); 274 mListView->setColumnAlignment(3,AlignLeft);
275 mListView->setColumnAlignment(4,AlignHCenter); 275 mListView->setColumnAlignment(4,AlignHCenter);
276 mListView->setColumnAlignment(5,AlignLeft); 276 mListView->setColumnAlignment(5,AlignLeft);
277 mListView->setColumnAlignment(6,AlignLeft); 277 mListView->setColumnAlignment(6,AlignLeft);
278 mListView->setColumnAlignment(7,AlignLeft); 278 mListView->setColumnAlignment(7,AlignLeft);
279 mListView->setColumnAlignment(8,AlignLeft); 279 mListView->setColumnAlignment(8,AlignLeft);
280 mListView->setColumnAlignment(9,AlignLeft); 280 mListView->setColumnAlignment(9,AlignLeft);
281 mListView->setColumnAlignment(10,AlignLeft); 281 mListView->setColumnAlignment(10,AlignLeft);
282 mListView->setColumnAlignment(11,AlignLeft); 282 mListView->setColumnAlignment(11,AlignLeft);
283 mKOListViewWhatsThis = new KOListViewWhatsThis(mListView->viewport(),this); 283 mKOListViewWhatsThis = new KOListViewWhatsThis(mListView->viewport(),this);
284 284
285 int iii = 0; 285 int iii = 0;
286 for ( iii = 0; iii< 12 ; ++iii ) 286 for ( iii = 0; iii< 12 ; ++iii )
287 mListView->setColumnWidthMode( iii, QListView::Manual ); 287 mListView->setColumnWidthMode( iii, QListView::Manual );
288 288
289 QBoxLayout *layoutTop = new QVBoxLayout(this); 289 QBoxLayout *layoutTop = new QVBoxLayout(this);
290 layoutTop->addWidget(mListView); 290 layoutTop->addWidget(mListView);
291 mListView->setFont ( KOPrefs::instance()->mListViewFont ); 291 mListView->setFont ( KOPrefs::instance()->mListViewFont );
292 mPopupMenu = eventPopup(); 292 mPopupMenu = eventPopup();
293 QPopupMenu* selPopup = new QPopupMenu ( this ); 293 QPopupMenu* selPopup = new QPopupMenu ( this );
294 mPopupMenu->insertSeparator(); 294 mPopupMenu->insertSeparator();
295 295
296 selPopup->insertItem(i18n("All"),this, 296 selPopup->insertItem(i18n("All"),this,
297 SLOT(allSelection())); 297 SLOT(allSelection()));
298 selPopup->insertItem(i18n("None"),this, 298 selPopup->insertItem(i18n("None"),this,
299 SLOT(clearSelection())); 299 SLOT(clearSelection()));
300 selPopup->insertItem(i18n("Delete selected..."),this, 300 selPopup->insertItem(i18n("Delete selected..."),this,
301 SLOT(deleteAll())); 301 SLOT(deleteAll()));
302 mPopupMenu->insertItem(i18n("Selection"), selPopup ); 302 mPopupMenu->insertItem(i18n("Selection"), selPopup );
303 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), 303 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
304 i18n("Hide all selected"),this, 304 i18n("Hide all selected"),this,
305 SLOT(hideAll()),true); 305 SLOT(hideAll()),true);
306 306
307 selPopup->insertSeparator(); 307 selPopup->insertSeparator();
308#ifdef DESKTOP_VERSION 308#ifdef DESKTOP_VERSION
309 mPopupMenu->insertSeparator(); 309 mPopupMenu->insertSeparator();
310 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), 310 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
311 i18n("Print complete list"),this, 311 i18n("Print complete list"),this,
312 SLOT(printList()),true); 312 SLOT(printList()),true);
313#endif 313#endif
314 mCalPopup = new QPopupMenu ( this ); 314 mCalPopup = new QPopupMenu ( this );
315 selPopup->insertItem( i18n("Set Calendar"), mCalPopup ); 315 selPopup->insertItem( i18n("Set Calendar"), mCalPopup );
316 316
317 selPopup->insertItem(i18n("Set categories")+"...",this, 317 selPopup->insertItem(i18n("Set categories")+"...",this,
318 SLOT(setCat()) ); 318 SLOT(setCat()) );
319 selPopup->insertItem( i18n("Set alarm..."),this, 319 selPopup->insertItem( i18n("Set alarm..."),this,
320 SLOT(setAlarm())); 320 SLOT(setAlarm()));
321#if 0 321#if 0
322 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), 322 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
323 i18n("Set categories")+"...",this, 323 i18n("Set categories")+"...",this,
324 SLOT(setCat()),true); 324 SLOT(setCat()),true);
325 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), 325 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
326 i18n("Set alarm..."),this, 326 i18n("Set alarm..."),this,
327 SLOT(setAlarm()),true); 327 SLOT(setAlarm()),true);
328#endif 328#endif
329 QObject::connect(mCalPopup,SIGNAL(aboutToShow()),this, 329 QObject::connect(mCalPopup,SIGNAL(aboutToShow()),this,
330 SLOT( populateCalPopup() )); 330 SLOT( populateCalPopup() ));
331 QObject::connect(mCalPopup,SIGNAL(activated( int )),this, 331 QObject::connect(mCalPopup,SIGNAL(activated( int )),this,
332 SLOT( setCalendar( int ) )); 332 SLOT( setCalendar( int ) ));
333 QObject::connect(mPopupMenu,SIGNAL(categoryChanged( Incidence * )),this, 333 QObject::connect(mPopupMenu,SIGNAL(categoryChanged( Incidence * )),this,
334 SLOT( catChanged( Incidence * ) )); 334 SLOT( catChanged( Incidence * ) ));
335 QPopupMenu * exportPO = new QPopupMenu ( this ); 335 QPopupMenu * exportPO = new QPopupMenu ( this );
336 selPopup->insertItem( i18n("Export"), exportPO ); 336 selPopup->insertItem( i18n("Export"), exportPO );
337 exportPO->insertItem( i18n("As iCal (ics) file..."),this, 337 exportPO->insertItem( i18n("As iCal (ics) file..."),this,
338 SLOT(saveToFile())); 338 SLOT(saveToFile()));
339 exportPO->insertItem( i18n("As vCal (vcs) file..."),this, 339 exportPO->insertItem( i18n("As vCal (vcs) file..."),this,
340 SLOT(saveToFileVCS())); 340 SLOT(saveToFileVCS()));
341 exportPO->insertItem( i18n("Journal/Details..."),this, 341 exportPO->insertItem( i18n("Journal/Details..."),this,
342 SLOT(saveDescriptionToFile())); 342 SLOT(saveDescriptionToFile()));
343 // mPopupMenu->insertSeparator(); 343 // mPopupMenu->insertSeparator();
344 // mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), 344 // mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
345 // i18n("Add Categ. to selected..."),this, 345 // i18n("Add Categ. to selected..."),this,
346 // SLOT(addCat()),true); 346 // SLOT(addCat()),true);
347 //mPopupMenu->insertSeparator(); 347 //mPopupMenu->insertSeparator();
348#ifndef DESKTOP_VERSION 348#ifndef DESKTOP_VERSION
349 selPopup->insertSeparator(); 349 selPopup->insertSeparator();
350 selPopup->insertItem( i18n("Beam via IR"),this, 350 selPopup->insertItem( i18n("Beam via IR..."),this,
351 SLOT(beamSelected())); 351 SLOT(beamSelected()));
352#if 0 352#if 0
353 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), 353 mPopupMenu->addAdditionalItem(QIconSet(QPixmap()),
354 i18n("Beam via IR"),this, 354 i18n("Beam via IR"),this,
355 SLOT(beamSelected()),true); 355 SLOT(beamSelected()),true);
356#endif 356#endif
357#endif 357#endif
358 /* 358 /*
359 mPopupMenu = new QPopupMenu; 359 mPopupMenu = new QPopupMenu;
360 mPopupMenu->insertItem(i18n("Edit Event"), this, 360 mPopupMenu->insertItem(i18n("Edit Event"), this,
361 SLOT (editEvent())); 361 SLOT (editEvent()));
362 mPopupMenu->insertItem(SmallIcon("delete"), i18n("Delete Event"), this, 362 mPopupMenu->insertItem(SmallIcon("delete"), i18n("Delete Event"), this,
363 SLOT (deleteEvent())); 363 SLOT (deleteEvent()));
364 mPopupMenu->insertSeparator(); 364 mPopupMenu->insertSeparator();
365 mPopupMenu->insertItem(i18n("Show Dates"), this, 365 mPopupMenu->insertItem(i18n("Show Dates"), this,
366 SLOT(showDates())); 366 SLOT(showDates()));
367 mPopupMenu->insertItem(i18n("Hide Dates"), this, 367 mPopupMenu->insertItem(i18n("Hide Dates"), this,
368 SLOT(hideDates())); 368 SLOT(hideDates()));
369 */ 369 */
370 QObject::connect(mListView,SIGNAL( newEvent()), 370 QObject::connect(mListView,SIGNAL( newEvent()),
371 this,SIGNAL(signalNewEvent())); 371 this,SIGNAL(signalNewEvent()));
372 QObject::connect(mListView,SIGNAL(doubleClicked(QListViewItem *)), 372 QObject::connect(mListView,SIGNAL(doubleClicked(QListViewItem *)),
373 this,SLOT(defaultItemAction(QListViewItem *))); 373 this,SLOT(defaultItemAction(QListViewItem *)));
374 QObject::connect(mListView,SIGNAL(rightButtonPressed( QListViewItem *, 374 QObject::connect(mListView,SIGNAL(rightButtonPressed( QListViewItem *,
375 const QPoint &, int )), 375 const QPoint &, int )),
376 this,SLOT(popupMenu(QListViewItem *,const QPoint &,int))); 376 this,SLOT(popupMenu(QListViewItem *,const QPoint &,int)));
377 QObject::connect(mListView,SIGNAL(currentChanged(QListViewItem *)), 377 QObject::connect(mListView,SIGNAL(currentChanged(QListViewItem *)),
378 SLOT(processSelectionChange(QListViewItem *))); 378 SLOT(processSelectionChange(QListViewItem *)));
379 QObject::connect(mListView,SIGNAL(showIncidence(Incidence *)), 379 QObject::connect(mListView,SIGNAL(showIncidence(Incidence *)),
380 SIGNAL(showIncidenceSignal(Incidence *)) ); 380 SIGNAL(showIncidenceSignal(Incidence *)) );
381 381
382 readSettings(KOGlobals::config(),"KOListView Layout"); 382 readSettings(KOGlobals::config(),"KOListView Layout");
383} 383}
384 384
385KOListView::~KOListView() 385KOListView::~KOListView()
386{ 386{
387 delete mPopupMenu; 387 delete mPopupMenu;
388#if QT_VERSION >= 0x030000 388#if QT_VERSION >= 0x030000
389 389
390#else 390#else
391 delete mKOListViewWhatsThis; 391 delete mKOListViewWhatsThis;
392#endif 392#endif
393} 393}
394 394
395void KOListView::catChanged( Incidence* inc) 395void KOListView::catChanged( Incidence* inc)
396{ 396{
397 KOListViewItem* item = getItemForEvent(inc); 397 KOListViewItem* item = getItemForEvent(inc);
398 if (item) { 398 if (item) {
399 ListItemVisitor v(item, mStartDate ); 399 ListItemVisitor v(item, mStartDate );
400 inc->accept(v); 400 inc->accept(v);
401 } 401 }
402} 402}
403QString KOListView::getWhatsThisText(QPoint p) 403QString KOListView::getWhatsThisText(QPoint p)
404{ 404{
405 KOListViewItem* item = ( KOListViewItem* ) mListView->itemAt( p ); 405 KOListViewItem* item = ( KOListViewItem* ) mListView->itemAt( p );
406 if ( item ) 406 if ( item )
407 return KIncidenceFormatter::instance()->getFormattedText( item->data(), 407 return KIncidenceFormatter::instance()->getFormattedText( item->data(),
408 KOPrefs::instance()->mWTshowDetails, 408 KOPrefs::instance()->mWTshowDetails,
409 KOPrefs::instance()->mWTshowCreated, 409 KOPrefs::instance()->mWTshowCreated,
410 KOPrefs::instance()->mWTshowChanged); 410 KOPrefs::instance()->mWTshowChanged);
411 return i18n("That is the list view" ); 411 return i18n("That is the list view" );
412 412
413} 413}
414 414
415void KOListView::setCalendar( int c ) 415void KOListView::setCalendar( int c )
416{ 416{
417 int result = QMessageBox::warning( this, i18n("KO/Pi: Information!"), 417 int result = QMessageBox::warning( this, i18n("KO/Pi: Information!"),
418 i18n("This adds the selected\nitems to the calendar\n%1\nand removes them from\ntheir current calendar!").arg( KOPrefs::instance()->calName( c ) ), 418 i18n("This adds the selected\nitems to the calendar\n%1\nand removes them from\ntheir current calendar!").arg( KOPrefs::instance()->calName( c ) ),
419 i18n("Continue"), i18n("Cancel"), 0, 419 i18n("Continue"), i18n("Cancel"), 0,
420 0, 1 ); 420 0, 1 );
421 if ( result != 0 ) { 421 if ( result != 0 ) {
422 return; 422 return;
423 } 423 }
424 424
425 QPtrList<Incidence> delSel = getSelectedIncidences() ; 425 QPtrList<Incidence> delSel = getSelectedIncidences() ;
426 int icount = delSel.count(); 426 int icount = delSel.count();
427 if ( icount ) { 427 if ( icount ) {
428 Incidence *incidence = delSel.first(); 428 Incidence *incidence = delSel.first();
429 while ( incidence ) { 429 while ( incidence ) {
430 incidence->setCalID( c ); 430 incidence->setCalID( c );
431 KOListViewItem * item = getItemForEvent( incidence ); 431 KOListViewItem * item = getItemForEvent( incidence );
432 if ( item ) { 432 if ( item ) {
433 ListItemVisitor v(item, mStartDate ); 433 ListItemVisitor v(item, mStartDate );
434 incidence->accept(v); 434 incidence->accept(v);
435 } 435 }
436 incidence = delSel.next(); 436 incidence = delSel.next();
437 } 437 }
438 } 438 }
439 QPtrList<KopiCalendarFile> calendars = KOPrefs::instance()->mCalendars; 439 QPtrList<KopiCalendarFile> calendars = KOPrefs::instance()->mCalendars;
440 KopiCalendarFile * cal = calendars.first(); 440 KopiCalendarFile * cal = calendars.first();
441 while ( cal ) { 441 while ( cal ) {
442 mCalendar->setCalendarEnabled( cal->mCalNumber,cal->isEnabled ); 442 mCalendar->setCalendarEnabled( cal->mCalNumber,cal->isEnabled );
443 mCalendar->setAlarmEnabled( cal->mCalNumber, cal->isAlarmEnabled ); 443 mCalendar->setAlarmEnabled( cal->mCalNumber, cal->isAlarmEnabled );
444 mCalendar->setReadOnly( cal->mCalNumber, cal->isReadOnly ); 444 mCalendar->setReadOnly( cal->mCalNumber, cal->isReadOnly );
445 if ( cal->isStandard ) 445 if ( cal->isStandard )
446 mCalendar->setDefaultCalendar( cal->mCalNumber ); 446 mCalendar->setDefaultCalendar( cal->mCalNumber );
447 cal = calendars.next(); 447 cal = calendars.next();
448 } 448 }
449 mCalendar->setSyncEventsReadOnly(); 449 mCalendar->setSyncEventsReadOnly();
450 mCalendar->reInitAlarmSettings(); 450 mCalendar->reInitAlarmSettings();
451 451
452} 452}
453void KOListView::populateCalPopup() 453void KOListView::populateCalPopup()
454{ 454{
455 mCalPopup->clear(); 455 mCalPopup->clear();
456 KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); 456 KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first();
457 while ( kkf ) { 457 while ( kkf ) {
458 int index = mCalPopup->insertItem( kkf->mName+"...", kkf->mCalNumber); 458 int index = mCalPopup->insertItem( kkf->mName+"...", kkf->mCalNumber);
459 if ( kkf->mErrorOnLoad || kkf->isReadOnly ) 459 if ( kkf->mErrorOnLoad || kkf->isReadOnly )
460 mCalPopup->setItemEnabled( index, false ); 460 mCalPopup->setItemEnabled( index, false );
461 kkf = KOPrefs::instance()->mCalendars.next(); 461 kkf = KOPrefs::instance()->mCalendars.next();
462 } 462 }
463} 463}
464void KOListView::updateList() 464void KOListView::updateList()
465{ 465{
466 // qDebug(" KOListView::updateList() "); 466 // qDebug(" KOListView::updateList() ");
467 467
468} 468}
469 469
470void KOListView::clearList() 470void KOListView::clearList()
471{ 471{
472 clear (); 472 clear ();
473} 473}
474 474
475void KOListView::setCat() 475void KOListView::setCat()
476{ 476{
477 477
478 bool set = true; 478 bool set = true;
479 int result = KMessageBox::warningYesNoCancel(this, 479 int result = KMessageBox::warningYesNoCancel(this,
480 i18n("Do you want to <b>add</b> categories to the selected items or <b>reset</b> the list (i.e. remove current categories)?"), 480 i18n("Do you want to <b>add</b> categories to the selected items or <b>reset</b> the list (i.e. remove current categories)?"),
481 i18n("Set categories"), 481 i18n("Set categories"),
482 i18n("Add"), 482 i18n("Add"),
483 i18n("Reset")); 483 i18n("Reset"));
484 if (result == KMessageBox::Cancel) return; 484 if (result == KMessageBox::Cancel) return;
485 if (result == KMessageBox::Yes) set = false; 485 if (result == KMessageBox::Yes) set = false;
486 setCategories( set ); 486 setCategories( set );
487} 487}
488 488
489void KOListView::setAlarm() 489void KOListView::setAlarm()
490{ 490{
491 KOAlarmPrefs kap( this); 491 KOAlarmPrefs kap( this);
492 if ( !kap.exec() ) 492 if ( !kap.exec() )
493 return; 493 return;
494 QPtrList<Incidence> delSel = getSelectedIncidences( true, true, false, true ); // no journals, only due todos 494 QPtrList<Incidence> delSel = getSelectedIncidences( true, true, false, true ); // no journals, only due todos
495 Incidence* inc = delSel.first(); 495 Incidence* inc = delSel.first();
496 int count = 0; 496 int count = 0;
497 while ( inc ) { 497 while ( inc ) {
498 ++count; 498 ++count;
499 if (kap.mAlarmButton->isChecked()) { 499 if (kap.mAlarmButton->isChecked()) {
500 if (inc->alarms().count() == 0) 500 if (inc->alarms().count() == 0)
501 inc->newAlarm(); 501 inc->newAlarm();
502 QPtrList<Alarm> alarms = inc->alarms(); 502 QPtrList<Alarm> alarms = inc->alarms();
503 Alarm *alarm; 503 Alarm *alarm;
504 for (alarm = alarms.first(); alarm; alarm = alarms.next() ) { 504 for (alarm = alarms.first(); alarm; alarm = alarms.next() ) {
505 alarm->setEnabled(true); 505 alarm->setEnabled(true);
506 int j = kap.mAlarmTimeEdit->value()* -60; 506 int j = kap.mAlarmTimeEdit->value()* -60;
507 if (kap.mAlarmIncrCombo->currentItem() == 1) 507 if (kap.mAlarmIncrCombo->currentItem() == 1)
508 j = j * 60; 508 j = j * 60;
509 else if (kap.mAlarmIncrCombo->currentItem() == 2) 509 else if (kap.mAlarmIncrCombo->currentItem() == 2)
510 j = j * (60 * 24); 510 j = j * (60 * 24);
511 alarm->setStartOffset( j ); 511 alarm->setStartOffset( j );
512 512
513 if (!kap.mAlarmProgram.isEmpty() && kap.mAlarmProgramButton->isOn()) { 513 if (!kap.mAlarmProgram.isEmpty() && kap.mAlarmProgramButton->isOn()) {
514 alarm->setProcedureAlarm(kap.mAlarmProgram); 514 alarm->setProcedureAlarm(kap.mAlarmProgram);
515 } 515 }
516 else if (!kap.mAlarmSound.isEmpty() && kap.mAlarmSoundButton->isOn()) 516 else if (!kap.mAlarmSound.isEmpty() && kap.mAlarmSoundButton->isOn())
517 alarm->setAudioAlarm(kap.mAlarmSound); 517 alarm->setAudioAlarm(kap.mAlarmSound);
518 else 518 else
519 alarm->setType(Alarm::Invalid); 519 alarm->setType(Alarm::Invalid);
520 //alarm->setAudioAlarm("default"); 520 //alarm->setAudioAlarm("default");
521 // TODO: Deal with multiple alarms 521 // TODO: Deal with multiple alarms
522 break; // For now, stop after the first alarm 522 break; // For now, stop after the first alarm
523 } 523 }
524 } else { 524 } else {
525 Alarm* alarm = inc->alarms().first(); 525 Alarm* alarm = inc->alarms().first();
526 if ( alarm ) { 526 if ( alarm ) {
527 alarm->setEnabled(false); 527 alarm->setEnabled(false);
528 alarm->setType(Alarm::Invalid); 528 alarm->setType(Alarm::Invalid);
529 } 529 }
530 } 530 }
531 KOListViewItem* item = getItemForEvent(inc); 531 KOListViewItem* item = getItemForEvent(inc);
532 if (item) { 532 if (item) {
533 ListItemVisitor v(item, mStartDate ); 533 ListItemVisitor v(item, mStartDate );
534 inc->accept(v); 534 inc->accept(v);
535 } 535 }
536 inc = delSel.next(); 536 inc = delSel.next();
537 } 537 }
538 topLevelWidget()->setCaption( i18n("Changed alarm for %1 items").arg( count ) ); 538 topLevelWidget()->setCaption( i18n("Changed alarm for %1 items").arg( count ) );
539 qDebug("KO: Set alarm for %d items", count); 539 qDebug("KO: Set alarm for %d items", count);
540 calendar()->reInitAlarmSettings(); 540 calendar()->reInitAlarmSettings();
541 QTimer::singleShot( 1, this, SLOT ( resetFocus() ) ); 541 QTimer::singleShot( 1, this, SLOT ( resetFocus() ) );
542} 542}
543void KOListView::setCategories( bool removeOld ) 543void KOListView::setCategories( bool removeOld )
544{ 544{
545 545
546 KPIM::CategorySelectDialog* csd = new KPIM::CategorySelectDialog( KOPrefs::instance(), 0 ); 546 KPIM::CategorySelectDialog* csd = new KPIM::CategorySelectDialog( KOPrefs::instance(), 0 );
547 csd->setColorEnabled(); 547 csd->setColorEnabled();
548 if (! csd->exec()) { 548 if (! csd->exec()) {
549 delete csd; 549 delete csd;
550 return; 550 return;
551 } 551 }
552 QStringList catList = csd->selectedCategories(); 552 QStringList catList = csd->selectedCategories();
553 delete csd; 553 delete csd;
554 QPtrList<Incidence> delSel = getSelectedIncidences(); // all inc allowed; 554 QPtrList<Incidence> delSel = getSelectedIncidences(); // all inc allowed;
555 Incidence* inc = delSel.first(); 555 Incidence* inc = delSel.first();
556 while ( inc ) { 556 while ( inc ) {
557 if ( removeOld ) { 557 if ( removeOld ) {
558 inc->setCategories( catList, false ); 558 inc->setCategories( catList, false );
559 } else { 559 } else {
560 inc->addCategories( catList, false ); 560 inc->addCategories( catList, false );
561 } 561 }
562 KOListViewItem* item = getItemForEvent(inc); 562 KOListViewItem* item = getItemForEvent(inc);
563 if (item) { 563 if (item) {
564 ListItemVisitor v(item, mStartDate ); 564 ListItemVisitor v(item, mStartDate );
565 inc->accept(v); 565 inc->accept(v);
566 } 566 }
567 inc = delSel.next(); 567 inc = delSel.next();
568 } 568 }
569 QTimer::singleShot( 1, this, SLOT ( resetFocus() ) ); 569 QTimer::singleShot( 1, this, SLOT ( resetFocus() ) );
570} 570}
571 571
572void KOListView::beamSelected() 572void KOListView::beamSelected()
573{ 573{
574 QPtrList<Incidence> delSel = getSelectedIncidences() ; 574 QPtrList<Incidence> delSel = getSelectedIncidences() ;
575 if ( delSel.count() ) 575 if ( delSel.count() )
576 emit beamIncidenceList( delSel ); 576 emit beamIncidenceList( delSel );
577} 577}
578 578
579void KOListView::saveDescriptionToFile() 579void KOListView::saveDescriptionToFile()
580{ 580{
581 581
582 int result = QMessageBox::warning( this, i18n("KO/Pi: Information!"), 582 int result = QMessageBox::warning( this, i18n("KO/Pi: Information!"),
583 i18n("This saves the text/details of selected\nJournals and Events/Todos\nto a text file."), 583 i18n("This saves the text/details of selected\nJournals and Events/Todos\nto a text file."),
584 i18n("Continue"), i18n("Cancel"), 0, 584 i18n("Continue"), i18n("Cancel"), 0,
585 0, 1 ); 585 0, 1 );
586 if ( result != 0 ) { 586 if ( result != 0 ) {
587 return; 587 return;
588 } 588 }
589 QPtrList<Incidence> delSel = getSelectedIncidences() ; 589 QPtrList<Incidence> delSel = getSelectedIncidences() ;
590 int icount = delSel.count(); 590 int icount = delSel.count();
591 if ( icount ) { 591 if ( icount ) {
592 QString fn = KOPrefs::instance()->mLastSaveFile; 592 QString fn = KOPrefs::instance()->mLastSaveFile;
593 fn = KFileDialog::getSaveFileName( fn, i18n("Save filename"), this ); 593 fn = KFileDialog::getSaveFileName( fn, i18n("Save filename"), this );
594 594
595 if ( fn == "" ) 595 if ( fn == "" )
596 return; 596 return;
597 QFileInfo info; 597 QFileInfo info;
598 info.setFile( fn ); 598 info.setFile( fn );
599 QString mes; 599 QString mes;
600 bool createbup = true; 600 bool createbup = true;
601 if ( info. exists() ) { 601 if ( info. exists() ) {
602 mes = i18n("File already exists!\nOld file from:\n%1\nOverwrite?\n").arg (KGlobal::locale()->formatDateTime(info.lastModified (), true, false ) ); 602 mes = i18n("File already exists!\nOld file from:\n%1\nOverwrite?\n").arg (KGlobal::locale()->formatDateTime(info.lastModified (), true, false ) );
603 int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"),mes, 603 int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"),mes,
604 i18n("Overwrite!"), i18n("Cancel"), 0, 604 i18n("Overwrite!"), i18n("Cancel"), 0,
605 0, 1 ); 605 0, 1 );
606 if ( result != 0 ) { 606 if ( result != 0 ) {
607 createbup = false; 607 createbup = false;
608 } 608 }
609 } 609 }
610 if ( createbup ) { 610 if ( createbup ) {
611 QString text = i18n("KO/Pi Description/Journal save file.\nSave date: ") + 611 QString text = i18n("KO/Pi Description/Journal save file.\nSave date: ") +
612 KGlobal::locale()->formatDateTime(QDateTime::currentDateTime(), false); 612 KGlobal::locale()->formatDateTime(QDateTime::currentDateTime(), false);
613 Incidence *incidence = delSel.first(); 613 Incidence *incidence = delSel.first();
614 icount = 0; 614 icount = 0;
615 while ( incidence ) { 615 while ( incidence ) {
616 if ( incidence->typeID() == journalID ) { 616 if ( incidence->typeID() == journalID ) {
617 text += "\n************************************\n"; 617 text += "\n************************************\n";
618 if ( !incidence->summary().isEmpty() ) 618 if ( !incidence->summary().isEmpty() )
619 text += i18n("Journal: %1 from ").arg( incidence->summary() ) +incidence->dtStartDateStr( false ); 619 text += i18n("Journal: %1 from ").arg( incidence->summary() ) +incidence->dtStartDateStr( false );
620 else 620 else
621 text += i18n("Journal from: ") +incidence->dtStartDateStr( false ); 621 text += i18n("Journal from: ") +incidence->dtStartDateStr( false );
622 if ( !incidence->location().isEmpty() ) 622 if ( !incidence->location().isEmpty() )
623 text +="\n(" + i18n("Location: ") + incidence->location()+ ")"; 623 text +="\n(" + i18n("Location: ") + incidence->location()+ ")";
624 text +="\n" + i18n("Last modified: ") +KGlobal::locale()->formatDateTime(incidence->lastModified(), false); 624 text +="\n" + i18n("Last modified: ") +KGlobal::locale()->formatDateTime(incidence->lastModified(), false);
625 text +="\n" + i18n("Description: ") + "\n"+ incidence->description(); 625 text +="\n" + i18n("Description: ") + "\n"+ incidence->description();
626 ++icount; 626 ++icount;
627 627
628 } else { 628 } else {
629 if ( !incidence->description().isEmpty() ) { 629 if ( !incidence->description().isEmpty() ) {
630 text += "\n************************************\n"; 630 text += "\n************************************\n";
631 if ( incidence->typeID() == todoID ) 631 if ( incidence->typeID() == todoID )
632 text += i18n("To-Do: "); 632 text += i18n("To-Do: ");
633 text += incidence->summary(); 633 text += incidence->summary();
634 if ( !incidence->location().isEmpty() ) 634 if ( !incidence->location().isEmpty() )
635 text +="\n(" + i18n("Location: ") + incidence->location()+ ")"; 635 text +="\n(" + i18n("Location: ") + incidence->location()+ ")";
636 if ( incidence->hasStartDate() ) 636 if ( incidence->hasStartDate() )
637 text +="\n"+ i18n("Start Date: ") + incidence->dtStartStr( false ); 637 text +="\n"+ i18n("Start Date: ") + incidence->dtStartStr( false );
638 text +="\n"+ i18n("Last modified: ") +KGlobal::locale()->formatDateTime(incidence->lastModified(), false); 638 text +="\n"+ i18n("Last modified: ") +KGlobal::locale()->formatDateTime(incidence->lastModified(), false);
639 text += "\n" + i18n("Description: ") + "\n" + incidence->description(); 639 text += "\n" + i18n("Description: ") + "\n" + incidence->description();
640 ++icount; 640 ++icount;
641 641
642 } 642 }
643 } 643 }
644 incidence = delSel.next(); 644 incidence = delSel.next();
645 } 645 }
646 QFile file( fn ); 646 QFile file( fn );
647 if (!file.open( IO_WriteOnly ) ) { 647 if (!file.open( IO_WriteOnly ) ) {
648 topLevelWidget()->setCaption(i18n("File open error - nothing saved!") ); 648 topLevelWidget()->setCaption(i18n("File open error - nothing saved!") );
649 return; 649 return;
650 } 650 }
651 QTextStream ts( &file ); 651 QTextStream ts( &file );
652 ts << text; 652 ts << text;
653 file.close(); 653 file.close();
654 //qDebug("%s ", text.latin1()); 654 //qDebug("%s ", text.latin1());
655 mes = i18n("KO/Pi:Saved %1 descriptions/journals").arg(icount ); 655 mes = i18n("KO/Pi:Saved %1 descriptions/journals").arg(icount );
656 KOPrefs::instance()->mLastSaveFile = fn; 656 KOPrefs::instance()->mLastSaveFile = fn;
657 topLevelWidget()->setCaption(mes); 657 topLevelWidget()->setCaption(mes);
658 } 658 }
659 } 659 }
660} 660}
661void KOListView::saveToFileVCS() 661void KOListView::saveToFileVCS()
662{ 662{
663 writeToFile( false ); 663 writeToFile( false );
664} 664}
665void KOListView::saveToFile() 665void KOListView::saveToFile()
666{ 666{
667 writeToFile( true ); 667 writeToFile( true );
668} 668}
669QPtrList<Incidence> KOListView::getSelectedIncidences( bool includeEvents, bool includeTodos, bool includeJournals, bool onlyDueTodos ) 669QPtrList<Incidence> KOListView::getSelectedIncidences( bool includeEvents, bool includeTodos, bool includeJournals, bool onlyDueTodos )
670{ 670{
671 QPtrList<Incidence> delSel ; 671 QPtrList<Incidence> delSel ;
672 bool addSubTodos = false; 672 bool addSubTodos = false;
673 bool askSubTodos = true; 673 bool askSubTodos = true;
674 QListViewItem *item = mListView->firstChild (); 674 QListViewItem *item = mListView->firstChild ();
675 while ( item ) { 675 while ( item ) {
676 if ( item->isSelected() ) { 676 if ( item->isSelected() ) {
677 Incidence* inc = ((KOListViewItem *)item)->data(); 677 Incidence* inc = ((KOListViewItem *)item)->data();
678 if ( ( addSubTodos && delSel.findRef( inc ) == -1) || !addSubTodos ) { 678 if ( ( addSubTodos && delSel.findRef( inc ) == -1) || !addSubTodos ) {
679 if ( (inc->typeID() == todoID && includeTodos) || 679 if ( (inc->typeID() == todoID && includeTodos) ||
680 (inc->typeID() == eventID && includeEvents) || 680 (inc->typeID() == eventID && includeEvents) ||
681 (inc->typeID() == journalID && includeJournals) ) { 681 (inc->typeID() == journalID && includeJournals) ) {
682 if ( inc->typeID() == todoID && onlyDueTodos ) { 682 if ( inc->typeID() == todoID && onlyDueTodos ) {
683 if ( ((Todo*)inc)->hasDueDate() ) 683 if ( ((Todo*)inc)->hasDueDate() )
684 delSel.append( inc ); 684 delSel.append( inc );
685 } else 685 } else
686 delSel.append( inc ); 686 delSel.append( inc );
687 687
688 } 688 }
689 } 689 }
690 if ( inc->typeID() == todoID ) { 690 if ( inc->typeID() == todoID ) {
691 Todo * todo = (Todo*) inc; 691 Todo * todo = (Todo*) inc;
692 if ( todo->relations().count() ) { 692 if ( todo->relations().count() ) {
693 if ( askSubTodos ) { 693 if ( askSubTodos ) {
694 int result = KMessageBox::warningYesNoCancel(this, 694 int result = KMessageBox::warningYesNoCancel(this,
695 i18n("One (or more) selected\ntodo has subtodos!\nDo you want to select\nall subtodos of all\nselected todos as well?"), 695 i18n("One (or more) selected\ntodo has subtodos!\nDo you want to select\nall subtodos of all\nselected todos as well?"),
696 i18n("Todo has subtodos"), 696 i18n("Todo has subtodos"),
697 i18n("Yes"), 697 i18n("Yes"),
698 i18n("No")); 698 i18n("No"));
699 if ( result == KMessageBox::Cancel ) { 699 if ( result == KMessageBox::Cancel ) {
700 delSel.clear(); 700 delSel.clear();
701 return delSel; 701 return delSel;
702 } 702 }
703 if (result == KMessageBox::Yes) 703 if (result == KMessageBox::Yes)
704 addSubTodos = true; 704 addSubTodos = true;
705 askSubTodos = false; 705 askSubTodos = false;
706 } 706 }
707 if ( addSubTodos ) { 707 if ( addSubTodos ) {
708 QPtrList<Incidence> tempSel ; 708 QPtrList<Incidence> tempSel ;
709 inc->addRelationsToList( &tempSel ); 709 inc->addRelationsToList( &tempSel );
710 Incidence* tempinc = tempSel.first(); 710 Incidence* tempinc = tempSel.first();
711 while ( tempinc ) { 711 while ( tempinc ) {
712 if ( delSel.findRef( tempinc ) == -1 ) { 712 if ( delSel.findRef( tempinc ) == -1 ) {
713 if ( tempinc->typeID() == todoID && onlyDueTodos ) { 713 if ( tempinc->typeID() == todoID && onlyDueTodos ) {
714 if ( ((Todo*)tempinc)->hasDueDate() ) 714 if ( ((Todo*)tempinc)->hasDueDate() )
715 delSel.append( tempinc ); 715 delSel.append( tempinc );
716 } else 716 } else
717 delSel.append( tempinc ); 717 delSel.append( tempinc );
718 } 718 }
719 tempinc = tempSel.next(); 719 tempinc = tempSel.next();
720 } 720 }
721 } 721 }
722 } 722 }
723 } 723 }
724 } 724 }
725 item = item->nextSibling(); 725 item = item->nextSibling();
726 } 726 }
727 return delSel; 727 return delSel;
728} 728}
729 729
730void KOListView::writeToFile( bool iCal ) 730void KOListView::writeToFile( bool iCal )
731{ 731{
732 QPtrList<Incidence> delSel = getSelectedIncidences(); // all inc allowed; 732 QPtrList<Incidence> delSel = getSelectedIncidences(); // all inc allowed;
733 if ( !iCal ) { 733 if ( !iCal ) {
734 bool journal = false; 734 bool journal = false;
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp
index f68f032..7a5f3e5 100644
--- a/korganizer/mainwindow.cpp
+++ b/korganizer/mainwindow.cpp
@@ -294,889 +294,891 @@ MainWindow::MainWindow( QWidget *parent, const char *name ) :
294 mSyncManager = new KSyncManager((QWidget*)this, (KSyncInterface*)mView, KSyncManager::KOPI, KOPrefs::instance(), syncMenu); 294 mSyncManager = new KSyncManager((QWidget*)this, (KSyncInterface*)mView, KSyncManager::KOPI, KOPrefs::instance(), syncMenu);
295 mSyncManager->setBlockSave(false); 295 mSyncManager->setBlockSave(false);
296 mView->setSyncManager(mSyncManager); 296 mView->setSyncManager(mSyncManager);
297#ifndef DESKTOP_VERSION 297#ifndef DESKTOP_VERSION
298 iconToolBar->show(); 298 iconToolBar->show();
299 qApp->processEvents(); 299 qApp->processEvents();
300#endif 300#endif
301 //qDebug("Splashwidget x %d y %d w %d h %d", splash-> x(), splash->y(), splash->width(),splash-> height ()); 301 //qDebug("Splashwidget x %d y %d w %d h %d", splash-> x(), splash->y(), splash->width(),splash-> height ());
302 int vh = height() ; 302 int vh = height() ;
303 int vw = width(); 303 int vw = width();
304 //qDebug("Toolbar hei %d ",iconToolBar->height() ); 304 //qDebug("Toolbar hei %d ",iconToolBar->height() );
305 if ( iconToolBar->orientation () == Qt:: Horizontal ) { 305 if ( iconToolBar->orientation () == Qt:: Horizontal ) {
306 vh -= iconToolBar->height(); 306 vh -= iconToolBar->height();
307 } else { 307 } else {
308 vw -= iconToolBar->height(); 308 vw -= iconToolBar->height();
309 } 309 }
310 //mView->setMaximumSize( splash->size() ); 310 //mView->setMaximumSize( splash->size() );
311 //mView->resize( splash->size() ); 311 //mView->resize( splash->size() );
312 //qDebug("MainView x %d y %d w %d h %d", mView->x(),mView-> y(), mView->width(), mView->height ()); 312 //qDebug("MainView x %d y %d w %d h %d", mView->x(),mView-> y(), mView->width(), mView->height ());
313 mView->readSettings(); 313 mView->readSettings();
314 bool newFile = false; 314 bool newFile = false;
315 if( !QFile::exists( defaultFileName() ) ) { 315 if( !QFile::exists( defaultFileName() ) ) {
316 QFileInfo finfo ( defaultFileName() ); 316 QFileInfo finfo ( defaultFileName() );
317 QString oldFile = QDir::convertSeparators( QDir::homeDirPath()+"/Applications/korganizer/mycalendar.ics"); 317 QString oldFile = QDir::convertSeparators( QDir::homeDirPath()+"/Applications/korganizer/mycalendar.ics");
318 QString message = "You are starting KO/Pi for the\nfirst time after updating to a\nversion >= 1.9.1. The location of the\ndefault calendar file has changed.\nA mycalendar.ics file was detected\nat the old location.\nThis file will be loaded now\nand stored at the new location!\n(Config file location has changed, too!)\nPlease read menu Help-What's New!\n"; 318 QString message = "You are starting KO/Pi for the\nfirst time after updating to a\nversion >= 1.9.1. The location of the\ndefault calendar file has changed.\nA mycalendar.ics file was detected\nat the old location.\nThis file will be loaded now\nand stored at the new location!\n(Config file location has changed, too!)\nPlease read menu Help-What's New!\n";
319 finfo.setFile( oldFile ); 319 finfo.setFile( oldFile );
320 if (finfo.exists() ) { 320 if (finfo.exists() ) {
321 KMessageBox::information( this, message); 321 KMessageBox::information( this, message);
322 mView->openCalendar( oldFile ); 322 mView->openCalendar( oldFile );
323 qApp->processEvents(); 323 qApp->processEvents();
324 } else { 324 } else {
325 oldFile = QDir::convertSeparators( QDir::homeDirPath()+"/korganizer/mycalendar.ics"); 325 oldFile = QDir::convertSeparators( QDir::homeDirPath()+"/korganizer/mycalendar.ics");
326 finfo.setFile( oldFile ); 326 finfo.setFile( oldFile );
327 if (finfo.exists() ) { 327 if (finfo.exists() ) {
328 KMessageBox::information( this, message); 328 KMessageBox::information( this, message);
329 mView->openCalendar( oldFile ); 329 mView->openCalendar( oldFile );
330 qApp->processEvents(); 330 qApp->processEvents();
331 } 331 }
332 } 332 }
333 mView->saveCalendar( defaultFileName() ); 333 mView->saveCalendar( defaultFileName() );
334 newFile = true; 334 newFile = true;
335 } 335 }
336 336
337 QTime neededSaveTime = QDateTime::currentDateTime().time(); 337 QTime neededSaveTime = QDateTime::currentDateTime().time();
338 mView->loadCalendars(); 338 mView->loadCalendars();
339 int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); 339 int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() );
340 qDebug("KO: Calendar loading time: %d ms",msNeeded ); 340 qDebug("KO: Calendar loading time: %d ms",msNeeded );
341 341
342 if ( KPimGlobalPrefs::instance()->mPreferredLanguage != KOPrefs::instance()->mOldLoadedLanguage ) { 342 if ( KPimGlobalPrefs::instance()->mPreferredLanguage != KOPrefs::instance()->mOldLoadedLanguage ) {
343 KOPrefs::instance()->setAllDefaults(); 343 KOPrefs::instance()->setAllDefaults();
344 } 344 }
345 processIncidenceSelection( 0 ); 345 processIncidenceSelection( 0 );
346 connect( mView, SIGNAL( incidenceSelected( Incidence * ) ), 346 connect( mView, SIGNAL( incidenceSelected( Incidence * ) ),
347 SLOT( processIncidenceSelection( Incidence * ) ) ); 347 SLOT( processIncidenceSelection( Incidence * ) ) );
348 connect( mView, SIGNAL( modifiedChanged( bool ) ), 348 connect( mView, SIGNAL( modifiedChanged( bool ) ),
349 SLOT( slotModifiedChanged( bool ) ) ); 349 SLOT( slotModifiedChanged( bool ) ) );
350 350
351 351
352 connect( mView, SIGNAL( tempDisableBR(bool) ), 352 connect( mView, SIGNAL( tempDisableBR(bool) ),
353 SLOT( disableBR(bool) ) ); 353 SLOT( disableBR(bool) ) );
354 connect( &mSaveTimer, SIGNAL( timeout() ), SLOT( save() ) ); 354 connect( &mSaveTimer, SIGNAL( timeout() ), SLOT( save() ) );
355 mView->setModified( false ); 355 mView->setModified( false );
356 mBlockAtStartup = false; 356 mBlockAtStartup = false;
357 mView->setModified( false ); 357 mView->setModified( false );
358 setCentralWidget( mView ); 358 setCentralWidget( mView );
359 globalFlagBlockStartup = 0; 359 globalFlagBlockStartup = 0;
360 mView->show(); 360 mView->show();
361 delete splash; 361 delete splash;
362 if ( newFile ) 362 if ( newFile )
363 mView->updateConfig(); 363 mView->updateConfig();
364 // qApp->processEvents(); 364 // qApp->processEvents();
365 //qDebug("MainView x %d y %d w %d h %d", mView->x(),mView-> y(), mView->width(), mView->height ()); 365 //qDebug("MainView x %d y %d w %d h %d", mView->x(),mView-> y(), mView->width(), mView->height ());
366 //fillSyncMenu(); 366 //fillSyncMenu();
367 367
368 368
369 connect(mSyncManager , SIGNAL( save() ), this, SLOT( save() ) ); 369 connect(mSyncManager , SIGNAL( save() ), this, SLOT( save() ) );
370 connect(mView , SIGNAL( save() ), this, SLOT( save() ) ); 370 connect(mView , SIGNAL( save() ), this, SLOT( save() ) );
371 connect(mView , SIGNAL( saveStopTimer() ), this, SLOT( saveStopTimer() ) ); 371 connect(mView , SIGNAL( saveStopTimer() ), this, SLOT( saveStopTimer() ) );
372 connect(mSyncManager , SIGNAL( request_file() ), this, SLOT( syncFileRequest() ) ); 372 connect(mSyncManager , SIGNAL( request_file() ), this, SLOT( syncFileRequest() ) );
373 connect(mSyncManager , SIGNAL( getFile( bool )), this, SLOT(getFile( bool ) ) ); 373 connect(mSyncManager , SIGNAL( getFile( bool )), this, SLOT(getFile( bool ) ) );
374 mSyncManager->setDefaultFileName( sentSyncFile()); 374 mSyncManager->setDefaultFileName( sentSyncFile());
375 connect ( syncMenu, SIGNAL( activated ( int ) ), mSyncManager, SLOT (slotSyncMenu( int ) ) ); 375 connect ( syncMenu, SIGNAL( activated ( int ) ), mSyncManager, SLOT (slotSyncMenu( int ) ) );
376 mSyncManager->fillSyncMenu(); 376 mSyncManager->fillSyncMenu();
377 377
378 378
379 379
380 mView->viewManager()->agendaView()->setStartHour( KOPrefs::instance()->mDayBegins ); 380 mView->viewManager()->agendaView()->setStartHour( KOPrefs::instance()->mDayBegins );
381 if ( showWarning ) { 381 if ( showWarning ) {
382 KMessageBox::information( this, 382 KMessageBox::information( this,
383 "You are starting KO/Pi for the first time.\nPlease read menu: Help-What's New,\nif you did an update!\nPlease choose your timezone in the \nConfigure Dialog TAB Time Zone!\nPlease choose your language\nin the TAB Locale!\nYou get the Configure Dialog\nvia Menu: Actions - Configure....\nClick OK to show the Configure Dialog!\n", "KO/Pi information"); 383 "You are starting KO/Pi for the first time.\nPlease read menu: Help-What's New,\nif you did an update!\nPlease choose your timezone in the \nConfigure Dialog TAB Time Zone!\nPlease choose your language\nin the TAB Locale!\nYou get the Configure Dialog\nvia Menu: Actions - Configure....\nClick OK to show the Configure Dialog!\n", "KO/Pi information");
384 qApp->processEvents(); 384 qApp->processEvents();
385 mView->dialogManager()->showSyncOptions(); 385 mView->dialogManager()->showSyncOptions();
386 } 386 }
387 387
388 //US listen for result adressed from Ka/Pi 388 //US listen for result adressed from Ka/Pi
389#ifndef DESKTOP_VERSION 389#ifndef DESKTOP_VERSION
390 connect(qApp, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & ))); 390 connect(qApp, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & )));
391#endif 391#endif
392#ifndef DESKTOP_VERSION 392#ifndef DESKTOP_VERSION
393 infrared = 0; 393 infrared = 0;
394#endif 394#endif
395 updateFilterToolbar(); 395 updateFilterToolbar();
396 updateWeek( mView->startDate() ); 396 updateWeek( mView->startDate() );
397 connect( mView->dateNavigator(), SIGNAL( datesSelected( const KCal::DateList & ) ), 397 connect( mView->dateNavigator(), SIGNAL( datesSelected( const KCal::DateList & ) ),
398 SLOT( updateWeekNum( const KCal::DateList & ) ) ); 398 SLOT( updateWeekNum( const KCal::DateList & ) ) );
399 mBRdisabled = false; 399 mBRdisabled = false;
400 //toggleBeamReceive(); 400 //toggleBeamReceive();
401 401
402 QTimer::singleShot( 1000, mView, SLOT ( checkFiles() )); 402 QTimer::singleShot( 1000, mView, SLOT ( checkFiles() ));
403} 403}
404MainWindow::~MainWindow() 404MainWindow::~MainWindow()
405{ 405{
406 //qDebug("MainWindow::~MainWindow() "); 406 //qDebug("MainWindow::~MainWindow() ");
407 //save toolbar location 407 //save toolbar location
408 delete mCalendar; 408 delete mCalendar;
409 delete mSyncManager; 409 delete mSyncManager;
410#ifndef DESKTOP_VERSION 410#ifndef DESKTOP_VERSION
411 if ( infrared ) 411 if ( infrared )
412 delete infrared; 412 delete infrared;
413#endif 413#endif
414 414
415 415
416} 416}
417 417
418void MainWindow::disableBR(bool b) 418void MainWindow::disableBR(bool b)
419{ 419{
420#ifndef DESKTOP_VERSION 420#ifndef DESKTOP_VERSION
421 if ( b ) { 421 if ( b ) {
422 if ( infrared ) { 422 if ( infrared ) {
423 toggleBeamReceive(); 423 toggleBeamReceive();
424 mBRdisabled = true; 424 mBRdisabled = true;
425 } 425 }
426 mBRdisabled = true; 426 mBRdisabled = true;
427 } else { 427 } else {
428 if ( mBRdisabled ) { 428 if ( mBRdisabled ) {
429 mBRdisabled = false; 429 mBRdisabled = false;
430 //makes no sense,because other cal ap is probably running 430 //makes no sense,because other cal ap is probably running
431 // toggleBeamReceive(); 431 // toggleBeamReceive();
432 } 432 }
433 } 433 }
434#endif 434#endif
435 435
436} 436}
437bool MainWindow::beamReceiveEnabled() 437bool MainWindow::beamReceiveEnabled()
438{ 438{
439#ifndef DESKTOP_VERSION 439#ifndef DESKTOP_VERSION
440 return ( infrared != 0 ); 440 return ( infrared != 0 );
441#endif 441#endif
442 return false; 442 return false;
443} 443}
444 444
445void MainWindow::toggleBeamReceive() 445void MainWindow::toggleBeamReceive()
446{ 446{
447 if ( mBRdisabled ) 447 if ( mBRdisabled )
448 return; 448 return;
449#ifndef DESKTOP_VERSION 449#ifndef DESKTOP_VERSION
450 if ( infrared ) { 450 if ( infrared ) {
451 qDebug("KO: Disable BeamReceive "); 451 qDebug("KO: Disable BeamReceive ");
452 delete infrared; 452 delete infrared;
453 infrared = 0; 453 infrared = 0;
454 brAction->setOn(false); 454 brAction->setOn(false);
455 return; 455 return;
456 } 456 }
457 qDebug("KO: Enable BeamReceive "); 457 qDebug("KO: Enable BeamReceive ");
458 brAction->setOn(true); 458 brAction->setOn(true);
459 infrared = new QCopChannel("QPE/Application/datebook",this, "channel" ) ; 459 infrared = new QCopChannel("QPE/Application/datebook",this, "channel" ) ;
460 QObject::connect( infrared, SIGNAL (received ( const QCString &, const QByteArray & )),this, SLOT(recieve( const QCString&, const QByteArray& ))); 460 QObject::connect( infrared, SIGNAL (received ( const QCString &, const QByteArray & )),this, SLOT(recieve( const QCString&, const QByteArray& )));
461#endif 461#endif
462} 462}
463void MainWindow::showMaximized () 463void MainWindow::showMaximized ()
464{ 464{
465#ifndef DESKTOP_VERSION 465#ifndef DESKTOP_VERSION
466 if ( ! globalFlagBlockStartup ) 466 if ( ! globalFlagBlockStartup )
467 if ( mClosed ) 467 if ( mClosed )
468 mView->goToday(); 468 mView->goToday();
469#endif 469#endif
470 QWidget::showMaximized () ; 470 QWidget::showMaximized () ;
471 mClosed = false; 471 mClosed = false;
472} 472}
473void MainWindow::closeEvent( QCloseEvent* ce ) 473void MainWindow::closeEvent( QCloseEvent* ce )
474{ 474{
475 475
476 476
477 477
478 if ( ! KOPrefs::instance()->mAskForQuit ) { 478 if ( ! KOPrefs::instance()->mAskForQuit ) {
479 saveOnClose(); 479 saveOnClose();
480 mClosed = true; 480 mClosed = true;
481 ce->accept(); 481 ce->accept();
482 return; 482 return;
483 483
484 } 484 }
485 485
486 switch( QMessageBox::information( this, "KO/Pi", 486 switch( QMessageBox::information( this, "KO/Pi",
487 i18n("Do you really want\nto close KO/Pi?"), 487 i18n("Do you really want\nto close KO/Pi?"),
488 i18n("Close"), i18n("No"), 488 i18n("Close"), i18n("No"),
489 0, 0 ) ) { 489 0, 0 ) ) {
490 case 0: 490 case 0:
491 saveOnClose(); 491 saveOnClose();
492 mClosed = true; 492 mClosed = true;
493 ce->accept(); 493 ce->accept();
494 break; 494 break;
495 case 1: 495 case 1:
496 ce->ignore(); 496 ce->ignore();
497 break; 497 break;
498 case 2: 498 case 2:
499 499
500 default: 500 default:
501 break; 501 break;
502 } 502 }
503 503
504 504
505} 505}
506 506
507void MainWindow::recieve( const QCString& cmsg, const QByteArray& data ) 507void MainWindow::recieve( const QCString& cmsg, const QByteArray& data )
508{ 508{
509 QDataStream stream( data, IO_ReadOnly ); 509 QDataStream stream( data, IO_ReadOnly );
510 // QMessageBox::about( this, "About KOrganizer/Pi", "*" +msg +"*" ); 510 // QMessageBox::about( this, "About KOrganizer/Pi", "*" +msg +"*" );
511 //QString datamess; 511 //QString datamess;
512 //qDebug("message "); 512 //qDebug("message ");
513 qDebug("KO: QCOP message received: %s ", cmsg.data() ); 513 qDebug("KO: QCOP message received: %s ", cmsg.data() );
514 514
515 if ( cmsg == "setDocument(QString)" ) { 515 if ( cmsg == "setDocument(QString)" ) {
516 QDataStream stream( data, IO_ReadOnly ); 516 QDataStream stream( data, IO_ReadOnly );
517 QString fileName; 517 QString fileName;
518 stream >> fileName; 518 stream >> fileName;
519 //qDebug("filename %s ", fileName.latin1()); 519 //qDebug("filename %s ", fileName.latin1());
520 showMaximized(); 520 showMaximized();
521 raise(); 521 raise();
522 KOPrefs::instance()->mLastSyncedLocalFile = fileName ; 522 KOPrefs::instance()->mLastSyncedLocalFile = fileName ;
523 mSyncManager->slotSyncMenu( 1002 ); 523 mSyncManager->slotSyncMenu( 1002 );
524 return; 524 return;
525 } 525 }
526 526
527 if ( cmsg == "-writeFile" ) { 527 if ( cmsg == "-writeFile" ) {
528 // I made from the "-writeFile" an "-writeAlarm" 528 // I made from the "-writeFile" an "-writeAlarm"
529 mView->viewManager()->showWhatsNextView(); 529 mView->viewManager()->showWhatsNextView();
530 mCalendar->checkAlarmForIncidence( 0, true); 530 mCalendar->checkAlarmForIncidence( 0, true);
531 showMaximized(); 531 showMaximized();
532 raise(); 532 raise();
533 return; 533 return;
534 534
535 } 535 }
536 if ( cmsg == "-writeFileSilent" ) { 536 if ( cmsg == "-writeFileSilent" ) {
537 // I made from the "-writeFile" an "-writeAlarm" 537 // I made from the "-writeFile" an "-writeAlarm"
538 // mView->viewManager()->showWhatsNextView(); 538 // mView->viewManager()->showWhatsNextView();
539 mCalendar->checkAlarmForIncidence( 0, true); 539 mCalendar->checkAlarmForIncidence( 0, true);
540 //showMaximized(); 540 //showMaximized();
541 //raise(); 541 //raise();
542 hide(); 542 hide();
543 return; 543 return;
544 } 544 }
545 if ( cmsg == "-newCountdown" ) { 545 if ( cmsg == "-newCountdown" ) {
546 qDebug("newCountdown "); 546 qDebug("newCountdown ");
547 547
548 } 548 }
549 QString msg ; 549 QString msg ;
550 QString allmsg = cmsg; 550 QString allmsg = cmsg;
551 while ( allmsg.length() > 0 ) { 551 while ( allmsg.length() > 0 ) {
552 int nextC = allmsg.find( "-", 1 ); 552 int nextC = allmsg.find( "-", 1 );
553 if ( nextC == -1 ) { 553 if ( nextC == -1 ) {
554 msg = allmsg; 554 msg = allmsg;
555 allmsg = ""; 555 allmsg = "";
556 } else{ 556 } else{
557 msg = allmsg.left( nextC ); 557 msg = allmsg.left( nextC );
558 allmsg = allmsg.mid( nextC, allmsg.length()-nextC ); 558 allmsg = allmsg.mid( nextC, allmsg.length()-nextC );
559 } 559 }
560 //qDebug("msg: %s all: %s ", msg.latin1(), allmsg.latin1() ); 560 //qDebug("msg: %s all: %s ", msg.latin1(), allmsg.latin1() );
561 if ( msg == "-newEvent" ) { 561 if ( msg == "-newEvent" ) {
562 QTimer::singleShot( 0, mView, SLOT ( newEvent())); 562 QTimer::singleShot( 0, mView, SLOT ( newEvent()));
563 } 563 }
564 if ( msg == "-newTodo" ) { 564 if ( msg == "-newTodo" ) {
565 QTimer::singleShot( 0, mView, SLOT ( newTodo())); 565 QTimer::singleShot( 0, mView, SLOT ( newTodo()));
566 } 566 }
567 if ( msg == "-showWN" ) { 567 if ( msg == "-showWN" ) {
568 mView->viewManager()->showWhatsNextView(); 568 mView->viewManager()->showWhatsNextView();
569 } 569 }
570 if ( msg == "-showTodo" ) { 570 if ( msg == "-showTodo" ) {
571 mView->viewManager()->showTodoView(); 571 mView->viewManager()->showTodoView();
572 } 572 }
573 if ( msg == "-showList" ) { 573 if ( msg == "-showList" ) {
574 mView->viewManager()->showListView(); 574 mView->viewManager()->showListView();
575 } 575 }
576 else if ( msg == "-showDay" ) { 576 else if ( msg == "-showDay" ) {
577 mView->viewManager()->showDayView(); 577 mView->viewManager()->showDayView();
578 } 578 }
579 else if ( msg == "-showWWeek" ) { 579 else if ( msg == "-showWWeek" ) {
580 mView->viewManager()->showWorkWeekView(); 580 mView->viewManager()->showWorkWeekView();
581 } 581 }
582 else if ( msg == "-ringSync" ) { 582 else if ( msg == "-ringSync" ) {
583 QTimer::singleShot( 0, this, SLOT (startMultiSync())); 583 QTimer::singleShot( 0, this, SLOT (startMultiSync()));
584 } 584 }
585 else if ( msg == "-showWeek" ) { 585 else if ( msg == "-showWeek" ) {
586 mView->viewManager()->showWeekView(); 586 mView->viewManager()->showWeekView();
587 } 587 }
588 else if ( msg == "-showTodo" ) { 588 else if ( msg == "-showTodo" ) {
589 mView->viewManager()->showTodoView(); 589 mView->viewManager()->showTodoView();
590 } 590 }
591 else if ( msg == "-showJournal" ) { 591 else if ( msg == "-showJournal" ) {
592 mView->dateNavigator()->selectDates( 1 ); 592 mView->dateNavigator()->selectDates( 1 );
593 mView->dateNavigator()->selectToday(); 593 mView->dateNavigator()->selectToday();
594 mView->viewManager()->showJournalView(); 594 mView->viewManager()->showJournalView();
595 } 595 }
596 else if ( msg == "-showKO" ) { 596 else if ( msg == "-showKO" ) {
597 mView->viewManager()->showNextXView(); 597 mView->viewManager()->showNextXView();
598 } 598 }
599 else if ( msg == "-showWNext" ) { 599 else if ( msg == "-showWNext" ) {
600 mView->viewManager()->showWhatsNextView(); 600 mView->viewManager()->showWhatsNextView();
601 } 601 }
602 else if ( msg == "nextView()" ) { 602 else if ( msg == "nextView()" ) {
603 mView->viewManager()->showNextView(); 603 mView->viewManager()->showNextView();
604 } 604 }
605 else if ( msg == "-showNextXView" ) { 605 else if ( msg == "-showNextXView" ) {
606 mView->viewManager()->showNextXView(); 606 mView->viewManager()->showNextXView();
607 } 607 }
608 608
609 609
610 } 610 }
611 611
612 showMaximized(); 612 showMaximized();
613 raise(); 613 raise();
614} 614}
615void MainWindow::startMultiSync() 615void MainWindow::startMultiSync()
616{ 616{
617 QString question = i18n("Do you really want\nto multiple sync\nwith all checked profiles?\nSyncing takes some\ntime - all profiles\nare synced twice!"); 617 QString question = i18n("Do you really want\nto multiple sync\nwith all checked profiles?\nSyncing takes some\ntime - all profiles\nare synced twice!");
618 if ( QMessageBox::information( this, i18n("KDE-Pim Sync"), 618 if ( QMessageBox::information( this, i18n("KDE-Pim Sync"),
619 question, 619 question,
620 i18n("Yes"), i18n("No"), 620 i18n("Yes"), i18n("No"),
621 0, 0 ) != 0 ) { 621 0, 0 ) != 0 ) {
622 setCaption(i18n("Aborted! Nothing synced!")); 622 setCaption(i18n("Aborted! Nothing synced!"));
623 return; 623 return;
624 } 624 }
625 mSyncManager->multiSync( false ); 625 mSyncManager->multiSync( false );
626#ifndef DESKTOP_VERSION 626#ifndef DESKTOP_VERSION
627 QCopEnvelope e("QPE/Application/kapi", "doRingSync"); 627 QCopEnvelope e("QPE/Application/kapi", "doRingSync");
628#endif 628#endif
629} 629}
630QPixmap MainWindow::loadPixmap( QString name ) 630QPixmap MainWindow::loadPixmap( QString name )
631{ 631{
632 return SmallIcon( name ); 632 return SmallIcon( name );
633 633
634} 634}
635void MainWindow::setUsesBigPixmaps ( bool b ) 635void MainWindow::setUsesBigPixmaps ( bool b )
636{ 636{
637 qDebug("KO: MainWindow::setUsesBigPixmaps %d called", b); 637 qDebug("KO: MainWindow::setUsesBigPixmaps %d called", b);
638 if ( b ) 638 if ( b )
639 qDebug("KO: BigPixmaps are not supported "); 639 qDebug("KO: BigPixmaps are not supported ");
640} 640}
641void MainWindow::initActions() 641void MainWindow::initActions()
642{ 642{
643 //KOPrefs::instance()->mShowFullMenu 643 //KOPrefs::instance()->mShowFullMenu
644 iconToolBar->clear(); 644 iconToolBar->clear();
645 KOPrefs *p = KOPrefs::instance(); 645 KOPrefs *p = KOPrefs::instance();
646 //QPEMenuBar *menuBar1;// = new QPEMenuBar( iconToolBar ); 646 //QPEMenuBar *menuBar1;// = new QPEMenuBar( iconToolBar );
647 647
648 QPopupMenu *viewMenu = new QPopupMenu( this ); 648 QPopupMenu *viewMenu = new QPopupMenu( this );
649 QPopupMenu *actionMenu = new QPopupMenu( this ); 649 QPopupMenu *actionMenu = new QPopupMenu( this );
650 mCurrentItemMenu = new QPopupMenu ( this ); 650 mCurrentItemMenu = new QPopupMenu ( this );
651 QPopupMenu *importMenu = new QPopupMenu( this ); 651 QPopupMenu *importMenu = new QPopupMenu( this );
652 QPopupMenu *importMenu_X = new QPopupMenu( this ); 652 QPopupMenu *importMenu_X = new QPopupMenu( this );
653 QPopupMenu *exportMenu_X = new QPopupMenu( this ); 653 QPopupMenu *exportMenu_X = new QPopupMenu( this );
654 QPopupMenu *beamMenu_X = new QPopupMenu( this ); 654 QPopupMenu *beamMenu_X = new QPopupMenu( this );
655 selectFilterMenu = new QPopupMenu( this ); 655 selectFilterMenu = new QPopupMenu( this );
656 selectFilterMenu->setCheckable( true ); 656 selectFilterMenu->setCheckable( true );
657 syncMenu = new QPopupMenu( this ); 657 syncMenu = new QPopupMenu( this );
658 configureAgendaMenu = new QPopupMenu( this ); 658 configureAgendaMenu = new QPopupMenu( this );
659 configureToolBarMenu = new QPopupMenu( this ); 659 configureToolBarMenu = new QPopupMenu( this );
660 QPopupMenu *helpMenu = new QPopupMenu( this ); 660 QPopupMenu *helpMenu = new QPopupMenu( this );
661 QIconSet icon; 661 QIconSet icon;
662 int pixWid = 22, pixHei = 22; 662 int pixWid = 22, pixHei = 22;
663 QString pathString = ""; 663 QString pathString = "";
664 if ( !p->mToolBarMiniIcons ) { 664 if ( !p->mToolBarMiniIcons ) {
665 if ( QApplication::desktop()->width() < 480 /*|| QApplication::desktop()->height() < 320*/) { 665 if ( QApplication::desktop()->width() < 480 /*|| QApplication::desktop()->height() < 320*/) {
666 pathString += "icons16/"; 666 pathString += "icons16/";
667 pixWid = 18; pixHei = 16; 667 pixWid = 18; pixHei = 16;
668 } 668 }
669 } else { 669 } else {
670 pathString += "iconsmini/"; 670 pathString += "iconsmini/";
671 pixWid = 18; pixHei = 16; 671 pixWid = 18; pixHei = 16;
672 } 672 }
673 if ( KOPrefs::instance()->mShowFullMenu ) { 673 if ( KOPrefs::instance()->mShowFullMenu ) {
674 QMenuBar *menuBar1; 674 QMenuBar *menuBar1;
675 menuBar1 = menuBar(); 675 menuBar1 = menuBar();
676 menuBar1->insertItem( i18n("File"), importMenu ); 676 menuBar1->insertItem( i18n("File"), importMenu );
677 menuBar1->insertItem( i18n("View"), viewMenu ); 677 menuBar1->insertItem( i18n("View"), viewMenu );
678 menuBar1->insertItem( i18n("Actions"), actionMenu ); 678 menuBar1->insertItem( i18n("Edit"), mCurrentItemMenu );
679 menuBar1->insertItem( i18n("Action"), actionMenu );
679#ifdef DESKTOP_VERSION 680#ifdef DESKTOP_VERSION
680 menuBar1->insertItem( i18n("Synchronize"), syncMenu ); 681 menuBar1->insertItem( i18n("Synchronize"), syncMenu );
681 menuBar1->insertItem( i18n("AgendaSize"),configureAgendaMenu ); 682 menuBar1->insertItem( i18n("AgendaSize"),configureAgendaMenu );
682#else 683#else
683 menuBar1->insertItem( i18n("Sync"), syncMenu ); 684 menuBar1->insertItem( i18n("Sync"), syncMenu );
684 menuBar1->insertItem( i18n("Agenda"),configureAgendaMenu ); 685 menuBar1->insertItem( i18n("Agenda"),configureAgendaMenu );
685#endif 686#endif
686 //menuBar1->insertItem( i18n("Toolbar"),configureToolBarMenu ); 687 //menuBar1->insertItem( i18n("Toolbar"),configureToolBarMenu );
687 menuBar1->insertItem( i18n("Filter"),selectFilterMenu ); 688 menuBar1->insertItem( i18n("Filter"),selectFilterMenu );
688 menuBar1->insertItem( i18n("Help"), helpMenu ); 689 menuBar1->insertItem( i18n("Help"), helpMenu );
689 } else { 690 } else {
690 QPEMenuBar *menuBar1; 691 QPEMenuBar *menuBar1;
691 menuBar1 = new QPEMenuBar( iconToolBar ); 692 menuBar1 = new QPEMenuBar( iconToolBar );
692 QPopupMenu *menuBar = new QPopupMenu( this ); 693 QPopupMenu *menuBar = new QPopupMenu( this );
693 icon = loadPixmap( pathString + "z_menu" ); 694 icon = loadPixmap( pathString + "z_menu" );
694 menuBar1->insertItem( icon.pixmap(), menuBar); 695 menuBar1->insertItem( icon.pixmap(), menuBar);
695 //menuBar1->insertItem( i18n("ME"), menuBar); 696 //menuBar1->insertItem( i18n("ME"), menuBar);
696 menuBar->insertItem( i18n("File"), importMenu ); 697 menuBar->insertItem( i18n("File"), importMenu );
697 menuBar->insertItem( i18n("View"), viewMenu ); 698 menuBar->insertItem( i18n("View"), viewMenu );
698 menuBar->insertItem( i18n("Actions"), actionMenu ); 699 menuBar->insertItem( i18n("Edit"), mCurrentItemMenu );
700 menuBar->insertItem( i18n("Action"), actionMenu );
699 menuBar->insertItem( i18n("Synchronize"), syncMenu ); 701 menuBar->insertItem( i18n("Synchronize"), syncMenu );
700 menuBar->insertItem( i18n("AgendaSize"),configureAgendaMenu ); 702 menuBar->insertItem( i18n("AgendaSize"),configureAgendaMenu );
701 menuBar->insertItem( i18n("Toolbar"),configureToolBarMenu ); 703 menuBar->insertItem( i18n("Toolbar"),configureToolBarMenu );
702 menuBar->insertItem( i18n("Filter"),selectFilterMenu ); 704 menuBar->insertItem( i18n("Filter"),selectFilterMenu );
703 menuBar->insertItem( i18n("Help"), helpMenu ); 705 menuBar->insertItem( i18n("Help"), helpMenu );
704 //menuBar1->setMaximumWidth( menuBar1->sizeHint().width() ); 706 //menuBar1->setMaximumWidth( menuBar1->sizeHint().width() );
705 menuBar1->setMaximumSize( menuBar1->sizeHint( )); 707 menuBar1->setMaximumSize( menuBar1->sizeHint( ));
706 } 708 }
707 connect ( selectFilterMenu, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) ); 709 connect ( selectFilterMenu, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) );
708 connect ( selectFilterMenu, SIGNAL( aboutToShow() ), this, SLOT (fillFilterMenu() ) ); 710 connect ( selectFilterMenu, SIGNAL( aboutToShow() ), this, SLOT (fillFilterMenu() ) );
709 711
710 712
711 mWeekBgColor = iconToolBar->backgroundColor(); 713 mWeekBgColor = iconToolBar->backgroundColor();
712 mWeekPixmap.resize( pixWid , pixHei ); 714 mWeekPixmap.resize( pixWid , pixHei );
713 mWeekPixmap.fill( mWeekBgColor ); 715 mWeekPixmap.fill( mWeekBgColor );
714 icon = mWeekPixmap; 716 icon = mWeekPixmap;
715 mWeekAction = new QAction( i18n("Select week number"),icon, i18n("Select week number"), 0, this ); 717 mWeekAction = new QAction( i18n("Select week number"),icon, i18n("Select week number"), 0, this );
716 if ( p-> mShowIconWeekNum ) 718 if ( p-> mShowIconWeekNum )
717 mWeekAction->addTo( iconToolBar ); 719 mWeekAction->addTo( iconToolBar );
718 mWeekFont = font(); 720 mWeekFont = font();
719 721
720 int fontPoint = mWeekFont.pointSize(); 722 int fontPoint = mWeekFont.pointSize();
721 QFontMetrics f( mWeekFont ); 723 QFontMetrics f( mWeekFont );
722 int fontWid = f.width( "30" ); 724 int fontWid = f.width( "30" );
723 while ( fontWid > pixWid ) { 725 while ( fontWid > pixWid ) {
724 --fontPoint; 726 --fontPoint;
725 mWeekFont.setPointSize( fontPoint ); 727 mWeekFont.setPointSize( fontPoint );
726 QFontMetrics f( mWeekFont ); 728 QFontMetrics f( mWeekFont );
727 fontWid = f.width( "30" ); 729 fontWid = f.width( "30" );
728 //qDebug("dec-- "); 730 //qDebug("dec-- ");
729 } 731 }
730 732
731 connect( mWeekAction, SIGNAL( activated() ), 733 connect( mWeekAction, SIGNAL( activated() ),
732 this, SLOT( weekAction() ) ); 734 this, SLOT( weekAction() ) );
733 735
734 connect( this, SIGNAL( selectWeek ( int ) ), mView->dateNavigator(), SLOT( selectWeek ( int ) ) ); 736 connect( this, SIGNAL( selectWeek ( int ) ), mView->dateNavigator(), SLOT( selectWeek ( int ) ) );
735 if ( p->mShowIconFilterview ) { 737 if ( p->mShowIconFilterview ) {
736 icon = loadPixmap( pathString + "filter" ); 738 icon = loadPixmap( pathString + "filter" );
737 actionFilterMenuTB = new QAction( i18n("Filter selector"), icon, i18n("Filter selector"), 0, this ); 739 actionFilterMenuTB = new QAction( i18n("Filter selector"), icon, i18n("Filter selector"), 0, this );
738 connect( actionFilterMenuTB, SIGNAL( activated() ), 740 connect( actionFilterMenuTB, SIGNAL( activated() ),
739 this, SLOT( fillFilterMenuTB() ) ); 741 this, SLOT( fillFilterMenuTB() ) );
740 actionFilterMenuTB->addTo( iconToolBar ); 742 actionFilterMenuTB->addTo( iconToolBar );
741 selectFilterMenuTB = new QPopupMenu( this ); 743 selectFilterMenuTB = new QPopupMenu( this );
742 selectFilterMenuTB->setCheckable( true ); 744 selectFilterMenuTB->setCheckable( true );
743 connect ( selectFilterMenuTB, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) ); 745 connect ( selectFilterMenuTB, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) );
744 } 746 }
745 747
746 //#endif 748 //#endif
747 // ****************** 749 // ******************
748 QAction *action; 750 QAction *action;
749 // QPopupMenu *configureMenu= new QPopupMenu( menuBar ); 751 // QPopupMenu *configureMenu= new QPopupMenu( menuBar );
750 configureToolBarMenu->setCheckable( true ); 752 configureToolBarMenu->setCheckable( true );
751 753
752 754
753 configureAgendaMenu->setCheckable( true ); 755 configureAgendaMenu->setCheckable( true );
754 int iii ; 756 int iii ;
755 for ( iii = 1;iii<= 10 ;++iii ){ 757 for ( iii = 1;iii<= 10 ;++iii ){
756 configureAgendaMenu->insertItem(i18n("Size %1").arg(iii), (iii+1)*2 ); 758 configureAgendaMenu->insertItem(i18n("Size %1").arg(iii), (iii+1)*2 );
757 } 759 }
758 //configureMenu->insertItem( "AgendaSize",configureAgendaMenu ); 760 //configureMenu->insertItem( "AgendaSize",configureAgendaMenu );
759 761
760 connect( configureAgendaMenu, SIGNAL( aboutToShow()), 762 connect( configureAgendaMenu, SIGNAL( aboutToShow()),
761 this, SLOT( showConfigureAgenda( ) ) ); 763 this, SLOT( showConfigureAgenda( ) ) );
762 icon = loadPixmap( pathString + "today" ); 764 icon = loadPixmap( pathString + "today" );
763 QAction* today_action = new QAction( i18n("Go to Today"), icon, i18n("Go to Today"), 0, this ); 765 QAction* today_action = new QAction( i18n("Go to Today"), icon, i18n("Go to Today"), 0, this );
764 today_action->addTo( actionMenu ); 766 today_action->addTo( actionMenu );
765 connect( today_action, SIGNAL( activated() ), 767 connect( today_action, SIGNAL( activated() ),
766 mView, SLOT( goToday() ) ); 768 mView, SLOT( goToday() ) );
767 769
768 icon = loadPixmap( pathString + "picker" ); 770 icon = loadPixmap( pathString + "picker" );
769 QAction* dPickerAction = new QAction( i18n("Select Date..."), icon, i18n("Select Date..."), 0, this ); 771 QAction* dPickerAction = new QAction( i18n("Select Date..."), icon, i18n("Select Date..."), 0, this );
770 dPickerAction->addTo( actionMenu ); 772 dPickerAction->addTo( actionMenu );
771 connect( dPickerAction, SIGNAL( activated() ), 773 connect( dPickerAction, SIGNAL( activated() ),
772 mView, SLOT( showDatePicker() ) ); 774 mView, SLOT( showDatePicker() ) );
773 775
774 icon = loadPixmap( pathString + "search" ); 776 icon = loadPixmap( pathString + "search" );
775 QAction* search_action = new QAction( i18n("Search"), icon, i18n("Search..."), 0, this ); 777 QAction* search_action = new QAction( i18n("Search"), icon, i18n("Search..."), 0, this );
776 search_action->addTo( actionMenu ); 778 search_action->addTo( actionMenu );
777 connect( search_action, SIGNAL( activated() ), 779 connect( search_action, SIGNAL( activated() ),
778 mView->dialogManager(), SLOT( showSearchDialog() ) ); 780 mView->dialogManager(), SLOT( showSearchDialog() ) );
779 781
780 actionMenu->insertSeparator(); 782 actionMenu->insertSeparator();
781 783
782 784
783 785
784 action = new QAction( i18n("Undo Delete"), i18n("Undo Delete..."), 0, this ); 786 action = new QAction( i18n("Undo Delete"), i18n("Undo Delete..."), 0, this );
785 action->addTo( actionMenu ); 787 action->addTo( mCurrentItemMenu );
786 connect( action, SIGNAL( activated() ), 788 connect( action, SIGNAL( activated() ),
787 mView, SLOT( undo_delete() ) ); 789 mView, SLOT( undo_delete() ) );
788 790 mCurrentItemMenu->insertSeparator();
789 icon = loadPixmap( pathString + "newevent" ); 791 icon = loadPixmap( pathString + "newevent" );
790 configureToolBarMenu->insertItem(i18n("Stretched TB"), 5 ); 792 configureToolBarMenu->insertItem(i18n("Stretched TB"), 5 );
791 configureToolBarMenu->insertItem(i18n("Only one toolbar"), 6 ); 793 configureToolBarMenu->insertItem(i18n("Only one toolbar"), 6 );
792 configureToolBarMenu->insertSeparator(); 794 configureToolBarMenu->insertSeparator();
793 configureToolBarMenu->insertItem(i18n("Filtermenu"), 7 ); 795 configureToolBarMenu->insertItem(i18n("Filtermenu"), 7 );
794 configureToolBarMenu->insertSeparator(); 796 configureToolBarMenu->insertSeparator();
795 configureToolBarMenu->insertItem(i18n("Week Number"), 400); 797 configureToolBarMenu->insertItem(i18n("Week Number"), 400);
796 configureToolBarMenu->insertItem(icon, i18n("New Event..."), 10 ); 798 configureToolBarMenu->insertItem(icon, i18n("New Event..."), 10 );
797 799
798 actionMenu->insertItem ( i18n("Selected Item"), mCurrentItemMenu); 800 //actionMenu->insertItem ( i18n("Selected Item"), mCurrentItemMenu);
799 mShowAction = new QAction( "show_incidence", i18n("Show..."), 0, this ); 801 mShowAction = new QAction( "show_incidence", i18n("Show..."), 0, this );
800 mShowAction->addTo( mCurrentItemMenu ); 802 mShowAction->addTo( mCurrentItemMenu );
801 connect( mShowAction, SIGNAL( activated() ), 803 connect( mShowAction, SIGNAL( activated() ),
802 mView, SLOT( showIncidence() ) ); 804 mView, SLOT( showIncidence() ) );
803 805
804 mEditAction = new QAction( "edit_incidence", i18n("Edit..."), 0, this ); 806 mEditAction = new QAction( "edit_incidence", i18n("Edit..."), 0, this );
805 mEditAction->addTo( mCurrentItemMenu ); 807 mEditAction->addTo( mCurrentItemMenu );
806 connect( mEditAction, SIGNAL( activated() ), 808 connect( mEditAction, SIGNAL( activated() ),
807 mView, SLOT( editIncidence() ) ); 809 mView, SLOT( editIncidence() ) );
808 810
809 mDeleteAction = new QAction( "delete_incidence", i18n("Delete..."), 0, this ); 811 mDeleteAction = new QAction( "delete_incidence", i18n("Delete..."), 0, this );
810 mDeleteAction->addTo( mCurrentItemMenu ); 812 mDeleteAction->addTo( mCurrentItemMenu );
811 connect( mDeleteAction, SIGNAL( activated() ), 813 connect( mDeleteAction, SIGNAL( activated() ),
812 mView, SLOT( deleteIncidence() ) ); 814 mView, SLOT( deleteIncidence() ) );
813 815
814 816
815 mCloneAction = new QAction( "clone_incidence", i18n("Clone..."), 0, this ); 817 mCloneAction = new QAction( "clone_incidence", i18n("Clone..."), 0, this );
816 mCloneAction->addTo( mCurrentItemMenu ); 818 mCloneAction->addTo( mCurrentItemMenu );
817 connect( mCloneAction, SIGNAL( activated() ), 819 connect( mCloneAction, SIGNAL( activated() ),
818 mView, SLOT( cloneIncidence() ) ); 820 mView, SLOT( cloneIncidence() ) );
819 mMoveAction = new QAction( "Move_incidence", i18n("Move..."), 0, this ); 821 mMoveAction = new QAction( "Move_incidence", i18n("Move..."), 0, this );
820 mMoveAction->addTo( mCurrentItemMenu ); 822 mMoveAction->addTo( mCurrentItemMenu );
821 connect( mMoveAction, SIGNAL( activated() ), 823 connect( mMoveAction, SIGNAL( activated() ),
822 mView, SLOT( moveIncidence() ) ); 824 mView, SLOT( moveIncidence() ) );
823 mBeamAction = new QAction( "Beam_incidence", i18n("Beam..."), 0, this ); 825 mBeamAction = new QAction( "Beam_incidence", i18n("Beam..."), 0, this );
824 mBeamAction->addTo(mCurrentItemMenu ); 826 mBeamAction->addTo(mCurrentItemMenu );
825 connect( mBeamAction, SIGNAL( activated() ), 827 connect( mBeamAction, SIGNAL( activated() ),
826 mView, SLOT( beamIncidence() ) ); 828 mView, SLOT( beamIncidence() ) );
827 mCancelAction = new QAction( "Cancel_incidence", i18n("Toggle Cancel"), 0, this ); 829 mCancelAction = new QAction( "Cancel_incidence", i18n("Toggle Cancel"), 0, this );
828 mCancelAction->addTo( mCurrentItemMenu ); 830 mCancelAction->addTo( mCurrentItemMenu );
829 connect( mCancelAction, SIGNAL( activated() ), 831 connect( mCancelAction, SIGNAL( activated() ),
830 mView, SLOT( toggleCancelIncidence() ) ); 832 mView, SLOT( toggleCancelIncidence() ) );
831#ifdef DESKTOP_VERSION 833#ifdef DESKTOP_VERSION
832 actionMenu->insertSeparator(); 834 actionMenu->insertSeparator();
833#endif 835#endif
834 836
835 837
836 QAction* ne_action = new QAction( i18n("New Event..."), icon, i18n("New Event..."), 0, this ); 838 QAction* ne_action = new QAction( i18n("New Event..."), icon, i18n("New Event..."), 0, this );
837 ne_action->addTo( actionMenu ); 839 ne_action->addTo( actionMenu );
838 connect( ne_action, SIGNAL( activated() ), 840 connect( ne_action, SIGNAL( activated() ),
839 mView, SLOT( newEvent() ) ); 841 mView, SLOT( newEvent() ) );
840 icon = loadPixmap( pathString + "newtodo" ); 842 icon = loadPixmap( pathString + "newtodo" );
841 configureToolBarMenu->insertItem(icon, i18n("New Todo..."), 20 ); 843 configureToolBarMenu->insertItem(icon, i18n("New Todo..."), 20 );
842 QAction* nt_action = new QAction( i18n("New Todo..."), icon, i18n("New Todo..."), 0, this ); 844 QAction* nt_action = new QAction( i18n("New Todo..."), icon, i18n("New Todo..."), 0, this );
843 nt_action->addTo( actionMenu ); 845 nt_action->addTo( actionMenu );
844 connect( nt_action, SIGNAL( activated() ), 846 connect( nt_action, SIGNAL( activated() ),
845 mView, SLOT( newTodo() ) ); 847 mView, SLOT( newTodo() ) );
846 848
847 849
848 850
849 // *********************** 851 // ***********************
850 if ( KOPrefs::instance()->mVerticalScreen ) { 852 if ( KOPrefs::instance()->mVerticalScreen ) {
851 icon = SmallIcon( "1updownarrow" ); 853 icon = SmallIcon( "1updownarrow" );
852 } else { 854 } else {
853 icon = SmallIcon("1leftrightarrow" ); 855 icon = SmallIcon("1leftrightarrow" );
854 } 856 }
855 configureToolBarMenu->insertItem(icon, i18n("Toggle Fullscreen"), 28 ); 857 configureToolBarMenu->insertItem(icon, i18n("Toggle Fullscreen"), 28 );
856 QAction* FSaction = new QAction( i18n("Toggle Fullscreen"), icon, i18n("Toggle Fullscreen"), 0, this ); 858 QAction* FSaction = new QAction( i18n("Toggle Fullscreen"), icon, i18n("Toggle Fullscreen"), 0, this );
857 FSaction->addTo( viewMenu ); 859 FSaction->addTo( viewMenu );
858 connect( FSaction, SIGNAL( activated() ), mView, SLOT( toggleExpand() )); 860 connect( FSaction, SIGNAL( activated() ), mView, SLOT( toggleExpand() ));
859 861
860 862
861 icon = loadPixmap( pathString + "filter" ); 863 icon = loadPixmap( pathString + "filter" );
862 configureToolBarMenu->insertItem(icon, i18n("Filter menu icon"), 26 ); 864 configureToolBarMenu->insertItem(icon, i18n("Filter menu icon"), 26 );
863 icon = loadPixmap( pathString + "configure" ); 865 icon = loadPixmap( pathString + "configure" );
864 action = new QAction( i18n("Toggle Resource View"), icon, i18n("Toggle Resource View"), 0, this ); 866 action = new QAction( i18n("Toggle Resource View"), icon, i18n("Toggle Resource View"), 0, this );
865 action->addTo( viewMenu ); 867 action->addTo( viewMenu );
866 connect( action, SIGNAL( activated() ), 868 connect( action, SIGNAL( activated() ),
867 mView, SLOT( toggleFilter() ) ); 869 mView, SLOT( toggleFilter() ) );
868 mToggleFilter = action; 870 mToggleFilter = action;
869 icon = loadPixmap( pathString + "navi" ); 871 icon = loadPixmap( pathString + "navi" );
870 configureToolBarMenu->insertItem(icon, i18n("Toggle DateNavigator"), 22 ); 872 configureToolBarMenu->insertItem(icon, i18n("Toggle DateNavigator"), 22 );
871 action = new QAction( i18n("Toggle DateNavigator"), icon, i18n("Toggle DateNavigator"), 0, this ); 873 action = new QAction( i18n("Toggle DateNavigator"), icon, i18n("Toggle DateNavigator"), 0, this );
872 action->addTo( viewMenu ); 874 action->addTo( viewMenu );
873 connect( action, SIGNAL( activated() ), 875 connect( action, SIGNAL( activated() ),
874 mView, SLOT( toggleDateNavigatorWidget() ) ); 876 mView, SLOT( toggleDateNavigatorWidget() ) );
875 mToggleNav = action ; 877 mToggleNav = action ;
876 icon = loadPixmap( pathString + "allday" ); 878 icon = loadPixmap( pathString + "allday" );
877 configureToolBarMenu->insertItem(icon, i18n("Toggle Allday"), 24 ); 879 configureToolBarMenu->insertItem(icon, i18n("Toggle Allday"), 24 );
878 action = new QAction( i18n("Toggle Allday"), icon,i18n("Toggle Allday"), 0, this ); 880 action = new QAction( i18n("Toggle Allday"), icon,i18n("Toggle Allday"), 0, this );
879 action->addTo( viewMenu ); 881 action->addTo( viewMenu );
880 connect( action, SIGNAL( activated() ), 882 connect( action, SIGNAL( activated() ),
881 mView, SLOT( toggleAllDaySize() ) ); 883 mView, SLOT( toggleAllDaySize() ) );
882 mToggleAllday = action; 884 mToggleAllday = action;
883 885
884 886
885 connect( mView->viewManager(), SIGNAL( signalFullScreen( bool ) ), 887 connect( mView->viewManager(), SIGNAL( signalFullScreen( bool ) ),
886 mToggleNav, SLOT( setEnabled ( bool ) ) ); 888 mToggleNav, SLOT( setEnabled ( bool ) ) );
887 //connect( mView->viewManager(), SIGNAL( signalFullScreen( bool ) ), 889 //connect( mView->viewManager(), SIGNAL( signalFullScreen( bool ) ),
888 // mToggleFilter, SLOT( setEnabled ( bool ) ) ); 890 // mToggleFilter, SLOT( setEnabled ( bool ) ) );
889 connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ), 891 connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ),
890 mToggleAllday, SLOT( setEnabled ( bool ) ) ); 892 mToggleAllday, SLOT( setEnabled ( bool ) ) );
891 // connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ), 893 // connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ),
892 // configureAgendaMenu, SLOT( setEnabled ( bool ) ) ); 894 // configureAgendaMenu, SLOT( setEnabled ( bool ) ) );
893 895
894 896
895 dPickerAction->addTo( iconToolBar ); 897 dPickerAction->addTo( iconToolBar );
896 viewMenu->insertSeparator(); 898 viewMenu->insertSeparator();
897 899
898 if ( p-> mShowIconToggleFull ) 900 if ( p-> mShowIconToggleFull )
899 FSaction->addTo( iconToolBar ); 901 FSaction->addTo( iconToolBar );
900 if ( p->mShowIconNavigator ) mToggleNav ->addTo( iconToolBar ); 902 if ( p->mShowIconNavigator ) mToggleNav ->addTo( iconToolBar );
901 903
902 //******************** 904 //********************
903 if ( p->mShowIconAllday ) mToggleAllday->addTo( iconToolBar ); 905 if ( p->mShowIconAllday ) mToggleAllday->addTo( iconToolBar );
904 906
905 907
906 icon = loadPixmap( pathString + "whatsnext" ); 908 icon = loadPixmap( pathString + "whatsnext" );
907 configureToolBarMenu->insertItem(icon, i18n("What's Next"), 110 ); 909 configureToolBarMenu->insertItem(icon, i18n("What's Next"), 110 );
908 QAction* whatsnext_action = new QAction( i18n("What's Next"), icon, i18n("What's Next"), 0, this ); 910 QAction* whatsnext_action = new QAction( i18n("What's Next"), icon, i18n("What's Next"), 0, this );
909 whatsnext_action->addTo( viewMenu ); 911 whatsnext_action->addTo( viewMenu );
910 connect( whatsnext_action, SIGNAL( activated() ), 912 connect( whatsnext_action, SIGNAL( activated() ),
911 mView->viewManager(), SLOT( showWhatsNextView() ) ); 913 mView->viewManager(), SLOT( showWhatsNextView() ) );
912 914
913 icon = loadPixmap( pathString + "xdays" ); 915 icon = loadPixmap( pathString + "xdays" );
914 configureToolBarMenu->insertItem(icon, i18n("Next days"), 100 ); 916 configureToolBarMenu->insertItem(icon, i18n("Next days"), 100 );
915 QAction* xdays_action = new QAction( i18n("Next days"), icon, i18n("Next days"), 0, this ); 917 QAction* xdays_action = new QAction( i18n("Next days"), icon, i18n("Next days"), 0, this );
916 xdays_action->addTo( viewMenu ); 918 xdays_action->addTo( viewMenu );
917 connect( xdays_action, SIGNAL( activated() ), 919 connect( xdays_action, SIGNAL( activated() ),
918 mView->viewManager(), SLOT( showNextXView() ) ); 920 mView->viewManager(), SLOT( showNextXView() ) );
919 921
920 922
921 icon = loadPixmap( pathString + "journal" ); 923 icon = loadPixmap( pathString + "journal" );
922 configureToolBarMenu->insertItem(icon, i18n("Journal"), 90 ); 924 configureToolBarMenu->insertItem(icon, i18n("Journal"), 90 );
923 QAction* viewjournal_action = new QAction( i18n("Journal"), icon, i18n("Journal"), 0, this ); 925 QAction* viewjournal_action = new QAction( i18n("Journal"), icon, i18n("Journal"), 0, this );
924 viewjournal_action->addTo( viewMenu ); 926 viewjournal_action->addTo( viewMenu );
925 connect( viewjournal_action, SIGNAL( activated() ), 927 connect( viewjournal_action, SIGNAL( activated() ),
926 mView->viewManager(), SLOT( showJournalView() ) ); 928 mView->viewManager(), SLOT( showJournalView() ) );
927 929
928 930
929 icon = loadPixmap( pathString + "day" ); 931 icon = loadPixmap( pathString + "day" );
930 configureToolBarMenu->insertItem(icon, i18n("Day View"), 40 ); 932 configureToolBarMenu->insertItem(icon, i18n("Day View"), 40 );
931 QAction* day1_action = new QAction( i18n("Day View"), icon, i18n("Day View"), 0, this ); 933 QAction* day1_action = new QAction( i18n("Day View"), icon, i18n("Day View"), 0, this );
932 day1_action->addTo( viewMenu ); 934 day1_action->addTo( viewMenu );
933 // action->addTo( toolBar ); 935 // action->addTo( toolBar );
934 connect( day1_action, SIGNAL( activated() ), 936 connect( day1_action, SIGNAL( activated() ),
935 mView->viewManager(), SLOT( showDayView() ) ); 937 mView->viewManager(), SLOT( showDayView() ) );
936 938
937 icon = loadPixmap( pathString + "workweek" ); 939 icon = loadPixmap( pathString + "workweek" );
938 configureToolBarMenu->insertItem(icon, i18n("Work Week"), 50 ); 940 configureToolBarMenu->insertItem(icon, i18n("Work Week"), 50 );
939 QAction* day5_action = new QAction( i18n("Work Week"), icon, i18n("Work Week"), 0, this ); 941 QAction* day5_action = new QAction( i18n("Work Week"), icon, i18n("Work Week"), 0, this );
940 day5_action->addTo( viewMenu ); 942 day5_action->addTo( viewMenu );
941 connect( day5_action, SIGNAL( activated() ), 943 connect( day5_action, SIGNAL( activated() ),
942 mView->viewManager(), SLOT( showWorkWeekView() ) ); 944 mView->viewManager(), SLOT( showWorkWeekView() ) );
943 945
944 icon = loadPixmap( pathString + "week" ); 946 icon = loadPixmap( pathString + "week" );
945 configureToolBarMenu->insertItem(icon, i18n("Week"), 60 ); 947 configureToolBarMenu->insertItem(icon, i18n("Week"), 60 );
946 QAction* day7_action = new QAction( i18n("Week"), icon, i18n("Week"), 0, this ); 948 QAction* day7_action = new QAction( i18n("Week"), icon, i18n("Week"), 0, this );
947 day7_action->addTo( viewMenu ); 949 day7_action->addTo( viewMenu );
948 connect( day7_action, SIGNAL( activated() ), 950 connect( day7_action, SIGNAL( activated() ),
949 mView->viewManager(), SLOT( showWeekView() ) ); 951 mView->viewManager(), SLOT( showWeekView() ) );
950 952
951 icon = loadPixmap( pathString + "workweek2" ); 953 icon = loadPixmap( pathString + "workweek2" );
952 configureToolBarMenu->insertItem(icon, i18n("List week view"), 75 ); 954 configureToolBarMenu->insertItem(icon, i18n("List week view"), 75 );
953 QAction* day6_action = new QAction( i18n("List week"), icon, i18n("List week"), 0, this ); 955 QAction* day6_action = new QAction( i18n("List week"), icon, i18n("List week"), 0, this );
954 day6_action->addTo( viewMenu ); 956 day6_action->addTo( viewMenu );
955 connect( day6_action, SIGNAL( activated() ), 957 connect( day6_action, SIGNAL( activated() ),
956 mView->viewManager(), SLOT( showMonthViewWeek() ) ); 958 mView->viewManager(), SLOT( showMonthViewWeek() ) );
957 959
958 icon = loadPixmap( pathString + "month" ); 960 icon = loadPixmap( pathString + "month" );
959 configureToolBarMenu->insertItem(icon, i18n("Month"), 70 ); 961 configureToolBarMenu->insertItem(icon, i18n("Month"), 70 );
960 QAction* month_action = new QAction( i18n("Month"), icon, i18n("Month"), 0, this ); 962 QAction* month_action = new QAction( i18n("Month"), icon, i18n("Month"), 0, this );
961 month_action->addTo( viewMenu ); 963 month_action->addTo( viewMenu );
962 connect( month_action, SIGNAL( activated() ), 964 connect( month_action, SIGNAL( activated() ),
963 mView->viewManager(), SLOT( showMonthView() ) ); 965 mView->viewManager(), SLOT( showMonthView() ) );
964 966
965 icon = loadPixmap( pathString + "list" ); 967 icon = loadPixmap( pathString + "list" );
966 configureToolBarMenu->insertItem(icon, i18n("List View"), 30 ); 968 configureToolBarMenu->insertItem(icon, i18n("List View"), 30 );
967 QAction* showlist_action = new QAction( i18n("List View"), icon, i18n("List View"), 0, this ); 969 QAction* showlist_action = new QAction( i18n("List View"), icon, i18n("List View"), 0, this );
968 showlist_action->addTo( viewMenu ); 970 showlist_action->addTo( viewMenu );
969 connect( showlist_action, SIGNAL( activated() ), 971 connect( showlist_action, SIGNAL( activated() ),
970 mView->viewManager(), SLOT( showListView() ) ); 972 mView->viewManager(), SLOT( showListView() ) );
971 973
972 icon = loadPixmap( pathString + "todo" ); 974 icon = loadPixmap( pathString + "todo" );
973 configureToolBarMenu->insertItem(icon, i18n("Todo View"), 80 ); 975 configureToolBarMenu->insertItem(icon, i18n("Todo View"), 80 );
974 QAction* todoview_action = new QAction( i18n("Todo View"), icon, i18n("Todo View"), 0, this ); 976 QAction* todoview_action = new QAction( i18n("Todo View"), icon, i18n("Todo View"), 0, this );
975 todoview_action->addTo( viewMenu ); 977 todoview_action->addTo( viewMenu );
976 connect( todoview_action, SIGNAL( activated() ), 978 connect( todoview_action, SIGNAL( activated() ),
977 mView->viewManager(), SLOT( showTodoView() ) ); 979 mView->viewManager(), SLOT( showTodoView() ) );
978 980
979 981
980 982
981#if 0 983#if 0
982 action = new QAction( "view_timespan", "Time Span", 0, this ); 984 action = new QAction( "view_timespan", "Time Span", 0, this );
983 action->addTo( viewMenu ); 985 action->addTo( viewMenu );
984 connect( action, SIGNAL( activated() ), 986 connect( action, SIGNAL( activated() ),
985 mView->viewManager(), SLOT( showTimeSpanView() ) ); 987 mView->viewManager(), SLOT( showTimeSpanView() ) );
986#endif 988#endif
987 989
988 mNewSubTodoAction = new QAction( "new_subtodo", i18n("New Sub-Todo..."), 0, 990 mNewSubTodoAction = new QAction( "new_subtodo", i18n("New Sub-Todo..."), 0,
989 this ); 991 this );
990 mNewSubTodoAction->addTo( actionMenu ); 992 mNewSubTodoAction->addTo( actionMenu );
991 connect( mNewSubTodoAction, SIGNAL( activated() ), 993 connect( mNewSubTodoAction, SIGNAL( activated() ),
992 mView, SLOT( newSubTodo() ) ); 994 mView, SLOT( newSubTodo() ) );
993 995
994 action = new QAction( "purge_completed", i18n("Purge Completed..."), 0, 996 action = new QAction( "purge_completed", i18n("Purge Completed..."), 0,
995 this ); 997 this );
996 action->addTo( actionMenu ); 998 action->addTo( actionMenu );
997 connect( action, SIGNAL( activated() ), mView, SLOT( purgeCompleted() ) ); 999 connect( action, SIGNAL( activated() ), mView, SLOT( purgeCompleted() ) );
998 1000
999 1001
1000 configureToolBarMenu->insertItem(icon, i18n("Search"), 120 , 5); 1002 configureToolBarMenu->insertItem(icon, i18n("Search"), 120 , 5);
1001 1003
1002 1004
1003 1005
1004 actionMenu->insertSeparator(); 1006 actionMenu->insertSeparator();
1005 action = new QAction( "manage cat", i18n("Edit category list..."), 0, 1007 action = new QAction( "manage cat", i18n("Edit category list..."), 0,
1006 this ); 1008 this );
1007 action->addTo( actionMenu ); 1009 action->addTo( actionMenu );
1008 connect( action, SIGNAL( activated() ), mView, SLOT( editCategories() ) ); 1010 connect( action, SIGNAL( activated() ), mView, SLOT( editCategories() ) );
1009 1011
1010 action = new QAction( "manage cat", i18n("Manage new categories..."), 0, 1012 action = new QAction( "manage cat", i18n("Manage new categories..."), 0,
1011 this ); 1013 this );
1012 action->addTo( actionMenu ); 1014 action->addTo( actionMenu );
1013 connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) ); 1015 connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) );
1014 1016
1015 1017
1016 actionMenu->insertSeparator(); 1018 actionMenu->insertSeparator();
1017 icon = loadPixmap( pathString + "configure" ); 1019 icon = loadPixmap( pathString + "configure" );
1018 action = new QAction( i18n("Configure"),icon, i18n("Configure KO/Pi..."), 0, this ); 1020 action = new QAction( i18n("Configure"),icon, i18n("Configure KO/Pi..."), 0, this );
1019 action->addTo( actionMenu ); 1021 action->addTo( actionMenu );
1020 connect( action, SIGNAL( activated() ), 1022 connect( action, SIGNAL( activated() ),
1021 mView, SLOT( edit_options() ) ); 1023 mView, SLOT( edit_options() ) );
1022 icon = loadPixmap( pathString + "configure" ); 1024 icon = loadPixmap( pathString + "configure" );
1023 action = new QAction( i18n("Configure"),icon, i18n("Global Settings..."), 0, this ); 1025 action = new QAction( i18n("Configure"),icon, i18n("Global Settings..."), 0, this );
1024 action->addTo( actionMenu ); 1026 action->addTo( actionMenu );
1025 connect( action, SIGNAL( activated() ), 1027 connect( action, SIGNAL( activated() ),
1026 mView, SLOT( edit_global_options() ) ); 1028 mView, SLOT( edit_global_options() ) );
1027 if ( KOPrefs::instance()->mShowFullMenu ) { 1029 if ( KOPrefs::instance()->mShowFullMenu ) {
1028 actionMenu->insertItem( i18n("Configure Toolbar"),configureToolBarMenu ); 1030 actionMenu->insertItem( i18n("Configure Toolbar"),configureToolBarMenu );
1029 1031
1030 } 1032 }
1031 // actionMenu->insertSeparator(); 1033 // actionMenu->insertSeparator();
1032 action = new QAction( "import_qtopia", i18n("Import (*.ics/*.vcs) file"), 0, 1034 action = new QAction( "import_qtopia", i18n("Import (*.ics/*.vcs) file"), 0,
1033 this ); 1035 this );
1034 action->addTo( importMenu_X ); 1036 action->addTo( importMenu_X );
1035 connect( action, SIGNAL( activated() ), SLOT( importIcal() ) ); 1037 connect( action, SIGNAL( activated() ), SLOT( importIcal() ) );
1036 action = new QAction( "import_quick", i18n("Import last file"), 0, 1038 action = new QAction( "import_quick", i18n("Import last file"), 0,
1037 this ); 1039 this );
1038 action->addTo( importMenu_X ); 1040 action->addTo( importMenu_X );
1039 connect( action, SIGNAL( activated() ), SLOT( quickImportIcal() ) ); 1041 connect( action, SIGNAL( activated() ), SLOT( quickImportIcal() ) );
1040 importMenu_X->insertSeparator(); 1042 importMenu_X->insertSeparator();
1041 action = new QAction( "import_bday", i18n("Import Birthdays (KA/Pi)"), 0, 1043 action = new QAction( "import_bday", i18n("Import Birthdays (KA/Pi)"), 0,
1042 this ); 1044 this );
1043 action->addTo( importMenu_X ); 1045 action->addTo( importMenu_X );
1044 connect( action, SIGNAL( activated() ), SLOT( importBday() ) ); 1046 connect( action, SIGNAL( activated() ), SLOT( importBday() ) );
1045 //#ifndef DESKTOP_VERSION 1047 //#ifndef DESKTOP_VERSION
1046 importMenu_X->insertSeparator(); 1048 importMenu_X->insertSeparator();
1047 action = new QAction( "import_qtopia", i18n("Import Opie/Qtopia Cal."), 0, 1049 action = new QAction( "import_qtopia", i18n("Import Opie/Qtopia Cal."), 0,
1048 this ); 1050 this );
1049 action->addTo( importMenu_X ); 1051 action->addTo( importMenu_X );
1050 connect( action, SIGNAL( activated() ), SLOT( importQtopia() ) ); 1052 connect( action, SIGNAL( activated() ), SLOT( importQtopia() ) );
1051 //#else 1053 //#else
1052#ifdef _OL_IMPORT_ 1054#ifdef _OL_IMPORT_
1053 importMenu_X->insertSeparator(); 1055 importMenu_X->insertSeparator();
1054 action = new QAction( "import_ol", i18n("Import from OL"), 0, 1056 action = new QAction( "import_ol", i18n("Import from OL"), 0,
1055 this ); 1057 this );
1056 action->addTo( importMenu_X ); 1058 action->addTo( importMenu_X );
1057 connect( action, SIGNAL( activated() ), SLOT( importOL() ) ); 1059 connect( action, SIGNAL( activated() ), SLOT( importOL() ) );
1058#endif 1060#endif
1059 //#endif 1061 //#endif
1060 1062
1061 //importMenu->insertSeparator(); 1063 //importMenu->insertSeparator();
1062#if 0 1064#if 0
1063 action = new QAction( "load_cal", i18n("Load Calendar Backup"), 0, 1065 action = new QAction( "load_cal", i18n("Load Calendar Backup"), 0,
1064 this ); 1066 this );
1065 action->addTo( importMenu ); 1067 action->addTo( importMenu );
1066 connect( action, SIGNAL( activated() ), SLOT( loadCalendar() ) ); 1068 connect( action, SIGNAL( activated() ), SLOT( loadCalendar() ) );
1067#endif 1069#endif
1068 action = new QAction( "save_cal", i18n("Save Backup..."), 0, 1070 action = new QAction( "save_cal", i18n("Save Backup..."), 0,
1069 this ); 1071 this );
1070 action->addTo( importMenu ); 1072 action->addTo( importMenu );
1071 connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) ); 1073 connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) );
1072 importMenu->insertSeparator(); 1074 importMenu->insertSeparator();
1073 importMenu->insertItem( i18n("Import"), importMenu_X ); 1075 importMenu->insertItem( i18n("Import"), importMenu_X );
1074 //importMenu->insertSeparator(); 1076 //importMenu->insertSeparator();
1075 action = new QAction( "import_qtopia", i18n("Export VCalendar"), 0, 1077 action = new QAction( "import_qtopia", i18n("Export VCalendar"), 0,
1076 this ); 1078 this );
1077 action->addTo( exportMenu_X ); 1079 action->addTo( exportMenu_X );
1078 connect( action, SIGNAL( activated() ), SLOT( exportVCalendar() ) ); 1080 connect( action, SIGNAL( activated() ), SLOT( exportVCalendar() ) );
1079 1081
1080 1082
1081 //LR 1083 //LR
1082 QPopupMenu *ex2phone = new QPopupMenu( this ); 1084 QPopupMenu *ex2phone = new QPopupMenu( this );
1083 ex2phone->insertItem(i18n("Complete calendar..."), 1 ); 1085 ex2phone->insertItem(i18n("Complete calendar..."), 1 );
1084 ex2phone->insertItem(i18n("Filtered calendar..."), 2 ); 1086 ex2phone->insertItem(i18n("Filtered calendar..."), 2 );
1085 connect( ex2phone, SIGNAL( activated(int) ), this, SLOT( exportToPhone( int)) ); 1087 connect( ex2phone, SIGNAL( activated(int) ), this, SLOT( exportToPhone( int)) );
1086 exportMenu_X->insertItem( i18n("Export to phone"), ex2phone ); 1088 exportMenu_X->insertItem( i18n("Export to phone"), ex2phone );
1087 1089
1088 importMenu->insertItem( i18n("Export"), exportMenu_X ); 1090 importMenu->insertItem( i18n("Export"), exportMenu_X );
1089#ifndef DESKTOP_VERSION 1091#ifndef DESKTOP_VERSION
1090 //importMenu->insertSeparator(); 1092 //importMenu->insertSeparator();
1091 brAction = new QAction( "beam toggle", i18n("Beam receive enabled"), 0, 1093 brAction = new QAction( "beam toggle", i18n("Beam receive enabled"), 0,
1092 this ); 1094 this );
1093 brAction->addTo( beamMenu_X ); 1095 brAction->addTo( beamMenu_X );
1094 brAction->setToggleAction (true ) ; 1096 brAction->setToggleAction (true ) ;
1095 connect( brAction, SIGNAL( activated() ), this, SLOT( toggleBeamReceive() ) ); 1097 connect( brAction, SIGNAL( activated() ), this, SLOT( toggleBeamReceive() ) );
1096 1098
1097 action = new QAction( "beam all", i18n("Beam complete calendar..."), 0, 1099 action = new QAction( "beam all", i18n("Beam complete calendar..."), 0,
1098 this ); 1100 this );
1099 action->addTo( beamMenu_X ); 1101 action->addTo( beamMenu_X );
1100 connect( action, SIGNAL( activated() ), mView, SLOT( beamCalendar() ) ); 1102 connect( action, SIGNAL( activated() ), mView, SLOT( beamCalendar() ) );
1101 1103
1102 action = new QAction( "beam all", i18n("Beam filtered calendar..."), 0, 1104 action = new QAction( "beam all", i18n("Beam filtered calendar..."), 0,
1103 this ); 1105 this );
1104 action->addTo( beamMenu_X ); 1106 action->addTo( beamMenu_X );
1105 connect( action, SIGNAL( activated() ), mView, SLOT( beamFilteredCalendar()) ); 1107 connect( action, SIGNAL( activated() ), mView, SLOT( beamFilteredCalendar()) );
1106 importMenu->insertItem( i18n("Beam"), beamMenu_X ); 1108 importMenu->insertItem( i18n("Beam"), beamMenu_X );
1107#else 1109#else
1108 //importMenu->insertSeparator(); 1110 //importMenu->insertSeparator();
1109 icon = loadPixmap( pathString + "print" ); 1111 icon = loadPixmap( pathString + "print" );
1110 action = new QAction( i18n("Print calendar..."),icon,i18n("Print calendar..."), 0, this ); 1112 action = new QAction( i18n("Print calendar..."),icon,i18n("Print calendar..."), 0, this );
1111 action->addTo( beamMenu_X ); 1113 action->addTo( beamMenu_X );
1112 connect( action, SIGNAL( activated() ), 1114 connect( action, SIGNAL( activated() ),
1113 this, SLOT( printCal() ) ); 1115 this, SLOT( printCal() ) );
1114 1116
1115 icon = loadPixmap( pathString + "print" ); 1117 icon = loadPixmap( pathString + "print" );
1116 action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this ); 1118 action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this );
1117 action->addTo( beamMenu_X ); 1119 action->addTo( beamMenu_X );
1118 connect( action, SIGNAL( activated() ), 1120 connect( action, SIGNAL( activated() ),
1119 this, SLOT( printSel() ) ); 1121 this, SLOT( printSel() ) );
1120 action = new QAction( i18n("Print What's Next View..."),icon,i18n("Print What's Next View..."), 0, this ); 1122 action = new QAction( i18n("Print What's Next View..."),icon,i18n("Print What's Next View..."), 0, this );
1121 action->addTo( beamMenu_X ); 1123 action->addTo( beamMenu_X );
1122 connect( action, SIGNAL( activated() ), 1124 connect( action, SIGNAL( activated() ),
1123 mView->viewManager(), SLOT( slotprintWNV() ) ); 1125 mView->viewManager(), SLOT( slotprintWNV() ) );
1124 1126
1125 1127
1126 icon = loadPixmap( pathString + "print" ); 1128 icon = loadPixmap( pathString + "print" );
1127 action = new QAction( i18n("Print List View..."),icon,i18n("Print List View..."), 0, this ); 1129 action = new QAction( i18n("Print List View..."),icon,i18n("Print List View..."), 0, this );
1128 action->addTo( beamMenu_X ); 1130 action->addTo( beamMenu_X );
1129 connect( action, SIGNAL( activated() ), 1131 connect( action, SIGNAL( activated() ),
1130 this, SLOT( printListView() ) ); 1132 this, SLOT( printListView() ) );
1131 1133
1132 action = new QAction( i18n("Print selected event / todo..."),icon,i18n("Print selected event / todo..."), 0, this ); 1134 action = new QAction( i18n("Print selected event / todo..."),icon,i18n("Print selected event / todo..."), 0, this );
1133 action->addTo( beamMenu_X ); 1135 action->addTo( beamMenu_X );
1134 connect( action, SIGNAL( activated() ), 1136 connect( action, SIGNAL( activated() ),
1135 mView, SLOT( slotprintSelInc() ) ); 1137 mView, SLOT( slotprintSelInc() ) );
1136 1138
1137 importMenu->insertItem( i18n("Print"), beamMenu_X ); 1139 importMenu->insertItem( i18n("Print"), beamMenu_X );
1138#endif 1140#endif
1139 1141
1140 importMenu->insertSeparator(); 1142 importMenu->insertSeparator();
1141 action = new QAction( "beam all", i18n("Save"), 0, 1143 action = new QAction( "beam all", i18n("Save"), 0,
1142 this ); 1144 this );
1143 action->addTo( importMenu ); 1145 action->addTo( importMenu );
1144 connect( action, SIGNAL( activated() ), this, SLOT( save() ) ); 1146 connect( action, SIGNAL( activated() ), this, SLOT( save() ) );
1145 action = new QAction( "beam all", i18n("Exit (+save)"), 0, 1147 action = new QAction( "beam all", i18n("Exit (+save)"), 0,
1146 this ); 1148 this );
1147 action->addTo( importMenu ); 1149 action->addTo( importMenu );
1148 connect( action, SIGNAL( activated() ), this, SLOT( close() ) ); 1150 connect( action, SIGNAL( activated() ), this, SLOT( close() ) );
1149 1151
1150 //menuBar->insertItem( "Configure",configureMenu ); 1152 //menuBar->insertItem( "Configure",configureMenu );
1151 //configureMenu->insertItem( "Toolbar",configureToolBarMenu ); 1153 //configureMenu->insertItem( "Toolbar",configureToolBarMenu );
1152 icon = loadPixmap( "korganizer/korganizer" ); 1154 icon = loadPixmap( "korganizer/korganizer" );
1153 1155
1154 action = new QAction( "Whats New", i18n("What's new?"), 0,this ); 1156 action = new QAction( "Whats New", i18n("What's new?"), 0,this );
1155 action->addTo( helpMenu ); 1157 action->addTo( helpMenu );
1156 connect( action, SIGNAL( activated() ), 1158 connect( action, SIGNAL( activated() ),
1157 SLOT( whatsNew() ) ); 1159 SLOT( whatsNew() ) );
1158 action = new QAction( "featureHowto", i18n("Features + hints..."), 0,this ); 1160 action = new QAction( "featureHowto", i18n("Features + hints..."), 0,this );
1159 action->addTo( helpMenu ); 1161 action->addTo( helpMenu );
1160 connect( action, SIGNAL( activated() ), 1162 connect( action, SIGNAL( activated() ),
1161 SLOT( features() ) ); 1163 SLOT( features() ) );
1162 action = new QAction( "Keys + Colors", i18n("Keys + Colors..."), 0, this ); 1164 action = new QAction( "Keys + Colors", i18n("Keys + Colors..."), 0, this );
1163 action->addTo( helpMenu ); 1165 action->addTo( helpMenu );
1164 connect( action, SIGNAL( activated() ), 1166 connect( action, SIGNAL( activated() ),
1165 SLOT( keyBindings() ) ); 1167 SLOT( keyBindings() ) );
1166 action = new QAction( "Storage Howto", i18n("Storage HowTo..."), 0,this ); 1168 action = new QAction( "Storage Howto", i18n("Storage HowTo..."), 0,this );
1167 action->addTo( helpMenu ); 1169 action->addTo( helpMenu );
1168 connect( action, SIGNAL( activated() ), 1170 connect( action, SIGNAL( activated() ),
1169 SLOT( storagehowto() ) ); 1171 SLOT( storagehowto() ) );
1170 action = new QAction( "Timetracking Howto", i18n("Timetracking HowTo..."), 0,this ); 1172 action = new QAction( "Timetracking Howto", i18n("Timetracking HowTo..."), 0,this );
1171 action->addTo( helpMenu ); 1173 action->addTo( helpMenu );
1172 connect( action, SIGNAL( activated() ), 1174 connect( action, SIGNAL( activated() ),
1173 SLOT( timetrackinghowto() ) ); 1175 SLOT( timetrackinghowto() ) );
1174 action = new QAction( "Sync Howto", i18n("Sync HowTo..."), 0,this ); 1176 action = new QAction( "Sync Howto", i18n("Sync HowTo..."), 0,this );
1175 action->addTo( helpMenu ); 1177 action->addTo( helpMenu );
1176 connect( action, SIGNAL( activated() ), 1178 connect( action, SIGNAL( activated() ),
1177 SLOT( synchowto() ) ); 1179 SLOT( synchowto() ) );
1178 action = new QAction( "KDE Sync Howto", i18n("KDE Sync HowTo..."), 0,this ); 1180 action = new QAction( "KDE Sync Howto", i18n("KDE Sync HowTo..."), 0,this );
1179 action->addTo( helpMenu ); 1181 action->addTo( helpMenu );
1180 connect( action, SIGNAL( activated() ), 1182 connect( action, SIGNAL( activated() ),
1181 SLOT( kdesynchowto() ) ); 1183 SLOT( kdesynchowto() ) );
1182 action = new QAction( "Multi Sync Howto", i18n("Multi Sync HowTo..."), 0,this ); 1184 action = new QAction( "Multi Sync Howto", i18n("Multi Sync HowTo..."), 0,this );
@@ -1341,781 +1343,776 @@ void MainWindow::initActions()
1341 iconToolBar->setHorizontalStretchable (true ); 1343 iconToolBar->setHorizontalStretchable (true );
1342 viewToolBar->setHorizontalStretchable (true ); 1344 viewToolBar->setHorizontalStretchable (true );
1343 navigatorToolBar->setHorizontalStretchable (true ); 1345 navigatorToolBar->setHorizontalStretchable (true );
1344 iconToolBar->setVerticalStretchable (true ); 1346 iconToolBar->setVerticalStretchable (true );
1345 viewToolBar->setVerticalStretchable (true ); 1347 viewToolBar->setVerticalStretchable (true );
1346 navigatorToolBar->setVerticalStretchable (true ); 1348 navigatorToolBar->setVerticalStretchable (true );
1347 configureToolBarMenu->setItemChecked( 5, true ); 1349 configureToolBarMenu->setItemChecked( 5, true );
1348 } 1350 }
1349 if (p-> mShowIconFilter) 1351 if (p-> mShowIconFilter)
1350 configureToolBarMenu->setItemChecked( 7, true ); 1352 configureToolBarMenu->setItemChecked( 7, true );
1351 if (p-> mShowIconOnetoolbar) 1353 if (p-> mShowIconOnetoolbar)
1352 configureToolBarMenu->setItemChecked( 6, true ); 1354 configureToolBarMenu->setItemChecked( 6, true );
1353 1355
1354 1356
1355 if ( filterMenubar ) { 1357 if ( filterMenubar ) {
1356 filterMenubar->reparent(filterToolBar,0,QPoint(0,0) ); 1358 filterMenubar->reparent(filterToolBar,0,QPoint(0,0) );
1357 connect( mView, SIGNAL( filtersUpdated() ), SLOT( updateFilterToolbar() ) ); 1359 connect( mView, SIGNAL( filtersUpdated() ), SLOT( updateFilterToolbar() ) );
1358 } 1360 }
1359 connect( configureToolBarMenu, SIGNAL( activated( int ) ),this, SLOT(configureToolBar( int ) ) ); 1361 connect( configureToolBarMenu, SIGNAL( activated( int ) ),this, SLOT(configureToolBar( int ) ) );
1360 configureAgenda( p->mHourSize ); 1362 configureAgenda( p->mHourSize );
1361 connect( configureAgendaMenu, SIGNAL( activated( int ) ),this, SLOT(configureAgenda( int ) ) ); 1363 connect( configureAgendaMenu, SIGNAL( activated( int ) ),this, SLOT(configureAgenda( int ) ) );
1362} 1364}
1363 1365
1364void MainWindow::exportToPhone( int mode ) 1366void MainWindow::exportToPhone( int mode )
1365{ 1367{
1366 1368
1367 //ex2phone->insertItem(i18n("Complete calendar..."), 1 ); 1369 //ex2phone->insertItem(i18n("Complete calendar..."), 1 );
1368 //ex2phone->insertItem(i18n("Filtered calendar..."), 2 ); 1370 //ex2phone->insertItem(i18n("Filtered calendar..."), 2 );
1369 KOex2phonePrefs ex2phone; 1371 KOex2phonePrefs ex2phone;
1370 1372
1371 ex2phone.mPhoneConnection->setText( KPimGlobalPrefs::instance()->mEx2PhoneConnection ); 1373 ex2phone.mPhoneConnection->setText( KPimGlobalPrefs::instance()->mEx2PhoneConnection );
1372 ex2phone.mPhoneDevice->setText( KPimGlobalPrefs::instance()->mEx2PhoneDevice ); 1374 ex2phone.mPhoneDevice->setText( KPimGlobalPrefs::instance()->mEx2PhoneDevice );
1373 ex2phone.mPhoneModel->setText( KPimGlobalPrefs::instance()->mEx2PhoneModel ); 1375 ex2phone.mPhoneModel->setText( KPimGlobalPrefs::instance()->mEx2PhoneModel );
1374 if ( mode == 1 ) 1376 if ( mode == 1 )
1375 ex2phone.setCaption(i18n("Export complete calendar")); 1377 ex2phone.setCaption(i18n("Export complete calendar"));
1376 if ( mode == 2 ) 1378 if ( mode == 2 )
1377 ex2phone.setCaption(i18n("Export filtered calendar")); 1379 ex2phone.setCaption(i18n("Export filtered calendar"));
1378 1380
1379 if ( !ex2phone.exec() ) { 1381 if ( !ex2phone.exec() ) {
1380 return; 1382 return;
1381 } 1383 }
1382 KPimGlobalPrefs::instance()->mEx2PhoneConnection = ex2phone.mPhoneConnection->text(); 1384 KPimGlobalPrefs::instance()->mEx2PhoneConnection = ex2phone.mPhoneConnection->text();
1383 KPimGlobalPrefs::instance()->mEx2PhoneDevice = ex2phone.mPhoneDevice->text(); 1385 KPimGlobalPrefs::instance()->mEx2PhoneDevice = ex2phone.mPhoneDevice->text();
1384 KPimGlobalPrefs::instance()->mEx2PhoneModel = ex2phone.mPhoneModel->text(); 1386 KPimGlobalPrefs::instance()->mEx2PhoneModel = ex2phone.mPhoneModel->text();
1385 1387
1386 int inFuture = 0; 1388 int inFuture = 0;
1387 if ( ex2phone.mWriteBackFuture->isChecked() ) 1389 if ( ex2phone.mWriteBackFuture->isChecked() )
1388 inFuture = ex2phone.mWriteBackFutureWeeks->value(); 1390 inFuture = ex2phone.mWriteBackFutureWeeks->value();
1389 QPtrList<Incidence> delSel; 1391 QPtrList<Incidence> delSel;
1390 if ( mode == 1 ) 1392 if ( mode == 1 )
1391 delSel = mCalendar->rawIncidences(); 1393 delSel = mCalendar->rawIncidences();
1392 if ( mode == 2 ) 1394 if ( mode == 2 )
1393 delSel = mCalendar->incidences(); 1395 delSel = mCalendar->incidences();
1394 CalendarLocal* cal = new CalendarLocal(); 1396 CalendarLocal* cal = new CalendarLocal();
1395 cal->setLocalTime(); 1397 cal->setLocalTime();
1396 Incidence *incidence = delSel.first(); 1398 Incidence *incidence = delSel.first();
1397 QDateTime cur = QDateTime::currentDateTime().addDays( -7 ); 1399 QDateTime cur = QDateTime::currentDateTime().addDays( -7 );
1398 QDateTime end = cur.addDays( ( inFuture +1 ) *7 ); 1400 QDateTime end = cur.addDays( ( inFuture +1 ) *7 );
1399 while ( incidence ) { 1401 while ( incidence ) {
1400 if ( incidence->typeID() != journalID ) { 1402 if ( incidence->typeID() != journalID ) {
1401 bool add = true; 1403 bool add = true;
1402 if ( inFuture ) { 1404 if ( inFuture ) {
1403 QDateTime dt; 1405 QDateTime dt;
1404 if ( incidence->typeID() == todoID ) { 1406 if ( incidence->typeID() == todoID ) {
1405 Todo * t = (Todo*)incidence; 1407 Todo * t = (Todo*)incidence;
1406 if ( t->hasDueDate() ) 1408 if ( t->hasDueDate() )
1407 dt = t->dtDue(); 1409 dt = t->dtDue();
1408 else 1410 else
1409 dt = cur.addSecs( 62 ); 1411 dt = cur.addSecs( 62 );
1410 } 1412 }
1411 else { 1413 else {
1412 bool ok; 1414 bool ok;
1413 dt = incidence->getNextOccurence( cur, &ok ); 1415 dt = incidence->getNextOccurence( cur, &ok );
1414 if ( !ok ) 1416 if ( !ok )
1415 dt = cur.addSecs( -62 ); 1417 dt = cur.addSecs( -62 );
1416 } 1418 }
1417 if ( dt < cur || dt > end ) { 1419 if ( dt < cur || dt > end ) {
1418 add = false; 1420 add = false;
1419 } 1421 }
1420 } 1422 }
1421 if ( add ) { 1423 if ( add ) {
1422 Incidence *in = incidence->clone(); 1424 Incidence *in = incidence->clone();
1423 cal->addIncidence( in ); 1425 cal->addIncidence( in );
1424 } 1426 }
1425 } 1427 }
1426 incidence = delSel.next(); 1428 incidence = delSel.next();
1427 } 1429 }
1428 PhoneAccess::writeConfig( KPimGlobalPrefs::instance()->mEx2PhoneDevice, 1430 PhoneAccess::writeConfig( KPimGlobalPrefs::instance()->mEx2PhoneDevice,
1429 KPimGlobalPrefs::instance()->mEx2PhoneConnection, 1431 KPimGlobalPrefs::instance()->mEx2PhoneConnection,
1430 KPimGlobalPrefs::instance()->mEx2PhoneModel ); 1432 KPimGlobalPrefs::instance()->mEx2PhoneModel );
1431 1433
1432 setCaption( i18n("Writing to phone...")); 1434 setCaption( i18n("Writing to phone..."));
1433 if ( PhoneFormat::writeToPhone( cal ) ) 1435 if ( PhoneFormat::writeToPhone( cal ) )
1434 setCaption( i18n("Export to phone successful!")); 1436 setCaption( i18n("Export to phone successful!"));
1435 else 1437 else
1436 setCaption( i18n("Error exporting to phone!")); 1438 setCaption( i18n("Error exporting to phone!"));
1437 delete cal; 1439 delete cal;
1438} 1440}
1439 1441
1440 1442
1441void MainWindow::setDefaultPreferences() 1443void MainWindow::setDefaultPreferences()
1442{ 1444{
1443 KOPrefs *p = KOPrefs::instance(); 1445 KOPrefs *p = KOPrefs::instance();
1444 1446
1445 p->mCompactDialogs = true; 1447 p->mCompactDialogs = true;
1446 p->mConfirm = true; 1448 p->mConfirm = true;
1447 // p->mEnableQuickTodo = false; 1449 // p->mEnableQuickTodo = false;
1448 1450
1449} 1451}
1450 1452
1451QString MainWindow::resourcePath() 1453QString MainWindow::resourcePath()
1452{ 1454{
1453 return KGlobal::iconLoader()->iconPath(); 1455 return KGlobal::iconLoader()->iconPath();
1454} 1456}
1455 1457
1456void MainWindow::displayText( QString text ,QString cap ) 1458void MainWindow::displayText( QString text ,QString cap )
1457{ 1459{
1458 QDialog dia( this, "name", true ); ; 1460 QDialog dia( this, "name", true ); ;
1459 dia.setCaption( cap ); 1461 dia.setCaption( cap );
1460 QVBoxLayout* lay = new QVBoxLayout( &dia ); 1462 QVBoxLayout* lay = new QVBoxLayout( &dia );
1461 lay->setSpacing( 3 ); 1463 lay->setSpacing( 3 );
1462 lay->setMargin( 3 ); 1464 lay->setMargin( 3 );
1463 QTextBrowser tb ( &dia ); 1465 QTextBrowser tb ( &dia );
1464 lay->addWidget( &tb ); 1466 lay->addWidget( &tb );
1465 tb.setText( text ); 1467 tb.setText( text );
1466#ifdef DESKTOP_VERSION 1468#ifdef DESKTOP_VERSION
1467 dia.resize( 640, 480); 1469 dia.resize( 640, 480);
1468#else 1470#else
1469 dia.showMaximized(); 1471 dia.showMaximized();
1470#endif 1472#endif
1471 dia.exec(); 1473 dia.exec();
1472} 1474}
1473 1475
1474void MainWindow::features() 1476void MainWindow::features()
1475{ 1477{
1476 1478
1477 KApplication::showFile( i18n("KO/Pi Features and hints"), "kdepim/korganizer/featuresKOPI.txt" ); 1479 KApplication::showFile( i18n("KO/Pi Features and hints"), "kdepim/korganizer/featuresKOPI.txt" );
1478} 1480}
1479 1481
1480void MainWindow::usertrans() 1482void MainWindow::usertrans()
1481{ 1483{
1482 1484
1483 KApplication::showFile( i18n("KO/Pi User translation HowTo"), "kdepim/korganizer/usertranslationHOWTO.txt" ); 1485 KApplication::showFile( i18n("KO/Pi User translation HowTo"), "kdepim/korganizer/usertranslationHOWTO.txt" );
1484} 1486}
1485 1487
1486void MainWindow::storagehowto() 1488void MainWindow::storagehowto()
1487{ 1489{
1488 KApplication::showFile( "KDE-Pim/Pi Storage HowTo", "kdepim/storagehowto.txt" ); 1490 KApplication::showFile( "KDE-Pim/Pi Storage HowTo", "kdepim/storagehowto.txt" );
1489} 1491}
1490void MainWindow::timetrackinghowto() 1492void MainWindow::timetrackinghowto()
1491{ 1493{
1492 KApplication::showFile( "KO/Pi Timetracking HowTo", "kdepim/timetrackerhowto.txt" ); 1494 KApplication::showFile( "KO/Pi Timetracking HowTo", "kdepim/timetrackerhowto.txt" );
1493} 1495}
1494void MainWindow::kdesynchowto() 1496void MainWindow::kdesynchowto()
1495{ 1497{
1496 KApplication::showFile( "KDE-Pim/Pi Synchronization HowTo", "kdepim/Zaurus-KDE_syncHowTo.txt" ); 1498 KApplication::showFile( "KDE-Pim/Pi Synchronization HowTo", "kdepim/Zaurus-KDE_syncHowTo.txt" );
1497} 1499}
1498void MainWindow::multisynchowto() 1500void MainWindow::multisynchowto()
1499{ 1501{
1500 KApplication::showFile( "KDE-Pim/Pi Synchronization HowTo", "kdepim/MultiSyncHowTo.txt" ); 1502 KApplication::showFile( "KDE-Pim/Pi Synchronization HowTo", "kdepim/MultiSyncHowTo.txt" );
1501} 1503}
1502void MainWindow::synchowto() 1504void MainWindow::synchowto()
1503{ 1505{
1504 KApplication::showFile( "KDE-Pim/Pi Synchronization HowTo", "kdepim/SyncHowto.txt" ); 1506 KApplication::showFile( "KDE-Pim/Pi Synchronization HowTo", "kdepim/SyncHowto.txt" );
1505} 1507}
1506void MainWindow::faq() 1508void MainWindow::faq()
1507{ 1509{
1508 KApplication::showFile( i18n("KO/Pi FAQ"), "kdepim/korganizer/kopiFAQ.txt" ); 1510 KApplication::showFile( i18n("KO/Pi FAQ"), "kdepim/korganizer/kopiFAQ.txt" );
1509 1511
1510} 1512}
1511void MainWindow::whatsNew() 1513void MainWindow::whatsNew()
1512{ 1514{
1513 KApplication::showFile( "KDE-Pim/Pi Version Info", "kdepim/WhatsNew.txt" ); 1515 KApplication::showFile( "KDE-Pim/Pi Version Info", "kdepim/WhatsNew.txt" );
1514 1516
1515} 1517}
1516void MainWindow::licence() 1518void MainWindow::licence()
1517{ 1519{
1518 KApplication::showLicence(); 1520 KApplication::showLicence();
1519 1521
1520} 1522}
1521void MainWindow::about() 1523void MainWindow::about()
1522{ 1524{
1523 QString version; 1525 QString version;
1524#include <../version> 1526#include <../version>
1525 QMessageBox::about( this, i18n("About KOrganizer/Pi"), 1527 QMessageBox::about( this, i18n("About KOrganizer/Pi"),
1526 i18n("KOrganizer/Platform-independent\n") + 1528 i18n("KOrganizer/Platform-independent\n") +
1527 "(KO/Pi) " + version + " - " + 1529 "(KO/Pi) " + version + " - " +
1528 1530
1529#ifdef DESKTOP_VERSION 1531#ifdef DESKTOP_VERSION
1530 i18n("Desktop Edition\n") + 1532 i18n("Desktop Edition\n") +
1531#else 1533#else
1532 i18n("PDA-Edition\nfor: Zaurus 5x00/7x0/860/3000/6000\n") + 1534 i18n("PDA-Edition\nfor: Zaurus 5x00/7x0/860/3000/6000\n") +
1533#endif 1535#endif
1534 i18n("(c)2004 Lutz Rogowski (rogowski@kde.org)\nKO/Pi is based on KOrganizer\n(c)2002,2003 Cornelius Schumacher\n(schumacher@kde.org) and the KDE team.\nKOrganizer/Pi is licensed under the GPL.\nKO/Pi can be compiled for\nLinux, Zaurus-PDA and Windows\nwww.pi-sync.info --- www.korganizer.org\nSpecial thanks to Michael and Ben\nfor intensive testing!") ); 1536 i18n("(c)2004 Lutz Rogowski (rogowski@kde.org)\nKO/Pi is based on KOrganizer\n(c)2002,2003 Cornelius Schumacher\n(schumacher@kde.org) and the KDE team.\nKOrganizer/Pi is licensed under the GPL.\nKO/Pi can be compiled for\nLinux, Zaurus-PDA and Windows\nwww.pi-sync.info --- www.korganizer.org\nSpecial thanks to Michael and Ben\nfor intensive testing!") );
1535} 1537}
1536void MainWindow::keyBindings() 1538void MainWindow::keyBindings()
1537{ 1539{
1538 QString cap = i18n("KO/Pi Keys + Colors"); 1540 QString cap = i18n("KO/Pi Keys + Colors");
1539 QString text = i18n("<p><h2>KO/Pi key shortcuts:</h2></p>\n") + 1541 QString text = i18n("<p><h2>KO/Pi key shortcuts:</h2></p>\n") +
1540 i18n("<p><b>H</b>: This help dialog | <b>S</b>: Search dialog</p>\n")+ 1542 i18n("<p><b>H</b>: This help dialog | <b>S</b>: Search dialog</p>\n")+
1541 i18n("<p><b>N</b>: Switch to next view which has a toolbar icon</p>\n") + 1543 i18n("<p><b>N</b>: Switch to next view which has a toolbar icon</p>\n") +
1542 i18n("<p><b>A+(shift or ctrl)</b>: Show occurence of next alarm</p>\n") + 1544 i18n("<p><b>A+(shift or ctrl)</b>: Show occurence of next alarm</p>\n") +
1543 i18n("<p><b>I</b>: Show info for selected event/todo</p>\n") + 1545 i18n("<p><b>I</b>: Show info for selected event/todo</p>\n") +
1544 i18n("<p><b>Space</b>: Toggle fullscreen | <b>P</b>: Date picker</p>\n")+ 1546 i18n("<p><b>Space</b>: Toggle fullscreen | <b>P</b>: Date picker</p>\n")+
1545 i18n("<p><b>R</b>: Toggle Resource View |<b>F</b>: Edit filter </p>\n")+ 1547 i18n("<p><b>R</b>: Toggle Resource View |<b>F</b>: Edit filter </p>\n")+
1546 i18n("<p><b>O</b>: Filter On/Off | <b>J</b>: Journal view</p>\n")+ 1548 i18n("<p><b>O</b>: Filter On/Off | <b>J</b>: Journal view</p>\n")+
1547 i18n("<p><b>1-0</b> (+<b>ctrl</b>): Select filter 1-10 (11-20)</p>\n")+ 1549 i18n("<p><b>1-0</b> (+<b>ctrl</b>): Select filter 1-10 (11-20)</p>\n")+
1548 i18n("<p><b>X</b>: Next X days view| <b>W</b>: What's next view\n ")+ 1550 i18n("<p><b>X</b>: Next X days view| <b>W</b>: What's next view\n ")+
1549 i18n("<p><b>V</b>: Todo view | <b>L</b>: Event list view</p>\n")+ 1551 i18n("<p><b>V</b>: Todo view | <b>L</b>: Event list view</p>\n")+
1550 i18n("<p><b>Z,Y</b>: Work week view | <b>U</b>: Week view</p>\n")+ 1552 i18n("<p><b>Z,Y</b>: Work week view | <b>U</b>: Week view</p>\n")+
1551 i18n("<p><b>D</b>: One day view | <b>M</b>: Month view</p>\n")+ 1553 i18n("<p><b>D</b>: One day view | <b>M</b>: Month view</p>\n")+
1552 i18n("<p><b>K</b>: Week view in Month view syle</p>\n")+ 1554 i18n("<p><b>K</b>: Week view in Month view syle</p>\n")+
1553 i18n("<p><b>E</b>: Edit selected item |<b> E+ctrl</b>: New Event</p>\n")+ 1555 i18n("<p><b>E</b>: Edit selected item |<b> E+ctrl</b>: New Event</p>\n")+
1554 i18n("<p><b>T</b>: Goto today | <b>T+ctrl</b>: New Todo</p>\n")+ 1556 i18n("<p><b>T</b>: Goto today | <b>T+ctrl</b>: New Todo</p>\n")+
1555 i18n("<p><b>S+ctrl</b>: Add sub-todo | <b>X+ctrl</b>: Toggle datenavigator</p>\n")+ 1557 i18n("<p><b>S+ctrl</b>: Add sub-todo | <b>X+ctrl</b>: Toggle datenavigator</p>\n")+
1556 i18n("<p><b>+,-</b> : Zoom in/out agenda | <b>A</b>: Toggle allday agenda height</p>\n")+ 1558 i18n("<p><b>+,-</b> : Zoom in/out agenda | <b>A</b>: Toggle allday agenda height</p>\n")+
1557 i18n("<p><b>C</b>: Show current time in agenda view</p>\n")+ 1559 i18n("<p><b>C</b>: Show current time in agenda view</p>\n")+
1558 i18n("<p><b>B</b>: Edit description (details) of selected item</p>\n")+ 1560 i18n("<p><b>B</b>: Edit description (details) of selected item</p>\n")+
1559 i18n("<p><b>right</b>: Next week | <b>right+ctrl</b>: Next month</p>\n")+ 1561 i18n("<p><b>right</b>: Next week | <b>right+ctrl</b>: Next month</p>\n")+
1560 i18n("<p><b>left</b>: Prev. week | <b>left+ctrl</b>: Prev. month</p>\n")+ 1562 i18n("<p><b>left</b>: Prev. week | <b>left+ctrl</b>: Prev. month</p>\n")+
1561 i18n("<p><b>del,backspace</b>: Delete selected item</p>\n")+ 1563 i18n("<p><b>del,backspace</b>: Delete selected item</p>\n")+
1562 i18n("<p><h3>In agenda view:</h3></p>\n") + 1564 i18n("<p><h3>In agenda view:</h3></p>\n") +
1563 i18n("<p><b>up/down</b>: Scroll agenda view</p>\n")+ 1565 i18n("<p><b>up/down</b>: Scroll agenda view</p>\n")+
1564 i18n("<p><b>ctrl+up/down</b>: Scroll small todo view</p>\n")+ 1566 i18n("<p><b>ctrl+up/down</b>: Scroll small todo view</p>\n")+
1565 i18n("<p><h3>In todo view:</h3></p>\n") + 1567 i18n("<p><h3>In todo view:</h3></p>\n") +
1566 i18n("<p><b>shift+U</b>: <b>U</b>nparent todo (make root todo)</p>\n")+ 1568 i18n("<p><b>shift+U</b>: <b>U</b>nparent todo (make root todo)</p>\n")+
1567 i18n("<p><b>shift+S</b>: Make <b>S</b>ubtodo (reparent todo)</p>\n")+ 1569 i18n("<p><b>shift+S</b>: Make <b>S</b>ubtodo (reparent todo)</p>\n")+
1568 i18n("<p><b>shift+P</b>: Make new <b>P</b>arent for todo selected with shift+S</p>\n")+ 1570 i18n("<p><b>shift+P</b>: Make new <b>P</b>arent for todo selected with shift+S</p>\n")+
1569 i18n("<p><b>Q</b>: Toggle quick todo line edit.</p>\n")+ 1571 i18n("<p><b>Q</b>: Toggle quick todo line edit.</p>\n")+
1570 i18n("<p><b>I</b>: Show info of current item+one step down.</p>\n")+ 1572 i18n("<p><b>I</b>: Show info of current item+one step down.</p>\n")+
1571 i18n("<p><b>return</b>: Mark item as completed+one step down.</p>\n")+ 1573 i18n("<p><b>return</b>: Mark item as completed+one step down.</p>\n")+
1572 i18n("<p><b>return+shift</b>: Mark item as not completed+one step down</p>\n")+ 1574 i18n("<p><b>return+shift</b>: Mark item as not completed+one step down</p>\n")+
1573 i18n("<p><h3>In list view:</h3></p>\n") + 1575 i18n("<p><h3>In list view:</h3></p>\n") +
1574 i18n("<p><b>I</b>: Show info of current item+one step down.</p>\n")+ 1576 i18n("<p><b>I</b>: Show info of current item+one step down.</p>\n")+
1575 i18n("<p><b>return</b>: Select item+one step down</p>\n")+ 1577 i18n("<p><b>return</b>: Select item+one step down</p>\n")+
1576 i18n("<p><b>return+shift</b>: Deselect item+one step down</p>\n")+ 1578 i18n("<p><b>return+shift</b>: Deselect item+one step down</p>\n")+
1577 i18n("<p><b>up/down</b>: Next/prev item</p>\n")+ 1579 i18n("<p><b>up/down</b>: Next/prev item</p>\n")+
1578 i18n("<p><b>ctrl+up/down</b>: Goto up/down by 20% of items</p>\n")+ 1580 i18n("<p><b>ctrl+up/down</b>: Goto up/down by 20% of items</p>\n")+
1579 i18n("<p><b>shift+up/down</b>: Goto first/last item</p>\n")+ 1581 i18n("<p><b>shift+up/down</b>: Goto first/last item</p>\n")+
1580 i18n("<p><h3>In event/todo viewer:</h3></p>\n") + 1582 i18n("<p><h3>In event/todo viewer:</h3></p>\n") +
1581 i18n("<p><b>I,C</b>: Close dialog.</p>\n")+ 1583 i18n("<p><b>I,C</b>: Close dialog.</p>\n")+
1582 i18n("<p><b>A</b>: Show agenda view.</p>\n")+ 1584 i18n("<p><b>A</b>: Show agenda view.</p>\n")+
1583 i18n("<p><b>E</b>: Edit item</p>\n") + 1585 i18n("<p><b>E</b>: Edit item</p>\n") +
1584 i18n("<p><h2>KO/Pi icon colors:</h2></p>\n") + 1586 i18n("<p><h2>KO/Pi icon colors:</h2></p>\n") +
1585 i18n("<p><b>(for square icons in agenda and month view)</b></p>\n") + 1587 i18n("<p><b>(for square icons in agenda and month view)</b></p>\n") +
1586 i18n("<p><b>Cross</b>: Item cancelled.([c] in Whats'Next view)</p>\n")+ 1588 i18n("<p><b>Cross</b>: Item cancelled.([c] in Whats'Next view)</p>\n")+
1587 i18n("<p><b>Red</b>: Alarm set.([a] in Whats'Next view)</p>\n")+ 1589 i18n("<p><b>Red</b>: Alarm set.([a] in Whats'Next view)</p>\n")+
1588 i18n("<p><b>Blue</b>: Recurrent event.([r] in Whats'Next view)</p>\n")+ 1590 i18n("<p><b>Blue</b>: Recurrent event.([r] in Whats'Next view)</p>\n")+
1589 i18n("<p><b>Dark green</b>: Information(description) available.([i] in WN view)</p>\n")+ 1591 i18n("<p><b>Dark green</b>: Information(description) available.([i] in WN view)</p>\n")+
1590 i18n("<p><b>Black</b>: Event/todo with attendees. You are the organizer!</p>\n")+ 1592 i18n("<p><b>Black</b>: Event/todo with attendees. You are the organizer!</p>\n")+
1591 i18n("<p><b>Dark yellow</b>: Event/todo with attendees.</p>\n") + 1593 i18n("<p><b>Dark yellow</b>: Event/todo with attendees.</p>\n") +
1592 i18n("<p><b>White</b>: Item readonly</p>\n"); 1594 i18n("<p><b>White</b>: Item readonly</p>\n");
1593 displayText( text, cap); 1595 displayText( text, cap);
1594} 1596}
1595void MainWindow::aboutAutoSaving() 1597void MainWindow::aboutAutoSaving()
1596{ 1598{
1597 QString text = i18n("After changing something, the data is\nautomatically saved to the file\n~/kdepim/apps/korganizer/mycalendar.ics\nafter (configurable) three minutes.\nFor safety reasons there is one autosaving\nafter 10 minutes (of idle time) again. The \ndata is saved automatically when closing KO/Pi\nYou can create a backup file \nwith: File - Save Calendar Backup\n"); 1599 QString text = i18n("After changing something, the data is\nautomatically saved to the file\n~/kdepim/apps/korganizer/mycalendar.ics\nafter (configurable) three minutes.\nFor safety reasons there is one autosaving\nafter 10 minutes (of idle time) again. The \ndata is saved automatically when closing KO/Pi\nYou can create a backup file \nwith: File - Save Calendar Backup\n");
1598 1600
1599 KApplication::showText( i18n("Auto Saving in KOrganizer/Pi"), text); 1601 KApplication::showText( i18n("Auto Saving in KOrganizer/Pi"), text);
1600 1602
1601} 1603}
1602void MainWindow::aboutKnownBugs() 1604void MainWindow::aboutKnownBugs()
1603{ 1605{
1604 QMessageBox* msg; 1606 QMessageBox* msg;
1605 msg = new QMessageBox( i18n("Known Problems in KOrganizer/Pi"), 1607 msg = new QMessageBox( i18n("Known Problems in KOrganizer/Pi"),
1606 i18n("1) Importing *.vcs or *.ics files from\nother applications may not work properly,\nif there are events with properties\nKO/Pi does not support.\n")+ 1608 i18n("1) Importing *.vcs or *.ics files from\nother applications may not work properly,\nif there are events with properties\nKO/Pi does not support.\n")+
1607 i18n("2) Audio alarm daemon\nfor Zaurus is available!\nas an additional small application\n")+ 1609 i18n("2) Audio alarm daemon\nfor Zaurus is available!\nas an additional small application\n")+
1608 i18n("\nPlease report unexpected behaviour to\nlutz@pi-sync.info\n") + 1610 i18n("\nPlease report unexpected behaviour to\nlutz@pi-sync.info\n") +
1609 i18n("\nor report them in the bugtracker on\n") + 1611 i18n("\nor report them in the bugtracker on\n") +
1610 i18n("\nhttp://sourceforge.net/projects/kdepimpi\n"), 1612 i18n("\nhttp://sourceforge.net/projects/kdepimpi\n"),
1611 QMessageBox::NoIcon, 1613 QMessageBox::NoIcon,
1612 QMessageBox::Ok, 1614 QMessageBox::Ok,
1613 QMessageBox::NoButton, 1615 QMessageBox::NoButton,
1614 QMessageBox::NoButton); 1616 QMessageBox::NoButton);
1615 msg->exec(); 1617 msg->exec();
1616 delete msg; 1618 delete msg;
1617 1619
1618} 1620}
1619 1621
1620QString MainWindow::defaultFileName() 1622QString MainWindow::defaultFileName()
1621{ 1623{
1622 return locateLocal( "data", "korganizer/mycalendar.ics" ); 1624 return locateLocal( "data", "korganizer/mycalendar.ics" );
1623} 1625}
1624QString MainWindow::syncFileName() 1626QString MainWindow::syncFileName()
1625{ 1627{
1626#ifdef DESKTOP_VERSION 1628#ifdef DESKTOP_VERSION
1627 return locateLocal( "tmp", "synccalendar.ics" ); 1629 return locateLocal( "tmp", "synccalendar.ics" );
1628#else 1630#else
1629 return QString( "/tmp/synccalendar.ics" ); 1631 return QString( "/tmp/synccalendar.ics" );
1630#endif 1632#endif
1631} 1633}
1632#include "koglobals.h" 1634#include "koglobals.h"
1633#include <kcalendarsystem.h> 1635#include <kcalendarsystem.h>
1634void MainWindow::updateWeek(QDate seda) 1636void MainWindow::updateWeek(QDate seda)
1635{ 1637{
1636 int weekNum = KGlobal::locale()->weekNum ( seda ); 1638 int weekNum = KGlobal::locale()->weekNum ( seda );
1637 mWeekPixmap.fill( mWeekBgColor ); 1639 mWeekPixmap.fill( mWeekBgColor );
1638 QPainter p ( &mWeekPixmap ); 1640 QPainter p ( &mWeekPixmap );
1639 p.setFont( mWeekFont ); 1641 p.setFont( mWeekFont );
1640 p.drawText( 0,0,mWeekPixmap.width(), mWeekPixmap.height(),AlignCenter, QString::number( weekNum) ); 1642 p.drawText( 0,0,mWeekPixmap.width(), mWeekPixmap.height(),AlignCenter, QString::number( weekNum) );
1641 p.end(); 1643 p.end();
1642 QIconSet icon3 ( mWeekPixmap ); 1644 QIconSet icon3 ( mWeekPixmap );
1643 mWeekAction->setIconSet ( icon3 ); 1645 mWeekAction->setIconSet ( icon3 );
1644 1646
1645} 1647}
1646void MainWindow::updateWeekNum(const DateList &selectedDates) 1648void MainWindow::updateWeekNum(const DateList &selectedDates)
1647{ 1649{
1648 updateWeek( selectedDates.first() ); 1650 updateWeek( selectedDates.first() );
1649} 1651}
1650void MainWindow::processIncidenceSelection( Incidence *incidence ) 1652void MainWindow::processIncidenceSelection( Incidence *incidence )
1651{ 1653{
1652 1654
1653 if ( !incidence ) { 1655 if ( !incidence ) {
1654 enableIncidenceActions( false ); 1656 enableIncidenceActions( false );
1655 1657
1656 mNewSubTodoAction->setEnabled( false ); 1658 mNewSubTodoAction->setEnabled( false );
1657 setCaptionToDates(); 1659 setCaptionToDates();
1658 return; 1660 return;
1659 1661
1660 } 1662 }
1661 1663
1662 //KGlobal::locale()->formatDateTime(nextA, true); 1664 //KGlobal::locale()->formatDateTime(nextA, true);
1663 QString startString = ""; 1665 QString startString = "";
1664 if ( incidence->typeID() != todoID ) { 1666 if ( incidence->typeID() != todoID ) {
1665 if ( incidence->dtStart().date() < incidence->dtEnd().date() ) { 1667 if ( incidence->dtStart().date() < incidence->dtEnd().date() ) {
1666 if ( incidence->doesFloat() ) { 1668 if ( incidence->doesFloat() ) {
1667 startString += ": "+incidence->dtStartDateStr( true ); 1669 startString += ": "+incidence->dtStartDateStr( true );
1668 startString += " --- "+((Event*)incidence)->dtEndDateStr( true ); 1670 startString += " --- "+((Event*)incidence)->dtEndDateStr( true );
1669 1671
1670 } else { 1672 } else {
1671 startString = ": "+incidence->dtStartStr(true); 1673 startString = ": "+incidence->dtStartStr(true);
1672 startString += " --- "+((Event*)incidence)->dtEndStr(true); 1674 startString += " --- "+((Event*)incidence)->dtEndStr(true);
1673 1675
1674 } 1676 }
1675 1677
1676 } else { 1678 } else {
1677 if ( incidence->dtStart().time() != incidence->dtEnd().time() ) 1679 if ( incidence->dtStart().time() != incidence->dtEnd().time() )
1678 startString = ": "+KGlobal::locale()->formatTime(incidence->dtStart().time())+ 1680 startString = ": "+KGlobal::locale()->formatTime(incidence->dtStart().time())+
1679 "-"+KGlobal::locale()->formatTime(incidence->dtEnd().time()); 1681 "-"+KGlobal::locale()->formatTime(incidence->dtEnd().time());
1680 1682
1681 if ( incidence->isBirthday() || incidence->isAnniversary() ) { 1683 if ( incidence->isBirthday() || incidence->isAnniversary() ) {
1682 bool ok; 1684 bool ok;
1683 QDateTime noc = incidence->getNextOccurence( mView->startDate().addDays(-1), &ok ); 1685 QDateTime noc = incidence->getNextOccurence( mView->startDate().addDays(-1), &ok );
1684 if ( ok ) { 1686 if ( ok ) {
1685 int years = noc.date().year() - incidence->dtStart().date().year(); 1687 int years = noc.date().year() - incidence->dtStart().date().year();
1686 startString += i18n(" (%1 y.)"). arg( years ); 1688 startString += i18n(" (%1 y.)"). arg( years );
1687 } 1689 }
1688 } 1690 }
1689 else 1691 else
1690 startString +=" "+KGlobal::locale()->formatDate( incidence->dtStart().date(), true); 1692 startString +=" "+KGlobal::locale()->formatDate( incidence->dtStart().date(), true);
1691 } 1693 }
1692 1694
1693 } 1695 }
1694 else 1696 else
1695 startString = i18n(": (Prio ") +QString::number( (( KCal::Todo*)incidence)->priority() ) +") "+QString::number( (( KCal::Todo*)incidence)->percentComplete() ) +i18n("\% completed"); 1697 startString = i18n(": (Prio ") +QString::number( (( KCal::Todo*)incidence)->priority() ) +") "+QString::number( (( KCal::Todo*)incidence)->percentComplete() ) +i18n("\% completed");
1696 if ( !incidence->location().isEmpty() ) 1698 if ( !incidence->location().isEmpty() )
1697 startString += " (" +incidence->location()+")"; 1699 startString += " (" +incidence->location()+")";
1698 setCaption( incidence->summary()+startString); 1700 setCaption( incidence->summary()+startString);
1699 1701
1700 enableIncidenceActions( true ); 1702 enableIncidenceActions( true );
1701 1703
1702 if ( incidence->typeID() == eventID ) { 1704 if ( incidence->typeID() == eventID ) {
1703 mShowAction->setText( i18n("Show Event...") ); 1705 mShowAction->setText( i18n("Show Event...") );
1704 mEditAction->setText( i18n("Edit Event...") ); 1706 mEditAction->setText( i18n("Edit Event...") );
1705 mDeleteAction->setText( i18n("Delete Event...") ); 1707 mDeleteAction->setText( i18n("Delete Event...") );
1706 1708
1707 mNewSubTodoAction->setEnabled( false ); 1709 mNewSubTodoAction->setEnabled( false );
1708 } else if ( incidence->typeID() == todoID ) { 1710 } else if ( incidence->typeID() == todoID ) {
1709 mShowAction->setText( i18n("Show Todo...") ); 1711 mShowAction->setText( i18n("Show Todo...") );
1710 mEditAction->setText( i18n("Edit Todo...") ); 1712 mEditAction->setText( i18n("Edit Todo...") );
1711 mDeleteAction->setText( i18n("Delete Todo...") ); 1713 mDeleteAction->setText( i18n("Delete Todo...") );
1712 1714
1713 mNewSubTodoAction->setEnabled( true ); 1715 mNewSubTodoAction->setEnabled( true );
1714 } else { 1716 } else {
1715 mShowAction->setText( i18n("Show...") ); 1717 mShowAction->setText( i18n("Show...") );
1716 mShowAction->setText( i18n("Edit...") ); 1718 mShowAction->setText( i18n("Edit...") );
1717 mShowAction->setText( i18n("Delete...") ); 1719 mShowAction->setText( i18n("Delete...") );
1718 1720
1719 mNewSubTodoAction->setEnabled( false ); 1721 mNewSubTodoAction->setEnabled( false );
1720 } 1722 }
1721} 1723}
1722 1724
1723void MainWindow::enableIncidenceActions( bool enabled ) 1725void MainWindow::enableIncidenceActions( bool enabled )
1724{ 1726{
1725
1726#ifndef DESKTOP_VERSION
1727 mCurrentItemMenu->setEnabled( enabled );
1728#else
1729 mShowAction->setEnabled( enabled ); 1727 mShowAction->setEnabled( enabled );
1730 mEditAction->setEnabled( enabled ); 1728 mEditAction->setEnabled( enabled );
1731 mDeleteAction->setEnabled( enabled ); 1729 mDeleteAction->setEnabled( enabled );
1732 1730
1733 mCloneAction->setEnabled( enabled ); 1731 mCloneAction->setEnabled( enabled );
1734 mMoveAction->setEnabled( enabled ); 1732 mMoveAction->setEnabled( enabled );
1735 mBeamAction->setEnabled( enabled ); 1733 mBeamAction->setEnabled( enabled );
1736 mCancelAction->setEnabled( enabled ); 1734 mCancelAction->setEnabled( enabled );
1737#endif
1738} 1735}
1739 1736
1740void MainWindow::importOL() 1737void MainWindow::importOL()
1741{ 1738{
1742#ifdef _OL_IMPORT_ 1739#ifdef _OL_IMPORT_
1743 mView->clearAllViews(); 1740 mView->clearAllViews();
1744 KOImportOLdialog *id = new KOImportOLdialog("Import from OL - select folder!" , mView->calendar(),this ); 1741 KOImportOLdialog *id = new KOImportOLdialog("Import from OL - select folder!" , mView->calendar(),this );
1745 id->exec(); 1742 id->exec();
1746 delete id; 1743 delete id;
1747 mView->calendar()->checkAlarmForIncidence( 0, true ); 1744 mView->calendar()->checkAlarmForIncidence( 0, true );
1748 mView->updateView(); 1745 mView->updateView();
1749#endif 1746#endif
1750} 1747}
1751void MainWindow::importBday() 1748void MainWindow::importBday()
1752{ 1749{
1753 int result = QMessageBox::warning( this, i18n("KO/Pi import information!"), 1750 int result = QMessageBox::warning( this, i18n("KO/Pi import information!"),
1754 i18n("When importing birthdays twice\nduplicated events will be ignored,\nif the event has not been\nchanged in KO/Pi!\n"), 1751 i18n("When importing birthdays twice\nduplicated events will be ignored,\nif the event has not been\nchanged in KO/Pi!\n"),
1755 i18n("Import!"), i18n("Cancel"), 0, 1752 i18n("Import!"), i18n("Cancel"), 0,
1756 0, 1 ); 1753 0, 1 );
1757 if ( result == 0 ) { 1754 if ( result == 0 ) {
1758 mView->importBday(); 1755 mView->importBday();
1759 1756
1760 } 1757 }
1761 1758
1762 1759
1763} 1760}
1764void MainWindow::importQtopia() 1761void MainWindow::importQtopia()
1765{ 1762{
1766 //#ifndef DESKTOP_VERSION 1763 //#ifndef DESKTOP_VERSION
1767 QString mess = i18n("When importing a calendar twice\nduplicated events will be ignored!\nYou can create a backup file with\nFile - Save Calendar Backup\nto revert importing"); 1764 QString mess = i18n("When importing a calendar twice\nduplicated events will be ignored!\nYou can create a backup file with\nFile - Save Calendar Backup\nto revert importing");
1768#ifdef DESKTOP_VERSION 1765#ifdef DESKTOP_VERSION
1769 mess += i18n("The content of the following files will be\nimported (located in your home directory (hd)):\n(hd)/Applications/datebook/datebook.xml\n(hd)/Applications/todolist/todolist.xml\nThe following category file will be used:\n(hd)/Settings/Categories.xml"); 1766 mess += i18n("The content of the following files will be\nimported (located in your home directory (hd)):\n(hd)/Applications/datebook/datebook.xml\n(hd)/Applications/todolist/todolist.xml\nThe following category file will be used:\n(hd)/Settings/Categories.xml");
1770#endif 1767#endif
1771 int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"),mess, 1768 int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"),mess,
1772 i18n("Import!"), i18n("Cancel"), 0, 1769 i18n("Import!"), i18n("Cancel"), 0,
1773 0, 1 ); 1770 0, 1 );
1774 if ( result == 0 ) { 1771 if ( result == 0 ) {
1775#ifndef DESKTOP_VERSION 1772#ifndef DESKTOP_VERSION
1776 QString datebook = Global::applicationFileName( "datebook", "datebook.xml"); 1773 QString datebook = Global::applicationFileName( "datebook", "datebook.xml");
1777 QString todolist = Global::applicationFileName( "todolist", "todolist.xml"); 1774 QString todolist = Global::applicationFileName( "todolist", "todolist.xml");
1778 QString categories = QString( getenv( "HOME" ) ) + "/Settings/Categories.xml"; 1775 QString categories = QString( getenv( "HOME" ) ) + "/Settings/Categories.xml";
1779#else 1776#else
1780 QString datebook = QDir::homeDirPath()+ "/Applications/datebook/datebook.xml"; 1777 QString datebook = QDir::homeDirPath()+ "/Applications/datebook/datebook.xml";
1781 QString todolist = QDir::homeDirPath()+ "/Applications/todolist/todolist.xml"; 1778 QString todolist = QDir::homeDirPath()+ "/Applications/todolist/todolist.xml";
1782 QString categories = QDir::homeDirPath()+ "/Settings/Categories.xml"; 1779 QString categories = QDir::homeDirPath()+ "/Settings/Categories.xml";
1783#endif 1780#endif
1784 mView->importQtopia( categories, datebook, todolist ); 1781 mView->importQtopia( categories, datebook, todolist );
1785 } 1782 }
1786 mView->calendar()->reInitAlarmSettings(); 1783 mView->calendar()->reInitAlarmSettings();
1787#if 0 1784#if 0
1788 int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), 1785 int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"),
1789 i18n("Not supported \non desktop!\n"), 1786 i18n("Not supported \non desktop!\n"),
1790 i18n("Ok"), i18n("Cancel"), 0, 1787 i18n("Ok"), i18n("Cancel"), 0,
1791 0, 1 ); 1788 0, 1 );
1792 1789
1793#endif 1790#endif
1794} 1791}
1795 1792
1796void MainWindow::saveOnClose() 1793void MainWindow::saveOnClose()
1797{ 1794{
1798 KOPrefs *p = KOPrefs::instance(); 1795 KOPrefs *p = KOPrefs::instance();
1799 p->mToolBarHor = ( iconToolBar->orientation () == Qt:: Horizontal ); 1796 p->mToolBarHor = ( iconToolBar->orientation () == Qt:: Horizontal );
1800 p->mToolBarHorV = ( viewToolBar->orientation () == Qt:: Horizontal ); 1797 p->mToolBarHorV = ( viewToolBar->orientation () == Qt:: Horizontal );
1801 p->mToolBarHorN = ( navigatorToolBar->orientation () == Qt:: Horizontal ); 1798 p->mToolBarHorN = ( navigatorToolBar->orientation () == Qt:: Horizontal );
1802 if ( filterToolBar ) { 1799 if ( filterToolBar ) {
1803 p->mToolBarHorF = ( filterToolBar->orientation () == Qt:: Horizontal ); 1800 p->mToolBarHorF = ( filterToolBar->orientation () == Qt:: Horizontal );
1804 } 1801 }
1805#ifdef DESKTOP_VERSION 1802#ifdef DESKTOP_VERSION
1806 1803
1807 QPoint myP; 1804 QPoint myP;
1808 myP = mapFromGlobal( iconToolBar->mapToGlobal( QPoint( 0,0) ) ); 1805 myP = mapFromGlobal( iconToolBar->mapToGlobal( QPoint( 0,0) ) );
1809 if ( p->mToolBarHor ) 1806 if ( p->mToolBarHor )
1810 p->mToolBarUp = myP.y() > height()/2; 1807 p->mToolBarUp = myP.y() > height()/2;
1811 else 1808 else
1812 p->mToolBarUp = myP.x() > width()/2; 1809 p->mToolBarUp = myP.x() > width()/2;
1813 myP = mapFromGlobal( viewToolBar->mapToGlobal( QPoint( 0,0) ) ); 1810 myP = mapFromGlobal( viewToolBar->mapToGlobal( QPoint( 0,0) ) );
1814 if ( p->mToolBarHorV ) 1811 if ( p->mToolBarHorV )
1815 p->mToolBarUpV = myP.y() > height()/2; 1812 p->mToolBarUpV = myP.y() > height()/2;
1816 else 1813 else
1817 p->mToolBarUpV = myP.x() > width()/2 ; 1814 p->mToolBarUpV = myP.x() > width()/2 ;
1818 myP = mapFromGlobal( navigatorToolBar->mapToGlobal( QPoint( 0,0) ) ); 1815 myP = mapFromGlobal( navigatorToolBar->mapToGlobal( QPoint( 0,0) ) );
1819 if ( p->mToolBarHorN ) 1816 if ( p->mToolBarHorN )
1820 p->mToolBarUpN = myP.y() > height()/2; 1817 p->mToolBarUpN = myP.y() > height()/2;
1821 else 1818 else
1822 p->mToolBarUpN = myP.x() > width()/2 ; 1819 p->mToolBarUpN = myP.x() > width()/2 ;
1823 if ( filterToolBar ) { 1820 if ( filterToolBar ) {
1824 myP = mapFromGlobal( filterToolBar->mapToGlobal( QPoint( 0,0) ) ); 1821 myP = mapFromGlobal( filterToolBar->mapToGlobal( QPoint( 0,0) ) );
1825 if ( p->mToolBarHorF ) 1822 if ( p->mToolBarHorF )
1826 p->mToolBarUpF = myP.y() > height()/2; 1823 p->mToolBarUpF = myP.y() > height()/2;
1827 else 1824 else
1828 p->mToolBarUpF = myP.x() > width()/2 ; 1825 p->mToolBarUpF = myP.x() > width()/2 ;
1829 } 1826 }
1830#else 1827#else
1831 if ( p->mToolBarHor ) 1828 if ( p->mToolBarHor )
1832 p->mToolBarUp = iconToolBar->y() > height()/2; 1829 p->mToolBarUp = iconToolBar->y() > height()/2;
1833 else 1830 else
1834 p->mToolBarUp = iconToolBar->x() > width()/2; 1831 p->mToolBarUp = iconToolBar->x() > width()/2;
1835 if ( p->mToolBarHorV ) 1832 if ( p->mToolBarHorV )
1836 p->mToolBarUpV = viewToolBar->y() > height()/2; 1833 p->mToolBarUpV = viewToolBar->y() > height()/2;
1837 else 1834 else
1838 p->mToolBarUpV = viewToolBar->x() > width()/2 ; 1835 p->mToolBarUpV = viewToolBar->x() > width()/2 ;
1839 1836
1840 if ( p->mToolBarHorN ) 1837 if ( p->mToolBarHorN )
1841 p->mToolBarUpN = navigatorToolBar->y() > height()/2; 1838 p->mToolBarUpN = navigatorToolBar->y() > height()/2;
1842 else 1839 else
1843 p->mToolBarUpN = navigatorToolBar->x() > width()/2 ; 1840 p->mToolBarUpN = navigatorToolBar->x() > width()/2 ;
1844 if ( filterToolBar ) { 1841 if ( filterToolBar ) {
1845 if ( p->mToolBarHorF ) 1842 if ( p->mToolBarHorF )
1846 p->mToolBarUpF = filterToolBar->y() > height()/2; 1843 p->mToolBarUpF = filterToolBar->y() > height()/2;
1847 else 1844 else
1848 p->mToolBarUpF = filterToolBar->x() > width()/2 ; 1845 p->mToolBarUpF = filterToolBar->x() > width()/2 ;
1849 } 1846 }
1850#endif 1847#endif
1851 save(); 1848 save();
1852 mView->writeSettings(); 1849 mView->writeSettings();
1853 mView->checkSuspendAlarm(); 1850 mView->checkSuspendAlarm();
1854} 1851}
1855void MainWindow::slotModifiedChanged( bool ) 1852void MainWindow::slotModifiedChanged( bool )
1856{ 1853{
1857 if ( mBlockAtStartup ) 1854 if ( mBlockAtStartup )
1858 return; 1855 return;
1859 1856
1860 int msec; 1857 int msec;
1861 // we store the changes after 1 minute, 1858 // we store the changes after 1 minute,
1862 // and for safety reasons after 10 minutes again 1859 // and for safety reasons after 10 minutes again
1863 if ( !mSyncManager->blockSave() ) 1860 if ( !mSyncManager->blockSave() )
1864 msec = (1000 * 60*KOPrefs::instance()->mAutoSaveInterval) +1000; 1861 msec = (1000 * 60*KOPrefs::instance()->mAutoSaveInterval) +1000;
1865 else 1862 else
1866 msec = 1000 * 600; 1863 msec = 1000 * 600;
1867 mSaveTimer.start( msec, true ); // 1 minute 1864 mSaveTimer.start( msec, true ); // 1 minute
1868 qDebug("KO: Saving File in %d secs!", msec/1000); 1865 qDebug("KO: Saving File in %d secs!", msec/1000);
1869 mCalendarModifiedFlag = true; 1866 mCalendarModifiedFlag = true;
1870} 1867}
1871void MainWindow::saveStopTimer() 1868void MainWindow::saveStopTimer()
1872{ 1869{
1873 mSaveTimer.stop(); 1870 mSaveTimer.stop();
1874} 1871}
1875void MainWindow::backupAllFiles() 1872void MainWindow::backupAllFiles()
1876{ 1873{
1877 QDate reference ( 2000,1,1); 1874 QDate reference ( 2000,1,1);
1878 int daysTo = reference.daysTo ( QDate::currentDate() ); 1875 int daysTo = reference.daysTo ( QDate::currentDate() );
1879 setCaption(i18n("Creating backup ... please wait ..." )); 1876 setCaption(i18n("Creating backup ... please wait ..." ));
1880 qDebug("KO: Last backup was %d days ago ", daysTo - KOPrefs::instance()->mLastBackupDate); 1877 qDebug("KO: Last backup was %d days ago ", daysTo - KOPrefs::instance()->mLastBackupDate);
1881 // we need the file path, the backup dir and the number of bups as param 1878 // we need the file path, the backup dir and the number of bups as param
1882 QString bupDir = KPimGlobalPrefs::instance()->mBackupDatadir; 1879 QString bupDir = KPimGlobalPrefs::instance()->mBackupDatadir;
1883 if ( KPimGlobalPrefs::instance()->mBackupUseDefaultDir) 1880 if ( KPimGlobalPrefs::instance()->mBackupUseDefaultDir)
1884 bupDir = KGlobalSettings::backupDataDir(); 1881 bupDir = KGlobalSettings::backupDataDir();
1885 int retval = KApplication::createBackup( defaultFileName(), bupDir, KPimGlobalPrefs::instance()->mBackupNumbers ); 1882 int retval = KApplication::createBackup( defaultFileName(), bupDir, KPimGlobalPrefs::instance()->mBackupNumbers );
1886 if ( retval == 0 ) { 1883 if ( retval == 0 ) {
1887 setCaption(i18n("Backup cancelled" )); 1884 setCaption(i18n("Backup cancelled" ));
1888 qDebug("KO: Backup cancelled. Will try again tomorrow "); 1885 qDebug("KO: Backup cancelled. Will try again tomorrow ");
1889 // retval == 0 : backup skipped for today, try again tomorrow 1886 // retval == 0 : backup skipped for today, try again tomorrow
1890 KOPrefs::instance()->mLastBackupDate = daysTo- KPimGlobalPrefs::instance()->mBackupDayCount+1; 1887 KOPrefs::instance()->mLastBackupDate = daysTo- KPimGlobalPrefs::instance()->mBackupDayCount+1;
1891 } else if ( retval == 1 ){ 1888 } else if ( retval == 1 ){
1892 qDebug("KO: Backup created."); 1889 qDebug("KO: Backup created.");
1893 // backup ok 1890 // backup ok
1894 QPtrList<KopiCalendarFile> calendars = KOPrefs::instance()->mCalendars; 1891 QPtrList<KopiCalendarFile> calendars = KOPrefs::instance()->mCalendars;
1895 KopiCalendarFile * cal = calendars.first(); 1892 KopiCalendarFile * cal = calendars.first();
1896 cal = calendars.next(); 1893 cal = calendars.next();
1897 while ( cal ) { 1894 while ( cal ) {
1898 if ( !cal->mErrorOnLoad ) { 1895 if ( !cal->mErrorOnLoad ) {
1899 KApplication::createBackup( cal->mFileName, bupDir, KPimGlobalPrefs::instance()->mBackupNumbers ); 1896 KApplication::createBackup( cal->mFileName, bupDir, KPimGlobalPrefs::instance()->mBackupNumbers );
1900 } 1897 }
1901 cal = calendars.next(); 1898 cal = calendars.next();
1902 } 1899 }
1903 KOPrefs::instance()->mLastBackupDate = daysTo; 1900 KOPrefs::instance()->mLastBackupDate = daysTo;
1904 setCaption(i18n("Backup succesfully finished" )); 1901 setCaption(i18n("Backup succesfully finished" ));
1905 } else if ( retval == 2 ){ 1902 } else if ( retval == 2 ){
1906 setCaption(i18n("Backup globally disabled" )); 1903 setCaption(i18n("Backup globally disabled" ));
1907 qDebug("KO: Backup globally cancelled."); 1904 qDebug("KO: Backup globally cancelled.");
1908 // backup globally cancelled 1905 // backup globally cancelled
1909 KPimGlobalPrefs::instance()->mBackupEnabled = false; 1906 KPimGlobalPrefs::instance()->mBackupEnabled = false;
1910 } 1907 }
1911 // retval == 3: do nothing, try again later 1908 // retval == 3: do nothing, try again later
1912} 1909}
1913void MainWindow::save() 1910void MainWindow::save()
1914{ 1911{
1915 1912
1916 if ( mView->viewManager()->journalView() ) 1913 if ( mView->viewManager()->journalView() )
1917 mView->viewManager()->journalView()->checkModified(); 1914 mView->viewManager()->journalView()->checkModified();
1918 if ( !mCalendarModifiedFlag ) { 1915 if ( !mCalendarModifiedFlag ) {
1919 qDebug("KO: Calendar not modified. Nothing saved."); 1916 qDebug("KO: Calendar not modified. Nothing saved.");
1920 return; 1917 return;
1921 } 1918 }
1922 if ( mSyncManager->blockSave() ) 1919 if ( mSyncManager->blockSave() )
1923 return; 1920 return;
1924 mSyncManager->setBlockSave(true); 1921 mSyncManager->setBlockSave(true);
1925 if ( mView->checkAllFileVersions() ) { 1922 if ( mView->checkAllFileVersions() ) {
1926 if ( KPimGlobalPrefs::instance()->mBackupEnabled ){ 1923 if ( KPimGlobalPrefs::instance()->mBackupEnabled ){
1927 QDate reference ( 2000,1,1); 1924 QDate reference ( 2000,1,1);
1928 int daysTo = reference.daysTo ( QDate::currentDate() ); 1925 int daysTo = reference.daysTo ( QDate::currentDate() );
1929 if ( daysTo - KPimGlobalPrefs::instance()->mBackupDayCount >= KOPrefs::instance()->mLastBackupDate ) { 1926 if ( daysTo - KPimGlobalPrefs::instance()->mBackupDayCount >= KOPrefs::instance()->mLastBackupDate ) {
1930 backupAllFiles(); 1927 backupAllFiles();
1931 } 1928 }
1932 ; // KPimGlobalPrefs::instance()->mLastBackupDate 1929 ; // KPimGlobalPrefs::instance()->mLastBackupDate
1933 } 1930 }
1934 QTime neededSaveTime = QDateTime::currentDateTime().time(); 1931 QTime neededSaveTime = QDateTime::currentDateTime().time();
1935 if ( !isMinimized () ) 1932 if ( !isMinimized () )
1936 setCaption(i18n("KO/Pi:Saving Data to File ..." )); 1933 setCaption(i18n("KO/Pi:Saving Data to File ..." ));
1937 qDebug("KO: Start saving data to file!"); 1934 qDebug("KO: Start saving data to file!");
1938 mView->saveCalendars(); 1935 mView->saveCalendars();
1939 mCalendarModifiedFlag = false; 1936 mCalendarModifiedFlag = false;
1940 int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); 1937 int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() );
1941 qDebug("KO: Needed %d ms for saving.",msNeeded ); 1938 qDebug("KO: Needed %d ms for saving.",msNeeded );
1942 QString savemes; 1939 QString savemes;
1943 savemes.sprintf(i18n("KO/Pi:File Saved. Needed %d sec, %d ms"),(msNeeded/1000)%100,msNeeded%1000 ); 1940 savemes.sprintf(i18n("KO/Pi:File Saved. Needed %d sec, %d ms"),(msNeeded/1000)%100,msNeeded%1000 );
1944 if ( !isMinimized () ) 1941 if ( !isMinimized () )
1945 setCaption(savemes); 1942 setCaption(savemes);
1946 else 1943 else
1947 qDebug(savemes); 1944 qDebug(savemes);
1948 } else 1945 } else
1949 setCaption(i18n("Saving cancelled!")); 1946 setCaption(i18n("Saving cancelled!"));
1950 mSyncManager->setBlockSave( false ); 1947 mSyncManager->setBlockSave( false );
1951} 1948}
1952 1949
1953void MainWindow::keyReleaseEvent ( QKeyEvent * e) 1950void MainWindow::keyReleaseEvent ( QKeyEvent * e)
1954{ 1951{
1955 if ( !e->isAutoRepeat() ) { 1952 if ( !e->isAutoRepeat() ) {
1956 mFlagKeyPressed = false; 1953 mFlagKeyPressed = false;
1957 } 1954 }
1958} 1955}
1959void MainWindow::keyPressEvent ( QKeyEvent * e ) 1956void MainWindow::keyPressEvent ( QKeyEvent * e )
1960{ 1957{
1961 qApp->processEvents(); 1958 qApp->processEvents();
1962 if ( e->isAutoRepeat() && !mFlagKeyPressed ) { 1959 if ( e->isAutoRepeat() && !mFlagKeyPressed ) {
1963 e->ignore(); 1960 e->ignore();
1964 // qDebug(" ignore %d",e->isAutoRepeat() ); 1961 // qDebug(" ignore %d",e->isAutoRepeat() );
1965 return; 1962 return;
1966 } 1963 }
1967 if (! e->isAutoRepeat() ) 1964 if (! e->isAutoRepeat() )
1968 mFlagKeyPressed = true; 1965 mFlagKeyPressed = true;
1969 KOPrefs *p = KOPrefs::instance(); 1966 KOPrefs *p = KOPrefs::instance();
1970 bool showSelectedDates = false; 1967 bool showSelectedDates = false;
1971 int size; 1968 int size;
1972 int pro = 0; 1969 int pro = 0;
1973 //qDebug("MainWindow::keyPressEvent "); 1970 //qDebug("MainWindow::keyPressEvent ");
1974 switch ( e->key() ) { 1971 switch ( e->key() ) {
1975 case Qt::Key_Right: 1972 case Qt::Key_Right:
1976 if ( e->state() == Qt::ControlButton || e->state() == Qt::ShiftButton) 1973 if ( e->state() == Qt::ControlButton || e->state() == Qt::ShiftButton)
1977 mView->goNextMonth(); 1974 mView->goNextMonth();
1978 else 1975 else
1979 mView->goNext(); 1976 mView->goNext();
1980 showSelectedDates = true; 1977 showSelectedDates = true;
1981 break; 1978 break;
1982 case Qt::Key_Left: 1979 case Qt::Key_Left:
1983 if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton ) 1980 if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton )
1984 mView->goPreviousMonth(); 1981 mView->goPreviousMonth();
1985 else 1982 else
1986 mView->goPrevious(); 1983 mView->goPrevious();
1987 showSelectedDates = true; 1984 showSelectedDates = true;
1988 break; 1985 break;
1989 case Qt::Key_Down: 1986 case Qt::Key_Down:
1990 mView->viewManager()->agendaView()->scrollOneHourDown(); 1987 mView->viewManager()->agendaView()->scrollOneHourDown();
1991 break; 1988 break;
1992 case Qt::Key_Up: 1989 case Qt::Key_Up:
1993 mView->viewManager()->agendaView()->scrollOneHourUp(); 1990 mView->viewManager()->agendaView()->scrollOneHourUp();
1994 break; 1991 break;
1995 case Qt::Key_K: 1992 case Qt::Key_K:
1996 mView->viewManager()->showMonthViewWeek(); 1993 mView->viewManager()->showMonthViewWeek();
1997 break; 1994 break;
1998 case Qt::Key_I: 1995 case Qt::Key_I:
1999 mView->showIncidence(); 1996 mView->showIncidence();
2000 break; 1997 break;
2001 case Qt::Key_Delete: 1998 case Qt::Key_Delete:
2002 case Qt::Key_Backspace: 1999 case Qt::Key_Backspace:
2003 mView->deleteIncidence(); 2000 mView->deleteIncidence();
2004 break; 2001 break;
2005 case Qt::Key_D: 2002 case Qt::Key_D:
2006 mView->viewManager()->showDayView(); 2003 mView->viewManager()->showDayView();
2007 showSelectedDates = true; 2004 showSelectedDates = true;
2008 break; 2005 break;
2009 case Qt::Key_O: 2006 case Qt::Key_O:
2010 mView->toggleFilerEnabled( ); 2007 mView->toggleFilerEnabled( );
2011 break; 2008 break;
2012 case Qt::Key_0: 2009 case Qt::Key_0:
2013 case Qt::Key_1: 2010 case Qt::Key_1:
2014 case Qt::Key_2: 2011 case Qt::Key_2:
2015 case Qt::Key_3: 2012 case Qt::Key_3:
2016 case Qt::Key_4: 2013 case Qt::Key_4:
2017 case Qt::Key_5: 2014 case Qt::Key_5:
2018 case Qt::Key_6: 2015 case Qt::Key_6:
2019 case Qt::Key_7: 2016 case Qt::Key_7:
2020 case Qt::Key_8: 2017 case Qt::Key_8:
2021 case Qt::Key_9: 2018 case Qt::Key_9:
2022 pro = e->key()-48; 2019 pro = e->key()-48;
2023 if ( pro == 0 ) 2020 if ( pro == 0 )
2024 pro = 10; 2021 pro = 10;
2025 if ( e->state() == Qt::ControlButton) 2022 if ( e->state() == Qt::ControlButton)
2026 pro += 10; 2023 pro += 10;
2027 break; 2024 break;
2028 case Qt::Key_M: 2025 case Qt::Key_M:
2029 mView->viewManager()->showMonthView(); 2026 mView->viewManager()->showMonthView();
2030 showSelectedDates = true; 2027 showSelectedDates = true;
2031 break; 2028 break;
2032 case Qt::Key_Insert: 2029 case Qt::Key_Insert:
2033 mView->newEvent(); 2030 mView->newEvent();
2034 break; 2031 break;
2035 case Qt::Key_S : 2032 case Qt::Key_S :
2036 if ( e->state() == Qt::ControlButton || e->state() == Qt::ShiftButton) 2033 if ( e->state() == Qt::ControlButton || e->state() == Qt::ShiftButton)
2037 mView->newSubTodo(); 2034 mView->newSubTodo();
2038 else 2035 else
2039 mView->dialogManager()->showSearchDialog(); 2036 mView->dialogManager()->showSearchDialog();
2040 break; 2037 break;
2041 case Qt::Key_Y : 2038 case Qt::Key_Y :
2042 case Qt::Key_Z : 2039 case Qt::Key_Z :
2043 mView->viewManager()->showWorkWeekView(); 2040 mView->viewManager()->showWorkWeekView();
2044 showSelectedDates = true; 2041 showSelectedDates = true;
2045 break; 2042 break;
2046 case Qt::Key_U : 2043 case Qt::Key_U :
2047 mView->viewManager()->showWeekView(); 2044 mView->viewManager()->showWeekView();
2048 showSelectedDates = true; 2045 showSelectedDates = true;
2049 break; 2046 break;
2050 case Qt::Key_H : 2047 case Qt::Key_H :
2051 keyBindings(); 2048 keyBindings();
2052 break; 2049 break;
2053 case Qt::Key_W: 2050 case Qt::Key_W:
2054 mView->viewManager()->showWhatsNextView(); 2051 mView->viewManager()->showWhatsNextView();
2055 break; 2052 break;
2056 case Qt::Key_L: 2053 case Qt::Key_L:
2057 mView->viewManager()->showListView(); 2054 mView->viewManager()->showListView();
2058 break; 2055 break;
2059 case Qt::Key_N: 2056 case Qt::Key_N:
2060 mView->viewManager()->showNextView(); 2057 mView->viewManager()->showNextView();
2061 break; 2058 break;
2062 case Qt::Key_V: 2059 case Qt::Key_V:
2063 mView->viewManager()->showTodoView(); 2060 mView->viewManager()->showTodoView();
2064 break; 2061 break;
2065 case Qt::Key_C: 2062 case Qt::Key_C:
2066 mView->viewManager()->agendaView()->setStartHour( QTime::currentTime ().hour() ); 2063 mView->viewManager()->agendaView()->setStartHour( QTime::currentTime ().hour() );
2067 break; 2064 break;
2068 case Qt::Key_P: 2065 case Qt::Key_P:
2069 mView->showDatePicker( ); 2066 mView->showDatePicker( );
2070 break; 2067 break;
2071 case Qt::Key_F: 2068 case Qt::Key_F:
2072 mView->editFilters(); 2069 mView->editFilters();
2073 break; 2070 break;
2074 case Qt::Key_R: 2071 case Qt::Key_R:
2075 mView->toggleFilter(); 2072 mView->toggleFilter();
2076 break; 2073 break;
2077 case Qt::Key_X: 2074 case Qt::Key_X:
2078 if ( e->state() == Qt::ControlButton ) 2075 if ( e->state() == Qt::ControlButton )
2079 mView->toggleDateNavigatorWidget(); 2076 mView->toggleDateNavigatorWidget();
2080 else { 2077 else {
2081 mView->viewManager()->showNextXView(); 2078 mView->viewManager()->showNextXView();
2082 showSelectedDates = true; 2079 showSelectedDates = true;
2083 } 2080 }
2084 break; 2081 break;
2085 case Qt::Key_Space: 2082 case Qt::Key_Space:
2086 mView->toggleExpand(); 2083 mView->toggleExpand();
2087 break; 2084 break;
2088 case Qt::Key_A: 2085 case Qt::Key_A:
2089 if ( e->state() == Qt::ControlButton || e->state() == Qt::ShiftButton ) 2086 if ( e->state() == Qt::ControlButton || e->state() == Qt::ShiftButton )
2090 mView->showNextAlarms(); 2087 mView->showNextAlarms();
2091 else 2088 else
2092 mView->toggleAllDaySize(); 2089 mView->toggleAllDaySize();
2093 break; 2090 break;
2094 case Qt::Key_T: 2091 case Qt::Key_T:
2095 if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton ) 2092 if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton )
2096 mView->newTodo(); 2093 mView->newTodo();
2097 else { 2094 else {
2098 mView->goToday(); 2095 mView->goToday();
2099 showSelectedDates = true; 2096 showSelectedDates = true;
2100 } 2097 }
2101 break; 2098 break;
2102 case Qt::Key_J: 2099 case Qt::Key_J:
2103 mView->viewManager()->showJournalView(); 2100 mView->viewManager()->showJournalView();
2104 break; 2101 break;
2105 case Qt::Key_B: 2102 case Qt::Key_B:
2106 mView->editIncidenceDescription();; 2103 mView->editIncidenceDescription();;
2107 break; 2104 break;
2108 // case Qt::Key_Return: 2105 // case Qt::Key_Return:
2109 case Qt::Key_E: 2106 case Qt::Key_E:
2110 if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton ) 2107 if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton )
2111 mView->newEvent(); 2108 mView->newEvent();
2112 else 2109 else
2113 mView->editIncidence(); 2110 mView->editIncidence();
2114 break; 2111 break;
2115 case Qt::Key_Plus: 2112 case Qt::Key_Plus:
2116 size = p->mHourSize +2; 2113 size = p->mHourSize +2;
2117 if ( size <= 22 ) 2114 if ( size <= 22 )
2118 configureAgenda( size ); 2115 configureAgenda( size );
2119 break; 2116 break;
2120 case Qt::Key_Minus: 2117 case Qt::Key_Minus:
2121 size = p->mHourSize - 2; 2118 size = p->mHourSize - 2;