-rw-r--r-- | bin/kdepim/kaddressbook/germantranslation.txt | 5 | ||||
-rw-r--r-- | bin/kdepim/pwmanager/germantranslation.txt | 5 | ||||
-rw-r--r-- | korganizer/mainwindow.cpp | 5 | ||||
-rw-r--r-- | microkde/kapplication.cpp | 13 |
4 files changed, 18 insertions, 10 deletions
diff --git a/bin/kdepim/kaddressbook/germantranslation.txt b/bin/kdepim/kaddressbook/germantranslation.txt index 85aed43..50056c4 100644 --- a/bin/kdepim/kaddressbook/germantranslation.txt +++ b/bin/kdepim/kaddressbook/germantranslation.txt | |||
@@ -713,52 +713,57 @@ | |||
713 | { "Connected! Sending request for remote file ...","Verbunden! Sende Daten Anfrage..." }, | 713 | { "Connected! Sending request for remote file ...","Verbunden! Sende Daten Anfrage..." }, |
714 | { "Trying to connect to remote...","Versuche mit Gegenstelle zu verbinden..." }, | 714 | { "Trying to connect to remote...","Versuche mit Gegenstelle zu verbinden..." }, |
715 | { "Connection to remote\nhost timed out!\nDid you forgot to enable\nsyncing on remote host?","Verbindungsversuch wegen\nZeitüberschreitung gescheitert!\nWurde vergessen Pi-Sync auf\nder Gegenstelle anzuschalten?" }, | 715 | { "Connection to remote\nhost timed out!\nDid you forgot to enable\nsyncing on remote host?","Verbindungsversuch wegen\nZeitüberschreitung gescheitert!\nWurde vergessen Pi-Sync auf\nder Gegenstelle anzuschalten?" }, |
716 | { "ERROR: Receiving remote file failed.","FEHLER: Empfang der entfernten Daten fehlgeschlagen." }, | 716 | { "ERROR: Receiving remote file failed.","FEHLER: Empfang der entfernten Daten fehlgeschlagen." }, |
717 | { "Error","Fehler" }, | 717 | { "Error","Fehler" }, |
718 | { ""You entered an invalid date!\n Date changed to current date.","Ungültiges Datum eingegeben.\nSetze heutiges Datum." }, | 718 | { ""You entered an invalid date!\n Date changed to current date.","Ungültiges Datum eingegeben.\nSetze heutiges Datum." }, |
719 | { "You entered an invalid date!\n Will use current date instead.","Ungültiges Datum eingegeben.\nSetze stattdessen heutiges Datum." }, | 719 | { "You entered an invalid date!\n Will use current date instead.","Ungültiges Datum eingegeben.\nSetze stattdessen heutiges Datum." }, |
720 | { "Warning","Warnung" }, | 720 | { "Warning","Warnung" }, |
721 | { "Select week number","Wähle Wochen Nummer" }, | 721 | { "Select week number","Wähle Wochen Nummer" }, |
722 | { "Februar","Februar" }, | 722 | { "Februar","Februar" }, |
723 | { "Pi-Sync options for device: ","Pi-Sync Einstellungen für Gerät: " }, | 723 | { "Pi-Sync options for device: ","Pi-Sync Einstellungen für Gerät: " }, |
724 | { "Password for remote access:","Passwort für fernen Zugriff:" }, | 724 | { "Password for remote access:","Passwort für fernen Zugriff:" }, |
725 | { "Remote IP address:","Ferne IP Adresse:" }, | 725 | { "Remote IP address:","Ferne IP Adresse:" }, |
726 | { "Remote port number:","Ferne Port Nummer:" }, | 726 | { "Remote port number:","Ferne Port Nummer:" }, |
727 | { "Remote file saved to temp file.","Ferne Daten in temp Datei gespeichert." }, | 727 | { "Remote file saved to temp file.","Ferne Daten in temp Datei gespeichert." }, |
728 | { "Remote from: ","Fern von: " }, | 728 | { "Remote from: ","Fern von: " }, |
729 | { "Local from: ","Lokal von: " }, | 729 | { "Local from: ","Lokal von: " }, |
730 | { "Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n %d incoming filtered out\n %d outgoing filtered out\n","Synchronisationsübersicht:\n\n %d lokal hinzugefügt\n %d fern hinzugefügt\n %d lokal geändert\n %d fern geändert\n %d lokal gelöscht\n %d fern gelöscht\n %d eingehende ausgefiltert\n %d ausgehende ausgefiltert\n" }, | 730 | { "Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n %d incoming filtered out\n %d outgoing filtered out\n","Synchronisationsübersicht:\n\n %d lokal hinzugefügt\n %d fern hinzugefügt\n %d lokal geändert\n %d fern geändert\n %d lokal gelöscht\n %d fern gelöscht\n %d eingehende ausgefiltert\n %d ausgehende ausgefiltert\n" }, |
731 | { "Local calendar changed!\n","Lokaler Kalender geändert!\n" }, | 731 | { "Local calendar changed!\n","Lokaler Kalender geändert!\n" }, |
732 | { "Write back","Schreibe zurück" }, | 732 | { "Write back","Schreibe zurück" }, |
733 | { "Pi-Sync succesful!","Pi-Sync erfolgreich!" }, | 733 | { "Pi-Sync succesful!","Pi-Sync erfolgreich!" }, |
734 | { "Received sync request","Sync Anfrage erhalten" }, | 734 | { "Received sync request","Sync Anfrage erhalten" }, |
735 | { "Synchronizing from remote ...\n\nDo not use this application!\n\nIf syncing fails\nyou can close this dialog.","Ferne Synchronisation ...\n\nBenutze diese Anwendung nicht!\n\nWenn das Syncen fehlschlägt kann\ndieser Dialog geschlossen werden." }, | 735 | { "Synchronizing from remote ...\n\nDo not use this application!\n\nIf syncing fails\nyou can close this dialog.","Ferne Synchronisation ...\n\nBenutze diese Anwendung nicht!\n\nWenn das Syncen fehlschlägt kann\ndieser Dialog geschlossen werden." }, |
736 | { "Saving Data to temp file ...","Speichere Daten in temp Datei..." }, | 736 | { "Saving Data to temp file ...","Speichere Daten in temp Datei..." }, |
737 | { "Data saved to temp file!","Daten in temp Datei gespeichert!" }, | 737 | { "Data saved to temp file!","Daten in temp Datei gespeichert!" }, |
738 | { "Sending file...","Sende Datei..." }, | 738 | { "Sending file...","Sende Datei..." }, |
739 | { "Waiting for synced file...","Warte auf gesyncte Daten..." }, | 739 | { "Waiting for synced file...","Warte auf gesyncte Daten..." }, |
740 | { "Receiving synced file...","Gesyncte Daten erhalten..." }, | 740 | { "Receiving synced file...","Gesyncte Daten erhalten..." }, |
741 | { "Received %1 bytes","%1 Bytes erhalten" }, | 741 | { "Received %1 bytes","%1 Bytes erhalten" }, |
742 | { "Writing file to disk...","Speichere Datei..." }, | 742 | { "Writing file to disk...","Speichere Datei..." }, |
743 | { "Pi-Sync successful!","Pi-Sync erfolgreich!" }, | 743 | { "Pi-Sync successful!","Pi-Sync erfolgreich!" }, |
744 | { "Clock skew of\nsyncing devices\nis %1 seconds!","Uhrzeitunterschied der\nsyncenden Geräte\nist %1 Sekunden!" }, | 744 | { "Clock skew of\nsyncing devices\nis %1 seconds!","Uhrzeitunterschied der\nsyncenden Geräte\nist %1 Sekunden!" }, |
745 | { "Synchronize!","Synchronisiere!" }, | 745 | { "Synchronize!","Synchronisiere!" }, |
746 | { "High clock skew!","Großer Uhrzeitunterschied!" }, | 746 | { "High clock skew!","Großer Uhrzeitunterschied!" }, |
747 | { "ADJUST\nYOUR\nCLOCKS!","JUSTIERE\nDIE\nUHREN!" }, | 747 | { "ADJUST\nYOUR\nCLOCKS!","JUSTIERE\nDIE\nUHREN!" }, |
748 | { "The clocks of the syncing\ndevices have a difference\nof more than 5 minutes.\nPlease adjust your clocks.\nYou may get wrong syncing results!\nPlease confirm synchronization!","Die Uhren der syncenden Geräte\nhaben einen Unterschied von\nmehr als 5 Minuten. Bitte die\nUhrzeiten anpassen. Sie können\nfalsche Sync-Resultate erhalten!\nBitte das Syncen bestätigen!" }, | 748 | { "The clocks of the syncing\ndevices have a difference\nof more than 5 minutes.\nPlease adjust your clocks.\nYou may get wrong syncing results!\nPlease confirm synchronization!","Die Uhren der syncenden Geräte\nhaben einen Unterschied von\nmehr als 5 Minuten. Bitte die\nUhrzeiten anpassen. Sie können\nfalsche Sync-Resultate erhalten!\nBitte das Syncen bestätigen!" }, |
749 | { "Change search field enable jump bar","Ändere Suchfeld um Jumpbar anzuzeigen" }, | 749 | { "Change search field enable jump bar","Ändere Suchfeld um Jumpbar anzuzeigen" }, |
750 | { "Search with '*' prefix (wildcard)","Suche mit '*' Prefix (Wildcard)" }, | 750 | { "Search with '*' prefix (wildcard)","Suche mit '*' Prefix (Wildcard)" }, |
751 | { "Shrink searchfield in portrait view","Verkleinere Suchfeld im Portraitmodus" }, | 751 | { "Shrink searchfield in portrait view","Verkleinere Suchfeld im Portraitmodus" }, |
752 | { "Edit new contact","Bearbeite neuen Kontakt" }, | 752 | { "Edit new contact","Bearbeite neuen Kontakt" }, |
753 | { "Edit ","Bearbeite " }, | 753 | { "Edit ","Bearbeite " }, |
754 | { "No contact changed!","Kein Kontakt verändert" }, | 754 | { "No contact changed!","Kein Kontakt verändert" }, |
755 | { "%1 contacts changed!","%1 Kontakte geändert!" }, | 755 | { "%1 contacts changed!","%1 Kontakte geändert!" }, |
756 | { "Mobile (home)","Handy (Arbeit)" }, | 756 | { "Mobile (home)","Handy (Arbeit)" }, |
757 | { "Mobile (work)","Handy (Privat)" }, | 757 | { "Mobile (work)","Handy (Privat)" }, |
758 | { "Def.Formatted Name","Def. Format. Name" }, | 758 | { "Def.Formatted Name","Def. Format. Name" }, |
759 | { "Colors","Farben" }, | 759 | { "Colors","Farben" }, |
760 | { "Alternating background of list views","Abwechselnder Hintergrund für Listen" }, | 760 | { "Alternating background of list views","Abwechselnder Hintergrund für Listen" }, |
761 | { "Backup enabled","Backup angeschaltet" }, | ||
762 | { "Use standard backup dir","Standard Backupverzeichnis" }, | ||
763 | { "Number of Backups:","Anzahl der Backups" }, | ||
764 | { "Make backup every ","Mache ein Backup alle " }, | ||
765 | { " days"," Tage" }, | ||
761 | { "","" }, | 766 | { "","" }, |
762 | { "","" }, | 767 | { "","" }, |
763 | { "","" }, | 768 | { "","" }, |
764 | { "","" }, \ No newline at end of file | 769 | { "","" }, \ No newline at end of file |
diff --git a/bin/kdepim/pwmanager/germantranslation.txt b/bin/kdepim/pwmanager/germantranslation.txt index a50dd04..38896fb 100644 --- a/bin/kdepim/pwmanager/germantranslation.txt +++ b/bin/kdepim/pwmanager/germantranslation.txt | |||
@@ -308,55 +308,60 @@ | |||
308 | { "Username:","Benutzername:" }, | 308 | { "Username:","Benutzername:" }, |
309 | { "Password:","Passwort:" }, | 309 | { "Password:","Passwort:" }, |
310 | { "&Reveal","&Offen zeigen" }, | 310 | { "&Reveal","&Offen zeigen" }, |
311 | { "&Generate","&Generiere" }, | 311 | { "&Generate","&Generiere" }, |
312 | { "&Password","&Passwort" }, | 312 | { "&Password","&Passwort" }, |
313 | { "&Comments","Kommentar" }, | 313 | { "&Comments","Kommentar" }, |
314 | { "Launcher:","Launcher:" }, | 314 | { "Launcher:","Launcher:" }, |
315 | { "$d = Description","$d = Beschreibung" }, | 315 | { "$d = Description","$d = Beschreibung" }, |
316 | { "$n = Username","$n = Benutzername" }, | 316 | { "$n = Username","$n = Benutzername" }, |
317 | { "$c = Comment","$c = Kommentar" }, | 317 | { "$c = Comment","$c = Kommentar" }, |
318 | { "$u = URL","$u = URL" }, | 318 | { "$u = URL","$u = URL" }, |
319 | { "$p = Password","$p = Passwort" }, | 319 | { "$p = Password","$p = Passwort" }, |
320 | { "&Launcher","&Launcher" }, | 320 | { "&Launcher","&Launcher" }, |
321 | { "Password generator","Passwort Generator" }, | 321 | { "Password generator","Passwort Generator" }, |
322 | { "Character set:","Buchstaben Set:" }, | 322 | { "Character set:","Buchstaben Set:" }, |
323 | { "Lowercase (abc)","Klein (abc)" }, | 323 | { "Lowercase (abc)","Klein (abc)" }, |
324 | { "Uppercase (ABC)","Groß (ABC)" }, | 324 | { "Uppercase (ABC)","Groß (ABC)" }, |
325 | { "Numbers (123)","Nummmern (123)" }, | 325 | { "Numbers (123)","Nummmern (123)" }, |
326 | { "Special characters:","Spezielle Buchstaben:" }, | 326 | { "Special characters:","Spezielle Buchstaben:" }, |
327 | { "Spaces (blank characters)","Leerzeichen" }, | 327 | { "Spaces (blank characters)","Leerzeichen" }, |
328 | { "User defined:","Benutzer definiert:" }, | 328 | { "User defined:","Benutzer definiert:" }, |
329 | { "Password Length:","Passwort Länge:" }, | 329 | { "Password Length:","Passwort Länge:" }, |
330 | { "Enable Filtering to get better passwords","Enable Filtering to get better passwords" }, | 330 | { "Enable Filtering to get better passwords","Enable Filtering to get better passwords" }, |
331 | { "no password","Kein Passwort" }, | 331 | { "no password","Kein Passwort" }, |
332 | { "Sorry, you haven't set a password.","Sorry, Sie haben kein Passwort angegeben." }, | 332 | { "Sorry, you haven't set a password.","Sorry, Sie haben kein Passwort angegeben." }, |
333 | { "not saved, yet","not saved, yet" }, | 333 | { "not saved, yet","not saved, yet" }, |
334 | { "Can't deep-lock, because the document\nhasn't been saved, yet. Please save\nto a file and try again.","Kann nicht tiefsperren, weil das\nDokument noch nicht gespeichert wurde.\nBitte speichern und noch einmal versuchen." }, | 334 | { "Can't deep-lock, because the document\nhasn't been saved, yet. Please save\nto a file and try again.","Kann nicht tiefsperren, weil das\nDokument noch nicht gespeichert wurde.\nBitte speichern und noch einmal versuchen." }, |
335 | { "Find","Finde" }, | 335 | { "Find","Finde" }, |
336 | { "&Exact match","Genaue Übereinstimmung" }, | 336 | { "&Exact match","Genaue Übereinstimmung" }, |
337 | { "&Case sensitive","Großschrift abhängig" }, | 337 | { "&Case sensitive","Großschrift abhängig" }, |
338 | { "Search in Column","Suche in Spalten" }, | 338 | { "Search in Column","Suche in Spalten" }, |
339 | { "&Description","Beschreibung" }, | 339 | { "&Description","Beschreibung" }, |
340 | { "C&omment","Kommentar" }, | 340 | { "C&omment","Kommentar" }, |
341 | { "&Username","Benutzername" }, | 341 | { "&Username","Benutzername" }, |
342 | { "U&RL","URL" }, | 342 | { "U&RL","URL" }, |
343 | { "delete?","Löschen?" }, | 343 | { "delete?","Löschen?" }, |
344 | { "Do you really want to delete\nthe selected entry","Wollen Sie wirklich\nden Eintrag löschen:" }, | 344 | { "Do you really want to delete\nthe selected entry","Wollen Sie wirklich\nden Eintrag löschen:" }, |
345 | { "Save?","Speichern?" }, | 345 | { "Save?","Speichern?" }, |
346 | { ""\nhas been modified.\nDo you want to save it?",""\nwurde geändert.\nMöchten Sie speichern?" }, | 346 | { ""\nhas been modified.\nDo you want to save it?",""\nwurde geändert.\nMöchten Sie speichern?" }, |
347 | { "The list\n "","Die Liste\n "" }, | 347 | { "The list\n "","Die Liste\n "" }, |
348 | { "nothing to do","Nichts zu tun" }, | 348 | { "nothing to do","Nichts zu tun" }, |
349 | { "Sorry, there's nothing to save.\nPlease first add some passwords.","Sorry, es gibt nichts zu speichern.\nBitte erst Passwörter hinzufügen." }, | 349 | { "Sorry, there's nothing to save.\nPlease first add some passwords.","Sorry, es gibt nichts zu speichern.\nBitte erst Passwörter hinzufügen." }, |
350 | { "Add new password","Passwort hinzufügen" }, | 350 | { "Add new password","Passwort hinzufügen" }, |
351 | { "Successfully saved data.","Datei gespeichert." }, | 351 | { "Successfully saved data.","Datei gespeichert." }, |
352 | { "Category:","Kategorie:" }, | 352 | { "Category:","Kategorie:" }, |
353 | { "LOCKED","GESPERRT" }, | 353 | { "LOCKED","GESPERRT" }, |
354 | { "Colors","Farben" }, | 354 | { "Colors","Farben" }, |
355 | { "Alternating background of list views","Abwechselnder Hintergrund für Listen" }, | 355 | { "Alternating background of list views","Abwechselnder Hintergrund für Listen" }, |
356 | { "Backup enabled","Backup angeschaltet" }, | ||
357 | { "Use standard backup dir","Standard Backupverzeichnis" }, | ||
358 | { "Number of Backups:","Anzahl der Backups" }, | ||
359 | { "Make backup every ","Mache ein Backup alle " }, | ||
360 | { " days"," Tage" }, | ||
356 | { "","" }, | 361 | { "","" }, |
357 | { "","" }, | 362 | { "","" }, |
358 | { "","" }, | 363 | { "","" }, |
359 | { "","" }, | 364 | { "","" }, |
360 | { "","" }, | 365 | { "","" }, |
361 | { "","" }, | 366 | { "","" }, |
362 | 367 | ||
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index 9ad0694..eed023c 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp | |||
@@ -1722,142 +1722,141 @@ void MainWindow::saveOnClose() | |||
1722 | } | 1722 | } |
1723 | #ifdef DESKTOP_VERSION | 1723 | #ifdef DESKTOP_VERSION |
1724 | 1724 | ||
1725 | QPoint myP; | 1725 | QPoint myP; |
1726 | myP = mapFromGlobal( iconToolBar->mapToGlobal( QPoint( 0,0) ) ); | 1726 | myP = mapFromGlobal( iconToolBar->mapToGlobal( QPoint( 0,0) ) ); |
1727 | if ( p->mToolBarHor ) | 1727 | if ( p->mToolBarHor ) |
1728 | p->mToolBarUp = myP.y() > height()/2; | 1728 | p->mToolBarUp = myP.y() > height()/2; |
1729 | else | 1729 | else |
1730 | p->mToolBarUp = myP.x() > width()/2; | 1730 | p->mToolBarUp = myP.x() > width()/2; |
1731 | myP = mapFromGlobal( viewToolBar->mapToGlobal( QPoint( 0,0) ) ); | 1731 | myP = mapFromGlobal( viewToolBar->mapToGlobal( QPoint( 0,0) ) ); |
1732 | if ( p->mToolBarHorV ) | 1732 | if ( p->mToolBarHorV ) |
1733 | p->mToolBarUpV = myP.y() > height()/2; | 1733 | p->mToolBarUpV = myP.y() > height()/2; |
1734 | else | 1734 | else |
1735 | p->mToolBarUpV = myP.x() > width()/2 ; | 1735 | p->mToolBarUpV = myP.x() > width()/2 ; |
1736 | myP = mapFromGlobal( navigatorToolBar->mapToGlobal( QPoint( 0,0) ) ); | 1736 | myP = mapFromGlobal( navigatorToolBar->mapToGlobal( QPoint( 0,0) ) ); |
1737 | if ( p->mToolBarHorN ) | 1737 | if ( p->mToolBarHorN ) |
1738 | p->mToolBarUpN = myP.y() > height()/2; | 1738 | p->mToolBarUpN = myP.y() > height()/2; |
1739 | else | 1739 | else |
1740 | p->mToolBarUpN = myP.x() > width()/2 ; | 1740 | p->mToolBarUpN = myP.x() > width()/2 ; |
1741 | if ( filterToolBar ) { | 1741 | if ( filterToolBar ) { |
1742 | myP = mapFromGlobal( filterToolBar->mapToGlobal( QPoint( 0,0) ) ); | 1742 | myP = mapFromGlobal( filterToolBar->mapToGlobal( QPoint( 0,0) ) ); |
1743 | if ( p->mToolBarHorF ) | 1743 | if ( p->mToolBarHorF ) |
1744 | p->mToolBarUpF = myP.y() > height()/2; | 1744 | p->mToolBarUpF = myP.y() > height()/2; |
1745 | else | 1745 | else |
1746 | p->mToolBarUpF = myP.x() > width()/2 ; | 1746 | p->mToolBarUpF = myP.x() > width()/2 ; |
1747 | } | 1747 | } |
1748 | #else | 1748 | #else |
1749 | if ( p->mToolBarHor ) | 1749 | if ( p->mToolBarHor ) |
1750 | p->mToolBarUp = iconToolBar->y() > height()/2; | 1750 | p->mToolBarUp = iconToolBar->y() > height()/2; |
1751 | else | 1751 | else |
1752 | p->mToolBarUp = iconToolBar->x() > width()/2; | 1752 | p->mToolBarUp = iconToolBar->x() > width()/2; |
1753 | if ( p->mToolBarHorV ) | 1753 | if ( p->mToolBarHorV ) |
1754 | p->mToolBarUpV = viewToolBar->y() > height()/2; | 1754 | p->mToolBarUpV = viewToolBar->y() > height()/2; |
1755 | else | 1755 | else |
1756 | p->mToolBarUpV = viewToolBar->x() > width()/2 ; | 1756 | p->mToolBarUpV = viewToolBar->x() > width()/2 ; |
1757 | 1757 | ||
1758 | if ( p->mToolBarHorN ) | 1758 | if ( p->mToolBarHorN ) |
1759 | p->mToolBarUpN = navigatorToolBar->y() > height()/2; | 1759 | p->mToolBarUpN = navigatorToolBar->y() > height()/2; |
1760 | else | 1760 | else |
1761 | p->mToolBarUpN = navigatorToolBar->x() > width()/2 ; | 1761 | p->mToolBarUpN = navigatorToolBar->x() > width()/2 ; |
1762 | if ( filterToolBar ) { | 1762 | if ( filterToolBar ) { |
1763 | if ( p->mToolBarHorF ) | 1763 | if ( p->mToolBarHorF ) |
1764 | p->mToolBarUpF = filterToolBar->y() > height()/2; | 1764 | p->mToolBarUpF = filterToolBar->y() > height()/2; |
1765 | else | 1765 | else |
1766 | p->mToolBarUpF = filterToolBar->x() > width()/2 ; | 1766 | p->mToolBarUpF = filterToolBar->x() > width()/2 ; |
1767 | } | 1767 | } |
1768 | #endif | 1768 | #endif |
1769 | 1769 | ||
1770 | |||
1771 | mView->writeSettings(); | ||
1772 | if ( mCalendarModifiedFlag || mView->checkFileChanged( defaultFileName())) | 1770 | if ( mCalendarModifiedFlag || mView->checkFileChanged( defaultFileName())) |
1773 | save(); | 1771 | save(); |
1772 | mView->writeSettings(); | ||
1774 | } | 1773 | } |
1775 | void MainWindow::slotModifiedChanged( bool changed ) | 1774 | void MainWindow::slotModifiedChanged( bool changed ) |
1776 | { | 1775 | { |
1777 | if ( mBlockAtStartup ) | 1776 | if ( mBlockAtStartup ) |
1778 | return; | 1777 | return; |
1779 | 1778 | ||
1780 | int msec; | 1779 | int msec; |
1781 | // we store the changes after 1 minute, | 1780 | // we store the changes after 1 minute, |
1782 | // and for safety reasons after 10 minutes again | 1781 | // and for safety reasons after 10 minutes again |
1783 | if ( !mSyncManager->blockSave() ) | 1782 | if ( !mSyncManager->blockSave() ) |
1784 | msec = (1000 * 60*KOPrefs::instance()->mAutoSaveInterval) +1000; | 1783 | msec = (1000 * 60*KOPrefs::instance()->mAutoSaveInterval) +1000; |
1785 | else | 1784 | else |
1786 | msec = 1000 * 600; | 1785 | msec = 1000 * 600; |
1787 | mSaveTimer.start( msec, true ); // 1 minute | 1786 | mSaveTimer.start( msec, true ); // 1 minute |
1788 | qDebug("KO: Saving File in %d secs!", msec/1000); | 1787 | qDebug("KO: Saving File in %d secs!", msec/1000); |
1789 | mCalendarModifiedFlag = true; | 1788 | mCalendarModifiedFlag = true; |
1790 | } | 1789 | } |
1791 | void MainWindow::saveStopTimer() | 1790 | void MainWindow::saveStopTimer() |
1792 | { | 1791 | { |
1793 | mSaveTimer.stop(); | 1792 | mSaveTimer.stop(); |
1794 | } | 1793 | } |
1795 | void MainWindow::save() | 1794 | void MainWindow::save() |
1796 | { | 1795 | { |
1797 | if ( !mCalendarModifiedFlag ) { | 1796 | if ( !mCalendarModifiedFlag ) { |
1798 | qDebug("KO: Calendar not modified. Nothing saved."); | 1797 | qDebug("KO: Calendar not modified. Nothing saved."); |
1799 | return; | 1798 | return; |
1800 | } | 1799 | } |
1801 | if ( mSyncManager->blockSave() ) | 1800 | if ( mSyncManager->blockSave() ) |
1802 | return; | 1801 | return; |
1803 | mSyncManager->setBlockSave(true); | 1802 | mSyncManager->setBlockSave(true); |
1804 | if ( mView->checkFileVersion( defaultFileName()) ) { | 1803 | if ( mView->checkFileVersion( defaultFileName()) ) { |
1805 | if ( KPimGlobalPrefs::instance()->mBackupEnabled ){ | 1804 | if ( KPimGlobalPrefs::instance()->mBackupEnabled ){ |
1806 | QDate reference ( 2000,1,1); | 1805 | QDate reference ( 2000,1,1); |
1807 | int daysTo = reference.daysTo ( QDate::currentDate() ); | 1806 | int daysTo = reference.daysTo ( QDate::currentDate() ); |
1808 | if ( daysTo - KPimGlobalPrefs::instance()->mBackupDayCount >= KOPrefs::instance()->mLastBackupDate ) { | 1807 | if ( daysTo - KPimGlobalPrefs::instance()->mBackupDayCount >= KOPrefs::instance()->mLastBackupDate ) { |
1809 | setCaption(i18n("KO/Pi:Creating backup ... please wait ..." )); | 1808 | setCaption(i18n("KO/Pi:Creating backup ... please wait ..." )); |
1810 | qDebug("KO: Last backup was %d days ago ", daysTo - KOPrefs::instance()->mLastBackupDate); | 1809 | qDebug("KO: Last backup was %d days ago ", daysTo - KOPrefs::instance()->mLastBackupDate); |
1811 | // we need the file path, the backup dir and the number of bups as param | 1810 | // we need the file path, the backup dir and the number of bups as param |
1812 | QString bupDir = KPimGlobalPrefs::instance()->mBackupDatadir; | 1811 | QString bupDir = KPimGlobalPrefs::instance()->mBackupDatadir; |
1813 | if ( KPimGlobalPrefs::instance()->mBackupUseDefaultDir) | 1812 | if ( KPimGlobalPrefs::instance()->mBackupUseDefaultDir) |
1814 | bupDir = KGlobalSettings::backupDataDir(); | 1813 | bupDir = KGlobalSettings::backupDataDir(); |
1815 | int retval = KApplication::createBackup( defaultFileName(), bupDir, KPimGlobalPrefs::instance()->mBackupNumbers );//55;//call backup | 1814 | int retval = KApplication::createBackup( defaultFileName(), bupDir, KPimGlobalPrefs::instance()->mBackupNumbers ); |
1816 | if ( retval == 0 ) { | 1815 | if ( retval == 0 ) { |
1817 | qDebug("KO: Backup cancelled. Will try again tomorrow "); | 1816 | qDebug("KO: Backup cancelled. Will try again tomorrow "); |
1818 | // retval == 0 : backup skipped for today, try again tomorrow | 1817 | // retval == 0 : backup skipped for today, try again tomorrow |
1819 | KOPrefs::instance()->mLastBackupDate = daysTo- KPimGlobalPrefs::instance()->mBackupDayCount+1; | 1818 | KOPrefs::instance()->mLastBackupDate = daysTo- KPimGlobalPrefs::instance()->mBackupDayCount+1; |
1820 | } else if ( retval == 1 ){ | 1819 | } else if ( retval == 1 ){ |
1821 | qDebug("KO: Backup created."); | 1820 | qDebug("KO: Backup created."); |
1822 | // backup ok | 1821 | // backup ok |
1823 | KOPrefs::instance()->mLastBackupDate = daysTo; | 1822 | KOPrefs::instance()->mLastBackupDate = daysTo; |
1824 | 1823 | ||
1825 | } else if ( retval == 2 ){ | 1824 | } else if ( retval == 2 ){ |
1826 | qDebug("KO: Backup globally cancelled."); | 1825 | qDebug("KO: Backup globally cancelled."); |
1827 | // backup globally cancelled | 1826 | // backup globally cancelled |
1828 | KPimGlobalPrefs::instance()->mBackupEnabled = false; | 1827 | KPimGlobalPrefs::instance()->mBackupEnabled = false; |
1829 | } | 1828 | } |
1830 | // retval == 3: do nothing, try again later | 1829 | // retval == 3: do nothing, try again later |
1831 | } | 1830 | } |
1832 | ; // KPimGlobalPrefs::instance()->mLastBackupDate | 1831 | ; // KPimGlobalPrefs::instance()->mLastBackupDate |
1833 | } | 1832 | } |
1834 | QTime neededSaveTime = QDateTime::currentDateTime().time(); | 1833 | QTime neededSaveTime = QDateTime::currentDateTime().time(); |
1835 | setCaption(i18n("KO/Pi:Saving Data to File ..." )); | 1834 | setCaption(i18n("KO/Pi:Saving Data to File ..." )); |
1836 | qDebug("KO: Start saving data to file!"); | 1835 | qDebug("KO: Start saving data to file!"); |
1837 | mView->saveCalendar( defaultFileName() ); | 1836 | mView->saveCalendar( defaultFileName() ); |
1838 | mCalendarModifiedFlag = false; | 1837 | mCalendarModifiedFlag = false; |
1839 | int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); | 1838 | int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); |
1840 | qDebug("KO: Needed %d ms for saving.",msNeeded ); | 1839 | qDebug("KO: Needed %d ms for saving.",msNeeded ); |
1841 | QString savemes; | 1840 | QString savemes; |
1842 | savemes.sprintf(i18n("KO/Pi:File Saved. Needed %d sec, %d ms"),(msNeeded/1000)%100,msNeeded%1000 ); | 1841 | savemes.sprintf(i18n("KO/Pi:File Saved. Needed %d sec, %d ms"),(msNeeded/1000)%100,msNeeded%1000 ); |
1843 | setCaption(savemes); | 1842 | setCaption(savemes); |
1844 | } else | 1843 | } else |
1845 | setCaption(i18n("Saving cancelled!")); | 1844 | setCaption(i18n("Saving cancelled!")); |
1846 | mSyncManager->setBlockSave( false ); | 1845 | mSyncManager->setBlockSave( false ); |
1847 | } | 1846 | } |
1848 | 1847 | ||
1849 | void MainWindow::keyReleaseEvent ( QKeyEvent * e) | 1848 | void MainWindow::keyReleaseEvent ( QKeyEvent * e) |
1850 | { | 1849 | { |
1851 | if ( !e->isAutoRepeat() ) { | 1850 | if ( !e->isAutoRepeat() ) { |
1852 | mFlagKeyPressed = false; | 1851 | mFlagKeyPressed = false; |
1853 | } | 1852 | } |
1854 | } | 1853 | } |
1855 | void MainWindow::keyPressEvent ( QKeyEvent * e ) | 1854 | void MainWindow::keyPressEvent ( QKeyEvent * e ) |
1856 | { | 1855 | { |
1857 | qApp->processEvents(); | 1856 | qApp->processEvents(); |
1858 | if ( e->isAutoRepeat() && !mFlagKeyPressed ) { | 1857 | if ( e->isAutoRepeat() && !mFlagKeyPressed ) { |
1859 | e->ignore(); | 1858 | e->ignore(); |
1860 | // qDebug(" ignore %d",e->isAutoRepeat() ); | 1859 | // qDebug(" ignore %d",e->isAutoRepeat() ); |
1861 | return; | 1860 | return; |
1862 | } | 1861 | } |
1863 | if (! e->isAutoRepeat() ) | 1862 | if (! e->isAutoRepeat() ) |
diff --git a/microkde/kapplication.cpp b/microkde/kapplication.cpp index 566bb41..2c9e3b6 100644 --- a/microkde/kapplication.cpp +++ b/microkde/kapplication.cpp | |||
@@ -125,123 +125,122 @@ void KApplication::showText(QString caption, QString text) | |||
125 | dia.exec(); | 125 | dia.exec(); |
126 | 126 | ||
127 | } | 127 | } |
128 | 128 | ||
129 | #include <qlabel.h> | 129 | #include <qlabel.h> |
130 | #include <qpushbutton.h> | 130 | #include <qpushbutton.h> |
131 | #include <qlayout.h> | 131 | #include <qlayout.h> |
132 | #include <qdir.h> | 132 | #include <qdir.h> |
133 | #include <qradiobutton.h> | 133 | #include <qradiobutton.h> |
134 | #include <qbuttongroup.h> | 134 | #include <qbuttongroup.h> |
135 | #include "kglobal.h" | 135 | #include "kglobal.h" |
136 | #include "klocale.h" | 136 | #include "klocale.h" |
137 | 137 | ||
138 | class KBackupPrefs : public QDialog | 138 | class KBackupPrefs : public QDialog |
139 | { | 139 | { |
140 | public: | 140 | public: |
141 | KBackupPrefs( QString message , QWidget *parent=0, const char *name=0 ) : | 141 | KBackupPrefs( QString message , QWidget *parent=0, const char *name=0 ) : |
142 | QDialog( parent, name, true ) | 142 | QDialog( parent, name, true ) |
143 | { | 143 | { |
144 | setCaption( i18n("Backup Failed!") ); | 144 | setCaption( i18n("Backup Failed!") ); |
145 | QVBoxLayout* lay = new QVBoxLayout( this ); | 145 | QVBoxLayout* lay = new QVBoxLayout( this ); |
146 | lay->setSpacing( 3 ); | 146 | lay->setSpacing( 3 ); |
147 | lay->setMargin( 3 ); | 147 | lay->setMargin( 3 ); |
148 | QLabel * lab = new QLabel( message, this ); | 148 | QLabel * lab = new QLabel( message, this ); |
149 | lay->addWidget( lab ); | 149 | lay->addWidget( lab ); |
150 | QButtonGroup* format = new QButtonGroup( 1, Horizontal, i18n("Choose action"), this ); | 150 | QButtonGroup* format = new QButtonGroup( 1, Horizontal, i18n("Choose action"), this ); |
151 | lay->addWidget( format ); | 151 | lay->addWidget( format ); |
152 | format->setExclusive ( true ) ; | 152 | format->setExclusive ( true ) ; |
153 | vcal = new QRadioButton(i18n("Try again now"), format ); | 153 | vcal = new QRadioButton(i18n("Try again now"), format ); |
154 | tcal = new QRadioButton(i18n("Try again later"), format ); | 154 | tcal = new QRadioButton(i18n("Try again later"), format ); |
155 | ical = new QRadioButton(i18n("Try again tomorrow"), format ); | 155 | ical = new QRadioButton(i18n("Try again tomorrow"), format ); |
156 | ocal = new QRadioButton(i18n("Disable backup"), format ); | 156 | ocal = new QRadioButton(i18n("Disable backup"), format ); |
157 | vcal->setChecked( true ); | 157 | vcal->setChecked( true ); |
158 | QPushButton * ok = new QPushButton( i18n("OK"), this ); | 158 | QPushButton * ok = new QPushButton( i18n("OK"), this ); |
159 | lay->addWidget(ok ); | 159 | lay->addWidget(ok ); |
160 | connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) ); | 160 | connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) ); |
161 | } | 161 | } |
162 | 162 | ||
163 | bool again() { return vcal->isChecked(); } | 163 | bool again() { return vcal->isChecked(); } |
164 | bool later() { return tcal->isChecked(); } | 164 | bool later() { return tcal->isChecked(); } |
165 | bool againTomorrow() { return ical->isChecked(); } | 165 | bool againTomorrow() { return ical->isChecked(); } |
166 | private: | 166 | private: |
167 | QRadioButton* vcal, *ical, *ocal, *tcal; | 167 | QRadioButton* vcal, *ical, *ocal, *tcal; |
168 | }; | 168 | }; |
169 | int KApplication::createBackup( QString fn, QString dp, int numBup ) | 169 | int KApplication::createBackup( QString fn, QString dp, int numBup ) |
170 | { | 170 | { |
171 | if ( numBup < 1) return 3; | 171 | if ( numBup < 1) return 3; |
172 | int ret = 3; | 172 | int ret = 3; |
173 | qDebug("KApplication::createBackup %s --- %s --- %d", fn.latin1(), dp.latin1(), numBup); | 173 | //qDebug("KApplication::createBackup %s --- %s --- %d", fn.latin1(), dp.latin1(), numBup); |
174 | QDir bupDir ( dp ); | 174 | QDir bupDir ( dp ); |
175 | bool tryAgain = true; | 175 | bool tryAgain = true; |
176 | while ( tryAgain ) { | 176 | while ( tryAgain ) { |
177 | if ( !bupDir.exists() ) { | 177 | if ( !bupDir.exists() ) { |
178 | KBackupPrefs noDir( i18n("<b>Backup directory does not exist: </b>") + dp.right(30)); | 178 | KBackupPrefs noDir( i18n("<b>Backup directory does not exist: </b>") + dp.right(30)); |
179 | if ( !noDir.exec() ) return 3; | 179 | if ( !noDir.exec() ) return 3; |
180 | if ( noDir.againTomorrow() ) { | 180 | if ( noDir.againTomorrow() ) { |
181 | return 0; | 181 | return 0; |
182 | } else if ( noDir.later() ) { | 182 | } else if ( noDir.later() ) { |
183 | return 3; | 183 | return 3; |
184 | } else if ( !noDir.again() ) { | 184 | } else if ( !noDir.again() ) { |
185 | return 2; | 185 | return 2; |
186 | } | 186 | } |
187 | } else { | 187 | } else { |
188 | tryAgain = false; | 188 | tryAgain = false; |
189 | } | 189 | } |
190 | } | 190 | } |
191 | // we have a valid dir! | 191 | // we have a valid dir! |
192 | QStringList allFileList = bupDir.entryList(QDir::Files); | 192 | QStringList allFileList = bupDir.entryList(QDir::Files); |
193 | QFileInfo fileInfo ( fn ); | 193 | QFileInfo fileInfo ( fn ); |
194 | QString fName = fileInfo.fileName (); | 194 | QString fName = fileInfo.fileName (); |
195 | QStringList fileList; | 195 | QStringList fileList; |
196 | 196 | ||
197 | int i; | 197 | int i; |
198 | for ( i = 0; i < allFileList.count(); ++i ) { | 198 | for ( i = 0; i < allFileList.count(); ++i ) { |
199 | QString fi = allFileList[i]; | 199 | QString fi = allFileList[i]; |
200 | if ( fi. find( fName ) > -1 ) | 200 | if ( fi. find( fName ) > -1 ) |
201 | fileList.append( fi ); | 201 | fileList.append( fi ); |
202 | } | 202 | } |
203 | qDebug("%d backup files exist ", fileList.count()); | 203 | qDebug("KApp: %d backup files exist ", fileList.count()); |
204 | int count = fileList.count(); | 204 | int count = fileList.count(); |
205 | fileList.sort(); | 205 | fileList.sort(); |
206 | int remCount = 0; | 206 | int remCount = 0; |
207 | while ( count >= numBup ) { | 207 | while ( count >= numBup ) { |
208 | QString fnr = dp + "/"+fileList[remCount]; | 208 | QString fnr = dp + "/"+fileList[remCount]; |
209 | QFile::remove( fnr ); | 209 | QFile::remove( fnr ); |
210 | --count; | 210 | --count; |
211 | ++remCount; | 211 | ++remCount; |
212 | } | 212 | } |
213 | QDateTime mRunStart = QDateTime::currentDateTime(); | 213 | QDateTime mRunStart = QDateTime::currentDateTime(); |
214 | QString file = "%1%2%3-%4%5%6-"; | 214 | QString file = "%1%2%3-%4%5%6-"; |
215 | file = file.arg( mRunStart.date().year(), 4).arg( mRunStart.date().month(),2 ).arg( mRunStart.date().day(), 2 ).arg( mRunStart.time().hour(),2 ).arg( mRunStart.time().minute(),2 ).arg( mRunStart.time().second(),2 ); | 215 | file = file.arg( mRunStart.date().year(), 4).arg( mRunStart.date().month(),2 ).arg( mRunStart.date().day(), 2 ).arg( mRunStart.time().hour(),2 ).arg( mRunStart.time().minute(),2 ).arg( mRunStart.time().second(),2 ); |
216 | file.replace ( QRegExp (" "), "0" ); | 216 | file.replace ( QRegExp (" "), "0" ); |
217 | file += fName ; | 217 | file += fName ; |
218 | file = dp + "/"+file; | 218 | file = dp + file; |
219 | QString command; | 219 | QString command; |
220 | int res = 0; | 220 | int res = 0; |
221 | #ifdef _WIN32_ | 221 | #ifdef _WIN32_ |
222 | command = "xcopy "+ fn+ " "+file; | 222 | command = "copy \""+ QDir::convertSeparators( fn)+ "\" \""+QDir::convertSeparators(file)+ "\" "; |
223 | command = QDir::convertSeparators( command ); | ||
224 | #else | 223 | #else |
225 | command = "cp "+ fn+ " "+file; | 224 | command = "cp "+ fn+ " "+file; |
226 | #endif | 225 | #endif |
227 | qDebug("command %s ",command.latin1() ); | 226 | //qDebug("command %s ",command.latin1() ); |
228 | tryAgain = true; | 227 | tryAgain = true; |
229 | while ( tryAgain ) { | 228 | while ( tryAgain ) { |
230 | res = system ( command.latin1() ); | 229 | res = system ( command.latin1() ); |
231 | qDebug("copy result %d ", res); | 230 | qDebug("KApp: Copy result %d ", res); |
232 | if ( res != 0 ) { | 231 | if ( res != 0 ) { |
233 | KBackupPrefs noDir( i18n("<b>The backup copy command failed!</b>")); | 232 | KBackupPrefs noDir( i18n("<b>The backup copy command failed!</b>")); |
234 | if ( !noDir.exec() ) return 3; | 233 | if ( !noDir.exec() ) return 3; |
235 | if ( noDir.againTomorrow() ) { | 234 | if ( noDir.againTomorrow() ) { |
236 | return 0; | 235 | return 0; |
237 | } else if ( noDir.later() ) { | 236 | } else if ( noDir.later() ) { |
238 | return 3; | 237 | return 3; |
239 | } else if ( !noDir.again() ) { | 238 | } else if ( !noDir.again() ) { |
240 | return 2; | 239 | return 2; |
241 | } | 240 | } |
242 | } else { | 241 | } else { |
243 | tryAgain = false; | 242 | tryAgain = false; |
244 | } | 243 | } |
245 | } | 244 | } |
246 | return 1; | 245 | return 1; |
247 | } | 246 | } |