-rw-r--r-- | bin/kdepim/korganizer/germantranslation.txt | 15 | ||||
-rw-r--r-- | desktop/rpm/kdepim_rpm | 2 | ||||
-rw-r--r-- | korganizer/calendarview.cpp | 11 | ||||
-rw-r--r-- | korganizer/calendarview.h | 1 | ||||
-rw-r--r-- | korganizer/kolistview.cpp | 3 | ||||
-rw-r--r-- | korganizer/kotodoview.cpp | 4 | ||||
-rw-r--r-- | korganizer/mainwindow.cpp | 171 | ||||
-rw-r--r-- | korganizer/mainwindow.h | 1 | ||||
-rw-r--r-- | version | 2 |
9 files changed, 128 insertions, 82 deletions
diff --git a/bin/kdepim/korganizer/germantranslation.txt b/bin/kdepim/korganizer/germantranslation.txt index 3daf215..2bfdb2f 100644 --- a/bin/kdepim/korganizer/germantranslation.txt +++ b/bin/kdepim/korganizer/germantranslation.txt | |||
@@ -184,493 +184,492 @@ | |||
184 | { "Friday","Freitag" }, | 184 | { "Friday","Freitag" }, |
185 | { "Fri","Fr" }, | 185 | { "Fri","Fr" }, |
186 | { "From:","Vom:" }, | 186 | { "From:","Vom:" }, |
187 | { "Full &name:","Vor- und &Nachname:" }, | 187 | { "Full &name:","Vor- und &Nachname:" }, |
188 | { "General","Allgemein" }, | 188 | { "General","Allgemein" }, |
189 | { "German","Deutsch" }, | 189 | { "German","Deutsch" }, |
190 | { "Gifts","Geschenke" }, | 190 | { "Gifts","Geschenke" }, |
191 | { "Go to Today","Heute anzeigen" }, | 191 | { "Go to Today","Heute anzeigen" }, |
192 | { "Help","Hilfe" }, | 192 | { "Help","Hilfe" }, |
193 | { "Hide Dates","Daten ausblenden" }, | 193 | { "Hide Dates","Daten ausblenden" }, |
194 | { "Highlight color:","Markierungen:" }, | 194 | { "Highlight color:","Markierungen:" }, |
195 | { "Holiday color:","Freie Tage:" }, | 195 | { "Holiday color:","Freie Tage:" }, |
196 | { "hour(s)","Stunde(n)" }, | 196 | { "hour(s)","Stunde(n)" }, |
197 | { "In %1 days: ","In %1 Tagen: " }, | 197 | { "In %1 days: ","In %1 Tagen: " }, |
198 | { "Incomplete Todo:","Unerledigte Aufgaben:" }, | 198 | { "Incomplete Todo:","Unerledigte Aufgaben:" }, |
199 | { "Information","Information" }, | 199 | { "Information","Information" }, |
200 | { "Invalid search expression,\ncannot perform ","Kann Suche nicht ausführen" }, | 200 | { "Invalid search expression,\ncannot perform ","Kann Suche nicht ausführen" }, |
201 | { "Jan","Jan" }, | 201 | { "Jan","Jan" }, |
202 | { "January","Januar" }, | 202 | { "January","Januar" }, |
203 | { "JournalView:","Journal Ansicht:" }, | 203 | { "JournalView:","Journal Ansicht:" }, |
204 | { "Journals","Journale" }, | 204 | { "Journals","Journale" }, |
205 | { "Jul","Jul" }, | 205 | { "Jul","Jul" }, |
206 | { "July","Juli" }, | 206 | { "July","Juli" }, |
207 | { "Jump to date","Springe zum Datum" }, | 207 | { "Jump to date","Springe zum Datum" }, |
208 | { "June","Juni" }, | 208 | { "June","Juni" }, |
209 | { "Jun","Jun" }, | 209 | { "Jun","Jun" }, |
210 | { "Key Bindings...","Tastenzuordnung..." }, | 210 | { "Key Bindings...","Tastenzuordnung..." }, |
211 | { "Kids","Kinder" }, | 211 | { "Kids","Kinder" }, |
212 | { "Known Problems...","Bekannte Probleme..." }, | 212 | { "Known Problems...","Bekannte Probleme..." }, |
213 | { "KO/Pi Find ","KO/Pi Suchdialog " }, | 213 | { "KO/Pi Find ","KO/Pi Suchdialog " }, |
214 | { "KO/Pi Find: ","KO/Pi Suchen: " }, | 214 | { "KO/Pi Find: ","KO/Pi Suchen: " }, |
215 | { "KO/Pi is starting ... "," KO/Pi startet ... \n... Zeit für eine Kaffeepause ..." }, | 215 | { "KO/Pi is starting ... "," KO/Pi startet ... \n... Zeit für eine Kaffeepause ..." }, |
216 | { "Language:(needs restart)","Sprache (Neustart!)" }, | 216 | { "Language:(needs restart)","Sprache (Neustart!)" }, |
217 | { "Language:","Sprache" }, | 217 | { "Language:","Sprache" }, |
218 | { "Large","Etwas mehr" }, | 218 | { "Large","Etwas mehr" }, |
219 | { "List View:","Listenansicht:" }, | 219 | { "List View:","Listenansicht:" }, |
220 | { "List View","Listenansicht" }, | 220 | { "List View","Listenansicht" }, |
221 | { "Load/Save","Laden/Speichern" }, | 221 | { "Load/Save","Laden/Speichern" }, |
222 | { "Load Template","Lade Vorlage" }, | 222 | { "Load Template","Lade Vorlage" }, |
223 | { "Locale","Localisation" }, | 223 | { "Locale","Localisation" }, |
224 | { "Local temp file:","Lokale temp. Datei:" }, | 224 | { "Local temp file:","Lokale temp. Datei:" }, |
225 | { "Location: ","Ort: " }, | 225 | { "Location: ","Ort: " }, |
226 | { "Location:","Ort:" }, | 226 | { "Location:","Ort:" }, |
227 | { "Mail client","Mail Programm" }, | 227 | { "Mail client","Mail Programm" }, |
228 | { "Mail Client","Mail Programm" }, | 228 | { "Mail Client","Mail Programm" }, |
229 | { "March","März" }, | 229 | { "March","März" }, |
230 | { "Mar","Mär" }, | 230 | { "Mar","Mär" }, |
231 | { "May","Mai" }, | 231 | { "May","Mai" }, |
232 | { "M. Bains line:","M. Bains Linie:" }, | 232 | { "M. Bains line:","M. Bains Linie:" }, |
233 | { "Medium","Medium" }, | 233 | { "Medium","Medium" }, |
234 | { "Method","Methode" }, | 234 | { "Method","Methode" }, |
235 | { "minute(s)","Minute(n)" }, | 235 | { "minute(s)","Minute(n)" }, |
236 | { "Monday","Montag" }, | 236 | { "Monday","Montag" }, |
237 | { "Mon","Mo" }, | 237 | { "Mon","Mo" }, |
238 | { "Monthly","Monatlich" }, | 238 | { "Monthly","Monatlich" }, |
239 | { "Month not long enough","Monat ist nicht lang genug" }, | 239 | { "Month not long enough","Monat ist nicht lang genug" }, |
240 | { "month(s)","Monat(e)" }, | 240 | { "month(s)","Monat(e)" }, |
241 | { "Month view:","Monatsansicht:" }, | 241 | { "Month view:","Monatsansicht:" }, |
242 | { "Month view uses category colors","Monatsansicht zeigt Kategorie Farben" }, | 242 | { "Month view uses category colors","Monatsansicht zeigt Kategorie Farben" }, |
243 | { "Todo view uses category colors","To-Do Ansicht zeigt Kategorie Farben" }, | 243 | { "Todo view uses category colors","To-Do Ansicht zeigt Kategorie Farben" }, |
244 | { "Move &Down","Nach unten verschieben" }, | 244 | { "Move &Down","Nach unten verschieben" }, |
245 | { "Move &Up","Nach oben verschieben" }, | 245 | { "Move &Up","Nach oben verschieben" }, |
246 | { "Name:","Name:" }, | 246 | { "Name:","Name:" }, |
247 | { "Name","Name" }, | 247 | { "Name","Name" }, |
248 | { "\nAre you sure you want\nto delete this event?","\nSind Sie sicher, dass Sie\nden Termin löschen möchten?" }, | 248 | { "\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" }, | 249 | { "%n Days","%n Tage" }, |
250 | { "Never","Nie" }, | 250 | { "Never","Nie" }, |
251 | { "New event...","Neuer Termin..." }, | 251 | { "New event...","Neuer Termin..." }, |
252 | { "New event","Neuer Termin" }, | 252 | { "New event","Neuer Termin" }, |
253 | { "New Event...","Neuer Termin..." }, | 253 | { "New Event...","Neuer Termin..." }, |
254 | { "New Events/Todos should","Neue Termine/Todos sollten" }, | 254 | { "New Events/Todos should","Neue Termine/Todos sollten" }, |
255 | { "&New","&Neu" }, | 255 | { "&New","&Neu" }, |
256 | { "New","Neu", }, | 256 | { "New","Neu", }, |
257 | { "New Sub-Todo...","Neues Sub-Todo..." }, | 257 | { "New Sub-Todo...","Neues Sub-Todo..." }, |
258 | { "New Todo...","Neues Todo..." }, | 258 | { "New Todo...","Neues Todo..." }, |
259 | { "Next Alarm: ","Nächster Alarm: ", }, | 259 | { "Next Alarm: ","Nächster Alarm: ", }, |
260 | { "&Next Day","&Nächster Tag", }, | 260 | { "&Next Day","&Nächster Tag", }, |
261 | { "Next days view uses full window","Nächste-X-Tage nutzt Vollbild" }, | 261 | { "Next days view uses full window","Nächste-X-Tage nutzt Vollbild" }, |
262 | { "Next month","Nächster Monat" }, | 262 | { "Next month","Nächster Monat" }, |
263 | { "&Next Week","&Nächste Woche" }, | 263 | { "&Next Week","&Nächste Woche" }, |
264 | { "Next year","Nächstes Jahr" }, | 264 | { "Next year","Nächstes Jahr" }, |
265 | { "Next Year","Nächstes Jahr" }, | 265 | { "Next Year","Nächstes Jahr" }, |
266 | { "%n h","%n Std" }, | 266 | { "%n h","%n Std" }, |
267 | { "No ending date","Kein End-Datum", }, | 267 | { "No ending date","Kein End-Datum", }, |
268 | { "No event, nothing to do.","Kein Termin, nichts zu tun.", }, | 268 | { "No event, nothing to do.","Kein Termin, nichts zu tun.", }, |
269 | { "No event selected.","Kein Termin selektiert" }, | 269 | { "No event selected.","Kein Termin selektiert" }, |
270 | { "No","Nein" }, | 270 | { "No","Nein" }, |
271 | { "No program set","Kein Programm ausgewählt", }, | 271 | { "No program set","Kein Programm ausgewählt", }, |
272 | { "Normal","Normal" }, | 272 | { "Normal","Normal" }, |
273 | { "[No selection]","Keine Selektion", }, | 273 | { "[No selection]","Keine Selektion", }, |
274 | { "No sound set","Kein Sound ausgewählt", }, | 274 | { "No sound set","Kein Sound ausgewählt", }, |
275 | { "no time ","keine Zeit ", }, | 275 | { "no time ","keine Zeit ", }, |
276 | { "no time","keine Zeit", }, | 276 | { "no time","keine Zeit", }, |
277 | { "No Time","Keine Zeit" }, | 277 | { "No Time","Keine Zeit" }, |
278 | { "November","November" }, | 278 | { "November","November" }, |
279 | { "Nov","Nov", }, | 279 | { "Nov","Nov", }, |
280 | { "\nThis event recurs\nover multiple dates.\n","\nDieser Termin wiederholt sich an mehreren Tagen.\n" }, | 280 | { "\nThis event recurs\nover multiple dates.\n","\nDieser Termin wiederholt sich an mehreren Tagen.\n" }, |
281 | { "occurrence(s)","Vorkommen" }, | 281 | { "occurrence(s)","Vorkommen" }, |
282 | { "October","Oktober" }, | 282 | { "October","Oktober" }, |
283 | { "Oct","Okt", }, | 283 | { "Oct","Okt", }, |
284 | { "O-due!","Ü-fällig! " }, | 284 | { "O-due!","Ü-fällig! " }, |
285 | { "&OK","&OK" }, | 285 | { "&OK","&OK" }, |
286 | { "Ok+Show!","Ok+Anzeigen" }, | 286 | { "Ok+Show!","Ok+Anzeigen" }, |
287 | { "Organizer: %1","Organisator %1" }, | 287 | { "Organizer: %1","Organisator %1" }, |
288 | { "Organizer","Organisator" }, | 288 | { "Organizer","Organisator" }, |
289 | { "Owner: ","Besitzer: " }, | 289 | { "Owner: ","Besitzer: " }, |
290 | { "Owner:","Besitzer:" }, | 290 | { "Owner:","Besitzer:" }, |
291 | { "<p><b>Priority:</b> %2</p>","<p><b>Priorität:</b> %2</p>" }, | 291 | { "<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" }, | 292 | { "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."}, | 293 | { "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'." }, | 294 | { "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." }, | 295 | { "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'." }, | 296 | { "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."}, | 297 | { "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'." }, | 298 | { "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)" }, | 299 | { "Preferences - some settings need a restart (nr)","Einstellungen - teilweise Neustart erforderlich (bn)" }, |
300 | { "&Previous Day","Vorheriger Tag" }, | 300 | { "&Previous Day","Vorheriger Tag" }, |
301 | { "Previous month","Vorheriger Monat" }, | 301 | { "Previous month","Vorheriger Monat" }, |
302 | { "Previous Month","Vorheriger Monat" }, | 302 | { "Previous Month","Vorheriger Monat" }, |
303 | { "&Previous Week","Vorherige Woche" }, | 303 | { "&Previous Week","Vorherige Woche" }, |
304 | { "Previous year","Vorheriges Jahr" }, | 304 | { "Previous year","Vorheriges Jahr" }, |
305 | { "Previous Year","Vorheriges Jahr" }, | 305 | { "Previous Year","Vorheriges Jahr" }, |
306 | { "Printing","Drucken" }, | 306 | { "Printing","Drucken" }, |
307 | { "Priority:","Priorität:" }, | 307 | { "Priority:","Priorität:" }, |
308 | { "Private","Privat" }, | 308 | { "Private","Privat" }, |
309 | { "Proceed","Weiter" }, | 309 | { "Proceed","Weiter" }, |
310 | { "Public","Öffentlich" }, | 310 | { "Public","Öffentlich" }, |
311 | { "Purge","Entferne" }, | 311 | { "Purge","Entferne" }, |
312 | { "Purge Completed","Entferne erledigte Todos" }, | 312 | { "Purge Completed...","Entferne erledigte Todos..." }, |
313 | { "Purge Todos","Todos bereinigen" }, | 313 | { "Purge Todos","Todos bereinigen" }, |
314 | { "read-only","schreibgeschützt" }, | 314 | { "read-only","schreibgeschützt" }, |
315 | { "Recur every","Wiederh. alle" }, | 315 | { "Recur every","Wiederh. alle" }, |
316 | { "Recur in the month of","Wiederh. im Monat" }, | 316 | { "Recur in the month of","Wiederh. im Monat" }, |
317 | { "Recur on the","Wiederh. am" }, | 317 | { "Recur on the","Wiederh. am" }, |
318 | { "Recur on this day","Wiederh. am diesen Tag" }, | 318 | { "Recur on this day","Wiederh. am diesen Tag" }, |
319 | { "Recurrence Range...","Wiederholungs Zeitraum..." }, | 319 | { "Recurrence Range...","Wiederholungs Zeitraum..." }, |
320 | { "Recurrence Range","Wiederholungs Zeitraum" }, | 320 | { "Recurrence Range","Wiederholungs Zeitraum" }, |
321 | { "Recurrence Rule","Wiederholungs Regel" }, | 321 | { "Recurrence Rule","Wiederholungs Regel" }, |
322 | { "Recurrence","Wiederholung" }, | 322 | { "Recurrence","Wiederholung" }, |
323 | { "Recurs","Wiederholung" }, | 323 | { "Recurs","Wiederholung" }, |
324 | {"&Reject","Abweisen"}, | 324 | {"&Reject","Abweisen"}, |
325 | { "Reminder:","Alarm:" }, | 325 | { "Reminder:","Alarm:" }, |
326 | { "Rem.:","Alarm:" }, | 326 | { "Rem.:","Alarm:" }, |
327 | { "Rem.","Alarm:" }, | 327 | { "Rem.","Alarm:" }, |
328 | { "Remote file:","Remote Datei:"}, | 328 | { "Remote file:","Remote Datei:"}, |
329 | { "Remote IP:","Remote (ferne) IP:" }, | 329 | { "Remote IP:","Remote (ferne) IP:" }, |
330 | { "Remote syncing (via ssh/scp) network settings ","Remote Sync (via ssh/scp) Netzwerk Einstellungen " }, | 330 | { "Remote syncing (via ssh/scp) network settings ","Remote Sync (via ssh/scp) Netzwerk Einstellungen " }, |
331 | { "Remote user:","Remote Benutzer"}, | 331 | { "Remote user:","Remote Benutzer"}, |
332 | { "&Remove","Entfe&rnen" }, | 332 | { "&Remove","Entfe&rnen" }, |
333 | { "Remove","Entfernen" }, | 333 | { "Remove","Entfernen" }, |
334 | { "Request response","Bemerkung anfordern" }, | 334 | { "Request response","Bemerkung anfordern" }, |
335 | { "Role:","Rolle:" }, | 335 | { "Role:","Rolle:" }, |
336 | { "Role","Rolle" }, | 336 | { "Role","Rolle" }, |
337 | { "Sat","Sa" }, | 337 | { "Sat","Sa" }, |
338 | { "Saturday","Samstag" }, | 338 | { "Saturday","Samstag" }, |
339 | { "Search for:","Suche nach:" }, | 339 | { "Search for:","Suche nach:" }, |
340 | { "Search In","Suche in" }, | 340 | { "Search In","Suche in" }, |
341 | { "Search...","Suche..." }, | 341 | { "Search...","Suche..." }, |
342 | { "Search","Suche" }, | 342 | { "Search","Suche" }, |
343 | { "Select Addresses","Wähle Adressen" }, | 343 | { "Select Addresses","Wähle Adressen" }, |
344 | { "Select all","Selektiere Alle" }, | 344 | { "Select all","Selektiere Alle" }, |
345 | { "Select a month","Wähle Monat" }, | 345 | { "Select a month","Wähle Monat" }, |
346 | { "Select a week","Wähle Woche" }, | 346 | { "Select a week","Wähle Woche" }, |
347 | { "Select a year","Wähle Jahr" }, | 347 | { "Select a year","Wähle Jahr" }, |
348 | { "Send directly","Sende direkt" }, | 348 | { "Send directly","Sende direkt" }, |
349 | { "&Send Messages","&Sende Nachrichten", }, | 349 | { "&Send Messages","&Sende Nachrichten", }, |
350 | { "Sep","Sep" }, | 350 | { "Sep","Sep" }, |
351 | { "September","September" }, | 351 | { "September","September" }, |
352 | { "Shopping","Einkaufen" }, | 352 | { "Shopping","Einkaufen" }, |
353 | { "Show Dates","Zeige Daten" }, | 353 | { "Show Dates","Zeige Daten" }, |
354 | { "Show events that recur daily in date nav.","Zeige tägl.wiederh.Term.in Datums Nav." }, | 354 | { "Show events that recur daily in date nav.","Zeige tägl.wiederh.Term.in Datums Nav." }, |
355 | { "Show Event...","Zeige Termin..." }, | 355 | { "Show Event...","Zeige Termin..." }, |
356 | { "Show ev. that recur weekly in date nav.","Zeige wöch.wiederh.Term.in Datums Nav." }, | 356 | { "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" }, | 357 | { "Show Marcus Bains line","Zeige Marcus Bains Linie" }, |
358 | { "Show summary after syncing","Zeige Zusammenfassung nach Sync." }, | 358 | { "Show summary after syncing","Zeige Zusammenfassung nach Sync." }, |
359 | { "Show time as:","Zeige Zeit als" }, | 359 | { "Show time as:","Zeige Zeit als" }, |
360 | { "Show Todo...","Zeige To-Do" }, | 360 | { "Show Todo...","Zeige To-Do" }, |
361 | { "Vertical screen layout(Needs restart)","Vertikaler Bildschirm-Layout (Neustart!)" }, | 361 | { "Vertical screen layout(Needs restart)","Vertikaler Bildschirm-Layout (Neustart!)" }, |
362 | { "&Show","Zeige" }, | 362 | { "&Show","Zeige" }, |
363 | { "Show...","Zeige..." }, | 363 | { "Show...","Zeige..." }, |
364 | { "Show","Zeige" }, | 364 | { "Show","Zeige" }, |
365 | { "Small","Klein" }, | 365 | { "Small","Klein" }, |
366 | { "Sorry","Entschuldigung" }, | 366 | { "Sorry","Entschuldigung" }, |
367 | {"Sorry, the copy command failed!\nCommand was:\n","Der Kopierbefehl schlug fehl!\nBefehl war:\n"}, | 367 | {"Sorry, the copy command failed!\nCommand was:\n","Der Kopierbefehl schlug fehl!\nBefehl war:\n"}, |
368 | { "Start:","Start:" }, | 368 | { "Start:","Start:" }, |
369 | { "Start Date","Start Datum" }, | 369 | { "Start Date","Start Datum" }, |
370 | { "Start date: %1","Start Datum: %1" }, | 370 | { "Start date: %1","Start Datum: %1" }, |
371 | { "Start Time","Start Zeit" }, | 371 | { "Start Time","Start Zeit" }, |
372 | { "Status:","Status:" }, | 372 | { "Status:","Status:" }, |
373 | { "Status","Status:" }, | 373 | { "Status","Status:" }, |
374 | { "Summaries","Titel" }, | 374 | { "Summaries","Titel" }, |
375 | { "Summary:","Titel:" }, | 375 | { "Summary:","Titel:" }, |
376 | { "Summary","Titel" }, | 376 | { "Summary","Titel" }, |
377 | { "Sunday","Sonntag" }, | 377 | { "Sunday","Sonntag" }, |
378 | { "Sun","So" }, | 378 | { "Sun","So" }, |
379 | { "Sync preferences:","Sync Einstellungen" }, | 379 | { "Sync preferences:","Sync Einstellungen" }, |
380 | { "Sync Prefs","Sync Einstellungen" }, | 380 | { "Sync Prefs","Sync Einstellungen" }, |
381 | { "Syncronize","Daten abgleich" }, | 381 | { "Syncronize","Daten abgleich" }, |
382 | { "Take local entry on conflict","Nimm lokalen Eintrag beim Konflikt" }, | 382 | { "Take local entry on conflict","Nimm lokalen Eintrag beim Konflikt" }, |
383 | { "Take newest entry on conflict","Nimm neuesten Eintrag beim Konflikt" }, | 383 | { "Take newest entry on conflict","Nimm neuesten Eintrag beim Konflikt" }, |
384 | { "Take remote entry on conflict","Nimm fernen Eintrag beim Konflikt" }, | 384 | { "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" }, | 385 | { "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" }, | 386 | { "Template does not contain a valid Event.","Template '%1' enthält keinen gültigen Termin" }, |
387 | { "Template...","Vorlage..." }, | 387 | { "Template...","Vorlage..." }, |
388 | { "This day","Dieser Tag" }, | 388 | { "This day","Dieser Tag" }, |
389 | { "This is an experimental feature. ","Dieses Feature ist experimentel" }, | 389 | { "This is an experimental feature. ","Dieses Feature ist experimentel" }, |
390 | { "This item will be\npermanently deleted.","Dieser Eintrag wird\nkomplett gelöscht." }, | 390 | { "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." }, | 391 | { "This item will be permanently deleted.", "Dieser Eintrag wird komplett gelöscht." }, |
392 | { "Thu","Do" }, | 392 | { "Thu","Do" }, |
393 | { "Thursday","Donnerstag" }, | 393 | { "Thursday","Donnerstag" }, |
394 | { "Time associated","Mit Zeit" }, | 394 | { "Time associated","Mit Zeit" }, |
395 | { "Time bar:","Uhrzeit Zeile:" }, | 395 | { "Time bar:","Uhrzeit Zeile:" }, |
396 | { "Time && Date","Zeit und Datum" }, | 396 | { "Time && Date","Zeit und Datum" }, |
397 | { "Time Format","Zeit Format" }, | 397 | { "Time Format","Zeit Format" }, |
398 | { "Time Format(nr):","Zeit Format(Neustart!)" }, | 398 | { "Time Format(nr):","Zeit Format(Neustart!)" }, |
399 | { "Date Labels:","Datumsleiste:" }, | 399 | { "Date Labels:","Datumsleiste:" }, |
400 | { "Time: ","Zeit: " }, | 400 | { "Time: ","Zeit: " }, |
401 | { "Timezone:","Zeitzone:" }, | 401 | { "Timezone:","Zeitzone:" }, |
402 | { "To: ","Bis: " }, | 402 | { "To: ","Bis: " }, |
403 | { "To:","Bis:" }, | 403 | { "To:","Bis:" }, |
404 | { "Today: ","Heute: " }, | 404 | { "Today: ","Heute: " }, |
405 | { "Todo due today color:","Heute fällige To-Do's" }, | 405 | { "Todo due today color:","Heute fällige To-Do's" }, |
406 | { "To-do items:","To-Do items:" }, | 406 | { "To-do items:","To-Do items:" }, |
407 | { "Todo overdue color:","Überfällige To-Do's" }, | 407 | { "Todo overdue color:","Überfällige To-Do's" }, |
408 | { "Todo","Todo" }, | 408 | { "Todo","Todo" }, |
409 | { "To-do view shows completed Todos","To-do Ansicht zeigt erledigte To-dos" }, | 409 | { "To-do view shows completed Todos","To-do Ansicht zeigt erledigte To-dos" }, |
410 | { "ToDoView:","Todo Ansicht:" }, | 410 | { "ToDoView:","Todo Ansicht:" }, |
411 | { "Toggle Alarm","Wechsle Alarm" }, | 411 | { "Toggle Alarm","Wechsle Alarm" }, |
412 | { "Toggle Allday","Umschalten Ganztag" }, | 412 | { "Toggle Allday","Umschalten Ganztag" }, |
413 | { "Tomorrow: ","Morgen: " }, | 413 | { "Tomorrow: ","Morgen: " }, |
414 | { "Tue","Di" }, | 414 | { "Tue","Di" }, |
415 | { "Tuesday","Dienstag" }, | 415 | { "Tuesday","Dienstag" }, |
416 | { "Two entries are in conflict, if: ","Zwei Einträge haben einen Konflikt, wenn:" }, | 416 | { "Two entries are in conflict, if: ","Zwei Einträge haben einen Konflikt, wenn:" }, |
417 | { "Unable to find template '%1'.","Kann Vorlage '%1' nicht finden." }, | 417 | { "Unable to find template '%1'.","Kann Vorlage '%1' nicht finden." }, |
418 | { "Unknown","Unbekannt" }, | 418 | { "Unknown","Unbekannt" }, |
419 | { "Up","Hinauf" }, | 419 | { "Up","Hinauf" }, |
420 | { "Use password (if not, ask when syncing)","Passwort: (sonst jedesmal anfragen)" }, | 420 | { "Use password (if not, ask when syncing)","Passwort: (sonst jedesmal anfragen)" }, |
421 | { "User defined","Benutzerdefiniert" }, | 421 | { "User defined","Benutzerdefiniert" }, |
422 | { "User long date:","Format langes Datum:" }, | 422 | { "User long date:","Format langes Datum:" }, |
423 | { "User short date:","Forma kurzes Datum:" }, | 423 | { "User short date:","Forma kurzes Datum:" }, |
424 | { "View","Ansicht" }, | 424 | { "View","Ansicht" }, |
425 | { "View Fonts","Schriftarten Ansichten" }, | 425 | { "View Fonts","Schriftarten Ansichten" }, |
426 | { "Views","Ansichten" }, | 426 | { "Views","Ansichten" }, |
427 | { "Wed","Mi" }, | 427 | { "Wed","Mi" }, |
428 | { "Wednesday","Mittwoch" }, | 428 | { "Wednesday","Mittwoch" }, |
429 | { "Week %1","Woche %1" }, | 429 | { "Week %1","Woche %1" }, |
430 | { "Weekly","Wöchentlich" }, | 430 | { "Weekly","Wöchentlich" }, |
431 | { "Week starts on Sunday","Woche beginnt Sonntags" }, | 431 | { "Week starts on Sunday","Woche beginnt Sonntags" }, |
432 | { "What's Next View:","What's Next Anz." }, | 432 | { "What's Next View:","What's Next Anz." }, |
433 | { "What's next ?","Was kommt als nächstes?(What's Next)" }, | 433 | { "What's next ?","Was kommt als nächstes?(What's Next)" }, |
434 | { "Working Hours","Tägliche Arbeitszeit" }, | 434 | { "Working Hours","Tägliche Arbeitszeit" }, |
435 | { "Working hours color:","Arbeitszeit in der Agenda Ansicht:" }, | 435 | { "Working hours color:","Arbeitszeit in der Agenda Ansicht:" }, |
436 | { "Write back existing entries only","Nur exisitierende Einträge zurückschreiben" }, | 436 | { "Write back existing entries only","Nur exisitierende Einträge zurückschreiben" }, |
437 | { "Write back synced file","Syncronisierte Datei zurückschreiben" }, | 437 | { "Write back synced file","Syncronisierte Datei zurückschreiben" }, |
438 | { "Yearly","Jährlich" }, | 438 | { "Yearly","Jährlich" }, |
439 | { "year(s)","Jahr(e)" }, | 439 | { "year(s)","Jahr(e)" }, |
440 | { "Yes","Ja" }, | 440 | { "Yes","Ja" }, |
441 | { "You have %d item(s) selected.\n","Sie haben %d Einträge ausgewählt.\n" }, | 441 | { "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." }, | 442 | { "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: " }, | 443 | { "week(s) on:","Woche(n) am: " }, |
444 | { "Full menu bar(nr)","Volle Menuleiste(bn)" }, | 444 | { "Full menu bar(nr)","Volle Menuleiste(bn)" }, |
445 | { "Timezone has daylight saving","Zeitzone hat Sommerzeit" }, | 445 | { "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!" }, | 446 | { "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." }, | 447 | { "The year in the date is ignored.","Das Jahr vom Datum wird ignoriert." }, |
448 | { "Daylight start:","Sommerzeit Start:" }, | 448 | { "Daylight start:","Sommerzeit Start:" }, |
449 | { "Daylight end:","Sommerzeit Ende:" }, | 449 | { "Daylight end:","Sommerzeit Ende:" }, |
450 | { "Time Zone","Zeitzone" }, | 450 | { "Time Zone","Zeitzone" }, |
451 | { "Monday 19 April 2004: %A %d %B %Y","Montag 19 April 2004: %A %d %B %Y" }, | 451 | { "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" }, | 452 | { "%A: Monday --- %a: Mon","%A: Montag --- %a: Mon" }, |
453 | { "minutely","minütlich" }, | 453 | { "minutely","minütlich" }, |
454 | { "hourly","stündlich" }, | 454 | { "hourly","stündlich" }, |
455 | { "daily","täglich" }, | 455 | { "daily","täglich" }, |
456 | { "weekly","wöchentlich" }, | 456 | { "weekly","wöchentlich" }, |
457 | { "monthly","monatlich" }, | 457 | { "monthly","monatlich" }, |
458 | { "day-monthly","tag-monatlich" }, | 458 | { "day-monthly","tag-monatlich" }, |
459 | { "month-yearly","monat-jährlich" }, | 459 | { "month-yearly","monat-jährlich" }, |
460 | { "day-yearly","tag-jährlich" }, | 460 | { "day-yearly","tag-jährlich" }, |
461 | { "position-yearly","pos-jährlich" }, | 461 | { "position-yearly","pos-jährlich" }, |
462 | { "Edit item on doubleclick (if not, show)","Editiere mit Doppelklick(wenn nicht, zeige)" }, | 462 | { "Edit item on doubleclick (if not, show)","Editiere mit Doppelklick(wenn nicht, zeige)" }, |
463 | { "Highlight current day in agenda","Hebe >>heute<< in Agenda hervor" }, | 463 | { "Highlight current day in agenda","Hebe >>heute<< in Agenda hervor" }, |
464 | { "Use light color for highlight current day","Helle Farbe für >>heute<< Hervorhebung" }, | 464 | { "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" }, | 465 | { "Highlight selection in Time Edit","Hebe Auswahl in Zeit Edit hervor" }, |
466 | { "Hold fullscreen on view change","Behalte Vollbild bei Ansichswechsel" }, | 466 | { "Hold fullscreen on view change","Behalte Vollbild bei Ansichswechsel" }, |
467 | { "Hold non-fullscreen on view change","Behalte Nicht-Vollbild bei Ansichtsw." }, | 467 | { "Hold non-fullscreen on view change","Behalte Nicht-Vollbild bei Ansichtsw." }, |
468 | { "Event list view uses full window","Listenansicht nutzt Vollbild" }, | 468 | { "Event list view uses full window","Listenansicht nutzt Vollbild" }, |
469 | { "Set agenda to DayBeginsAt on change","Setze Agenda auf TagBeginntUm bei Wechsel" }, | 469 | { "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" }, | 470 | { "Set agenda to current time on change","Setze Agenda auf gegenw.Zeit bei Wechsel" }, |
471 | { "Listview uses monthly timespan","Listenansicht zeigt monatliche Zeitspanne" }, | 471 | { "Listview uses monthly timespan","Listenansicht zeigt monatliche Zeitspanne" }, |
472 | { "ViewChange","Ansichtswechsel" }, | 472 | { "ViewChange","Ansichtswechsel" }, |
473 | { "Default alarm *.wav file:","Standard Alarm *.wav Datei:" }, | 473 | { "Default alarm *.wav file:","Standard Alarm *.wav Datei:" }, |
474 | { "This setting is useless for 5500 user!","Diese Einst. ist nutzlos für 5500 Nutzer" }, | 474 | { "This setting is useless for 5500 user!","Diese Einst. ist nutzlos für 5500 Nutzer" }, |
475 | { "File","Datei" }, | 475 | { "File","Datei" }, |
476 | { "Clone...","Dupliziere.." }, | 476 | { "Clone...","Dupliziere..." }, |
477 | { "Move...","Bewege..." }, | 477 | { "Move...","Bewege..." }, |
478 | { "Beam...","Sende via IR..." }, | 478 | { "Beam...","Sende via IR..." }, |
479 | { "&Clone...","Dupliziere.." }, | 479 | { "&Clone...","Dupliziere.." }, |
480 | { "&Move...","Bewege..." }, | 480 | { "&Move...","Bewege..." }, |
481 | { "&Beam...","Sende via IR..." }, | 481 | { "&Beam...","Sende via IR..." }, |
482 | { "Show Completed","Zeige erledigte Todos" }, | 482 | { "Show Completed","Zeige erledigte Todos" }, |
483 | { "Show Quick Todo","Zeige Quick Todo" }, | 483 | { "Show Quick Todo","Zeige Quick Todo" }, |
484 | { "Unparent Todo","Un-sub Todo" }, | 484 | { "Unparent Todo","Un-sub Todo" }, |
485 | { "Save selected to file...","Speichere Selektierte..." }, | 485 | { "Save selected to file...","Speichere Selektierte..." }, |
486 | { "Add Categ. to selected...","Füge zu Selekt. Kateg. hinzu..." }, | 486 | { "Add Categ. to selected...","Füge zu Selekt. Kateg. hinzu..." }, |
487 | { "Set Categ. for selected...","Setze Kateg. für Selekt." }, | 487 | { "Set Categ. for selected...","Setze Kateg. für Selekt." }, |
488 | { "Beam selected via IR","Sende Selekt. via IR..." }, | 488 | { "Beam selected via IR","Sende Selekt. via IR..." }, |
489 | { "Search","Suchen" }, | 489 | { "Search","Suchen" }, |
490 | { "Date Picker","Datum auswählen" }, | 490 | { "Date Picker","Datum auswählen" }, |
491 | { "Day View","Tagesansicht" }, | 491 | { "Day View","Tagesansicht" }, |
492 | { "Work Week","Arbeitswoche" }, | 492 | { "Work Week","Arbeitswoche" }, |
493 | { "Week","Wochenansicht" }, | 493 | { "Week","Wochenansicht" }, |
494 | { "Month","Monatsansicht" }, | 494 | { "Month","Monatsansicht" }, |
495 | { "Todo View","Todo Liste" }, | 495 | { "Todo View","Todo Liste" }, |
496 | { "Journal","Journal" }, | 496 | { "Journal","Journal" }, |
497 | { "Next days","Nächste Tage" }, | 497 | { "Next days","Nächste Tage" }, |
498 | { "Print agenda selection...","Drucke Agendaselektion..." }, | 498 | { "Print agenda selection...","Drucke Agendaselektion..." }, |
499 | { "Toggle DateNavigator","Navigator umschalten" }, | 499 | { "Toggle DateNavigator","Navigator umschalten" }, |
500 | { "Toggle FilterView","Filteransicht umschalten" }, | 500 | { "Toggle FilterView","Filteransicht umschalten" }, |
501 | { "Prev. month","Vorheriger Monat" }, | 501 | { "Prev. month","Vorheriger Monat" }, |
502 | { "Go backward","Gehe zurück" }, | 502 | { "Go backward","Gehe zurück" }, |
503 | { "Go forward","Gehe weiter" }, | 503 | { "Go forward","Gehe weiter" }, |
504 | { "Synchronize","Synchronisieren" }, | 504 | { "Synchronize","Synchronisieren" }, |
505 | { "AgendaSize","Agendagröße" }, | 505 | { "AgendaSize","Agendagröße" }, |
506 | { "Import (*.ics/*.vcs) file","Importiere (*.ics/*.vcs) Datei" }, | 506 | { "Import (*.ics/*.vcs) file","Importiere (*.ics/*.vcs) Datei" }, |
507 | { "Import last file","Importiere letzte Datei" }, | 507 | { "Import last file","Importiere letzte Datei" }, |
508 | { "Import Opie/Qtopia Cal.","Importiere Opie/Qtopia Kal." }, | 508 | { "Import Opie/Qtopia Cal.","Importiere Opie/Qtopia Kal." }, |
509 | { "Load Calendar Backup","Lade Kalender Backup" }, | 509 | { "Load Calendar Backup","Lade Kalender Backup" }, |
510 | { "Save Calendar Backup","Speichere Kalender Backup" }, | 510 | { "Save Calendar Backup","Speichere Kalender Backup" }, |
511 | { "Export VCalendar","Exportiere VCalendar" }, | 511 | { "Export VCalendar","Exportiere VCalendar" }, |
512 | { "Manage new categories...","Verwalte neue Kategorien..." }, | 512 | { "Manage new categories...","Verwalte neue Kategorien..." }, |
513 | { "Beam complete calendar...","Sende kompletten Kalender via IR" }, | 513 | { "Beam complete calendar...","Sende kompletten Kalender via IR" }, |
514 | { "Beam filtered calendar...","Sende gefilterten Kalender via IR" }, | 514 | { "Beam filtered calendar...","Sende gefilterten Kalender via IR" }, |
515 | { "Remote via ssh","Über Netzwerk via ssh" }, | 515 | { "Remote via ssh","Über Netzwerk via ssh" }, |
516 | { "With local file","Mit lokaler Datei" }, | 516 | { "With local file","Mit lokaler Datei" }, |
517 | { "With last file","Mit letzter Datei" }, | 517 | { "With last file","Mit letzter Datei" }, |
518 | { "KO/Pi: Ready for beaming","KO/Pi: Bereit zum Senden" }, | 518 | { "KO/Pi: Ready for beaming","KO/Pi: Bereit zum Senden" }, |
519 | { "KO/Pi:Beaming done","KO/Pi: Senden erfolgt" }, | 519 | { "KO/Pi:Beaming done","KO/Pi: Senden erfolgt" }, |
520 | { "Save filename","Speichern: Dateinamen wählen" }, | 520 | { "Save filename","Speichern: Dateinamen wählen" }, |
521 | { "File already exists!\nOld file from:\n%1\nOverwrite?\n","Dateiname existiert bereits!\nAlte Datei vom:\n%1\nÜberschreiben?\n" }, | 521 | { "File already exists!\nOld file from:\n%1\nOverwrite?\n","Dateiname existiert bereits!\nAlte Datei vom:\n%1\nÜberschreiben?\n" }, |
522 | { "KO/Pi: Warning!","KO/Pi: Warnung!" }, | 522 | { "KO/Pi: Warning!","KO/Pi: Warnung!" }, |
523 | { "Overwrite!","Überschreibe!" }, | 523 | { "Overwrite!","Überschreibe!" }, |
524 | { "KO/Pi:Saved %1","KO/Pi:Gespeichert %1" }, | 524 | { "KO/Pi:Saved %1","KO/Pi:Gespeichert %1" }, |
525 | { "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 | { "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" }, |
526 | { "KO/Pi Confirmation","KO/Pi Bestätigung" }, | 526 | { "KO/Pi Confirmation","KO/Pi Bestätigung" }, |
527 | { "Close dialog to abort deletion!","Schließe Dialog um das Löschen abzubrechen!" }, | 527 | { "Close dialog to abort deletion!","Schließe Dialog um das Löschen abzubrechen!" }, |
528 | { "Deleting item %d ...","Lösche Eintrag %d ..." }, | 528 | { "Deleting item %d ...","Lösche Eintrag %d ..." }, |
529 | { "%d items remaining in list.","%d Einträge sind in der Liste verblieben." }, | 529 | { "%d items remaining in list.","%d Einträge sind in der Liste verblieben." }, |
530 | { "Size","Größe" }, | 530 | { "Size","Größe" }, |
531 | { "Date","Datum" }, | 531 | { "Date","Datum" }, |
532 | { "Mime Type","Datei Typ" }, | 532 | { "Mime Type","Datei Typ" }, |
533 | { "All Files","Alle Dateien" }, | 533 | { "All Files","Alle Dateien" }, |
534 | { "Files","Dateien" }, | 534 | { "Files","Dateien" }, |
535 | { "Documents","DoKumente" }, | 535 | { "Documents","DoKumente" }, |
536 | { "Select Categories","Selektiere Kategorien" }, | 536 | { "Select Categories","Selektiere Kategorien" }, |
537 | { " &Deselect All "," Auswahl aufheben " }, | 537 | { " &Deselect All "," Auswahl aufheben " }, |
538 | { "A&dd","Hinzu" }, | 538 | { "A&dd","Hinzu" }, |
539 | { "&Modify","Ändern" }, | 539 | { "&Modify","Ändern" }, |
540 | { "Edit Categories","Editiere Kategorien" }, | 540 | { "Edit Categories","Editiere Kategorien" }, |
541 | { " &Edit Categories "," &Editiere Kategorien " }, | 541 | { " &Edit Categories "," &Editiere Kategorien " }, |
542 | { "Beam Options","Beam Einstellungen" }, | 542 | { "Beam Options","Beam Einstellungen" }, |
543 | { " With timezone "," Mit Zeitzone " }, | 543 | { " With timezone "," Mit Zeitzone " }, |
544 | { " Local time ", " Lokale Zeit " }, | 544 | { " Local time ", " Lokale Zeit " }, |
545 | { "Manage new Categories","Verwalte neue Kategorien" }, | 545 | { "Manage new Categories","Verwalte neue Kategorien" }, |
546 | { "Add to category list","Füge zur Kategorieliste hinzu" }, | 546 | { "Add to category list","Füge zur Kategorieliste hinzu" }, |
547 | { "Remove from Events/Todos","Entferne von Terminen/Todos" }, | 547 | { "Remove from Events/Todos","Entferne von Terminen/Todos" }, |
548 | { "After importing/loading/syncing\nthere may be new categories in\nevents or todos\nwhich are not in the category list.\nPlease choose what to do:\n ","Nach dem Importieren/Laden/Syncen\nkann es neue Kategorien in den \nTerminen oder Todos geben, die nicht\nin der Kategorieliste enthalten sind.\nBitte wählen Sie, was passieren soll:\n " }, | ||
549 | { "New categories not in list:","Kategorien, die nicht in der Liste sind:" }, | 548 | { "New categories not in list:","Kategorien, die nicht in der Liste sind:" }, |
550 | { "File format","Datei Format" }, | 549 | { "File format","Datei Format" }, |
551 | { "Time format","Zeit Format" }, | 550 | { "Time format","Zeit Format" }, |
552 | { "KO/Pi:Saving Data to File ...","KO/Pi: Speichere Kalender in Datei ..." }, | 551 | { "KO/Pi:Saving Data to File ...","KO/Pi: Speichere Kalender in Datei ..." }, |
553 | { "KO/Pi:File Saved. Needed %d sec, %d ms","KO/Pi: Abgespeichert in %d sec, %d ms" }, | 552 | { "KO/Pi:File Saved. Needed %d sec, %d ms","KO/Pi: Abgespeichert in %d sec, %d ms" }, |
554 | { "h","Std" }, | 553 | { "h","Std" }, |
555 | { "min","Min" }, | 554 | { "min","Min" }, |
556 | { "hou","Std" }, | 555 | { "hou","Std" }, |
557 | { "day","Tag" }, | 556 | { "day","Tag" }, |
558 | { "French","Französich" }, | 557 | { "French","Französich" }, |
559 | { "Time","Zeit" }, | 558 | { "Time","Zeit" }, |
560 | { "Event Viewer","Termin Ansicht" }, | 559 | { "Event Viewer","Termin Ansicht" }, |
561 | { "Cancel Sync","Sync Abbrechen" }, | 560 | { "Cancel Sync","Sync Abbrechen" }, |
562 | { "Remote","Fern" }, | 561 | { "Remote","Fern" }, |
563 | { "Local","Lokal" }, | 562 | { "Local","Lokal" }, |
564 | { "Conflict! Please choose entry","Konflikt! Bitte Eintrag wählen" }, | 563 | { "Conflict! Please choose entry","Konflikt! Bitte Eintrag wählen" }, |
565 | { "Local: ","Lokal: " }, | 564 | { "Local: ","Lokal: " }, |
566 | { "Remote: ","Fern: " }, | 565 | { "Remote: ","Fern: " }, |
567 | { "Last modified: ","Zuletzt geändert: " }, | 566 | { "Last modified: ","Zuletzt geändert: " }, |
568 | { "Location: ","Ort: " }, | 567 | { "Location: ","Ort: " }, |
569 | { "<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>From:</b> %1 </p><p><b>To:</b> %2</p>","<p><b>Von:</b> %1 </p><p><b>Bis:</b> %2</p>" }, |
570 | { "<p><b>On:</b> %1</p>","<p><b>Am:</b> %1</p>" }, | 569 | { "<p><b>On:</b> %1</p>","<p><b>Am:</b> %1</p>" }, |
571 | { "<p><b>From:</b> %1</p> ","<p><b>Von:</b> %1</p> " }, | 570 | { "<p><b>From:</b> %1</p> ","<p><b>Von:</b> %1</p> " }, |
572 | { "<p><b>To:</b> %1</p>","<p><b>Bis:</b> %1</p>" }, | 571 | { "<p><b>To:</b> %1</p>","<p><b>Bis:</b> %1</p>" }, |
573 | { "<p><b>On:</b> %1</p> ","<p><b>Am:</b> %1</p> " }, | 572 | { "<p><b>On:</b> %1</p> ","<p><b>Am:</b> %1</p> " }, |
574 | { "<p><b>From:</b> %1 <b>To:</b> %2</p>","<p><b>Von:</b> %1 <b>Bis:</b> %2</p>" }, | 573 | { "<p><b>From:</b> %1 <b>To:</b> %2</p>","<p><b>Von:</b> %1 <b>Bis:</b> %2</p>" }, |
575 | { "This is a %1 recurring event.","Das ist ein %1 wiederholender Termin." }, | 574 | { "This is a %1 recurring event.","Das ist ein %1 wiederholender Termin." }, |
576 | { "<b>Next recurrence is on:</b>","<b>Nächste Wiederholung ist am:</b>" }, | 575 | { "<b>Next recurrence is on:</b>","<b>Nächste Wiederholung ist am:</b>" }, |
577 | { "<b>Last recurrence was on:</b>","<b>Letzte Wiederholung war am:</b>" }, | 576 | { "<b>Last recurrence was on:</b>","<b>Letzte Wiederholung war am:</b>" }, |
578 | { "( %1 min before )","( %1 min vorher )" }, | 577 | { "( %1 min before )","( %1 min vorher )" }, |
579 | { "<b>Alarm on: ","<b>Alarm am: " }, | 578 | { "<b>Alarm on: ","<b>Alarm am: " }, |
580 | { "<b>Details: </b>","<b>Details: </b>" }, | 579 | { "<b>Details: </b>","<b>Details: </b>" }, |
581 | { "<p><b>Priority:</b> %2</p>","<p><b>Priorität:</b> %2</p>" }, | 580 | { "<p><b>Priority:</b> %2</p>","<p><b>Priorität:</b> %2</p>" }, |
582 | { "<p><i>%1 % completed</i></p>","<p><i>%1 % erledigt</i></p>" }, | 581 | { "<p><i>%1 % completed</i></p>","<p><i>%1 % erledigt</i></p>" }, |
583 | { "Organizer","Organisator" }, | 582 | { "Organizer","Organisator" }, |
584 | { "Save","Speichern" }, | 583 | { "Save","Speichern" }, |
585 | { "Exit (+save)","Beenden (+ speichern)" }, | 584 | { "Exit (+save)","Beenden (+ speichern)" }, |
586 | { "Home","Zuhause" }, | 585 | { "Home","Zuhause" }, |
587 | { "Office","Büro" }, | 586 | { "Office","Büro" }, |
588 | { "Library","Bibliothek" }, | 587 | { "Library","Bibliothek" }, |
589 | { "Doctor","Arzt" }, | 588 | { "Doctor","Arzt" }, |
590 | { "Beach","Strand" }, | 589 | { "Beach","Strand" }, |
591 | { "Conference room","Konferenzraum" }, | 590 | { "Conference room","Konferenzraum" }, |
592 | { "Drive Home","Heimfahrt" }, | 591 | { "Drive Home","Heimfahrt" }, |
593 | { "Watch TV","Tv gucken" }, | 592 | { "Watch TV","Tv gucken" }, |
594 | { "Phone call","Telefonanruf" }, | 593 | { "Phone call","Telefonanruf" }, |
595 | { "Pay bill","Rechnung bezahlen" }, | 594 | { "Pay bill","Rechnung bezahlen" }, |
596 | { "Read book","Buch lesen" }, | 595 | { "Read book","Buch lesen" }, |
597 | { "Watering plants","Pflanzen giessen" }, | 596 | { "Watering plants","Pflanzen giessen" }, |
598 | {"Appointment","Verabredung" }, | 597 | {"Appointment","Verabredung" }, |
599 | {"Birthday","Geburtstag" }, | 598 | {"Birthday","Geburtstag" }, |
600 | {"Business","Geschäft" }, | 599 | {"Business","Geschäft" }, |
601 | {"Business Travel","Geschäftsreise" }, | 600 | {"Business Travel","Geschäftsreise" }, |
602 | {"Cinema","Kino" }, | 601 | {"Cinema","Kino" }, |
603 | {"Customer","Kunde" }, | 602 | {"Customer","Kunde" }, |
604 | {"Break","Pause" }, | 603 | {"Break","Pause" }, |
605 | {"Breakfast","Frühstück" }, | 604 | {"Breakfast","Frühstück" }, |
606 | {"Competition","Wettkampf" }, | 605 | {"Competition","Wettkampf" }, |
607 | {"Dinner","Abendessen" }, | 606 | {"Dinner","Abendessen" }, |
608 | {"Education","Erziehung" }, | 607 | {"Education","Erziehung" }, |
609 | {"Family","Familie" }, | 608 | {"Family","Familie" }, |
610 | {"Favorites","Favoriten" }, | 609 | {"Favorites","Favoriten" }, |
611 | {"Festival","Festival" }, | 610 | {"Festival","Festival" }, |
612 | {"Fishing","Angeln" }, | 611 | {"Fishing","Angeln" }, |
613 | {"Flight","Flug" }, | 612 | {"Flight","Flug" }, |
614 | {"Gifts","Geschenk" }, | 613 | {"Gifts","Geschenk" }, |
615 | {"Holiday","Feiertag" }, | 614 | {"Holiday","Feiertag" }, |
616 | {"Holiday Cards","Ansichtskarten" }, | 615 | {"Holiday Cards","Ansichtskarten" }, |
617 | {"Hot Contacts","Heisse Kontakte" }, | 616 | {"Hot Contacts","Heisse Kontakte" }, |
618 | {"Hiking","Wandern" }, | 617 | {"Hiking","Wandern" }, |
619 | {"Hunting","Jagen" }, | 618 | {"Hunting","Jagen" }, |
620 | {"Key Customer","Wichtiger Kunde" }, | 619 | {"Key Customer","Wichtiger Kunde" }, |
621 | {"Kids","Kinder" }, | 620 | {"Kids","Kinder" }, |
622 | {"Lunch","Mittagessen" }, | 621 | {"Lunch","Mittagessen" }, |
623 | {"Meeting","Treffen" }, | 622 | {"Meeting","Treffen" }, |
624 | {"Miscellaneous","Verschiedenes" }, | 623 | {"Miscellaneous","Verschiedenes" }, |
625 | {"Partner","Partner" }, | 624 | {"Partner","Partner" }, |
626 | {"Party","Partie" }, | 625 | {"Party","Partie" }, |
627 | {"Personal","Privat" }, | 626 | {"Personal","Privat" }, |
628 | {"Personal Travel","Privatreise"}, | 627 | {"Personal Travel","Privatreise"}, |
629 | {"PHB","PHB" }, | 628 | {"PHB","PHB" }, |
630 | {"Phone Calls","Telefonanruf" }, | 629 | {"Phone Calls","Telefonanruf" }, |
631 | {"Projects","Projekt" }, | 630 | {"Projects","Projekt" }, |
632 | {"Recurring","Wiederholend" }, | 631 | {"Recurring","Wiederholend" }, |
633 | {"School","Schule" }, | 632 | {"School","Schule" }, |
634 | {"Shopping","Einkaufen" }, | 633 | {"Shopping","Einkaufen" }, |
635 | {"Speach","Rede" }, | 634 | {"Speach","Rede" }, |
636 | {"Special Occasion","Spez.Gelegenheit" }, | 635 | {"Special Occasion","Spez.Gelegenheit" }, |
637 | {"Sports","Sport" }, | 636 | {"Sports","Sport" }, |
638 | {"Talk","Vortrag" }, | 637 | {"Talk","Vortrag" }, |
639 | {"Travel","Reise" }, | 638 | {"Travel","Reise" }, |
640 | {"TV","TV" }, | 639 | {"TV","TV" }, |
641 | {"Germany","Deutschland" }, | 640 | {"Germany","Deutschland" }, |
642 | {"Sweden","Schweden" }, | 641 | {"Sweden","Schweden" }, |
643 | {"Forest","Wald" }, | 642 | {"Forest","Wald" }, |
644 | { "Desert","Wüste" }, | 643 | { "Desert","Wüste" }, |
645 | { "Kitchen","Küche" }, | 644 | { "Kitchen","Küche" }, |
646 | { "Lake","See" }, | 645 | { "Lake","See" }, |
647 | {"University","Universität"}, | 646 | {"University","Universität"}, |
648 | {"Vacation","Urlaub" }, | 647 | {"Vacation","Urlaub" }, |
649 | {"VIP","VIP" }, | 648 | {"VIP","VIP" }, |
650 | { "Import Sharp Calendar","Importiere Sharp Kalender" }, | 649 | { "Import Sharp Calendar","Importiere Sharp Kalender" }, |
651 | { "This todo has been cancelled!","Dieses Todo wurde gecancelt!" }, | 650 | { "This todo has been cancelled!","Dieses Todo wurde gecancelt!" }, |
652 | { "This event has been cancelled!","Dieser Termin wurde gecancelt!" }, | 651 | { "This event has been cancelled!","Dieser Termin wurde gecancelt!" }, |
653 | { "Cancelled","Gecancelt" }, | 652 | { "Cancelled","Gecancelt" }, |
654 | { "Multiple sync","Mehrfach Sync" }, | 653 | { "Multiple sync","Mehrfach Sync" }, |
655 | { "Local file","Lokale Datei" }, | 654 | { "Local file","Lokale Datei" }, |
656 | { "Last file","Letzte Datei" }, | 655 | { "Last file","Letzte Datei" }, |
657 | { "Keys + Colors...","Tasten + Farben..." }, | 656 | { "Keys + Colors...","Tasten + Farben..." }, |
658 | { "Mini icons in toolbar(nr)","Mini Icons in ToolBar(bn)" }, | 657 | { "Mini icons in toolbar(nr)","Mini Icons in ToolBar(bn)" }, |
659 | { "Quick load/save (w/o Unicode)","Schnelles Laden/Speichern (o Unicode)" }, | 658 | { "Quick load/save (w/o Unicode)","Schnelles Laden/Speichern (o Unicode)" }, |
660 | { "Choose...","Wähle..." }, | 659 | { "Choose...","Wähle..." }, |
661 | { "Use colors for application:","Setze Farben für Programm:" }, | 660 | { "Use colors for application:","Setze Farben für Programm:" }, |
662 | { "Buttons, menus, etc.:","Knöpfe, Menu, etc.:" }, | 661 | { "Buttons, menus, etc.:","Knöpfe, Menu, etc.:" }, |
663 | { "Frames, labels, etc.:","Rahmen, Label, etc.:" }, | 662 | { "Frames, labels, etc.:","Rahmen, Label, etc.:" }, |
664 | { "Show parent To-Do's","Zeige Ober-Todos" }, | 663 | { "Show parent To-Do's","Zeige Ober-Todos" }, |
665 | { "Show location","Zeige Orte" }, | 664 | { "Show location","Zeige Orte" }, |
666 | { "Show events that recur ","Zeige Termine, die sich wiederholen:" }, | 665 | { "Show events that recur ","Zeige Termine, die sich wiederholen:" }, |
667 | { "Show in every cell ","Zeige in jeder Zelle " }, | 666 | { "Show in every cell ","Zeige in jeder Zelle " }, |
668 | { "short month","kurzen Monat" }, | 667 | { "short month","kurzen Monat" }, |
669 | { "icons","Icons" }, | 668 | { "icons","Icons" }, |
670 | { "Show Sat/Sun together","Zeige Sam/Son zusammen" }, | 669 | { "Show Sat/Sun together","Zeige Sam/Son zusammen" }, |
671 | { "Category colors are applied to text","Kategorie Farben färben Text" }, | 670 | { "Category colors are applied to text","Kategorie Farben färben Text" }, |
672 | { "Month view uses day colors","Monatsansicht zeigt Tagesfarben" }, | 671 | { "Month view uses day colors","Monatsansicht zeigt Tagesfarben" }, |
673 | { "Day color odd months","Tagesfarbe ungerade Monate" }, | 672 | { "Day color odd months","Tagesfarbe ungerade Monate" }, |
674 | { "Day color even months","Tagesfarbe gerade Monate" }, | 673 | { "Day color even months","Tagesfarbe gerade Monate" }, |
675 | { "Color for Sundays + category \"Holiday\"","Farbe für Sonntag + Kateg.\" Feiertag\"" }, | 674 | { "Color for Sundays + category \"Holiday\"","Farbe für Sonntag + Kateg.\" Feiertag\"" }, |
676 | { "To-do view shows complete as 'xx %'","Zeige Prozent erledigt als 'xx %'" }, | 675 | { "To-do view shows complete as 'xx %'","Zeige Prozent erledigt als 'xx %'" }, |
@@ -1341,132 +1340,142 @@ | |||
1341 | { "Start todo","Starte Todo" }, | 1340 | { "Start todo","Starte Todo" }, |
1342 | { "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?" }, | 1341 | { "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?" }, |
1343 | { "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?" }, | 1342 | { "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?" }, |
1344 | { "Todo has subtodos","Todo hat Untertodos" }, | 1343 | { "Todo has subtodos","Todo hat Untertodos" }, |
1345 | { "Block popup until mouse button release","Sperre Popup bis Mausknopf losgelassen" }, | 1344 | { "Block popup until mouse button release","Sperre Popup bis Mausknopf losgelassen" }, |
1346 | { "Colors","Farben" }, | 1345 | { "Colors","Farben" }, |
1347 | { "Click on new parent item","Klicke auf neues Übertodo" }, | 1346 | { "Click on new parent item","Klicke auf neues Übertodo" }, |
1348 | { "Reparenting aborted!","Übertodo setzen abgebrochen" }, | 1347 | { "Reparenting aborted!","Übertodo setzen abgebrochen" }, |
1349 | { "Cannot move Todo to itself\nor a child of itself","Kann nicht Todo auf\nsich selbst oder\nein Untertodo verschieben" }, | 1348 | { "Cannot move Todo to itself\nor a child of itself","Kann nicht Todo auf\nsich selbst oder\nein Untertodo verschieben" }, |
1350 | { "Recursive reparenting not possible!","Rekursives Verschieben nicht möglich" }, | 1349 | { "Recursive reparenting not possible!","Rekursives Verschieben nicht möglich" }, |
1351 | { "Delete all completed todos?\n(Completed recurring todos\nwill not be deleted!)","Entferne alle erledigten Todos?\n(Erledigte wiederholende Todos\nwerden nicht gelöscht!)" }, | 1350 | { "Delete all completed todos?\n(Completed recurring todos\nwill not be deleted!)","Entferne alle erledigten Todos?\n(Erledigte wiederholende Todos\nwerden nicht gelöscht!)" }, |
1352 | { "Alternating background of list views","Abwechselnder Hintergrund für Listen" }, | 1351 | { "Alternating background of list views","Abwechselnder Hintergrund für Listen" }, |
1353 | { "times","Zeiten" }, | 1352 | { "times","Zeiten" }, |
1354 | { "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?" }, | 1353 | { "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?" }, |
1355 | { "Backup enabled","Backup angeschaltet" }, | 1354 | { "Backup enabled","Backup angeschaltet" }, |
1356 | { "Use standard backup dir","Standard Backupverzeichnis" }, | 1355 | { "Use standard backup dir","Standard Backupverzeichnis" }, |
1357 | { "Number of Backups:","Anzahl der Backups" }, | 1356 | { "Number of Backups:","Anzahl der Backups" }, |
1358 | { "Make backup every ","Mache ein Backup alle " }, | 1357 | { "Make backup every ","Mache ein Backup alle " }, |
1359 | { " days"," Tage" }, | 1358 | { " days"," Tage" }, |
1360 | { "Creating backup ... please wait ...","Erstelle Backup ... bitte warten ..." }, | 1359 | { "Creating backup ... please wait ...","Erstelle Backup ... bitte warten ..." }, |
1361 | { "Backup Failed!","Backup Problem!" }, | 1360 | { "Backup Failed!","Backup Problem!" }, |
1362 | { "Try again now","Versuche jetzt nochmal" }, | 1361 | { "Try again now","Versuche jetzt nochmal" }, |
1363 | { "Try again later","Versuche später nochmal" }, | 1362 | { "Try again later","Versuche später nochmal" }, |
1364 | { "Try again tomorrow","Versuche morgen nochmal" }, | 1363 | { "Try again tomorrow","Versuche morgen nochmal" }, |
1365 | { "Disable backup","Schalte Backup ab" }, | 1364 | { "Disable backup","Schalte Backup ab" }, |
1366 | { "<b>Backup directory does not exist: </b>","<b>Backup Verzeichnis existiert nicht: </b>" }, | 1365 | { "<b>Backup directory does not exist: </b>","<b>Backup Verzeichnis existiert nicht: </b>" }, |
1367 | { "<b>The backup copy command failed!</b>","<b>Das Backup Kopierkommando is fehlgeschlagen!</b>" }, | 1366 | { "<b>The backup copy command failed!</b>","<b>Das Backup Kopierkommando is fehlgeschlagen!</b>" }, |
1368 | { "Choose action","Wähle Aktion" }, | 1367 | { "Choose action","Wähle Aktion" }, |
1369 | { "Comment for todo:","Kommentar zum Todo:" }, | 1368 | { "Comment for todo:","Kommentar zum Todo:" }, |
1370 | { "Stop+note","Stop+Notiz" }, | 1369 | { "Stop+note","Stop+Notiz" }, |
1371 | { "Agenda view shows completed todos","Agenda Ansicht zeigt erledigte Todos" }, | 1370 | { "Agenda view shows completed todos","Agenda Ansicht zeigt erledigte Todos" }, |
1372 | { "KO/Pi: Missing alarms!","KO/Pi: Verpasste Alarme!" }, | 1371 | { "KO/Pi: Missing alarms!","KO/Pi: Verpasste Alarme!" }, |
1373 | { "You missed the alarms for the following events or todos:","Sie verpassten die Alarme für folgende Termine oder Todos:" }, | 1372 | { "You missed the alarms for the following events or todos:","Sie verpassten die Alarme für folgende Termine oder Todos:" }, |
1374 | { "Print complete list","Drucke komplette Liste" }, | 1373 | { "Print complete list","Drucke komplette Liste" }, |
1375 | { "Hide all selected","Verstecke Selektierte" }, | 1374 | { "Hide all selected","Verstecke Selektierte" }, |
1376 | { "Add items","hinzufügen" }, | 1375 | { "Add items","hinzufügen" }, |
1377 | { "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?" }, | 1376 | { "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?" }, |
1378 | { "Print List View...","Drucke Listenansicht..." }, | 1377 | { "Print List View...","Drucke Listenansicht..." }, |
1379 | { "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." }, | 1378 | { "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." }, |
1380 | { "Configure KO/Pi...","Konfiguriere KO/Pi..." }, | 1379 | { "Configure KO/Pi...","Konfiguriere KO/Pi..." }, |
1381 | { "Global Settings...","Globale Einstellungen..." }, | 1380 | { "Global Settings...","Globale Einstellungen..." }, |
1382 | { "<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" }, | 1381 | { "<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" }, |
1383 | { "(disabled)","(abgeschaltet)" }, | 1382 | { "(disabled)","(abgeschaltet)" }, |
1384 | { "New Calendar","Neuer Kalender" }, | 1383 | { "New Calendar","Neuer Kalender" }, |
1385 | { "Calendar","Kalender" }, | 1384 | { "Calendar","Kalender" }, |
1386 | { "Filter selector","Filterauswahl" }, | 1385 | { "Filter selector","Filterauswahl" }, |
1387 | { "Filtermenu","Filtermenu" }, | 1386 | { "Filtermenu","Filtermenu" }, |
1388 | { "Toggle Fullscreen","Vollbild umschalten" }, | 1387 | { "Toggle Fullscreen","Vollbild umschalten" }, |
1389 | { "Toggle Resource View","Resourcenansicht umschalten" }, | 1388 | { "Toggle Resource View","Resourcenansicht umschalten" }, |
1390 | { "Storage HowTo...","Speicherort HowTo..." }, | 1389 | { "Storage HowTo...","Speicherort HowTo..." }, |
1391 | { "Timetracking HowTo...","Timetracking HowTo..." }, | 1390 | { "Timetracking HowTo...","Timetracking HowTo..." }, |
1392 | { "Juni","Juni" }, | 1391 | { "Juni","Juni" }, |
1393 | { "Juli","Juli" }, | 1392 | { "Juli","Juli" }, |
1394 | { "ToDo:","ToDo:" }, | 1393 | { "ToDo:","ToDo:" }, |
1395 | { "Set Calendar","Setze Kalender" }, | 1394 | { "Set Calendar","Setze Kalender" }, |
1396 | { "Todo: %1","Todo: %1" }, | 1395 | { "Todo: %1","Todo: %1" }, |
1397 | { ": (Prio ",": (Prio " }, | 1396 | { ": (Prio ",": (Prio " }, |
1398 | { "Todos","Todos" }, | 1397 | { "Todos","Todos" }, |
1399 | { "Todo Viewer","Todo Viewer" }, | 1398 | { "Todo Viewer","Todo Viewer" }, |
1400 | { "Todo ","Todo " }, | 1399 | { "Todo ","Todo " }, |
1401 | { " Calendar \n Resource "," Kalender \n Resource " }, | 1400 | { " Calendar \n Resource "," Kalender \n Resource " }, |
1402 | { " Color "," Farbe " }, | 1401 | { " Color "," Farbe " }, |
1403 | { "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!)" }, | 1402 | { "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!)" }, |
1404 | { "The calendar <b>%1</b> is displaying file <b>%2</b>","Der Kalender <b>%1</b> zeigt die Datei <b>%2</b>" }, | 1403 | { "The calendar <b>%1</b> is displaying file <b>%2</b>","Der Kalender <b>%1</b> zeigt die Datei <b>%2</b>" }, |
1405 | { "Add new Calendar","Füge Kalender hinzu" }, | 1404 | { "Add new Calendar","Füge Kalender hinzu" }, |
1406 | { "<b>Name of new calendar:</b>","<b>Name des Kalenders:</b>" }, | 1405 | { "<b>Name of new calendar:</b>","<b>Name des Kalenders:</b>" }, |
1407 | { "<b>Local ical (*.ics) file:</b>","<b>Lokale ical (*.ics) Datei:</b>" }, | 1406 | { "<b>Local ical (*.ics) file:</b>","<b>Lokale ical (*.ics) Datei:</b>" }, |
1408 | { "Sorry, the calendar name is empty!","Sorry, der Kalendername ist leer!" }, | 1407 | { "Sorry, the calendar name is empty!","Sorry, der Kalendername ist leer!" }, |
1409 | { "Sorry, the file name is empty!","Sorry, der Dateiname ist leer!" }, | 1408 | { "Sorry, the file name is empty!","Sorry, der Dateiname ist leer!" }, |
1410 | { "Error loading calendar file\n%1.","Fehler beim Laden der Kalenderdatei\n%1." }, | 1409 | { "Error loading calendar file\n%1.","Fehler beim Laden der Kalenderdatei\n%1." }, |
1411 | { "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>" }, | 1410 | { "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>" }, |
1412 | { "Global application font for all apps:","Globale Schriftart:" }, | 1411 | { "Global application font for all apps:","Globale Schriftart:" }, |
1413 | { "Application Font","Applikationsschriftart" }, | 1412 | { "Application Font","Applikationsschriftart" }, |
1414 | { "Kx/Pi","Kx/Pi" }, | 1413 | { "Kx/Pi","Kx/Pi" }, |
1415 | { "Backup","Backup" }, | 1414 | { "Backup","Backup" }, |
1416 | { "KDE-Pim Global Settings","KDE-Pim Globale Einstellungen" }, | 1415 | { "KDE-Pim Global Settings","KDE-Pim Globale Einstellungen" }, |
1417 | { "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!" }, | 1416 | { "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!" }, |
1418 | { "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!" }, | 1417 | { "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!" }, |
1419 | { "Choose Color","Wähle Farbe" }, | 1418 | { "Choose Color","Wähle Farbe" }, |
1420 | { " OK "," OK " }, | 1419 | { " OK "," OK " }, |
1421 | { " Cancel "," Abbrechen " }, | 1420 | { " Cancel "," Abbrechen " }, |
1422 | { "Matching items will be added to list","Passende werden zur Liste hinzugefügt" }, | 1421 | { "Matching items will be added to list","Passende werden zur Liste hinzugefügt" }, |
1423 | { "Matching items will be removed from list","Passende werden von der Liste entfernt" }, | 1422 | { "Matching items will be removed from list","Passende werden von der Liste entfernt" }, |
1424 | { "Search on displayed list only","Suche auf der dargestellten Liste" }, | 1423 | { "Search on displayed list only","Suche auf der dargestellten Liste" }, |
1425 | { "List will be cleared before search","Liste wird vor der Suche gelöscht" }, | 1424 | { "List will be cleared before search","Liste wird vor der Suche gelöscht" }, |
1426 | { "<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>" }, | 1425 | { "<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>" }, |
1427 | { "%1\nis running!","%1\nist am Laufen!" }, | 1426 | { "%1\nis running!","%1\nist am Laufen!" }, |
1428 | { "Additional Comment:","Zusätzlicher Kommentar:" }, | 1427 | { "Additional Comment:","Zusätzlicher Kommentar:" }, |
1429 | { "Stop and save","Stopp und Speichern" }, | 1428 | { "Stop and save","Stopp und Speichern" }, |
1430 | { "Continue running","Weiter laufen lassen" }, | 1429 | { "Continue running","Weiter laufen lassen" }, |
1431 | { "Stop - do not save","Stopp - nicht Speichern" }, | 1430 | { "Stop - do not save","Stopp - nicht Speichern" }, |
1432 | { "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?" }, | 1431 | { "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?" }, |
1433 | { "Time mismatch!","Zeiten stimmen nicht!" }, | 1432 | { "Time mismatch!","Zeiten stimmen nicht!" }, |
1434 | { "The start time is\nafter the end time!","Die Startzeit ist\nhinter der Endzeit!" }, | 1433 | { "The start time is\nafter the end time!","Die Startzeit ist\nhinter der Endzeit!" }, |
1435 | { "Yes, stop todo","Ja, stoppe Todo" }, | 1434 | { "Yes, stop todo","Ja, stoppe Todo" }, |
1436 | { "Todo stopped - no data saved because runtime was < 15 sec!","Todo gestoppt - nichts gespeichert da Laufzeit < 15 sec!" }, | 1435 | { "Todo stopped - no data saved because runtime was < 15 sec!","Todo gestoppt - nichts gespeichert da Laufzeit < 15 sec!" }, |
1437 | { "Todo started! Double click again to stop!","Todo gestartet! Doppelklicke um es zu stoppen!" }, | 1436 | { "Todo started! Double click again to stop!","Todo gestartet! Doppelklicke um es zu stoppen!" }, |
1438 | { "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." }, | 1437 | { "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." }, |
1439 | { "Spouse","Ehegatte" }, | 1438 | { "Spouse","Ehegatte" }, |
1440 | { "Notes","Notizen" }, | 1439 | { "Notes","Notizen" }, |
1441 | { "Messanger","Messanger" }, | 1440 | { "Messanger","Messanger" }, |
1442 | { "Assistant","Assistent" }, | 1441 | { "Assistant","Assistent" }, |
1443 | { "Manager","Manager" }, | 1442 | { "Manager","Manager" }, |
1444 | { "Secrecy","Sichtbar" }, | 1443 | { "Secrecy","Sichtbar" }, |
1445 | { "male","männlich" }, | 1444 | { "male","männlich" }, |
1446 | { "female","weiblich" }, | 1445 | { "female","weiblich" }, |
1447 | { "Hide!","Verbergen!" }, | 1446 | { "Hide!","Verbergen!" }, |
1448 | { "Show!","Anzeigen!" }, | 1447 | { "Show!","Anzeigen!" }, |
1449 | { "Details","Details" }, | 1448 | { "Details","Details" }, |
1450 | { "Profession","Beruf" }, | 1449 | { "Profession","Beruf" }, |
1451 | { "Children","Kinder" }, | 1450 | { "Children","Kinder" }, |
1452 | { "Department","Abteilung" }, | 1451 | { "Department","Abteilung" }, |
1453 | { "Backup cancelled","Backup abgebrochen" }, | 1452 | { "Backup cancelled","Backup abgebrochen" }, |
1454 | { "Backup globally disabled","Backup global abgeschaltet" }, | 1453 | { "Backup globally disabled","Backup global abgeschaltet" }, |
1455 | { "Backup succesfully finished","Backup erfolgreich beendet" }, | 1454 | { "Backup succesfully finished","Backup erfolgreich beendet" }, |
1456 | { "(Hint: You can enable automatic backup in the global settings!)","(Hinweis: Sie können ein automatisches Backup in den globalen Einstellungen konfigurieren!)" }, | 1455 | { "(Hint: You can enable automatic backup in the global settings!)","(Hinweis: Sie können ein automatisches Backup in den globalen Einstellungen konfigurieren!)" }, |
1457 | { "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" }, | 1456 | { "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" }, |
1458 | { "Birthdays","Geburtstage" }, | 1457 | { "Birthdays","Geburtstage" }, |
1459 | { "KO/Pi import information!","KO/Pi Import Information!" }, | 1458 | { "KO/Pi import information!","KO/Pi Import Information!" }, |
1460 | { "Start this todo\nand stop all running","Starte dieses Todo\nund stoppe alle Laufenden" }, | 1459 | { "Start this todo\nand stop all running","Starte dieses Todo\nund stoppe alle Laufenden" }, |
1461 | { "Cancel - do not start"," Abbrechen - Todo nicht starten" }, | 1460 | { "Cancel - do not start"," Abbrechen - Todo nicht starten" }, |
1462 | { "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?"" }, | 1461 | { "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?"" }, |
1463 | { "Reload","Neu laden" }, | 1462 | { "Reload","Neu laden" }, |
1464 | { "Timezone settings","Zeitzoneneinstellung" }, | 1463 | { "Timezone settings","Zeitzoneneinstellung" }, |
1465 | { "Title: ","Titel: " }, | 1464 | { "Title: ","Titel: " }, |
1466 | { "Journal from: ","Journal vom: " }, | 1465 | { "Journal from: ","Journal vom: " }, |
1467 | { "Journal: %1 from ","Journal: %1 vom " }, | 1466 | { "Journal: %1 from ","Journal: %1 vom " }, |
1468 | { "<b>Click here to edit categories: </b>","<b>Klicke hier um Kategorien zu ändern: </b>" }, | 1467 | { "<b>Click here to edit categories: </b>","<b>Klicke hier um Kategorien zu ändern: </b>" }, |
1468 | { "Selected Item","Ausgewähltes Item" }, | ||
1469 | { "Select Date...","Wähle Datum..." }, | ||
1470 | { "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:" }, | ||
1471 | { "Change category list now!","Ändere Kategorieliste jetzt!" }, | ||
1472 | { "Edit category list...","Ändere Kategorieliste..." }, | ||
1473 | { "Toolbar changes needs a restart!","Neustart benötigt für Toolbaränderungen!" }, | ||
1474 | { "","" }, | ||
1475 | { "","" }, | ||
1476 | { "","" }, | ||
1477 | { "","" }, | ||
1469 | { "","" }, | 1478 | { "","" }, |
1470 | { "","" }, | 1479 | { "","" }, |
1471 | { "","" }, | 1480 | { "","" }, |
1472 | { "","" }, \ No newline at end of file | 1481 | { "","" }, \ No newline at end of file |
diff --git a/desktop/rpm/kdepim_rpm b/desktop/rpm/kdepim_rpm index 279bbd4..d29ab72 100644 --- a/desktop/rpm/kdepim_rpm +++ b/desktop/rpm/kdepim_rpm | |||
@@ -1,84 +1,84 @@ | |||
1 | Summary: A collection of PIM programs | 1 | Summary: A collection of PIM programs |
2 | Name: KDE-Pim-Pi | 2 | Name: KDE-Pim-Pi |
3 | Version: 2.1.11 | 3 | Version: 2.1.12 |
4 | Release: SuSE_9.2 | 4 | Release: SuSE_9.2 |
5 | Copyright:GPL | 5 | Copyright:GPL |
6 | Group: Productivity/Pim | 6 | Group: Productivity/Pim |
7 | Source:http://sourceforge.net/projects/kdepimpi/ | 7 | Source:http://sourceforge.net/projects/kdepimpi/ |
8 | URL:http://sourceforge.net/projects/kdepimpi/ | 8 | URL:http://sourceforge.net/projects/kdepimpi/ |
9 | Packager: zautrix | 9 | Packager: zautrix |
10 | 10 | ||
11 | %description | 11 | %description |
12 | This package contains the platform-independent PIM programs from | 12 | This package contains the platform-independent PIM programs from |
13 | www.pi-sync.info, compiled for SuSE 9.2: | 13 | www.pi-sync.info, compiled for SuSE 9.2: |
14 | KTimeTacker/Pi | 14 | KTimeTacker/Pi |
15 | KPhone/Pi | 15 | KPhone/Pi |
16 | KAddressbook/Pi | 16 | KAddressbook/Pi |
17 | KOrganizer/Pi | 17 | KOrganizer/Pi |
18 | PasswordManager/Pi | 18 | PasswordManager/Pi |
19 | KOPieMail/Pi | 19 | KOPieMail/Pi |
20 | 20 | ||
21 | These applications do not need anything from the KDE-desktop | 21 | These applications do not need anything from the KDE-desktop |
22 | at all to run on Linux. However, there is a dependency from | 22 | at all to run on Linux. However, there is a dependency from |
23 | two KDE libs, because a small command line program is included | 23 | two KDE libs, because a small command line program is included |
24 | to make it possible to sync with the KDE-desktop applications. | 24 | to make it possible to sync with the KDE-desktop applications. |
25 | 25 | ||
26 | These applications are independent from the KDE-desktop | 26 | These applications are independent from the KDE-desktop |
27 | environment. That means, nothing of your existing | 27 | environment. That means, nothing of your existing |
28 | KDE-desktop setup will be changed, or any data | 28 | KDE-desktop setup will be changed, or any data |
29 | (calendar-addressbook) used by the KDE-desktop | 29 | (calendar-addressbook) used by the KDE-desktop |
30 | applications will be changed or accessed. | 30 | applications will be changed or accessed. |
31 | These applications stores their data and config in | 31 | These applications stores their data and config in |
32 | $HOME/kdepim/ | 32 | $HOME/kdepim/ |
33 | However, because the same file format is used, | 33 | However, because the same file format is used, |
34 | an easy exchange of data with the KDE-desktop | 34 | an easy exchange of data with the KDE-desktop |
35 | is possible. | 35 | is possible. |
36 | A small command line program is included | 36 | A small command line program is included |
37 | to make it possible to sync with the KDE-desktop applications. | 37 | to make it possible to sync with the KDE-desktop applications. |
38 | You do not need to call this program from the commandline, | 38 | You do not need to call this program from the commandline, |
39 | it is called from the KDE-Pim/Pi apps when you choose there: | 39 | it is called from the KDE-Pim/Pi apps when you choose there: |
40 | Sync with KDE_Desktop. | 40 | Sync with KDE_Desktop. |
41 | If something is going wrong, please start the | 41 | If something is going wrong, please start the |
42 | KDE-Pim/Pi program itself from the console to get detailed output. | 42 | KDE-Pim/Pi program itself from the console to get detailed output. |
43 | 43 | ||
44 | After installation, you should have a | 44 | After installation, you should have a |
45 | PIM-pi | 45 | PIM-pi |
46 | folder in your KDE start menu, where you can | 46 | folder in your KDE start menu, where you can |
47 | start the applications from. | 47 | start the applications from. |
48 | 48 | ||
49 | These programs makes it possible to sync your Zaurus easily | 49 | These programs makes it possible to sync your Zaurus easily |
50 | (with the KDE-Pim/Pi programs running on the Zaurus) | 50 | (with the KDE-Pim/Pi programs running on the Zaurus) |
51 | with the KDE-desktop calendar/addressbook data. | 51 | with the KDE-desktop calendar/addressbook data. |
52 | If you want to use that, you have to update your | 52 | If you want to use that, you have to update your |
53 | KDE-desktop to version 3.3.0 or higher. | 53 | KDE-desktop to version 3.3.0 or higher. |
54 | SuSE 9.2 contains KDE 3.3.0 such that no update is needed. | 54 | SuSE 9.2 contains KDE 3.3.0 such that no update is needed. |
55 | Actually - after the (non difficult) configuration is set up - | 55 | Actually - after the (non difficult) configuration is set up - |
56 | with two mouseklicks on the Zaurus, | 56 | with two mouseklicks on the Zaurus, |
57 | the Zaurus syncs with the corresponding KDE-Pim/Pi | 57 | the Zaurus syncs with the corresponding KDE-Pim/Pi |
58 | program on the Linux Desktop which syncs automatically | 58 | program on the Linux Desktop which syncs automatically |
59 | with the KDE-desktop data. | 59 | with the KDE-desktop data. |
60 | 60 | ||
61 | If you want to use the KDE-desktop calendar/addressbook applications, | 61 | If you want to use the KDE-desktop calendar/addressbook applications, |
62 | just install these apps in this package and use them as a syncing tool for the | 62 | just install these apps in this package and use them as a syncing tool for the |
63 | Zaurus <-> KDE-desktop sync. | 63 | Zaurus <-> KDE-desktop sync. |
64 | The sync requires a network connection from your Zaurus to | 64 | The sync requires a network connection from your Zaurus to |
65 | the PC. A detailed Sync HowTo is available in the | 65 | the PC. A detailed Sync HowTo is available in the |
66 | Help menu of the applications. | 66 | Help menu of the applications. |
67 | 67 | ||
68 | These applications makes it also possible, that you can sync | 68 | These applications makes it also possible, that you can sync |
69 | (or just export the data to) your mobile phone with your | 69 | (or just export the data to) your mobile phone with your |
70 | data of the KDE-desktop calendar/addressbook applications. | 70 | data of the KDE-desktop calendar/addressbook applications. |
71 | This is tested and working for Nokia mobile phones, | 71 | This is tested and working for Nokia mobile phones, |
72 | it may work with others as well. | 72 | it may work with others as well. |
73 | (More info about that: -> Sync HowTo) | 73 | (More info about that: -> Sync HowTo) |
74 | 74 | ||
75 | NOTE: | 75 | NOTE: |
76 | When using SuSE 9.1 you have to update your KDE to 3.3.x | 76 | When using SuSE 9.1 you have to update your KDE to 3.3.x |
77 | and you have to make an online update in SuSE 9.1 to make it | 77 | and you have to make an online update in SuSE 9.1 to make it |
78 | possible to get the infrared connection working, such that | 78 | possible to get the infrared connection working, such that |
79 | you can sync your (Nokia) mobile phone via infrared. | 79 | you can sync your (Nokia) mobile phone via infrared. |
80 | 80 | ||
81 | %files | 81 | %files |
82 | /opt/kde3/share/applnk/PIM-pi/ | 82 | /opt/kde3/share/applnk/PIM-pi/ |
83 | /opt/kdepimpi/ | 83 | /opt/kdepimpi/ |
84 | /usr/lib/libmicro* | 84 | /usr/lib/libmicro* |
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index d0de233..c0f3be7 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp | |||
@@ -1,452 +1,453 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of KOrganizer. | 2 | This file is part of KOrganizer. |
3 | 3 | ||
4 | Requires the Qt and KDE widget libraries, available at no cost at | 4 | Requires the Qt and KDE widget libraries, available at no cost at |
5 | http://www.troll.no and http://www.kde.org respectively | 5 | http://www.troll.no and http://www.kde.org respectively |
6 | 6 | ||
7 | Copyright (c) 1997, 1998, 1999 | 7 | Copyright (c) 1997, 1998, 1999 |
8 | Preston Brown (preton.brown@yale.edu) | 8 | Preston Brown (preton.brown@yale.edu) |
9 | Fester Zigterman (F.J.F.ZigtermanRustenburg@student.utwente.nl) | 9 | Fester Zigterman (F.J.F.ZigtermanRustenburg@student.utwente.nl) |
10 | Ian Dawes (iadawes@globalserve.net) | 10 | Ian Dawes (iadawes@globalserve.net) |
11 | Laszlo Boloni (boloni@cs.purdue.edu) | 11 | Laszlo Boloni (boloni@cs.purdue.edu) |
12 | 12 | ||
13 | Copyright (c) 2000, 2001, 2002 | 13 | Copyright (c) 2000, 2001, 2002 |
14 | Cornelius Schumacher <schumacher@kde.org> | 14 | Cornelius Schumacher <schumacher@kde.org> |
15 | 15 | ||
16 | This program is free software; you can redistribute it and/or modify | 16 | This program is free software; you can redistribute it and/or modify |
17 | it under the terms of the GNU General Public License as published by | 17 | it under the terms of the GNU General Public License as published by |
18 | the Free Software Foundation; either version 2 of the License, or | 18 | the Free Software Foundation; either version 2 of the License, or |
19 | (at your option) any later version. | 19 | (at your option) any later version. |
20 | 20 | ||
21 | This program is distributed in the hope that it will be useful, | 21 | This program is distributed in the hope that it will be useful, |
22 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 22 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
23 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the | 23 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the |
24 | GNU General Public License for more details. | 24 | GNU General Public License for more details. |
25 | 25 | ||
26 | You should have received a copy of the GNU General Public License | 26 | You should have received a copy of the GNU General Public License |
27 | along with this program; if not, write to the Free Software | 27 | along with this program; if not, write to the Free Software |
28 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 28 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
29 | */ | 29 | */ |
30 | 30 | ||
31 | #include <stdlib.h> | 31 | #include <stdlib.h> |
32 | 32 | ||
33 | #include <qapplication.h> | 33 | #include <qapplication.h> |
34 | #include <qradiobutton.h> | 34 | #include <qradiobutton.h> |
35 | #include <qbuttongroup.h> | 35 | #include <qbuttongroup.h> |
36 | #include <qlayout.h> | 36 | #include <qlayout.h> |
37 | #include <qclipboard.h> | 37 | #include <qclipboard.h> |
38 | #include <qcursor.h> | 38 | #include <qcursor.h> |
39 | #include <qmessagebox.h> | 39 | #include <qmessagebox.h> |
40 | #include <qprogressbar.h> | 40 | #include <qprogressbar.h> |
41 | #include <qmultilineedit.h> | 41 | #include <qmultilineedit.h> |
42 | #include <qtimer.h> | 42 | #include <qtimer.h> |
43 | #include <qwidgetstack.h> | 43 | #include <qwidgetstack.h> |
44 | #include <qptrlist.h> | 44 | #include <qptrlist.h> |
45 | #include <qregexp.h> | 45 | #include <qregexp.h> |
46 | #include <qgroupbox.h> | 46 | #include <qgroupbox.h> |
47 | #include <qfile.h> | 47 | #include <qfile.h> |
48 | #include <qdir.h> | 48 | #include <qdir.h> |
49 | #ifndef KORG_NOSPLITTER | 49 | #ifndef KORG_NOSPLITTER |
50 | #include <qsplitter.h> | 50 | #include <qsplitter.h> |
51 | #endif | 51 | #endif |
52 | 52 | ||
53 | #include <kglobal.h> | 53 | #include <kglobal.h> |
54 | #include <kdebug.h> | 54 | #include <kdebug.h> |
55 | #include <kstandarddirs.h> | 55 | #include <kstandarddirs.h> |
56 | #include <kfiledialog.h> | 56 | #include <kfiledialog.h> |
57 | #include <kmessagebox.h> | 57 | #include <kmessagebox.h> |
58 | #include <knotifyclient.h> | 58 | #include <knotifyclient.h> |
59 | #include <kconfig.h> | 59 | #include <kconfig.h> |
60 | 60 | ||
61 | #include <libkdepim/ksyncprefsdialog.h> | 61 | #include <libkdepim/ksyncprefsdialog.h> |
62 | #include <krun.h> | 62 | #include <krun.h> |
63 | #include <kdirwatch.h> | 63 | #include <kdirwatch.h> |
64 | #include <libkdepim/kdatepicker.h> | 64 | #include <libkdepim/kdatepicker.h> |
65 | #include <libkdepim/ksyncprofile.h> | 65 | #include <libkdepim/ksyncprofile.h> |
66 | #include <libkdepim/kpimglobalprefs.h> | 66 | #include <libkdepim/kpimglobalprefs.h> |
67 | 67 | ||
68 | #include <libkcal/vcaldrag.h> | 68 | #include <libkcal/vcaldrag.h> |
69 | #include <libkcal/icaldrag.h> | 69 | #include <libkcal/icaldrag.h> |
70 | #include <libkcal/icalformat.h> | 70 | #include <libkcal/icalformat.h> |
71 | #include <libkcal/vcalformat.h> | 71 | #include <libkcal/vcalformat.h> |
72 | #include <libkcal/scheduler.h> | 72 | #include <libkcal/scheduler.h> |
73 | #include <libkcal/calendarlocal.h> | 73 | #include <libkcal/calendarlocal.h> |
74 | #include <libkcal/journal.h> | 74 | #include <libkcal/journal.h> |
75 | #include <libkcal/calfilter.h> | 75 | #include <libkcal/calfilter.h> |
76 | #include <libkcal/attendee.h> | 76 | #include <libkcal/attendee.h> |
77 | #include <libkcal/dndfactory.h> | 77 | #include <libkcal/dndfactory.h> |
78 | #include <libkcal/freebusy.h> | 78 | #include <libkcal/freebusy.h> |
79 | #include <libkcal/filestorage.h> | 79 | #include <libkcal/filestorage.h> |
80 | #include <libkcal/calendarresources.h> | 80 | #include <libkcal/calendarresources.h> |
81 | #include <libkcal/qtopiaformat.h> | 81 | #include <libkcal/qtopiaformat.h> |
82 | #include "../kalarmd/alarmdialog.h" | 82 | #include "../kalarmd/alarmdialog.h" |
83 | 83 | ||
84 | #ifndef DESKTOP_VERSION | 84 | #ifndef DESKTOP_VERSION |
85 | #include <libkcal/sharpformat.h> | 85 | #include <libkcal/sharpformat.h> |
86 | #include <externalapphandler.h> | 86 | #include <externalapphandler.h> |
87 | #endif | 87 | #endif |
88 | #include <libkcal/phoneformat.h> | 88 | #include <libkcal/phoneformat.h> |
89 | #ifndef KORG_NOMAIL | 89 | #ifndef KORG_NOMAIL |
90 | #include "komailclient.h" | 90 | #include "komailclient.h" |
91 | #endif | 91 | #endif |
92 | #ifndef KORG_NOPRINTER | 92 | #ifndef KORG_NOPRINTER |
93 | #include "calprinter.h" | 93 | #include "calprinter.h" |
94 | #endif | 94 | #endif |
95 | #ifndef KORG_NOPLUGINS | 95 | #ifndef KORG_NOPLUGINS |
96 | #include "kocore.h" | 96 | #include "kocore.h" |
97 | #endif | 97 | #endif |
98 | #include "koeventeditor.h" | 98 | #include "koeventeditor.h" |
99 | #include "kotodoeditor.h" | 99 | #include "kotodoeditor.h" |
100 | #include "koprefs.h" | 100 | #include "koprefs.h" |
101 | #include "koeventviewerdialog.h" | 101 | #include "koeventviewerdialog.h" |
102 | #include "publishdialog.h" | 102 | #include "publishdialog.h" |
103 | #include "kofilterview.h" | 103 | #include "kofilterview.h" |
104 | #include "koglobals.h" | 104 | #include "koglobals.h" |
105 | #include "koviewmanager.h" | 105 | #include "koviewmanager.h" |
106 | #include "koagendaview.h" | 106 | #include "koagendaview.h" |
107 | #include "kodialogmanager.h" | 107 | #include "kodialogmanager.h" |
108 | #include "outgoingdialog.h" | 108 | #include "outgoingdialog.h" |
109 | #include "incomingdialog.h" | 109 | #include "incomingdialog.h" |
110 | #include "datenavigatorcontainer.h" | 110 | #include "datenavigatorcontainer.h" |
111 | #include "statusdialog.h" | 111 | #include "statusdialog.h" |
112 | #include "kdatenavigator.h" | 112 | #include "kdatenavigator.h" |
113 | #include "kotodoview.h" | 113 | #include "kotodoview.h" |
114 | #include "datenavigator.h" | 114 | #include "datenavigator.h" |
115 | #include "resourceview.h" | 115 | #include "resourceview.h" |
116 | #include "navigatorbar.h" | 116 | #include "navigatorbar.h" |
117 | #include "searchdialog.h" | 117 | #include "searchdialog.h" |
118 | #include "mainwindow.h" | 118 | #include "mainwindow.h" |
119 | #include "categoryeditdialog.h" | ||
119 | 120 | ||
120 | #include "calendarview.h" | 121 | #include "calendarview.h" |
121 | #ifndef DESKTOP_VERSION | 122 | #ifndef DESKTOP_VERSION |
122 | #include <qtopia/alarmserver.h> | 123 | #include <qtopia/alarmserver.h> |
123 | #endif | 124 | #endif |
124 | #ifndef _WIN32_ | 125 | #ifndef _WIN32_ |
125 | #include <stdlib.h> | 126 | #include <stdlib.h> |
126 | #include <stdio.h> | 127 | #include <stdio.h> |
127 | #include <unistd.h> | 128 | #include <unistd.h> |
128 | #else | 129 | #else |
129 | #include <qprocess.h> | 130 | #include <qprocess.h> |
130 | #endif | 131 | #endif |
131 | 132 | ||
132 | #ifdef DESKTOP_VERSION | 133 | #ifdef DESKTOP_VERSION |
133 | #include <kabc/stdaddressbook.h> | 134 | #include <kabc/stdaddressbook.h> |
134 | #endif | 135 | #endif |
135 | using namespace KOrg; | 136 | using namespace KOrg; |
136 | using namespace KCal; | 137 | using namespace KCal; |
137 | extern int globalFlagBlockAgenda; | 138 | extern int globalFlagBlockAgenda; |
138 | extern int globalFlagBlockStartup; | 139 | extern int globalFlagBlockStartup; |
139 | 140 | ||
140 | 141 | ||
141 | MissedAlarmTextBrowser::MissedAlarmTextBrowser(QWidget *parent, QPtrList<Incidence> alarms,QDateTime start ) : QTextBrowser(parent) | 142 | MissedAlarmTextBrowser::MissedAlarmTextBrowser(QWidget *parent, QPtrList<Incidence> alarms,QDateTime start ) : QTextBrowser(parent) |
142 | 143 | ||
143 | { | 144 | { |
144 | mAlarms = alarms; | 145 | mAlarms = alarms; |
145 | viewport()->setBackgroundColor( QColor( 255, 255, 255 ) ); | 146 | viewport()->setBackgroundColor( QColor( 255, 255, 255 ) ); |
146 | QString mText = "<table width=\"100%\">\n"; | 147 | QString mText = "<table width=\"100%\">\n"; |
147 | //mText += "<tr bgcolor=\"#3679AD\"><td><h2>"; | 148 | //mText += "<tr bgcolor=\"#3679AD\"><td><h2>"; |
148 | #ifdef DESKTOP_VERSION | 149 | #ifdef DESKTOP_VERSION |
149 | mText += "<tr bgcolor=\"#5699CD\"><td align=\"center\"><h2>"; | 150 | mText += "<tr bgcolor=\"#5699CD\"><td align=\"center\"><h2>"; |
150 | #else | 151 | #else |
151 | mText += "<tr bgcolor=\"#5699CD\"><td align=\"center\"><h3>"; | 152 | mText += "<tr bgcolor=\"#5699CD\"><td align=\"center\"><h3>"; |
152 | #endif | 153 | #endif |
153 | // mText += "<img src=\""; | 154 | // mText += "<img src=\""; |
154 | // mText += ipath; | 155 | // mText += ipath; |
155 | // mText += "\">"; | 156 | // mText += "\">"; |
156 | //mEventDate = QDate::currentDate(); | 157 | //mEventDate = QDate::currentDate(); |
157 | #ifdef DESKTOP_VERSION | 158 | #ifdef DESKTOP_VERSION |
158 | mText += "<font color=\"#FFFFFF\"> <em>" + i18n("You missed the alarms for the following events or todos:")+"</em></font></h2>"; | 159 | mText += "<font color=\"#FFFFFF\"> <em>" + i18n("You missed the alarms for the following events or todos:")+"</em></font></h2>"; |
159 | #else | 160 | #else |
160 | mText += "<font color=\"#FFFFFF\"> <em>" + i18n("You missed the alarms for the following events or todos:")+"</em></font></h3>"; | 161 | mText += "<font color=\"#FFFFFF\"> <em>" + i18n("You missed the alarms for the following events or todos:")+"</em></font></h3>"; |
161 | #endif | 162 | #endif |
162 | //mText += "</td></tr>\n<tr bgcolor=\"#FF997D\"><td>"; | 163 | //mText += "</td></tr>\n<tr bgcolor=\"#FF997D\"><td>"; |
163 | 164 | ||
164 | Incidence * inc = getNextInc( start ); | 165 | Incidence * inc = getNextInc( start ); |
165 | int time = 0; | 166 | int time = 0; |
166 | //mText += "<table>"; | 167 | //mText += "<table>"; |
167 | while ( inc ) { | 168 | while ( inc ) { |
168 | QDateTime dt ; | 169 | QDateTime dt ; |
169 | QString tempText = "<a "; | 170 | QString tempText = "<a "; |
170 | bool ok; | 171 | bool ok; |
171 | dt = inc->getNextOccurence( start, &ok ); | 172 | dt = inc->getNextOccurence( start, &ok ); |
172 | if ( !ok ) continue; | 173 | if ( !ok ) continue; |
173 | if ( inc->typeID() == eventID ) { | 174 | if ( inc->typeID() == eventID ) { |
174 | tempText += "href=\"event:"; | 175 | tempText += "href=\"event:"; |
175 | } else if ( inc->typeID() == todoID ) { | 176 | } else if ( inc->typeID() == todoID ) { |
176 | tempText += "href=\"todo:"; | 177 | tempText += "href=\"todo:"; |
177 | } | 178 | } |
178 | tempText += inc->uid() + "\">"; | 179 | tempText += inc->uid() + "\">"; |
179 | if ( inc->typeID() == todoID ) | 180 | if ( inc->typeID() == todoID ) |
180 | tempText += i18n("Todo: "); | 181 | tempText += i18n("Todo: "); |
181 | if ( inc->summary().length() > 0 ) | 182 | if ( inc->summary().length() > 0 ) |
182 | tempText += inc->summary(); | 183 | tempText += inc->summary(); |
183 | else | 184 | else |
184 | tempText += i18n("-no summary-"); | 185 | tempText += i18n("-no summary-"); |
185 | QString timestr; | 186 | QString timestr; |
186 | if (!inc->doesFloat()) | 187 | if (!inc->doesFloat()) |
187 | timestr = KGlobal::locale()->formatDateTime( dt, KOPrefs::instance()->mShortDateInViewer) +": "; | 188 | timestr = KGlobal::locale()->formatDateTime( dt, KOPrefs::instance()->mShortDateInViewer) +": "; |
188 | else | 189 | else |
189 | timestr = KGlobal::locale()->formatDate( dt.date() , KOPrefs::instance()->mShortDateInViewer) +": "; | 190 | timestr = KGlobal::locale()->formatDate( dt.date() , KOPrefs::instance()->mShortDateInViewer) +": "; |
190 | if ( dt.date() < QDate::currentDate() && time == 0 ) { | 191 | if ( dt.date() < QDate::currentDate() && time == 0 ) { |
191 | mText += "</td></tr>\n<tr bgcolor=\"#FF997D\"><td>"; | 192 | mText += "</td></tr>\n<tr bgcolor=\"#FF997D\"><td>"; |
192 | mText += "<table>"; | 193 | mText += "<table>"; |
193 | time = 1; | 194 | time = 1; |
194 | } | 195 | } |
195 | if ( dt.date() == QDate::currentDate() && time <= 1 ) { | 196 | if ( dt.date() == QDate::currentDate() && time <= 1 ) { |
196 | if ( time > 0 ) | 197 | if ( time > 0 ) |
197 | mText +="</table>"; | 198 | mText +="</table>"; |
198 | mText += "</td></tr>\n<tr bgcolor=\"#FFDC64\"><td>"; | 199 | mText += "</td></tr>\n<tr bgcolor=\"#FFDC64\"><td>"; |
199 | mText += "<table>"; | 200 | mText += "<table>"; |
200 | time = 2; | 201 | time = 2; |
201 | 202 | ||
202 | } | 203 | } |
203 | if ( dt.date() > QDate::currentDate() && time <= 2 ) { | 204 | if ( dt.date() > QDate::currentDate() && time <= 2 ) { |
204 | if ( time > 0 ) | 205 | if ( time > 0 ) |
205 | mText +="</table>"; | 206 | mText +="</table>"; |
206 | mText += "</td></tr>\n<tr bgcolor=\"#6AFF6A\"><td>"; | 207 | mText += "</td></tr>\n<tr bgcolor=\"#6AFF6A\"><td>"; |
207 | mText += "<table>"; | 208 | mText += "<table>"; |
208 | time = 3; | 209 | time = 3; |
209 | } | 210 | } |
210 | mText +="<tr><td><b>"; | 211 | mText +="<tr><td><b>"; |
211 | mText += timestr; | 212 | mText += timestr; |
212 | mText += "</b></td><td>"; | 213 | mText += "</b></td><td>"; |
213 | mText += tempText; | 214 | mText += tempText; |
214 | mText += "</td></tr>\n"; | 215 | mText += "</td></tr>\n"; |
215 | inc = getNextInc( start ); | 216 | inc = getNextInc( start ); |
216 | } | 217 | } |
217 | mText +="</table>"; | 218 | mText +="</table>"; |
218 | setText( mText ); | 219 | setText( mText ); |
219 | } | 220 | } |
220 | 221 | ||
221 | MissedAlarmTextBrowser::~MissedAlarmTextBrowser() | 222 | MissedAlarmTextBrowser::~MissedAlarmTextBrowser() |
222 | { | 223 | { |
223 | //qDebug("delete MissedAlarmTextBrowser::~MissedAlarmTextBrowser() "); | 224 | //qDebug("delete MissedAlarmTextBrowser::~MissedAlarmTextBrowser() "); |
224 | } | 225 | } |
225 | Incidence * MissedAlarmTextBrowser::getNextInc( QDateTime start ) | 226 | Incidence * MissedAlarmTextBrowser::getNextInc( QDateTime start ) |
226 | { | 227 | { |
227 | QDateTime dt ; | 228 | QDateTime dt ; |
228 | Incidence * retInc; | 229 | Incidence * retInc; |
229 | Incidence * inc = mAlarms.first(); | 230 | Incidence * inc = mAlarms.first(); |
230 | if ( inc == 0 ) | 231 | if ( inc == 0 ) |
231 | return 0; | 232 | return 0; |
232 | bool ok; | 233 | bool ok; |
233 | dt = inc->getNextOccurence( start, &ok ); | 234 | dt = inc->getNextOccurence( start, &ok ); |
234 | if ( ! ok ) return 0; | 235 | if ( ! ok ) return 0; |
235 | QDateTime dtn ; | 236 | QDateTime dtn ; |
236 | retInc = inc; | 237 | retInc = inc; |
237 | inc = mAlarms.next(); | 238 | inc = mAlarms.next(); |
238 | while ( inc ) { | 239 | while ( inc ) { |
239 | dtn = inc->getNextOccurence( start, &ok ); | 240 | dtn = inc->getNextOccurence( start, &ok ); |
240 | if ( ! ok ) return 0; | 241 | if ( ! ok ) return 0; |
241 | if ( dtn < dt ) { | 242 | if ( dtn < dt ) { |
242 | dt = dtn; | 243 | dt = dtn; |
243 | retInc = inc; | 244 | retInc = inc; |
244 | } | 245 | } |
245 | inc = mAlarms.next(); | 246 | inc = mAlarms.next(); |
246 | } | 247 | } |
247 | mAlarms.remove( retInc ); | 248 | mAlarms.remove( retInc ); |
248 | return retInc; | 249 | return retInc; |
249 | 250 | ||
250 | } | 251 | } |
251 | void MissedAlarmTextBrowser::setSource(const QString & n) | 252 | void MissedAlarmTextBrowser::setSource(const QString & n) |
252 | { | 253 | { |
253 | if (n.startsWith("event:")) { | 254 | if (n.startsWith("event:")) { |
254 | #ifdef DESKTOP_VERSION | 255 | #ifdef DESKTOP_VERSION |
255 | emit showIncidence(n.mid(8)); | 256 | emit showIncidence(n.mid(8)); |
256 | #else | 257 | #else |
257 | emit showIncidence(n.mid(6)); | 258 | emit showIncidence(n.mid(6)); |
258 | #endif | 259 | #endif |
259 | return; | 260 | return; |
260 | } else if (n.startsWith("todo:")) { | 261 | } else if (n.startsWith("todo:")) { |
261 | #ifdef DESKTOP_VERSION | 262 | #ifdef DESKTOP_VERSION |
262 | emit showIncidence(n.mid(7)); | 263 | emit showIncidence(n.mid(7)); |
263 | #else | 264 | #else |
264 | emit showIncidence(n.mid(5)); | 265 | emit showIncidence(n.mid(5)); |
265 | #endif | 266 | #endif |
266 | return; | 267 | return; |
267 | } | 268 | } |
268 | } | 269 | } |
269 | 270 | ||
270 | 271 | ||
271 | class KOBeamPrefs : public QDialog | 272 | class KOBeamPrefs : public QDialog |
272 | { | 273 | { |
273 | public: | 274 | public: |
274 | KOBeamPrefs( QWidget *parent=0, const char *name=0 ) : | 275 | KOBeamPrefs( QWidget *parent=0, const char *name=0 ) : |
275 | QDialog( parent, name, true ) | 276 | QDialog( parent, name, true ) |
276 | { | 277 | { |
277 | setCaption( i18n("Beam Options") ); | 278 | setCaption( i18n("Beam Options") ); |
278 | QVBoxLayout* lay = new QVBoxLayout( this ); | 279 | QVBoxLayout* lay = new QVBoxLayout( this ); |
279 | lay->setSpacing( 3 ); | 280 | lay->setSpacing( 3 ); |
280 | lay->setMargin( 3 ); | 281 | lay->setMargin( 3 ); |
281 | QButtonGroup* format = new QButtonGroup( 1, Horizontal, i18n("File format"), this ); | 282 | QButtonGroup* format = new QButtonGroup( 1, Horizontal, i18n("File format"), this ); |
282 | lay->addWidget( format ); | 283 | lay->addWidget( format ); |
283 | format->setExclusive ( true ) ; | 284 | format->setExclusive ( true ) ; |
284 | QButtonGroup* time = new QButtonGroup(1, Horizontal, i18n("Time format"), this ); | 285 | QButtonGroup* time = new QButtonGroup(1, Horizontal, i18n("Time format"), this ); |
285 | lay->addWidget( time ); time->setExclusive ( true ) ; | 286 | lay->addWidget( time ); time->setExclusive ( true ) ; |
286 | vcal = new QRadioButton(" vCalendar ", format ); | 287 | vcal = new QRadioButton(" vCalendar ", format ); |
287 | ical = new QRadioButton(" iCalendar ", format ); | 288 | ical = new QRadioButton(" iCalendar ", format ); |
288 | vcal->setChecked( true ); | 289 | vcal->setChecked( true ); |
289 | tz = new QRadioButton(i18n(" With timezone "), time ); | 290 | tz = new QRadioButton(i18n(" With timezone "), time ); |
290 | local = new QRadioButton(i18n(" Local time "), time ); | 291 | local = new QRadioButton(i18n(" Local time "), time ); |
291 | tz->setChecked( true ); | 292 | tz->setChecked( true ); |
292 | QPushButton * ok = new QPushButton( i18n("Beam via IR!"), this ); | 293 | QPushButton * ok = new QPushButton( i18n("Beam via IR!"), this ); |
293 | lay->addWidget( ok ); | 294 | lay->addWidget( ok ); |
294 | QPushButton * cancel = new QPushButton( i18n("Cancel"), this ); | 295 | QPushButton * cancel = new QPushButton( i18n("Cancel"), this ); |
295 | lay->addWidget( cancel ); | 296 | lay->addWidget( cancel ); |
296 | connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) ); | 297 | connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) ); |
297 | connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) ); | 298 | connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) ); |
298 | resize( 200, 200 ); | 299 | resize( 200, 200 ); |
299 | } | 300 | } |
300 | 301 | ||
301 | bool beamVcal() { return vcal->isChecked(); } | 302 | bool beamVcal() { return vcal->isChecked(); } |
302 | bool beamLocal() { return local->isChecked(); } | 303 | bool beamLocal() { return local->isChecked(); } |
303 | private: | 304 | private: |
304 | QRadioButton* vcal, *ical, *local, *tz; | 305 | QRadioButton* vcal, *ical, *local, *tz; |
305 | }; | 306 | }; |
306 | class KOCatPrefs : public QDialog | 307 | class KOCatPrefs : public QDialog |
307 | { | 308 | { |
308 | public: | 309 | public: |
309 | KOCatPrefs( QWidget *parent=0, const char *name=0 ) : | 310 | KOCatPrefs( QWidget *parent=0, const char *name=0 ) : |
310 | QDialog( parent, name, true ) | 311 | QDialog( parent, name, true ) |
311 | { | 312 | { |
312 | setCaption( i18n("Manage new Categories") ); | 313 | setCaption( i18n("Manage new Categories") ); |
313 | QVBoxLayout* lay = new QVBoxLayout( this ); | 314 | QVBoxLayout* lay = new QVBoxLayout( this ); |
314 | lay->setSpacing( 3 ); | 315 | lay->setSpacing( 3 ); |
315 | lay->setMargin( 3 ); | 316 | lay->setMargin( 3 ); |
316 | QLabel * lab = new QLabel( i18n("After importing/loading/syncing\nthere may be new categories in\nevents or todos\nwhich are not in the category list.\nPlease choose what to do:\n "), this ); | 317 | QLabel * lab = new QLabel( i18n("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>:"), this ); |
317 | lay->addWidget( lab ); | 318 | lay->addWidget( lab ); |
318 | QButtonGroup* format = new QButtonGroup( 1, Horizontal, i18n("New categories not in list:"), this ); | 319 | QButtonGroup* format = new QButtonGroup( 1, Horizontal, i18n("New categories not in list:"), this ); |
319 | lay->addWidget( format ); | 320 | lay->addWidget( format ); |
320 | format->setExclusive ( true ) ; | 321 | format->setExclusive ( true ) ; |
321 | addCatBut = new QRadioButton(i18n("Add to category list"), format ); | 322 | addCatBut = new QRadioButton(i18n("Add to category list"), format ); |
322 | new QRadioButton(i18n("Remove from Events/Todos"), format ); | 323 | new QRadioButton(i18n("Remove from Events/Todos"), format ); |
323 | addCatBut->setChecked( true ); | 324 | addCatBut->setChecked( true ); |
324 | QPushButton * ok = new QPushButton( i18n("OK"), this ); | 325 | QPushButton * ok = new QPushButton( i18n("Change category list now!"), this ); |
325 | lay->addWidget( ok ); | 326 | lay->addWidget( ok ); |
326 | QPushButton * cancel = new QPushButton( i18n("Cancel"), this ); | 327 | QPushButton * cancel = new QPushButton( i18n("Cancel"), this ); |
327 | lay->addWidget( cancel ); | 328 | lay->addWidget( cancel ); |
328 | connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) ); | 329 | connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) ); |
329 | connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) ); | 330 | connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) ); |
330 | resize( 200, 200 ); | 331 | resize( 200, 200 ); |
331 | } | 332 | } |
332 | 333 | ||
333 | bool addCat() { return addCatBut->isChecked(); } | 334 | bool addCat() { return addCatBut->isChecked(); } |
334 | private: | 335 | private: |
335 | QRadioButton* addCatBut; | 336 | QRadioButton* addCatBut; |
336 | }; | 337 | }; |
337 | 338 | ||
338 | 339 | ||
339 | 340 | ||
340 | CalendarView::CalendarView( CalendarResources *calendar, | 341 | CalendarView::CalendarView( CalendarResources *calendar, |
341 | QWidget *parent, const char *name ) | 342 | QWidget *parent, const char *name ) |
342 | : CalendarViewBase( parent, name ), | 343 | : CalendarViewBase( parent, name ), |
343 | mCalendar( calendar ), | 344 | mCalendar( calendar ), |
344 | mResourceManager( calendar->resourceManager() ) | 345 | mResourceManager( calendar->resourceManager() ) |
345 | { | 346 | { |
346 | 347 | ||
347 | mEventEditor = 0; | 348 | mEventEditor = 0; |
348 | mTodoEditor = 0; | 349 | mTodoEditor = 0; |
349 | 350 | ||
350 | init(); | 351 | init(); |
351 | } | 352 | } |
352 | 353 | ||
353 | CalendarView::CalendarView( Calendar *calendar, | 354 | CalendarView::CalendarView( Calendar *calendar, |
354 | QWidget *parent, const char *name ) | 355 | QWidget *parent, const char *name ) |
355 | : CalendarViewBase( parent, name ), | 356 | : CalendarViewBase( parent, name ), |
356 | mCalendar( calendar ), | 357 | mCalendar( calendar ), |
357 | mResourceManager( 0 ) | 358 | mResourceManager( 0 ) |
358 | { | 359 | { |
359 | 360 | ||
360 | mEventEditor = 0; | 361 | mEventEditor = 0; |
361 | mTodoEditor = 0; | 362 | mTodoEditor = 0; |
362 | init(); | 363 | init(); |
363 | } | 364 | } |
364 | 365 | ||
365 | void CalendarView::init() | 366 | void CalendarView::init() |
366 | { | 367 | { |
367 | mNextAlarmDateTime = QDateTime::currentDateTime(); | 368 | mNextAlarmDateTime = QDateTime::currentDateTime(); |
368 | setFocusPolicy ( NoFocus ); | 369 | setFocusPolicy ( NoFocus ); |
369 | mViewerCallerIsSearchDialog = false; | 370 | mViewerCallerIsSearchDialog = false; |
370 | mBlockShowDates = false; | 371 | mBlockShowDates = false; |
371 | 372 | ||
372 | mDatePickerMode = 0; | 373 | mDatePickerMode = 0; |
373 | mCurrentSyncDevice = ""; | 374 | mCurrentSyncDevice = ""; |
374 | mViewManager = new KOViewManager( this ); | 375 | mViewManager = new KOViewManager( this ); |
375 | mDialogManager = new KODialogManager( this ); | 376 | mDialogManager = new KODialogManager( this ); |
376 | mEventViewerDialog = 0; | 377 | mEventViewerDialog = 0; |
377 | mModified = false; | 378 | mModified = false; |
378 | mReadOnly = false; | 379 | mReadOnly = false; |
379 | mSelectedIncidence = 0; | 380 | mSelectedIncidence = 0; |
380 | mCalPrinter = 0; | 381 | mCalPrinter = 0; |
381 | mFilters.setAutoDelete(true); | 382 | mFilters.setAutoDelete(true); |
382 | 383 | ||
383 | mCalendar->registerObserver( this ); | 384 | mCalendar->registerObserver( this ); |
384 | // TODO: Make sure that view is updated, when calendar is changed. | 385 | // TODO: Make sure that view is updated, when calendar is changed. |
385 | 386 | ||
386 | mStorage = new FileStorage( mCalendar ); | 387 | mStorage = new FileStorage( mCalendar ); |
387 | mNavigator = new DateNavigator( this, "datevav", mViewManager ); | 388 | mNavigator = new DateNavigator( this, "datevav", mViewManager ); |
388 | 389 | ||
389 | QBoxLayout *topLayout = (QBoxLayout*)layout(); | 390 | QBoxLayout *topLayout = (QBoxLayout*)layout(); |
390 | #ifndef KORG_NOSPLITTER | 391 | #ifndef KORG_NOSPLITTER |
391 | // create the main layout frames. | 392 | // create the main layout frames. |
392 | mPanner = new QSplitter(QSplitter::Horizontal,this,"CalendarView::Panner"); | 393 | mPanner = new QSplitter(QSplitter::Horizontal,this,"CalendarView::Panner"); |
393 | topLayout->addWidget(mPanner); | 394 | topLayout->addWidget(mPanner); |
394 | 395 | ||
395 | mLeftSplitter = new QSplitter(QSplitter::Vertical,mPanner, | 396 | mLeftSplitter = new QSplitter(QSplitter::Vertical,mPanner, |
396 | "CalendarView::LeftFrame"); | 397 | "CalendarView::LeftFrame"); |
397 | mPanner->setResizeMode(mLeftSplitter,QSplitter::KeepSize); | 398 | mPanner->setResizeMode(mLeftSplitter,QSplitter::KeepSize); |
398 | 399 | ||
399 | mDateNavigator = new DateNavigatorContainer( mLeftSplitter, | 400 | mDateNavigator = new DateNavigatorContainer( mLeftSplitter, |
400 | "CalendarView::DateNavigator" ); | 401 | "CalendarView::DateNavigator" ); |
401 | 402 | ||
402 | mLeftSplitter->setResizeMode(mDateNavigator,QSplitter::KeepSize); | 403 | mLeftSplitter->setResizeMode(mDateNavigator,QSplitter::KeepSize); |
403 | mTodoList = new KOTodoView(mCalendar, mLeftSplitter, "todolist_small2"); | 404 | mTodoList = new KOTodoView(mCalendar, mLeftSplitter, "todolist_small2"); |
404 | mTodoList->setNavigator( mNavigator ); | 405 | mTodoList->setNavigator( mNavigator ); |
405 | mFilterView = new KOFilterView(&mFilters,mLeftSplitter,"CalendarView::FilterView"); | 406 | mFilterView = new KOFilterView(&mFilters,mLeftSplitter,"CalendarView::FilterView"); |
406 | 407 | ||
407 | #ifdef KORG_NORESOURCEVIEW | 408 | #ifdef KORG_NORESOURCEVIEW |
408 | mResourceView = 0; | 409 | mResourceView = 0; |
409 | #else | 410 | #else |
410 | if ( mResourceManager ) { | 411 | if ( mResourceManager ) { |
411 | mResourceView = new ResourceView( mResourceManager, mLeftSplitter ); | 412 | mResourceView = new ResourceView( mResourceManager, mLeftSplitter ); |
412 | mResourceView->updateView(); | 413 | mResourceView->updateView(); |
413 | connect( mResourceView, SIGNAL( resourcesChanged() ), | 414 | connect( mResourceView, SIGNAL( resourcesChanged() ), |
414 | SLOT( updateView() ) ); | 415 | SLOT( updateView() ) ); |
415 | } else { | 416 | } else { |
416 | mResourceView = 0; | 417 | mResourceView = 0; |
417 | } | 418 | } |
418 | #endif | 419 | #endif |
419 | QWidget *rightBox = new QWidget( mPanner ); | 420 | QWidget *rightBox = new QWidget( mPanner ); |
420 | QBoxLayout *rightLayout = new QVBoxLayout( rightBox ); | 421 | QBoxLayout *rightLayout = new QVBoxLayout( rightBox ); |
421 | 422 | ||
422 | mRightFrame = new QWidgetStack( rightBox ); | 423 | mRightFrame = new QWidgetStack( rightBox ); |
423 | rightLayout->addWidget( mRightFrame, 1 ); | 424 | rightLayout->addWidget( mRightFrame, 1 ); |
424 | 425 | ||
425 | mLeftFrame = mLeftSplitter; | 426 | mLeftFrame = mLeftSplitter; |
426 | #else | 427 | #else |
427 | //QWidget *mainBox = new QWidget( this ); | 428 | //QWidget *mainBox = new QWidget( this ); |
428 | //QWidget *leftFrame = new QWidget( mainBox ); | 429 | //QWidget *leftFrame = new QWidget( mainBox ); |
429 | //QBoxLayout * mainBoxLayout; | 430 | //QBoxLayout * mainBoxLayout; |
430 | if ( KOPrefs::instance()->mVerticalScreen ) { | 431 | if ( KOPrefs::instance()->mVerticalScreen ) { |
431 | //mainBoxLayout = new QVBoxLayout(mainBox); | 432 | //mainBoxLayout = new QVBoxLayout(mainBox); |
432 | //leftFrameLayout = new QHBoxLayout(leftFrame ); | 433 | //leftFrameLayout = new QHBoxLayout(leftFrame ); |
433 | mMainFrame = new KDGanttMinimizeSplitter( Qt::Vertical, this ); | 434 | mMainFrame = new KDGanttMinimizeSplitter( Qt::Vertical, this ); |
434 | mMainFrame->setMinimizeDirection ( KDGanttMinimizeSplitter::Up ); | 435 | mMainFrame->setMinimizeDirection ( KDGanttMinimizeSplitter::Up ); |
435 | mLeftFrame = new KDGanttMinimizeSplitter( Qt::Horizontal, mMainFrame);; | 436 | mLeftFrame = new KDGanttMinimizeSplitter( Qt::Horizontal, mMainFrame);; |
436 | mLeftFrame->setMinimizeDirection ( KDGanttMinimizeSplitter::Right ); | 437 | mLeftFrame->setMinimizeDirection ( KDGanttMinimizeSplitter::Right ); |
437 | } else { | 438 | } else { |
438 | //mainBoxLayout = new QHBoxLayout(mainBox); | 439 | //mainBoxLayout = new QHBoxLayout(mainBox); |
439 | //leftFrameLayout = new QVBoxLayout(leftFrame ); | 440 | //leftFrameLayout = new QVBoxLayout(leftFrame ); |
440 | mMainFrame = new KDGanttMinimizeSplitter( Qt::Horizontal, this); | 441 | mMainFrame = new KDGanttMinimizeSplitter( Qt::Horizontal, this); |
441 | mMainFrame->setMinimizeDirection ( KDGanttMinimizeSplitter::Left); | 442 | mMainFrame->setMinimizeDirection ( KDGanttMinimizeSplitter::Left); |
442 | mLeftFrame = new KDGanttMinimizeSplitter( Qt::Vertical, mMainFrame); | 443 | mLeftFrame = new KDGanttMinimizeSplitter( Qt::Vertical, mMainFrame); |
443 | mLeftFrame->setMinimizeDirection ( KDGanttMinimizeSplitter::Up ); | 444 | mLeftFrame->setMinimizeDirection ( KDGanttMinimizeSplitter::Up ); |
444 | } | 445 | } |
445 | mMainFrame->setSizePolicy( QSizePolicy (QSizePolicy::Expanding,QSizePolicy::Expanding) ); | 446 | mMainFrame->setSizePolicy( QSizePolicy (QSizePolicy::Expanding,QSizePolicy::Expanding) ); |
446 | //QBoxLayout * leftFrameLayout; | 447 | //QBoxLayout * leftFrameLayout; |
447 | topLayout->addWidget( mMainFrame ); | 448 | topLayout->addWidget( mMainFrame ); |
448 | #ifdef DESKTOP_VERSION | 449 | #ifdef DESKTOP_VERSION |
449 | mDateScrollBar = new QScrollBar ( 0, 364, 1,30, 200,QScrollBar::Horizontal, this ); | 450 | mDateScrollBar = new QScrollBar ( 0, 364, 1,30, 200,QScrollBar::Horizontal, this ); |
450 | topLayout->addWidget( mDateScrollBar ); | 451 | topLayout->addWidget( mDateScrollBar ); |
451 | connect( mDateScrollBar, SIGNAL( valueChanged ( int ) ),this, SLOT( scrollBarValue( int )) ); | 452 | connect( mDateScrollBar, SIGNAL( valueChanged ( int ) ),this, SLOT( scrollBarValue( int )) ); |
452 | if ( QApplication::desktop()->width() < 800 ) | 453 | if ( QApplication::desktop()->width() < 800 ) |
@@ -2693,256 +2694,262 @@ void CalendarView::edit_global_options() | |||
2693 | QString tz = KPimGlobalPrefs::instance()->mTimeZoneId; | 2694 | QString tz = KPimGlobalPrefs::instance()->mTimeZoneId; |
2694 | emit save(); | 2695 | emit save(); |
2695 | emit saveStopTimer(); | 2696 | emit saveStopTimer(); |
2696 | mDialogManager->showGlobalOptionsDialog(); | 2697 | mDialogManager->showGlobalOptionsDialog(); |
2697 | if ( tz != KPimGlobalPrefs::instance()->mTimeZoneId) { | 2698 | if ( tz != KPimGlobalPrefs::instance()->mTimeZoneId) { |
2698 | emit saveStopTimer(); | 2699 | emit saveStopTimer(); |
2699 | if ( KMessageBox::Cancel == KMessageBox::warningContinueCancel(this, i18n("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!"), | 2700 | if ( KMessageBox::Cancel == KMessageBox::warningContinueCancel(this, i18n("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!"), |
2700 | i18n("Timezone settings"),i18n("Reload"))) { | 2701 | i18n("Timezone settings"),i18n("Reload"))) { |
2701 | qDebug("KO: TZ reload cancelled "); | 2702 | qDebug("KO: TZ reload cancelled "); |
2702 | mCalendar->setTimeZoneId(KPimGlobalPrefs::instance()->mTimeZoneId); | 2703 | mCalendar->setTimeZoneId(KPimGlobalPrefs::instance()->mTimeZoneId); |
2703 | return; | 2704 | return; |
2704 | } | 2705 | } |
2705 | qDebug("KO: Timezone change "); | 2706 | qDebug("KO: Timezone change "); |
2706 | loadCalendars(); | 2707 | loadCalendars(); |
2707 | setModified(true); | 2708 | setModified(true); |
2708 | } | 2709 | } |
2709 | else | 2710 | else |
2710 | qDebug("KO: No tz change "); | 2711 | qDebug("KO: No tz change "); |
2711 | } | 2712 | } |
2712 | void CalendarView::edit_options() | 2713 | void CalendarView::edit_options() |
2713 | { | 2714 | { |
2714 | mDialogManager->showOptionsDialog(); | 2715 | mDialogManager->showOptionsDialog(); |
2715 | } | 2716 | } |
2716 | 2717 | ||
2717 | 2718 | ||
2718 | void CalendarView::slotSelectPickerDate( QDate d) | 2719 | void CalendarView::slotSelectPickerDate( QDate d) |
2719 | { | 2720 | { |
2720 | mDateFrame->hide(); | 2721 | mDateFrame->hide(); |
2721 | if ( mDatePickerMode == 1 ) { | 2722 | if ( mDatePickerMode == 1 ) { |
2722 | mNavigator->slotDaySelect( d ); | 2723 | mNavigator->slotDaySelect( d ); |
2723 | } else if ( mDatePickerMode == 2 ) { | 2724 | } else if ( mDatePickerMode == 2 ) { |
2724 | if ( mMoveIncidence->typeID() == todoID ) { | 2725 | if ( mMoveIncidence->typeID() == todoID ) { |
2725 | Todo * to = (Todo *) mMoveIncidence; | 2726 | Todo * to = (Todo *) mMoveIncidence; |
2726 | QTime tim; | 2727 | QTime tim; |
2727 | int len = 0; | 2728 | int len = 0; |
2728 | if ( to->hasStartDate() && to->hasDueDate() ) | 2729 | if ( to->hasStartDate() && to->hasDueDate() ) |
2729 | len = to->dtStart().secsTo( to->dtDue()); | 2730 | len = to->dtStart().secsTo( to->dtDue()); |
2730 | if ( to->hasDueDate() ) | 2731 | if ( to->hasDueDate() ) |
2731 | tim = to->dtDue().time(); | 2732 | tim = to->dtDue().time(); |
2732 | else { | 2733 | else { |
2733 | tim = QTime ( 0,0,0 ); | 2734 | tim = QTime ( 0,0,0 ); |
2734 | to->setFloats( true ); | 2735 | to->setFloats( true ); |
2735 | to->setHasDueDate( true ); | 2736 | to->setHasDueDate( true ); |
2736 | } | 2737 | } |
2737 | QDateTime dt ( d,tim ); | 2738 | QDateTime dt ( d,tim ); |
2738 | to->setDtDue( dt ); | 2739 | to->setDtDue( dt ); |
2739 | 2740 | ||
2740 | if ( to->hasStartDate() ) { | 2741 | if ( to->hasStartDate() ) { |
2741 | if ( len>0 ) | 2742 | if ( len>0 ) |
2742 | to->setDtStart(to->dtDue().addSecs( -len )); | 2743 | to->setDtStart(to->dtDue().addSecs( -len )); |
2743 | else | 2744 | else |
2744 | if (to->dtStart() > to->dtDue() ) | 2745 | if (to->dtStart() > to->dtDue() ) |
2745 | to->setDtStart(to->dtDue().addDays( -3 )); | 2746 | to->setDtStart(to->dtDue().addDays( -3 )); |
2746 | } | 2747 | } |
2747 | 2748 | ||
2748 | todoChanged( to ); | 2749 | todoChanged( to ); |
2749 | } else { | 2750 | } else { |
2750 | if ( mMoveIncidence->doesRecur() ) { | 2751 | if ( mMoveIncidence->doesRecur() ) { |
2751 | #if 0 | 2752 | #if 0 |
2752 | // PENDING implement this | 2753 | // PENDING implement this |
2753 | Incidence* newInc = mMoveIncidence->recreateCloneException( mMoveIncidenceOldDate ); | 2754 | Incidence* newInc = mMoveIncidence->recreateCloneException( mMoveIncidenceOldDate ); |
2754 | mCalendar()->addIncidence( newInc ); | 2755 | mCalendar()->addIncidence( newInc ); |
2755 | if ( mMoveIncidence->typeID() == todoID ) | 2756 | if ( mMoveIncidence->typeID() == todoID ) |
2756 | emit todoMoved((Todo*)mMoveIncidence, KOGlobals::EVENTEDITED ); | 2757 | emit todoMoved((Todo*)mMoveIncidence, KOGlobals::EVENTEDITED ); |
2757 | else | 2758 | else |
2758 | emit incidenceChanged(mMoveIncidence, KOGlobals::EVENTEDITED); | 2759 | emit incidenceChanged(mMoveIncidence, KOGlobals::EVENTEDITED); |
2759 | mMoveIncidence = newInc; | 2760 | mMoveIncidence = newInc; |
2760 | 2761 | ||
2761 | #endif | 2762 | #endif |
2762 | } | 2763 | } |
2763 | QTime tim = mMoveIncidence->dtStart().time(); | 2764 | QTime tim = mMoveIncidence->dtStart().time(); |
2764 | int secs = mMoveIncidence->dtStart().secsTo( mMoveIncidence->dtEnd()); | 2765 | int secs = mMoveIncidence->dtStart().secsTo( mMoveIncidence->dtEnd()); |
2765 | QDateTime dt ( d,tim ); | 2766 | QDateTime dt ( d,tim ); |
2766 | mMoveIncidence->setDtStart( dt ); | 2767 | mMoveIncidence->setDtStart( dt ); |
2767 | ((Event*)mMoveIncidence)->setDtEnd( dt.addSecs( secs ) ); | 2768 | ((Event*)mMoveIncidence)->setDtEnd( dt.addSecs( secs ) ); |
2768 | changeEventDisplay((Event*)mMoveIncidence, KOGlobals::EVENTEDITED); | 2769 | changeEventDisplay((Event*)mMoveIncidence, KOGlobals::EVENTEDITED); |
2769 | } | 2770 | } |
2770 | 2771 | ||
2771 | mMoveIncidence->setRevision( mMoveIncidence->revision()+1 ); | 2772 | mMoveIncidence->setRevision( mMoveIncidence->revision()+1 ); |
2772 | } | 2773 | } |
2773 | } | 2774 | } |
2774 | 2775 | ||
2775 | void CalendarView::removeCategories() | 2776 | void CalendarView::removeCategories() |
2776 | { | 2777 | { |
2777 | QPtrList<Incidence> incList = mCalendar->rawIncidences(); | 2778 | QPtrList<Incidence> incList = mCalendar->rawIncidences(); |
2778 | QStringList catList = KOPrefs::instance()->mCustomCategories; | 2779 | QStringList catList = KOPrefs::instance()->mCustomCategories; |
2779 | QStringList catIncList; | 2780 | QStringList catIncList; |
2780 | QStringList newCatList; | 2781 | QStringList newCatList; |
2781 | Incidence* inc = incList.first(); | 2782 | Incidence* inc = incList.first(); |
2782 | int i; | 2783 | int i; |
2783 | int count = 0; | 2784 | int count = 0; |
2784 | while ( inc ) { | 2785 | while ( inc ) { |
2785 | newCatList.clear(); | 2786 | newCatList.clear(); |
2786 | catIncList = inc->categories() ; | 2787 | catIncList = inc->categories() ; |
2787 | for( i = 0; i< catIncList.count(); ++i ) { | 2788 | for( i = 0; i< catIncList.count(); ++i ) { |
2788 | if ( catList.contains (catIncList[i])) | 2789 | if ( catList.contains (catIncList[i])) |
2789 | newCatList.append( catIncList[i] ); | 2790 | newCatList.append( catIncList[i] ); |
2790 | } | 2791 | } |
2791 | newCatList.sort(); | 2792 | newCatList.sort(); |
2792 | inc->setCategories( newCatList.join(",") ); | 2793 | inc->setCategories( newCatList.join(",") ); |
2793 | inc = incList.next(); | 2794 | inc = incList.next(); |
2794 | } | 2795 | } |
2795 | } | 2796 | } |
2796 | 2797 | ||
2797 | int CalendarView::addCategories() | 2798 | int CalendarView::addCategories() |
2798 | { | 2799 | { |
2799 | QPtrList<Incidence> incList = mCalendar->rawIncidences(); | 2800 | QPtrList<Incidence> incList = mCalendar->rawIncidences(); |
2800 | QStringList catList = KOPrefs::instance()->mCustomCategories; | 2801 | QStringList catList = KOPrefs::instance()->mCustomCategories; |
2801 | QStringList catIncList; | 2802 | QStringList catIncList; |
2802 | Incidence* inc = incList.first(); | 2803 | Incidence* inc = incList.first(); |
2803 | int i; | 2804 | int i; |
2804 | int count = 0; | 2805 | int count = 0; |
2805 | while ( inc ) { | 2806 | while ( inc ) { |
2806 | catIncList = inc->categories() ; | 2807 | catIncList = inc->categories() ; |
2807 | for( i = 0; i< catIncList.count(); ++i ) { | 2808 | for( i = 0; i< catIncList.count(); ++i ) { |
2808 | if ( !catList.contains (catIncList[i])) { | 2809 | if ( !catList.contains (catIncList[i])) { |
2809 | catList.append( catIncList[i] ); | 2810 | catList.append( catIncList[i] ); |
2810 | //qDebug("add cat %s ", catIncList[i].latin1()); | 2811 | //qDebug("add cat %s ", catIncList[i].latin1()); |
2811 | ++count; | 2812 | ++count; |
2812 | } | 2813 | } |
2813 | } | 2814 | } |
2814 | inc = incList.next(); | 2815 | inc = incList.next(); |
2815 | } | 2816 | } |
2816 | catList.sort(); | 2817 | catList.sort(); |
2817 | KOPrefs::instance()->mCustomCategories = catList; | 2818 | KOPrefs::instance()->mCustomCategories = catList; |
2818 | return count; | 2819 | return count; |
2819 | } | 2820 | } |
2820 | 2821 | ||
2822 | void CalendarView::editCategories() | ||
2823 | { | ||
2824 | qDebug("CalendarView::editCategories() "); | ||
2825 | KPIM::CategoryEditDialog ced (KOPrefs::instance(),this ); | ||
2826 | ced.exec(); | ||
2827 | } | ||
2821 | void CalendarView::manageCategories() | 2828 | void CalendarView::manageCategories() |
2822 | { | 2829 | { |
2823 | KOCatPrefs* cp = new KOCatPrefs(); | 2830 | KOCatPrefs* cp = new KOCatPrefs(); |
2824 | cp->show(); | 2831 | cp->show(); |
2825 | int w =cp->sizeHint().width() ; | 2832 | int w =cp->sizeHint().width() ; |
2826 | int h = cp->sizeHint().height() ; | 2833 | int h = cp->sizeHint().height() ; |
2827 | int dw = QApplication::desktop()->width(); | 2834 | int dw = QApplication::desktop()->width(); |
2828 | int dh = QApplication::desktop()->height(); | 2835 | int dh = QApplication::desktop()->height(); |
2829 | cp->setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); | 2836 | cp->setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); |
2830 | if ( !cp->exec() ) { | 2837 | if ( !cp->exec() ) { |
2831 | delete cp; | 2838 | delete cp; |
2832 | return; | 2839 | return; |
2833 | } | 2840 | } |
2834 | int count = 0; | 2841 | int count = 0; |
2835 | if ( cp->addCat() ) { | 2842 | if ( cp->addCat() ) { |
2836 | count = addCategories(); | 2843 | count = addCategories(); |
2837 | if ( count ) { | 2844 | if ( count ) { |
2838 | topLevelWidget()->setCaption(QString::number( count )+ i18n(" Categories added to list! ")); | 2845 | topLevelWidget()->setCaption(QString::number( count )+ i18n(" Categories added to list! ")); |
2839 | writeSettings(); | 2846 | writeSettings(); |
2840 | } else | 2847 | } else |
2841 | topLevelWidget()->setCaption(QString::number( 0 )+ i18n(" Categories added to list! ")); | 2848 | topLevelWidget()->setCaption(QString::number( 0 )+ i18n(" Categories added to list! ")); |
2842 | } else { | 2849 | } else { |
2843 | removeCategories(); | 2850 | removeCategories(); |
2844 | updateView(); | 2851 | updateView(); |
2845 | } | 2852 | } |
2846 | delete cp; | 2853 | delete cp; |
2847 | } | 2854 | } |
2848 | 2855 | ||
2849 | void CalendarView::beamIncidence(Incidence * Inc) | 2856 | void CalendarView::beamIncidence(Incidence * Inc) |
2850 | { | 2857 | { |
2851 | QPtrList<Incidence> delSel ; | 2858 | QPtrList<Incidence> delSel ; |
2852 | delSel.append(Inc); | 2859 | delSel.append(Inc); |
2853 | beamIncidenceList( delSel ); | 2860 | beamIncidenceList( delSel ); |
2854 | } | 2861 | } |
2855 | void CalendarView::beamCalendar() | 2862 | void CalendarView::beamCalendar() |
2856 | { | 2863 | { |
2857 | QPtrList<Incidence> delSel = mCalendar->rawIncidences(); | 2864 | QPtrList<Incidence> delSel = mCalendar->rawIncidences(); |
2858 | //qDebug("beamCalendar() "); | 2865 | //qDebug("beamCalendar() "); |
2859 | beamIncidenceList( delSel ); | 2866 | beamIncidenceList( delSel ); |
2860 | } | 2867 | } |
2861 | void CalendarView::beamFilteredCalendar() | 2868 | void CalendarView::beamFilteredCalendar() |
2862 | { | 2869 | { |
2863 | QPtrList<Incidence> delSel = mCalendar->incidences(); | 2870 | QPtrList<Incidence> delSel = mCalendar->incidences(); |
2864 | //qDebug("beamFilteredCalendar() "); | 2871 | //qDebug("beamFilteredCalendar() "); |
2865 | beamIncidenceList( delSel ); | 2872 | beamIncidenceList( delSel ); |
2866 | } | 2873 | } |
2867 | void CalendarView::beamIncidenceList(QPtrList<Incidence> delSel ) | 2874 | void CalendarView::beamIncidenceList(QPtrList<Incidence> delSel ) |
2868 | { | 2875 | { |
2869 | 2876 | ||
2870 | KOBeamPrefs beamDialog; | 2877 | KOBeamPrefs beamDialog; |
2871 | if ( beamDialog.exec () == QDialog::Rejected ) | 2878 | if ( beamDialog.exec () == QDialog::Rejected ) |
2872 | return; | 2879 | return; |
2873 | #ifdef DESKTOP_VERSION | 2880 | #ifdef DESKTOP_VERSION |
2874 | QString fn = locateLocal( "tmp", "kopibeamfile" ); | 2881 | QString fn = locateLocal( "tmp", "kopibeamfile" ); |
2875 | #else | 2882 | #else |
2876 | QString fn = "/tmp/kopibeamfile"; | 2883 | QString fn = "/tmp/kopibeamfile"; |
2877 | #endif | 2884 | #endif |
2878 | QString mes; | 2885 | QString mes; |
2879 | bool createbup = true; | 2886 | bool createbup = true; |
2880 | if ( createbup ) { | 2887 | if ( createbup ) { |
2881 | QString description = "\n"; | 2888 | QString description = "\n"; |
2882 | CalendarLocal* cal = new CalendarLocal(); | 2889 | CalendarLocal* cal = new CalendarLocal(); |
2883 | if ( beamDialog.beamLocal() ) | 2890 | if ( beamDialog.beamLocal() ) |
2884 | cal->setLocalTime(); | 2891 | cal->setLocalTime(); |
2885 | else | 2892 | else |
2886 | cal->setTimeZoneId(KPimGlobalPrefs::instance()->mTimeZoneId); | 2893 | cal->setTimeZoneId(KPimGlobalPrefs::instance()->mTimeZoneId); |
2887 | Incidence *incidence = delSel.first(); | 2894 | Incidence *incidence = delSel.first(); |
2888 | bool addText = false; | 2895 | bool addText = false; |
2889 | if ( delSel.count() < 10 ) | 2896 | if ( delSel.count() < 10 ) |
2890 | addText = true; | 2897 | addText = true; |
2891 | else { | 2898 | else { |
2892 | description.sprintf(i18n(" %d items?"),delSel.count() ); | 2899 | description.sprintf(i18n(" %d items?"),delSel.count() ); |
2893 | } | 2900 | } |
2894 | while ( incidence ) { | 2901 | while ( incidence ) { |
2895 | Incidence *in = incidence->clone(); | 2902 | Incidence *in = incidence->clone(); |
2896 | if ( ! in->summary().isEmpty() ) { | 2903 | if ( ! in->summary().isEmpty() ) { |
2897 | in->setDescription(""); | 2904 | in->setDescription(""); |
2898 | } else { | 2905 | } else { |
2899 | in->setSummary( in->description().left(20)); | 2906 | in->setSummary( in->description().left(20)); |
2900 | in->setDescription(""); | 2907 | in->setDescription(""); |
2901 | } | 2908 | } |
2902 | if ( addText ) | 2909 | if ( addText ) |
2903 | description += in->summary() + "\n"; | 2910 | description += in->summary() + "\n"; |
2904 | cal->addIncidence( in ); | 2911 | cal->addIncidence( in ); |
2905 | incidence = delSel.next(); | 2912 | incidence = delSel.next(); |
2906 | } | 2913 | } |
2907 | if ( beamDialog.beamVcal() ) { | 2914 | if ( beamDialog.beamVcal() ) { |
2908 | fn += ".vcs"; | 2915 | fn += ".vcs"; |
2909 | FileStorage storage( cal, fn, new VCalFormat ); | 2916 | FileStorage storage( cal, fn, new VCalFormat ); |
2910 | storage.save(); | 2917 | storage.save(); |
2911 | } else { | 2918 | } else { |
2912 | fn += ".ics"; | 2919 | fn += ".ics"; |
2913 | FileStorage storage( cal, fn, new ICalFormat( ) ); | 2920 | FileStorage storage( cal, fn, new ICalFormat( ) ); |
2914 | storage.save(); | 2921 | storage.save(); |
2915 | } | 2922 | } |
2916 | delete cal; | 2923 | delete cal; |
2917 | mes = i18n("KO/Pi: Ready for beaming"); | 2924 | mes = i18n("KO/Pi: Ready for beaming"); |
2918 | topLevelWidget()->setCaption(mes); | 2925 | topLevelWidget()->setCaption(mes); |
2919 | KApplication::convert2latin1( fn ); | 2926 | KApplication::convert2latin1( fn ); |
2920 | #ifndef DESKTOP_VERSION | 2927 | #ifndef DESKTOP_VERSION |
2921 | Ir *ir = new Ir( this ); | 2928 | Ir *ir = new Ir( this ); |
2922 | connect( ir, SIGNAL( done( Ir * ) ), this, SLOT( beamDone( Ir * ) ) ); | 2929 | connect( ir, SIGNAL( done( Ir * ) ), this, SLOT( beamDone( Ir * ) ) ); |
2923 | ir->send( fn, description, "text/x-vCalendar" ); | 2930 | ir->send( fn, description, "text/x-vCalendar" ); |
2924 | #endif | 2931 | #endif |
2925 | } | 2932 | } |
2926 | } | 2933 | } |
2927 | void CalendarView::beamDone( Ir *ir ) | 2934 | void CalendarView::beamDone( Ir *ir ) |
2928 | { | 2935 | { |
2929 | #ifndef DESKTOP_VERSION | 2936 | #ifndef DESKTOP_VERSION |
2930 | delete ir; | 2937 | delete ir; |
2931 | #endif | 2938 | #endif |
2932 | topLevelWidget()->setCaption( i18n("KO/Pi: Beaming done.") ); | 2939 | topLevelWidget()->setCaption( i18n("KO/Pi: Beaming done.") ); |
2933 | topLevelWidget()->raise(); | 2940 | topLevelWidget()->raise(); |
2934 | } | 2941 | } |
2935 | 2942 | ||
2936 | void CalendarView::moveIncidence(Incidence * inc ) | 2943 | void CalendarView::moveIncidence(Incidence * inc ) |
2937 | { | 2944 | { |
2938 | if ( !inc ) return; | 2945 | if ( !inc ) return; |
2939 | showDatePickerPopup(); | 2946 | showDatePickerPopup(); |
2940 | mDatePickerMode = 2; | 2947 | mDatePickerMode = 2; |
2941 | mMoveIncidence = inc ; | 2948 | mMoveIncidence = inc ; |
2942 | QDate da; | 2949 | QDate da; |
2943 | if ( mMoveIncidence->typeID() == todoID ) { | 2950 | if ( mMoveIncidence->typeID() == todoID ) { |
2944 | Todo * to = (Todo *) mMoveIncidence; | 2951 | Todo * to = (Todo *) mMoveIncidence; |
2945 | if ( to->hasDueDate() ) | 2952 | if ( to->hasDueDate() ) |
2946 | da = to->dtDue().date(); | 2953 | da = to->dtDue().date(); |
2947 | else | 2954 | else |
2948 | da = QDate::currentDate(); | 2955 | da = QDate::currentDate(); |
diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h index f7e5366..3323a98 100644 --- a/korganizer/calendarview.h +++ b/korganizer/calendarview.h | |||
@@ -360,256 +360,257 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser | |||
360 | void edit_options(); | 360 | void edit_options(); |
361 | void edit_global_options(); | 361 | void edit_global_options(); |
362 | /** | 362 | /** |
363 | Functions for printing, previewing a print, and setting up printing | 363 | Functions for printing, previewing a print, and setting up printing |
364 | parameters. | 364 | parameters. |
365 | */ | 365 | */ |
366 | void print(); | 366 | void print(); |
367 | void printSetup(); | 367 | void printSetup(); |
368 | void printPreview(); | 368 | void printPreview(); |
369 | 369 | ||
370 | /** Export as iCalendar file */ | 370 | /** Export as iCalendar file */ |
371 | void exportICalendar(); | 371 | void exportICalendar(); |
372 | 372 | ||
373 | /** Export as vCalendar file */ | 373 | /** Export as vCalendar file */ |
374 | bool exportVCalendar( QString fn); | 374 | bool exportVCalendar( QString fn); |
375 | 375 | ||
376 | /** pop up a dialog to show an existing appointment. */ | 376 | /** pop up a dialog to show an existing appointment. */ |
377 | void appointment_show(); | 377 | void appointment_show(); |
378 | /** | 378 | /** |
379 | * pop up an Appointment Dialog to edit an existing appointment.Get | 379 | * pop up an Appointment Dialog to edit an existing appointment.Get |
380 | * information on the appointment from the list of unique IDs that is | 380 | * information on the appointment from the list of unique IDs that is |
381 | * currently in the View, called currIds. | 381 | * currently in the View, called currIds. |
382 | */ | 382 | */ |
383 | void appointment_edit(); | 383 | void appointment_edit(); |
384 | /** | 384 | /** |
385 | * pop up dialog confirming deletion of currently selected event in the | 385 | * pop up dialog confirming deletion of currently selected event in the |
386 | * View. | 386 | * View. |
387 | */ | 387 | */ |
388 | void appointment_delete(); | 388 | void appointment_delete(); |
389 | 389 | ||
390 | /** mails the currently selected event to a particular user as a vCalendar | 390 | /** mails the currently selected event to a particular user as a vCalendar |
391 | attachment. */ | 391 | attachment. */ |
392 | void action_mail(); | 392 | void action_mail(); |
393 | 393 | ||
394 | /* frees a subtodo from it's relation */ | 394 | /* frees a subtodo from it's relation */ |
395 | void todo_unsub( Todo * ); | 395 | void todo_unsub( Todo * ); |
396 | void todo_resub( Todo * parent, Todo * sub ); | 396 | void todo_resub( Todo * parent, Todo * sub ); |
397 | 397 | ||
398 | /** Take ownership of selected event. */ | 398 | /** Take ownership of selected event. */ |
399 | void takeOverEvent(); | 399 | void takeOverEvent(); |
400 | 400 | ||
401 | /** Take ownership of all events in calendar. */ | 401 | /** Take ownership of all events in calendar. */ |
402 | void takeOverCalendar(); | 402 | void takeOverCalendar(); |
403 | 403 | ||
404 | /** query whether or not the calendar is "dirty". */ | 404 | /** query whether or not the calendar is "dirty". */ |
405 | bool isModified(); | 405 | bool isModified(); |
406 | /** set the state of calendar. Modified means "dirty", i.e. needing a save. */ | 406 | /** set the state of calendar. Modified means "dirty", i.e. needing a save. */ |
407 | void setModified(bool modified=true); | 407 | void setModified(bool modified=true); |
408 | 408 | ||
409 | /** query if the calendar is read-only. */ | 409 | /** query if the calendar is read-only. */ |
410 | bool isReadOnly(); | 410 | bool isReadOnly(); |
411 | /** set state of calendar to read-only */ | 411 | /** set state of calendar to read-only */ |
412 | void setReadOnly(bool readOnly=true); | 412 | void setReadOnly(bool readOnly=true); |
413 | 413 | ||
414 | void eventUpdated(Incidence *); | 414 | void eventUpdated(Incidence *); |
415 | 415 | ||
416 | /* iTIP scheduling actions */ | 416 | /* iTIP scheduling actions */ |
417 | void schedule_publish(Incidence *incidence = 0); | 417 | void schedule_publish(Incidence *incidence = 0); |
418 | void schedule_request(Incidence *incidence = 0); | 418 | void schedule_request(Incidence *incidence = 0); |
419 | void schedule_refresh(Incidence *incidence = 0); | 419 | void schedule_refresh(Incidence *incidence = 0); |
420 | void schedule_cancel(Incidence *incidence = 0); | 420 | void schedule_cancel(Incidence *incidence = 0); |
421 | void schedule_add(Incidence *incidence = 0); | 421 | void schedule_add(Incidence *incidence = 0); |
422 | void schedule_reply(Incidence *incidence = 0); | 422 | void schedule_reply(Incidence *incidence = 0); |
423 | void schedule_counter(Incidence *incidence = 0); | 423 | void schedule_counter(Incidence *incidence = 0); |
424 | void schedule_declinecounter(Incidence *incidence = 0); | 424 | void schedule_declinecounter(Incidence *incidence = 0); |
425 | void schedule_publish_freebusy(int daysToPublish = 30); | 425 | void schedule_publish_freebusy(int daysToPublish = 30); |
426 | 426 | ||
427 | void openAddressbook(); | 427 | void openAddressbook(); |
428 | 428 | ||
429 | void editFilters(); | 429 | void editFilters(); |
430 | void toggleFilerEnabled(); | 430 | void toggleFilerEnabled(); |
431 | QPtrList<CalFilter> filters(); | 431 | QPtrList<CalFilter> filters(); |
432 | void toggleFilter(); | 432 | void toggleFilter(); |
433 | void showFilter(bool visible); | 433 | void showFilter(bool visible); |
434 | void updateFilter(); | 434 | void updateFilter(); |
435 | void filterEdited(); | 435 | void filterEdited(); |
436 | void selectFilter( int ); | 436 | void selectFilter( int ); |
437 | KOFilterView *filterView(); | 437 | KOFilterView *filterView(); |
438 | 438 | ||
439 | void showIntro(); | 439 | void showIntro(); |
440 | 440 | ||
441 | /** Move the curdatepient view date to today */ | 441 | /** Move the curdatepient view date to today */ |
442 | void goToday(); | 442 | void goToday(); |
443 | 443 | ||
444 | /** Move to the next date(s) in the current view */ | 444 | /** Move to the next date(s) in the current view */ |
445 | void goNext(); | 445 | void goNext(); |
446 | 446 | ||
447 | /** Move to the previous date(s) in the current view */ | 447 | /** Move to the previous date(s) in the current view */ |
448 | void goPrevious(); | 448 | void goPrevious(); |
449 | /** Move to the next date(s) in the current view */ | 449 | /** Move to the next date(s) in the current view */ |
450 | void goNextMonth(); | 450 | void goNextMonth(); |
451 | 451 | ||
452 | /** Move to the previous date(s) in the current view */ | 452 | /** Move to the previous date(s) in the current view */ |
453 | void goPreviousMonth(); | 453 | void goPreviousMonth(); |
454 | 454 | ||
455 | void toggleExpand(); | 455 | void toggleExpand(); |
456 | void toggleDateNavigatorWidget(); | 456 | void toggleDateNavigatorWidget(); |
457 | void toggleAllDaySize(); | 457 | void toggleAllDaySize(); |
458 | void dialogClosing(Incidence *); | 458 | void dialogClosing(Incidence *); |
459 | 459 | ||
460 | /** Look for new messages in the inbox */ | 460 | /** Look for new messages in the inbox */ |
461 | void lookForIncomingMessages(); | 461 | void lookForIncomingMessages(); |
462 | /** Look for new messages in the outbox */ | 462 | /** Look for new messages in the outbox */ |
463 | void lookForOutgoingMessages(); | 463 | void lookForOutgoingMessages(); |
464 | 464 | ||
465 | void processMainViewSelection( Incidence * ); | 465 | void processMainViewSelection( Incidence * ); |
466 | void processTodoListSelection( Incidence * ); | 466 | void processTodoListSelection( Incidence * ); |
467 | 467 | ||
468 | void processIncidenceSelection( Incidence * ); | 468 | void processIncidenceSelection( Incidence * ); |
469 | 469 | ||
470 | void purgeCompleted(); | 470 | void purgeCompleted(); |
471 | bool removeCompletedSubTodos( Todo* ); | 471 | bool removeCompletedSubTodos( Todo* ); |
472 | void slotCalendarChanged(); | 472 | void slotCalendarChanged(); |
473 | bool importBday(); | 473 | bool importBday(); |
474 | bool addAnniversary( QDate data, QString name, KCal::Attendee* a , bool birthday ); | 474 | bool addAnniversary( QDate data, QString name, KCal::Attendee* a , bool birthday ); |
475 | bool importQtopia( const QString &categoriesFile, | 475 | bool importQtopia( const QString &categoriesFile, |
476 | const QString &datebookFile, | 476 | const QString &datebookFile, |
477 | const QString &tasklistFile ); | 477 | const QString &tasklistFile ); |
478 | void syncExternal( int mode ); | 478 | void syncExternal( int mode ); |
479 | void slotSelectPickerDate( QDate ) ; | 479 | void slotSelectPickerDate( QDate ) ; |
480 | void showDatePicker() ; | 480 | void showDatePicker() ; |
481 | void showDatePickerPopup() ; | 481 | void showDatePickerPopup() ; |
482 | void moveIncidence(Incidence *) ; | 482 | void moveIncidence(Incidence *) ; |
483 | void beamIncidence(Incidence *) ; | 483 | void beamIncidence(Incidence *) ; |
484 | void beamCalendar() ; | 484 | void beamCalendar() ; |
485 | void beamFilteredCalendar() ; | 485 | void beamFilteredCalendar() ; |
486 | void beamIncidenceList(QPtrList<Incidence>) ; | 486 | void beamIncidenceList(QPtrList<Incidence>) ; |
487 | void manageCategories(); | 487 | void manageCategories(); |
488 | void editCategories(); | ||
488 | int addCategories(); | 489 | int addCategories(); |
489 | void removeCategories(); | 490 | void removeCategories(); |
490 | void setSyncDevice( QString ); | 491 | void setSyncDevice( QString ); |
491 | void setSyncName( QString ); | 492 | void setSyncName( QString ); |
492 | void showDay( QDate ); | 493 | void showDay( QDate ); |
493 | void undo_delete(); | 494 | void undo_delete(); |
494 | protected slots: | 495 | protected slots: |
495 | void resetFocus(); | 496 | void resetFocus(); |
496 | void scrollBarValue(int); | 497 | void scrollBarValue(int); |
497 | void slotViewerClosed(); | 498 | void slotViewerClosed(); |
498 | void timerAlarm(); | 499 | void timerAlarm(); |
499 | void suspendAlarm(); | 500 | void suspendAlarm(); |
500 | void beamDone( Ir *ir ); | 501 | void beamDone( Ir *ir ); |
501 | /** Select a view or adapt the current view to display the specified dates. */ | 502 | /** Select a view or adapt the current view to display the specified dates. */ |
502 | void showDates( const KCal::DateList & ); | 503 | void showDates( const KCal::DateList & ); |
503 | void selectWeekNum ( int ); | 504 | void selectWeekNum ( int ); |
504 | 505 | ||
505 | public: | 506 | public: |
506 | // show a standard warning | 507 | // show a standard warning |
507 | // returns KMsgBox::yesNoCancel() | 508 | // returns KMsgBox::yesNoCancel() |
508 | int msgCalModified(); | 509 | int msgCalModified(); |
509 | virtual bool sync(KSyncManager* manager, QString filename, int mode); | 510 | virtual bool sync(KSyncManager* manager, QString filename, int mode); |
510 | 511 | ||
511 | virtual bool syncExternal(KSyncManager* manager, QString resource); | 512 | virtual bool syncExternal(KSyncManager* manager, QString resource); |
512 | virtual void removeSyncInfo( QString syncProfile); | 513 | virtual void removeSyncInfo( QString syncProfile); |
513 | void setSyncManager(KSyncManager* manager); | 514 | void setSyncManager(KSyncManager* manager); |
514 | void setLoadedFileVersion(QDateTime); | 515 | void setLoadedFileVersion(QDateTime); |
515 | bool checkFileVersion(QString fn); | 516 | bool checkFileVersion(QString fn); |
516 | bool checkAllFileVersions(); | 517 | bool checkAllFileVersions(); |
517 | bool checkFileChanged(QString fn); | 518 | bool checkFileChanged(QString fn); |
518 | Event* getLastSyncEvent(); | 519 | Event* getLastSyncEvent(); |
519 | /** Adapt navigation units correpsonding to step size of navigation of the | 520 | /** Adapt navigation units correpsonding to step size of navigation of the |
520 | * current view. | 521 | * current view. |
521 | */ | 522 | */ |
522 | void adaptNavigationUnits(); | 523 | void adaptNavigationUnits(); |
523 | bool synchronizeCalendar( Calendar* local, Calendar* remote, int mode ); | 524 | bool synchronizeCalendar( Calendar* local, Calendar* remote, int mode ); |
524 | int takeEvent( Incidence* local, Incidence* remote, int mode, bool full = false ); | 525 | int takeEvent( Incidence* local, Incidence* remote, int mode, bool full = false ); |
525 | //Attendee* getYourAttendee(Event *event); | 526 | //Attendee* getYourAttendee(Event *event); |
526 | void setBlockShowDates( bool b ) { mBlockShowDates = b ;} | 527 | void setBlockShowDates( bool b ) { mBlockShowDates = b ;} |
527 | void setScrollBarStep(int val ); | 528 | void setScrollBarStep(int val ); |
528 | 529 | ||
529 | protected: | 530 | protected: |
530 | void schedule(Scheduler::Method, Incidence *incidence = 0); | 531 | void schedule(Scheduler::Method, Incidence *incidence = 0); |
531 | 532 | ||
532 | // returns KMsgBox::OKCandel() | 533 | // returns KMsgBox::OKCandel() |
533 | int msgItemDelete(const QString name); | 534 | int msgItemDelete(const QString name); |
534 | void showEventEditor(); | 535 | void showEventEditor(); |
535 | void showTodoEditor(); | 536 | void showTodoEditor(); |
536 | Todo *selectedTodo(); | 537 | Todo *selectedTodo(); |
537 | private: | 538 | private: |
538 | #ifdef DESKTOP_VERSION | 539 | #ifdef DESKTOP_VERSION |
539 | QScrollBar * mDateScrollBar; | 540 | QScrollBar * mDateScrollBar; |
540 | #endif | 541 | #endif |
541 | QDateTime mNextAlarmDateTime; | 542 | QDateTime mNextAlarmDateTime; |
542 | bool mViewerCallerIsSearchDialog; | 543 | bool mViewerCallerIsSearchDialog; |
543 | bool mBlockShowDates; | 544 | bool mBlockShowDates; |
544 | KSyncManager* mSyncManager; | 545 | KSyncManager* mSyncManager; |
545 | AlarmDialog * mAlarmDialog; | 546 | AlarmDialog * mAlarmDialog; |
546 | QString mAlarmNotification; | 547 | QString mAlarmNotification; |
547 | QString mSuspendAlarmNotification; | 548 | QString mSuspendAlarmNotification; |
548 | QTimer* mSuspendTimer; | 549 | QTimer* mSuspendTimer; |
549 | QTimer* mAlarmTimer; | 550 | QTimer* mAlarmTimer; |
550 | QTimer* mRecheckAlarmTimer; | 551 | QTimer* mRecheckAlarmTimer; |
551 | void computeAlarm( QString ); | 552 | void computeAlarm( QString ); |
552 | void startAlarm( QString, QString ); | 553 | void startAlarm( QString, QString ); |
553 | void setSyncEventsReadOnly(); | 554 | void setSyncEventsReadOnly(); |
554 | 555 | ||
555 | QDateTime loadedFileVersion; | 556 | QDateTime loadedFileVersion; |
556 | void checkExternSyncEvent( QPtrList<Event> lastSync , Incidence* toDelete ); | 557 | void checkExternSyncEvent( QPtrList<Event> lastSync , Incidence* toDelete ); |
557 | void checkExternalId( Incidence * inc ); | 558 | void checkExternalId( Incidence * inc ); |
558 | int mGlobalSyncMode; | 559 | int mGlobalSyncMode; |
559 | QString mCurrentSyncDevice; | 560 | QString mCurrentSyncDevice; |
560 | QString mCurrentSyncName; | 561 | QString mCurrentSyncName; |
561 | void init(); | 562 | void init(); |
562 | int mDatePickerMode; | 563 | int mDatePickerMode; |
563 | bool mFlagEditDescription; | 564 | bool mFlagEditDescription; |
564 | QDateTime mLastCalendarSync; | 565 | QDateTime mLastCalendarSync; |
565 | void createPrinter(); | 566 | void createPrinter(); |
566 | 567 | ||
567 | void calendarModified( bool, Calendar * ); | 568 | void calendarModified( bool, Calendar * ); |
568 | 569 | ||
569 | CalPrinter *mCalPrinter; | 570 | CalPrinter *mCalPrinter; |
570 | 571 | ||
571 | QSplitter *mPanner; | 572 | QSplitter *mPanner; |
572 | QSplitter *mLeftSplitter; | 573 | QSplitter *mLeftSplitter; |
573 | KDGanttMinimizeSplitter *mLeftFrame, *mMainFrame; | 574 | KDGanttMinimizeSplitter *mLeftFrame, *mMainFrame; |
574 | QWidgetStack *mRightFrame; | 575 | QWidgetStack *mRightFrame; |
575 | 576 | ||
576 | KDatePicker* mDatePicker; | 577 | KDatePicker* mDatePicker; |
577 | QVBox* mDateFrame; | 578 | QVBox* mDateFrame; |
578 | 579 | ||
579 | DateNavigatorContainer *mDateNavigator; // widget showing small month view. | 580 | DateNavigatorContainer *mDateNavigator; // widget showing small month view. |
580 | 581 | ||
581 | KOFilterView *mFilterView; | 582 | KOFilterView *mFilterView; |
582 | KOCalEditView *mCalEditView; | 583 | KOCalEditView *mCalEditView; |
583 | 584 | ||
584 | ResourceView *mResourceView; | 585 | ResourceView *mResourceView; |
585 | 586 | ||
586 | // calendar object for this viewing instance | 587 | // calendar object for this viewing instance |
587 | Calendar *mCalendar; | 588 | Calendar *mCalendar; |
588 | 589 | ||
589 | CalendarResourceManager *mResourceManager; | 590 | CalendarResourceManager *mResourceManager; |
590 | 591 | ||
591 | FileStorage *mStorage; | 592 | FileStorage *mStorage; |
592 | 593 | ||
593 | DateNavigator *mNavigator; | 594 | DateNavigator *mNavigator; |
594 | 595 | ||
595 | KOViewManager *mViewManager; | 596 | KOViewManager *mViewManager; |
596 | KODialogManager *mDialogManager; | 597 | KODialogManager *mDialogManager; |
597 | 598 | ||
598 | // Calendar filters | 599 | // Calendar filters |
599 | QPtrList<CalFilter> mFilters; | 600 | QPtrList<CalFilter> mFilters; |
600 | 601 | ||
601 | // various housekeeping variables. | 602 | // various housekeeping variables. |
602 | bool mModified; // flag indicating if calendar is modified | 603 | bool mModified; // flag indicating if calendar is modified |
603 | bool mReadOnly; // flag indicating if calendar is read-only | 604 | bool mReadOnly; // flag indicating if calendar is read-only |
604 | QDate mSaveSingleDate; | 605 | QDate mSaveSingleDate; |
605 | 606 | ||
606 | Incidence *mSelectedIncidence; | 607 | Incidence *mSelectedIncidence; |
607 | Incidence *mMoveIncidence; | 608 | Incidence *mMoveIncidence; |
608 | QDate mMoveIncidenceOldDate; | 609 | QDate mMoveIncidenceOldDate; |
609 | KOTodoView *mTodoList; | 610 | KOTodoView *mTodoList; |
610 | KOEventEditor * mEventEditor; | 611 | KOEventEditor * mEventEditor; |
611 | KOTodoEditor * mTodoEditor; | 612 | KOTodoEditor * mTodoEditor; |
612 | KOEventViewerDialog * mEventViewerDialog; | 613 | KOEventViewerDialog * mEventViewerDialog; |
613 | void keyPressEvent ( QKeyEvent *e) ; | 614 | void keyPressEvent ( QKeyEvent *e) ; |
614 | //QMap<Incidence*,KOIncidenceEditor*> mDialogList; | 615 | //QMap<Incidence*,KOIncidenceEditor*> mDialogList; |
615 | }; | 616 | }; |
diff --git a/korganizer/kolistview.cpp b/korganizer/kolistview.cpp index 43e1113..517677c 100644 --- a/korganizer/kolistview.cpp +++ b/korganizer/kolistview.cpp | |||
@@ -313,257 +313,258 @@ KOListView::KOListView(Calendar *calendar, QWidget *parent, | |||
313 | #endif | 313 | #endif |
314 | mCalPopup = new QPopupMenu ( this ); | 314 | mCalPopup = new QPopupMenu ( this ); |
315 | mPopupMenu->insertItem( i18n("Set Calendar"), mCalPopup ); | 315 | mPopupMenu->insertItem( i18n("Set Calendar"), mCalPopup ); |
316 | 316 | ||
317 | QObject::connect(mCalPopup,SIGNAL(aboutToShow()),this, | 317 | QObject::connect(mCalPopup,SIGNAL(aboutToShow()),this, |
318 | SLOT( populateCalPopup() )); | 318 | SLOT( populateCalPopup() )); |
319 | QObject::connect(mCalPopup,SIGNAL(activated( int )),this, | 319 | QObject::connect(mCalPopup,SIGNAL(activated( int )),this, |
320 | SLOT( setCalendar( int ) )); | 320 | SLOT( setCalendar( int ) )); |
321 | QPopupMenu * exportPO = new QPopupMenu ( this ); | 321 | QPopupMenu * exportPO = new QPopupMenu ( this ); |
322 | mPopupMenu->insertItem( i18n("Export selected"), exportPO ); | 322 | mPopupMenu->insertItem( i18n("Export selected"), exportPO ); |
323 | exportPO->insertItem( i18n("As iCal (ics) file..."),this, | 323 | exportPO->insertItem( i18n("As iCal (ics) file..."),this, |
324 | SLOT(saveToFile())); | 324 | SLOT(saveToFile())); |
325 | exportPO->insertItem( i18n("As vCal (vcs) file..."),this, | 325 | exportPO->insertItem( i18n("As vCal (vcs) file..."),this, |
326 | SLOT(saveToFileVCS())); | 326 | SLOT(saveToFileVCS())); |
327 | exportPO->insertItem( i18n("Journal/Details..."),this, | 327 | exportPO->insertItem( i18n("Journal/Details..."),this, |
328 | SLOT(saveDescriptionToFile())); | 328 | SLOT(saveDescriptionToFile())); |
329 | // mPopupMenu->insertSeparator(); | 329 | // mPopupMenu->insertSeparator(); |
330 | mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), | 330 | mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), |
331 | i18n("Add Categ. to selected..."),this, | 331 | i18n("Add Categ. to selected..."),this, |
332 | SLOT(addCat()),true); | 332 | SLOT(addCat()),true); |
333 | mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), | 333 | mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), |
334 | i18n("Set Categ. for selected..."),this, | 334 | i18n("Set Categ. for selected..."),this, |
335 | SLOT(setCat()),true); | 335 | SLOT(setCat()),true); |
336 | //mPopupMenu->insertSeparator(); | 336 | //mPopupMenu->insertSeparator(); |
337 | mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), | 337 | mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), |
338 | i18n("Set alarm for selected..."),this, | 338 | i18n("Set alarm for selected..."),this, |
339 | SLOT(setAlarm()),true); | 339 | SLOT(setAlarm()),true); |
340 | 340 | ||
341 | 341 | ||
342 | 342 | ||
343 | #ifndef DESKTOP_VERSION | 343 | #ifndef DESKTOP_VERSION |
344 | mPopupMenu->insertSeparator(); | 344 | mPopupMenu->insertSeparator(); |
345 | mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), | 345 | mPopupMenu->addAdditionalItem(QIconSet(QPixmap()), |
346 | i18n("Beam selected via IR"),this, | 346 | i18n("Beam selected via IR"),this, |
347 | SLOT(beamSelected()),true); | 347 | SLOT(beamSelected()),true); |
348 | #endif | 348 | #endif |
349 | /* | 349 | /* |
350 | mPopupMenu = new QPopupMenu; | 350 | mPopupMenu = new QPopupMenu; |
351 | mPopupMenu->insertItem(i18n("Edit Event"), this, | 351 | mPopupMenu->insertItem(i18n("Edit Event"), this, |
352 | SLOT (editEvent())); | 352 | SLOT (editEvent())); |
353 | mPopupMenu->insertItem(SmallIcon("delete"), i18n("Delete Event"), this, | 353 | mPopupMenu->insertItem(SmallIcon("delete"), i18n("Delete Event"), this, |
354 | SLOT (deleteEvent())); | 354 | SLOT (deleteEvent())); |
355 | mPopupMenu->insertSeparator(); | 355 | mPopupMenu->insertSeparator(); |
356 | mPopupMenu->insertItem(i18n("Show Dates"), this, | 356 | mPopupMenu->insertItem(i18n("Show Dates"), this, |
357 | SLOT(showDates())); | 357 | SLOT(showDates())); |
358 | mPopupMenu->insertItem(i18n("Hide Dates"), this, | 358 | mPopupMenu->insertItem(i18n("Hide Dates"), this, |
359 | SLOT(hideDates())); | 359 | SLOT(hideDates())); |
360 | */ | 360 | */ |
361 | QObject::connect(mListView,SIGNAL( newEvent()), | 361 | QObject::connect(mListView,SIGNAL( newEvent()), |
362 | this,SIGNAL(signalNewEvent())); | 362 | this,SIGNAL(signalNewEvent())); |
363 | QObject::connect(mListView,SIGNAL(doubleClicked(QListViewItem *)), | 363 | QObject::connect(mListView,SIGNAL(doubleClicked(QListViewItem *)), |
364 | this,SLOT(defaultItemAction(QListViewItem *))); | 364 | this,SLOT(defaultItemAction(QListViewItem *))); |
365 | QObject::connect(mListView,SIGNAL(rightButtonPressed( QListViewItem *, | 365 | QObject::connect(mListView,SIGNAL(rightButtonPressed( QListViewItem *, |
366 | const QPoint &, int )), | 366 | const QPoint &, int )), |
367 | this,SLOT(popupMenu(QListViewItem *,const QPoint &,int))); | 367 | this,SLOT(popupMenu(QListViewItem *,const QPoint &,int))); |
368 | QObject::connect(mListView,SIGNAL(currentChanged(QListViewItem *)), | 368 | QObject::connect(mListView,SIGNAL(currentChanged(QListViewItem *)), |
369 | SLOT(processSelectionChange(QListViewItem *))); | 369 | SLOT(processSelectionChange(QListViewItem *))); |
370 | QObject::connect(mListView,SIGNAL(showIncidence(Incidence *)), | 370 | QObject::connect(mListView,SIGNAL(showIncidence(Incidence *)), |
371 | SIGNAL(showIncidenceSignal(Incidence *)) ); | 371 | SIGNAL(showIncidenceSignal(Incidence *)) ); |
372 | 372 | ||
373 | readSettings(KOGlobals::config(),"KOListView Layout"); | 373 | readSettings(KOGlobals::config(),"KOListView Layout"); |
374 | } | 374 | } |
375 | 375 | ||
376 | KOListView::~KOListView() | 376 | KOListView::~KOListView() |
377 | { | 377 | { |
378 | delete mPopupMenu; | 378 | delete mPopupMenu; |
379 | #if QT_VERSION >= 0x030000 | 379 | #if QT_VERSION >= 0x030000 |
380 | 380 | ||
381 | #else | 381 | #else |
382 | delete mKOListViewWhatsThis; | 382 | delete mKOListViewWhatsThis; |
383 | #endif | 383 | #endif |
384 | } | 384 | } |
385 | 385 | ||
386 | QString KOListView::getWhatsThisText(QPoint p) | 386 | QString KOListView::getWhatsThisText(QPoint p) |
387 | { | 387 | { |
388 | KOListViewItem* item = ( KOListViewItem* ) mListView->itemAt( p ); | 388 | KOListViewItem* item = ( KOListViewItem* ) mListView->itemAt( p ); |
389 | if ( item ) | 389 | if ( item ) |
390 | return KIncidenceFormatter::instance()->getFormattedText( item->data(), | 390 | return KIncidenceFormatter::instance()->getFormattedText( item->data(), |
391 | KOPrefs::instance()->mWTshowDetails, | 391 | KOPrefs::instance()->mWTshowDetails, |
392 | KOPrefs::instance()->mWTshowCreated, | 392 | KOPrefs::instance()->mWTshowCreated, |
393 | KOPrefs::instance()->mWTshowChanged); | 393 | KOPrefs::instance()->mWTshowChanged); |
394 | return i18n("That is the list view" ); | 394 | return i18n("That is the list view" ); |
395 | 395 | ||
396 | } | 396 | } |
397 | 397 | ||
398 | void KOListView::setCalendar( int c ) | 398 | void KOListView::setCalendar( int c ) |
399 | { | 399 | { |
400 | int result = QMessageBox::warning( this, i18n("KO/Pi: Information!"), | 400 | int result = QMessageBox::warning( this, i18n("KO/Pi: Information!"), |
401 | i18n("This adds the selected\nitems to the calendar\n%1\nand removes them from\ntheir current calendar!").arg( KOPrefs::instance()->calName( c ) ), | 401 | i18n("This adds the selected\nitems to the calendar\n%1\nand removes them from\ntheir current calendar!").arg( KOPrefs::instance()->calName( c ) ), |
402 | i18n("Continue"), i18n("Cancel"), 0, | 402 | i18n("Continue"), i18n("Cancel"), 0, |
403 | 0, 1 ); | 403 | 0, 1 ); |
404 | if ( result != 0 ) { | 404 | if ( result != 0 ) { |
405 | return; | 405 | return; |
406 | } | 406 | } |
407 | 407 | ||
408 | QPtrList<Incidence> delSel = getSelectedIncidences() ; | 408 | QPtrList<Incidence> delSel = getSelectedIncidences() ; |
409 | int icount = delSel.count(); | 409 | int icount = delSel.count(); |
410 | if ( icount ) { | 410 | if ( icount ) { |
411 | Incidence *incidence = delSel.first(); | 411 | Incidence *incidence = delSel.first(); |
412 | while ( incidence ) { | 412 | while ( incidence ) { |
413 | incidence->setCalID( c ); | 413 | incidence->setCalID( c ); |
414 | KOListViewItem * item = getItemForEvent( incidence ); | 414 | KOListViewItem * item = getItemForEvent( incidence ); |
415 | if ( item ) { | 415 | if ( item ) { |
416 | ListItemVisitor v(item, mStartDate ); | 416 | ListItemVisitor v(item, mStartDate ); |
417 | incidence->accept(v); | 417 | incidence->accept(v); |
418 | } | 418 | } |
419 | incidence = delSel.next(); | 419 | incidence = delSel.next(); |
420 | } | 420 | } |
421 | } | 421 | } |
422 | QPtrList<KopiCalendarFile> calendars = KOPrefs::instance()->mCalendars; | 422 | QPtrList<KopiCalendarFile> calendars = KOPrefs::instance()->mCalendars; |
423 | KopiCalendarFile * cal = calendars.first(); | 423 | KopiCalendarFile * cal = calendars.first(); |
424 | while ( cal ) { | 424 | while ( cal ) { |
425 | mCalendar->setCalendarEnabled( cal->mCalNumber,cal->isEnabled ); | 425 | mCalendar->setCalendarEnabled( cal->mCalNumber,cal->isEnabled ); |
426 | mCalendar->setAlarmEnabled( cal->mCalNumber, cal->isAlarmEnabled ); | 426 | mCalendar->setAlarmEnabled( cal->mCalNumber, cal->isAlarmEnabled ); |
427 | mCalendar->setReadOnly( cal->mCalNumber, cal->isReadOnly ); | 427 | mCalendar->setReadOnly( cal->mCalNumber, cal->isReadOnly ); |
428 | if ( cal->isStandard ) | 428 | if ( cal->isStandard ) |
429 | mCalendar->setDefaultCalendar( cal->mCalNumber ); | 429 | mCalendar->setDefaultCalendar( cal->mCalNumber ); |
430 | cal = calendars.next(); | 430 | cal = calendars.next(); |
431 | } | 431 | } |
432 | mCalendar->setSyncEventsReadOnly(); | 432 | mCalendar->setSyncEventsReadOnly(); |
433 | mCalendar->reInitAlarmSettings(); | 433 | mCalendar->reInitAlarmSettings(); |
434 | 434 | ||
435 | } | 435 | } |
436 | void KOListView::populateCalPopup() | 436 | void KOListView::populateCalPopup() |
437 | { | 437 | { |
438 | mCalPopup->clear(); | 438 | mCalPopup->clear(); |
439 | KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); | 439 | KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); |
440 | while ( kkf ) { | 440 | while ( kkf ) { |
441 | mCalPopup->insertItem( kkf->mName, kkf->mCalNumber); | 441 | int index = mCalPopup->insertItem( kkf->mName, kkf->mCalNumber); |
442 | mCalPopup->setItemEnabled( index, !kkf->isReadOnly ); | ||
442 | kkf = KOPrefs::instance()->mCalendars.next(); | 443 | kkf = KOPrefs::instance()->mCalendars.next(); |
443 | } | 444 | } |
444 | } | 445 | } |
445 | void KOListView::updateList() | 446 | void KOListView::updateList() |
446 | { | 447 | { |
447 | // qDebug(" KOListView::updateList() "); | 448 | // qDebug(" KOListView::updateList() "); |
448 | 449 | ||
449 | } | 450 | } |
450 | 451 | ||
451 | void KOListView::clearList() | 452 | void KOListView::clearList() |
452 | { | 453 | { |
453 | clear (); | 454 | clear (); |
454 | } | 455 | } |
455 | void KOListView::addCat( ) | 456 | void KOListView::addCat( ) |
456 | { | 457 | { |
457 | setCategories( false ); | 458 | setCategories( false ); |
458 | } | 459 | } |
459 | void KOListView::setCat() | 460 | void KOListView::setCat() |
460 | { | 461 | { |
461 | setCategories( true ); | 462 | setCategories( true ); |
462 | } | 463 | } |
463 | 464 | ||
464 | void KOListView::setAlarm() | 465 | void KOListView::setAlarm() |
465 | { | 466 | { |
466 | KOAlarmPrefs kap( this); | 467 | KOAlarmPrefs kap( this); |
467 | if ( !kap.exec() ) | 468 | if ( !kap.exec() ) |
468 | return; | 469 | return; |
469 | QStringList itemList; | 470 | QStringList itemList; |
470 | QPtrList<KOListViewItem> sel ; | 471 | QPtrList<KOListViewItem> sel ; |
471 | QListViewItem *qitem = mListView->firstChild (); | 472 | QListViewItem *qitem = mListView->firstChild (); |
472 | while ( qitem ) { | 473 | while ( qitem ) { |
473 | if ( qitem->isSelected() ) { | 474 | if ( qitem->isSelected() ) { |
474 | Incidence* inc = ((KOListViewItem *) qitem)->data(); | 475 | Incidence* inc = ((KOListViewItem *) qitem)->data(); |
475 | if ( inc->typeID() != journalID ) { | 476 | if ( inc->typeID() != journalID ) { |
476 | if ( inc->typeID() == todoID ) { | 477 | if ( inc->typeID() == todoID ) { |
477 | if ( ((Todo*)inc)->hasDueDate() ) | 478 | if ( ((Todo*)inc)->hasDueDate() ) |
478 | sel.append(((KOListViewItem *)qitem)); | 479 | sel.append(((KOListViewItem *)qitem)); |
479 | } else | 480 | } else |
480 | sel.append(((KOListViewItem *)qitem)); | 481 | sel.append(((KOListViewItem *)qitem)); |
481 | } | 482 | } |
482 | } | 483 | } |
483 | qitem = qitem->nextSibling(); | 484 | qitem = qitem->nextSibling(); |
484 | } | 485 | } |
485 | int count = 0; | 486 | int count = 0; |
486 | KOListViewItem * item, *temp; | 487 | KOListViewItem * item, *temp; |
487 | item = sel.first(); | 488 | item = sel.first(); |
488 | Incidence* inc; | 489 | Incidence* inc; |
489 | while ( item ) { | 490 | while ( item ) { |
490 | inc = item->data(); | 491 | inc = item->data(); |
491 | ++count; | 492 | ++count; |
492 | if (kap.mAlarmButton->isChecked()) { | 493 | if (kap.mAlarmButton->isChecked()) { |
493 | if (inc->alarms().count() == 0) | 494 | if (inc->alarms().count() == 0) |
494 | inc->newAlarm(); | 495 | inc->newAlarm(); |
495 | QPtrList<Alarm> alarms = inc->alarms(); | 496 | QPtrList<Alarm> alarms = inc->alarms(); |
496 | Alarm *alarm; | 497 | Alarm *alarm; |
497 | for (alarm = alarms.first(); alarm; alarm = alarms.next() ) { | 498 | for (alarm = alarms.first(); alarm; alarm = alarms.next() ) { |
498 | alarm->setEnabled(true); | 499 | alarm->setEnabled(true); |
499 | int j = kap.mAlarmTimeEdit->value()* -60; | 500 | int j = kap.mAlarmTimeEdit->value()* -60; |
500 | if (kap.mAlarmIncrCombo->currentItem() == 1) | 501 | if (kap.mAlarmIncrCombo->currentItem() == 1) |
501 | j = j * 60; | 502 | j = j * 60; |
502 | else if (kap.mAlarmIncrCombo->currentItem() == 2) | 503 | else if (kap.mAlarmIncrCombo->currentItem() == 2) |
503 | j = j * (60 * 24); | 504 | j = j * (60 * 24); |
504 | alarm->setStartOffset( j ); | 505 | alarm->setStartOffset( j ); |
505 | 506 | ||
506 | if (!kap.mAlarmProgram.isEmpty() && kap.mAlarmProgramButton->isOn()) { | 507 | if (!kap.mAlarmProgram.isEmpty() && kap.mAlarmProgramButton->isOn()) { |
507 | alarm->setProcedureAlarm(kap.mAlarmProgram); | 508 | alarm->setProcedureAlarm(kap.mAlarmProgram); |
508 | } | 509 | } |
509 | else if (!kap.mAlarmSound.isEmpty() && kap.mAlarmSoundButton->isOn()) | 510 | else if (!kap.mAlarmSound.isEmpty() && kap.mAlarmSoundButton->isOn()) |
510 | alarm->setAudioAlarm(kap.mAlarmSound); | 511 | alarm->setAudioAlarm(kap.mAlarmSound); |
511 | else | 512 | else |
512 | alarm->setType(Alarm::Invalid); | 513 | alarm->setType(Alarm::Invalid); |
513 | //alarm->setAudioAlarm("default"); | 514 | //alarm->setAudioAlarm("default"); |
514 | // TODO: Deal with multiple alarms | 515 | // TODO: Deal with multiple alarms |
515 | break; // For now, stop after the first alarm | 516 | break; // For now, stop after the first alarm |
516 | } | 517 | } |
517 | } else { | 518 | } else { |
518 | Alarm* alarm = inc->alarms().first(); | 519 | Alarm* alarm = inc->alarms().first(); |
519 | if ( alarm ) { | 520 | if ( alarm ) { |
520 | alarm->setEnabled(false); | 521 | alarm->setEnabled(false); |
521 | alarm->setType(Alarm::Invalid); | 522 | alarm->setType(Alarm::Invalid); |
522 | } | 523 | } |
523 | } | 524 | } |
524 | ListItemVisitor v(item, mStartDate ); | 525 | ListItemVisitor v(item, mStartDate ); |
525 | inc->accept(v); | 526 | inc->accept(v); |
526 | item = sel.next(); | 527 | item = sel.next(); |
527 | } | 528 | } |
528 | topLevelWidget()->setCaption( i18n("Changed alarm for %1 items").arg( count ) ); | 529 | topLevelWidget()->setCaption( i18n("Changed alarm for %1 items").arg( count ) ); |
529 | qDebug("KO: Set alarm for %d items", count); | 530 | qDebug("KO: Set alarm for %d items", count); |
530 | calendar()->reInitAlarmSettings(); | 531 | calendar()->reInitAlarmSettings(); |
531 | QTimer::singleShot( 1, this, SLOT ( resetFocus() ) ); | 532 | QTimer::singleShot( 1, this, SLOT ( resetFocus() ) ); |
532 | } | 533 | } |
533 | void KOListView::setCategories( bool removeOld ) | 534 | void KOListView::setCategories( bool removeOld ) |
534 | { | 535 | { |
535 | 536 | ||
536 | KPIM::CategorySelectDialog* csd = new KPIM::CategorySelectDialog( KOPrefs::instance(), 0 ); | 537 | KPIM::CategorySelectDialog* csd = new KPIM::CategorySelectDialog( KOPrefs::instance(), 0 ); |
537 | csd->setColorEnabled(); | 538 | csd->setColorEnabled(); |
538 | if (! csd->exec()) { | 539 | if (! csd->exec()) { |
539 | delete csd; | 540 | delete csd; |
540 | return; | 541 | return; |
541 | } | 542 | } |
542 | QStringList catList = csd->selectedCategories(); | 543 | QStringList catList = csd->selectedCategories(); |
543 | delete csd; | 544 | delete csd; |
544 | // if ( catList.count() == 0 ) | 545 | // if ( catList.count() == 0 ) |
545 | // return; | 546 | // return; |
546 | //catList.sort(); | 547 | //catList.sort(); |
547 | QString categoriesStr = catList.join(","); | 548 | QString categoriesStr = catList.join(","); |
548 | int i; | 549 | int i; |
549 | QStringList itemList; | 550 | QStringList itemList; |
550 | QPtrList<KOListViewItem> sel ; | 551 | QPtrList<KOListViewItem> sel ; |
551 | QListViewItem *qitem = mListView->firstChild (); | 552 | QListViewItem *qitem = mListView->firstChild (); |
552 | while ( qitem ) { | 553 | while ( qitem ) { |
553 | if ( qitem->isSelected() ) { | 554 | if ( qitem->isSelected() ) { |
554 | sel.append(((KOListViewItem *)qitem)); | 555 | sel.append(((KOListViewItem *)qitem)); |
555 | } | 556 | } |
556 | qitem = qitem->nextSibling(); | 557 | qitem = qitem->nextSibling(); |
557 | } | 558 | } |
558 | KOListViewItem * item, *temp; | 559 | KOListViewItem * item, *temp; |
559 | item = sel.first(); | 560 | item = sel.first(); |
560 | if( item ) { | 561 | if( item ) { |
561 | Incidence* inc = item->data() ; | 562 | Incidence* inc = item->data() ; |
562 | bool setSub = false; | 563 | bool setSub = false; |
563 | if( inc->typeID() == todoID && sel.count() == 1 && inc->relations().count() > 0 ) { | 564 | if( inc->typeID() == todoID && sel.count() == 1 && inc->relations().count() > 0 ) { |
564 | int result = KMessageBox::warningYesNoCancel(this, | 565 | int result = KMessageBox::warningYesNoCancel(this, |
565 | i18n("The todo\n%1\nhas subtodos!\nDo you want to set\nthe categories for\nall subtodos as well?").arg( inc->summary().left ( 25 ) ), | 566 | i18n("The todo\n%1\nhas subtodos!\nDo you want to set\nthe categories for\nall subtodos as well?").arg( inc->summary().left ( 25 ) ), |
566 | i18n("Todo has subtodos"), | 567 | i18n("Todo has subtodos"), |
567 | i18n("Yes"), | 568 | i18n("Yes"), |
568 | i18n("No")); | 569 | i18n("No")); |
569 | if (result == KMessageBox::Cancel) item = 0; | 570 | if (result == KMessageBox::Cancel) item = 0; |
diff --git a/korganizer/kotodoview.cpp b/korganizer/kotodoview.cpp index 873a776..8d354c8 100644 --- a/korganizer/kotodoview.cpp +++ b/korganizer/kotodoview.cpp | |||
@@ -476,270 +476,270 @@ void KOTodoListView::contentsMouseDoubleClickEvent(QMouseEvent *e) | |||
476 | KOQuickTodo::KOQuickTodo(QWidget *parent) : | 476 | KOQuickTodo::KOQuickTodo(QWidget *parent) : |
477 | QLineEdit(parent) | 477 | QLineEdit(parent) |
478 | { | 478 | { |
479 | setText(i18n("Click to add a new Todo")); | 479 | setText(i18n("Click to add a new Todo")); |
480 | } | 480 | } |
481 | 481 | ||
482 | void KOQuickTodo::focusInEvent(QFocusEvent *ev) | 482 | void KOQuickTodo::focusInEvent(QFocusEvent *ev) |
483 | { | 483 | { |
484 | if ( text()==i18n("Click to add a new Todo") ) | 484 | if ( text()==i18n("Click to add a new Todo") ) |
485 | setText(""); | 485 | setText(""); |
486 | QLineEdit::focusInEvent(ev); | 486 | QLineEdit::focusInEvent(ev); |
487 | } | 487 | } |
488 | 488 | ||
489 | void KOQuickTodo::focusOutEvent(QFocusEvent *ev) | 489 | void KOQuickTodo::focusOutEvent(QFocusEvent *ev) |
490 | { | 490 | { |
491 | setText(i18n("Click to add a new Todo")); | 491 | setText(i18n("Click to add a new Todo")); |
492 | QLineEdit::focusOutEvent(ev); | 492 | QLineEdit::focusOutEvent(ev); |
493 | } | 493 | } |
494 | 494 | ||
495 | ///////////////////////////////////////////////////////////////////////////// | 495 | ///////////////////////////////////////////////////////////////////////////// |
496 | 496 | ||
497 | KOTodoView::KOTodoView(Calendar *calendar,QWidget* parent,const char* name) : | 497 | KOTodoView::KOTodoView(Calendar *calendar,QWidget* parent,const char* name) : |
498 | KOrg::BaseView(calendar,parent,name) | 498 | KOrg::BaseView(calendar,parent,name) |
499 | { | 499 | { |
500 | mCategoryPopupMenu = 0; | 500 | mCategoryPopupMenu = 0; |
501 | mPendingUpdateBeforeRepaint = false; | 501 | mPendingUpdateBeforeRepaint = false; |
502 | isFlatDisplay = false; | 502 | isFlatDisplay = false; |
503 | mNavigator = 0; | 503 | mNavigator = 0; |
504 | QBoxLayout *topLayout = new QVBoxLayout(this); | 504 | QBoxLayout *topLayout = new QVBoxLayout(this); |
505 | mName = QString ( name ); | 505 | mName = QString ( name ); |
506 | mBlockUpdate = false; | 506 | mBlockUpdate = false; |
507 | mQuickAdd = new KOQuickTodo(this); | 507 | mQuickAdd = new KOQuickTodo(this); |
508 | topLayout->addWidget(mQuickAdd); | 508 | topLayout->addWidget(mQuickAdd); |
509 | 509 | ||
510 | if ( !KOPrefs::instance()->mEnableQuickTodo ) mQuickAdd->hide(); | 510 | if ( !KOPrefs::instance()->mEnableQuickTodo ) mQuickAdd->hide(); |
511 | 511 | ||
512 | mTodoListView = new KOTodoListView(calendar,this, name ); | 512 | mTodoListView = new KOTodoListView(calendar,this, name ); |
513 | topLayout->addWidget(mTodoListView); | 513 | topLayout->addWidget(mTodoListView); |
514 | //mTodoListView->header()->setMaximumHeight(30); | 514 | //mTodoListView->header()->setMaximumHeight(30); |
515 | mTodoListView->setRootIsDecorated(true); | 515 | mTodoListView->setRootIsDecorated(true); |
516 | mTodoListView->setAllColumnsShowFocus(true); | 516 | mTodoListView->setAllColumnsShowFocus(true); |
517 | 517 | ||
518 | mTodoListView->setShowSortIndicator(true); | 518 | mTodoListView->setShowSortIndicator(true); |
519 | 519 | ||
520 | mTodoListView->addColumn(i18n("Todo")); | 520 | mTodoListView->addColumn(i18n("Todo")); |
521 | mTodoListView->addColumn(i18n("Prio")); | 521 | mTodoListView->addColumn(i18n("Prio")); |
522 | mTodoListView->setColumnAlignment(1,AlignHCenter); | 522 | mTodoListView->setColumnAlignment(1,AlignHCenter); |
523 | mTodoListView->addColumn(i18n("Complete")); | 523 | mTodoListView->addColumn(i18n("Complete")); |
524 | mTodoListView->setColumnAlignment(2,AlignCenter); | 524 | mTodoListView->setColumnAlignment(2,AlignCenter); |
525 | 525 | ||
526 | mTodoListView->addColumn(i18n("Due Date")); | 526 | mTodoListView->addColumn(i18n("Due Date")); |
527 | mTodoListView->setColumnAlignment(3,AlignLeft); | 527 | mTodoListView->setColumnAlignment(3,AlignLeft); |
528 | mTodoListView->addColumn(i18n("Due Time")); | 528 | mTodoListView->addColumn(i18n("Due Time")); |
529 | mTodoListView->setColumnAlignment(4,AlignHCenter); | 529 | mTodoListView->setColumnAlignment(4,AlignHCenter); |
530 | 530 | ||
531 | mTodoListView->addColumn(i18n("Start Date")); | 531 | mTodoListView->addColumn(i18n("Start Date")); |
532 | mTodoListView->setColumnAlignment(5,AlignLeft); | 532 | mTodoListView->setColumnAlignment(5,AlignLeft); |
533 | mTodoListView->addColumn(i18n("Start Time")); | 533 | mTodoListView->addColumn(i18n("Start Time")); |
534 | mTodoListView->setColumnAlignment(6,AlignHCenter); | 534 | mTodoListView->setColumnAlignment(6,AlignHCenter); |
535 | 535 | ||
536 | mTodoListView->addColumn(i18n("Cancelled")); | 536 | mTodoListView->addColumn(i18n("Cancelled")); |
537 | mTodoListView->addColumn(i18n("Categories")); | 537 | mTodoListView->addColumn(i18n("Categories")); |
538 | mTodoListView->addColumn(i18n("Calendar")); | 538 | mTodoListView->addColumn(i18n("Calendar")); |
539 | #if 0 | 539 | #if 0 |
540 | mTodoListView->addColumn(i18n("Sort Id")); | 540 | mTodoListView->addColumn(i18n("Sort Id")); |
541 | mTodoListView->setColumnAlignment(4,AlignHCenter); | 541 | mTodoListView->setColumnAlignment(4,AlignHCenter); |
542 | #endif | 542 | #endif |
543 | 543 | ||
544 | mTodoListView->setMinimumHeight( 60 ); | 544 | mTodoListView->setMinimumHeight( 60 ); |
545 | mTodoListView->setItemsRenameable( true ); | 545 | mTodoListView->setItemsRenameable( true ); |
546 | mTodoListView->setRenameable( 0 ); | 546 | mTodoListView->setRenameable( 0 ); |
547 | mTodoListView->setColumnWidth( 0, 120 ); | 547 | mTodoListView->setColumnWidth( 0, 120 ); |
548 | int iii = 0; | 548 | int iii = 0; |
549 | for ( iii = 0; iii< 10 ; ++iii ) | 549 | for ( iii = 0; iii< 10 ; ++iii ) |
550 | mTodoListView->setColumnWidthMode( iii, QListView::Manual ); | 550 | mTodoListView->setColumnWidthMode( iii, QListView::Manual ); |
551 | 551 | ||
552 | 552 | ||
553 | mKOTodoViewWhatsThis = new KOTodoViewWhatsThis(mTodoListView->viewport(),this); | 553 | mKOTodoViewWhatsThis = new KOTodoViewWhatsThis(mTodoListView->viewport(),this); |
554 | 554 | ||
555 | mPriorityPopupMenu = new QPopupMenu(this); | 555 | mPriorityPopupMenu = new QPopupMenu(this); |
556 | for (int i = 1; i <= 5; i++) { | 556 | for (int i = 1; i <= 5; i++) { |
557 | QString label = QString ("%1").arg (i); | 557 | QString label = QString ("%1").arg (i); |
558 | mPriority[mPriorityPopupMenu->insertItem (label)] = i; | 558 | mPriority[mPriorityPopupMenu->insertItem (label)] = i; |
559 | } | 559 | } |
560 | connect (mPriorityPopupMenu, SIGNAL(activated (int)), SLOT (setNewPriority(int))); | 560 | connect (mPriorityPopupMenu, SIGNAL(activated (int)), SLOT (setNewPriority(int))); |
561 | 561 | ||
562 | mPercentageCompletedPopupMenu = new QPopupMenu(this); | 562 | mPercentageCompletedPopupMenu = new QPopupMenu(this); |
563 | for (int i = 0; i <= 100; i+=20) { | 563 | for (int i = 0; i <= 100; i+=20) { |
564 | QString label = QString ("%1 %").arg (i); | 564 | QString label = QString ("%1 %").arg (i); |
565 | mPercentage[mPercentageCompletedPopupMenu->insertItem (label)] = i; | 565 | mPercentage[mPercentageCompletedPopupMenu->insertItem (label)] = i; |
566 | } | 566 | } |
567 | connect (mPercentageCompletedPopupMenu, SIGNAL (activated (int)), SLOT (setNewPercentage (int))); | 567 | connect (mPercentageCompletedPopupMenu, SIGNAL (activated (int)), SLOT (setNewPercentage (int))); |
568 | 568 | ||
569 | 569 | ||
570 | 570 | ||
571 | mItemPopupMenu = new QPopupMenu(this); | 571 | mItemPopupMenu = new QPopupMenu(this); |
572 | mItemPopupMenu->insertItem(i18n("Show..."), this, | 572 | mItemPopupMenu->insertItem(i18n("Show..."), this, |
573 | SLOT (showTodo())); | 573 | SLOT (showTodo())); |
574 | mItemPopupMenu->insertItem(i18n("Edit..."), this, | 574 | mItemPopupMenu->insertItem(i18n("Edit..."), this, |
575 | SLOT (editTodo())); | 575 | SLOT (editTodo())); |
576 | mItemPopupMenu->insertItem( i18n("Delete"), this, | 576 | mItemPopupMenu->insertItem( i18n("Delete"), this, |
577 | SLOT (deleteTodo())); | 577 | SLOT (deleteTodo())); |
578 | mItemPopupMenu->insertItem( i18n("Clone..."), this, | 578 | mItemPopupMenu->insertItem( i18n("Clone..."), this, |
579 | SLOT (cloneTodo())); | 579 | SLOT (cloneTodo())); |
580 | mItemPopupMenu->insertItem( i18n("Move..."), this, | 580 | mItemPopupMenu->insertItem( i18n("Move..."), this, |
581 | SLOT (moveTodo())); | 581 | SLOT (moveTodo())); |
582 | #ifndef DESKTOP_VERSION | 582 | #ifndef DESKTOP_VERSION |
583 | mItemPopupMenu->insertItem( i18n("Beam..."), this, | 583 | mItemPopupMenu->insertItem( i18n("Beam..."), this, |
584 | SLOT (beamTodo())); | 584 | SLOT (beamTodo())); |
585 | #endif | 585 | #endif |
586 | mItemPopupMenu->insertItem( i18n("Toggle Cancel"), this, | 586 | mItemPopupMenu->insertItem( i18n("Toggle Cancel"), this, |
587 | SLOT (cancelTodo())); | 587 | SLOT (cancelTodo())); |
588 | mItemPopupMenu->insertSeparator(); | 588 | mItemPopupMenu->insertSeparator(); |
589 | mItemPopupMenu->insertItem( i18n("Start/Stop todo..."), this, | 589 | mItemPopupMenu->insertItem( i18n("Start/Stop todo..."), this, |
590 | SLOT (toggleRunningItem())); | 590 | SLOT (toggleRunningItem())); |
591 | mItemPopupMenu->insertSeparator(); | 591 | mItemPopupMenu->insertSeparator(); |
592 | /* | 592 | /* |
593 | mItemPopupMenu->insertItem( i18n("New Todo..."), this, | 593 | mItemPopupMenu->insertItem( i18n("New Todo..."), this, |
594 | SLOT (newTodo())); | 594 | SLOT (newTodo())); |
595 | */ | 595 | */ |
596 | mItemPopupMenu->insertItem(i18n("New Sub-Todo..."), this, | 596 | mItemPopupMenu->insertItem(i18n("New Sub-Todo..."), this, |
597 | SLOT (newSubTodo())); | 597 | SLOT (newSubTodo())); |
598 | mItemPopupMenu->insertItem(i18n("Unparent Todo"), this, | 598 | mItemPopupMenu->insertItem(i18n("Unparent Todo"), this, |
599 | SLOT (unparentTodo()),0,21); | 599 | SLOT (unparentTodo()),0,21); |
600 | mItemPopupMenu->insertItem(i18n("Reparent Todo"), this, | 600 | mItemPopupMenu->insertItem(i18n("Reparent Todo"), this, |
601 | SLOT (reparentTodo()),0,22); | 601 | SLOT (reparentTodo()),0,22); |
602 | mItemPopupMenu->insertSeparator(); | 602 | mItemPopupMenu->insertSeparator(); |
603 | #if 0 | 603 | #if 0 |
604 | mItemPopupMenu->insertItem(i18n("Delete completed To-Dos","Purge Completed"), | 604 | mItemPopupMenu->insertItem(i18n("Delete completed To-Dos","Purge Completed..."), |
605 | this, SLOT( purgeCompleted() ) ); | 605 | this, SLOT( purgeCompleted() ) ); |
606 | mItemPopupMenu->insertItem(i18n("toggle completed To-Dos","Show Completed"), | 606 | mItemPopupMenu->insertItem(i18n("toggle completed To-Dos","Show Completed"), |
607 | this, SLOT( toggleCompleted() ),0, 33 ); | 607 | this, SLOT( toggleCompleted() ),0, 33 ); |
608 | mItemPopupMenu->insertItem(i18n("toggle quick todo","Show Quick Todo"), | 608 | mItemPopupMenu->insertItem(i18n("toggle quick todo","Show Quick Todo"), |
609 | this, SLOT( toggleQuickTodo() ),0, 34 ); | 609 | this, SLOT( toggleQuickTodo() ),0, 34 ); |
610 | mItemPopupMenu->insertItem(i18n("toggle running todo","Hide not Running"), | 610 | mItemPopupMenu->insertItem(i18n("toggle running todo","Hide not Running"), |
611 | this, SLOT( toggleRunning() ),0, 35 ); | 611 | this, SLOT( toggleRunning() ),0, 35 ); |
612 | 612 | ||
613 | #endif | 613 | #endif |
614 | mPopupMenu = new QPopupMenu(this); | 614 | mPopupMenu = new QPopupMenu(this); |
615 | mPopupMenu->insertItem(SmallIconSet("todo"), i18n("New Todo..."), this, | 615 | mPopupMenu->insertItem(SmallIconSet("todo"), i18n("New Todo..."), this, |
616 | SLOT (newTodo()),0,1); | 616 | SLOT (newTodo()),0,1); |
617 | mPopupMenu->insertItem(i18n("delete completed To-Dos","Purge Completed"), | 617 | mPopupMenu->insertItem(i18n("delete completed To-Dos","Purge Completed..."), |
618 | this, SLOT(purgeCompleted()),0,2); | 618 | this, SLOT(purgeCompleted()),0,2); |
619 | mPopupMenu->insertItem(i18n("Show Completed"), | 619 | mPopupMenu->insertItem(i18n("Show Completed"), |
620 | this, SLOT( toggleCompleted() ),0,3 ); | 620 | this, SLOT( toggleCompleted() ),0,3 ); |
621 | mPopupMenu->insertItem(i18n("toggle running todo","Hide not Running"), | 621 | mPopupMenu->insertItem(i18n("toggle running todo","Hide not Running"), |
622 | this, SLOT( toggleRunning() ),0,5 ); | 622 | this, SLOT( toggleRunning() ),0,5 ); |
623 | mPopupMenu->insertItem(i18n(" set all open","Display all opened"), | 623 | mPopupMenu->insertItem(i18n(" set all open","Display all opened"), |
624 | this, SLOT( setAllOpen() ),0,6 ); | 624 | this, SLOT( setAllOpen() ),0,6 ); |
625 | mPopupMenu->insertItem(i18n(" set all close","Display all closed"), | 625 | mPopupMenu->insertItem(i18n(" set all close","Display all closed"), |
626 | this, SLOT( setAllClose() ),0,7 ); | 626 | this, SLOT( setAllClose() ),0,7 ); |
627 | mPopupMenu->insertItem(i18n(" set all flat","Display all flat"), | 627 | mPopupMenu->insertItem(i18n(" set all flat","Display all flat"), |
628 | this, SLOT( setAllFlat() ),0,8 ); | 628 | this, SLOT( setAllFlat() ),0,8 ); |
629 | mPopupMenu->insertSeparator(); | 629 | mPopupMenu->insertSeparator(); |
630 | mPopupMenu->insertItem(i18n("toggle quick todo","Show Quick Todo"), | 630 | mPopupMenu->insertItem(i18n("toggle quick todo","Show Quick Todo"), |
631 | this, SLOT( toggleQuickTodo() ),0,4 ); | 631 | this, SLOT( toggleQuickTodo() ),0,4 ); |
632 | mDocPrefs = new DocPrefs( name ); | 632 | mDocPrefs = new DocPrefs( name ); |
633 | 633 | ||
634 | mItemPopupMenu->insertItem(i18n("Todo View"),mPopupMenu ); | 634 | mItemPopupMenu->insertItem(i18n("Todo View"),mPopupMenu ); |
635 | mPopupMenu->setCheckable( true ); | 635 | mPopupMenu->setCheckable( true ); |
636 | mItemPopupMenu->setCheckable( true ); | 636 | mItemPopupMenu->setCheckable( true ); |
637 | 637 | ||
638 | 638 | ||
639 | mPopupMenu->setItemChecked( 3,KOPrefs::instance()->mShowCompletedTodo ); | 639 | mPopupMenu->setItemChecked( 3,KOPrefs::instance()->mShowCompletedTodo ); |
640 | mItemPopupMenu->setItemChecked( 33 , KOPrefs::instance()->mShowCompletedTodo ); | 640 | mItemPopupMenu->setItemChecked( 33 , KOPrefs::instance()->mShowCompletedTodo ); |
641 | 641 | ||
642 | mPopupMenu->setItemChecked(4,KOPrefs::instance()->mEnableQuickTodo); | 642 | mPopupMenu->setItemChecked(4,KOPrefs::instance()->mEnableQuickTodo); |
643 | mItemPopupMenu->setItemChecked( 34 , KOPrefs::instance()->mEnableQuickTodo ); | 643 | mItemPopupMenu->setItemChecked( 34 , KOPrefs::instance()->mEnableQuickTodo ); |
644 | 644 | ||
645 | mPopupMenu->setItemChecked(5,KOPrefs::instance()->mHideNonStartedTodos); | 645 | mPopupMenu->setItemChecked(5,KOPrefs::instance()->mHideNonStartedTodos); |
646 | mItemPopupMenu->setItemChecked( 35 , KOPrefs::instance()->mHideNonStartedTodos ); | 646 | mItemPopupMenu->setItemChecked( 35 , KOPrefs::instance()->mHideNonStartedTodos ); |
647 | 647 | ||
648 | 648 | ||
649 | // Double clicking conflicts with opening/closing the subtree | 649 | // Double clicking conflicts with opening/closing the subtree |
650 | connect( mTodoListView, SIGNAL( doubleClicked( QListViewItem *) ), | 650 | connect( mTodoListView, SIGNAL( doubleClicked( QListViewItem *) ), |
651 | SLOT( editItem( QListViewItem *) ) ); | 651 | SLOT( editItem( QListViewItem *) ) ); |
652 | /* | 652 | /* |
653 | connect( mTodoListView, SIGNAL( rightButtonClicked ( QListViewItem *, | 653 | connect( mTodoListView, SIGNAL( rightButtonClicked ( QListViewItem *, |
654 | const QPoint &,int ) ), | 654 | const QPoint &,int ) ), |
655 | SLOT( popupMenu( QListViewItem *, const QPoint & ,int) ) ); | 655 | SLOT( popupMenu( QListViewItem *, const QPoint & ,int) ) ); |
656 | */ | 656 | */ |
657 | connect( mTodoListView, SIGNAL( contextRequest ( QListViewItem *, | 657 | connect( mTodoListView, SIGNAL( contextRequest ( QListViewItem *, |
658 | const QPoint &,int ) ), | 658 | const QPoint &,int ) ), |
659 | SLOT( popupMenu( QListViewItem *, const QPoint & ,int) ) ); | 659 | SLOT( popupMenu( QListViewItem *, const QPoint & ,int) ) ); |
660 | connect( mTodoListView, SIGNAL( clicked( QListViewItem * ) ), | 660 | connect( mTodoListView, SIGNAL( clicked( QListViewItem * ) ), |
661 | SLOT( itemClicked( QListViewItem * ) ) ); | 661 | SLOT( itemClicked( QListViewItem * ) ) ); |
662 | connect( mTodoListView, SIGNAL( double_Clicked( QListViewItem * ) ), | 662 | connect( mTodoListView, SIGNAL( double_Clicked( QListViewItem * ) ), |
663 | SLOT( itemDoubleClicked( QListViewItem * ) ) ); | 663 | SLOT( itemDoubleClicked( QListViewItem * ) ) ); |
664 | connect( mTodoListView, SIGNAL( todoDropped( Todo *, int ) ), | 664 | connect( mTodoListView, SIGNAL( todoDropped( Todo *, int ) ), |
665 | SLOT( updateView() ) ); | 665 | SLOT( updateView() ) ); |
666 | connect( mTodoListView, SIGNAL( todoDropped( Todo *, int ) ), | 666 | connect( mTodoListView, SIGNAL( todoDropped( Todo *, int ) ), |
667 | SLOT( todoModified(Todo *, int) ) ); | 667 | SLOT( todoModified(Todo *, int) ) ); |
668 | connect( mTodoListView, SIGNAL( expanded( QListViewItem * ) ), | 668 | connect( mTodoListView, SIGNAL( expanded( QListViewItem * ) ), |
669 | SLOT( itemStateChanged( QListViewItem * ) ) ); | 669 | SLOT( itemStateChanged( QListViewItem * ) ) ); |
670 | connect( mTodoListView, SIGNAL( collapsed( QListViewItem * ) ), | 670 | connect( mTodoListView, SIGNAL( collapsed( QListViewItem * ) ), |
671 | SLOT( itemStateChanged( QListViewItem * ) ) ); | 671 | SLOT( itemStateChanged( QListViewItem * ) ) ); |
672 | connect( mTodoListView, SIGNAL( paintNeeded() ), | 672 | connect( mTodoListView, SIGNAL( paintNeeded() ), |
673 | SLOT( paintNeeded()) ); | 673 | SLOT( paintNeeded()) ); |
674 | 674 | ||
675 | #if 0 | 675 | #if 0 |
676 | connect(mTodoListView,SIGNAL(selectionChanged(QListViewItem *)), | 676 | connect(mTodoListView,SIGNAL(selectionChanged(QListViewItem *)), |
677 | SLOT(selectionChanged(QListViewItem *))); | 677 | SLOT(selectionChanged(QListViewItem *))); |
678 | connect(mTodoListView,SIGNAL(clicked(QListViewItem *)), | 678 | connect(mTodoListView,SIGNAL(clicked(QListViewItem *)), |
679 | SLOT(selectionChanged(QListViewItem *))); | 679 | SLOT(selectionChanged(QListViewItem *))); |
680 | connect(mTodoListView,SIGNAL(pressed(QListViewItem *)), | 680 | connect(mTodoListView,SIGNAL(pressed(QListViewItem *)), |
681 | SLOT(selectionChanged(QListViewItem *))); | 681 | SLOT(selectionChanged(QListViewItem *))); |
682 | #endif | 682 | #endif |
683 | 683 | ||
684 | connect( mTodoListView, SIGNAL(reparentTodoSignal( Todo *,Todo * ) ), SIGNAL(reparentTodoSignal( Todo *,Todo * ) )); | 684 | connect( mTodoListView, SIGNAL(reparentTodoSignal( Todo *,Todo * ) ), SIGNAL(reparentTodoSignal( Todo *,Todo * ) )); |
685 | connect( mTodoListView, SIGNAL(unparentTodoSignal(Todo *) ), SIGNAL(unparentTodoSignal(Todo *) )); | 685 | connect( mTodoListView, SIGNAL(unparentTodoSignal(Todo *) ), SIGNAL(unparentTodoSignal(Todo *) )); |
686 | connect( mTodoListView, SIGNAL( deleteTodo(Todo *) ), SIGNAL(deleteTodoSignal(Todo *) )); | 686 | connect( mTodoListView, SIGNAL( deleteTodo(Todo *) ), SIGNAL(deleteTodoSignal(Todo *) )); |
687 | 687 | ||
688 | connect( mTodoListView, SIGNAL(selectionChanged() ), | 688 | connect( mTodoListView, SIGNAL(selectionChanged() ), |
689 | SLOT( processSelectionChange() ) ); | 689 | SLOT( processSelectionChange() ) ); |
690 | connect( mQuickAdd, SIGNAL( returnPressed () ), | 690 | connect( mQuickAdd, SIGNAL( returnPressed () ), |
691 | SLOT( addQuickTodo() ) ); | 691 | SLOT( addQuickTodo() ) ); |
692 | 692 | ||
693 | } | 693 | } |
694 | 694 | ||
695 | KOTodoView::~KOTodoView() | 695 | KOTodoView::~KOTodoView() |
696 | { | 696 | { |
697 | 697 | ||
698 | #if QT_VERSION >= 0x030000 | 698 | #if QT_VERSION >= 0x030000 |
699 | 699 | ||
700 | #else | 700 | #else |
701 | delete mKOTodoViewWhatsThis; | 701 | delete mKOTodoViewWhatsThis; |
702 | #endif | 702 | #endif |
703 | 703 | ||
704 | delete mDocPrefs; | 704 | delete mDocPrefs; |
705 | } | 705 | } |
706 | QString KOTodoView::getWhatsThisText(QPoint p) | 706 | QString KOTodoView::getWhatsThisText(QPoint p) |
707 | { | 707 | { |
708 | KOTodoViewItem* item = ( KOTodoViewItem* ) mTodoListView->itemAt( p ); | 708 | KOTodoViewItem* item = ( KOTodoViewItem* ) mTodoListView->itemAt( p ); |
709 | if ( item ) | 709 | if ( item ) |
710 | return KIncidenceFormatter::instance()->getFormattedText( item->todo(), | 710 | return KIncidenceFormatter::instance()->getFormattedText( item->todo(), |
711 | KOPrefs::instance()->mWTshowDetails, | 711 | KOPrefs::instance()->mWTshowDetails, |
712 | KOPrefs::instance()->mWTshowCreated, | 712 | KOPrefs::instance()->mWTshowCreated, |
713 | KOPrefs::instance()->mWTshowChanged); | 713 | KOPrefs::instance()->mWTshowChanged); |
714 | return i18n("That is the todo view" ); | 714 | return i18n("That is the todo view" ); |
715 | 715 | ||
716 | } | 716 | } |
717 | 717 | ||
718 | void KOTodoView::jumpToDate () | 718 | void KOTodoView::jumpToDate () |
719 | { | 719 | { |
720 | // if (mActiveItem) { | 720 | // if (mActiveItem) { |
721 | // mActiveItem->todo()); | 721 | // mActiveItem->todo()); |
722 | // if ( mActiveItem->todo()->hasDueDate() ) | 722 | // if ( mActiveItem->todo()->hasDueDate() ) |
723 | // emit mActiveItem->todo()jumpToTime( mTodo->dtDue().date() ); | 723 | // emit mActiveItem->todo()jumpToTime( mTodo->dtDue().date() ); |
724 | } | 724 | } |
725 | void KOTodoView::paintNeeded() | 725 | void KOTodoView::paintNeeded() |
726 | { | 726 | { |
727 | if ( mPendingUpdateBeforeRepaint ) { | 727 | if ( mPendingUpdateBeforeRepaint ) { |
728 | updateView(); | 728 | updateView(); |
729 | mPendingUpdateBeforeRepaint = false; | 729 | mPendingUpdateBeforeRepaint = false; |
730 | } | 730 | } |
731 | } | 731 | } |
732 | void KOTodoView::paintEvent(QPaintEvent * pevent) | 732 | void KOTodoView::paintEvent(QPaintEvent * pevent) |
733 | { | 733 | { |
734 | if ( mPendingUpdateBeforeRepaint ) { | 734 | if ( mPendingUpdateBeforeRepaint ) { |
735 | updateView(); | 735 | updateView(); |
736 | mPendingUpdateBeforeRepaint = false; | 736 | mPendingUpdateBeforeRepaint = false; |
737 | } | 737 | } |
738 | KOrg::BaseView::paintEvent( pevent); | 738 | KOrg::BaseView::paintEvent( pevent); |
739 | } | 739 | } |
740 | 740 | ||
741 | void KOTodoView::updateView() | 741 | void KOTodoView::updateView() |
742 | { | 742 | { |
743 | pendingSubtodo = 0; | 743 | pendingSubtodo = 0; |
744 | if ( mBlockUpdate ) { | 744 | if ( mBlockUpdate ) { |
745 | return; | 745 | return; |
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index 23537a6..a5d8824 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp | |||
@@ -529,731 +529,752 @@ void MainWindow::recieve( const QCString& cmsg, const QByteArray& data ) | |||
529 | KOPrefs::instance()->mLastSyncedLocalFile = fileName ; | 529 | KOPrefs::instance()->mLastSyncedLocalFile = fileName ; |
530 | mSyncManager->slotSyncMenu( 1002 ); | 530 | mSyncManager->slotSyncMenu( 1002 ); |
531 | return; | 531 | return; |
532 | } | 532 | } |
533 | 533 | ||
534 | if ( cmsg == "-writeFile" ) { | 534 | if ( cmsg == "-writeFile" ) { |
535 | // I made from the "-writeFile" an "-writeAlarm" | 535 | // I made from the "-writeFile" an "-writeAlarm" |
536 | mView->viewManager()->showWhatsNextView(); | 536 | mView->viewManager()->showWhatsNextView(); |
537 | mCalendar->checkAlarmForIncidence( 0, true); | 537 | mCalendar->checkAlarmForIncidence( 0, true); |
538 | showMaximized(); | 538 | showMaximized(); |
539 | raise(); | 539 | raise(); |
540 | return; | 540 | return; |
541 | 541 | ||
542 | } | 542 | } |
543 | if ( cmsg == "-writeFileSilent" ) { | 543 | if ( cmsg == "-writeFileSilent" ) { |
544 | // I made from the "-writeFile" an "-writeAlarm" | 544 | // I made from the "-writeFile" an "-writeAlarm" |
545 | // mView->viewManager()->showWhatsNextView(); | 545 | // mView->viewManager()->showWhatsNextView(); |
546 | mCalendar->checkAlarmForIncidence( 0, true); | 546 | mCalendar->checkAlarmForIncidence( 0, true); |
547 | //showMaximized(); | 547 | //showMaximized(); |
548 | //raise(); | 548 | //raise(); |
549 | hide(); | 549 | hide(); |
550 | return; | 550 | return; |
551 | } | 551 | } |
552 | if ( cmsg == "-newCountdown" ) { | 552 | if ( cmsg == "-newCountdown" ) { |
553 | qDebug("newCountdown "); | 553 | qDebug("newCountdown "); |
554 | 554 | ||
555 | } | 555 | } |
556 | QString msg ; | 556 | QString msg ; |
557 | QString allmsg = cmsg; | 557 | QString allmsg = cmsg; |
558 | while ( allmsg.length() > 0 ) { | 558 | while ( allmsg.length() > 0 ) { |
559 | int nextC = allmsg.find( "-", 1 ); | 559 | int nextC = allmsg.find( "-", 1 ); |
560 | if ( nextC == -1 ) { | 560 | if ( nextC == -1 ) { |
561 | msg = allmsg; | 561 | msg = allmsg; |
562 | allmsg = ""; | 562 | allmsg = ""; |
563 | } else{ | 563 | } else{ |
564 | msg = allmsg.left( nextC ); | 564 | msg = allmsg.left( nextC ); |
565 | allmsg = allmsg.mid( nextC, allmsg.length()-nextC ); | 565 | allmsg = allmsg.mid( nextC, allmsg.length()-nextC ); |
566 | } | 566 | } |
567 | //qDebug("msg: %s all: %s ", msg.latin1(), allmsg.latin1() ); | 567 | //qDebug("msg: %s all: %s ", msg.latin1(), allmsg.latin1() ); |
568 | if ( msg == "-newEvent" ) { | 568 | if ( msg == "-newEvent" ) { |
569 | QTimer::singleShot( 0, mView, SLOT ( newEvent())); | 569 | QTimer::singleShot( 0, mView, SLOT ( newEvent())); |
570 | } | 570 | } |
571 | if ( msg == "-newTodo" ) { | 571 | if ( msg == "-newTodo" ) { |
572 | QTimer::singleShot( 0, mView, SLOT ( newTodo())); | 572 | QTimer::singleShot( 0, mView, SLOT ( newTodo())); |
573 | } | 573 | } |
574 | if ( msg == "-showWN" ) { | 574 | if ( msg == "-showWN" ) { |
575 | mView->viewManager()->showWhatsNextView(); | 575 | mView->viewManager()->showWhatsNextView(); |
576 | } | 576 | } |
577 | if ( msg == "-showTodo" ) { | 577 | if ( msg == "-showTodo" ) { |
578 | mView->viewManager()->showTodoView(); | 578 | mView->viewManager()->showTodoView(); |
579 | } | 579 | } |
580 | if ( msg == "-showList" ) { | 580 | if ( msg == "-showList" ) { |
581 | mView->viewManager()->showListView(); | 581 | mView->viewManager()->showListView(); |
582 | } | 582 | } |
583 | else if ( msg == "-showDay" ) { | 583 | else if ( msg == "-showDay" ) { |
584 | mView->viewManager()->showDayView(); | 584 | mView->viewManager()->showDayView(); |
585 | } | 585 | } |
586 | else if ( msg == "-showWWeek" ) { | 586 | else if ( msg == "-showWWeek" ) { |
587 | mView->viewManager()->showWorkWeekView(); | 587 | mView->viewManager()->showWorkWeekView(); |
588 | } | 588 | } |
589 | else if ( msg == "-ringSync" ) { | 589 | else if ( msg == "-ringSync" ) { |
590 | QTimer::singleShot( 0, this, SLOT (startMultiSync())); | 590 | QTimer::singleShot( 0, this, SLOT (startMultiSync())); |
591 | } | 591 | } |
592 | else if ( msg == "-showWeek" ) { | 592 | else if ( msg == "-showWeek" ) { |
593 | mView->viewManager()->showWeekView(); | 593 | mView->viewManager()->showWeekView(); |
594 | } | 594 | } |
595 | else if ( msg == "-showTodo" ) { | 595 | else if ( msg == "-showTodo" ) { |
596 | mView->viewManager()->showTodoView(); | 596 | mView->viewManager()->showTodoView(); |
597 | } | 597 | } |
598 | else if ( msg == "-showJournal" ) { | 598 | else if ( msg == "-showJournal" ) { |
599 | mView->dateNavigator()->selectDates( 1 ); | 599 | mView->dateNavigator()->selectDates( 1 ); |
600 | mView->dateNavigator()->selectToday(); | 600 | mView->dateNavigator()->selectToday(); |
601 | mView->viewManager()->showJournalView(); | 601 | mView->viewManager()->showJournalView(); |
602 | } | 602 | } |
603 | else if ( msg == "-showKO" ) { | 603 | else if ( msg == "-showKO" ) { |
604 | mView->viewManager()->showNextXView(); | 604 | mView->viewManager()->showNextXView(); |
605 | } | 605 | } |
606 | else if ( msg == "-showWNext" ) { | 606 | else if ( msg == "-showWNext" ) { |
607 | mView->viewManager()->showWhatsNextView(); | 607 | mView->viewManager()->showWhatsNextView(); |
608 | } | 608 | } |
609 | else if ( msg == "nextView()" ) { | 609 | else if ( msg == "nextView()" ) { |
610 | mView->viewManager()->showNextView(); | 610 | mView->viewManager()->showNextView(); |
611 | } | 611 | } |
612 | else if ( msg == "-showNextXView" ) { | 612 | else if ( msg == "-showNextXView" ) { |
613 | mView->viewManager()->showNextXView(); | 613 | mView->viewManager()->showNextXView(); |
614 | } | 614 | } |
615 | 615 | ||
616 | 616 | ||
617 | } | 617 | } |
618 | 618 | ||
619 | showMaximized(); | 619 | showMaximized(); |
620 | raise(); | 620 | raise(); |
621 | } | 621 | } |
622 | void MainWindow::startMultiSync() | 622 | void MainWindow::startMultiSync() |
623 | { | 623 | { |
624 | QString question = i18n("Do you really want\nto multiple sync\nwith all checked profiles?\nSyncing takes some\ntime - all profiles\nare synced twice!"); | 624 | QString question = i18n("Do you really want\nto multiple sync\nwith all checked profiles?\nSyncing takes some\ntime - all profiles\nare synced twice!"); |
625 | if ( QMessageBox::information( this, i18n("KDE-Pim Sync"), | 625 | if ( QMessageBox::information( this, i18n("KDE-Pim Sync"), |
626 | question, | 626 | question, |
627 | i18n("Yes"), i18n("No"), | 627 | i18n("Yes"), i18n("No"), |
628 | 0, 0 ) != 0 ) { | 628 | 0, 0 ) != 0 ) { |
629 | setCaption(i18n("Aborted! Nothing synced!")); | 629 | setCaption(i18n("Aborted! Nothing synced!")); |
630 | return; | 630 | return; |
631 | } | 631 | } |
632 | mSyncManager->multiSync( false ); | 632 | mSyncManager->multiSync( false ); |
633 | #ifndef DESKTOP_VERSION | 633 | #ifndef DESKTOP_VERSION |
634 | QCopEnvelope e("QPE/Application/kapi", "doRingSync"); | 634 | QCopEnvelope e("QPE/Application/kapi", "doRingSync"); |
635 | #endif | 635 | #endif |
636 | } | 636 | } |
637 | QPixmap MainWindow::loadPixmap( QString name ) | 637 | QPixmap MainWindow::loadPixmap( QString name ) |
638 | { | 638 | { |
639 | return SmallIcon( name ); | 639 | return SmallIcon( name ); |
640 | 640 | ||
641 | } | 641 | } |
642 | void MainWindow::setUsesBigPixmaps ( bool b ) | 642 | void MainWindow::setUsesBigPixmaps ( bool b ) |
643 | { | 643 | { |
644 | qDebug("KO: MainWindow::setUsesBigPixmaps %d called", b); | 644 | qDebug("KO: MainWindow::setUsesBigPixmaps %d called", b); |
645 | if ( b ) | 645 | if ( b ) |
646 | qDebug("KO: BigPixmaps are not supported "); | 646 | qDebug("KO: BigPixmaps are not supported "); |
647 | } | 647 | } |
648 | void MainWindow::initActions() | 648 | void MainWindow::initActions() |
649 | { | 649 | { |
650 | //KOPrefs::instance()->mShowFullMenu | 650 | //KOPrefs::instance()->mShowFullMenu |
651 | iconToolBar->clear(); | 651 | iconToolBar->clear(); |
652 | KOPrefs *p = KOPrefs::instance(); | 652 | KOPrefs *p = KOPrefs::instance(); |
653 | //QPEMenuBar *menuBar1;// = new QPEMenuBar( iconToolBar ); | 653 | //QPEMenuBar *menuBar1;// = new QPEMenuBar( iconToolBar ); |
654 | 654 | ||
655 | QPopupMenu *viewMenu = new QPopupMenu( this ); | 655 | QPopupMenu *viewMenu = new QPopupMenu( this ); |
656 | QPopupMenu *actionMenu = new QPopupMenu( this ); | 656 | QPopupMenu *actionMenu = new QPopupMenu( this ); |
657 | #ifdef DESKTOP_VERSION | ||
658 | mCurrentItemMenu = actionMenu; | ||
659 | #else | ||
660 | mCurrentItemMenu = new QPopupMenu ( this ); | ||
661 | #endif | ||
657 | QPopupMenu *importMenu = new QPopupMenu( this ); | 662 | QPopupMenu *importMenu = new QPopupMenu( this ); |
658 | QPopupMenu *importMenu_X = new QPopupMenu( this ); | 663 | QPopupMenu *importMenu_X = new QPopupMenu( this ); |
659 | QPopupMenu *exportMenu_X = new QPopupMenu( this ); | 664 | QPopupMenu *exportMenu_X = new QPopupMenu( this ); |
660 | QPopupMenu *beamMenu_X = new QPopupMenu( this ); | 665 | QPopupMenu *beamMenu_X = new QPopupMenu( this ); |
661 | selectFilterMenu = new QPopupMenu( this ); | 666 | selectFilterMenu = new QPopupMenu( this ); |
662 | selectFilterMenu->setCheckable( true ); | 667 | selectFilterMenu->setCheckable( true ); |
663 | syncMenu = new QPopupMenu( this ); | 668 | syncMenu = new QPopupMenu( this ); |
664 | configureAgendaMenu = new QPopupMenu( this ); | 669 | configureAgendaMenu = new QPopupMenu( this ); |
665 | configureToolBarMenu = new QPopupMenu( this ); | 670 | configureToolBarMenu = new QPopupMenu( this ); |
666 | QPopupMenu *helpMenu = new QPopupMenu( this ); | 671 | QPopupMenu *helpMenu = new QPopupMenu( this ); |
667 | QIconSet icon; | 672 | QIconSet icon; |
668 | int pixWid = 22, pixHei = 22; | 673 | int pixWid = 22, pixHei = 22; |
669 | QString pathString = ""; | 674 | QString pathString = ""; |
670 | if ( !p->mToolBarMiniIcons ) { | 675 | if ( !p->mToolBarMiniIcons ) { |
671 | if ( QApplication::desktop()->width() < 480 /*|| QApplication::desktop()->height() < 320*/) { | 676 | if ( QApplication::desktop()->width() < 480 /*|| QApplication::desktop()->height() < 320*/) { |
672 | pathString += "icons16/"; | 677 | pathString += "icons16/"; |
673 | pixWid = 18; pixHei = 16; | 678 | pixWid = 18; pixHei = 16; |
674 | } | 679 | } |
675 | } else { | 680 | } else { |
676 | pathString += "iconsmini/"; | 681 | pathString += "iconsmini/"; |
677 | pixWid = 18; pixHei = 16; | 682 | pixWid = 18; pixHei = 16; |
678 | } | 683 | } |
679 | if ( KOPrefs::instance()->mShowFullMenu ) { | 684 | if ( KOPrefs::instance()->mShowFullMenu ) { |
680 | QMenuBar *menuBar1; | 685 | QMenuBar *menuBar1; |
681 | menuBar1 = menuBar(); | 686 | menuBar1 = menuBar(); |
682 | menuBar1->insertItem( i18n("File"), importMenu ); | 687 | menuBar1->insertItem( i18n("File"), importMenu ); |
683 | menuBar1->insertItem( i18n("View"), viewMenu ); | 688 | menuBar1->insertItem( i18n("View"), viewMenu ); |
684 | menuBar1->insertItem( i18n("Actions"), actionMenu ); | 689 | menuBar1->insertItem( i18n("Actions"), actionMenu ); |
685 | #ifdef DESKTOP_VERSION | 690 | #ifdef DESKTOP_VERSION |
686 | menuBar1->insertItem( i18n("Synchronize"), syncMenu ); | 691 | menuBar1->insertItem( i18n("Synchronize"), syncMenu ); |
687 | menuBar1->insertItem( i18n("AgendaSize"),configureAgendaMenu ); | 692 | menuBar1->insertItem( i18n("AgendaSize"),configureAgendaMenu ); |
688 | #else | 693 | #else |
689 | menuBar1->insertItem( i18n("Sync"), syncMenu ); | 694 | menuBar1->insertItem( i18n("Sync"), syncMenu ); |
690 | menuBar1->insertItem( i18n("Agenda"),configureAgendaMenu ); | 695 | menuBar1->insertItem( i18n("Agenda"),configureAgendaMenu ); |
691 | #endif | 696 | #endif |
692 | //menuBar1->insertItem( i18n("Toolbar"),configureToolBarMenu ); | 697 | //menuBar1->insertItem( i18n("Toolbar"),configureToolBarMenu ); |
693 | menuBar1->insertItem( i18n("Filter"),selectFilterMenu ); | 698 | menuBar1->insertItem( i18n("Filter"),selectFilterMenu ); |
694 | menuBar1->insertItem( i18n("Help"), helpMenu ); | 699 | menuBar1->insertItem( i18n("Help"), helpMenu ); |
695 | } else { | 700 | } else { |
696 | QPEMenuBar *menuBar1; | 701 | QPEMenuBar *menuBar1; |
697 | menuBar1 = new QPEMenuBar( iconToolBar ); | 702 | menuBar1 = new QPEMenuBar( iconToolBar ); |
698 | QPopupMenu *menuBar = new QPopupMenu( this ); | 703 | QPopupMenu *menuBar = new QPopupMenu( this ); |
699 | icon = loadPixmap( pathString + "z_menu" ); | 704 | icon = loadPixmap( pathString + "z_menu" ); |
700 | menuBar1->insertItem( icon.pixmap(), menuBar); | 705 | menuBar1->insertItem( icon.pixmap(), menuBar); |
701 | //menuBar1->insertItem( i18n("ME"), menuBar); | 706 | //menuBar1->insertItem( i18n("ME"), menuBar); |
702 | menuBar->insertItem( i18n("File"), importMenu ); | 707 | menuBar->insertItem( i18n("File"), importMenu ); |
703 | menuBar->insertItem( i18n("View"), viewMenu ); | 708 | menuBar->insertItem( i18n("View"), viewMenu ); |
704 | menuBar->insertItem( i18n("Actions"), actionMenu ); | 709 | menuBar->insertItem( i18n("Actions"), actionMenu ); |
705 | menuBar->insertItem( i18n("Synchronize"), syncMenu ); | 710 | menuBar->insertItem( i18n("Synchronize"), syncMenu ); |
706 | menuBar->insertItem( i18n("AgendaSize"),configureAgendaMenu ); | 711 | menuBar->insertItem( i18n("AgendaSize"),configureAgendaMenu ); |
707 | menuBar->insertItem( i18n("Toolbar"),configureToolBarMenu ); | 712 | menuBar->insertItem( i18n("Toolbar"),configureToolBarMenu ); |
708 | menuBar->insertItem( i18n("Filter"),selectFilterMenu ); | 713 | menuBar->insertItem( i18n("Filter"),selectFilterMenu ); |
709 | menuBar->insertItem( i18n("Help"), helpMenu ); | 714 | menuBar->insertItem( i18n("Help"), helpMenu ); |
710 | //menuBar1->setMaximumWidth( menuBar1->sizeHint().width() ); | 715 | //menuBar1->setMaximumWidth( menuBar1->sizeHint().width() ); |
711 | menuBar1->setMaximumSize( menuBar1->sizeHint( )); | 716 | menuBar1->setMaximumSize( menuBar1->sizeHint( )); |
712 | } | 717 | } |
713 | connect ( selectFilterMenu, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) ); | 718 | connect ( selectFilterMenu, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) ); |
714 | connect ( selectFilterMenu, SIGNAL( aboutToShow() ), this, SLOT (fillFilterMenu() ) ); | 719 | connect ( selectFilterMenu, SIGNAL( aboutToShow() ), this, SLOT (fillFilterMenu() ) ); |
715 | 720 | ||
716 | 721 | ||
717 | mWeekBgColor = iconToolBar->backgroundColor(); | 722 | mWeekBgColor = iconToolBar->backgroundColor(); |
718 | mWeekPixmap.resize( pixWid , pixHei ); | 723 | mWeekPixmap.resize( pixWid , pixHei ); |
719 | mWeekPixmap.fill( mWeekBgColor ); | 724 | mWeekPixmap.fill( mWeekBgColor ); |
720 | icon = mWeekPixmap; | 725 | icon = mWeekPixmap; |
721 | mWeekAction = new QAction( i18n("Select week number"),icon, i18n("Select week number"), 0, this ); | 726 | mWeekAction = new QAction( i18n("Select week number"),icon, i18n("Select week number"), 0, this ); |
722 | if ( p-> mShowIconWeekNum ) | 727 | if ( p-> mShowIconWeekNum ) |
723 | mWeekAction->addTo( iconToolBar ); | 728 | mWeekAction->addTo( iconToolBar ); |
724 | mWeekFont = font(); | 729 | mWeekFont = font(); |
725 | 730 | ||
726 | int fontPoint = mWeekFont.pointSize(); | 731 | int fontPoint = mWeekFont.pointSize(); |
727 | QFontMetrics f( mWeekFont ); | 732 | QFontMetrics f( mWeekFont ); |
728 | int fontWid = f.width( "30" ); | 733 | int fontWid = f.width( "30" ); |
729 | while ( fontWid > pixWid ) { | 734 | while ( fontWid > pixWid ) { |
730 | --fontPoint; | 735 | --fontPoint; |
731 | mWeekFont.setPointSize( fontPoint ); | 736 | mWeekFont.setPointSize( fontPoint ); |
732 | QFontMetrics f( mWeekFont ); | 737 | QFontMetrics f( mWeekFont ); |
733 | fontWid = f.width( "30" ); | 738 | fontWid = f.width( "30" ); |
734 | //qDebug("dec-- "); | 739 | //qDebug("dec-- "); |
735 | } | 740 | } |
736 | 741 | ||
737 | connect( mWeekAction, SIGNAL( activated() ), | 742 | connect( mWeekAction, SIGNAL( activated() ), |
738 | this, SLOT( weekAction() ) ); | 743 | this, SLOT( weekAction() ) ); |
739 | 744 | ||
740 | connect( this, SIGNAL( selectWeek ( int ) ), mView->dateNavigator(), SLOT( selectWeek ( int ) ) ); | 745 | connect( this, SIGNAL( selectWeek ( int ) ), mView->dateNavigator(), SLOT( selectWeek ( int ) ) ); |
741 | if ( p->mShowIconFilterview ) { | 746 | if ( p->mShowIconFilterview ) { |
742 | icon = loadPixmap( pathString + "filter" ); | 747 | icon = loadPixmap( pathString + "filter" ); |
743 | actionFilterMenuTB = new QAction( i18n("Filter selector"), icon, i18n("Filter selector"), 0, this ); | 748 | actionFilterMenuTB = new QAction( i18n("Filter selector"), icon, i18n("Filter selector"), 0, this ); |
744 | connect( actionFilterMenuTB, SIGNAL( activated() ), | 749 | connect( actionFilterMenuTB, SIGNAL( activated() ), |
745 | this, SLOT( fillFilterMenuTB() ) ); | 750 | this, SLOT( fillFilterMenuTB() ) ); |
746 | actionFilterMenuTB->addTo( iconToolBar ); | 751 | actionFilterMenuTB->addTo( iconToolBar ); |
747 | selectFilterMenuTB = new QPopupMenu( this ); | 752 | selectFilterMenuTB = new QPopupMenu( this ); |
748 | selectFilterMenuTB->setCheckable( true ); | 753 | selectFilterMenuTB->setCheckable( true ); |
749 | connect ( selectFilterMenuTB, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) ); | 754 | connect ( selectFilterMenuTB, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) ); |
750 | } | 755 | } |
751 | 756 | ||
752 | //#endif | 757 | //#endif |
753 | // ****************** | 758 | // ****************** |
754 | QAction *action; | 759 | QAction *action; |
755 | // QPopupMenu *configureMenu= new QPopupMenu( menuBar ); | 760 | // QPopupMenu *configureMenu= new QPopupMenu( menuBar ); |
756 | configureToolBarMenu->setCheckable( true ); | 761 | configureToolBarMenu->setCheckable( true ); |
757 | 762 | ||
758 | 763 | ||
759 | configureAgendaMenu->setCheckable( true ); | 764 | configureAgendaMenu->setCheckable( true ); |
760 | int iii ; | 765 | int iii ; |
761 | for ( iii = 1;iii<= 10 ;++iii ){ | 766 | for ( iii = 1;iii<= 10 ;++iii ){ |
762 | configureAgendaMenu->insertItem(i18n("Size %1").arg(iii), (iii+1)*2 ); | 767 | configureAgendaMenu->insertItem(i18n("Size %1").arg(iii), (iii+1)*2 ); |
763 | } | 768 | } |
764 | //configureMenu->insertItem( "AgendaSize",configureAgendaMenu ); | 769 | //configureMenu->insertItem( "AgendaSize",configureAgendaMenu ); |
765 | 770 | ||
766 | connect( configureAgendaMenu, SIGNAL( aboutToShow()), | 771 | connect( configureAgendaMenu, SIGNAL( aboutToShow()), |
767 | this, SLOT( showConfigureAgenda( ) ) ); | 772 | this, SLOT( showConfigureAgenda( ) ) ); |
773 | icon = loadPixmap( pathString + "today" ); | ||
774 | QAction* today_action = new QAction( i18n("Go to Today"), icon, i18n("Go to Today"), 0, this ); | ||
775 | today_action->addTo( actionMenu ); | ||
776 | connect( today_action, SIGNAL( activated() ), | ||
777 | mView, SLOT( goToday() ) ); | ||
778 | |||
779 | icon = loadPixmap( pathString + "picker" ); | ||
780 | QAction* dPickerAction = new QAction( i18n("Select Date..."), icon, i18n("Select Date..."), 0, this ); | ||
781 | dPickerAction->addTo( actionMenu ); | ||
782 | connect( dPickerAction, SIGNAL( activated() ), | ||
783 | mView, SLOT( showDatePicker() ) ); | ||
784 | |||
785 | icon = loadPixmap( pathString + "search" ); | ||
786 | QAction* search_action = new QAction( i18n("Search"), icon, i18n("Search..."), 0, this ); | ||
787 | search_action->addTo( actionMenu ); | ||
788 | connect( search_action, SIGNAL( activated() ), | ||
789 | mView->dialogManager(), SLOT( showSearchDialog() ) ); | ||
768 | 790 | ||
769 | icon = loadPixmap( pathString + "configure" ); | ||
770 | action = new QAction( i18n("Configure"),icon, i18n("Configure KO/Pi..."), 0, this ); | ||
771 | action->addTo( actionMenu ); | ||
772 | connect( action, SIGNAL( activated() ), | ||
773 | mView, SLOT( edit_options() ) ); | ||
774 | icon = loadPixmap( pathString + "configure" ); | ||
775 | action = new QAction( i18n("Configure"),icon, i18n("Global Settings..."), 0, this ); | ||
776 | action->addTo( actionMenu ); | ||
777 | connect( action, SIGNAL( activated() ), | ||
778 | mView, SLOT( edit_global_options() ) ); | ||
779 | actionMenu->insertSeparator(); | 791 | actionMenu->insertSeparator(); |
792 | |||
793 | |||
780 | 794 | ||
781 | action = new QAction( i18n("Undo Delete"), i18n("Undo Delete..."), 0, this ); | 795 | action = new QAction( i18n("Undo Delete"), i18n("Undo Delete..."), 0, this ); |
782 | action->addTo( actionMenu ); | 796 | action->addTo( actionMenu ); |
783 | connect( action, SIGNAL( activated() ), | 797 | connect( action, SIGNAL( activated() ), |
784 | mView, SLOT( undo_delete() ) ); | 798 | mView, SLOT( undo_delete() ) ); |
785 | actionMenu->insertSeparator(); | ||
786 | 799 | ||
787 | icon = loadPixmap( pathString + "newevent" ); | 800 | icon = loadPixmap( pathString + "newevent" ); |
788 | configureToolBarMenu->insertItem(i18n("Stretched TB"), 5 ); | 801 | configureToolBarMenu->insertItem(i18n("Stretched TB"), 5 ); |
789 | configureToolBarMenu->insertItem(i18n("Only one toolbar"), 6 ); | 802 | configureToolBarMenu->insertItem(i18n("Only one toolbar"), 6 ); |
790 | configureToolBarMenu->insertSeparator(); | 803 | configureToolBarMenu->insertSeparator(); |
791 | configureToolBarMenu->insertItem(i18n("Filtermenu"), 7 ); | 804 | configureToolBarMenu->insertItem(i18n("Filtermenu"), 7 ); |
792 | configureToolBarMenu->insertSeparator(); | 805 | configureToolBarMenu->insertSeparator(); |
793 | configureToolBarMenu->insertItem(i18n("Week Number"), 400); | 806 | configureToolBarMenu->insertItem(i18n("Week Number"), 400); |
794 | configureToolBarMenu->insertItem(icon, i18n("New Event..."), 10 ); | 807 | configureToolBarMenu->insertItem(icon, i18n("New Event..."), 10 ); |
808 | |||
809 | #ifndef DESKTOP_VERSION | ||
810 | actionMenu->insertItem ( i18n("Selected Item"), mCurrentItemMenu); | ||
811 | #endif | ||
812 | mShowAction = new QAction( "show_incidence", i18n("Show..."), 0, this ); | ||
813 | mShowAction->addTo( mCurrentItemMenu ); | ||
814 | connect( mShowAction, SIGNAL( activated() ), | ||
815 | mView, SLOT( showIncidence() ) ); | ||
816 | |||
817 | mEditAction = new QAction( "edit_incidence", i18n("Edit..."), 0, this ); | ||
818 | mEditAction->addTo( mCurrentItemMenu ); | ||
819 | connect( mEditAction, SIGNAL( activated() ), | ||
820 | mView, SLOT( editIncidence() ) ); | ||
821 | |||
822 | mDeleteAction = new QAction( "delete_incidence", i18n("Delete..."), 0, this ); | ||
823 | mDeleteAction->addTo( mCurrentItemMenu ); | ||
824 | connect( mDeleteAction, SIGNAL( activated() ), | ||
825 | mView, SLOT( deleteIncidence() ) ); | ||
826 | |||
827 | |||
828 | mCloneAction = new QAction( "clone_incidence", i18n("Clone..."), 0, this ); | ||
829 | mCloneAction->addTo( mCurrentItemMenu ); | ||
830 | connect( mCloneAction, SIGNAL( activated() ), | ||
831 | mView, SLOT( cloneIncidence() ) ); | ||
832 | mMoveAction = new QAction( "Move_incidence", i18n("Move..."), 0, this ); | ||
833 | mMoveAction->addTo( mCurrentItemMenu ); | ||
834 | connect( mMoveAction, SIGNAL( activated() ), | ||
835 | mView, SLOT( moveIncidence() ) ); | ||
836 | mBeamAction = new QAction( "Beam_incidence", i18n("Beam..."), 0, this ); | ||
837 | mBeamAction->addTo(mCurrentItemMenu ); | ||
838 | connect( mBeamAction, SIGNAL( activated() ), | ||
839 | mView, SLOT( beamIncidence() ) ); | ||
840 | mCancelAction = new QAction( "Cancel_incidence", i18n("Toggle Cancel"), 0, this ); | ||
841 | mCancelAction->addTo( mCurrentItemMenu ); | ||
842 | connect( mCancelAction, SIGNAL( activated() ), | ||
843 | mView, SLOT( toggleCancelIncidence() ) ); | ||
844 | #ifdef DESKTOP_VERSION | ||
845 | actionMenu->insertSeparator(); | ||
846 | #endif | ||
847 | |||
848 | |||
795 | QAction* ne_action = new QAction( i18n("New Event..."), icon, i18n("New Event..."), 0, this ); | 849 | QAction* ne_action = new QAction( i18n("New Event..."), icon, i18n("New Event..."), 0, this ); |
796 | ne_action->addTo( actionMenu ); | 850 | ne_action->addTo( actionMenu ); |
797 | connect( ne_action, SIGNAL( activated() ), | 851 | connect( ne_action, SIGNAL( activated() ), |
798 | mView, SLOT( newEvent() ) ); | 852 | mView, SLOT( newEvent() ) ); |
799 | icon = loadPixmap( pathString + "newtodo" ); | 853 | icon = loadPixmap( pathString + "newtodo" ); |
800 | configureToolBarMenu->insertItem(icon, i18n("New Todo..."), 20 ); | 854 | configureToolBarMenu->insertItem(icon, i18n("New Todo..."), 20 ); |
801 | QAction* nt_action = new QAction( i18n("New Todo..."), icon, i18n("New Todo..."), 0, this ); | 855 | QAction* nt_action = new QAction( i18n("New Todo..."), icon, i18n("New Todo..."), 0, this ); |
802 | nt_action->addTo( actionMenu ); | 856 | nt_action->addTo( actionMenu ); |
803 | connect( nt_action, SIGNAL( activated() ), | 857 | connect( nt_action, SIGNAL( activated() ), |
804 | mView, SLOT( newTodo() ) ); | 858 | mView, SLOT( newTodo() ) ); |
805 | 859 | ||
806 | icon = loadPixmap( pathString + "today" ); | 860 | |
807 | QAction* today_action = new QAction( i18n("Go to Today"), icon, i18n("Go to Today"), 0, this ); | ||
808 | today_action->addTo( viewMenu ); | ||
809 | connect( today_action, SIGNAL( activated() ), | ||
810 | mView, SLOT( goToday() ) ); | ||
811 | viewMenu->insertSeparator(); | ||
812 | 861 | ||
813 | // *********************** | 862 | // *********************** |
814 | if ( KOPrefs::instance()->mVerticalScreen ) { | 863 | if ( KOPrefs::instance()->mVerticalScreen ) { |
815 | icon = SmallIcon( "1updownarrow" ); | 864 | icon = SmallIcon( "1updownarrow" ); |
816 | } else { | 865 | } else { |
817 | icon = SmallIcon("1leftrightarrow" ); | 866 | icon = SmallIcon("1leftrightarrow" ); |
818 | } | 867 | } |
819 | configureToolBarMenu->insertItem(icon, i18n("Toggle Fullscreen"), 28 ); | 868 | configureToolBarMenu->insertItem(icon, i18n("Toggle Fullscreen"), 28 ); |
820 | QAction* FSaction = new QAction( i18n("Toggle Fullscreen"), icon, i18n("Toggle Fullscreen"), 0, this ); | 869 | QAction* FSaction = new QAction( i18n("Toggle Fullscreen"), icon, i18n("Toggle Fullscreen"), 0, this ); |
821 | FSaction->addTo( viewMenu ); | 870 | FSaction->addTo( viewMenu ); |
822 | connect( FSaction, SIGNAL( activated() ), mView, SLOT( toggleExpand() )); | 871 | connect( FSaction, SIGNAL( activated() ), mView, SLOT( toggleExpand() )); |
823 | 872 | ||
824 | 873 | ||
825 | icon = loadPixmap( pathString + "filter" ); | 874 | icon = loadPixmap( pathString + "filter" ); |
826 | configureToolBarMenu->insertItem(icon, i18n("Filter menu icon"), 26 ); | 875 | configureToolBarMenu->insertItem(icon, i18n("Filter menu icon"), 26 ); |
827 | icon = loadPixmap( pathString + "configure" ); | 876 | icon = loadPixmap( pathString + "configure" ); |
828 | action = new QAction( i18n("Toggle Resource View"), icon, i18n("Toggle Resource View"), 0, this ); | 877 | action = new QAction( i18n("Toggle Resource View"), icon, i18n("Toggle Resource View"), 0, this ); |
829 | action->addTo( viewMenu ); | 878 | action->addTo( viewMenu ); |
830 | connect( action, SIGNAL( activated() ), | 879 | connect( action, SIGNAL( activated() ), |
831 | mView, SLOT( toggleFilter() ) ); | 880 | mView, SLOT( toggleFilter() ) ); |
832 | mToggleFilter = action; | 881 | mToggleFilter = action; |
833 | icon = loadPixmap( pathString + "navi" ); | 882 | icon = loadPixmap( pathString + "navi" ); |
834 | configureToolBarMenu->insertItem(icon, i18n("Toggle DateNavigator"), 22 ); | 883 | configureToolBarMenu->insertItem(icon, i18n("Toggle DateNavigator"), 22 ); |
835 | action = new QAction( i18n("Toggle DateNavigator"), icon, i18n("Toggle DateNavigator"), 0, this ); | 884 | action = new QAction( i18n("Toggle DateNavigator"), icon, i18n("Toggle DateNavigator"), 0, this ); |
836 | action->addTo( viewMenu ); | 885 | action->addTo( viewMenu ); |
837 | connect( action, SIGNAL( activated() ), | 886 | connect( action, SIGNAL( activated() ), |
838 | mView, SLOT( toggleDateNavigatorWidget() ) ); | 887 | mView, SLOT( toggleDateNavigatorWidget() ) ); |
839 | mToggleNav = action ; | 888 | mToggleNav = action ; |
840 | icon = loadPixmap( pathString + "allday" ); | 889 | icon = loadPixmap( pathString + "allday" ); |
841 | configureToolBarMenu->insertItem(icon, i18n("Toggle Allday"), 24 ); | 890 | configureToolBarMenu->insertItem(icon, i18n("Toggle Allday"), 24 ); |
842 | action = new QAction( i18n("Toggle Allday"), icon,i18n("Toggle Allday"), 0, this ); | 891 | action = new QAction( i18n("Toggle Allday"), icon,i18n("Toggle Allday"), 0, this ); |
843 | action->addTo( viewMenu ); | 892 | action->addTo( viewMenu ); |
844 | connect( action, SIGNAL( activated() ), | 893 | connect( action, SIGNAL( activated() ), |
845 | mView, SLOT( toggleAllDaySize() ) ); | 894 | mView, SLOT( toggleAllDaySize() ) ); |
846 | mToggleAllday = action; | 895 | mToggleAllday = action; |
847 | 896 | ||
848 | 897 | ||
849 | connect( mView->viewManager(), SIGNAL( signalFullScreen( bool ) ), | 898 | connect( mView->viewManager(), SIGNAL( signalFullScreen( bool ) ), |
850 | mToggleNav, SLOT( setEnabled ( bool ) ) ); | 899 | mToggleNav, SLOT( setEnabled ( bool ) ) ); |
851 | //connect( mView->viewManager(), SIGNAL( signalFullScreen( bool ) ), | 900 | //connect( mView->viewManager(), SIGNAL( signalFullScreen( bool ) ), |
852 | // mToggleFilter, SLOT( setEnabled ( bool ) ) ); | 901 | // mToggleFilter, SLOT( setEnabled ( bool ) ) ); |
853 | connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ), | 902 | connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ), |
854 | mToggleAllday, SLOT( setEnabled ( bool ) ) ); | 903 | mToggleAllday, SLOT( setEnabled ( bool ) ) ); |
855 | // connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ), | 904 | // connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ), |
856 | // configureAgendaMenu, SLOT( setEnabled ( bool ) ) ); | 905 | // configureAgendaMenu, SLOT( setEnabled ( bool ) ) ); |
857 | 906 | ||
858 | viewMenu->insertSeparator(); | 907 | |
859 | icon = loadPixmap( pathString + "picker" ); | 908 | dPickerAction->addTo( iconToolBar ); |
860 | action = new QAction( i18n("Date Picker"), icon, i18n("Date Picker"), 0, this ); | ||
861 | action->addTo( viewMenu ); | ||
862 | connect( action, SIGNAL( activated() ), | ||
863 | mView, SLOT( showDatePicker() ) ); | ||
864 | action->addTo( iconToolBar ); | ||
865 | viewMenu->insertSeparator(); | 909 | viewMenu->insertSeparator(); |
866 | 910 | ||
867 | if ( p-> mShowIconToggleFull ) | 911 | if ( p-> mShowIconToggleFull ) |
868 | FSaction->addTo( iconToolBar ); | 912 | FSaction->addTo( iconToolBar ); |
869 | if ( p->mShowIconNavigator ) mToggleNav ->addTo( iconToolBar ); | 913 | if ( p->mShowIconNavigator ) mToggleNav ->addTo( iconToolBar ); |
870 | 914 | ||
871 | //******************** | 915 | //******************** |
872 | if ( p->mShowIconAllday ) mToggleAllday->addTo( iconToolBar ); | 916 | if ( p->mShowIconAllday ) mToggleAllday->addTo( iconToolBar ); |
873 | 917 | ||
874 | 918 | ||
875 | icon = loadPixmap( pathString + "whatsnext" ); | 919 | icon = loadPixmap( pathString + "whatsnext" ); |
876 | configureToolBarMenu->insertItem(icon, i18n("What's Next"), 110 ); | 920 | configureToolBarMenu->insertItem(icon, i18n("What's Next"), 110 ); |
877 | QAction* whatsnext_action = new QAction( i18n("What's Next"), icon, i18n("What's Next"), 0, this ); | 921 | QAction* whatsnext_action = new QAction( i18n("What's Next"), icon, i18n("What's Next"), 0, this ); |
878 | whatsnext_action->addTo( viewMenu ); | 922 | whatsnext_action->addTo( viewMenu ); |
879 | connect( whatsnext_action, SIGNAL( activated() ), | 923 | connect( whatsnext_action, SIGNAL( activated() ), |
880 | mView->viewManager(), SLOT( showWhatsNextView() ) ); | 924 | mView->viewManager(), SLOT( showWhatsNextView() ) ); |
881 | 925 | ||
882 | icon = loadPixmap( pathString + "xdays" ); | 926 | icon = loadPixmap( pathString + "xdays" ); |
883 | configureToolBarMenu->insertItem(icon, i18n("Next days"), 100 ); | 927 | configureToolBarMenu->insertItem(icon, i18n("Next days"), 100 ); |
884 | QAction* xdays_action = new QAction( i18n("Next days"), icon, i18n("Next days"), 0, this ); | 928 | QAction* xdays_action = new QAction( i18n("Next days"), icon, i18n("Next days"), 0, this ); |
885 | xdays_action->addTo( viewMenu ); | 929 | xdays_action->addTo( viewMenu ); |
886 | connect( xdays_action, SIGNAL( activated() ), | 930 | connect( xdays_action, SIGNAL( activated() ), |
887 | mView->viewManager(), SLOT( showNextXView() ) ); | 931 | mView->viewManager(), SLOT( showNextXView() ) ); |
888 | 932 | ||
889 | 933 | ||
890 | icon = loadPixmap( pathString + "journal" ); | 934 | icon = loadPixmap( pathString + "journal" ); |
891 | configureToolBarMenu->insertItem(icon, i18n("Journal"), 90 ); | 935 | configureToolBarMenu->insertItem(icon, i18n("Journal"), 90 ); |
892 | QAction* viewjournal_action = new QAction( i18n("Journal"), icon, i18n("Journal"), 0, this ); | 936 | QAction* viewjournal_action = new QAction( i18n("Journal"), icon, i18n("Journal"), 0, this ); |
893 | viewjournal_action->addTo( viewMenu ); | 937 | viewjournal_action->addTo( viewMenu ); |
894 | connect( viewjournal_action, SIGNAL( activated() ), | 938 | connect( viewjournal_action, SIGNAL( activated() ), |
895 | mView->viewManager(), SLOT( showJournalView() ) ); | 939 | mView->viewManager(), SLOT( showJournalView() ) ); |
896 | 940 | ||
897 | 941 | ||
898 | icon = loadPixmap( pathString + "day" ); | 942 | icon = loadPixmap( pathString + "day" ); |
899 | configureToolBarMenu->insertItem(icon, i18n("Day View"), 40 ); | 943 | configureToolBarMenu->insertItem(icon, i18n("Day View"), 40 ); |
900 | QAction* day1_action = new QAction( i18n("Day View"), icon, i18n("Day View"), 0, this ); | 944 | QAction* day1_action = new QAction( i18n("Day View"), icon, i18n("Day View"), 0, this ); |
901 | day1_action->addTo( viewMenu ); | 945 | day1_action->addTo( viewMenu ); |
902 | // action->addTo( toolBar ); | 946 | // action->addTo( toolBar ); |
903 | connect( day1_action, SIGNAL( activated() ), | 947 | connect( day1_action, SIGNAL( activated() ), |
904 | mView->viewManager(), SLOT( showDayView() ) ); | 948 | mView->viewManager(), SLOT( showDayView() ) ); |
905 | 949 | ||
906 | icon = loadPixmap( pathString + "workweek" ); | 950 | icon = loadPixmap( pathString + "workweek" ); |
907 | configureToolBarMenu->insertItem(icon, i18n("Work Week"), 50 ); | 951 | configureToolBarMenu->insertItem(icon, i18n("Work Week"), 50 ); |
908 | QAction* day5_action = new QAction( i18n("Work Week"), icon, i18n("Work Week"), 0, this ); | 952 | QAction* day5_action = new QAction( i18n("Work Week"), icon, i18n("Work Week"), 0, this ); |
909 | day5_action->addTo( viewMenu ); | 953 | day5_action->addTo( viewMenu ); |
910 | connect( day5_action, SIGNAL( activated() ), | 954 | connect( day5_action, SIGNAL( activated() ), |
911 | mView->viewManager(), SLOT( showWorkWeekView() ) ); | 955 | mView->viewManager(), SLOT( showWorkWeekView() ) ); |
912 | 956 | ||
913 | icon = loadPixmap( pathString + "week" ); | 957 | icon = loadPixmap( pathString + "week" ); |
914 | configureToolBarMenu->insertItem(icon, i18n("Week"), 60 ); | 958 | configureToolBarMenu->insertItem(icon, i18n("Week"), 60 ); |
915 | QAction* day7_action = new QAction( i18n("Week"), icon, i18n("Week"), 0, this ); | 959 | QAction* day7_action = new QAction( i18n("Week"), icon, i18n("Week"), 0, this ); |
916 | day7_action->addTo( viewMenu ); | 960 | day7_action->addTo( viewMenu ); |
917 | connect( day7_action, SIGNAL( activated() ), | 961 | connect( day7_action, SIGNAL( activated() ), |
918 | mView->viewManager(), SLOT( showWeekView() ) ); | 962 | mView->viewManager(), SLOT( showWeekView() ) ); |
919 | 963 | ||
920 | icon = loadPixmap( pathString + "workweek2" ); | 964 | icon = loadPixmap( pathString + "workweek2" ); |
921 | configureToolBarMenu->insertItem(icon, i18n("List week view"), 75 ); | 965 | configureToolBarMenu->insertItem(icon, i18n("List week view"), 75 ); |
922 | QAction* day6_action = new QAction( i18n("List week"), icon, i18n("List week"), 0, this ); | 966 | QAction* day6_action = new QAction( i18n("List week"), icon, i18n("List week"), 0, this ); |
923 | day6_action->addTo( viewMenu ); | 967 | day6_action->addTo( viewMenu ); |
924 | connect( day6_action, SIGNAL( activated() ), | 968 | connect( day6_action, SIGNAL( activated() ), |
925 | mView->viewManager(), SLOT( showMonthViewWeek() ) ); | 969 | mView->viewManager(), SLOT( showMonthViewWeek() ) ); |
926 | 970 | ||
927 | icon = loadPixmap( pathString + "month" ); | 971 | icon = loadPixmap( pathString + "month" ); |
928 | configureToolBarMenu->insertItem(icon, i18n("Month"), 70 ); | 972 | configureToolBarMenu->insertItem(icon, i18n("Month"), 70 ); |
929 | QAction* month_action = new QAction( i18n("Month"), icon, i18n("Month"), 0, this ); | 973 | QAction* month_action = new QAction( i18n("Month"), icon, i18n("Month"), 0, this ); |
930 | month_action->addTo( viewMenu ); | 974 | month_action->addTo( viewMenu ); |
931 | connect( month_action, SIGNAL( activated() ), | 975 | connect( month_action, SIGNAL( activated() ), |
932 | mView->viewManager(), SLOT( showMonthView() ) ); | 976 | mView->viewManager(), SLOT( showMonthView() ) ); |
933 | 977 | ||
934 | icon = loadPixmap( pathString + "list" ); | 978 | icon = loadPixmap( pathString + "list" ); |
935 | configureToolBarMenu->insertItem(icon, i18n("List View"), 30 ); | 979 | configureToolBarMenu->insertItem(icon, i18n("List View"), 30 ); |
936 | QAction* showlist_action = new QAction( i18n("List View"), icon, i18n("List View"), 0, this ); | 980 | QAction* showlist_action = new QAction( i18n("List View"), icon, i18n("List View"), 0, this ); |
937 | showlist_action->addTo( viewMenu ); | 981 | showlist_action->addTo( viewMenu ); |
938 | connect( showlist_action, SIGNAL( activated() ), | 982 | connect( showlist_action, SIGNAL( activated() ), |
939 | mView->viewManager(), SLOT( showListView() ) ); | 983 | mView->viewManager(), SLOT( showListView() ) ); |
940 | 984 | ||
941 | icon = loadPixmap( pathString + "todo" ); | 985 | icon = loadPixmap( pathString + "todo" ); |
942 | configureToolBarMenu->insertItem(icon, i18n("Todo View"), 80 ); | 986 | configureToolBarMenu->insertItem(icon, i18n("Todo View"), 80 ); |
943 | QAction* todoview_action = new QAction( i18n("Todo View"), icon, i18n("Todo View"), 0, this ); | 987 | QAction* todoview_action = new QAction( i18n("Todo View"), icon, i18n("Todo View"), 0, this ); |
944 | todoview_action->addTo( viewMenu ); | 988 | todoview_action->addTo( viewMenu ); |
945 | connect( todoview_action, SIGNAL( activated() ), | 989 | connect( todoview_action, SIGNAL( activated() ), |
946 | mView->viewManager(), SLOT( showTodoView() ) ); | 990 | mView->viewManager(), SLOT( showTodoView() ) ); |
947 | 991 | ||
948 | 992 | ||
949 | 993 | ||
950 | #if 0 | 994 | #if 0 |
951 | action = new QAction( "view_timespan", "Time Span", 0, this ); | 995 | action = new QAction( "view_timespan", "Time Span", 0, this ); |
952 | action->addTo( viewMenu ); | 996 | action->addTo( viewMenu ); |
953 | connect( action, SIGNAL( activated() ), | 997 | connect( action, SIGNAL( activated() ), |
954 | mView->viewManager(), SLOT( showTimeSpanView() ) ); | 998 | mView->viewManager(), SLOT( showTimeSpanView() ) ); |
955 | #endif | 999 | #endif |
956 | 1000 | ||
957 | mNewSubTodoAction = new QAction( "new_subtodo", i18n("New Sub-Todo..."), 0, | 1001 | mNewSubTodoAction = new QAction( "new_subtodo", i18n("New Sub-Todo..."), 0, |
958 | this ); | 1002 | this ); |
959 | mNewSubTodoAction->addTo( actionMenu ); | 1003 | mNewSubTodoAction->addTo( actionMenu ); |
960 | connect( mNewSubTodoAction, SIGNAL( activated() ), | 1004 | connect( mNewSubTodoAction, SIGNAL( activated() ), |
961 | mView, SLOT( newSubTodo() ) ); | 1005 | mView, SLOT( newSubTodo() ) ); |
962 | 1006 | ||
963 | actionMenu->insertSeparator(); | 1007 | action = new QAction( "purge_completed", i18n("Purge Completed..."), 0, |
964 | 1008 | this ); | |
965 | mShowAction = new QAction( "show_incidence", i18n("Show..."), 0, this ); | 1009 | action->addTo( actionMenu ); |
966 | mShowAction->addTo( actionMenu ); | 1010 | connect( action, SIGNAL( activated() ), mView, SLOT( purgeCompleted() ) ); |
967 | connect( mShowAction, SIGNAL( activated() ), | ||
968 | mView, SLOT( showIncidence() ) ); | ||
969 | 1011 | ||
970 | mEditAction = new QAction( "edit_incidence", i18n("Edit..."), 0, this ); | 1012 | |
971 | mEditAction->addTo( actionMenu ); | 1013 | configureToolBarMenu->insertItem(icon, i18n("Search"), 120 , 5); |
972 | connect( mEditAction, SIGNAL( activated() ), | ||
973 | mView, SLOT( editIncidence() ) ); | ||
974 | 1014 | ||
975 | mDeleteAction = new QAction( "delete_incidence", i18n("Delete..."), 0, this ); | ||
976 | mDeleteAction->addTo( actionMenu ); | ||
977 | connect( mDeleteAction, SIGNAL( activated() ), | ||
978 | mView, SLOT( deleteIncidence() ) ); | ||
979 | 1015 | ||
980 | 1016 | ||
981 | mCloneAction = new QAction( "clone_incidence", i18n("Clone..."), 0, this ); | ||
982 | mCloneAction->addTo( actionMenu ); | ||
983 | connect( mCloneAction, SIGNAL( activated() ), | ||
984 | mView, SLOT( cloneIncidence() ) ); | ||
985 | mMoveAction = new QAction( "Move_incidence", i18n("Move..."), 0, this ); | ||
986 | mMoveAction->addTo( actionMenu ); | ||
987 | connect( mMoveAction, SIGNAL( activated() ), | ||
988 | mView, SLOT( moveIncidence() ) ); | ||
989 | mBeamAction = new QAction( "Beam_incidence", i18n("Beam..."), 0, this ); | ||
990 | mBeamAction->addTo( actionMenu ); | ||
991 | connect( mBeamAction, SIGNAL( activated() ), | ||
992 | mView, SLOT( beamIncidence() ) ); | ||
993 | mCancelAction = new QAction( "Cancel_incidence", i18n("Toggle Cancel"), 0, this ); | ||
994 | mCancelAction->addTo( actionMenu ); | ||
995 | connect( mCancelAction, SIGNAL( activated() ), | ||
996 | mView, SLOT( toggleCancelIncidence() ) ); | ||
997 | |||
998 | actionMenu->insertSeparator(); | 1017 | actionMenu->insertSeparator(); |
999 | 1018 | action = new QAction( "manage cat", i18n("Edit category list..."), 0, | |
1000 | action = new QAction( "purge_completed", i18n("Purge Completed"), 0, | ||
1001 | this ); | 1019 | this ); |
1002 | action->addTo( actionMenu ); | 1020 | action->addTo( actionMenu ); |
1003 | connect( action, SIGNAL( activated() ), mView, SLOT( purgeCompleted() ) ); | 1021 | connect( action, SIGNAL( activated() ), mView, SLOT( editCategories() ) ); |
1004 | 1022 | ||
1005 | icon = loadPixmap( pathString + "search" ); | 1023 | action = new QAction( "manage cat", i18n("Manage new categories..."), 0, |
1006 | QAction* search_action = new QAction( i18n("Search"), icon, i18n("Search..."), 0, this ); | 1024 | this ); |
1007 | configureToolBarMenu->insertItem(icon, i18n("Search"), 120 , 5); | 1025 | action->addTo( actionMenu ); |
1008 | search_action->addTo( actionMenu ); | 1026 | connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) ); |
1009 | connect( search_action, SIGNAL( activated() ), | ||
1010 | mView->dialogManager(), SLOT( showSearchDialog() ) ); | ||
1011 | 1027 | ||
1012 | |||
1013 | 1028 | ||
1029 | actionMenu->insertSeparator(); | ||
1030 | icon = loadPixmap( pathString + "configure" ); | ||
1031 | action = new QAction( i18n("Configure"),icon, i18n("Configure KO/Pi..."), 0, this ); | ||
1032 | action->addTo( actionMenu ); | ||
1033 | connect( action, SIGNAL( activated() ), | ||
1034 | mView, SLOT( edit_options() ) ); | ||
1035 | icon = loadPixmap( pathString + "configure" ); | ||
1036 | action = new QAction( i18n("Configure"),icon, i18n("Global Settings..."), 0, this ); | ||
1037 | action->addTo( actionMenu ); | ||
1038 | connect( action, SIGNAL( activated() ), | ||
1039 | mView, SLOT( edit_global_options() ) ); | ||
1014 | if ( KOPrefs::instance()->mShowFullMenu ) { | 1040 | if ( KOPrefs::instance()->mShowFullMenu ) { |
1015 | actionMenu->insertSeparator(); | ||
1016 | actionMenu->insertItem( i18n("Configure Toolbar"),configureToolBarMenu ); | 1041 | actionMenu->insertItem( i18n("Configure Toolbar"),configureToolBarMenu ); |
1017 | 1042 | ||
1018 | } | 1043 | } |
1019 | // actionMenu->insertSeparator(); | 1044 | // actionMenu->insertSeparator(); |
1020 | action = new QAction( "import_qtopia", i18n("Import (*.ics/*.vcs) file"), 0, | 1045 | action = new QAction( "import_qtopia", i18n("Import (*.ics/*.vcs) file"), 0, |
1021 | this ); | 1046 | this ); |
1022 | action->addTo( importMenu_X ); | 1047 | action->addTo( importMenu_X ); |
1023 | connect( action, SIGNAL( activated() ), SLOT( importIcal() ) ); | 1048 | connect( action, SIGNAL( activated() ), SLOT( importIcal() ) ); |
1024 | action = new QAction( "import_quick", i18n("Import last file"), 0, | 1049 | action = new QAction( "import_quick", i18n("Import last file"), 0, |
1025 | this ); | 1050 | this ); |
1026 | action->addTo( importMenu_X ); | 1051 | action->addTo( importMenu_X ); |
1027 | connect( action, SIGNAL( activated() ), SLOT( quickImportIcal() ) ); | 1052 | connect( action, SIGNAL( activated() ), SLOT( quickImportIcal() ) ); |
1028 | importMenu_X->insertSeparator(); | 1053 | importMenu_X->insertSeparator(); |
1029 | action = new QAction( "import_bday", i18n("Import Birthdays (KA/Pi)"), 0, | 1054 | action = new QAction( "import_bday", i18n("Import Birthdays (KA/Pi)"), 0, |
1030 | this ); | 1055 | this ); |
1031 | action->addTo( importMenu_X ); | 1056 | action->addTo( importMenu_X ); |
1032 | connect( action, SIGNAL( activated() ), SLOT( importBday() ) ); | 1057 | connect( action, SIGNAL( activated() ), SLOT( importBday() ) ); |
1033 | //#ifndef DESKTOP_VERSION | 1058 | //#ifndef DESKTOP_VERSION |
1034 | importMenu_X->insertSeparator(); | 1059 | importMenu_X->insertSeparator(); |
1035 | action = new QAction( "import_qtopia", i18n("Import Opie/Qtopia Cal."), 0, | 1060 | action = new QAction( "import_qtopia", i18n("Import Opie/Qtopia Cal."), 0, |
1036 | this ); | 1061 | this ); |
1037 | action->addTo( importMenu_X ); | 1062 | action->addTo( importMenu_X ); |
1038 | connect( action, SIGNAL( activated() ), SLOT( importQtopia() ) ); | 1063 | connect( action, SIGNAL( activated() ), SLOT( importQtopia() ) ); |
1039 | //#else | 1064 | //#else |
1040 | #ifdef _OL_IMPORT_ | 1065 | #ifdef _OL_IMPORT_ |
1041 | importMenu_X->insertSeparator(); | 1066 | importMenu_X->insertSeparator(); |
1042 | action = new QAction( "import_ol", i18n("Import from OL"), 0, | 1067 | action = new QAction( "import_ol", i18n("Import from OL"), 0, |
1043 | this ); | 1068 | this ); |
1044 | action->addTo( importMenu_X ); | 1069 | action->addTo( importMenu_X ); |
1045 | connect( action, SIGNAL( activated() ), SLOT( importOL() ) ); | 1070 | connect( action, SIGNAL( activated() ), SLOT( importOL() ) ); |
1046 | #endif | 1071 | #endif |
1047 | //#endif | 1072 | //#endif |
1048 | 1073 | ||
1049 | //importMenu->insertSeparator(); | 1074 | //importMenu->insertSeparator(); |
1050 | #if 0 | 1075 | #if 0 |
1051 | action = new QAction( "load_cal", i18n("Load Calendar Backup"), 0, | 1076 | action = new QAction( "load_cal", i18n("Load Calendar Backup"), 0, |
1052 | this ); | 1077 | this ); |
1053 | action->addTo( importMenu ); | 1078 | action->addTo( importMenu ); |
1054 | connect( action, SIGNAL( activated() ), SLOT( loadCalendar() ) ); | 1079 | connect( action, SIGNAL( activated() ), SLOT( loadCalendar() ) ); |
1055 | #endif | 1080 | #endif |
1056 | action = new QAction( "save_cal", i18n("Save Calendar Backup"), 0, | 1081 | action = new QAction( "save_cal", i18n("Save Calendar Backup"), 0, |
1057 | this ); | 1082 | this ); |
1058 | action->addTo( importMenu ); | 1083 | action->addTo( importMenu ); |
1059 | connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) ); | 1084 | connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) ); |
1060 | importMenu->insertSeparator(); | 1085 | importMenu->insertSeparator(); |
1061 | importMenu->insertItem( i18n("Import"), importMenu_X ); | 1086 | importMenu->insertItem( i18n("Import"), importMenu_X ); |
1062 | //importMenu->insertSeparator(); | 1087 | //importMenu->insertSeparator(); |
1063 | action = new QAction( "import_qtopia", i18n("Export VCalendar"), 0, | 1088 | action = new QAction( "import_qtopia", i18n("Export VCalendar"), 0, |
1064 | this ); | 1089 | this ); |
1065 | action->addTo( exportMenu_X ); | 1090 | action->addTo( exportMenu_X ); |
1066 | connect( action, SIGNAL( activated() ), SLOT( exportVCalendar() ) ); | 1091 | connect( action, SIGNAL( activated() ), SLOT( exportVCalendar() ) ); |
1067 | 1092 | ||
1068 | 1093 | ||
1069 | //LR | 1094 | //LR |
1070 | QPopupMenu *ex2phone = new QPopupMenu( this ); | 1095 | QPopupMenu *ex2phone = new QPopupMenu( this ); |
1071 | ex2phone->insertItem(i18n("Complete calendar..."), 1 ); | 1096 | ex2phone->insertItem(i18n("Complete calendar..."), 1 ); |
1072 | ex2phone->insertItem(i18n("Filtered calendar..."), 2 ); | 1097 | ex2phone->insertItem(i18n("Filtered calendar..."), 2 ); |
1073 | connect( ex2phone, SIGNAL( activated(int) ), this, SLOT( exportToPhone( int)) ); | 1098 | connect( ex2phone, SIGNAL( activated(int) ), this, SLOT( exportToPhone( int)) ); |
1074 | exportMenu_X->insertItem( i18n("Export to phone"), ex2phone ); | 1099 | exportMenu_X->insertItem( i18n("Export to phone"), ex2phone ); |
1075 | 1100 | ||
1076 | importMenu->insertItem( i18n("Export"), exportMenu_X ); | 1101 | importMenu->insertItem( i18n("Export"), exportMenu_X ); |
1077 | #ifndef DESKTOP_VERSION | 1102 | #ifndef DESKTOP_VERSION |
1078 | //importMenu->insertSeparator(); | 1103 | //importMenu->insertSeparator(); |
1079 | brAction = new QAction( "beam toggle", i18n("Beam receive enabled"), 0, | 1104 | brAction = new QAction( "beam toggle", i18n("Beam receive enabled"), 0, |
1080 | this ); | 1105 | this ); |
1081 | brAction->addTo( beamMenu_X ); | 1106 | brAction->addTo( beamMenu_X ); |
1082 | brAction->setToggleAction (true ) ; | 1107 | brAction->setToggleAction (true ) ; |
1083 | connect( brAction, SIGNAL( activated() ), this, SLOT( toggleBeamReceive() ) ); | 1108 | connect( brAction, SIGNAL( activated() ), this, SLOT( toggleBeamReceive() ) ); |
1084 | 1109 | ||
1085 | action = new QAction( "beam all", i18n("Beam complete calendar..."), 0, | 1110 | action = new QAction( "beam all", i18n("Beam complete calendar..."), 0, |
1086 | this ); | 1111 | this ); |
1087 | action->addTo( beamMenu_X ); | 1112 | action->addTo( beamMenu_X ); |
1088 | connect( action, SIGNAL( activated() ), mView, SLOT( beamCalendar() ) ); | 1113 | connect( action, SIGNAL( activated() ), mView, SLOT( beamCalendar() ) ); |
1089 | 1114 | ||
1090 | action = new QAction( "beam all", i18n("Beam filtered calendar..."), 0, | 1115 | action = new QAction( "beam all", i18n("Beam filtered calendar..."), 0, |
1091 | this ); | 1116 | this ); |
1092 | action->addTo( beamMenu_X ); | 1117 | action->addTo( beamMenu_X ); |
1093 | connect( action, SIGNAL( activated() ), mView, SLOT( beamFilteredCalendar()) ); | 1118 | connect( action, SIGNAL( activated() ), mView, SLOT( beamFilteredCalendar()) ); |
1094 | importMenu->insertItem( i18n("Beam"), beamMenu_X ); | 1119 | importMenu->insertItem( i18n("Beam"), beamMenu_X ); |
1095 | #else | 1120 | #else |
1096 | //importMenu->insertSeparator(); | 1121 | //importMenu->insertSeparator(); |
1097 | icon = loadPixmap( pathString + "print" ); | 1122 | icon = loadPixmap( pathString + "print" ); |
1098 | action = new QAction( i18n("Print calendar..."),icon,i18n("Print calendar..."), 0, this ); | 1123 | action = new QAction( i18n("Print calendar..."),icon,i18n("Print calendar..."), 0, this ); |
1099 | action->addTo( beamMenu_X ); | 1124 | action->addTo( beamMenu_X ); |
1100 | connect( action, SIGNAL( activated() ), | 1125 | connect( action, SIGNAL( activated() ), |
1101 | this, SLOT( printCal() ) ); | 1126 | this, SLOT( printCal() ) ); |
1102 | 1127 | ||
1103 | icon = loadPixmap( pathString + "print" ); | 1128 | icon = loadPixmap( pathString + "print" ); |
1104 | action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this ); | 1129 | action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this ); |
1105 | action->addTo( beamMenu_X ); | 1130 | action->addTo( beamMenu_X ); |
1106 | connect( action, SIGNAL( activated() ), | 1131 | connect( action, SIGNAL( activated() ), |
1107 | this, SLOT( printSel() ) ); | 1132 | this, SLOT( printSel() ) ); |
1108 | action = new QAction( i18n("Print What's Next View..."),icon,i18n("Print What's Next View..."), 0, this ); | 1133 | action = new QAction( i18n("Print What's Next View..."),icon,i18n("Print What's Next View..."), 0, this ); |
1109 | action->addTo( beamMenu_X ); | 1134 | action->addTo( beamMenu_X ); |
1110 | connect( action, SIGNAL( activated() ), | 1135 | connect( action, SIGNAL( activated() ), |
1111 | mView->viewManager(), SLOT( slotprintWNV() ) ); | 1136 | mView->viewManager(), SLOT( slotprintWNV() ) ); |
1112 | 1137 | ||
1113 | 1138 | ||
1114 | icon = loadPixmap( pathString + "print" ); | 1139 | icon = loadPixmap( pathString + "print" ); |
1115 | action = new QAction( i18n("Print List View..."),icon,i18n("Print List View..."), 0, this ); | 1140 | action = new QAction( i18n("Print List View..."),icon,i18n("Print List View..."), 0, this ); |
1116 | action->addTo( beamMenu_X ); | 1141 | action->addTo( beamMenu_X ); |
1117 | connect( action, SIGNAL( activated() ), | 1142 | connect( action, SIGNAL( activated() ), |
1118 | this, SLOT( printListView() ) ); | 1143 | this, SLOT( printListView() ) ); |
1119 | 1144 | ||
1120 | action = new QAction( i18n("Print selected event / todo..."),icon,i18n("Print selected event / todo..."), 0, this ); | 1145 | action = new QAction( i18n("Print selected event / todo..."),icon,i18n("Print selected event / todo..."), 0, this ); |
1121 | action->addTo( beamMenu_X ); | 1146 | action->addTo( beamMenu_X ); |
1122 | connect( action, SIGNAL( activated() ), | 1147 | connect( action, SIGNAL( activated() ), |
1123 | mView, SLOT( slotprintSelInc() ) ); | 1148 | mView, SLOT( slotprintSelInc() ) ); |
1124 | 1149 | ||
1125 | importMenu->insertItem( i18n("Print"), beamMenu_X ); | 1150 | importMenu->insertItem( i18n("Print"), beamMenu_X ); |
1126 | #endif | 1151 | #endif |
1127 | importMenu->insertSeparator(); | 1152 | |
1128 | action = new QAction( "manage cat", i18n("Manage new categories..."), 0, | ||
1129 | this ); | ||
1130 | action->addTo( importMenu ); | ||
1131 | connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) ); | ||
1132 | importMenu->insertSeparator(); | 1153 | importMenu->insertSeparator(); |
1133 | action = new QAction( "beam all", i18n("Save"), 0, | 1154 | action = new QAction( "beam all", i18n("Save"), 0, |
1134 | this ); | 1155 | this ); |
1135 | action->addTo( importMenu ); | 1156 | action->addTo( importMenu ); |
1136 | connect( action, SIGNAL( activated() ), this, SLOT( save() ) ); | 1157 | connect( action, SIGNAL( activated() ), this, SLOT( save() ) ); |
1137 | action = new QAction( "beam all", i18n("Exit (+save)"), 0, | 1158 | action = new QAction( "beam all", i18n("Exit (+save)"), 0, |
1138 | this ); | 1159 | this ); |
1139 | action->addTo( importMenu ); | 1160 | action->addTo( importMenu ); |
1140 | connect( action, SIGNAL( activated() ), this, SLOT( close() ) ); | 1161 | connect( action, SIGNAL( activated() ), this, SLOT( close() ) ); |
1141 | 1162 | ||
1142 | //menuBar->insertItem( "Configure",configureMenu ); | 1163 | //menuBar->insertItem( "Configure",configureMenu ); |
1143 | //configureMenu->insertItem( "Toolbar",configureToolBarMenu ); | 1164 | //configureMenu->insertItem( "Toolbar",configureToolBarMenu ); |
1144 | icon = loadPixmap( "korganizer/korganizer" ); | 1165 | icon = loadPixmap( "korganizer/korganizer" ); |
1145 | 1166 | ||
1146 | action = new QAction( "Whats New", i18n("What's new?"), 0,this ); | 1167 | action = new QAction( "Whats New", i18n("What's new?"), 0,this ); |
1147 | action->addTo( helpMenu ); | 1168 | action->addTo( helpMenu ); |
1148 | connect( action, SIGNAL( activated() ), | 1169 | connect( action, SIGNAL( activated() ), |
1149 | SLOT( whatsNew() ) ); | 1170 | SLOT( whatsNew() ) ); |
1150 | action = new QAction( "featureHowto", i18n("Features + hints..."), 0,this ); | 1171 | action = new QAction( "featureHowto", i18n("Features + hints..."), 0,this ); |
1151 | action->addTo( helpMenu ); | 1172 | action->addTo( helpMenu ); |
1152 | connect( action, SIGNAL( activated() ), | 1173 | connect( action, SIGNAL( activated() ), |
1153 | SLOT( features() ) ); | 1174 | SLOT( features() ) ); |
1154 | action = new QAction( "Keys + Colors", i18n("Keys + Colors..."), 0, this ); | 1175 | action = new QAction( "Keys + Colors", i18n("Keys + Colors..."), 0, this ); |
1155 | action->addTo( helpMenu ); | 1176 | action->addTo( helpMenu ); |
1156 | connect( action, SIGNAL( activated() ), | 1177 | connect( action, SIGNAL( activated() ), |
1157 | SLOT( keyBindings() ) ); | 1178 | SLOT( keyBindings() ) ); |
1158 | action = new QAction( "Storage Howto", i18n("Storage HowTo..."), 0,this ); | 1179 | action = new QAction( "Storage Howto", i18n("Storage HowTo..."), 0,this ); |
1159 | action->addTo( helpMenu ); | 1180 | action->addTo( helpMenu ); |
1160 | connect( action, SIGNAL( activated() ), | 1181 | connect( action, SIGNAL( activated() ), |
1161 | SLOT( storagehowto() ) ); | 1182 | SLOT( storagehowto() ) ); |
1162 | action = new QAction( "Timetracking Howto", i18n("Timetracking HowTo..."), 0,this ); | 1183 | action = new QAction( "Timetracking Howto", i18n("Timetracking HowTo..."), 0,this ); |
1163 | action->addTo( helpMenu ); | 1184 | action->addTo( helpMenu ); |
1164 | connect( action, SIGNAL( activated() ), | 1185 | connect( action, SIGNAL( activated() ), |
1165 | SLOT( timetrackinghowto() ) ); | 1186 | SLOT( timetrackinghowto() ) ); |
1166 | action = new QAction( "Sync Howto", i18n("Sync HowTo..."), 0,this ); | 1187 | action = new QAction( "Sync Howto", i18n("Sync HowTo..."), 0,this ); |
1167 | action->addTo( helpMenu ); | 1188 | action->addTo( helpMenu ); |
1168 | connect( action, SIGNAL( activated() ), | 1189 | connect( action, SIGNAL( activated() ), |
1169 | SLOT( synchowto() ) ); | 1190 | SLOT( synchowto() ) ); |
1170 | action = new QAction( "KDE Sync Howto", i18n("KDE Sync HowTo..."), 0,this ); | 1191 | action = new QAction( "KDE Sync Howto", i18n("KDE Sync HowTo..."), 0,this ); |
1171 | action->addTo( helpMenu ); | 1192 | action->addTo( helpMenu ); |
1172 | connect( action, SIGNAL( activated() ), | 1193 | connect( action, SIGNAL( activated() ), |
1173 | SLOT( kdesynchowto() ) ); | 1194 | SLOT( kdesynchowto() ) ); |
1174 | action = new QAction( "Multi Sync Howto", i18n("Multi Sync HowTo..."), 0,this ); | 1195 | action = new QAction( "Multi Sync Howto", i18n("Multi Sync HowTo..."), 0,this ); |
1175 | action->addTo( helpMenu ); | 1196 | action->addTo( helpMenu ); |
1176 | connect( action, SIGNAL( activated() ), | 1197 | connect( action, SIGNAL( activated() ), |
1177 | SLOT( multisynchowto() ) ); | 1198 | SLOT( multisynchowto() ) ); |
1178 | action = new QAction( "Auto saving", i18n("Auto saving..."), 0, this ); | 1199 | action = new QAction( "Auto saving", i18n("Auto saving..."), 0, this ); |
1179 | action->addTo( helpMenu ); | 1200 | action->addTo( helpMenu ); |
1180 | connect( action, SIGNAL( activated() ), | 1201 | connect( action, SIGNAL( activated() ), |
1181 | SLOT( aboutAutoSaving() ) ); | 1202 | SLOT( aboutAutoSaving() ) ); |
1182 | action = new QAction( "Problemd", i18n("Known Problems..."), 0,this ); | 1203 | action = new QAction( "Problemd", i18n("Known Problems..."), 0,this ); |
1183 | action->addTo( helpMenu ); | 1204 | action->addTo( helpMenu ); |
1184 | connect( action, SIGNAL( activated() ), | 1205 | connect( action, SIGNAL( activated() ), |
1185 | SLOT( aboutKnownBugs() ) ); | 1206 | SLOT( aboutKnownBugs() ) ); |
1186 | action = new QAction( "Translate Howto", i18n("User translation..."), 0,this ); | 1207 | action = new QAction( "Translate Howto", i18n("User translation..."), 0,this ); |
1187 | action->addTo( helpMenu ); | 1208 | action->addTo( helpMenu ); |
1188 | connect( action, SIGNAL( activated() ), | 1209 | connect( action, SIGNAL( activated() ), |
1189 | SLOT( usertrans() ) ); | 1210 | SLOT( usertrans() ) ); |
1190 | action = new QAction( "Frequently asked questions", i18n("FAQ..."), 0,this ); | 1211 | action = new QAction( "Frequently asked questions", i18n("FAQ..."), 0,this ); |
1191 | action->addTo( helpMenu ); | 1212 | action->addTo( helpMenu ); |
1192 | connect( action, SIGNAL( activated() ), | 1213 | connect( action, SIGNAL( activated() ), |
1193 | SLOT( faq() ) ); | 1214 | SLOT( faq() ) ); |
1194 | action = new QAction( "licence", i18n("Licence..."), 0, this ); | 1215 | action = new QAction( "licence", i18n("Licence..."), 0, this ); |
1195 | action->addTo( helpMenu ); | 1216 | action->addTo( helpMenu ); |
1196 | connect( action, SIGNAL( activated() ), | 1217 | connect( action, SIGNAL( activated() ), |
1197 | SLOT( licence() ) ); | 1218 | SLOT( licence() ) ); |
1198 | action = new QAction( "about", i18n("About..."), 0, this ); | 1219 | action = new QAction( "about", i18n("About..."), 0, this ); |
1199 | action->addTo( helpMenu ); | 1220 | action->addTo( helpMenu ); |
1200 | connect( action, SIGNAL( activated() ), | 1221 | connect( action, SIGNAL( activated() ), |
1201 | SLOT( about() ) ); | 1222 | SLOT( about() ) ); |
1202 | //menuBar->insertSeparator(); | 1223 | //menuBar->insertSeparator(); |
1203 | 1224 | ||
1204 | // ****************************************************** | 1225 | // ****************************************************** |
1205 | // menubar icons | 1226 | // menubar icons |
1206 | 1227 | ||
1207 | 1228 | ||
1208 | 1229 | ||
1209 | //menuBar->insertItem( iconToolBar ); | 1230 | //menuBar->insertItem( iconToolBar ); |
1210 | //xdays_action | 1231 | //xdays_action |
1211 | if (p-> mShowIconNewEvent) | 1232 | if (p-> mShowIconNewEvent) |
1212 | ne_action->addTo( iconToolBar ); | 1233 | ne_action->addTo( iconToolBar ); |
1213 | if (p->mShowIconNewTodo ) | 1234 | if (p->mShowIconNewTodo ) |
1214 | nt_action->addTo( iconToolBar ); | 1235 | nt_action->addTo( iconToolBar ); |
1215 | if (p-> mShowIconSearch) | 1236 | if (p-> mShowIconSearch) |
1216 | search_action->addTo( iconToolBar ); | 1237 | search_action->addTo( iconToolBar ); |
1217 | if (p-> mShowIconWhatsThis) | 1238 | if (p-> mShowIconWhatsThis) |
1218 | QWhatsThis::whatsThisButton ( iconToolBar ); | 1239 | QWhatsThis::whatsThisButton ( iconToolBar ); |
1219 | if (p-> mShowIconNext) | 1240 | if (p-> mShowIconNext) |
1220 | whatsnext_action->addTo( viewToolBar ); | 1241 | whatsnext_action->addTo( viewToolBar ); |
1221 | if (p-> mShowIconNextDays) | 1242 | if (p-> mShowIconNextDays) |
1222 | xdays_action->addTo( viewToolBar ); | 1243 | xdays_action->addTo( viewToolBar ); |
1223 | if (p-> mShowIconJournal) | 1244 | if (p-> mShowIconJournal) |
1224 | viewjournal_action->addTo( viewToolBar ); | 1245 | viewjournal_action->addTo( viewToolBar ); |
1225 | if (p-> mShowIconDay1) | 1246 | if (p-> mShowIconDay1) |
1226 | day1_action->addTo( viewToolBar ); | 1247 | day1_action->addTo( viewToolBar ); |
1227 | if (p-> mShowIconDay5) | 1248 | if (p-> mShowIconDay5) |
1228 | day5_action->addTo( viewToolBar ); | 1249 | day5_action->addTo( viewToolBar ); |
1229 | if (p-> mShowIconDay7) | 1250 | if (p-> mShowIconDay7) |
1230 | day7_action->addTo( viewToolBar ); | 1251 | day7_action->addTo( viewToolBar ); |
1231 | if (p-> mShowIconDay6) | 1252 | if (p-> mShowIconDay6) |
1232 | day6_action->addTo( viewToolBar ); | 1253 | day6_action->addTo( viewToolBar ); |
1233 | if (p-> mShowIconMonth) | 1254 | if (p-> mShowIconMonth) |
1234 | month_action->addTo( viewToolBar ); | 1255 | month_action->addTo( viewToolBar ); |
1235 | if (p-> mShowIconList) | 1256 | if (p-> mShowIconList) |
1236 | showlist_action->addTo( viewToolBar ); | 1257 | showlist_action->addTo( viewToolBar ); |
1237 | if (p-> mShowIconTodoview) | 1258 | if (p-> mShowIconTodoview) |
1238 | todoview_action->addTo( viewToolBar ); | 1259 | todoview_action->addTo( viewToolBar ); |
1239 | 1260 | ||
1240 | icon = loadPixmap( pathString + "2leftarrowB" ); | 1261 | icon = loadPixmap( pathString + "2leftarrowB" ); |
1241 | configureToolBarMenu->insertItem(icon, i18n("Prev. month"), 200); | 1262 | configureToolBarMenu->insertItem(icon, i18n("Prev. month"), 200); |
1242 | if (p-> mShowIconBackFast) { | 1263 | if (p-> mShowIconBackFast) { |
1243 | action = new QAction( i18n("Prev. month"), icon, i18n("Prev. month"),0 , this ); | 1264 | action = new QAction( i18n("Prev. month"), icon, i18n("Prev. month"),0 , this ); |
1244 | connect( action, SIGNAL( activated() ), | 1265 | connect( action, SIGNAL( activated() ), |
1245 | mView, SLOT( goPreviousMonth() ) ); | 1266 | mView, SLOT( goPreviousMonth() ) ); |
1246 | action->addTo( navigatorToolBar ); | 1267 | action->addTo( navigatorToolBar ); |
1247 | } | 1268 | } |
1248 | icon = loadPixmap( pathString + "1leftarrowB" ); | 1269 | icon = loadPixmap( pathString + "1leftarrowB" ); |
1249 | configureToolBarMenu->insertItem(icon, i18n("Go backward"), 210); | 1270 | configureToolBarMenu->insertItem(icon, i18n("Go backward"), 210); |
1250 | if (p-> mShowIconBack) { | 1271 | if (p-> mShowIconBack) { |
1251 | action = new QAction( i18n("Go backward"), icon, i18n("Go backward"),0 , this ); | 1272 | action = new QAction( i18n("Go backward"), icon, i18n("Go backward"),0 , this ); |
1252 | connect( action, SIGNAL( activated() ), | 1273 | connect( action, SIGNAL( activated() ), |
1253 | mView, SLOT( goPrevious() ) ); | 1274 | mView, SLOT( goPrevious() ) ); |
1254 | action->addTo( navigatorToolBar ); | 1275 | action->addTo( navigatorToolBar ); |
1255 | } | 1276 | } |
1256 | icon = loadPixmap( pathString + "today" ); | 1277 | icon = loadPixmap( pathString + "today" ); |
1257 | configureToolBarMenu->insertItem(icon, i18n("Go to Today"), 130); | 1278 | configureToolBarMenu->insertItem(icon, i18n("Go to Today"), 130); |
1258 | if (p-> mShowIconToday) | 1279 | if (p-> mShowIconToday) |
1259 | today_action->addTo( navigatorToolBar ); | 1280 | today_action->addTo( navigatorToolBar ); |
@@ -1589,264 +1610,269 @@ void MainWindow::aboutAutoSaving() | |||
1589 | 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"); | 1610 | 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"); |
1590 | 1611 | ||
1591 | KApplication::showText( i18n("Auto Saving in KOrganizer/Pi"), text); | 1612 | KApplication::showText( i18n("Auto Saving in KOrganizer/Pi"), text); |
1592 | 1613 | ||
1593 | } | 1614 | } |
1594 | void MainWindow::aboutKnownBugs() | 1615 | void MainWindow::aboutKnownBugs() |
1595 | { | 1616 | { |
1596 | QMessageBox* msg; | 1617 | QMessageBox* msg; |
1597 | msg = new QMessageBox( i18n("Known Problems in KOrganizer/Pi"), | 1618 | msg = new QMessageBox( i18n("Known Problems in KOrganizer/Pi"), |
1598 | 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")+ | 1619 | 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")+ |
1599 | i18n("2) Audio alarm daemon\nfor Zaurus is available!\nas an additional small application\n")+ | 1620 | i18n("2) Audio alarm daemon\nfor Zaurus is available!\nas an additional small application\n")+ |
1600 | i18n("\nPlease report unexpected behaviour to\nlutz@pi-sync.info\n") + | 1621 | i18n("\nPlease report unexpected behaviour to\nlutz@pi-sync.info\n") + |
1601 | i18n("\nor report them in the bugtracker on\n") + | 1622 | i18n("\nor report them in the bugtracker on\n") + |
1602 | i18n("\nhttp://sourceforge.net/projects/kdepimpi\n"), | 1623 | i18n("\nhttp://sourceforge.net/projects/kdepimpi\n"), |
1603 | QMessageBox::NoIcon, | 1624 | QMessageBox::NoIcon, |
1604 | QMessageBox::Ok, | 1625 | QMessageBox::Ok, |
1605 | QMessageBox::NoButton, | 1626 | QMessageBox::NoButton, |
1606 | QMessageBox::NoButton); | 1627 | QMessageBox::NoButton); |
1607 | msg->exec(); | 1628 | msg->exec(); |
1608 | delete msg; | 1629 | delete msg; |
1609 | 1630 | ||
1610 | } | 1631 | } |
1611 | 1632 | ||
1612 | QString MainWindow::defaultFileName() | 1633 | QString MainWindow::defaultFileName() |
1613 | { | 1634 | { |
1614 | return locateLocal( "data", "korganizer/mycalendar.ics" ); | 1635 | return locateLocal( "data", "korganizer/mycalendar.ics" ); |
1615 | } | 1636 | } |
1616 | QString MainWindow::syncFileName() | 1637 | QString MainWindow::syncFileName() |
1617 | { | 1638 | { |
1618 | #ifdef DESKTOP_VERSION | 1639 | #ifdef DESKTOP_VERSION |
1619 | return locateLocal( "tmp", "synccalendar.ics" ); | 1640 | return locateLocal( "tmp", "synccalendar.ics" ); |
1620 | #else | 1641 | #else |
1621 | return QString( "/tmp/synccalendar.ics" ); | 1642 | return QString( "/tmp/synccalendar.ics" ); |
1622 | #endif | 1643 | #endif |
1623 | } | 1644 | } |
1624 | #include "koglobals.h" | 1645 | #include "koglobals.h" |
1625 | #include <kcalendarsystem.h> | 1646 | #include <kcalendarsystem.h> |
1626 | void MainWindow::updateWeek(QDate seda) | 1647 | void MainWindow::updateWeek(QDate seda) |
1627 | { | 1648 | { |
1628 | int weekNum = KGlobal::locale()->weekNum ( seda ); | 1649 | int weekNum = KGlobal::locale()->weekNum ( seda ); |
1629 | mWeekPixmap.fill( mWeekBgColor ); | 1650 | mWeekPixmap.fill( mWeekBgColor ); |
1630 | QPainter p ( &mWeekPixmap ); | 1651 | QPainter p ( &mWeekPixmap ); |
1631 | p.setFont( mWeekFont ); | 1652 | p.setFont( mWeekFont ); |
1632 | p.drawText( 0,0,mWeekPixmap.width(), mWeekPixmap.height(),AlignCenter, QString::number( weekNum) ); | 1653 | p.drawText( 0,0,mWeekPixmap.width(), mWeekPixmap.height(),AlignCenter, QString::number( weekNum) ); |
1633 | p.end(); | 1654 | p.end(); |
1634 | QIconSet icon3 ( mWeekPixmap ); | 1655 | QIconSet icon3 ( mWeekPixmap ); |
1635 | mWeekAction->setIconSet ( icon3 ); | 1656 | mWeekAction->setIconSet ( icon3 ); |
1636 | 1657 | ||
1637 | } | 1658 | } |
1638 | void MainWindow::updateWeekNum(const DateList &selectedDates) | 1659 | void MainWindow::updateWeekNum(const DateList &selectedDates) |
1639 | { | 1660 | { |
1640 | updateWeek( selectedDates.first() ); | 1661 | updateWeek( selectedDates.first() ); |
1641 | } | 1662 | } |
1642 | void MainWindow::processIncidenceSelection( Incidence *incidence ) | 1663 | void MainWindow::processIncidenceSelection( Incidence *incidence ) |
1643 | { | 1664 | { |
1644 | 1665 | ||
1645 | if ( !incidence ) { | 1666 | if ( !incidence ) { |
1646 | enableIncidenceActions( false ); | 1667 | enableIncidenceActions( false ); |
1647 | 1668 | ||
1648 | mNewSubTodoAction->setEnabled( false ); | 1669 | mNewSubTodoAction->setEnabled( false ); |
1649 | setCaptionToDates(); | 1670 | setCaptionToDates(); |
1650 | return; | 1671 | return; |
1651 | 1672 | ||
1652 | } | 1673 | } |
1653 | 1674 | ||
1654 | //KGlobal::locale()->formatDateTime(nextA, true); | 1675 | //KGlobal::locale()->formatDateTime(nextA, true); |
1655 | QString startString = ""; | 1676 | QString startString = ""; |
1656 | if ( incidence->typeID() != todoID ) { | 1677 | if ( incidence->typeID() != todoID ) { |
1657 | if ( incidence->dtStart().date() < incidence->dtEnd().date() ) { | 1678 | if ( incidence->dtStart().date() < incidence->dtEnd().date() ) { |
1658 | if ( incidence->doesFloat() ) { | 1679 | if ( incidence->doesFloat() ) { |
1659 | startString += ": "+incidence->dtStartDateStr( true ); | 1680 | startString += ": "+incidence->dtStartDateStr( true ); |
1660 | startString += " --- "+((Event*)incidence)->dtEndDateStr( true ); | 1681 | startString += " --- "+((Event*)incidence)->dtEndDateStr( true ); |
1661 | 1682 | ||
1662 | } else { | 1683 | } else { |
1663 | startString = ": "+incidence->dtStartStr(true); | 1684 | startString = ": "+incidence->dtStartStr(true); |
1664 | startString += " --- "+((Event*)incidence)->dtEndStr(true); | 1685 | startString += " --- "+((Event*)incidence)->dtEndStr(true); |
1665 | 1686 | ||
1666 | } | 1687 | } |
1667 | 1688 | ||
1668 | } else { | 1689 | } else { |
1669 | if ( incidence->dtStart().time() != incidence->dtEnd().time() ) | 1690 | if ( incidence->dtStart().time() != incidence->dtEnd().time() ) |
1670 | startString = ": "+KGlobal::locale()->formatTime(incidence->dtStart().time())+ | 1691 | startString = ": "+KGlobal::locale()->formatTime(incidence->dtStart().time())+ |
1671 | "-"+KGlobal::locale()->formatTime(incidence->dtEnd().time()); | 1692 | "-"+KGlobal::locale()->formatTime(incidence->dtEnd().time()); |
1672 | 1693 | ||
1673 | if ( incidence->isBirthday() || incidence->isAnniversary() ) { | 1694 | if ( incidence->isBirthday() || incidence->isAnniversary() ) { |
1674 | bool ok; | 1695 | bool ok; |
1675 | QDateTime noc = incidence->getNextOccurence( mView->startDate().addDays(-1), &ok ); | 1696 | QDateTime noc = incidence->getNextOccurence( mView->startDate().addDays(-1), &ok ); |
1676 | if ( ok ) { | 1697 | if ( ok ) { |
1677 | int years = noc.date().year() - incidence->dtStart().date().year(); | 1698 | int years = noc.date().year() - incidence->dtStart().date().year(); |
1678 | startString += i18n(" (%1 y.)"). arg( years ); | 1699 | startString += i18n(" (%1 y.)"). arg( years ); |
1679 | } | 1700 | } |
1680 | } | 1701 | } |
1681 | else | 1702 | else |
1682 | startString +=" "+KGlobal::locale()->formatDate( incidence->dtStart().date(), true); | 1703 | startString +=" "+KGlobal::locale()->formatDate( incidence->dtStart().date(), true); |
1683 | } | 1704 | } |
1684 | 1705 | ||
1685 | } | 1706 | } |
1686 | else | 1707 | else |
1687 | startString = i18n(": (Prio ") +QString::number( (( KCal::Todo*)incidence)->priority() ) +") "+QString::number( (( KCal::Todo*)incidence)->percentComplete() ) +i18n("\% completed"); | 1708 | startString = i18n(": (Prio ") +QString::number( (( KCal::Todo*)incidence)->priority() ) +") "+QString::number( (( KCal::Todo*)incidence)->percentComplete() ) +i18n("\% completed"); |
1688 | if ( !incidence->location().isEmpty() ) | 1709 | if ( !incidence->location().isEmpty() ) |
1689 | startString += " (" +incidence->location()+")"; | 1710 | startString += " (" +incidence->location()+")"; |
1690 | setCaption( incidence->summary()+startString); | 1711 | setCaption( incidence->summary()+startString); |
1691 | 1712 | ||
1692 | enableIncidenceActions( true ); | 1713 | enableIncidenceActions( true ); |
1693 | 1714 | ||
1694 | if ( incidence->typeID() == eventID ) { | 1715 | if ( incidence->typeID() == eventID ) { |
1695 | mShowAction->setText( i18n("Show Event...") ); | 1716 | mShowAction->setText( i18n("Show Event...") ); |
1696 | mEditAction->setText( i18n("Edit Event...") ); | 1717 | mEditAction->setText( i18n("Edit Event...") ); |
1697 | mDeleteAction->setText( i18n("Delete Event...") ); | 1718 | mDeleteAction->setText( i18n("Delete Event...") ); |
1698 | 1719 | ||
1699 | mNewSubTodoAction->setEnabled( false ); | 1720 | mNewSubTodoAction->setEnabled( false ); |
1700 | } else if ( incidence->typeID() == todoID ) { | 1721 | } else if ( incidence->typeID() == todoID ) { |
1701 | mShowAction->setText( i18n("Show Todo...") ); | 1722 | mShowAction->setText( i18n("Show Todo...") ); |
1702 | mEditAction->setText( i18n("Edit Todo...") ); | 1723 | mEditAction->setText( i18n("Edit Todo...") ); |
1703 | mDeleteAction->setText( i18n("Delete Todo...") ); | 1724 | mDeleteAction->setText( i18n("Delete Todo...") ); |
1704 | 1725 | ||
1705 | mNewSubTodoAction->setEnabled( true ); | 1726 | mNewSubTodoAction->setEnabled( true ); |
1706 | } else { | 1727 | } else { |
1707 | mShowAction->setText( i18n("Show...") ); | 1728 | mShowAction->setText( i18n("Show...") ); |
1708 | mShowAction->setText( i18n("Edit...") ); | 1729 | mShowAction->setText( i18n("Edit...") ); |
1709 | mShowAction->setText( i18n("Delete...") ); | 1730 | mShowAction->setText( i18n("Delete...") ); |
1710 | 1731 | ||
1711 | mNewSubTodoAction->setEnabled( false ); | 1732 | mNewSubTodoAction->setEnabled( false ); |
1712 | } | 1733 | } |
1713 | } | 1734 | } |
1714 | 1735 | ||
1715 | void MainWindow::enableIncidenceActions( bool enabled ) | 1736 | void MainWindow::enableIncidenceActions( bool enabled ) |
1716 | { | 1737 | { |
1738 | |||
1739 | #ifndef DESKTOP_VERSION | ||
1740 | mCurrentItemMenu->setEnabled( enabled ); | ||
1741 | #else | ||
1717 | mShowAction->setEnabled( enabled ); | 1742 | mShowAction->setEnabled( enabled ); |
1718 | mEditAction->setEnabled( enabled ); | 1743 | mEditAction->setEnabled( enabled ); |
1719 | mDeleteAction->setEnabled( enabled ); | 1744 | mDeleteAction->setEnabled( enabled ); |
1720 | 1745 | ||
1721 | mCloneAction->setEnabled( enabled ); | 1746 | mCloneAction->setEnabled( enabled ); |
1722 | mMoveAction->setEnabled( enabled ); | 1747 | mMoveAction->setEnabled( enabled ); |
1723 | mBeamAction->setEnabled( enabled ); | 1748 | mBeamAction->setEnabled( enabled ); |
1724 | mCancelAction->setEnabled( enabled ); | 1749 | mCancelAction->setEnabled( enabled ); |
1750 | #endif | ||
1725 | } | 1751 | } |
1726 | 1752 | ||
1727 | void MainWindow::importOL() | 1753 | void MainWindow::importOL() |
1728 | { | 1754 | { |
1729 | #ifdef _OL_IMPORT_ | 1755 | #ifdef _OL_IMPORT_ |
1730 | mView->clearAllViews(); | 1756 | mView->clearAllViews(); |
1731 | KOImportOLdialog *id = new KOImportOLdialog("Import from OL - select folder!" , mView->calendar(),this ); | 1757 | KOImportOLdialog *id = new KOImportOLdialog("Import from OL - select folder!" , mView->calendar(),this ); |
1732 | id->exec(); | 1758 | id->exec(); |
1733 | delete id; | 1759 | delete id; |
1734 | mView->calendar()->checkAlarmForIncidence( 0, true ); | 1760 | mView->calendar()->checkAlarmForIncidence( 0, true ); |
1735 | mView->updateView(); | 1761 | mView->updateView(); |
1736 | #endif | 1762 | #endif |
1737 | } | 1763 | } |
1738 | void MainWindow::importBday() | 1764 | void MainWindow::importBday() |
1739 | { | 1765 | { |
1740 | int result = QMessageBox::warning( this, i18n("KO/Pi import information!"), | 1766 | int result = QMessageBox::warning( this, i18n("KO/Pi import information!"), |
1741 | i18n("When importing birthdays twice\nduplicated events will be ignored,\nif the event has not been\nchanged in KO/Pi!\n"), | 1767 | i18n("When importing birthdays twice\nduplicated events will be ignored,\nif the event has not been\nchanged in KO/Pi!\n"), |
1742 | i18n("Import!"), i18n("Cancel"), 0, | 1768 | i18n("Import!"), i18n("Cancel"), 0, |
1743 | 0, 1 ); | 1769 | 0, 1 ); |
1744 | if ( result == 0 ) { | 1770 | if ( result == 0 ) { |
1745 | mView->importBday(); | 1771 | mView->importBday(); |
1746 | 1772 | ||
1747 | } | 1773 | } |
1748 | 1774 | ||
1749 | 1775 | ||
1750 | } | 1776 | } |
1751 | void MainWindow::importQtopia() | 1777 | void MainWindow::importQtopia() |
1752 | { | 1778 | { |
1753 | //#ifndef DESKTOP_VERSION | 1779 | //#ifndef DESKTOP_VERSION |
1754 | 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"); | 1780 | 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"); |
1755 | #ifdef DESKTOP_VERSION | 1781 | #ifdef DESKTOP_VERSION |
1756 | 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"); | 1782 | 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"); |
1757 | #endif | 1783 | #endif |
1758 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"),mess, | 1784 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"),mess, |
1759 | i18n("Import!"), i18n("Cancel"), 0, | 1785 | i18n("Import!"), i18n("Cancel"), 0, |
1760 | 0, 1 ); | 1786 | 0, 1 ); |
1761 | if ( result == 0 ) { | 1787 | if ( result == 0 ) { |
1762 | #ifndef DESKTOP_VERSION | 1788 | #ifndef DESKTOP_VERSION |
1763 | QString datebook = Global::applicationFileName( "datebook", "datebook.xml"); | 1789 | QString datebook = Global::applicationFileName( "datebook", "datebook.xml"); |
1764 | QString todolist = Global::applicationFileName( "todolist", "todolist.xml"); | 1790 | QString todolist = Global::applicationFileName( "todolist", "todolist.xml"); |
1765 | QString categories = QString( getenv( "HOME" ) ) + "/Settings/Categories.xml"; | 1791 | QString categories = QString( getenv( "HOME" ) ) + "/Settings/Categories.xml"; |
1766 | #else | 1792 | #else |
1767 | QString datebook = QDir::homeDirPath()+ "/Applications/datebook/datebook.xml"; | 1793 | QString datebook = QDir::homeDirPath()+ "/Applications/datebook/datebook.xml"; |
1768 | QString todolist = QDir::homeDirPath()+ "/Applications/todolist/todolist.xml"; | 1794 | QString todolist = QDir::homeDirPath()+ "/Applications/todolist/todolist.xml"; |
1769 | QString categories = QDir::homeDirPath()+ "/Settings/Categories.xml"; | 1795 | QString categories = QDir::homeDirPath()+ "/Settings/Categories.xml"; |
1770 | #endif | 1796 | #endif |
1771 | mView->importQtopia( categories, datebook, todolist ); | 1797 | mView->importQtopia( categories, datebook, todolist ); |
1772 | } | 1798 | } |
1773 | mView->calendar()->reInitAlarmSettings(); | 1799 | mView->calendar()->reInitAlarmSettings(); |
1774 | #if 0 | 1800 | #if 0 |
1775 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), | 1801 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), |
1776 | i18n("Not supported \non desktop!\n"), | 1802 | i18n("Not supported \non desktop!\n"), |
1777 | i18n("Ok"), i18n("Cancel"), 0, | 1803 | i18n("Ok"), i18n("Cancel"), 0, |
1778 | 0, 1 ); | 1804 | 0, 1 ); |
1779 | 1805 | ||
1780 | #endif | 1806 | #endif |
1781 | } | 1807 | } |
1782 | 1808 | ||
1783 | void MainWindow::saveOnClose() | 1809 | void MainWindow::saveOnClose() |
1784 | { | 1810 | { |
1785 | KOPrefs *p = KOPrefs::instance(); | 1811 | KOPrefs *p = KOPrefs::instance(); |
1786 | p->mToolBarHor = ( iconToolBar->orientation () == Qt:: Horizontal ); | 1812 | p->mToolBarHor = ( iconToolBar->orientation () == Qt:: Horizontal ); |
1787 | p->mToolBarHorV = ( viewToolBar->orientation () == Qt:: Horizontal ); | 1813 | p->mToolBarHorV = ( viewToolBar->orientation () == Qt:: Horizontal ); |
1788 | p->mToolBarHorN = ( navigatorToolBar->orientation () == Qt:: Horizontal ); | 1814 | p->mToolBarHorN = ( navigatorToolBar->orientation () == Qt:: Horizontal ); |
1789 | if ( filterToolBar ) { | 1815 | if ( filterToolBar ) { |
1790 | p->mToolBarHorF = ( filterToolBar->orientation () == Qt:: Horizontal ); | 1816 | p->mToolBarHorF = ( filterToolBar->orientation () == Qt:: Horizontal ); |
1791 | } | 1817 | } |
1792 | #ifdef DESKTOP_VERSION | 1818 | #ifdef DESKTOP_VERSION |
1793 | 1819 | ||
1794 | QPoint myP; | 1820 | QPoint myP; |
1795 | myP = mapFromGlobal( iconToolBar->mapToGlobal( QPoint( 0,0) ) ); | 1821 | myP = mapFromGlobal( iconToolBar->mapToGlobal( QPoint( 0,0) ) ); |
1796 | if ( p->mToolBarHor ) | 1822 | if ( p->mToolBarHor ) |
1797 | p->mToolBarUp = myP.y() > height()/2; | 1823 | p->mToolBarUp = myP.y() > height()/2; |
1798 | else | 1824 | else |
1799 | p->mToolBarUp = myP.x() > width()/2; | 1825 | p->mToolBarUp = myP.x() > width()/2; |
1800 | myP = mapFromGlobal( viewToolBar->mapToGlobal( QPoint( 0,0) ) ); | 1826 | myP = mapFromGlobal( viewToolBar->mapToGlobal( QPoint( 0,0) ) ); |
1801 | if ( p->mToolBarHorV ) | 1827 | if ( p->mToolBarHorV ) |
1802 | p->mToolBarUpV = myP.y() > height()/2; | 1828 | p->mToolBarUpV = myP.y() > height()/2; |
1803 | else | 1829 | else |
1804 | p->mToolBarUpV = myP.x() > width()/2 ; | 1830 | p->mToolBarUpV = myP.x() > width()/2 ; |
1805 | myP = mapFromGlobal( navigatorToolBar->mapToGlobal( QPoint( 0,0) ) ); | 1831 | myP = mapFromGlobal( navigatorToolBar->mapToGlobal( QPoint( 0,0) ) ); |
1806 | if ( p->mToolBarHorN ) | 1832 | if ( p->mToolBarHorN ) |
1807 | p->mToolBarUpN = myP.y() > height()/2; | 1833 | p->mToolBarUpN = myP.y() > height()/2; |
1808 | else | 1834 | else |
1809 | p->mToolBarUpN = myP.x() > width()/2 ; | 1835 | p->mToolBarUpN = myP.x() > width()/2 ; |
1810 | if ( filterToolBar ) { | 1836 | if ( filterToolBar ) { |
1811 | myP = mapFromGlobal( filterToolBar->mapToGlobal( QPoint( 0,0) ) ); | 1837 | myP = mapFromGlobal( filterToolBar->mapToGlobal( QPoint( 0,0) ) ); |
1812 | if ( p->mToolBarHorF ) | 1838 | if ( p->mToolBarHorF ) |
1813 | p->mToolBarUpF = myP.y() > height()/2; | 1839 | p->mToolBarUpF = myP.y() > height()/2; |
1814 | else | 1840 | else |
1815 | p->mToolBarUpF = myP.x() > width()/2 ; | 1841 | p->mToolBarUpF = myP.x() > width()/2 ; |
1816 | } | 1842 | } |
1817 | #else | 1843 | #else |
1818 | if ( p->mToolBarHor ) | 1844 | if ( p->mToolBarHor ) |
1819 | p->mToolBarUp = iconToolBar->y() > height()/2; | 1845 | p->mToolBarUp = iconToolBar->y() > height()/2; |
1820 | else | 1846 | else |
1821 | p->mToolBarUp = iconToolBar->x() > width()/2; | 1847 | p->mToolBarUp = iconToolBar->x() > width()/2; |
1822 | if ( p->mToolBarHorV ) | 1848 | if ( p->mToolBarHorV ) |
1823 | p->mToolBarUpV = viewToolBar->y() > height()/2; | 1849 | p->mToolBarUpV = viewToolBar->y() > height()/2; |
1824 | else | 1850 | else |
1825 | p->mToolBarUpV = viewToolBar->x() > width()/2 ; | 1851 | p->mToolBarUpV = viewToolBar->x() > width()/2 ; |
1826 | 1852 | ||
1827 | if ( p->mToolBarHorN ) | 1853 | if ( p->mToolBarHorN ) |
1828 | p->mToolBarUpN = navigatorToolBar->y() > height()/2; | 1854 | p->mToolBarUpN = navigatorToolBar->y() > height()/2; |
1829 | else | 1855 | else |
1830 | p->mToolBarUpN = navigatorToolBar->x() > width()/2 ; | 1856 | p->mToolBarUpN = navigatorToolBar->x() > width()/2 ; |
1831 | if ( filterToolBar ) { | 1857 | if ( filterToolBar ) { |
1832 | if ( p->mToolBarHorF ) | 1858 | if ( p->mToolBarHorF ) |
1833 | p->mToolBarUpF = filterToolBar->y() > height()/2; | 1859 | p->mToolBarUpF = filterToolBar->y() > height()/2; |
1834 | else | 1860 | else |
1835 | p->mToolBarUpF = filterToolBar->x() > width()/2 ; | 1861 | p->mToolBarUpF = filterToolBar->x() > width()/2 ; |
1836 | } | 1862 | } |
1837 | #endif | 1863 | #endif |
1838 | 1864 | ||
1839 | save(); | 1865 | save(); |
1840 | mView->writeSettings(); | 1866 | mView->writeSettings(); |
1841 | } | 1867 | } |
1842 | void MainWindow::slotModifiedChanged( bool changed ) | 1868 | void MainWindow::slotModifiedChanged( bool changed ) |
1843 | { | 1869 | { |
1844 | if ( mBlockAtStartup ) | 1870 | if ( mBlockAtStartup ) |
1845 | return; | 1871 | return; |
1846 | 1872 | ||
1847 | int msec; | 1873 | int msec; |
1848 | // we store the changes after 1 minute, | 1874 | // we store the changes after 1 minute, |
1849 | // and for safety reasons after 10 minutes again | 1875 | // and for safety reasons after 10 minutes again |
1850 | if ( !mSyncManager->blockSave() ) | 1876 | if ( !mSyncManager->blockSave() ) |
1851 | msec = (1000 * 60*KOPrefs::instance()->mAutoSaveInterval) +1000; | 1877 | msec = (1000 * 60*KOPrefs::instance()->mAutoSaveInterval) +1000; |
1852 | else | 1878 | else |
@@ -2149,256 +2175,257 @@ void MainWindow::fillFilterMenuTB() | |||
2149 | dY = selectFilterMenuTB->sizeHint().height()+8; | 2175 | dY = selectFilterMenuTB->sizeHint().height()+8; |
2150 | y = 0; | 2176 | y = 0; |
2151 | } | 2177 | } |
2152 | } else { | 2178 | } else { |
2153 | if ( iconToolBar->x() > width()/2 ) { // right side | 2179 | if ( iconToolBar->x() > width()/2 ) { // right side |
2154 | x=0; | 2180 | x=0; |
2155 | dX= selectFilterMenuTB->sizeHint().width()+8; | 2181 | dX= selectFilterMenuTB->sizeHint().width()+8; |
2156 | y = 0; | 2182 | y = 0; |
2157 | } else { | 2183 | } else { |
2158 | x= iconToolBar->width(); | 2184 | x= iconToolBar->width(); |
2159 | y = 0; | 2185 | y = 0; |
2160 | } | 2186 | } |
2161 | } | 2187 | } |
2162 | //qDebug("dax %d dy %d %d %d ", dX, dY, iconToolBar->x(), iconToolBar->y() ); | 2188 | //qDebug("dax %d dy %d %d %d ", dX, dY, iconToolBar->x(), iconToolBar->y() ); |
2163 | selectFilterMenuTB->popup(iconToolBar->mapToGlobal(QPoint(x,y)-QPoint( dX,dY))); | 2189 | selectFilterMenuTB->popup(iconToolBar->mapToGlobal(QPoint(x,y)-QPoint( dX,dY))); |
2164 | } | 2190 | } |
2165 | void MainWindow::fillFilterMenu() | 2191 | void MainWindow::fillFilterMenu() |
2166 | { | 2192 | { |
2167 | selectFilterMenu->clear(); | 2193 | selectFilterMenu->clear(); |
2168 | selectFilterMenu->insertItem(i18n ( "Edit Filters" ), 0 ); | 2194 | selectFilterMenu->insertItem(i18n ( "Edit Filters" ), 0 ); |
2169 | selectFilterMenu->insertSeparator(); | 2195 | selectFilterMenu->insertSeparator(); |
2170 | selectFilterMenu->insertItem(i18n ( "No Filter" ), 1 ); | 2196 | selectFilterMenu->insertItem(i18n ( "No Filter" ), 1 ); |
2171 | 2197 | ||
2172 | selectFilterMenu->insertSeparator(); | 2198 | selectFilterMenu->insertSeparator(); |
2173 | QPtrList<CalFilter> fili = mView->filters(); | 2199 | QPtrList<CalFilter> fili = mView->filters(); |
2174 | CalFilter *curfilter = mView->filterView()->selectedFilter(); | 2200 | CalFilter *curfilter = mView->filterView()->selectedFilter(); |
2175 | CalFilter *filter = fili.first(); | 2201 | CalFilter *filter = fili.first(); |
2176 | int iii = 2; | 2202 | int iii = 2; |
2177 | bool checkitem = mView->filterView()->filtersEnabled(); | 2203 | bool checkitem = mView->filterView()->filtersEnabled(); |
2178 | while(filter) { | 2204 | while(filter) { |
2179 | selectFilterMenu->insertItem( filter->name(), iii ); | 2205 | selectFilterMenu->insertItem( filter->name(), iii ); |
2180 | if ( filter == curfilter) | 2206 | if ( filter == curfilter) |
2181 | selectFilterMenu->setItemChecked( iii, checkitem ); | 2207 | selectFilterMenu->setItemChecked( iii, checkitem ); |
2182 | filter = fili.next(); | 2208 | filter = fili.next(); |
2183 | ++iii; | 2209 | ++iii; |
2184 | } | 2210 | } |
2185 | if ( !checkitem ) | 2211 | if ( !checkitem ) |
2186 | selectFilterMenu->setItemChecked( 1, true ); | 2212 | selectFilterMenu->setItemChecked( 1, true ); |
2187 | } | 2213 | } |
2188 | void MainWindow::fillFilterMenuPopup() | 2214 | void MainWindow::fillFilterMenuPopup() |
2189 | { | 2215 | { |
2190 | filterPopupMenu->clear(); | 2216 | filterPopupMenu->clear(); |
2191 | filterPopupMenu->insertItem(i18n ( "No Filter" ), 0 ); | 2217 | filterPopupMenu->insertItem(i18n ( "No Filter" ), 0 ); |
2192 | 2218 | ||
2193 | filterPopupMenu->insertSeparator(); | 2219 | filterPopupMenu->insertSeparator(); |
2194 | QPtrList<CalFilter> fili = mView->filters(); | 2220 | QPtrList<CalFilter> fili = mView->filters(); |
2195 | CalFilter *curfilter = mView->filterView()->selectedFilter(); | 2221 | CalFilter *curfilter = mView->filterView()->selectedFilter(); |
2196 | CalFilter *filter = fili.first(); | 2222 | CalFilter *filter = fili.first(); |
2197 | int iii = 1; | 2223 | int iii = 1; |
2198 | bool checkitem = mView->filterView()->filtersEnabled(); | 2224 | bool checkitem = mView->filterView()->filtersEnabled(); |
2199 | while(filter) { | 2225 | while(filter) { |
2200 | filterPopupMenu->insertItem( filter->name(), iii ); | 2226 | filterPopupMenu->insertItem( filter->name(), iii ); |
2201 | if ( filter == curfilter) | 2227 | if ( filter == curfilter) |
2202 | filterPopupMenu->setItemChecked( iii, checkitem ); | 2228 | filterPopupMenu->setItemChecked( iii, checkitem ); |
2203 | filter = fili.next(); | 2229 | filter = fili.next(); |
2204 | ++iii; | 2230 | ++iii; |
2205 | } | 2231 | } |
2206 | if ( !checkitem ) | 2232 | if ( !checkitem ) |
2207 | filterPopupMenu->setItemChecked( 0, true ); | 2233 | filterPopupMenu->setItemChecked( 0, true ); |
2208 | } | 2234 | } |
2209 | void MainWindow::selectFilter( int fil ) | 2235 | void MainWindow::selectFilter( int fil ) |
2210 | { | 2236 | { |
2211 | 2237 | ||
2212 | if ( fil == 0 ) { | 2238 | if ( fil == 0 ) { |
2213 | mView->editFilters( ); | 2239 | mView->editFilters( ); |
2214 | } else if ( fil == 1 ){ | 2240 | } else if ( fil == 1 ){ |
2215 | if ( mView->filterView()->filtersEnabled() ) | 2241 | if ( mView->filterView()->filtersEnabled() ) |
2216 | mView->toggleFilerEnabled( ); | 2242 | mView->toggleFilerEnabled( ); |
2217 | } else { | 2243 | } else { |
2218 | if ( !mView->filterView()->filtersEnabled() ) { | 2244 | if ( !mView->filterView()->filtersEnabled() ) { |
2219 | mView->filterView()->blockSignals( true ); | 2245 | mView->filterView()->blockSignals( true ); |
2220 | mView->toggleFilerEnabled( ); | 2246 | mView->toggleFilerEnabled( ); |
2221 | mView->filterView()->blockSignals( false ); | 2247 | mView->filterView()->blockSignals( false ); |
2222 | } | 2248 | } |
2223 | mView->selectFilter( fil-2 ); | 2249 | mView->selectFilter( fil-2 ); |
2224 | } | 2250 | } |
2225 | } | 2251 | } |
2226 | void MainWindow::updateFilterToolbar() | 2252 | void MainWindow::updateFilterToolbar() |
2227 | { | 2253 | { |
2228 | if ( filterMenubar ) { | 2254 | if ( filterMenubar ) { |
2229 | if ( !mView->filterView()->filtersEnabled() ) { | 2255 | if ( !mView->filterView()->filtersEnabled() ) { |
2230 | filterMenubar->changeItem( 0, i18n("No Filter") ); | 2256 | filterMenubar->changeItem( 0, i18n("No Filter") ); |
2231 | } else { | 2257 | } else { |
2232 | CalFilter *curfilter = mView->filterView()->selectedFilter(); | 2258 | CalFilter *curfilter = mView->filterView()->selectedFilter(); |
2233 | if ( curfilter ) { | 2259 | if ( curfilter ) { |
2234 | filterMenubar->changeItem( 0, curfilter->name() ); | 2260 | filterMenubar->changeItem( 0, curfilter->name() ); |
2235 | } | 2261 | } |
2236 | } | 2262 | } |
2237 | } | 2263 | } |
2238 | } | 2264 | } |
2239 | void MainWindow::selectFilterPopup( int fil ) | 2265 | void MainWindow::selectFilterPopup( int fil ) |
2240 | { | 2266 | { |
2241 | selectFilter( fil + 1 ); | 2267 | selectFilter( fil + 1 ); |
2242 | 2268 | ||
2243 | } | 2269 | } |
2244 | void MainWindow::configureToolBar( int item ) | 2270 | void MainWindow::configureToolBar( int item ) |
2245 | { | 2271 | { |
2246 | 2272 | ||
2247 | configureToolBarMenu->setItemChecked( item, !configureToolBarMenu-> isItemChecked ( item ) ); | 2273 | configureToolBarMenu->setItemChecked( item, !configureToolBarMenu-> isItemChecked ( item ) ); |
2248 | KOPrefs *p = KOPrefs::instance(); | 2274 | KOPrefs *p = KOPrefs::instance(); |
2249 | p-> mShowIconStretch= configureToolBarMenu->isItemChecked( 5 ); | 2275 | p-> mShowIconStretch= configureToolBarMenu->isItemChecked( 5 ); |
2250 | p-> mShowIconOnetoolbar = configureToolBarMenu->isItemChecked( 6 ); | 2276 | p-> mShowIconOnetoolbar = configureToolBarMenu->isItemChecked( 6 ); |
2251 | p-> mShowIconFilter = configureToolBarMenu->isItemChecked( 7 ); | 2277 | p-> mShowIconFilter = configureToolBarMenu->isItemChecked( 7 ); |
2252 | p-> mShowIconNewEvent= configureToolBarMenu->isItemChecked( 10 ); | 2278 | p-> mShowIconNewEvent= configureToolBarMenu->isItemChecked( 10 ); |
2253 | p->mShowIconNewTodo = configureToolBarMenu->isItemChecked( 20 ); | 2279 | p->mShowIconNewTodo = configureToolBarMenu->isItemChecked( 20 ); |
2254 | p->mShowIconNavigator = configureToolBarMenu->isItemChecked( 22 ); | 2280 | p->mShowIconNavigator = configureToolBarMenu->isItemChecked( 22 ); |
2255 | p->mShowIconAllday = configureToolBarMenu->isItemChecked( 24 ); | 2281 | p->mShowIconAllday = configureToolBarMenu->isItemChecked( 24 ); |
2256 | p->mShowIconFilterview = configureToolBarMenu->isItemChecked( 26 ); | 2282 | p->mShowIconFilterview = configureToolBarMenu->isItemChecked( 26 ); |
2257 | p->mShowIconToggleFull = configureToolBarMenu->isItemChecked( 28 ); | 2283 | p->mShowIconToggleFull = configureToolBarMenu->isItemChecked( 28 ); |
2258 | p-> mShowIconSearch= configureToolBarMenu->isItemChecked( 120 ); | 2284 | p-> mShowIconSearch= configureToolBarMenu->isItemChecked( 120 ); |
2259 | p-> mShowIconList= configureToolBarMenu->isItemChecked( 30 ); | 2285 | p-> mShowIconList= configureToolBarMenu->isItemChecked( 30 ); |
2260 | p-> mShowIconDay1= configureToolBarMenu->isItemChecked( 40 ); | 2286 | p-> mShowIconDay1= configureToolBarMenu->isItemChecked( 40 ); |
2261 | p-> mShowIconDay5= configureToolBarMenu->isItemChecked( 50 ); | 2287 | p-> mShowIconDay5= configureToolBarMenu->isItemChecked( 50 ); |
2262 | p-> mShowIconDay6= configureToolBarMenu->isItemChecked( 75 ); | 2288 | p-> mShowIconDay6= configureToolBarMenu->isItemChecked( 75 ); |
2263 | p-> mShowIconDay7= configureToolBarMenu->isItemChecked( 60 ); | 2289 | p-> mShowIconDay7= configureToolBarMenu->isItemChecked( 60 ); |
2264 | p-> mShowIconMonth= configureToolBarMenu->isItemChecked( 70 ); | 2290 | p-> mShowIconMonth= configureToolBarMenu->isItemChecked( 70 ); |
2265 | p-> mShowIconTodoview= configureToolBarMenu->isItemChecked( 80 ); | 2291 | p-> mShowIconTodoview= configureToolBarMenu->isItemChecked( 80 ); |
2266 | p-> mShowIconBackFast= configureToolBarMenu->isItemChecked( 200 ); | 2292 | p-> mShowIconBackFast= configureToolBarMenu->isItemChecked( 200 ); |
2267 | p-> mShowIconBack = configureToolBarMenu->isItemChecked( 210 ); | 2293 | p-> mShowIconBack = configureToolBarMenu->isItemChecked( 210 ); |
2268 | p-> mShowIconToday= configureToolBarMenu->isItemChecked( 130 ); | 2294 | p-> mShowIconToday= configureToolBarMenu->isItemChecked( 130 ); |
2269 | p-> mShowIconForward= configureToolBarMenu->isItemChecked( 220 ); | 2295 | p-> mShowIconForward= configureToolBarMenu->isItemChecked( 220 ); |
2270 | p-> mShowIconForwardFast= configureToolBarMenu->isItemChecked( 230 ); | 2296 | p-> mShowIconForwardFast= configureToolBarMenu->isItemChecked( 230 ); |
2271 | p-> mShowIconNextDays= configureToolBarMenu->isItemChecked( 100 ); | 2297 | p-> mShowIconNextDays= configureToolBarMenu->isItemChecked( 100 ); |
2272 | p-> mShowIconNext= configureToolBarMenu->isItemChecked( 110 ); | 2298 | p-> mShowIconNext= configureToolBarMenu->isItemChecked( 110 ); |
2273 | p-> mShowIconJournal= configureToolBarMenu->isItemChecked( 90 ); | 2299 | p-> mShowIconJournal= configureToolBarMenu->isItemChecked( 90 ); |
2274 | p-> mShowIconWhatsThis= configureToolBarMenu->isItemChecked( 300 ); | 2300 | p-> mShowIconWhatsThis= configureToolBarMenu->isItemChecked( 300 ); |
2275 | p-> mShowIconWeekNum= configureToolBarMenu->isItemChecked( 400 ); | 2301 | p-> mShowIconWeekNum= configureToolBarMenu->isItemChecked( 400 ); |
2276 | // initActions(); | 2302 | // initActions(); |
2303 | setCaption ( i18n("Toolbar changes needs a restart!") ); | ||
2277 | } | 2304 | } |
2278 | void MainWindow::setCaption ( const QString & c ) | 2305 | void MainWindow::setCaption ( const QString & c ) |
2279 | { | 2306 | { |
2280 | QString cap = c; | 2307 | QString cap = c; |
2281 | cap.replace( QRegExp("\n"), " " ); | 2308 | cap.replace( QRegExp("\n"), " " ); |
2282 | cap = cap.stripWhiteSpace(); | 2309 | cap = cap.stripWhiteSpace(); |
2283 | if ( cap.isEmpty() ) | 2310 | if ( cap.isEmpty() ) |
2284 | cap = "KO/Pi"; | 2311 | cap = "KO/Pi"; |
2285 | QWidget::setCaption( cap ); | 2312 | QWidget::setCaption( cap ); |
2286 | } | 2313 | } |
2287 | void MainWindow::setCaptionToDates() | 2314 | void MainWindow::setCaptionToDates() |
2288 | { | 2315 | { |
2289 | QString selDates; | 2316 | QString selDates; |
2290 | QDate date = mView->startDate(); | 2317 | QDate date = mView->startDate(); |
2291 | if ( ! date.isValid() ) { | 2318 | if ( ! date.isValid() ) { |
2292 | setCaption(""); | 2319 | setCaption(""); |
2293 | return; | 2320 | return; |
2294 | } | 2321 | } |
2295 | selDates = KGlobal::locale()->formatDate( date, true); | 2322 | selDates = KGlobal::locale()->formatDate( date, true); |
2296 | if (mView->startDate() < mView->endDate() ) | 2323 | if (mView->startDate() < mView->endDate() ) |
2297 | selDates += " - " + KGlobal::locale()->formatDate(mView->endDate(), true); | 2324 | selDates += " - " + KGlobal::locale()->formatDate(mView->endDate(), true); |
2298 | else { | 2325 | else { |
2299 | QString addString; | 2326 | QString addString; |
2300 | if ( date == QDateTime::currentDateTime().date() ) | 2327 | if ( date == QDateTime::currentDateTime().date() ) |
2301 | addString = i18n("Today"); | 2328 | addString = i18n("Today"); |
2302 | else if ( date == QDateTime::currentDateTime().date().addDays(1) ) | 2329 | else if ( date == QDateTime::currentDateTime().date().addDays(1) ) |
2303 | addString = i18n("Tomorrow"); | 2330 | addString = i18n("Tomorrow"); |
2304 | if ( !addString.isEmpty() ) | 2331 | if ( !addString.isEmpty() ) |
2305 | selDates = addString+", "+selDates ; | 2332 | selDates = addString+", "+selDates ; |
2306 | } | 2333 | } |
2307 | setCaption( i18n("Dates: ") + selDates ); | 2334 | setCaption( i18n("Dates: ") + selDates ); |
2308 | 2335 | ||
2309 | } | 2336 | } |
2310 | void MainWindow::showConfigureAgenda( ) | 2337 | void MainWindow::showConfigureAgenda( ) |
2311 | { | 2338 | { |
2312 | int iii; | 2339 | int iii; |
2313 | for ( iii = 1;iii<= 10 ;++iii ){ | 2340 | for ( iii = 1;iii<= 10 ;++iii ){ |
2314 | configureAgendaMenu->setItemChecked( (iii+1)*2, false ); | 2341 | configureAgendaMenu->setItemChecked( (iii+1)*2, false ); |
2315 | } | 2342 | } |
2316 | configureAgendaMenu->setItemChecked( (KOPrefs::instance()->mHourSize/2)*2, true ); | 2343 | configureAgendaMenu->setItemChecked( (KOPrefs::instance()->mHourSize/2)*2, true ); |
2317 | } | 2344 | } |
2318 | void MainWindow::configureAgenda( int item ) | 2345 | void MainWindow::configureAgenda( int item ) |
2319 | { | 2346 | { |
2320 | if ( KOPrefs::instance()->mHourSize == item ) | 2347 | if ( KOPrefs::instance()->mHourSize == item ) |
2321 | return; | 2348 | return; |
2322 | KOPrefs::instance()->mHourSize=item; | 2349 | KOPrefs::instance()->mHourSize=item; |
2323 | mView->viewManager()->agendaView()->updateConfig(); | 2350 | mView->viewManager()->agendaView()->updateConfig(); |
2324 | } | 2351 | } |
2325 | 2352 | ||
2326 | void MainWindow::saveCalendar() | 2353 | void MainWindow::saveCalendar() |
2327 | { | 2354 | { |
2328 | QString bupDir = KPimGlobalPrefs::instance()->mBackupDatadir; | 2355 | QString bupDir = KPimGlobalPrefs::instance()->mBackupDatadir; |
2329 | if ( KPimGlobalPrefs::instance()->mBackupUseDefaultDir) | 2356 | if ( KPimGlobalPrefs::instance()->mBackupUseDefaultDir) |
2330 | bupDir = KGlobalSettings::backupDataDir(); | 2357 | bupDir = KGlobalSettings::backupDataDir(); |
2331 | bupDir = KGlobal::formatMessage ( bupDir, 0 ); | 2358 | bupDir = KGlobal::formatMessage ( bupDir, 0 ); |
2332 | QString bupHint; | 2359 | QString bupHint; |
2333 | if ( !KPimGlobalPrefs::instance()->mBackupEnabled ) | 2360 | if ( !KPimGlobalPrefs::instance()->mBackupEnabled ) |
2334 | bupHint = i18n("(Hint: You can enable automatic backup in the global settings!)"); | 2361 | bupHint = i18n("(Hint: You can enable automatic backup in the global settings!)"); |
2335 | if ( KMessageBox::warningContinueCancel( this, i18n("This will <b>backup all calendar files</b> to the directory %1 %2").arg(bupDir).arg(bupHint),i18n("Information") ) != KMessageBox::Continue ) return; | 2362 | if ( KMessageBox::warningContinueCancel( this, i18n("This will <b>backup all calendar files</b> to the directory %1 %2").arg(bupDir).arg(bupHint),i18n("Information") ) != KMessageBox::Continue ) return; |
2336 | bool enabled = KPimGlobalPrefs::instance()->mBackupEnabled; | 2363 | bool enabled = KPimGlobalPrefs::instance()->mBackupEnabled; |
2337 | KPimGlobalPrefs::instance()->mBackupEnabled = false; | 2364 | KPimGlobalPrefs::instance()->mBackupEnabled = false; |
2338 | save(); | 2365 | save(); |
2339 | KPimGlobalPrefs::instance()->mBackupEnabled = enabled; | 2366 | KPimGlobalPrefs::instance()->mBackupEnabled = enabled; |
2340 | backupAllFiles(); | 2367 | backupAllFiles(); |
2341 | } | 2368 | } |
2342 | void MainWindow::loadCalendar() | 2369 | void MainWindow::loadCalendar() |
2343 | { | 2370 | { |
2344 | 2371 | ||
2345 | 2372 | ||
2346 | #if 0 | 2373 | #if 0 |
2347 | QString fn = KOPrefs::instance()->mLastLoadFile; | 2374 | QString fn = KOPrefs::instance()->mLastLoadFile; |
2348 | fn = KFileDialog::getOpenFileName( fn, i18n("Load backup filename"), this ); | 2375 | fn = KFileDialog::getOpenFileName( fn, i18n("Load backup filename"), this ); |
2349 | 2376 | ||
2350 | if ( fn == "" ) | 2377 | if ( fn == "" ) |
2351 | return; | 2378 | return; |
2352 | QFileInfo info; | 2379 | QFileInfo info; |
2353 | info.setFile( fn ); | 2380 | info.setFile( fn ); |
2354 | QString mess; | 2381 | QString mess; |
2355 | bool loadbup = true; | 2382 | bool loadbup = true; |
2356 | if ( info. exists() ) { | 2383 | if ( info. exists() ) { |
2357 | mess = i18n("Backup file from:\n%1\nLoading backup\nfile will delete\nyour current Data!\n").arg(KGlobal::locale()->formatDateTime(info.lastModified (), true, false )); | 2384 | mess = i18n("Backup file from:\n%1\nLoading backup\nfile will delete\nyour current Data!\n").arg(KGlobal::locale()->formatDateTime(info.lastModified (), true, false )); |
2358 | int result = QMessageBox::warning( this, "KO/Pi: Warning!", | 2385 | int result = QMessageBox::warning( this, "KO/Pi: Warning!", |
2359 | mess, | 2386 | mess, |
2360 | i18n("Load!"), i18n("Cancel"), 0, | 2387 | i18n("Load!"), i18n("Cancel"), 0, |
2361 | 0, 1 ); | 2388 | 0, 1 ); |
2362 | if ( result != 0 ) { | 2389 | if ( result != 0 ) { |
2363 | loadbup = false; | 2390 | loadbup = false; |
2364 | } | 2391 | } |
2365 | } else { | 2392 | } else { |
2366 | QMessageBox::warning( this, i18n("KO/Pi: Warning!"), | 2393 | QMessageBox::warning( this, i18n("KO/Pi: Warning!"), |
2367 | i18n("Backup file\ndoes not exist!\nNothing loaded!"), 0, 0, | 2394 | i18n("Backup file\ndoes not exist!\nNothing loaded!"), 0, 0, |
2368 | 0, 1 ); | 2395 | 0, 1 ); |
2369 | 2396 | ||
2370 | return; | 2397 | return; |
2371 | } | 2398 | } |
2372 | if ( loadbup ) { | 2399 | if ( loadbup ) { |
2373 | mView->openCalendar( fn ); | 2400 | mView->openCalendar( fn ); |
2374 | KOPrefs::instance()->mLastLoadFile = fn; | 2401 | KOPrefs::instance()->mLastLoadFile = fn; |
2375 | mess = i18n("KO/Pi:Loaded %1").arg(fn) ; | 2402 | mess = i18n("KO/Pi:Loaded %1").arg(fn) ; |
2376 | setCaption(mess); | 2403 | setCaption(mess); |
2377 | } | 2404 | } |
2378 | #endif | 2405 | #endif |
2379 | 2406 | ||
2380 | } | 2407 | } |
2381 | void MainWindow::quickImportIcal() | 2408 | void MainWindow::quickImportIcal() |
2382 | { | 2409 | { |
2383 | importFile( KOPrefs::instance()->mLastImportFile, false ); | 2410 | importFile( KOPrefs::instance()->mLastImportFile, false ); |
2384 | } | 2411 | } |
2385 | void MainWindow::importFile( QString fn, bool quick ) | 2412 | void MainWindow::importFile( QString fn, bool quick ) |
2386 | { | 2413 | { |
2387 | QFileInfo info; | 2414 | QFileInfo info; |
2388 | info.setFile( fn ); | 2415 | info.setFile( fn ); |
2389 | QString mess; | 2416 | QString mess; |
2390 | bool loadbup = true; | 2417 | bool loadbup = true; |
2391 | if ( !info. exists() ) { | 2418 | if ( !info. exists() ) { |
2392 | mess = i18n("Import file \n...%1\ndoes not exist!\nNothing imported!\n").arg(fn.right( 30)); | 2419 | mess = i18n("Import file \n...%1\ndoes not exist!\nNothing imported!\n").arg(fn.right( 30)); |
2393 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), | 2420 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), |
2394 | mess ); | 2421 | mess ); |
2395 | return; | 2422 | return; |
2396 | } | 2423 | } |
2397 | int result = 0; | 2424 | int result = 0; |
2398 | if ( !quick ) { | 2425 | if ( !quick ) { |
2399 | mess = i18n( "Import file \n...%1\nfrom:\n%2\nDuplicated entries\nwill not be imported!\n").arg(fn.right( 25)).arg(KGlobal::locale()->formatDateTime(info.lastModified (), true, false )); | 2426 | mess = i18n( "Import file \n...%1\nfrom:\n%2\nDuplicated entries\nwill not be imported!\n").arg(fn.right( 25)).arg(KGlobal::locale()->formatDateTime(info.lastModified (), true, false )); |
2400 | result = QMessageBox::warning( this, "KO/Pi: Warning!", | 2427 | result = QMessageBox::warning( this, "KO/Pi: Warning!", |
2401 | mess, | 2428 | mess, |
2402 | "Import", "Cancel", 0, | 2429 | "Import", "Cancel", 0, |
2403 | 0, 1 ); | 2430 | 0, 1 ); |
2404 | } | 2431 | } |
diff --git a/korganizer/mainwindow.h b/korganizer/mainwindow.h index a4d0523..953774f 100644 --- a/korganizer/mainwindow.h +++ b/korganizer/mainwindow.h | |||
@@ -4,168 +4,169 @@ | |||
4 | #include <qmainwindow.h> | 4 | #include <qmainwindow.h> |
5 | #include <qtimer.h> | 5 | #include <qtimer.h> |
6 | #include <qdict.h> | 6 | #include <qdict.h> |
7 | #include <qfile.h> | 7 | #include <qfile.h> |
8 | #include <qmenubar.h> | 8 | #include <qmenubar.h> |
9 | #include <qtextstream.h> | 9 | #include <qtextstream.h> |
10 | #include <qregexp.h> | 10 | #include <qregexp.h> |
11 | 11 | ||
12 | #include <libkcal/incidence.h> | 12 | #include <libkcal/incidence.h> |
13 | #include <ksyncmanager.h> | 13 | #include <ksyncmanager.h> |
14 | #ifndef DESKTOP_VERSION | 14 | #ifndef DESKTOP_VERSION |
15 | #include <qcopchannel_qws.h> | 15 | #include <qcopchannel_qws.h> |
16 | #endif | 16 | #endif |
17 | class QAction; | 17 | class QAction; |
18 | class CalendarView; | 18 | class CalendarView; |
19 | class KSyncProfile; | 19 | class KSyncProfile; |
20 | #ifdef DESKTOP_VERSION | 20 | #ifdef DESKTOP_VERSION |
21 | 21 | ||
22 | #define QPEToolBar QToolBar | 22 | #define QPEToolBar QToolBar |
23 | #define QPEMenuBar QMenuBar | 23 | #define QPEMenuBar QMenuBar |
24 | #endif | 24 | #endif |
25 | class QPEToolBar; | 25 | class QPEToolBar; |
26 | class QPEMenuBar; | 26 | class QPEMenuBar; |
27 | 27 | ||
28 | 28 | ||
29 | namespace KCal { | 29 | namespace KCal { |
30 | class CalendarLocal; | 30 | class CalendarLocal; |
31 | } | 31 | } |
32 | 32 | ||
33 | using namespace KCal; | 33 | using namespace KCal; |
34 | 34 | ||
35 | class MainWindow : public QMainWindow | 35 | class MainWindow : public QMainWindow |
36 | { | 36 | { |
37 | Q_OBJECT | 37 | Q_OBJECT |
38 | public: | 38 | public: |
39 | MainWindow( QWidget *parent = 0, const char *name = 0, QString command = ""); | 39 | MainWindow( QWidget *parent = 0, const char *name = 0, QString command = ""); |
40 | ~MainWindow(); | 40 | ~MainWindow(); |
41 | bool beamReceiveEnabled(); | 41 | bool beamReceiveEnabled(); |
42 | static QString defaultFileName(); | 42 | static QString defaultFileName(); |
43 | static QString syncFileName(); | 43 | static QString syncFileName(); |
44 | static QString resourcePath(); | 44 | static QString resourcePath(); |
45 | public slots: | 45 | public slots: |
46 | void setUsesBigPixmaps ( bool ); | 46 | void setUsesBigPixmaps ( bool ); |
47 | void setCaption ( const QString & ); | 47 | void setCaption ( const QString & ); |
48 | void updateWeekNum(const KCal::DateList &); | 48 | void updateWeekNum(const KCal::DateList &); |
49 | void updateWeek(QDate); | 49 | void updateWeek(QDate); |
50 | void updateFilterToolbar(); | 50 | void updateFilterToolbar(); |
51 | virtual void showMaximized (); | 51 | virtual void showMaximized (); |
52 | void configureAgenda( int ); | 52 | void configureAgenda( int ); |
53 | void recieve( const QCString& msg, const QByteArray& data ); | 53 | void recieve( const QCString& msg, const QByteArray& data ); |
54 | protected slots: | 54 | protected slots: |
55 | void startMultiSync(); | 55 | void startMultiSync(); |
56 | void setCaptionToDates(); | 56 | void setCaptionToDates(); |
57 | void weekAction(); | 57 | void weekAction(); |
58 | void about(); | 58 | void about(); |
59 | void licence(); | 59 | void licence(); |
60 | void faq(); | 60 | void faq(); |
61 | void usertrans(); | 61 | void usertrans(); |
62 | void features(); | 62 | void features(); |
63 | void synchowto(); | 63 | void synchowto(); |
64 | void storagehowto(); | 64 | void storagehowto(); |
65 | void timetrackinghowto(); | 65 | void timetrackinghowto(); |
66 | void kdesynchowto(); | 66 | void kdesynchowto(); |
67 | void multisynchowto(); | 67 | void multisynchowto(); |
68 | void whatsNew(); | 68 | void whatsNew(); |
69 | void keyBindings(); | 69 | void keyBindings(); |
70 | void aboutAutoSaving();; | 70 | void aboutAutoSaving();; |
71 | void aboutKnownBugs(); | 71 | void aboutKnownBugs(); |
72 | 72 | ||
73 | void processIncidenceSelection( Incidence * ); | 73 | void processIncidenceSelection( Incidence * ); |
74 | 74 | ||
75 | void importQtopia(); | 75 | void importQtopia(); |
76 | void importBday(); | 76 | void importBday(); |
77 | void importOL(); | 77 | void importOL(); |
78 | void importIcal(); | 78 | void importIcal(); |
79 | void importFile( QString, bool ); | 79 | void importFile( QString, bool ); |
80 | void quickImportIcal(); | 80 | void quickImportIcal(); |
81 | 81 | ||
82 | void slotModifiedChanged( bool ); | 82 | void slotModifiedChanged( bool ); |
83 | 83 | ||
84 | void save(); | 84 | void save(); |
85 | void backupAllFiles(); | 85 | void backupAllFiles(); |
86 | void saveStopTimer(); | 86 | void saveStopTimer(); |
87 | void configureToolBar( int ); | 87 | void configureToolBar( int ); |
88 | void printSel(); | 88 | void printSel(); |
89 | void printCal(); | 89 | void printCal(); |
90 | void printListView(); | 90 | void printListView(); |
91 | void saveCalendar(); | 91 | void saveCalendar(); |
92 | void loadCalendar(); | 92 | void loadCalendar(); |
93 | void exportVCalendar(); | 93 | void exportVCalendar(); |
94 | void fillFilterMenu(); | 94 | void fillFilterMenu(); |
95 | void fillFilterMenuTB(); | 95 | void fillFilterMenuTB(); |
96 | void selectFilter( int ); | 96 | void selectFilter( int ); |
97 | void fillFilterMenuPopup(); | 97 | void fillFilterMenuPopup(); |
98 | void selectFilterPopup( int ); | 98 | void selectFilterPopup( int ); |
99 | void exportToPhone( int ); | 99 | void exportToPhone( int ); |
100 | void toggleBeamReceive(); | 100 | void toggleBeamReceive(); |
101 | void disableBR(bool); | 101 | void disableBR(bool); |
102 | signals: | 102 | signals: |
103 | void selectWeek ( int ); | 103 | void selectWeek ( int ); |
104 | private slots: | 104 | private slots: |
105 | void showConfigureAgenda(); | 105 | void showConfigureAgenda(); |
106 | void getFile( bool ); | 106 | void getFile( bool ); |
107 | void syncFileRequest(); | 107 | void syncFileRequest(); |
108 | 108 | ||
109 | protected: | 109 | protected: |
110 | void hideEvent ( QHideEvent * ); | 110 | void hideEvent ( QHideEvent * ); |
111 | QString sentSyncFile(); | 111 | QString sentSyncFile(); |
112 | void displayText( QString, QString); | 112 | void displayText( QString, QString); |
113 | void enableIncidenceActions( bool ); | 113 | void enableIncidenceActions( bool ); |
114 | 114 | ||
115 | private: | 115 | private: |
116 | bool mBRdisabled; | 116 | bool mBRdisabled; |
117 | #ifndef DESKTOP_VERSION | 117 | #ifndef DESKTOP_VERSION |
118 | QCopChannel* infrared; | 118 | QCopChannel* infrared; |
119 | #endif | 119 | #endif |
120 | QAction* brAction; | 120 | QAction* brAction; |
121 | KSyncManager* mSyncManager; | 121 | KSyncManager* mSyncManager; |
122 | bool mClosed; | 122 | bool mClosed; |
123 | void saveOnClose(); | 123 | void saveOnClose(); |
124 | bool mFlagKeyPressed; | 124 | bool mFlagKeyPressed; |
125 | bool mBlockAtStartup; | 125 | bool mBlockAtStartup; |
126 | QPEToolBar *iconToolBar; | 126 | QPEToolBar *iconToolBar; |
127 | QPEToolBar *viewToolBar; | 127 | QPEToolBar *viewToolBar; |
128 | QPEToolBar *navigatorToolBar; | 128 | QPEToolBar *navigatorToolBar; |
129 | QPEToolBar *filterToolBar; | 129 | QPEToolBar *filterToolBar; |
130 | QMenuBar *filterMenubar; | 130 | QMenuBar *filterMenubar; |
131 | QPopupMenu * filterPopupMenu; | 131 | QPopupMenu * filterPopupMenu; |
132 | QPopupMenu * mCurrentItemMenu; | ||
132 | void initActions(); | 133 | void initActions(); |
133 | void setDefaultPreferences(); | 134 | void setDefaultPreferences(); |
134 | void resizeEvent( QResizeEvent* e); | 135 | void resizeEvent( QResizeEvent* e); |
135 | void keyPressEvent ( QKeyEvent * ) ; | 136 | void keyPressEvent ( QKeyEvent * ) ; |
136 | void keyReleaseEvent ( QKeyEvent * ) ; | 137 | void keyReleaseEvent ( QKeyEvent * ) ; |
137 | QPopupMenu *configureToolBarMenu; | 138 | QPopupMenu *configureToolBarMenu; |
138 | QPopupMenu *selectFilterMenu; | 139 | QPopupMenu *selectFilterMenu; |
139 | QPopupMenu *selectFilterMenuTB; | 140 | QPopupMenu *selectFilterMenuTB; |
140 | QPopupMenu *configureAgendaMenu, *syncMenu; | 141 | QPopupMenu *configureAgendaMenu, *syncMenu; |
141 | CalendarLocal *mCalendar; | 142 | CalendarLocal *mCalendar; |
142 | CalendarView *mView; | 143 | CalendarView *mView; |
143 | QAction *mNewSubTodoAction; | 144 | QAction *mNewSubTodoAction; |
144 | QAction *mWeekAction; | 145 | QAction *mWeekAction; |
145 | QFont mWeekFont; | 146 | QFont mWeekFont; |
146 | QPixmap mWeekPixmap; | 147 | QPixmap mWeekPixmap; |
147 | QColor mWeekBgColor; | 148 | QColor mWeekBgColor; |
148 | 149 | ||
149 | QAction *mShowAction; | 150 | QAction *mShowAction; |
150 | QAction *mEditAction; | 151 | QAction *mEditAction; |
151 | QAction *mDeleteAction; | 152 | QAction *mDeleteAction; |
152 | QAction *mCloneAction; | 153 | QAction *mCloneAction; |
153 | QAction *mMoveAction; | 154 | QAction *mMoveAction; |
154 | QAction *mBeamAction; | 155 | QAction *mBeamAction; |
155 | QAction *mCancelAction; | 156 | QAction *mCancelAction; |
156 | 157 | ||
157 | QAction *mToggleNav; | 158 | QAction *mToggleNav; |
158 | QAction *mToggleFilter; | 159 | QAction *mToggleFilter; |
159 | QAction *mToggleAllday; | 160 | QAction *mToggleAllday; |
160 | QAction *actionFilterMenuTB; | 161 | QAction *actionFilterMenuTB; |
161 | 162 | ||
162 | void closeEvent( QCloseEvent* ce ); | 163 | void closeEvent( QCloseEvent* ce ); |
163 | QTimer mSaveTimer; | 164 | QTimer mSaveTimer; |
164 | //bool mBlockSaveFlag; | 165 | //bool mBlockSaveFlag; |
165 | bool mCalendarModifiedFlag; | 166 | bool mCalendarModifiedFlag; |
166 | QPixmap loadPixmap( QString ); | 167 | QPixmap loadPixmap( QString ); |
167 | QPixmap listviewPix, listviewPix0, listviewPix20, listviewPix40, listviewPix60, listviewPix80; | 168 | QPixmap listviewPix, listviewPix0, listviewPix20, listviewPix40, listviewPix60, listviewPix80; |
168 | }; | 169 | }; |
169 | 170 | ||
170 | 171 | ||
171 | #endif | 172 | #endif |
@@ -1 +1 @@ | |||
version = "2.1.11"; | version = "2.1.12"; | ||