summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2005-06-24 23:30:30 (UTC)
committer zautrix <zautrix>2005-06-24 23:30:30 (UTC)
commit184833db0d1bcb63e7d4bd5945ccdc0e6b92f7b8 (patch) (unidiff)
tree96074dff5dddd80afa2773f0bf573e0155f73293
parent3dbc82b2711811450b77b85a5fd85744a61d0a2c (diff)
downloadkdepimpi-184833db0d1bcb63e7d4bd5945ccdc0e6b92f7b8.zip
kdepimpi-184833db0d1bcb63e7d4bd5945ccdc0e6b92f7b8.tar.gz
kdepimpi-184833db0d1bcb63e7d4bd5945ccdc0e6b92f7b8.tar.bz2
sec fix
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--bin/kdepim/WhatsNew.txt3
-rw-r--r--bin/kdepim/pwmanager/germantranslation.txt6
-rw-r--r--pwmanager/pwmanager/kcmconfigs/pwmconfigwidget.cpp27
3 files changed, 22 insertions, 14 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt
index 2aac9ff..7478ffd 100644
--- a/bin/kdepim/WhatsNew.txt
+++ b/bin/kdepim/WhatsNew.txt
@@ -1,146 +1,149 @@
1Info about the changes in new versions of KDE-Pim/Pi 1Info about the changes in new versions of KDE-Pim/Pi
2 2
3********** VERSION 2.1.9 ************ 3********** VERSION 2.1.9 ************
4 4
5KO/Pi: 5KO/Pi:
6Fixed some problems of the new search options in the search dialog. 6Fixed some problems of the new search options in the search dialog.
7 7
8PwM/Pi:
9Added "sec" to the timeout config settings to make it clear the timeout values are seconds.
10
8********** VERSION 2.1.8 ************ 11********** VERSION 2.1.8 ************
9 12
10KO/Pi: 13KO/Pi:
11Added info about the completion state of a todo in the ListView/Searchdialog. 14Added info about the completion state of a todo in the ListView/Searchdialog.
12If in TodoView is selected "do not show compledted todos" then completed todos are not shown in the ListView as well. 15If in TodoView is selected "do not show compledted todos" then completed todos are not shown in the ListView as well.
13Fixed some updating problems when changing the filter. 16Fixed some updating problems when changing the filter.
14 17
15KA/Pi: 18KA/Pi:
16In the addressee selection dialog now the formatted name is shown, if not empty. 19In the addressee selection dialog now the formatted name is shown, if not empty.
17Added a column "category" to the addressee selection dialog to make it possible to sort addressees after category. 20Added a column "category" to the addressee selection dialog to make it possible to sort addressees after category.
18Now in the addressee selection dialog a selected contact is remove with a single click from the selected list. 21Now in the addressee selection dialog a selected contact is remove with a single click from the selected list.
19 22
20Fixed in the file selector on the Zaurus the problem that symbolic links to files/dirs were ignored. 23Fixed in the file selector on the Zaurus the problem that symbolic links to files/dirs were ignored.
21Fixed the sorting for size in the file selector on the Z. 24Fixed the sorting for size in the file selector on the Z.
22 25
23Changed the color selection dialog on the Zaurus to a more user friendly version. 26Changed the color selection dialog on the Zaurus to a more user friendly version.
24 27
25********** VERSION 2.1.7 ************ 28********** VERSION 2.1.7 ************
26 29
27KO/Pi: 30KO/Pi:
28Fixed several problems in the new Resource handling. 31Fixed several problems in the new Resource handling.
29Added more options to the search dialog. 32Added more options to the search dialog.
30Fixed a problem in the Month view. 33Fixed a problem in the Month view.
31Added more options to the dialog when setting a todo to stopped. 34Added more options to the dialog when setting a todo to stopped.
32 35
33Fixed two small problems in KO/Pi Alarm applet. 36Fixed two small problems in KO/Pi Alarm applet.
34 37
35********** VERSION 2.1.6 ************ 38********** VERSION 2.1.6 ************
36 39
37This release is for testing only. 40This release is for testing only.
38 41
39KO/Pi: 42KO/Pi:
40Added to the list view (the list view is used in search dialog as well) the possibility to print it. 43Added to the list view (the list view is used in search dialog as well) the possibility to print it.
41Added to the list view the possibility to hide entries, if you do not want to print all entries of the list view. 44Added to the list view the possibility to hide entries, if you do not want to print all entries of the list view.
42Added to the list view the possibility to add all subtodos of selected todos to an export/beam. 45Added to the list view the possibility to add all subtodos of selected todos to an export/beam.
43Added to the search dialog the possibility to make an additive search such that you can get a better list for export/printout. 46Added to the search dialog the possibility to make an additive search such that you can get a better list for export/printout.
44Added to the search dialog the possibility to hide the checkboxes such that there is more space for the list view on the Zaurus. 47Added to the search dialog the possibility to hide the checkboxes such that there is more space for the list view on the Zaurus.
45Fixed a problem in the AlarmTimer Applet: Now utf8 messages are displayed properly. 48Fixed a problem in the AlarmTimer Applet: Now utf8 messages are displayed properly.
46 49
47Added support for multiple calendar files in KO/Pi. Only local ical (*.ics) files are supported as calendars. 50Added support for multiple calendar files in KO/Pi. Only local ical (*.ics) files are supported as calendars.
48In the sync profile config it is still missing to specify a particular calendar to sync with this profile. That setting will be added later. 51In the sync profile config it is still missing to specify a particular calendar to sync with this profile. That setting will be added later.
49Now on every sync the set of calendars is synced which are enabled in the resource view. 52Now on every sync the set of calendars is synced which are enabled in the resource view.
50 53
51A calendar is enabled in the resource view if the "eye" column is checked. 54A calendar is enabled in the resource view if the "eye" column is checked.
52You can set a calendar to be the default for new items( "+" column ). 55You can set a calendar to be the default for new items( "+" column ).
53You can tell KO/Pi to ignore all alarm of a calendar ( "bell" column ) and you can set it readonly. 56You can tell KO/Pi to ignore all alarm of a calendar ( "bell" column ) and you can set it readonly.
54To find out how to add a new calendar and how to remove a calendar is left as an exercise to the reader ... 57To find out how to add a new calendar and how to remove a calendar is left as an exercise to the reader ...
55 58
56 59
57********** VERSION 2.1.5 ************ 60********** VERSION 2.1.5 ************
58 61
59This is the new stable version. 62This is the new stable version.
60Bugfix: 63Bugfix:
61Fixed a problem with agenda popup on the desktop in KO/Pi. 64Fixed a problem with agenda popup on the desktop in KO/Pi.
62Fixed a crash when reloading file, e.g. after a passive pi-sync synchronization. 65Fixed a crash when reloading file, e.g. after a passive pi-sync synchronization.
63Added config option to not display completed todos in agenda view. 66Added config option to not display completed todos in agenda view.
64Addressee view is now using the formatted name, if defined. 67Addressee view is now using the formatted name, if defined.
65That makes it possible to display "lastname, firstname" in that view now. 68That makes it possible to display "lastname, firstname" in that view now.
66To set the formatted name for all contacts, please use menu: 69To set the formatted name for all contacts, please use menu:
67Edit->Change->Set formatted name. 70Edit->Change->Set formatted name.
68Fixed the bug in KA/Pi that is was not possible to add images to a contact on Windows. 71Fixed the bug in KA/Pi that is was not possible to add images to a contact on Windows.
69 72
70********** VERSION 2.1.4 ************ 73********** VERSION 2.1.4 ************
71 74
72Fixed two more bugs in the KA/Pi CSV import dialog: 75Fixed two more bugs in the KA/Pi CSV import dialog:
73Made it possible to read multi-line fields and import it to the "Note" field. 76Made it possible to read multi-line fields and import it to the "Note" field.
74Fixed a problem in mapping custom fields, whatever a custem field is... 77Fixed a problem in mapping custom fields, whatever a custem field is...
75 78
76********** VERSION 2.1.3 ************ 79********** VERSION 2.1.3 ************
77 80
78Changed the menu structure of the alarm applet: 81Changed the menu structure of the alarm applet:
79Moved "Simulate" to " Play Beeps" submenu and re-added "Todo List". 82Moved "Simulate" to " Play Beeps" submenu and re-added "Todo List".
80 83
81Fixed several problems in the KA/Pi CSV import dialog: 84Fixed several problems in the KA/Pi CSV import dialog:
82Added "Category", made codec configureable and made it possible to map many fields to the "Note" field. 85Added "Category", made codec configureable and made it possible to map many fields to the "Note" field.
83 86
84 87
85********** VERSION 2.1.2 ************ 88********** VERSION 2.1.2 ************
86 89
87Fixed a problem closing the alarm dialog on Zaurus with "OK" button. 90Fixed a problem closing the alarm dialog on Zaurus with "OK" button.
88 91
89Fixed a problem when importing data from Outlook with mutiple categories set. 92Fixed a problem when importing data from Outlook with mutiple categories set.
90 93
91Changed display of days in datenavigator: 94Changed display of days in datenavigator:
92Birthdays are now blue, not dark green. 95Birthdays are now blue, not dark green.
93When todo view is shown, no birtdays are shown and days with due todos are shown blue. 96When todo view is shown, no birtdays are shown and days with due todos are shown blue.
94When journal view is shown, only holidays are shown and days with journals are blue. 97When journal view is shown, only holidays are shown and days with journals are blue.
95 98
96Added Backup options to global config: 99Added Backup options to global config:
97You can create now x-daily backups for KO/Pi, KA/Pi (for file resources only, file resource is the standard type) and PwM/Pi ( all files you will open ). 100You can create now x-daily backups for KO/Pi, KA/Pi (for file resources only, file resource is the standard type) and PwM/Pi ( all files you will open ).
98It is recommended to use another HDD/Memory card for the backup directory. If (very useful on the Zaurus) the specified backup directory does not exist you are asked if you want to try again to create a backup. That makes it possible to insert your memory card in the Zaurus and then trying again. 101It is recommended to use another HDD/Memory card for the backup directory. If (very useful on the Zaurus) the specified backup directory does not exist you are asked if you want to try again to create a backup. That makes it possible to insert your memory card in the Zaurus and then trying again.
99The backup is created when the application wants to save for the first time on a backup-day. You can specify the amount of backups and the day interval of backups. 102The backup is created when the application wants to save for the first time on a backup-day. You can specify the amount of backups and the day interval of backups.
100 103
101********** VERSION 2.1.1 ************ 104********** VERSION 2.1.1 ************
102 105
103Stable release 2.1.1! 106Stable release 2.1.1!
104 107
105KO/Pi: 108KO/Pi:
106Fixed one problem in the layout of the edit dialogs on the Zaurus with 640x480 display. 109Fixed one problem in the layout of the edit dialogs on the Zaurus with 640x480 display.
107 110
108********** VERSION 2.1.0 ************ 111********** VERSION 2.1.0 ************
109 112
110Stable release 2.1.0! 113Stable release 2.1.0!
111 114
112Summary of changes/fixes compared to version 2.0.6: 115Summary of changes/fixes compared to version 2.0.6:
113 116
114Many bugs of version 2.0.6 fixed. 117Many bugs of version 2.0.6 fixed.
115Most of them were small bugs, but some of them were important. 118Most of them were small bugs, but some of them were important.
116It is recommended to use version 2.1.0 and not version 2.0.6. 119It is recommended to use version 2.1.0 and not version 2.0.6.
117 120
118Important changes: 121Important changes:
119 122
120Added recurring todos to KO/Pi. 123Added recurring todos to KO/Pi.
121 124
122Added global application font settings (for all KDE-Pim/Pi apps) to the general settings. 125Added global application font settings (for all KDE-Pim/Pi apps) to the general settings.
123 126
124Made Passwordmanager PwM/Pi more userfriendly: Rearranged some toolbar icons, optimized setting of focus, fixed layout problems and more. 127Made Passwordmanager PwM/Pi more userfriendly: Rearranged some toolbar icons, optimized setting of focus, fixed layout problems and more.
125 128
126Datenavigator can now display many months. Very useful on the desktop. 129Datenavigator can now display many months. Very useful on the desktop.
127 130
128KO/Pi alarm applet changed: Made buttons in alarm dialog much bigger and other usebility enhancements. 131KO/Pi alarm applet changed: Made buttons in alarm dialog much bigger and other usebility enhancements.
129 132
130Made alarm sound working on Linux desktop. 133Made alarm sound working on Linux desktop.
131 134
132Made KO/Pi and KA/Pi running from a memory stick. Please read storage HowTo for details. 135Made KO/Pi and KA/Pi running from a memory stick. Please read storage HowTo for details.
133 136
134Added timetracking feature in KO/Pi todo view. Please read timetraker HowTo for details. 137Added timetracking feature in KO/Pi todo view. Please read timetraker HowTo for details.
135 138
136Many other usebility enhancements. 139Many other usebility enhancements.
137Special thanks to Ben for his suggestions! 140Special thanks to Ben for his suggestions!
138 141
139You can find the complete changelog 142You can find the complete changelog
140from version 1.7.7 to 2.1.0 143from version 1.7.7 to 2.1.0
141in the source package or on 144in the source package or on
142 145
143http://www.pi-sync.net/html/changelog.html 146http://www.pi-sync.net/html/changelog.html
144 147
145 148
146 149
diff --git a/bin/kdepim/pwmanager/germantranslation.txt b/bin/kdepim/pwmanager/germantranslation.txt
index 255f2eb..d38eecf 100644
--- a/bin/kdepim/pwmanager/germantranslation.txt
+++ b/bin/kdepim/pwmanager/germantranslation.txt
@@ -1,378 +1,378 @@
1{ " Local Time","Ortszeit" }, 1{ " Local Time","Ortszeit" },
2{ "Default","Standard" }, 2{ "Default","Standard" },
3{ "Configure...","Konfigurieren..." }, 3{ "Configure...","Konfigurieren..." },
4{ "Remove sync info","Entferne Sync Info" }, 4{ "Remove sync info","Entferne Sync Info" },
5{ "For all profiles","Für alle Profile" }, 5{ "For all profiles","Für alle Profile" },
6{ "Enable Pi-Sync","Aktiviere Pi-Sync" }, 6{ "Enable Pi-Sync","Aktiviere Pi-Sync" },
7{ "Multiple sync","Multi Sync" }, 7{ "Multiple sync","Multi Sync" },
8{ "&Save","&Speichern" }, 8{ "&Save","&Speichern" },
9{ "&Print...","Drucken..." }, 9{ "&Print...","Drucken..." },
10{ "&File","Datei" }, 10{ "&File","Datei" },
11{ "&Edit","Bearbeite" }, 11{ "&Edit","Bearbeite" },
12{ "&View","Ansicht" }, 12{ "&View","Ansicht" },
13{ "&Help","Hilfe" }, 13{ "&Help","Hilfe" },
14{ "Description","Beschreibungen" }, 14{ "Description","Beschreibungen" },
15{ "URL","URL" }, 15{ "URL","URL" },
16{ "Name:","Name:" }, 16{ "Name:","Name:" },
17{ "Documents","Dokumente" }, 17{ "Documents","Dokumente" },
18{ "Files","Dateien" }, 18{ "Files","Dateien" },
19{ "All Files","Alle Dateien" }, 19{ "All Files","Alle Dateien" },
20{ "Name","Name" }, 20{ "Name","Name" },
21{ "Size","Größe" }, 21{ "Size","Größe" },
22{ "Date","Datum" }, 22{ "Date","Datum" },
23{ "Mime Type","Mime Typ" }, 23{ "Mime Type","Mime Typ" },
24{ "Ok","Ok" }, 24{ "Ok","Ok" },
25{ "Cancel","Abbrechen" }, 25{ "Cancel","Abbrechen" },
26{ "1","1" }, 26{ "1","1" },
27{ "Synchronization Preferences","Einstellungen der Synchronisationsprofile" }, 27{ "Synchronization Preferences","Einstellungen der Synchronisationsprofile" },
28{ "Local device name:","Name dieses Gerätes:" }, 28{ "Local device name:","Name dieses Gerätes:" },
29{ "New profile","Neues Profil" }, 29{ "New profile","Neues Profil" },
30{ "Clone profile","Klone Profil" }, 30{ "Clone profile","Klone Profil" },
31{ "Delete profile","Lösche Profil" }, 31{ "Delete profile","Lösche Profil" },
32{ "Profile:","Profil:" }, 32{ "Profile:","Profil:" },
33{ "Multiple Sync options","Multi Sync Optionen" }, 33{ "Multiple Sync options","Multi Sync Optionen" },
34{ "Include in multiple ","Beziehe in mehrfach " }, 34{ "Include in multiple ","Beziehe in mehrfach " },
35{ "calendar ","Kalender " }, 35{ "calendar ","Kalender " },
36{ "addressbook ","Adressbuch " }, 36{ "addressbook ","Adressbuch " },
37{ "pwmanager","PWmanager" }, 37{ "pwmanager","PWmanager" },
38{ " sync"," Sync ein" }, 38{ " sync"," Sync ein" },
39{ "Sync algo options","Sync Ablauf Optionen" }, 39{ "Sync algo options","Sync Ablauf Optionen" },
40{ "Ask for preferences before sync","Frage nach Synchronisationseinstellungen vor dem Syncen" }, 40{ "Ask for preferences before sync","Frage nach Synchronisationseinstellungen vor dem Syncen" },
41{ "Sync preferences","Synchronisations Einstellungen" }, 41{ "Sync preferences","Synchronisations Einstellungen" },
42{ "Take local entry on conflict","Nimm lokalen Eintrag beim Konflikt" }, 42{ "Take local entry on conflict","Nimm lokalen Eintrag beim Konflikt" },
43{ "Take remote entry on conflict","Nimm fernen Eintrag beim Konflikt" }, 43{ "Take remote entry on conflict","Nimm fernen Eintrag beim Konflikt" },
44{ "Take newest entry on conflict","Nimm neuesten Eintrag beim Konflikt" }, 44{ "Take newest entry on conflict","Nimm neuesten Eintrag beim Konflikt" },
45{ "Ask for every entry on conflict","Frage bei Konflikten nach" }, 45{ "Ask for every entry on conflict","Frage bei Konflikten nach" },
46{ "Force: Take local entry always","Erzwinge: Nimm immer lokalen Eintrag" }, 46{ "Force: Take local entry always","Erzwinge: Nimm immer lokalen Eintrag" },
47{ "Force: Take remote entry always","Erzwinge: Nimm immer fernen Eintrag" }, 47{ "Force: Take remote entry always","Erzwinge: Nimm immer fernen Eintrag" },
48{ "Show summary after sync","Zeige Zusammenfassung nach dem Synchronisieren" }, 48{ "Show summary after sync","Zeige Zusammenfassung nach dem Synchronisieren" },
49{ "Apply filter when adding data to local:","Filter für das Hinzufügen von Daten zu Lokal:" }, 49{ "Apply filter when adding data to local:","Filter für das Hinzufügen von Daten zu Lokal:" },
50{ "Incoming calendar filter:","Eingehender Kalender Filter:" }, 50{ "Incoming calendar filter:","Eingehender Kalender Filter:" },
51{ "Incoming addressbook filter:","Eingehender Adressbuch Filter:" }, 51{ "Incoming addressbook filter:","Eingehender Adressbuch Filter:" },
52{ "Write back synced data","Schreibe gesyncte Daten zurück" }, 52{ "Write back synced data","Schreibe gesyncte Daten zurück" },
53{ "Write back options","Optionen zum Zurückschreiben" }, 53{ "Write back options","Optionen zum Zurückschreiben" },
54{ "Write back (on remote) existing entries only","Schreibe nur existierende (auf Entfernt) Einträge zurück" }, 54{ "Write back (on remote) existing entries only","Schreibe nur existierende (auf Entfernt) Einträge zurück" },
55{ "Apply filter when adding data to remote:","Filter für das Hinzufügen von Daten zu Entfernt:" }, 55{ "Apply filter when adding data to remote:","Filter für das Hinzufügen von Daten zu Entfernt:" },
56{ "Outgoing calendar filter:","Ausgehender Kalender Filter:" }, 56{ "Outgoing calendar filter:","Ausgehender Kalender Filter:" },
57{ "Outgoing addressbook filter:","Ausgehender Adressbuch Filter:" }, 57{ "Outgoing addressbook filter:","Ausgehender Adressbuch Filter:" },
58{ "Write back (calendar) entries for time period only","Schreibe nur Kalender Einträge für Zeitspanne zurück" }, 58{ "Write back (calendar) entries for time period only","Schreibe nur Kalender Einträge für Zeitspanne zurück" },
59{ "Time period","Zeitspanne" }, 59{ "Time period","Zeitspanne" },
60{ "From ","Von " }, 60{ "From ","Von " },
61{ " weeks in the past to "," Wochen in der Vergangenheit bis zu " }, 61{ " weeks in the past to "," Wochen in der Vergangenheit bis zu " },
62{ " weeks in the future "," Wochen in der Zukunft " }, 62{ " weeks in the future "," Wochen in der Zukunft " },
63{ "Profile kind","Profil Art" }, 63{ "Profile kind","Profil Art" },
64{ "Local file","Lokale Datei" }, 64{ "Local file","Lokale Datei" },
65{ "Pi-Sync ( direct Kx/Pi to Kx/Pi sync )","Pi-Sync ( direktes Kx/Pi zu Kx/Pi sync )" }, 65{ "Pi-Sync ( direct Kx/Pi to Kx/Pi sync )","Pi-Sync ( direktes Kx/Pi zu Kx/Pi sync )" },
66{ "Remote file (w down/upload command)","Entfernte Datei (via down/upload Kommando)" }, 66{ "Remote file (w down/upload command)","Entfernte Datei (via down/upload Kommando)" },
67{ "Mobile device (cell phone)","Mobiles Gerät (Handy)" }, 67{ "Mobile device (cell phone)","Mobiles Gerät (Handy)" },
68{ "Profile kind specific settings","Profil Art abhängige Einstellungen" }, 68{ "Profile kind specific settings","Profil Art abhängige Einstellungen" },
69{ "I/O device: ","I/O device: " }, 69{ "I/O device: ","I/O device: " },
70{ "Help...","Hilfe..." }, 70{ "Help...","Hilfe..." },
71{ "Connection: ","Connection: " }, 71{ "Connection: ","Connection: " },
72{ "Model(opt.): ","Model(opt.): " }, 72{ "Model(opt.): ","Model(opt.): " },
73{ "Local file Cal:","Lokale Datei Kal:" }, 73{ "Local file Cal:","Lokale Datei Kal:" },
74{ "Local file ABook:","Lokale Datei ABuch:" }, 74{ "Local file ABook:","Lokale Datei ABuch:" },
75{ "Local file PWMgr:","Lokale Datei PWMgr:" }, 75{ "Local file PWMgr:","Lokale Datei PWMgr:" },
76{ "Choose...","Wähle..." }, 76{ "Choose...","Wähle..." },
77{ "Addressbook file (*.vcf) is used by KA/Pi","Adressbuch Datei (*.vcf) wird von KA/Pi genutzt" }, 77{ "Addressbook file (*.vcf) is used by KA/Pi","Adressbuch Datei (*.vcf) wird von KA/Pi genutzt" },
78{ "Calendar:","Kalender:" }, 78{ "Calendar:","Kalender:" },
79{ "AddressBook:","AdressBuch:" }, 79{ "AddressBook:","AdressBuch:" },
80{ "PWManager:","PWManager:" }, 80{ "PWManager:","PWManager:" },
81{ "Pre sync (download) command:","Bevor Sync (download) Kommando:" }, 81{ "Pre sync (download) command:","Bevor Sync (download) Kommando:" },
82{ "Local temp file:","Lokale temp Datei:" }, 82{ "Local temp file:","Lokale temp Datei:" },
83{ "Post sync (upload) command:","Nach Sync (upload) Kommando:" }, 83{ "Post sync (upload) command:","Nach Sync (upload) Kommando:" },
84{ "Addressbook file is used by KA/Pi","Adressbuch Datei wird von KA/Pi genutzt" }, 84{ "Addressbook file is used by KA/Pi","Adressbuch Datei wird von KA/Pi genutzt" },
85{ "Fill in default values for:","Setze Beispiel Werte ein für:" }, 85{ "Fill in default values for:","Setze Beispiel Werte ein für:" },
86{ "ssh/scp","ssh/scp" }, 86{ "ssh/scp","ssh/scp" },
87{ "ftp","ftp" }, 87{ "ftp","ftp" },
88{ "Hint: Use $PWD$ for placeholder of password!","Hinweis: Benutze $PWD$ als Platzhalter für ein Passwort!" }, 88{ "Hint: Use $PWD$ for placeholder of password!","Hinweis: Benutze $PWD$ als Platzhalter für ein Passwort!" },
89{ "Password for remote access: (could be the same for each)","Passwort für entfernten Zugriff: (kann dasselbe sein für alle)" }, 89{ "Password for remote access: (could be the same for each)","Passwort für entfernten Zugriff: (kann dasselbe sein für alle)" },
90{ "Remote IP address: (could be the same for each)","Entfernte IP Adresse: (kann dasselbe sein für alle)" }, 90{ "Remote IP address: (could be the same for each)","Entfernte IP Adresse: (kann dasselbe sein für alle)" },
91{ "Remote port number: (should be different for each)","Entfernte Port Nummer: (Sollte für alle unterschiedlich sein)" }, 91{ "Remote port number: (should be different for each)","Entfernte Port Nummer: (Sollte für alle unterschiedlich sein)" },
92{ "command for downloading remote file to local device","Kommando zum Download der entfernten Datei zum lokalen Gerät" }, 92{ "command for downloading remote file to local device","Kommando zum Download der entfernten Datei zum lokalen Gerät" },
93{ "command for uploading local temp file to remote device","Kommando zum Upload der lokalen temp. Datei zum entfernten Gerät" }, 93{ "command for uploading local temp file to remote device","Kommando zum Upload der lokalen temp. Datei zum entfernten Gerät" },
94{ "No Filter","Kein Filter" }, 94{ "No Filter","Kein Filter" },
95{ "KO/Pi config error","KO/Pi Konfig. Fehler" }, 95{ "KO/Pi config error","KO/Pi Konfig. Fehler" },
96{ "Local device name undefined!\nPlease define device name!","Name dieses Gerätes undefiniert!\nBitte Namen angeben!" }, 96{ "Local device name undefined!\nPlease define device name!","Name dieses Gerätes undefiniert!\nBitte Namen angeben!" },
97{ "Multiple profiles with same name!\nPlease use unique profile names!","Mehrere Profile mit demselben Namen!\nBitte verschiedene Namen benutzen!" }, 97{ "Multiple profiles with same name!\nPlease use unique profile names!","Mehrere Profile mit demselben Namen!\nBitte verschiedene Namen benutzen!" },
98{ "Configure","Konfiguriere" }, 98{ "Configure","Konfiguriere" },
99{ "Apply","Anwenden" }, 99{ "Apply","Anwenden" },
100{ "None","Kein" }, 100{ "None","Kein" },
101{ "Global","Allgemein" }, 101{ "Global","Allgemein" },
102{ "Email","E-Mail" }, 102{ "Email","E-Mail" },
103{ "Phone","Telefon" }, 103{ "Phone","Telefon" },
104{ "SMS","SMS" }, 104{ "SMS","SMS" },
105{ "Fax","Fax" }, 105{ "Fax","Fax" },
106{ "Pager","Pager" }, 106{ "Pager","Pager" },
107{ "SIP","SIP" }, 107{ "SIP","SIP" },
108{ "Language:(needs restart)","Sprache:(Neustart)" }, 108{ "Language:(needs restart)","Sprache:(Neustart)" },
109{ "English","English" }, 109{ "English","English" },
110{ "German","Deutsch" }, 110{ "German","Deutsch" },
111{ "French","Französisch" }, 111{ "French","Französisch" },
112{ "Italian","Italienisch" }, 112{ "Italian","Italienisch" },
113{ "User defined (usertranslation.txt)","Benutzerdef. (usertranslation.txt)" }, 113{ "User defined (usertranslation.txt)","Benutzerdef. (usertranslation.txt)" },
114{ "Language","Sprache" }, 114{ "Language","Sprache" },
115{ "Time Format(nr):","Zeit Format(nr):" }, 115{ "Time Format(nr):","Zeit Format(nr):" },
116{ "24:00","24:00" }, 116{ "24:00","24:00" },
117{ "12:00am","12:00am" }, 117{ "12:00am","12:00am" },
118{ "Week starts on Sunday","Woche beginnt Sonntags" }, 118{ "Week starts on Sunday","Woche beginnt Sonntags" },
119{ "Time Format","Zeit Format" }, 119{ "Time Format","Zeit Format" },
120{ "Date Format:","Datums Format:" }, 120{ "Date Format:","Datums Format:" },
121{ "24.03.2004 (%d.%m.%Y|%A %d %B %Y)","24.03.2004 (%d.%m.%Y|%A %d %B %Y)" }, 121{ "24.03.2004 (%d.%m.%Y|%A %d %B %Y)","24.03.2004 (%d.%m.%Y|%A %d %B %Y)" },
122{ "03.24.2004 (%m.%d.%Y|%A %B %d %Y)","03.24.2004 (%m.%d.%Y|%A %B %d %Y)" }, 122{ "03.24.2004 (%m.%d.%Y|%A %B %d %Y)","03.24.2004 (%m.%d.%Y|%A %B %d %Y)" },
123{ "2004-03-24 (%Y-%m-%d|%A %Y %B %d)","2004-03-24 (%Y-%m-%d|%A %Y %B %d)" }, 123{ "2004-03-24 (%Y-%m-%d|%A %Y %B %d)","2004-03-24 (%Y-%m-%d|%A %Y %B %d)" },
124{ "User defined","Benutzerdefiniert" }, 124{ "User defined","Benutzerdefiniert" },
125{ "User long date:","Format langes Datum:" }, 125{ "User long date:","Format langes Datum:" },
126{ "User short date:","Format kurzes Datum:" }, 126{ "User short date:","Format kurzes Datum:" },
127{ "Monday 19 April 2004: %A %d %B %Y","Monday 19 April 2004: %A %d %B %Y" }, 127{ "Monday 19 April 2004: %A %d %B %Y","Monday 19 April 2004: %A %d %B %Y" },
128{ "Mon 19.04.04: %a %d.%m.%y","Mon 19.04.04: %a %d.%m.%y" }, 128{ "Mon 19.04.04: %a %d.%m.%y","Mon 19.04.04: %a %d.%m.%y" },
129{ "Mon, 19.Apr.04: %a, %d.%b.%y","Mon, 19.Apr.04: %a, %d.%b.%y" }, 129{ "Mon, 19.Apr.04: %a, %d.%b.%y","Mon, 19.Apr.04: %a, %d.%b.%y" },
130{ "Date Format","Datums Format" }, 130{ "Date Format","Datums Format" },
131{ "Timezone:","Zeitzone:" }, 131{ "Timezone:","Zeitzone:" },
132{ "Add 30 min to selected Timezone","Addiere 30 min zur Zeitzone" }, 132{ "Add 30 min to selected Timezone","Addiere 30 min zur Zeitzone" },
133{ "Timezone has daylight saving","Zeitzone hat Sommerzeit" }, 133{ "Timezone has daylight saving","Zeitzone hat Sommerzeit" },
134{ "Actual start and end is the\nsunday before this date.","Tatsächlicher Beginn/Ende ist der\nSonntag vor diesem Datum!" }, 134{ "Actual start and end is the\nsunday before this date.","Tatsächlicher Beginn/Ende ist der\nSonntag vor diesem Datum!" },
135{ "The year in the date is ignored.","Das Jahr vom Datum wird ignoriert." }, 135{ "The year in the date is ignored.","Das Jahr vom Datum wird ignoriert." },
136{ "Daylight start:","Sommerzeit Start:" }, 136{ "Daylight start:","Sommerzeit Start:" },
137{ "Mon","Mo" }, 137{ "Mon","Mo" },
138{ "Tue","Di" }, 138{ "Tue","Di" },
139{ "Wed","Mi" }, 139{ "Wed","Mi" },
140{ "Thu","Do" }, 140{ "Thu","Do" },
141{ "Fri","Fr" }, 141{ "Fri","Fr" },
142{ "Sat","Sa" }, 142{ "Sat","Sa" },
143{ "Sun","So" }, 143{ "Sun","So" },
144{ "January","Januar" }, 144{ "January","Januar" },
145{ "February","Februar" }, 145{ "February","Februar" },
146{ "March","März" }, 146{ "March","März" },
147{ "April","April" }, 147{ "April","April" },
148{ "May","Mai" }, 148{ "May","Mai" },
149{ "June","Juni" }, 149{ "June","Juni" },
150{ "July","July" }, 150{ "July","July" },
151{ "August","August" }, 151{ "August","August" },
152{ "September","September" }, 152{ "September","September" },
153{ "October","October" }, 153{ "October","October" },
154{ "November","November" }, 154{ "November","November" },
155{ "December","Dezember" }, 155{ "December","Dezember" },
156{ "tomorrow","Morgen" }, 156{ "tomorrow","Morgen" },
157{ "today","Heute" }, 157{ "today","Heute" },
158{ "yesterday","Gestern" }, 158{ "yesterday","Gestern" },
159{ "Monday","Montag" }, 159{ "Monday","Montag" },
160{ "Tuesday","Dienstag" }, 160{ "Tuesday","Dienstag" },
161{ "Wednesday","Mittwoch" }, 161{ "Wednesday","Mittwoch" },
162{ "Thursday","Donnerstag" }, 162{ "Thursday","Donnerstag" },
163{ "Friday","Freitag" }, 163{ "Friday","Freitag" },
164{ "Saturday","Samstag" }, 164{ "Saturday","Samstag" },
165{ "Sunday","Sonntag" }, 165{ "Sunday","Sonntag" },
166{ "Daylight end:","Sommerzeit Ende:" }, 166{ "Daylight end:","Sommerzeit Ende:" },
167{ "Time Zone","Zeit Zone" }, 167{ "Time Zone","Zeit Zone" },
168{ "Used Mail Client","Benutzter Mail Client" }, 168{ "Used Mail Client","Benutzter Mail Client" },
169{ "Channel:","Channel:" }, 169{ "Channel:","Channel:" },
170{ "Message:","Message:" }, 170{ "Message:","Message:" },
171{ "Parameters:","Parameter:" }, 171{ "Parameters:","Parameter:" },
172{ "HINT: Delimiter=; Name=%1,Email=%2","Hinweis: Begrenzer=; Name=%1,Email=%2" }, 172{ "HINT: Delimiter=; Name=%1,Email=%2","Hinweis: Begrenzer=; Name=%1,Email=%2" },
173{ "extra Message:","extra Message:" }, 173{ "extra Message:","extra Message:" },
174{ "extra Parameters:","extra Parameter:" }, 174{ "extra Parameters:","extra Parameter:" },
175{ "HINT: Emails=%1,Attachments=%2","Hinweis: Emails=%1,Attachments=%2" }, 175{ "HINT: Emails=%1,Attachments=%2","Hinweis: Emails=%1,Attachments=%2" },
176{ "External Apps.","Externe Appl." }, 176{ "External Apps.","Externe Appl." },
177{ "Your current storage dir is:\n%1\nYour mail is stored in:\n(storagedir)/apps/kopiemail/localmail","Aktuelles Speicherverzeichnis ist:\n%1\nIhre Mail wird gespeichert in:\n(speicherverz.)/apps/kopiemail/localmail" }, 177{ "Your current storage dir is:\n%1\nYour mail is stored in:\n(storagedir)/apps/kopiemail/localmail","Aktuelles Speicherverzeichnis ist:\n%1\nIhre Mail wird gespeichert in:\n(speicherverz.)/apps/kopiemail/localmail" },
178{ "<b>New data storage dir:</b>","<b>Neues Datenspeicherverzeichnis:</b>" }, 178{ "<b>New data storage dir:</b>","<b>Neues Datenspeicherverzeichnis:</b>" },
179{ "New dirs are created automatically","Neue Verzeichnisse werden aut. erstellt" }, 179{ "New dirs are created automatically","Neue Verzeichnisse werden aut. erstellt" },
180{ "Save settings","Speichere Einstellungen" }, 180{ "Save settings","Speichere Einstellungen" },
181{ "Save standard","Speichere Standard" }, 181{ "Save standard","Speichere Standard" },
182{ "<b>New settings are used\nafter a restart</b>","<b>Neue Einstellungen werden nach\neinem Neustart genutzt</b>" }, 182{ "<b>New settings are used\nafter a restart</b>","<b>Neue Einstellungen werden nach\neinem Neustart genutzt</b>" },
183{ "Settings are stored in\n%1","Einstellungen werden gespeichert in:\n%1" }, 183{ "Settings are stored in\n%1","Einstellungen werden gespeichert in:\n%1" },
184{ "Data storage path","Daten Speicherpfad" }, 184{ "Data storage path","Daten Speicherpfad" },
185{ "Used %1 Client","Benutzer %1 Client" }, 185{ "Used %1 Client","Benutzer %1 Client" },
186{ "No email client installed","Keine Email Client installiert" }, 186{ "No email client installed","Keine Email Client installiert" },
187{ "Userdefined email client","Benutzerdef. Email Client" }, 187{ "Userdefined email client","Benutzerdef. Email Client" },
188{ "OM/Pi email client","OM/Pi Email Client" }, 188{ "OM/Pi email client","OM/Pi Email Client" },
189{ "URL:","URL:" }, 189{ "URL:","URL:" },
190{ "No","Nein" }, 190{ "No","Nein" },
191{ "Yes","Ja" }, 191{ "Yes","Ja" },
192{ "Untitled","Unbenannt" }, 192{ "Untitled","Unbenannt" },
193{ "&New","&Neu" }, 193{ "&New","&Neu" },
194{ "&Open","&Öffne" }, 194{ "&Open","&Öffne" },
195{ "&Close","Schließen" }, 195{ "&Close","Schließen" },
196{ "Save &as...","Speichere &als..." }, 196{ "Save &as...","Speichere &als..." },
197{ "&Text-file...","&Text-Datei..." }, 197{ "&Text-file...","&Text-Datei..." },
198{ "&Gpasman / Kpasman ...","&Gpasman / Kpasman ..." }, 198{ "&Gpasman / Kpasman ...","&Gpasman / Kpasman ..." },
199{ "&CSV (Comma Separated Value) ...","&CSV (Komma getrennte Werte) ..." }, 199{ "&CSV (Comma Separated Value) ...","&CSV (Komma getrennte Werte) ..." },
200{ "E&xport","E&xport" }, 200{ "E&xport","E&xport" },
201{ "I&mport","I&mport" }, 201{ "I&mport","I&mport" },
202{ "&Quit","Beenden" }, 202{ "&Quit","Beenden" },
203{ "&Add password","&Passwort hinzufügen" }, 203{ "&Add password","&Passwort hinzufügen" },
204{ "&Delete","Lösche" }, 204{ "&Delete","Lösche" },
205{ "Change &Master Password","Ändere &Master Passwort" }, 205{ "Change &Master Password","Ändere &Master Passwort" },
206{ "&Manage","Verwalte" }, 206{ "&Manage","Verwalte" },
207{ "&Find","&Finde" }, 207{ "&Find","&Finde" },
208{ "&Lock all entries","Sperre alle Einträge" }, 208{ "&Lock all entries","Sperre alle Einträge" },
209{ "&Deep-lock all entries","Sperre total alle Einträge" }, 209{ "&Deep-lock all entries","Sperre total alle Einträge" },
210{ "&Unlock all entries","Entsperre alle Einträge" }, 210{ "&Unlock all entries","Entsperre alle Einträge" },
211{ "&Configure...","Konfiguriere..." }, 211{ "&Configure...","Konfiguriere..." },
212{ "&Options","Konfig" }, 212{ "&Options","Konfig" },
213{ "C&ategories...","K&ategorien..." }, 213{ "C&ategories...","K&ategorien..." },
214{ "&Sync","&Sync" }, 214{ "&Sync","&Sync" },
215{ "&License","&Lizenz" }, 215{ "&License","&Lizenz" },
216{ "&Faq","&Faq" }, 216{ "&Faq","&Faq" },
217{ "&About PwManager","Über PwManager" }, 217{ "&About PwManager","Über PwManager" },
218{ "&Sync HowTo","&Sync HowTo" }, 218{ "&Sync HowTo","&Sync HowTo" },
219{ "&What's New","Was ist neu?" }, 219{ "&What's New","Was ist neu?" },
220{ "New","Neu" }, 220{ "New","Neu" },
221{ "Open","Öffnen" }, 221{ "Open","Öffnen" },
222{ "Save","Speichern" }, 222{ "Save","Speichern" },
223{ "Save as","Speichern als" }, 223{ "Save as","Speichern als" },
224{ "Print...","Drucke..." }, 224{ "Print...","Drucke..." },
225{ "Add password","Passwort hinzufügen" }, 225{ "Add password","Passwort hinzufügen" },
226{ "Edit password","Passwort ändern" }, 226{ "Edit password","Passwort ändern" },
227{ "Delete password","Passwort löschen" }, 227{ "Delete password","Passwort löschen" },
228{ "Find entry","Finde Eintrag" }, 228{ "Find entry","Finde Eintrag" },
229{ "Lock all entries","Sperre alle Einträge" }, 229{ "Lock all entries","Sperre alle Einträge" },
230{ "Deep-Lock all entries","Sperre total alle Einträge" }, 230{ "Deep-Lock all entries","Sperre total alle Einträge" },
231{ "Unlock all entries","Entsperre alle Einträge" }, 231{ "Unlock all entries","Entsperre alle Einträge" },
232{ "Categories:","Kategorien:" }, 232{ "Categories:","Kategorien:" },
233{ "&Rename","&Umbenennen" }, 233{ "&Rename","&Umbenennen" },
234{ "Username","Benutzername" }, 234{ "Username","Benutzername" },
235{ "Password","Passwort" }, 235{ "Password","Passwort" },
236{ "Launcher","Launcher" }, 236{ "Launcher","Launcher" },
237{ "copy password to clipboard","Kopiere Passwort ins Clipboard" }, 237{ "copy password to clipboard","Kopiere Passwort ins Clipboard" },
238{ "copy username to clipboard","Kopiere Benutzername ins Clipboard" }, 238{ "copy username to clipboard","Kopiere Benutzername ins Clipboard" },
239{ "copy description to clipboard","Kopiere Beschreibung ins Clipboard" }, 239{ "copy description to clipboard","Kopiere Beschreibung ins Clipboard" },
240{ "copy url to clipboard","Kopiere URL ins Clipboard" }, 240{ "copy url to clipboard","Kopiere URL ins Clipboard" },
241{ "copy launcher to clipboard","Kopiere Launcher ins Clipboard" }, 241{ "copy launcher to clipboard","Kopiere Launcher ins Clipboard" },
242{ "copy comment to clipboard","Kopiere Kommentare ins Clipboard" }, 242{ "copy comment to clipboard","Kopiere Kommentare ins Clipboard" },
243{ "Execute "Launcher"",""Launcher" ausführen" }, 243{ "Execute "Launcher"",""Launcher" ausführen" },
244{ "Go to "URL"","Gehe zu "URL"" }, 244{ "Go to "URL"","Gehe zu "URL"" },
245{ "Ready.","Fertig." }, 245{ "Ready.","Fertig." },
246{ "password filename(*.pwm)","passwort dateiname(*.pwm)" }, 246{ "password filename(*.pwm)","passwort dateiname(*.pwm)" },
247{ "File error","Datei Fehler" }, 247{ "File error","Datei Fehler" },
248{ "Could not read file!","Kann Datei nicht lesen!" }, 248{ "Could not read file!","Kann Datei nicht lesen!" },
249{ "Master-password","Master-Passwort" }, 249{ "Master-password","Master-Passwort" },
250{ "Please enter the master-password:","Bitter Master-Passwort eingeben:" }, 250{ "Please enter the master-password:","Bitter Master-Passwort eingeben:" },
251{ "Wrong master-password!\nPlease try again.","Falsches Master-Passwort!\nBitte erneut versuchen." }, 251{ "Wrong master-password!\nPlease try again.","Falsches Master-Passwort!\nBitte erneut versuchen." },
252{ "password error","Passwort Fehler" }, 252{ "password error","Passwort Fehler" },
253{ "Successfully opened file.","Datei erfolgreich geöffnet." }, 253{ "Successfully opened file.","Datei erfolgreich geöffnet." },
254{ "DEEP-LOCKED","TOTAL-GESPERRT" }, 254{ "DEEP-LOCKED","TOTAL-GESPERRT" },
255{ "This file is DEEP-LOCKED!\nThat means all data has been encrypted\nand written out to the file. If you want\nto see the entries, please UNLOCK the file.\nWhile unlocking, you will be prompted for the\nmaster-password or the key-card.","Diese Datei ist TOTAL-GESPERRT!\nDas bedeutet, dass alle Daten verschlüsselt\nsind und in die Datei geschrieben wurden.\nWenn Sie die Einträge sehen möchten\nENTSPERREN Sie bitte die Datei.\nZum Entsperren werden Sie nach\ndem Master-Passwort gefragt." }, 255{ "This file is DEEP-LOCKED!\nThat means all data has been encrypted\nand written out to the file. If you want\nto see the entries, please UNLOCK the file.\nWhile unlocking, you will be prompted for the\nmaster-password or the key-card.","Diese Datei ist TOTAL-GESPERRT!\nDas bedeutet, dass alle Daten verschlüsselt\nsind und in die Datei geschrieben wurden.\nWenn Sie die Einträge sehen möchten\nENTSPERREN Sie bitte die Datei.\nZum Entsperren werden Sie nach\ndem Master-Passwort gefragt." },
256{ "<LOCKED>","<GESPERRT>" }, 256{ "<LOCKED>","<GESPERRT>" },
257{ "To unlock click the icon on the left.","Zum Entsperren auf linkes Icon klicken." }, 257{ "To unlock click the icon on the left.","Zum Entsperren auf linkes Icon klicken." },
258{ "PwManager","PwManager" }, 258{ "PwManager","PwManager" },
259{ "Window-style:","Window-Stil:" }, 259{ "Window-style:","Window-Stil:" },
260{ "Category on top","Kategorien oben" }, 260{ "Category on top","Kategorien oben" },
261{ "Category-list left/top","Kategorien links oben" }, 261{ "Category-list left/top","Kategorien links oben" },
262{ "Font for Password entries:","Schrift für Passwort Einträge:" }, 262{ "Font for Password entries:","Schrift für Passwort Einträge:" },
263{ "Font for Password summary:","Schrift für Passwort Übersicht:" }, 263{ "Font for Password summary:","Schrift für Passwort Übersicht:" },
264{ "Font:","Schriftart:" }, 264{ "Font:","Schriftart:" },
265{ "Summary","Übersicht" }, 265{ "Summary","Übersicht" },
266{ "Compression:","Kompression:" }, 266{ "Compression:","Kompression:" },
267{ "gzip","gzip" }, 267{ "gzip","gzip" },
268{ "Encryption:","Verschlüsselung:" }, 268{ "Encryption:","Verschlüsselung:" },
269{ "Blowfish (128 bit)","Blowfish (128 bit)" }, 269{ "Blowfish (128 bit)","Blowfish (128 bit)" },
270{ "AES-128, Rijndael (128 bit)","AES-128, Rijndael (128 bit)" }, 270{ "AES-128, Rijndael (128 bit)","AES-128, Rijndael (128 bit)" },
271{ "AES-192, Rijndael (192 bit)","AES-192, Rijndael (192 bit)" }, 271{ "AES-192, Rijndael (192 bit)","AES-192, Rijndael (192 bit)" },
272{ "AES-256, Rijndael (256 bit)","AES-256, Rijndael (256 bit)" }, 272{ "AES-256, Rijndael (256 bit)","AES-256, Rijndael (256 bit)" },
273{ "Triple-DES (168 bit)","Triple-DES (168 bit)" }, 273{ "Triple-DES (168 bit)","Triple-DES (168 bit)" },
274{ "Twofish (256 bit)","Twofish (256 bit)" }, 274{ "Twofish (256 bit)","Twofish (256 bit)" },
275{ "Twofish-128 (128 bit)","Twofish-128 (128 bit)" }, 275{ "Twofish-128 (128 bit)","Twofish-128 (128 bit)" },
276{ "Hashing:","Hashing:" }, 276{ "Hashing:","Hashing:" },
277{ "SHA-160, SHA1 (160 bit)","SHA-160, SHA1 (160 bit)" }, 277{ "SHA-160, SHA1 (160 bit)","SHA-160, SHA1 (160 bit)" },
278{ "SHA-256 (256 bit)","SHA-256 (256 bit)" }, 278{ "SHA-256 (256 bit)","SHA-256 (256 bit)" },
279{ "SHA-384 (384 bit)","SHA-384 (384 bit)" }, 279{ "SHA-384 (384 bit)","SHA-384 (384 bit)" },
280{ "SHA-512 (512 bit)","SHA-512 (512 bit)" }, 280{ "SHA-512 (512 bit)","SHA-512 (512 bit)" },
281{ "MD5 (128 bit)","MD5 (128 bit)" }, 281{ "MD5 (128 bit)","MD5 (128 bit)" },
282{ "RIPE-MD-160 (160 bit)","RIPE-MD-160 (160 bit)" }, 282{ "RIPE-MD-160 (160 bit)","RIPE-MD-160 (160 bit)" },
283{ "Tiger (192 bit)","Tiger (192 bit)" }, 283{ "Tiger (192 bit)","Tiger (192 bit)" },
284{ "Permissions:","Zugriffsrechte:" }, 284{ "Permissions:","Zugriffsrechte:" },
285{ "Make backup before saving","Mache Backup vor dem Speichern" }, 285{ "Make backup before saving","Mache Backup vor dem Speichern" },
286{ "Password timeout\n(timeout to hold password in\nmemory,so you don't have to\nre-enter it,if you\nalready have entered it)\n[set to 0 to disable]:","Passwort Timeout\n(Timeout um das Passwort\nim Speicher zu halten,\nso dass es nicht noch mal\neingegeben werden muß.)\n[Setze auf 0 zum deaktivieren]:" }, 286{ "<b>Password timeout</b> (timeout to hold password in memory,so you don't have to re-enter it,if you already have entered it) [set to 0 to disable]:","<b>Passwort Timeout</b> (Timeout um das Passwort im Speicher zu halten,so dass es nicht noch mal eingegeben werden muß.) [Setze auf 0 zum deaktivieren]:" },
287{ "Auto-lock timeout\n(auto lock document after this\namount of seconds)\n[set to 0 to disable]:","(Total-)Sperr-Timeout\n(Sperre Dokument total nach\ndieser Anzahl Sekunden)\n[Setze auf 0 zum deaktivieren]:" }, 287{ "<b>Auto-lock timeout</b> (auto lock document after this\namount of seconds) [set to 0 to disable]:","<b>(Total-)Sperr-Timeout</b> (Sperre Dokument total nach dieser Anzahl Sekunden) [Setze auf 0 zum deaktivieren]:" },
288{ "deep-lock on autolock","Sperre total beim Sperr-Timeout" }, 288{ "deep-lock on autolock","Sperre total beim Sperr-Timeout" },
289{ "open deeplocked","Öffne total gesperrt" }, 289{ "open deeplocked","Öffne total gesperrt" },
290{ "Favourite browser:","Bevorzugter Browser:" }, 290{ "Favourite browser:","Bevorzugter Browser:" },
291{ "Favourite x-terminal:","Bevorzugtes x-terminal:" }, 291{ "Favourite x-terminal:","Bevorzugtes x-terminal:" },
292{ "Open document with passwords unlocked","Öffne Dokument mit Passwort ungesperrt" }, 292{ "Open document with passwords unlocked","Öffne Dokument mit Passwort ungesperrt" },
293{ "Look && feel","Aussehen" }, 293{ "Look && feel","Aussehen" },
294{ "File","Datei" }, 294{ "File","Datei" },
295{ "Timeout","Timeout" }, 295{ "Timeout","Timeout" },
296{ "Autostart","Autostart" }, 296{ "Autostart","Autostart" },
297{ "External apps","Externe Applik." }, 297{ "External apps","Externe Applik." },
298{ "Miscellaneous","Verschiedenes" }, 298{ "Miscellaneous","Verschiedenes" },
299{ "+01:00 Europe/Oslo(CET)","+01:00 Europe/Oslo(CET)" }, 299{ "+01:00 Europe/Oslo(CET)","+01:00 Europe/Oslo(CET)" },
300{ "edit category descriptions","Ändere Label für Kategorie" }, 300{ "edit category descriptions","Ändere Label für Kategorie" },
301{ "Close","Schließen" }, 301{ "Close","Schließen" },
302{ "Category:","Category:" }, 302{ "Category:","Category:" },
303{ "Text1 (Description):","Text1 (Beschreibung):" }, 303{ "Text1 (Description):","Text1 (Beschreibung):" },
304{ "Text2 (Username):","Text2 (Benutzername):" }, 304{ "Text2 (Username):","Text2 (Benutzername):" },
305{ "Text3 (Password):","Text3 (Passwort):" }, 305{ "Text3 (Password):","Text3 (Passwort):" },
306{ "edit/add a password entry","Ändere/hinzufüge Passwort Eintrag" }, 306{ "edit/add a password entry","Ändere/hinzufüge Passwort Eintrag" },
307{ "Description:","Beschreibung:" }, 307{ "Description:","Beschreibung:" },
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" }, 356{ "Backup enabled","Backup angeschaltet" },
357{ "Use standard backup dir","Standard Backupverzeichnis" }, 357{ "Use standard backup dir","Standard Backupverzeichnis" },
358{ "Number of Backups:","Anzahl der Backups" }, 358{ "Number of Backups:","Anzahl der Backups" },
359{ "Make backup every ","Mache ein Backup alle " }, 359{ "Make backup every ","Mache ein Backup alle " },
360{ " days"," Tage" }, 360{ " days"," Tage" },
361{ "Creating backup ... please wait ...","Erzeuge Backup ... bitte warten ..." }, 361{ "Creating backup ... please wait ...","Erzeuge Backup ... bitte warten ..." },
362{ "Backup Failed!","Backup Problem!" }, 362{ "Backup Failed!","Backup Problem!" },
363{ "Try again now","Versuche jetzt nochmal" }, 363{ "Try again now","Versuche jetzt nochmal" },
364{ "Try again later","Versuche später nochmal" }, 364{ "Try again later","Versuche später nochmal" },
365{ "Try again tomorrow","Versuche morgen nochmal" }, 365{ "Try again tomorrow","Versuche morgen nochmal" },
366{ "Disable backup","Schalte Backup ab" }, 366{ "Disable backup","Schalte Backup ab" },
367{ "<b>Backup directory does not exist: </b>","<b>Backup Verzeichnis existiert nicht: </b>" }, 367{ "<b>Backup directory does not exist: </b>","<b>Backup Verzeichnis existiert nicht: </b>" },
368{ "<b>The backup copy command failed!</b>","<b>Das Backup Kopierkommando is fehlgeschlagen!</b>" }, 368{ "<b>The backup copy command failed!</b>","<b>Das Backup Kopierkommando is fehlgeschlagen!</b>" },
369{ "Choose action","Wähle Aktion" }, 369{ "Choose action","Wähle Aktion" },
370{ "&Configure PwM/Pi...","Konfiguriere PwM/Pi..." }, 370{ "&Configure PwM/Pi...","Konfiguriere PwM/Pi..." },
371{ "Global Settings...","Globale Einstellungen..." }, 371{ "Global Settings...","Globale Einstellungen..." },
372{ "","" }, 372{ " sec"," Sek" },
373{ "","" }, 373{ "","" },
374{ "","" }, 374{ "","" },
375{ "","" }, 375{ "","" },
376{ "","" }, 376{ "","" },
377{ "","" }, 377{ "","" },
378 378
diff --git a/pwmanager/pwmanager/kcmconfigs/pwmconfigwidget.cpp b/pwmanager/pwmanager/kcmconfigs/pwmconfigwidget.cpp
index c1ca536..2c5189c 100644
--- a/pwmanager/pwmanager/kcmconfigs/pwmconfigwidget.cpp
+++ b/pwmanager/pwmanager/kcmconfigs/pwmconfigwidget.cpp
@@ -1,360 +1,365 @@
1/* 1/*
2 This file is part of KAddressBook. 2 This file is part of KAddressBook.
3 Copyright (c) 2003 Tobias Koenig <tokoe@kde.org> 3 Copyright (c) 2003 Tobias Koenig <tokoe@kde.org>
4 4
5 This program is free software; you can redistribute it and/or modify 5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by 6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or 7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version. 8 (at your option) any later version.
9 9
10 This program is distributed in the hope that it will be useful, 10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details. 13 GNU General Public License for more details.
14 14
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 18
19 As a special exception, permission is given to link this program 19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable, 20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution. 21 without including the source code for Qt in the source distribution.
22*/ 22*/
23 23
24#include <qcheckbox.h> 24#include <qcheckbox.h>
25#include <qframe.h> 25#include <qframe.h>
26#include <qgroupbox.h> 26#include <qgroupbox.h>
27#include <qlayout.h> 27#include <qlayout.h>
28#include <qpushbutton.h> 28#include <qpushbutton.h>
29#include <qtabwidget.h> 29#include <qtabwidget.h>
30#include <qcombobox.h> 30#include <qcombobox.h>
31#include <qlineedit.h> 31#include <qlineedit.h>
32#include <qspinbox.h> 32#include <qspinbox.h>
33#include <qlabel.h> 33#include <qlabel.h>
34#include <qfile.h> 34#include <qfile.h>
35#include <qvbox.h> 35#include <qvbox.h>
36 36
37#include <kconfig.h> 37#include <kconfig.h>
38#include <kdebug.h> 38#include <kdebug.h>
39#include <kdialog.h> 39#include <kdialog.h>
40#include <klistview.h> 40#include <klistview.h>
41#include <klocale.h> 41#include <klocale.h>
42#include <kglobal.h> 42#include <kglobal.h>
43#include <kmessagebox.h> 43#include <kmessagebox.h>
44#include <kstandarddirs.h> 44#include <kstandarddirs.h>
45#include <kio/kfile/kurlrequester.h> 45#include <kio/kfile/kurlrequester.h>
46 46
47#include "pwmprefs.h" 47#include "pwmprefs.h"
48 48
49#include "pwmconfigwidget.h" 49#include "pwmconfigwidget.h"
50#include "pwmexception.h" 50#include "pwmexception.h"
51 51
52PWMConfigWidget::PWMConfigWidget(PWMPrefs *prefs, QWidget *parent, const char *name ) 52PWMConfigWidget::PWMConfigWidget(PWMPrefs *prefs, QWidget *parent, const char *name )
53 : KPrefsWidget(prefs, parent, name ) 53 : KPrefsWidget(prefs, parent, name )
54{ 54{
55 QVBoxLayout *topLayout = new QVBoxLayout( this, 0, 55 QVBoxLayout *topLayout = new QVBoxLayout( this, 0,
56 KDialog::spacingHint() ); 56 KDialog::spacingHint() );
57 57
58 QTabWidget *tabWidget = new QTabWidget( this ); 58 QTabWidget *tabWidget = new QTabWidget( this );
59 topLayout->addWidget( tabWidget ); 59 topLayout->addWidget( tabWidget );
60 60
61 // windowsStyle page 61 // windowsStyle page
62 ////////////////////////////////////////////////////// 62 //////////////////////////////////////////////////////
63 QWidget *windowStylePage = new QWidget( this ); 63 QWidget *windowStylePage = new QWidget( this );
64 QGridLayout *windowStyleLayout = new QGridLayout( windowStylePage, 3, 3); 64 QGridLayout *windowStyleLayout = new QGridLayout( windowStylePage, 3, 3);
65 65
66 int i = 0; 66 int i = 0;
67 KPrefsWidRadios * windowStyle = addWidRadios(i18n("Window-style:") ,&(prefs->mMainViewStyle), windowStylePage); 67 KPrefsWidRadios * windowStyle = addWidRadios(i18n("Window-style:") ,&(prefs->mMainViewStyle), windowStylePage);
68 windowStyle->addRadio(i18n("Category on top")); 68 windowStyle->addRadio(i18n("Category on top"));
69 windowStyle->addRadio(i18n("Category-list left/top")); 69 windowStyle->addRadio(i18n("Category-list left/top"));
70 windowStyleLayout->addMultiCellWidget( (QWidget*)windowStyle->groupBox(),i,i,0,2); 70 windowStyleLayout->addMultiCellWidget( (QWidget*)windowStyle->groupBox(),i,i,0,2);
71 ++i; 71 ++i;
72 72
73 QLabel* lab = new QLabel(i18n("Font for Password entries:"), windowStylePage); 73 QLabel* lab = new QLabel(i18n("Font for Password entries:"), windowStylePage);
74 windowStyleLayout->addMultiCellWidget( lab,i,i,0,2); 74 windowStyleLayout->addMultiCellWidget( lab,i,i,0,2);
75 ++i; 75 ++i;
76 KPrefsWidFont *selEntrFont = 76 KPrefsWidFont *selEntrFont =
77 addWidFont(i18n("Password"),i18n("Font:"), 77 addWidFont(i18n("Password"),i18n("Font:"),
78 &(prefs->mEntryFont),windowStylePage); 78 &(prefs->mEntryFont),windowStylePage);
79 windowStyleLayout->addWidget(selEntrFont->label(),i,0); 79 windowStyleLayout->addWidget(selEntrFont->label(),i,0);
80 windowStyleLayout->addWidget(selEntrFont->preview(),i,1); 80 windowStyleLayout->addWidget(selEntrFont->preview(),i,1);
81 windowStyleLayout->addWidget(selEntrFont->button(),i,2); 81 windowStyleLayout->addWidget(selEntrFont->button(),i,2);
82 ++i; 82 ++i;
83 83
84 lab = new QLabel(i18n("Font for Password summary:"), windowStylePage); 84 lab = new QLabel(i18n("Font for Password summary:"), windowStylePage);
85 windowStyleLayout->addMultiCellWidget( lab,i,i,0,2); 85 windowStyleLayout->addMultiCellWidget( lab,i,i,0,2);
86 ++i; 86 ++i;
87 selEntrFont = 87 selEntrFont =
88 addWidFont(i18n("Summary"),i18n("Font:"), 88 addWidFont(i18n("Summary"),i18n("Font:"),
89 &(prefs->mViewFont),windowStylePage); 89 &(prefs->mViewFont),windowStylePage);
90 windowStyleLayout->addWidget(selEntrFont->label(),i,0); 90 windowStyleLayout->addWidget(selEntrFont->label(),i,0);
91 windowStyleLayout->addWidget(selEntrFont->preview(),i,1); 91 windowStyleLayout->addWidget(selEntrFont->preview(),i,1);
92 windowStyleLayout->addWidget(selEntrFont->button(),i,2); 92 windowStyleLayout->addWidget(selEntrFont->button(),i,2);
93 ++i; 93 ++i;
94 94
95 lab = new QLabel(i18n(""), windowStylePage); 95 lab = new QLabel(i18n(""), windowStylePage);
96 windowStyleLayout->addMultiCellWidget( lab,i,i,0,2); 96 windowStyleLayout->addMultiCellWidget( lab,i,i,0,2);
97 97
98 // File page 98 // File page
99 ////////////////////////////////////////////////////// 99 //////////////////////////////////////////////////////
100 QWidget *filePage = new QWidget( this ); 100 QWidget *filePage = new QWidget( this );
101 QGridLayout *fileLayout = new QGridLayout( filePage, 3, 2); 101 QGridLayout *fileLayout = new QGridLayout( filePage, 3, 2);
102 102
103 i = 0; 103 i = 0;
104 QLabel* kcfg_compression_label = new QLabel(i18n("Compression:"), filePage); 104 QLabel* kcfg_compression_label = new QLabel(i18n("Compression:"), filePage);
105 fileLayout->addWidget(kcfg_compression_label,i,0); 105 fileLayout->addWidget(kcfg_compression_label,i,0);
106 kcfg_compression = new QComboBox(filePage, "kcfg_compression"); 106 kcfg_compression = new QComboBox(filePage, "kcfg_compression");
107 kcfg_compression->insertItem(i18n("None")); 107 kcfg_compression->insertItem(i18n("None"));
108 kcfg_compression->insertItem(i18n("gzip")); 108 kcfg_compression->insertItem(i18n("gzip"));
109 //US not yet supported: kcfg_compression->insertItem(i18n("bzip2")); 109 //US not yet supported: kcfg_compression->insertItem(i18n("bzip2"));
110 fileLayout->addWidget( kcfg_compression,i,1); 110 fileLayout->addWidget( kcfg_compression,i,1);
111 ++i; 111 ++i;
112 112
113 QLabel* kcfg_crypt_label = new QLabel(i18n("Encryption:"), filePage); 113 QLabel* kcfg_crypt_label = new QLabel(i18n("Encryption:"), filePage);
114 fileLayout->addWidget(kcfg_crypt_label,i,0); 114 fileLayout->addWidget(kcfg_crypt_label,i,0);
115 kcfg_cryptAlgo = new QComboBox(filePage, "kcfg_cryptAlgo"); 115 kcfg_cryptAlgo = new QComboBox(filePage, "kcfg_cryptAlgo");
116 kcfg_cryptAlgo->insertItem(i18n("Blowfish (128 bit)")); 116 kcfg_cryptAlgo->insertItem(i18n("Blowfish (128 bit)"));
117#ifdef CONFIG_PWMANAGER_GCRY 117#ifdef CONFIG_PWMANAGER_GCRY
118 kcfg_cryptAlgo->insertItem(i18n("AES-128, Rijndael (128 bit)")); 118 kcfg_cryptAlgo->insertItem(i18n("AES-128, Rijndael (128 bit)"));
119 kcfg_cryptAlgo->insertItem(i18n("AES-192, Rijndael (192 bit)")); 119 kcfg_cryptAlgo->insertItem(i18n("AES-192, Rijndael (192 bit)"));
120 kcfg_cryptAlgo->insertItem(i18n("AES-256, Rijndael (256 bit)")); 120 kcfg_cryptAlgo->insertItem(i18n("AES-256, Rijndael (256 bit)"));
121 kcfg_cryptAlgo->insertItem(i18n("Triple-DES (168 bit)")); 121 kcfg_cryptAlgo->insertItem(i18n("Triple-DES (168 bit)"));
122 kcfg_cryptAlgo->insertItem(i18n("Twofish (256 bit)")); 122 kcfg_cryptAlgo->insertItem(i18n("Twofish (256 bit)"));
123 kcfg_cryptAlgo->insertItem(i18n("Twofish-128 (128 bit)")); 123 kcfg_cryptAlgo->insertItem(i18n("Twofish-128 (128 bit)"));
124#endif // CONFIG_PWMANAGER_GCRY 124#endif // CONFIG_PWMANAGER_GCRY
125 fileLayout->addWidget( kcfg_cryptAlgo,i,1); 125 fileLayout->addWidget( kcfg_cryptAlgo,i,1);
126 ++i; 126 ++i;
127 127
128 QLabel* kcfg_hash_label = new QLabel(i18n("Hashing:"), filePage); 128 QLabel* kcfg_hash_label = new QLabel(i18n("Hashing:"), filePage);
129 fileLayout->addWidget(kcfg_hash_label,i,0); 129 fileLayout->addWidget(kcfg_hash_label,i,0);
130 kcfg_hashAlgo = new QComboBox(filePage, "kcfg_hashAlgo"); 130 kcfg_hashAlgo = new QComboBox(filePage, "kcfg_hashAlgo");
131 kcfg_hashAlgo->insertItem(i18n("SHA-160, SHA1 (160 bit)")); 131 kcfg_hashAlgo->insertItem(i18n("SHA-160, SHA1 (160 bit)"));
132#ifdef CONFIG_PWMANAGER_GCRY 132#ifdef CONFIG_PWMANAGER_GCRY
133 kcfg_hashAlgo->insertItem(i18n("SHA-256 (256 bit)")); 133 kcfg_hashAlgo->insertItem(i18n("SHA-256 (256 bit)"));
134 kcfg_hashAlgo->insertItem(i18n("SHA-384 (384 bit)")); 134 kcfg_hashAlgo->insertItem(i18n("SHA-384 (384 bit)"));
135 kcfg_hashAlgo->insertItem(i18n("SHA-512 (512 bit)")); 135 kcfg_hashAlgo->insertItem(i18n("SHA-512 (512 bit)"));
136 kcfg_hashAlgo->insertItem(i18n("MD5 (128 bit)")); 136 kcfg_hashAlgo->insertItem(i18n("MD5 (128 bit)"));
137 kcfg_hashAlgo->insertItem(i18n("RIPE-MD-160 (160 bit)")); 137 kcfg_hashAlgo->insertItem(i18n("RIPE-MD-160 (160 bit)"));
138 kcfg_hashAlgo->insertItem(i18n("Tiger (192 bit)")); 138 kcfg_hashAlgo->insertItem(i18n("Tiger (192 bit)"));
139#endif // CONFIG_PWMANAGER_GCRY 139#endif // CONFIG_PWMANAGER_GCRY
140 fileLayout->addWidget( kcfg_hashAlgo,i,1); 140 fileLayout->addWidget( kcfg_hashAlgo,i,1);
141 ++i; 141 ++i;
142 142
143 permissionLineEdit = new QLineEdit(filePage); 143 permissionLineEdit = new QLineEdit(filePage);
144 QLabel* permissionLineLabel = new QLabel(permissionLineEdit, i18n("Permissions:"), filePage); 144 QLabel* permissionLineLabel = new QLabel(permissionLineEdit, i18n("Permissions:"), filePage);
145 fileLayout->addWidget(permissionLineLabel,i,0); 145 fileLayout->addWidget(permissionLineLabel,i,0);
146 fileLayout->addWidget(permissionLineEdit,i,1); 146 fileLayout->addWidget(permissionLineEdit,i,1);
147 ++i; 147 ++i;
148 148
149 KPrefsWidBool *sb = addWidBool(i18n("Make backup before saving"), 149 KPrefsWidBool *sb = addWidBool(i18n("Make backup before saving"),
150 &(prefs->mMakeFileBackup),filePage); 150 &(prefs->mMakeFileBackup),filePage);
151 fileLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1); 151 fileLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1);
152 ++i; 152 ++i;
153 153
154 // Timeout page 154 // Timeout page
155 ////////////////////////////////////////////////////// 155 //////////////////////////////////////////////////////
156 QWidget *timeoutPage = new QWidget( this ); 156 QWidget *timeoutPage = new QWidget( this );
157 QGridLayout *timeoutLayout = new QGridLayout( timeoutPage, 3, 2); 157 QGridLayout *timeoutLayout = new QGridLayout( timeoutPage, 3, 2);
158 158
159 i = 0; 159 i = 0;
160 pwTimeoutSpinBox = new QSpinBox( 0,600,10,timeoutPage, "pwTimeoutSpinBox" ); 160 pwTimeoutSpinBox = new QSpinBox( 0,600,10,timeoutPage, "pwTimeoutSpinBox" );
161 QLabel* timeoutLabel = new QLabel(pwTimeoutSpinBox, i18n("Password timeout\n(timeout to hold password in\nmemory,so you don't have to\nre-enter it,if you\nalready have entered it)\n[set to 0 to disable]:"), timeoutPage); 161 QLabel* timeoutLabel = new QLabel(pwTimeoutSpinBox, i18n("<b>Password timeout</b> (timeout to hold password in memory,so you don't have to re-enter it,if you already have entered it) [set to 0 to disable]:"), timeoutPage);
162 timeoutLayout->addMultiCellWidget(timeoutLabel,i, i, 0 ,0); 162 timeoutLayout->addMultiCellWidget(timeoutLabel, i, i, 0 ,1);
163 timeoutLayout->addWidget(pwTimeoutSpinBox,i,1);
164 ++i; 163 ++i;
165 164 timeoutLayout->addMultiCellWidget(pwTimeoutSpinBox,i,i,0,1);
165 ++i;
166 pwTimeoutSpinBox->setSuffix ( i18n(" sec") );
166 lockTimeoutSpinBox = new QSpinBox( 0,600,10,timeoutPage, "lockTimeoutSpinBox" ); 167 lockTimeoutSpinBox = new QSpinBox( 0,600,10,timeoutPage, "lockTimeoutSpinBox" );
167 QLabel* lockTimeoutLabel = new QLabel(lockTimeoutSpinBox, i18n("Auto-lock timeout\n(auto lock document after this\namount of seconds)\n[set to 0 to disable]:"), timeoutPage); 168 QLabel* lockTimeoutLabel = new QLabel(lockTimeoutSpinBox, i18n("<b>Auto-lock timeout</b> (auto lock document after this\namount of seconds) [set to 0 to disable]:"), timeoutPage);
168 timeoutLayout->addMultiCellWidget(lockTimeoutLabel,i, i, 0 ,0); 169 timeoutLayout->addMultiCellWidget(lockTimeoutLabel,i, i, 0 ,1);
169 timeoutLayout->addWidget(lockTimeoutSpinBox,i,1); 170 ++i;
171 timeoutLayout->addMultiCellWidget(lockTimeoutSpinBox,i,i,0,1);
172 lockTimeoutSpinBox->setSuffix ( i18n(" sec") );
170 ++i; 173 ++i;
171 174
172 sb = addWidBool(i18n("deep-lock on autolock"), 175 sb = addWidBool(i18n("deep-lock on autolock"),
173 &(prefs->mAutoDeeplock),timeoutPage); 176 &(prefs->mAutoDeeplock),timeoutPage);
174 timeoutLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1); 177 timeoutLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1);
175 ++i; 178 ++i;
176 179 sb = addWidBool(i18n("Open document with passwords unlocked"),&(prefs->mUnlockOnOpen),timeoutPage);
180 timeoutLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1);
181 ++i;
177 182
178 // Autostart page 183 // Autostart page
179 ////////////////////////////////////////////////////// 184 //////////////////////////////////////////////////////
180 QWidget *autostartPage = new QWidget( this ); 185 QWidget *autostartPage = new QWidget( this );
181 QGridLayout *autostartLayout = new QGridLayout( autostartPage, 3, 2); 186 QGridLayout *autostartLayout = new QGridLayout( autostartPage, 3, 2);
182 187
183 i = 0; 188 i = 0;
184 189
185 autostartLineEdit = new KURLRequester(autostartPage, "autoStartLineEdit"); 190 autostartLineEdit = new KURLRequester(autostartPage, "autoStartLineEdit");
186 QLabel* autostartLineLabel = new QLabel(autostartLineEdit, "Open this file automatically on startup:",autostartPage); 191 QLabel* autostartLineLabel = new QLabel(autostartLineEdit, "Open this file automatically on startup:",autostartPage);
187 autostartLayout->addMultiCellWidget(autostartLineLabel,i,i,0,1); 192 autostartLayout->addMultiCellWidget(autostartLineLabel,i,i,0,1);
188 ++i; 193 ++i;
189 autostartLayout->addMultiCellWidget(autostartLineEdit,i,i,0,1); 194 autostartLayout->addMultiCellWidget(autostartLineEdit,i,i,0,1);
190 ++i; 195 ++i;
191 196
192 sb = addWidBool(i18n("open deeplocked"), 197 sb = addWidBool(i18n("open deeplocked"),
193 &(prefs->mAutostartDeeplocked),autostartPage); 198 &(prefs->mAutostartDeeplocked),autostartPage);
194 autostartLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1); 199 autostartLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1);
195 ++i; 200 ++i;
196 201
197 202
198 // external app page 203 // external app page
199 ////////////////////////////////////////////////////// 204 //////////////////////////////////////////////////////
200 QWidget *externalappPage = new QWidget( this ); 205 QWidget *externalappPage = new QWidget( this );
201 QGridLayout *externalappLayout = new QGridLayout( externalappPage, 3, 2); 206 QGridLayout *externalappLayout = new QGridLayout( externalappPage, 3, 2);
202 207
203 i = 0; 208 i = 0;
204 209
205 browserLineEdit = new QLineEdit(externalappPage); 210 browserLineEdit = new QLineEdit(externalappPage);
206 QLabel* browserLineLabel = new QLabel(browserLineEdit, i18n("Favourite browser:"), externalappPage); 211 QLabel* browserLineLabel = new QLabel(browserLineEdit, i18n("Favourite browser:"), externalappPage);
207 externalappLayout->addWidget(browserLineLabel,i,0); 212 externalappLayout->addWidget(browserLineLabel,i,0);
208 externalappLayout->addWidget(browserLineEdit,i,1); 213 externalappLayout->addWidget(browserLineEdit,i,1);
209 ++i; 214 ++i;
210 215
211 xtermLineEdit = new QLineEdit(externalappPage); 216 xtermLineEdit = new QLineEdit(externalappPage);
212 QLabel* xtermLineLabel = new QLabel(xtermLineEdit, i18n("Favourite x-terminal:"), externalappPage); 217 QLabel* xtermLineLabel = new QLabel(xtermLineEdit, i18n("Favourite x-terminal:"), externalappPage);
213 externalappLayout->addWidget(xtermLineLabel,i,0); 218 externalappLayout->addWidget(xtermLineLabel,i,0);
214 externalappLayout->addWidget(xtermLineEdit,i,1); 219 externalappLayout->addWidget(xtermLineEdit,i,1);
215 ++i; 220 ++i;
216 221
217 222#if 0
218 // miscelaneous page 223 // miscelaneous page
219 ////////////////////////////////////////////////////// 224 //////////////////////////////////////////////////////
220 QWidget *miscPage = new QWidget( this ); 225 QWidget *miscPage = new QWidget( this );
221 QGridLayout *miscLayout = new QGridLayout( miscPage, 3, 2); 226 QGridLayout *miscLayout = new QGridLayout( miscPage, 3, 2);
222 227
223 i = 0; 228 i = 0;
224 229
225 /*US ENH: PWM/Pi has no tray and con be minimized 230 /*US ENH: PWM/Pi has no tray and con be minimized
226 sb = addWidBool(i18n("Show icon in system-tray"),&(prefs->mTray),miscPage); 231 sb = addWidBool(i18n("Show icon in system-tray"),&(prefs->mTray),miscPage);
227 miscLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1); 232 miscLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1);
228 ++i; 233 ++i;
229 */ 234 */
230 235
231 sb = addWidBool(i18n("Open document with passwords unlocked"),&(prefs->mUnlockOnOpen),miscPage); 236 sb = addWidBool(i18n("Open document with passwords unlocked"),&(prefs->mUnlockOnOpen),miscPage);
232 miscLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1); 237 miscLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1);
233 ++i; 238 ++i;
234 239
235 /*US ENH: PWM/Pi has no tray and con be minimized 240 /*US ENH: PWM/Pi has no tray and con be minimized
236 sb = addWidBool(i18n("auto-minimize to tray on startup"),&(prefs->mAutoMinimizeOnStart),miscPage); 241 sb = addWidBool(i18n("auto-minimize to tray on startup"),&(prefs->mAutoMinimizeOnStart),miscPage);
237 miscLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1); 242 miscLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1);
238 ++i; 243 ++i;
239 244
240 KPrefsWidRadios * minimizeRadio = addWidRadios(i18n("auto-lock on minimize:") ,&(prefs->mMinimizeLock), miscPage); 245 KPrefsWidRadios * minimizeRadio = addWidRadios(i18n("auto-lock on minimize:") ,&(prefs->mMinimizeLock), miscPage);
241 minimizeRadio->addRadio(i18n("don't lock")); 246 minimizeRadio->addRadio(i18n("don't lock"));
242 minimizeRadio->addRadio(i18n("normal lock")); 247 minimizeRadio->addRadio(i18n("normal lock"));
243 minimizeRadio->addRadio(i18n("deep-lock")); 248 minimizeRadio->addRadio(i18n("deep-lock"));
244 miscLayout->addMultiCellWidget( (QWidget*)minimizeRadio->groupBox(),i,i,0,2); 249 miscLayout->addMultiCellWidget( (QWidget*)minimizeRadio->groupBox(),i,i,0,2);
245 ++i; 250 ++i;
246 251
247 sb = addWidBool(i18n("KWallet emulation"),&(prefs->mKWalletEmu),miscPage); 252 sb = addWidBool(i18n("KWallet emulation"),&(prefs->mKWalletEmu),miscPage);
248 miscLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1); 253 miscLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1);
249 ++i; 254 ++i;
250 255
251 sb = addWidBool(i18n("Close instead Minimize into tray"),&(prefs->mClose),miscPage); 256 sb = addWidBool(i18n("Close instead Minimize into tray"),&(prefs->mClose),miscPage);
252 miscLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1); 257 miscLayout->addMultiCellWidget(sb->checkBox(), i,i,0,1);
253 ++i; 258 ++i;
254 */ 259 */
255 260#endif
256 261
257 tabWidget->addTab( windowStylePage, i18n( "Look && feel" ) ); 262 tabWidget->addTab( windowStylePage, i18n( "Look && feel" ) );
258 tabWidget->addTab( filePage, i18n( "File" ) ); 263 tabWidget->addTab( filePage, i18n( "File" ) );
259 tabWidget->addTab( timeoutPage, i18n( "Timeout" ) ); 264 tabWidget->addTab( timeoutPage, i18n( "Timeout" ) );
260 tabWidget->addTab( autostartPage, i18n( "Autostart" ) ); 265 tabWidget->addTab( autostartPage, i18n( "Autostart" ) );
261 tabWidget->addTab( externalappPage, i18n( "External apps" ) ); 266 tabWidget->addTab( externalappPage, i18n( "External apps" ) );
262 tabWidget->addTab( miscPage, i18n( "Miscellaneous" ) ); 267 //tabWidget->addTab( miscPage, i18n( "Miscellaneous" ) );
263 268
264 269
265 connect( permissionLineEdit, SIGNAL( textChanged(const QString&) ), this, SLOT( modified() ) ); 270 connect( permissionLineEdit, SIGNAL( textChanged(const QString&) ), this, SLOT( modified() ) );
266 connect( pwTimeoutSpinBox, SIGNAL( valueChanged(int) ), this, SLOT( modified() ) ); 271 connect( pwTimeoutSpinBox, SIGNAL( valueChanged(int) ), this, SLOT( modified() ) );
267 connect( lockTimeoutSpinBox, SIGNAL( valueChanged(int) ), this, SLOT( modified() ) ); 272 connect( lockTimeoutSpinBox, SIGNAL( valueChanged(int) ), this, SLOT( modified() ) );
268 connect( autostartLineEdit, SIGNAL( textChanged(const QString&) ), this, SLOT( modified() ) ); 273 connect( autostartLineEdit, SIGNAL( textChanged(const QString&) ), this, SLOT( modified() ) );
269 connect( browserLineEdit, SIGNAL( textChanged(const QString&) ), this, SLOT( modified() ) ); 274 connect( browserLineEdit, SIGNAL( textChanged(const QString&) ), this, SLOT( modified() ) );
270 connect( xtermLineEdit, SIGNAL( textChanged(const QString&) ), this, SLOT( modified() ) ); 275 connect( xtermLineEdit, SIGNAL( textChanged(const QString&) ), this, SLOT( modified() ) );
271 276
272} 277}
273 278
274 279
275void PWMConfigWidget::usrReadConfig() 280void PWMConfigWidget::usrReadConfig()
276{ 281{
277 PWMPrefs* prefs = PWMPrefs::instance(); 282 PWMPrefs* prefs = PWMPrefs::instance();
278 283
279 284
280 setFilePermissions(prefs->mFilePermissions); 285 setFilePermissions(prefs->mFilePermissions);
281 286
282 pwTimeoutSpinBox->setValue(prefs->mPwTimeout); 287 pwTimeoutSpinBox->setValue(prefs->mPwTimeout);
283 lockTimeoutSpinBox->setValue(prefs->mLockTimeout); 288 lockTimeoutSpinBox->setValue(prefs->mLockTimeout);
284 autostartLineEdit->setURL(prefs->mAutoStart); 289 autostartLineEdit->setURL(prefs->mAutoStart);
285 browserLineEdit->setText(prefs->mBrowserCommand); 290 browserLineEdit->setText(prefs->mBrowserCommand);
286 xtermLineEdit->setText(prefs->mXTermCommand); 291 xtermLineEdit->setText(prefs->mXTermCommand);
287 292
288 kcfg_compression->setCurrentItem(prefs->mCompression); 293 kcfg_compression->setCurrentItem(prefs->mCompression);
289 kcfg_cryptAlgo->setCurrentItem(prefs->mCryptAlgo); 294 kcfg_cryptAlgo->setCurrentItem(prefs->mCryptAlgo);
290 kcfg_hashAlgo->setCurrentItem(prefs->mHashAlgo); 295 kcfg_hashAlgo->setCurrentItem(prefs->mHashAlgo);
291} 296}
292 297
293void PWMConfigWidget::usrWriteConfig() 298void PWMConfigWidget::usrWriteConfig()
294{ 299{
295 PWMPrefs* prefs = PWMPrefs::instance(); 300 PWMPrefs* prefs = PWMPrefs::instance();
296 301
297 prefs->mFilePermissions = getFilePermissions(); 302 prefs->mFilePermissions = getFilePermissions();
298 303
299 prefs->mPwTimeout = pwTimeoutSpinBox->value(); 304 prefs->mPwTimeout = pwTimeoutSpinBox->value();
300 prefs->mLockTimeout = lockTimeoutSpinBox->value(); 305 prefs->mLockTimeout = lockTimeoutSpinBox->value();
301 prefs->mAutoStart = autostartLineEdit->url(); 306 prefs->mAutoStart = autostartLineEdit->url();
302 307
303 prefs->mBrowserCommand = browserLineEdit->text(); 308 prefs->mBrowserCommand = browserLineEdit->text();
304 prefs->mXTermCommand = xtermLineEdit->text(); 309 prefs->mXTermCommand = xtermLineEdit->text();
305 310
306 prefs->mCompression = kcfg_compression->currentItem(); 311 prefs->mCompression = kcfg_compression->currentItem();
307 prefs->mCryptAlgo = kcfg_cryptAlgo->currentItem(); 312 prefs->mCryptAlgo = kcfg_cryptAlgo->currentItem();
308 prefs->mHashAlgo = kcfg_hashAlgo->currentItem(); 313 prefs->mHashAlgo = kcfg_hashAlgo->currentItem();
309 314
310} 315}
311 316
312int PWMConfigWidget::getFilePermissions() 317int PWMConfigWidget::getFilePermissions()
313{ 318{
314 char octalDigits[] = "01234567"; 319 char octalDigits[] = "01234567";
315 bool isOctal; 320 bool isOctal;
316 QString permString(permissionLineEdit->text()); 321 QString permString(permissionLineEdit->text());
317 int i, j, length = permString.length(); 322 int i, j, length = permString.length();
318 if (length != 3) { 323 if (length != 3) {
319 printWarn("Wrong permission string length! Please enter " 324 printWarn("Wrong permission string length! Please enter "
320 "the string like the following example: 600"); 325 "the string like the following example: 600");
321 return CONF_DEFAULT_FILEPERMISSIONS; 326 return CONF_DEFAULT_FILEPERMISSIONS;
322 } 327 }
323 for (i = 0; i < length; ++i) { 328 for (i = 0; i < length; ++i) {
324 isOctal = false; 329 isOctal = false;
325 for (j = 0; j < 8; ++j) { 330 for (j = 0; j < 8; ++j) {
326 if (permString.at(i) == octalDigits[j]) { 331 if (permString.at(i) == octalDigits[j]) {
327 isOctal = true; 332 isOctal = true;
328 break; 333 break;
329 } 334 }
330 } 335 }
331 if (!isOctal) { 336 if (!isOctal) {
332 printWarn("CONFIG: File-permissions: This is " 337 printWarn("CONFIG: File-permissions: This is "
333 "not an octal number "); 338 "not an octal number ");
334 return CONF_DEFAULT_FILEPERMISSIONS; 339 return CONF_DEFAULT_FILEPERMISSIONS;
335 } 340 }
336 } 341 }
337 342
338 int ret = strtol(permString.latin1(), 0, 8); 343 int ret = strtol(permString.latin1(), 0, 8);
339 if (ret == 0) { 344 if (ret == 0) {
340 /* either an error occured, or the user did really type 000 */ 345 /* either an error occured, or the user did really type 000 */
341 printWarn("CONFIG: File-permissions: Hm, either conversion error, " 346 printWarn("CONFIG: File-permissions: Hm, either conversion error, "
342 "or you really typed 000. 8-)"); 347 "or you really typed 000. 8-)");
343 return CONF_DEFAULT_FILEPERMISSIONS; 348 return CONF_DEFAULT_FILEPERMISSIONS;
344 } 349 }
345 return ret; 350 return ret;
346} 351}
347 352
348void PWMConfigWidget::setFilePermissions(int perm) 353void PWMConfigWidget::setFilePermissions(int perm)
349{ 354{
350 char tmpBuf[30]; 355 char tmpBuf[30];
351 sprintf(tmpBuf, "%o", perm); 356 sprintf(tmpBuf, "%o", perm);
352 permissionLineEdit->setText(tmpBuf); 357 permissionLineEdit->setText(tmpBuf);
353} 358}
354 359
355 360
356 361
357#ifndef PWM_EMBEDDED 362#ifndef PWM_EMBEDDED
358#include "pwmconfigwidget.moc" 363#include "pwmconfigwidget.moc"
359#endif //PWM_EMBEDDED 364#endif //PWM_EMBEDDED
360 365