author | zautrix <zautrix> | 2005-03-03 14:48:33 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-03-03 14:48:33 (UTC) |
commit | a4ea625087ea7213419828e8decdff48ae231968 (patch) (unidiff) | |
tree | e29565039694702cdc471e76891b2d6c3ac89294 | |
parent | 91feaad38e5f81063fa496a4e2988aa791267fd1 (diff) | |
download | kdepimpi-a4ea625087ea7213419828e8decdff48ae231968.zip kdepimpi-a4ea625087ea7213419828e8decdff48ae231968.tar.gz kdepimpi-a4ea625087ea7213419828e8decdff48ae231968.tar.bz2 |
VINklumpen
-rw-r--r-- | bin/kdepim/WhatsNew.txt | 4 | ||||
-rw-r--r-- | bin/kdepim/pwmanager/germantranslation.txt | 2 | ||||
-rw-r--r-- | bin/kdepim/pwmanager/icons16/decrypted.png | bin | 1009 -> 855 bytes | |||
-rw-r--r-- | bin/kdepim/pwmanager/icons22/decrypted.png | bin | 939 -> 1117 bytes | |||
-rw-r--r-- | pwmanager/pwmanager/addentrywndimpl.cpp | 1 | ||||
-rw-r--r-- | pwmanager/pwmanager/pwm.cpp | 11 | ||||
-rw-r--r-- | pwmanager/pwmanager/pwmviewstyle_0.cpp | 22 | ||||
-rw-r--r-- | pwmanager/pwmanager/pwmviewstyle_1.cpp | 4 |
8 files changed, 29 insertions, 15 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt index 11c50f8..657d1de 100644 --- a/bin/kdepim/WhatsNew.txt +++ b/bin/kdepim/WhatsNew.txt | |||
@@ -1,198 +1,200 @@ | |||
1 | Info about the changes in new versions of KDE-Pim/Pi | 1 | Info about the changes in new versions of KDE-Pim/Pi |
2 | 2 | ||
3 | ********** VERSION 2.0.14 ************ | 3 | ********** VERSION 2.0.14 ************ |
4 | 4 | ||
5 | Made Passwordmanager PwM/Pi more userfriendly: | 5 | Made Passwordmanager PwM/Pi more userfriendly: |
6 | Rearranged some toolbar icons and optimized setting of focus. | 6 | Rearranged some toolbar icons, optimized setting of focus, fixed layout problems and more. |
7 | Fixed bug in KO/Pi todo printing. | ||
8 | Made Qtopia calendar import possible on desktop . | ||
7 | 9 | ||
8 | ********** VERSION 2.0.13 ************ | 10 | ********** VERSION 2.0.13 ************ |
9 | 11 | ||
10 | Fixed a problem in the addressee select dialog and made it more user friendly by adding a minimize splitter. | 12 | Fixed a problem in the addressee select dialog and made it more user friendly by adding a minimize splitter. |
11 | 13 | ||
12 | In the search dialog you can switch now the focus from search line edit to the list view by pressing key "arrow down". | 14 | In the search dialog you can switch now the focus from search line edit to the list view by pressing key "arrow down". |
13 | 15 | ||
14 | OM/Pi: | 16 | OM/Pi: |
15 | Fixed a refresh problem of outgoing/sent/sendfailed folders after sending mails. | 17 | Fixed a refresh problem of outgoing/sent/sendfailed folders after sending mails. |
16 | Added missing German translation. | 18 | Added missing German translation. |
17 | Added warning if path is specified in local folder settings of account config. | 19 | Added warning if path is specified in local folder settings of account config. |
18 | 20 | ||
19 | ********** VERSION 2.0.12 ************ | 21 | ********** VERSION 2.0.12 ************ |
20 | 22 | ||
21 | KO/Pi: | 23 | KO/Pi: |
22 | Fixed a bug in todo start/due date handling for non recurring todos with a start and due date. | 24 | Fixed a bug in todo start/due date handling for non recurring todos with a start and due date. |
23 | Fixed some layout problems in the KO/Pi agenda view when there were many conflicting itmes. | 25 | Fixed some layout problems in the KO/Pi agenda view when there were many conflicting itmes. |
24 | Fixed several problems of the keyboard focus in the desktop versions when opening the search dialog/event viewer. | 26 | Fixed several problems of the keyboard focus in the desktop versions when opening the search dialog/event viewer. |
25 | 27 | ||
26 | Fixed problem in pi-sync mode when wrong password was sent. | 28 | Fixed problem in pi-sync mode when wrong password was sent. |
27 | 29 | ||
28 | OM/Pi: | 30 | OM/Pi: |
29 | Fixed a crash when displaying mails with "Show mail as html" was checked in the config. | 31 | Fixed a crash when displaying mails with "Show mail as html" was checked in the config. |
30 | Added a check before displaying the mail if the mail is in html format, if "Show mail as html" is enabled. | 32 | Added a check before displaying the mail if the mail is in html format, if "Show mail as html" is enabled. |
31 | 33 | ||
32 | ********** VERSION 2.0.11 ************ | 34 | ********** VERSION 2.0.11 ************ |
33 | 35 | ||
34 | Fixed some problems in pi-sync mode | 36 | Fixed some problems in pi-sync mode |
35 | (e.g. details of events were not synced properly) | 37 | (e.g. details of events were not synced properly) |
36 | 38 | ||
37 | ********** VERSION 2.0.10 ************ | 39 | ********** VERSION 2.0.10 ************ |
38 | 40 | ||
39 | KO/Pi: | 41 | KO/Pi: |
40 | In the desktop versions the context menu in the search dialog was broken after introducing the What'sThis info for the list view. | 42 | In the desktop versions the context menu in the search dialog was broken after introducing the What'sThis info for the list view. |
41 | This is fixed. | 43 | This is fixed. |
42 | Changed the search dialog a bit to make it more user friendly. | 44 | Changed the search dialog a bit to make it more user friendly. |
43 | (E.g.: Removed message box about "no items found" and set key focus to search line edit after search). | 45 | (E.g.: Removed message box about "no items found" and set key focus to search line edit after search). |
44 | 46 | ||
45 | Added config option to hide the week number in KO/Pi toolbar. | 47 | Added config option to hide the week number in KO/Pi toolbar. |
46 | 48 | ||
47 | ********** VERSION 2.0.9 ************ | 49 | ********** VERSION 2.0.9 ************ |
48 | 50 | ||
49 | Made month view icons for multiday events a bit nicer. | 51 | Made month view icons for multiday events a bit nicer. |
50 | Some minor fixes in KO/Pi | 52 | Some minor fixes in KO/Pi |
51 | (e.g. go to today did not work for new week view properly). | 53 | (e.g. go to today did not work for new week view properly). |
52 | 54 | ||
53 | 55 | ||
54 | ********** VERSION 2.0.8 ************ | 56 | ********** VERSION 2.0.8 ************ |
55 | 57 | ||
56 | Fixed a problem in dependency info in the ipk files for the Zaurus. | 58 | Fixed a problem in dependency info in the ipk files for the Zaurus. |
57 | 59 | ||
58 | Added icon for the stealth new week view and made navigation more user friendly in monthview by adding a prev/next week button to the navigator bar. | 60 | Added icon for the stealth new week view and made navigation more user friendly in monthview by adding a prev/next week button to the navigator bar. |
59 | 61 | ||
60 | Added a "go today" button to the datepicker. | 62 | Added a "go today" button to the datepicker. |
61 | 63 | ||
62 | Added "created" and "last modified" to event/todo viewer (and What'sThis viewer) | 64 | Added "created" and "last modified" to event/todo viewer (and What'sThis viewer) |
63 | and made it configureable to show these values. | 65 | and made it configureable to show these values. |
64 | 66 | ||
65 | Fixed a problem for events (from external iCal files) that do have a duration but no end date. | 67 | Fixed a problem for events (from external iCal files) that do have a duration but no end date. |
66 | 68 | ||
67 | 69 | ||
68 | ********** VERSION 2.0.7 ************ | 70 | ********** VERSION 2.0.7 ************ |
69 | 71 | ||
70 | Added global application font settings | 72 | Added global application font settings |
71 | (for all KDE-Pim/Pi apps) to the general settings. | 73 | (for all KDE-Pim/Pi apps) to the general settings. |
72 | 74 | ||
73 | Fixed a problem in OM/Pi when trying to login to some IMAP servers | 75 | Fixed a problem in OM/Pi when trying to login to some IMAP servers |
74 | (like the IMAP server of Apple: mail.mac.com ) | 76 | (like the IMAP server of Apple: mail.mac.com ) |
75 | 77 | ||
76 | Added recurring todos to KO/Pi. | 78 | Added recurring todos to KO/Pi. |
77 | 79 | ||
78 | 80 | ||
79 | ********** VERSION 2.0.6 ************ | 81 | ********** VERSION 2.0.6 ************ |
80 | 82 | ||
81 | Some bugfixes in the pi-sync mode. | 83 | Some bugfixes in the pi-sync mode. |
82 | Added German translation for pi-sync mode. | 84 | Added German translation for pi-sync mode. |
83 | 85 | ||
84 | KO/Pi: | 86 | KO/Pi: |
85 | Made the todolist using alternate background. | 87 | Made the todolist using alternate background. |
86 | 88 | ||
87 | Other minor fixes in KO/Pi. | 89 | Other minor fixes in KO/Pi. |
88 | 90 | ||
89 | 91 | ||
90 | ********** VERSION 2.0.5 ************ | 92 | ********** VERSION 2.0.5 ************ |
91 | 93 | ||
92 | Bugfixes in KO/Pi. | 94 | Bugfixes in KO/Pi. |
93 | 95 | ||
94 | ********** VERSION 2.0.4 ************ | 96 | ********** VERSION 2.0.4 ************ |
95 | 97 | ||
96 | KO/Pi: | 98 | KO/Pi: |
97 | Fixed problem loading translations for summary/location edit boxes in event/todo editor. | 99 | Fixed problem loading translations for summary/location edit boxes in event/todo editor. |
98 | 100 | ||
99 | Added a general "select week number" to the toolbar. | 101 | Added a general "select week number" to the toolbar. |
100 | 102 | ||
101 | Fixed some small problem of the new features introduced in version 2.0.3. | 103 | Fixed some small problem of the new features introduced in version 2.0.3. |
102 | 104 | ||
103 | Made it possible to specify one specific category as category color, | 105 | Made it possible to specify one specific category as category color, |
104 | if more than one categories are selected. | 106 | if more than one categories are selected. |
105 | 107 | ||
106 | Fixed a bug in saving colors for categories with non-ascii characters. | 108 | Fixed a bug in saving colors for categories with non-ascii characters. |
107 | (Like, e.g. German Umlauts). | 109 | (Like, e.g. German Umlauts). |
108 | Propably you have to set your colors again for those categories. | 110 | Propably you have to set your colors again for those categories. |
109 | 111 | ||
110 | 112 | ||
111 | ********** VERSION 2.0.3 ************ | 113 | ********** VERSION 2.0.3 ************ |
112 | 114 | ||
113 | KO/Pi: | 115 | KO/Pi: |
114 | Added feature for changing alarm settings for many items at once: | 116 | Added feature for changing alarm settings for many items at once: |
115 | Open list view (or search dialog), select the desired items and choose in | 117 | Open list view (or search dialog), select the desired items and choose in |
116 | the popup menu: Set alarm for selected... | 118 | the popup menu: Set alarm for selected... |
117 | 119 | ||
118 | Added to the event/todo viewer the option to send an email to | 120 | Added to the event/todo viewer the option to send an email to |
119 | all attendees or all selected (with RSVP) attendees. | 121 | all attendees or all selected (with RSVP) attendees. |
120 | 122 | ||
121 | Made the week-month mode changing in month view faster. | 123 | Made the week-month mode changing in month view faster. |
122 | 124 | ||
123 | Made month view better useable with keyboard. | 125 | Made month view better useable with keyboard. |
124 | Now TAB key jumps to next cell with an event/todo. | 126 | Now TAB key jumps to next cell with an event/todo. |
125 | Scroll in cell with coursor keys, scroll in time (next week) with | 127 | Scroll in cell with coursor keys, scroll in time (next week) with |
126 | Shift/Control + coursorkeys. | 128 | Shift/Control + coursorkeys. |
127 | 129 | ||
128 | Fixed bug that the todo view flat mode was reset after first view update. | 130 | Fixed bug that the todo view flat mode was reset after first view update. |
129 | 131 | ||
130 | If a todo is displayed closed in the todo view, | 132 | If a todo is displayed closed in the todo view, |
131 | it is now displayed in overdue/due today color depending on the subtodos overdue/due today properties. | 133 | it is now displayed in overdue/due today color depending on the subtodos overdue/due today properties. |
132 | 134 | ||
133 | Added info about the numbers of years to the caption (title) information about a birthday event. | 135 | Added info about the numbers of years to the caption (title) information about a birthday event. |
134 | 136 | ||
135 | Made completion date in todo editor editable. | 137 | Made completion date in todo editor editable. |
136 | 138 | ||
137 | Added possibility to save/load templates for journals. | 139 | Added possibility to save/load templates for journals. |
138 | (Which is just a simple "save text to file" or "insert text from file". | 140 | (Which is just a simple "save text to file" or "insert text from file". |
139 | 141 | ||
140 | ********** VERSION 2.0.2 ************ | 142 | ********** VERSION 2.0.2 ************ |
141 | 143 | ||
142 | KO/Pi: | 144 | KO/Pi: |
143 | Fixed the layout problem of the day label buttons | 145 | Fixed the layout problem of the day label buttons |
144 | of the agenda view introduced in version 2.0.1. | 146 | of the agenda view introduced in version 2.0.1. |
145 | 147 | ||
146 | Added WhatsThis support for the todo view and the list view. | 148 | Added WhatsThis support for the todo view and the list view. |
147 | 149 | ||
148 | Added a quite useful feature to the montview. | 150 | Added a quite useful feature to the montview. |
149 | Just click on the week numbers on the left. | 151 | Just click on the week numbers on the left. |
150 | And in the top right corner of month view/agenda view | 152 | And in the top right corner of month view/agenda view |
151 | there is now a "week number quick selector". | 153 | there is now a "week number quick selector". |
152 | (Click on the black triangle). | 154 | (Click on the black triangle). |
153 | 155 | ||
154 | Made the quite difficult timezone change in KO/Pi easy. | 156 | Made the quite difficult timezone change in KO/Pi easy. |
155 | 157 | ||
156 | OM/Pi: | 158 | OM/Pi: |
157 | Fixed too small icons on desktop. | 159 | Fixed too small icons on desktop. |
158 | Fixed non visible icons in mainwindow on Z with fastload enabled. | 160 | Fixed non visible icons in mainwindow on Z with fastload enabled. |
159 | Added signature file setting to smtp account config. | 161 | Added signature file setting to smtp account config. |
160 | And the signature can be edited and saved in the edit mail dialog. | 162 | And the signature can be edited and saved in the edit mail dialog. |
161 | That does mean: | 163 | That does mean: |
162 | Simply edit the signature for the selected smtp account in the | 164 | Simply edit the signature for the selected smtp account in the |
163 | edit new mail dialog and press the "save signature" button there. | 165 | edit new mail dialog and press the "save signature" button there. |
164 | Then the signature is saved to the file specified in the smtp account settings. | 166 | Then the signature is saved to the file specified in the smtp account settings. |
165 | If there is no file specified, it is saved automatically to the file | 167 | If there is no file specified, it is saved automatically to the file |
166 | kdepim/apps/kopiemail/<accountname>.sig. | 168 | kdepim/apps/kopiemail/<accountname>.sig. |
167 | 169 | ||
168 | 170 | ||
169 | 171 | ||
170 | ********** VERSION 2.0.1 ************ | 172 | ********** VERSION 2.0.1 ************ |
171 | 173 | ||
172 | Oooops ... I forgot to test on the Zaurus 5500 ... | 174 | Oooops ... I forgot to test on the Zaurus 5500 ... |
173 | 175 | ||
174 | Fixed many problems of new (english) strings (and german translations) | 176 | Fixed many problems of new (english) strings (and german translations) |
175 | introduced in the latest versions, where the text was not fitting on the | 177 | introduced in the latest versions, where the text was not fitting on the |
176 | 240x320 display of the Zaurus 5500. | 178 | 240x320 display of the Zaurus 5500. |
177 | 179 | ||
178 | KO/Pi: | 180 | KO/Pi: |
179 | Added a popup menu ( press pen and hold to get popup ) to the agenda view | 181 | Added a popup menu ( press pen and hold to get popup ) to the agenda view |
180 | with many useful items (add event/todo, show next week, two weeks, month, journal). | 182 | with many useful items (add event/todo, show next week, two weeks, month, journal). |
181 | 183 | ||
182 | Added items to the todolist popup menu for: | 184 | Added items to the todolist popup menu for: |
183 | Display all opened, all closed or all todos flat. | 185 | Display all opened, all closed or all todos flat. |
184 | The "flat" view makes is possible to sort all todos after ,e.g., prio or date. | 186 | The "flat" view makes is possible to sort all todos after ,e.g., prio or date. |
185 | Made the reparenting of todos on the desktop possible via Drag&Drop. | 187 | Made the reparenting of todos on the desktop possible via Drag&Drop. |
186 | Fixed several bugs in setting the completed datetime for todos. | 188 | Fixed several bugs in setting the completed datetime for todos. |
187 | Added info about completed datetime of todos to the todo viewer. | 189 | Added info about completed datetime of todos to the todo viewer. |
188 | Now displaying a completed todo (with completed datetime set) in the agenda view | 190 | Now displaying a completed todo (with completed datetime set) in the agenda view |
189 | at the time of the completion. Such that now it is possible to see in the agenda view | 191 | at the time of the completion. Such that now it is possible to see in the agenda view |
190 | when what todo was completed. | 192 | when what todo was completed. |
191 | Fixed behaviour of automatic setting completion of todos with sub-todos/parent todos. | 193 | Fixed behaviour of automatic setting completion of todos with sub-todos/parent todos. |
192 | Now the behaviour is: | 194 | Now the behaviour is: |
193 | Setting a parent to complete sets all (sub)childs to complete. | 195 | Setting a parent to complete sets all (sub)childs to complete. |
194 | Setting a parent to uncomplete does not change the childs. | 196 | Setting a parent to uncomplete does not change the childs. |
195 | Setting a child to uncomplete sets all parent to uncomplete. | 197 | Setting a child to uncomplete sets all parent to uncomplete. |
196 | Setting a child to complete does not change the parents. | 198 | Setting a child to complete does not change the parents. |
197 | 199 | ||
198 | Smart updating and double buffering of the daymatrix. | 200 | Smart updating and double buffering of the daymatrix. |
diff --git a/bin/kdepim/pwmanager/germantranslation.txt b/bin/kdepim/pwmanager/germantranslation.txt index a63be31..ccc9d83 100644 --- a/bin/kdepim/pwmanager/germantranslation.txt +++ b/bin/kdepim/pwmanager/germantranslation.txt | |||
@@ -160,197 +160,197 @@ | |||
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 | { "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]:" }, |
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 | { "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]:" }, |
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 | { "","" }, | 352 | { "Category:","Kategorie:" }, |
353 | { "","" }, | 353 | { "","" }, |
354 | { "","" }, | 354 | { "","" }, |
355 | { "","" }, | 355 | { "","" }, |
356 | 356 | ||
diff --git a/bin/kdepim/pwmanager/icons16/decrypted.png b/bin/kdepim/pwmanager/icons16/decrypted.png index a52d790..3777a12 100644 --- a/bin/kdepim/pwmanager/icons16/decrypted.png +++ b/bin/kdepim/pwmanager/icons16/decrypted.png | |||
Binary files differ | |||
diff --git a/bin/kdepim/pwmanager/icons22/decrypted.png b/bin/kdepim/pwmanager/icons22/decrypted.png index 2228639..ea770ea 100644 --- a/bin/kdepim/pwmanager/icons22/decrypted.png +++ b/bin/kdepim/pwmanager/icons22/decrypted.png | |||
Binary files differ | |||
diff --git a/pwmanager/pwmanager/addentrywndimpl.cpp b/pwmanager/pwmanager/addentrywndimpl.cpp index fa6b6c0..09efd1c 100644 --- a/pwmanager/pwmanager/addentrywndimpl.cpp +++ b/pwmanager/pwmanager/addentrywndimpl.cpp | |||
@@ -1,220 +1,221 @@ | |||
1 | /*************************************************************************** | 1 | /*************************************************************************** |
2 | * * | 2 | * * |
3 | * copyright (C) 2003, 2004 by Michael Buesch * | 3 | * copyright (C) 2003, 2004 by Michael Buesch * |
4 | * email: mbuesch@freenet.de * | 4 | * email: mbuesch@freenet.de * |
5 | * * | 5 | * * |
6 | * Many very good improvements and the original implementations of * | 6 | * Many very good improvements and the original implementations of * |
7 | * them came from Matt Scifo <mscifo@o1.com> * | 7 | * them came from Matt Scifo <mscifo@o1.com> * |
8 | * * | 8 | * * |
9 | * This program is free software; you can redistribute it and/or modify * | 9 | * This program is free software; you can redistribute it and/or modify * |
10 | * it under the terms of the GNU General Public License version 2 * | 10 | * it under the terms of the GNU General Public License version 2 * |
11 | * as published by the Free Software Foundation. * | 11 | * as published by the Free Software Foundation. * |
12 | * * | 12 | * * |
13 | ***************************************************************************/ | 13 | ***************************************************************************/ |
14 | 14 | ||
15 | /*************************************************************************** | 15 | /*************************************************************************** |
16 | * copyright (C) 2004 by Ulf Schenk | 16 | * copyright (C) 2004 by Ulf Schenk |
17 | * This file is originaly based on version 1.0.1 of pwmanager | 17 | * This file is originaly based on version 1.0.1 of pwmanager |
18 | * and was modified to run on embedded devices that run microkde | 18 | * and was modified to run on embedded devices that run microkde |
19 | * | 19 | * |
20 | * $Id$ | 20 | * $Id$ |
21 | **************************************************************************/ | 21 | **************************************************************************/ |
22 | 22 | ||
23 | #include "addentrywndimpl.h" | 23 | #include "addentrywndimpl.h" |
24 | #include "pwmexception.h" | 24 | #include "pwmexception.h" |
25 | #include "pwgenwndimpl.h" | 25 | #include "pwgenwndimpl.h" |
26 | #ifndef PWM_EMBEDDED | 26 | #ifndef PWM_EMBEDDED |
27 | #include "advcommeditimpl.h" | 27 | #include "advcommeditimpl.h" |
28 | #endif | 28 | #endif |
29 | #include "htmlgen.h" | 29 | #include "htmlgen.h" |
30 | 30 | ||
31 | #include <kmessagebox.h> | 31 | #include <kmessagebox.h> |
32 | #include <klocale.h> | 32 | #include <klocale.h> |
33 | 33 | ||
34 | #include <qpushbutton.h> | 34 | #include <qpushbutton.h> |
35 | #include <qlabel.h> | 35 | #include <qlabel.h> |
36 | #include <qlayout.h> | 36 | #include <qlayout.h> |
37 | 37 | ||
38 | 38 | ||
39 | #ifndef PWM_EMBEDDED | 39 | #ifndef PWM_EMBEDDED |
40 | AddEntryWndImpl::AddEntryWndImpl() | 40 | AddEntryWndImpl::AddEntryWndImpl() |
41 | : addEntryWnd( 0, "AddEntryWndImpl", TRUE) | 41 | : addEntryWnd( 0, "AddEntryWndImpl", TRUE) |
42 | #else | 42 | #else |
43 | AddEntryWndImpl::AddEntryWndImpl( PwMDoc* doc, QWidget* parent, const char* name) | 43 | AddEntryWndImpl::AddEntryWndImpl( PwMDoc* doc, QWidget* parent, const char* name) |
44 | : addEntryWnd( doc, parent, name) | 44 | : addEntryWnd( doc, parent, name) |
45 | #endif | 45 | #endif |
46 | { | 46 | { |
47 | categoryComboBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding,QSizePolicy::Preferred )); | ||
47 | #ifndef PWM_EMBEDDED | 48 | #ifndef PWM_EMBEDDED |
48 | editAdvCommentButton = 0; | 49 | editAdvCommentButton = 0; |
49 | commentTextEdit = 0; | 50 | commentTextEdit = 0; |
50 | #endif | 51 | #endif |
51 | switchComment(false); | 52 | switchComment(false); |
52 | pwGen = new PwGenWndImpl(this); | 53 | pwGen = new PwGenWndImpl(this); |
53 | } | 54 | } |
54 | 55 | ||
55 | AddEntryWndImpl::~AddEntryWndImpl() | 56 | AddEntryWndImpl::~AddEntryWndImpl() |
56 | { | 57 | { |
57 | #ifndef PWM_EMBEDDED | 58 | #ifndef PWM_EMBEDDED |
58 | delete_ifnot_null(editAdvCommentButton); | 59 | delete_ifnot_null(editAdvCommentButton); |
59 | delete_ifnot_null(commentTextEdit); | 60 | delete_ifnot_null(commentTextEdit); |
60 | #endif | 61 | #endif |
61 | delete pwGen; | 62 | delete pwGen; |
62 | } | 63 | } |
63 | 64 | ||
64 | #ifdef PWM_EMBEDDED | 65 | #ifdef PWM_EMBEDDED |
65 | void AddEntryWndImpl::slotOk() | 66 | void AddEntryWndImpl::slotOk() |
66 | { | 67 | { |
67 | slotApply(); | 68 | slotApply(); |
68 | 69 | ||
69 | if (pwLineEdit->text().isEmpty()) { | 70 | if (pwLineEdit->text().isEmpty()) { |
70 | KMessageBox::error(this, | 71 | KMessageBox::error(this, |
71 | i18n("Sorry, you haven't set a password."), | 72 | i18n("Sorry, you haven't set a password."), |
72 | i18n("no password")); | 73 | i18n("no password")); |
73 | return; | 74 | return; |
74 | } | 75 | } |
75 | 76 | ||
76 | if (descLineEdit->text().isEmpty()) { | 77 | if (descLineEdit->text().isEmpty()) { |
77 | KMessageBox::error(this, | 78 | KMessageBox::error(this, |
78 | i18n("You haven't set a \"Description\"."), | 79 | i18n("You haven't set a \"Description\"."), |
79 | i18n("Description not set")); | 80 | i18n("Description not set")); |
80 | return; | 81 | return; |
81 | } | 82 | } |
82 | 83 | ||
83 | KDialogBase::slotOk(); | 84 | KDialogBase::slotOk(); |
84 | } | 85 | } |
85 | #else | 86 | #else |
86 | 87 | ||
87 | void AddEntryWndImpl::okButton_slot() | 88 | void AddEntryWndImpl::okButton_slot() |
88 | { | 89 | { |
89 | if (pwLineEdit->text().isEmpty()) { | 90 | if (pwLineEdit->text().isEmpty()) { |
90 | KMessageBox::error(this, | 91 | KMessageBox::error(this, |
91 | i18n("Sorry, you haven't set a password."), | 92 | i18n("Sorry, you haven't set a password."), |
92 | i18n("no password")); | 93 | i18n("no password")); |
93 | return; | 94 | return; |
94 | } | 95 | } |
95 | if (descLineEdit->text().isEmpty()) { | 96 | if (descLineEdit->text().isEmpty()) { |
96 | KMessageBox::error(this, | 97 | KMessageBox::error(this, |
97 | i18n | 98 | i18n |
98 | ("You haven't set a \"Description\"."), | 99 | ("You haven't set a \"Description\"."), |
99 | i18n("Description not set")); | 100 | i18n("Description not set")); |
100 | return; | 101 | return; |
101 | } | 102 | } |
102 | done(1); | 103 | done(1); |
103 | } | 104 | } |
104 | 105 | ||
105 | void AddEntryWndImpl::cancelButton_slot() | 106 | void AddEntryWndImpl::cancelButton_slot() |
106 | { | 107 | { |
107 | done(2); | 108 | done(2); |
108 | } | 109 | } |
109 | #endif | 110 | #endif |
110 | 111 | ||
111 | void AddEntryWndImpl::setCurrCategory(const QString &cat) | 112 | void AddEntryWndImpl::setCurrCategory(const QString &cat) |
112 | { | 113 | { |
113 | int i, count = categoryComboBox->count(); | 114 | int i, count = categoryComboBox->count(); |
114 | 115 | ||
115 | for (i = 0; i < count; ++i) { | 116 | for (i = 0; i < count; ++i) { |
116 | if (categoryComboBox->text(i) == cat) { | 117 | if (categoryComboBox->text(i) == cat) { |
117 | categoryComboBox->setCurrentItem(i); | 118 | categoryComboBox->setCurrentItem(i); |
118 | #ifdef PWM_EMBEDDED | 119 | #ifdef PWM_EMBEDDED |
119 | categorySelected(cat); | 120 | categorySelected(cat); |
120 | #endif | 121 | #endif |
121 | return; | 122 | return; |
122 | } | 123 | } |
123 | } | 124 | } |
124 | BUG(); | 125 | BUG(); |
125 | } | 126 | } |
126 | 127 | ||
127 | void AddEntryWndImpl::revealButton_slot() | 128 | void AddEntryWndImpl::revealButton_slot() |
128 | { | 129 | { |
129 | if (revealButton->isOn()) { | 130 | if (revealButton->isOn()) { |
130 | pwLineEdit->setEchoMode(QLineEdit::Normal); | 131 | pwLineEdit->setEchoMode(QLineEdit::Normal); |
131 | } else { | 132 | } else { |
132 | pwLineEdit->setEchoMode(QLineEdit::Password); | 133 | pwLineEdit->setEchoMode(QLineEdit::Password); |
133 | } | 134 | } |
134 | } | 135 | } |
135 | 136 | ||
136 | void AddEntryWndImpl::generateButton_slot() | 137 | void AddEntryWndImpl::generateButton_slot() |
137 | { | 138 | { |
138 | if (!pwGen->exec()) | 139 | if (!pwGen->exec()) |
139 | return; | 140 | return; |
140 | setPassword(pwGen->getPassword()); | 141 | setPassword(pwGen->getPassword()); |
141 | } | 142 | } |
142 | 143 | ||
143 | QString AddEntryWndImpl::getComment() | 144 | QString AddEntryWndImpl::getComment() |
144 | { | 145 | { |
145 | #ifndef PWM_EMBEDDED | 146 | #ifndef PWM_EMBEDDED |
146 | if (isAdvancedComment()) { | 147 | if (isAdvancedComment()) { |
147 | return advCommentDta; | 148 | return advCommentDta; |
148 | } | 149 | } |
149 | #endif | 150 | #endif |
150 | return commentTextEdit->text(); | 151 | return commentTextEdit->text(); |
151 | } | 152 | } |
152 | 153 | ||
153 | void AddEntryWndImpl::setComment(const QString &comm) | 154 | void AddEntryWndImpl::setComment(const QString &comm) |
154 | { | 155 | { |
155 | #ifndef PWM_EMBEDDED | 156 | #ifndef PWM_EMBEDDED |
156 | if (HtmlGen::isHtml(comm)) { | 157 | if (HtmlGen::isHtml(comm)) { |
157 | advancedCommentButton->setOn(true); | 158 | advancedCommentButton->setOn(true); |
158 | advCommentDta = comm; | 159 | advCommentDta = comm; |
159 | } else { | 160 | } else { |
160 | advancedCommentButton->setOn(false); | 161 | advancedCommentButton->setOn(false); |
161 | commentTextEdit->setText(comm); | 162 | commentTextEdit->setText(comm); |
162 | } | 163 | } |
163 | #else | 164 | #else |
164 | commentTextEdit->setText(comm); | 165 | commentTextEdit->setText(comm); |
165 | #endif | 166 | #endif |
166 | } | 167 | } |
167 | 168 | ||
168 | void AddEntryWndImpl::advancedCommentButton_slot(bool on) | 169 | void AddEntryWndImpl::advancedCommentButton_slot(bool on) |
169 | { | 170 | { |
170 | #ifndef PWM_EMBEDDED | 171 | #ifndef PWM_EMBEDDED |
171 | switchComment(on); | 172 | switchComment(on); |
172 | #endif | 173 | #endif |
173 | } | 174 | } |
174 | 175 | ||
175 | void AddEntryWndImpl::switchComment(bool toAdvanced) | 176 | void AddEntryWndImpl::switchComment(bool toAdvanced) |
176 | { | 177 | { |
177 | #ifndef PWM_EMBEDDED | 178 | #ifndef PWM_EMBEDDED |
178 | 179 | ||
179 | useAdvComment = toAdvanced; | 180 | useAdvComment = toAdvanced; |
180 | if (toAdvanced) { | 181 | if (toAdvanced) { |
181 | if (commentTextEdit) { | 182 | if (commentTextEdit) { |
182 | savedCommentText = commentTextEdit->text(); | 183 | savedCommentText = commentTextEdit->text(); |
183 | delete_and_null(commentTextEdit); | 184 | delete_and_null(commentTextEdit); |
184 | } | 185 | } |
185 | if (editAdvCommentButton) | 186 | if (editAdvCommentButton) |
186 | return; | 187 | return; |
187 | editAdvCommentButton = new QPushButton(i18n("Edit advanced comment..."), | 188 | editAdvCommentButton = new QPushButton(i18n("Edit advanced comment..."), |
188 | commentDummy); | 189 | commentDummy); |
189 | editAdvCommentButton->resize(commentDummy->size().width(), 50); | 190 | editAdvCommentButton->resize(commentDummy->size().width(), 50); |
190 | connect(editAdvCommentButton, SIGNAL(clicked()), | 191 | connect(editAdvCommentButton, SIGNAL(clicked()), |
191 | this, SLOT(editAdvCommentButton_slot())); | 192 | this, SLOT(editAdvCommentButton_slot())); |
192 | editAdvCommentButton->show(); | 193 | editAdvCommentButton->show(); |
193 | } else { | 194 | } else { |
194 | delete_ifnot_null(editAdvCommentButton); | 195 | delete_ifnot_null(editAdvCommentButton); |
195 | if (commentTextEdit) | 196 | if (commentTextEdit) |
196 | return; | 197 | return; |
197 | 198 | ||
198 | commentTextEdit = new QTextEdit(commentDummy); | 199 | commentTextEdit = new QTextEdit(commentDummy); |
199 | commentTextEdit->setTextFormat(Qt::PlainText); | 200 | commentTextEdit->setTextFormat(Qt::PlainText); |
200 | commentTextEdit->resize(commentDummy->size()); | 201 | commentTextEdit->resize(commentDummy->size()); |
201 | commentTextEdit->setText(savedCommentText); | 202 | commentTextEdit->setText(savedCommentText); |
202 | commentTextEdit->show(); | 203 | commentTextEdit->show(); |
203 | } | 204 | } |
204 | #endif | 205 | #endif |
205 | } | 206 | } |
206 | 207 | ||
207 | void AddEntryWndImpl::editAdvCommentButton_slot() | 208 | void AddEntryWndImpl::editAdvCommentButton_slot() |
208 | { | 209 | { |
209 | #ifndef PWM_EMBEDDED | 210 | #ifndef PWM_EMBEDDED |
210 | AdvCommEditImpl editor(this); | 211 | AdvCommEditImpl editor(this); |
211 | editor.setHtmlDta(advCommentDta); | 212 | editor.setHtmlDta(advCommentDta); |
212 | if (editor.exec()) | 213 | if (editor.exec()) |
213 | return; | 214 | return; |
214 | advCommentDta = editor.getHtmlDta(); | 215 | advCommentDta = editor.getHtmlDta(); |
215 | #endif | 216 | #endif |
216 | } | 217 | } |
217 | 218 | ||
218 | #ifndef PWM_EMBEDDED | 219 | #ifndef PWM_EMBEDDED |
219 | #include "addentrywndimpl.moc" | 220 | #include "addentrywndimpl.moc" |
220 | #endif | 221 | #endif |
diff --git a/pwmanager/pwmanager/pwm.cpp b/pwmanager/pwmanager/pwm.cpp index 9187380..a751fce 100644 --- a/pwmanager/pwmanager/pwm.cpp +++ b/pwmanager/pwmanager/pwm.cpp | |||
@@ -60,503 +60,502 @@ | |||
60 | 60 | ||
61 | #include "pwm.h" | 61 | #include "pwm.h" |
62 | #include "pwminit.h" | 62 | #include "pwminit.h" |
63 | #include "pwmprint.h" | 63 | #include "pwmprint.h" |
64 | #include "addentrywndimpl.h" | 64 | #include "addentrywndimpl.h" |
65 | #include "globalstuff.h" | 65 | #include "globalstuff.h" |
66 | #include "findwndimpl.h" | 66 | #include "findwndimpl.h" |
67 | #include "csv.h" | 67 | #include "csv.h" |
68 | 68 | ||
69 | #ifdef CONFIG_KWALLETIF | 69 | #ifdef CONFIG_KWALLETIF |
70 | # include "kwalletif.h" | 70 | # include "kwalletif.h" |
71 | # include "kwalletemu.h" | 71 | # include "kwalletemu.h" |
72 | #endif | 72 | #endif |
73 | #ifdef CONFIG_KEYCARD | 73 | #ifdef CONFIG_KEYCARD |
74 | # include "pwmkeycard.h" | 74 | # include "pwmkeycard.h" |
75 | #endif | 75 | #endif |
76 | 76 | ||
77 | 77 | ||
78 | #define DEFAULT_SIZE (QSize(700, 400)) | 78 | #define DEFAULT_SIZE (QSize(700, 400)) |
79 | 79 | ||
80 | // Button IDs for "file" popup menu | 80 | // Button IDs for "file" popup menu |
81 | enum { | 81 | enum { |
82 | BUTTON_POPUP_FILE_NEW = 0, | 82 | BUTTON_POPUP_FILE_NEW = 0, |
83 | BUTTON_POPUP_FILE_OPEN, | 83 | BUTTON_POPUP_FILE_OPEN, |
84 | BUTTON_POPUP_FILE_CLOSE, | 84 | BUTTON_POPUP_FILE_CLOSE, |
85 | BUTTON_POPUP_FILE_SAVE, | 85 | BUTTON_POPUP_FILE_SAVE, |
86 | BUTTON_POPUP_FILE_SAVEAS, | 86 | BUTTON_POPUP_FILE_SAVEAS, |
87 | BUTTON_POPUP_FILE_EXPORT, | 87 | BUTTON_POPUP_FILE_EXPORT, |
88 | BUTTON_POPUP_FILE_IMPORT, | 88 | BUTTON_POPUP_FILE_IMPORT, |
89 | BUTTON_POPUP_FILE_PRINT, | 89 | BUTTON_POPUP_FILE_PRINT, |
90 | BUTTON_POPUP_FILE_QUIT | 90 | BUTTON_POPUP_FILE_QUIT |
91 | }; | 91 | }; |
92 | // Button IDs for "manage" popup menu | 92 | // Button IDs for "manage" popup menu |
93 | enum { | 93 | enum { |
94 | BUTTON_POPUP_MANAGE_ADD = 0, | 94 | BUTTON_POPUP_MANAGE_ADD = 0, |
95 | BUTTON_POPUP_MANAGE_EDIT, | 95 | BUTTON_POPUP_MANAGE_EDIT, |
96 | BUTTON_POPUP_MANAGE_DEL, | 96 | BUTTON_POPUP_MANAGE_DEL, |
97 | BUTTON_POPUP_MANAGE_CHANGEMP | 97 | BUTTON_POPUP_MANAGE_CHANGEMP |
98 | }; | 98 | }; |
99 | // Button IDs for chipcard popup menu | 99 | // Button IDs for chipcard popup menu |
100 | enum { | 100 | enum { |
101 | #ifdef CONFIG_KEYCARD | 101 | #ifdef CONFIG_KEYCARD |
102 | BUTTON_POPUP_CHIPCARD_GENNEW = 0, | 102 | BUTTON_POPUP_CHIPCARD_GENNEW = 0, |
103 | BUTTON_POPUP_CHIPCARD_DEL, | 103 | BUTTON_POPUP_CHIPCARD_DEL, |
104 | BUTTON_POPUP_CHIPCARD_READID, | 104 | BUTTON_POPUP_CHIPCARD_READID, |
105 | BUTTON_POPUP_CHIPCARD_SAVEBACKUP, | 105 | BUTTON_POPUP_CHIPCARD_SAVEBACKUP, |
106 | BUTTON_POPUP_CHIPCARD_REPLAYBACKUP | 106 | BUTTON_POPUP_CHIPCARD_REPLAYBACKUP |
107 | #else // CONFIG_KEYCARD | 107 | #else // CONFIG_KEYCARD |
108 | BUTTON_POPUP_CHIPCARD_NO = 0 | 108 | BUTTON_POPUP_CHIPCARD_NO = 0 |
109 | #endif // CONFIG_KEYCARD | 109 | #endif // CONFIG_KEYCARD |
110 | }; | 110 | }; |
111 | // Button IDs for "view" popup menu | 111 | // Button IDs for "view" popup menu |
112 | enum { | 112 | enum { |
113 | BUTTON_POPUP_VIEW_FIND = 0, | 113 | BUTTON_POPUP_VIEW_FIND = 0, |
114 | BUTTON_POPUP_VIEW_LOCK, | 114 | BUTTON_POPUP_VIEW_LOCK, |
115 | BUTTON_POPUP_VIEW_DEEPLOCK, | 115 | BUTTON_POPUP_VIEW_DEEPLOCK, |
116 | BUTTON_POPUP_VIEW_UNLOCK | 116 | BUTTON_POPUP_VIEW_UNLOCK |
117 | }; | 117 | }; |
118 | // Button IDs for "options" popup menu | 118 | // Button IDs for "options" popup menu |
119 | enum { | 119 | enum { |
120 | BUTTON_POPUP_OPTIONS_CONFIG = 0 | 120 | BUTTON_POPUP_OPTIONS_CONFIG = 0 |
121 | #ifdef PWM_EMBEDDED | 121 | #ifdef PWM_EMBEDDED |
122 | ,BUTTON_POPUP_OPTIONS_CATEGORY | 122 | ,BUTTON_POPUP_OPTIONS_CATEGORY |
123 | #endif | 123 | #endif |
124 | }; | 124 | }; |
125 | // Button IDs for "export" popup menu (in "file" popup menu) | 125 | // Button IDs for "export" popup menu (in "file" popup menu) |
126 | enum { | 126 | enum { |
127 | BUTTON_POPUP_EXPORT_TEXT = 0, | 127 | BUTTON_POPUP_EXPORT_TEXT = 0, |
128 | BUTTON_POPUP_EXPORT_GPASMAN, | 128 | BUTTON_POPUP_EXPORT_GPASMAN, |
129 | BUTTON_POPUP_EXPORT_CSV | 129 | BUTTON_POPUP_EXPORT_CSV |
130 | #ifdef CONFIG_KWALLETIF | 130 | #ifdef CONFIG_KWALLETIF |
131 | ,BUTTON_POPUP_EXPORT_KWALLET | 131 | ,BUTTON_POPUP_EXPORT_KWALLET |
132 | #endif | 132 | #endif |
133 | }; | 133 | }; |
134 | // Button IDs for "import" popup menu (in "file" popup menu) | 134 | // Button IDs for "import" popup menu (in "file" popup menu) |
135 | enum { | 135 | enum { |
136 | BUTTON_POPUP_IMPORT_TEXT = 0, | 136 | BUTTON_POPUP_IMPORT_TEXT = 0, |
137 | BUTTON_POPUP_IMPORT_GPASMAN, | 137 | BUTTON_POPUP_IMPORT_GPASMAN, |
138 | BUTTON_POPUP_IMPORT_CSV | 138 | BUTTON_POPUP_IMPORT_CSV |
139 | #ifdef CONFIG_KWALLETIF | 139 | #ifdef CONFIG_KWALLETIF |
140 | ,BUTTON_POPUP_IMPORT_KWALLET | 140 | ,BUTTON_POPUP_IMPORT_KWALLET |
141 | #endif | 141 | #endif |
142 | }; | 142 | }; |
143 | 143 | ||
144 | #ifdef PWM_EMBEDDED | 144 | #ifdef PWM_EMBEDDED |
145 | // Button IDs for "help" popup menu | 145 | // Button IDs for "help" popup menu |
146 | enum { | 146 | enum { |
147 | BUTTON_POPUP_HELP_LICENSE = 0, | 147 | BUTTON_POPUP_HELP_LICENSE = 0, |
148 | BUTTON_POPUP_HELP_FAQ, | 148 | BUTTON_POPUP_HELP_FAQ, |
149 | BUTTON_POPUP_HELP_ABOUT, | 149 | BUTTON_POPUP_HELP_ABOUT, |
150 | BUTTON_POPUP_HELP_SYNC, | 150 | BUTTON_POPUP_HELP_SYNC, |
151 | BUTTON_POPUP_HELP_WHATSNEW | 151 | BUTTON_POPUP_HELP_WHATSNEW |
152 | }; | 152 | }; |
153 | #endif | 153 | #endif |
154 | 154 | ||
155 | // Button IDs for toolbar | 155 | // Button IDs for toolbar |
156 | enum { | 156 | enum { |
157 | BUTTON_TOOL_NEW = 0, | 157 | BUTTON_TOOL_NEW = 0, |
158 | BUTTON_TOOL_OPEN, | 158 | BUTTON_TOOL_OPEN, |
159 | BUTTON_TOOL_SAVE, | 159 | BUTTON_TOOL_SAVE, |
160 | BUTTON_TOOL_SAVEAS, | 160 | BUTTON_TOOL_SAVEAS, |
161 | BUTTON_TOOL_PRINT, | 161 | BUTTON_TOOL_PRINT, |
162 | BUTTON_TOOL_ADD, | 162 | BUTTON_TOOL_ADD, |
163 | BUTTON_TOOL_EDIT, | 163 | BUTTON_TOOL_EDIT, |
164 | BUTTON_TOOL_DEL, | 164 | BUTTON_TOOL_DEL, |
165 | BUTTON_TOOL_FIND, | 165 | BUTTON_TOOL_FIND, |
166 | BUTTON_TOOL_LOCK, | 166 | BUTTON_TOOL_LOCK, |
167 | BUTTON_TOOL_DEEPLOCK, | 167 | BUTTON_TOOL_DEEPLOCK, |
168 | BUTTON_TOOL_UNLOCK | 168 | BUTTON_TOOL_UNLOCK |
169 | }; | 169 | }; |
170 | 170 | ||
171 | 171 | ||
172 | PwM::PwM(PwMInit *_init, PwMDoc *doc, | 172 | PwM::PwM(PwMInit *_init, PwMDoc *doc, |
173 | bool virginity, | 173 | bool virginity, |
174 | QWidget *parent, const char *name) | 174 | QWidget *parent, const char *name) |
175 | : KMainWindow(parent, "HALLO") | 175 | : KMainWindow(parent, "HALLO") |
176 | , forceQuit (false) | 176 | , forceQuit (false) |
177 | , forceMinimizeToTray (false) | 177 | , forceMinimizeToTray (false) |
178 | { | 178 | { |
179 | syncManager = 0; | 179 | syncManager = 0; |
180 | virgin = !virginity; | 180 | virgin = !virginity; |
181 | init = _init; | 181 | init = _init; |
182 | connect(doc, SIGNAL(docClosed(PwMDoc *)), | 182 | connect(doc, SIGNAL(docClosed(PwMDoc *)), |
183 | this, SLOT(docClosed(PwMDoc *))); | 183 | this, SLOT(docClosed(PwMDoc *))); |
184 | initMenubar(); | 184 | initMenubar(); |
185 | initToolbar(); | 185 | initToolbar(); |
186 | initMetrics(); | 186 | initMetrics(); |
187 | setVirgin(virginity); | 187 | setVirgin(virginity); |
188 | setFocusPolicy(QWidget::WheelFocus); | 188 | setFocusPolicy(QWidget::WheelFocus); |
189 | #ifndef PWM_EMBEDDED | 189 | #ifndef PWM_EMBEDDED |
190 | statusBar()->show(); | 190 | statusBar()->show(); |
191 | #endif | 191 | #endif |
192 | view = makeNewListView(doc); | 192 | view = makeNewListView(doc); |
193 | setCentralWidget(view); | 193 | setCentralWidget(view); |
194 | updateCaption(); | 194 | updateCaption(); |
195 | showStatMsg(i18n("Ready.")); | 195 | showStatMsg(i18n("Ready.")); |
196 | } | 196 | } |
197 | 197 | ||
198 | PwM::~PwM() | 198 | PwM::~PwM() |
199 | { | 199 | { |
200 | //qDebug("PwM::~PwM() %x", this); | 200 | //qDebug("PwM::~PwM() %x", this); |
201 | disconnect(curDoc(), SIGNAL(docClosed(PwMDoc *)), | 201 | disconnect(curDoc(), SIGNAL(docClosed(PwMDoc *)), |
202 | this, SLOT(docClosed(PwMDoc *))); | 202 | this, SLOT(docClosed(PwMDoc *))); |
203 | conf()->confWndMainWndSize(size()); | 203 | conf()->confWndMainWndSize(size()); |
204 | //LR closing of windows changed | 204 | //LR closing of windows changed |
205 | //needed for fastload option on PDA | 205 | //needed for fastload option on PDA |
206 | //emit closed(this); | 206 | //emit closed(this); |
207 | //qDebug("PwM::~PwM() emited closed(this)"); | 207 | //qDebug("PwM::~PwM() emited closed(this)"); |
208 | delete view; | 208 | delete view; |
209 | delete syncManager; | 209 | delete syncManager; |
210 | } | 210 | } |
211 | 211 | ||
212 | void PwM::initMenubar() | 212 | void PwM::initMenubar() |
213 | { | 213 | { |
214 | KIconLoader* picons; | 214 | KIconLoader* picons; |
215 | #ifndef PWM_EMBEDDED | 215 | #ifndef PWM_EMBEDDED |
216 | KIconLoader icons; | 216 | KIconLoader icons; |
217 | picons = &icons; | 217 | picons = &icons; |
218 | #else | 218 | #else |
219 | picons = KGlobal::iconLoader(); | 219 | picons = KGlobal::iconLoader(); |
220 | 220 | ||
221 | 221 | ||
222 | syncPopup = new KPopupMenu(this); | 222 | syncPopup = new KPopupMenu(this); |
223 | 223 | ||
224 | syncManager = new KSyncManager((QWidget*)this, (KSyncInterface*)this, KSyncManager::PWMPI, PWMPrefs::instance(), syncPopup); | 224 | syncManager = new KSyncManager((QWidget*)this, (KSyncInterface*)this, KSyncManager::PWMPI, PWMPrefs::instance(), syncPopup); |
225 | syncManager->setBlockSave(false); | 225 | syncManager->setBlockSave(false); |
226 | 226 | ||
227 | connect ( syncPopup, SIGNAL( activated ( int ) ), syncManager, SLOT (slotSyncMenu( int ) ) ); | 227 | connect ( syncPopup, SIGNAL( activated ( int ) ), syncManager, SLOT (slotSyncMenu( int ) ) ); |
228 | syncManager->fillSyncMenu(); | 228 | syncManager->fillSyncMenu(); |
229 | 229 | ||
230 | #endif | 230 | #endif |
231 | filePopup = new KPopupMenu(this); | 231 | filePopup = new KPopupMenu(this); |
232 | importPopup = new KPopupMenu(filePopup); | 232 | importPopup = new KPopupMenu(filePopup); |
233 | exportPopup = new KPopupMenu(filePopup); | 233 | exportPopup = new KPopupMenu(filePopup); |
234 | managePopup = new KPopupMenu(this); | 234 | managePopup = new KPopupMenu(this); |
235 | #ifdef CONFIG_KEYCARD | 235 | #ifdef CONFIG_KEYCARD |
236 | chipcardPopup = new KPopupMenu(this); | 236 | chipcardPopup = new KPopupMenu(this); |
237 | #endif // CONFIG_KEYCARD | 237 | #endif // CONFIG_KEYCARD |
238 | viewPopup = new KPopupMenu(this); | 238 | viewPopup = new KPopupMenu(this); |
239 | optionsPopup = new KPopupMenu(this); | 239 | optionsPopup = new KPopupMenu(this); |
240 | 240 | ||
241 | // "file" popup menu | 241 | // "file" popup menu |
242 | filePopup->insertItem(QIconSet(picons->loadIcon("filenew", KIcon::Small)), | 242 | filePopup->insertItem(QIconSet(picons->loadIcon("filenew", KIcon::Small)), |
243 | i18n("&New"), this, | 243 | i18n("&New"), this, |
244 | SLOT(new_slot()), 0, BUTTON_POPUP_FILE_NEW); | 244 | SLOT(new_slot()), 0, BUTTON_POPUP_FILE_NEW); |
245 | filePopup->insertItem(QIconSet(picons->loadIcon("fileopen", KIcon::Small)), | 245 | filePopup->insertItem(QIconSet(picons->loadIcon("fileopen", KIcon::Small)), |
246 | i18n("&Open"), this, | 246 | i18n("&Open"), this, |
247 | SLOT(open_slot()), 0, BUTTON_POPUP_FILE_OPEN); | 247 | SLOT(open_slot()), 0, BUTTON_POPUP_FILE_OPEN); |
248 | filePopup->insertItem(QIconSet(picons->loadIcon("fileclose", KIcon::Small)), | 248 | filePopup->insertItem(QIconSet(picons->loadIcon("fileclose", KIcon::Small)), |
249 | i18n("&Close"), this, | 249 | i18n("&Close"), this, |
250 | SLOT(close_slot()), 0, BUTTON_POPUP_FILE_CLOSE); | 250 | SLOT(close_slot()), 0, BUTTON_POPUP_FILE_CLOSE); |
251 | filePopup->insertSeparator(); | 251 | filePopup->insertSeparator(); |
252 | filePopup->insertItem(QIconSet(picons->loadIcon("pencil", KIcon::Small)), | ||
253 | i18n("&Add password"), this, | ||
254 | SLOT(addPwd_slot()), 0, | ||
255 | BUTTON_POPUP_MANAGE_ADD); | ||
256 | filePopup->insertSeparator(); | ||
257 | filePopup->insertItem(QIconSet(picons->loadIcon("filesave", KIcon::Small)), | 252 | filePopup->insertItem(QIconSet(picons->loadIcon("filesave", KIcon::Small)), |
258 | i18n("&Save"), this, | 253 | i18n("&Save"), this, |
259 | SLOT(save_slot()), 0, BUTTON_POPUP_FILE_SAVE); | 254 | SLOT(save_slot()), 0, BUTTON_POPUP_FILE_SAVE); |
260 | filePopup->insertItem(QIconSet(picons->loadIcon("filesaveas", KIcon::Small)), | 255 | filePopup->insertItem(QIconSet(picons->loadIcon("filesaveas", KIcon::Small)), |
261 | i18n("Save &as..."), | 256 | i18n("Save &as..."), |
262 | this, SLOT(saveAs_slot()), 0, | 257 | this, SLOT(saveAs_slot()), 0, |
263 | BUTTON_POPUP_FILE_SAVEAS); | 258 | BUTTON_POPUP_FILE_SAVEAS); |
264 | filePopup->insertSeparator(); | 259 | filePopup->insertSeparator(); |
265 | // "file/export" popup menu | 260 | // "file/export" popup menu |
266 | exportPopup->insertItem(i18n("&Text-file..."), this, | 261 | exportPopup->insertItem(i18n("&Text-file..."), this, |
267 | SLOT(exportToText()), 0, BUTTON_POPUP_EXPORT_TEXT); | 262 | SLOT(exportToText()), 0, BUTTON_POPUP_EXPORT_TEXT); |
268 | exportPopup->insertItem(i18n("&Gpasman / Kpasman ..."), this, | 263 | exportPopup->insertItem(i18n("&Gpasman / Kpasman ..."), this, |
269 | SLOT(exportToGpasman()), 0, BUTTON_POPUP_EXPORT_GPASMAN); | 264 | SLOT(exportToGpasman()), 0, BUTTON_POPUP_EXPORT_GPASMAN); |
270 | exportPopup->insertItem(i18n("&CSV (Comma Separated Value) ..."), this, | 265 | exportPopup->insertItem(i18n("&CSV (Comma Separated Value) ..."), this, |
271 | SLOT(exportToCsv()), 0, BUTTON_POPUP_EXPORT_CSV); | 266 | SLOT(exportToCsv()), 0, BUTTON_POPUP_EXPORT_CSV); |
272 | #ifdef CONFIG_KWALLETIF | 267 | #ifdef CONFIG_KWALLETIF |
273 | exportPopup->insertItem(i18n("&KWallet..."), this, | 268 | exportPopup->insertItem(i18n("&KWallet..."), this, |
274 | SLOT(exportToKWallet()), 0, BUTTON_POPUP_EXPORT_KWALLET); | 269 | SLOT(exportToKWallet()), 0, BUTTON_POPUP_EXPORT_KWALLET); |
275 | #endif | 270 | #endif |
276 | filePopup->insertItem(QIconSet(picons->loadIcon("fileexport", KIcon::Small)), | 271 | filePopup->insertItem(QIconSet(picons->loadIcon("fileexport", KIcon::Small)), |
277 | i18n("E&xport"), exportPopup, | 272 | i18n("E&xport"), exportPopup, |
278 | BUTTON_POPUP_FILE_EXPORT); | 273 | BUTTON_POPUP_FILE_EXPORT); |
279 | // "file/import" popup menu | 274 | // "file/import" popup menu |
280 | importPopup->insertItem(i18n("&Text-file..."), this, | 275 | importPopup->insertItem(i18n("&Text-file..."), this, |
281 | SLOT(importFromText()), 0, BUTTON_POPUP_IMPORT_TEXT); | 276 | SLOT(importFromText()), 0, BUTTON_POPUP_IMPORT_TEXT); |
282 | importPopup->insertItem(i18n("&Gpasman / Kpasman ..."), this, | 277 | importPopup->insertItem(i18n("&Gpasman / Kpasman ..."), this, |
283 | SLOT(importFromGpasman()), 0, BUTTON_POPUP_IMPORT_GPASMAN); | 278 | SLOT(importFromGpasman()), 0, BUTTON_POPUP_IMPORT_GPASMAN); |
284 | importPopup->insertItem(i18n("&CSV (Comma Separated Value) ..."), this, | 279 | importPopup->insertItem(i18n("&CSV (Comma Separated Value) ..."), this, |
285 | SLOT(importCsv()), 0, BUTTON_POPUP_IMPORT_CSV); | 280 | SLOT(importCsv()), 0, BUTTON_POPUP_IMPORT_CSV); |
286 | #ifdef CONFIG_KWALLETIF | 281 | #ifdef CONFIG_KWALLETIF |
287 | importPopup->insertItem(i18n("&KWallet..."), this, | 282 | importPopup->insertItem(i18n("&KWallet..."), this, |
288 | SLOT(importKWallet()), 0, BUTTON_POPUP_IMPORT_KWALLET); | 283 | SLOT(importKWallet()), 0, BUTTON_POPUP_IMPORT_KWALLET); |
289 | #endif | 284 | #endif |
290 | filePopup->insertItem(QIconSet(picons->loadIcon("fileimport", KIcon::Small)), | 285 | filePopup->insertItem(QIconSet(picons->loadIcon("fileimport", KIcon::Small)), |
291 | i18n("I&mport"), importPopup, | 286 | i18n("I&mport"), importPopup, |
292 | BUTTON_POPUP_FILE_IMPORT); | 287 | BUTTON_POPUP_FILE_IMPORT); |
293 | filePopup->insertSeparator(); | 288 | filePopup->insertSeparator(); |
294 | #if 0 | 289 | #if 0 |
295 | filePopup->insertItem(QIconSet(picons->loadIcon("fileprint", KIcon::Small)), | 290 | filePopup->insertItem(QIconSet(picons->loadIcon("fileprint", KIcon::Small)), |
296 | i18n("&Print..."), this, | 291 | i18n("&Print..."), this, |
297 | SLOT(print_slot()), 0, BUTTON_POPUP_FILE_PRINT); | 292 | SLOT(print_slot()), 0, BUTTON_POPUP_FILE_PRINT); |
298 | filePopup->insertSeparator(); | 293 | filePopup->insertSeparator(); |
299 | #endif | 294 | #endif |
300 | filePopup->insertItem(QIconSet(picons->loadIcon("exit", KIcon::Small)), | 295 | filePopup->insertItem(QIconSet(picons->loadIcon("exit", KIcon::Small)), |
301 | i18n("&Quit"), this, | 296 | i18n("&Quit"), this, |
302 | SLOT(quitButton_slot()), 0, BUTTON_POPUP_FILE_QUIT); | 297 | SLOT(quitButton_slot()), 0, BUTTON_POPUP_FILE_QUIT); |
303 | menuBar()->insertItem(i18n("&File"), filePopup); | 298 | menuBar()->insertItem(i18n("&File"), filePopup); |
304 | // "manage" popup menu | 299 | // "manage" popup menu |
305 | managePopup->insertItem(QIconSet(picons->loadIcon("pencil", KIcon::Small)), | 300 | managePopup->insertItem(QIconSet(picons->loadIcon("pencil", KIcon::Small)), |
306 | i18n("&Add password"), this, | 301 | i18n("&Add password"), this, |
307 | SLOT(addPwd_slot()), 0, | 302 | SLOT(addPwd_slot()), 0, |
308 | BUTTON_POPUP_MANAGE_ADD); | 303 | BUTTON_POPUP_MANAGE_ADD); |
309 | managePopup->insertSeparator(); | 304 | managePopup->insertSeparator(); |
310 | managePopup->insertItem(QIconSet(picons->loadIcon("edit", KIcon::Small)), | 305 | managePopup->insertItem(QIconSet(picons->loadIcon("edit", KIcon::Small)), |
311 | i18n("&Edit"), this, SLOT(editPwd_slot()), 0, | 306 | i18n("&Edit"), this, SLOT(editPwd_slot()), 0, |
312 | BUTTON_POPUP_MANAGE_EDIT); | 307 | BUTTON_POPUP_MANAGE_EDIT); |
313 | managePopup->insertItem(QIconSet(picons->loadIcon("editdelete", KIcon::Small)), | 308 | managePopup->insertItem(QIconSet(picons->loadIcon("editdelete", KIcon::Small)), |
314 | i18n("&Delete"), this, SLOT(deletePwd_slot()), | 309 | i18n("&Delete"), this, SLOT(deletePwd_slot()), |
315 | 0, BUTTON_POPUP_MANAGE_DEL); | 310 | 0, BUTTON_POPUP_MANAGE_DEL); |
316 | managePopup->insertSeparator(); | 311 | managePopup->insertSeparator(); |
317 | managePopup->insertItem(QIconSet(picons->loadIcon("rotate", KIcon::Small)), | 312 | managePopup->insertItem(QIconSet(picons->loadIcon("rotate", KIcon::Small)), |
318 | i18n("Change &Master Password"), this, | 313 | i18n("Change &Master Password"), this, |
319 | SLOT(changeMasterPwd_slot()), 0, | 314 | SLOT(changeMasterPwd_slot()), 0, |
320 | BUTTON_POPUP_MANAGE_CHANGEMP); | 315 | BUTTON_POPUP_MANAGE_CHANGEMP); |
321 | menuBar()->insertItem(i18n("&Manage"), managePopup); | 316 | menuBar()->insertItem(i18n("&Manage"), managePopup); |
322 | // "chipcard" popup menu | 317 | // "chipcard" popup menu |
323 | #ifdef CONFIG_KEYCARD | 318 | #ifdef CONFIG_KEYCARD |
324 | chipcardPopup->insertItem(QIconSet(picons->loadIcon("filenew", KIcon::Small)), | 319 | chipcardPopup->insertItem(QIconSet(picons->loadIcon("filenew", KIcon::Small)), |
325 | i18n("&Generate new key-card"), this, | 320 | i18n("&Generate new key-card"), this, |
326 | SLOT(genNewCard_slot()), 0, | 321 | SLOT(genNewCard_slot()), 0, |
327 | BUTTON_POPUP_CHIPCARD_GENNEW); | 322 | BUTTON_POPUP_CHIPCARD_GENNEW); |
328 | chipcardPopup->insertItem(QIconSet(picons->loadIcon("editdelete", KIcon::Small)), | 323 | chipcardPopup->insertItem(QIconSet(picons->loadIcon("editdelete", KIcon::Small)), |
329 | i18n("&Erase key-card"), this, | 324 | i18n("&Erase key-card"), this, |
330 | SLOT(eraseCard_slot()), 0, | 325 | SLOT(eraseCard_slot()), 0, |
331 | BUTTON_POPUP_CHIPCARD_DEL); | 326 | BUTTON_POPUP_CHIPCARD_DEL); |
332 | chipcardPopup->insertItem(QIconSet(picons->loadIcon("", KIcon::Small)), | 327 | chipcardPopup->insertItem(QIconSet(picons->loadIcon("", KIcon::Small)), |
333 | i18n("Read card-&ID"), this, | 328 | i18n("Read card-&ID"), this, |
334 | SLOT(readCardId_slot()), 0, | 329 | SLOT(readCardId_slot()), 0, |
335 | BUTTON_POPUP_CHIPCARD_READID); | 330 | BUTTON_POPUP_CHIPCARD_READID); |
336 | chipcardPopup->insertSeparator(); | 331 | chipcardPopup->insertSeparator(); |
337 | chipcardPopup->insertItem(QIconSet(picons->loadIcon("2rightarrow", KIcon::Small)), | 332 | chipcardPopup->insertItem(QIconSet(picons->loadIcon("2rightarrow", KIcon::Small)), |
338 | i18n("&Make card backup-image"), this, | 333 | i18n("&Make card backup-image"), this, |
339 | SLOT(makeCardBackup_slot()), 0, | 334 | SLOT(makeCardBackup_slot()), 0, |
340 | BUTTON_POPUP_CHIPCARD_SAVEBACKUP); | 335 | BUTTON_POPUP_CHIPCARD_SAVEBACKUP); |
341 | chipcardPopup->insertItem(QIconSet(picons->loadIcon("2leftarrow", KIcon::Small)), | 336 | chipcardPopup->insertItem(QIconSet(picons->loadIcon("2leftarrow", KIcon::Small)), |
342 | i18n("&Replay card backup-image"), this, | 337 | i18n("&Replay card backup-image"), this, |
343 | SLOT(replayCardBackup_slot()), 0, | 338 | SLOT(replayCardBackup_slot()), 0, |
344 | BUTTON_POPUP_CHIPCARD_REPLAYBACKUP); | 339 | BUTTON_POPUP_CHIPCARD_REPLAYBACKUP); |
345 | menuBar()->insertItem(i18n("&Chipcard manager"), chipcardPopup); | 340 | menuBar()->insertItem(i18n("&Chipcard manager"), chipcardPopup); |
346 | #endif // CONFIG_KEYCARD | 341 | #endif // CONFIG_KEYCARD |
347 | // "view" popup menu | 342 | // "view" popup menu |
348 | viewPopup->insertItem(QIconSet(picons->loadIcon("find", KIcon::Small)), | 343 | viewPopup->insertItem(QIconSet(picons->loadIcon("find", KIcon::Small)), |
349 | i18n("&Find"), this, | 344 | i18n("&Find"), this, |
350 | SLOT(find_slot()), 0, BUTTON_POPUP_VIEW_FIND); | 345 | SLOT(find_slot()), 0, BUTTON_POPUP_VIEW_FIND); |
351 | viewPopup->insertSeparator(); | 346 | viewPopup->insertSeparator(); |
352 | viewPopup->insertItem(QIconSet(picons->loadIcon("halfencrypted", KIcon::Small)), | 347 | viewPopup->insertItem(QIconSet(picons->loadIcon("halfencrypted", KIcon::Small)), |
353 | i18n("&Lock all entries"), this, | 348 | i18n("&Lock all entries"), this, |
354 | SLOT(lockWnd_slot()), 0, | 349 | SLOT(lockWnd_slot()), 0, |
355 | BUTTON_POPUP_VIEW_LOCK); | 350 | BUTTON_POPUP_VIEW_LOCK); |
356 | viewPopup->insertItem(QIconSet(picons->loadIcon("encrypted", KIcon::Small)), | 351 | viewPopup->insertItem(QIconSet(picons->loadIcon("encrypted", KIcon::Small)), |
357 | i18n("&Deep-lock all entries"), this, | 352 | i18n("&Deep-lock all entries"), this, |
358 | SLOT(deepLockWnd_slot()), 0, | 353 | SLOT(deepLockWnd_slot()), 0, |
359 | BUTTON_POPUP_VIEW_DEEPLOCK); | 354 | BUTTON_POPUP_VIEW_DEEPLOCK); |
360 | viewPopup->insertItem(QIconSet(picons->loadIcon("decrypted", KIcon::Small)), | 355 | viewPopup->insertItem(QIconSet(picons->loadIcon("decrypted", KIcon::Small)), |
361 | i18n("&Unlock all entries"), this, | 356 | i18n("&Unlock all entries"), this, |
362 | SLOT(unlockWnd_slot()), 0, | 357 | SLOT(unlockWnd_slot()), 0, |
363 | BUTTON_POPUP_VIEW_UNLOCK); | 358 | BUTTON_POPUP_VIEW_UNLOCK); |
364 | menuBar()->insertItem(i18n("&View"), viewPopup); | 359 | menuBar()->insertItem(i18n("&View"), viewPopup); |
365 | // "options" popup menu | 360 | // "options" popup menu |
366 | optionsPopup->insertItem(QIconSet(picons->loadIcon("configure", KIcon::Small)), | 361 | optionsPopup->insertItem(QIconSet(picons->loadIcon("configure", KIcon::Small)), |
367 | i18n("&Configure..."), this, | 362 | i18n("&Configure..."), this, |
368 | SLOT(config_slot()),0, | 363 | SLOT(config_slot()),0, |
369 | BUTTON_POPUP_OPTIONS_CONFIG); | 364 | BUTTON_POPUP_OPTIONS_CONFIG); |
370 | menuBar()->insertItem(i18n("&Options"), optionsPopup); | 365 | if ( QApplication::desktop()->width() <= 240 ) { |
366 | managePopup->insertSeparator(); | ||
367 | managePopup->insertItem(i18n("&Options"), optionsPopup); | ||
368 | } else | ||
369 | menuBar()->insertItem(i18n("&Options"), optionsPopup); | ||
371 | // "help" popup menu | 370 | // "help" popup menu |
372 | #ifndef PWM_EMBEDDED | 371 | #ifndef PWM_EMBEDDED |
373 | helpPopup = helpMenu(QString::null, false); | 372 | helpPopup = helpMenu(QString::null, false); |
374 | #else | 373 | #else |
375 | optionsPopup->insertItem(QIconSet(picons->loadIcon("configure", KIcon::Small)), | 374 | optionsPopup->insertItem(QIconSet(picons->loadIcon("configure", KIcon::Small)), |
376 | i18n("C&ategories..."), this, | 375 | i18n("C&ategories..."), this, |
377 | SLOT(category_slot()),0, | 376 | SLOT(category_slot()),0, |
378 | BUTTON_POPUP_OPTIONS_CATEGORY); | 377 | BUTTON_POPUP_OPTIONS_CATEGORY); |
379 | 378 | ||
380 | 379 | ||
381 | menuBar()->insertItem(i18n("&Sync"), syncPopup); | 380 | menuBar()->insertItem(i18n("&Sync"), syncPopup); |
382 | 381 | ||
383 | 382 | ||
384 | 383 | ||
385 | 384 | ||
386 | 385 | ||
387 | helpPopup = new KPopupMenu(this); | 386 | helpPopup = new KPopupMenu(this); |
388 | 387 | ||
389 | 388 | ||
390 | helpPopup->insertItem(i18n("&License"), this, | 389 | helpPopup->insertItem(i18n("&License"), this, |
391 | SLOT(showLicense_slot()), 0, | 390 | SLOT(showLicense_slot()), 0, |
392 | BUTTON_POPUP_HELP_LICENSE); | 391 | BUTTON_POPUP_HELP_LICENSE); |
393 | 392 | ||
394 | helpPopup->insertItem(i18n("&Faq"), this, | 393 | helpPopup->insertItem(i18n("&Faq"), this, |
395 | SLOT(faq_slot()), 0, | 394 | SLOT(faq_slot()), 0, |
396 | BUTTON_POPUP_HELP_FAQ); | 395 | BUTTON_POPUP_HELP_FAQ); |
397 | 396 | ||
398 | helpPopup->insertItem(i18n("&About PwManager"), this, | 397 | helpPopup->insertItem(i18n("&About PwManager"), this, |
399 | SLOT(createAboutData_slot()), 0, | 398 | SLOT(createAboutData_slot()), 0, |
400 | BUTTON_POPUP_HELP_ABOUT); | 399 | BUTTON_POPUP_HELP_ABOUT); |
401 | 400 | ||
402 | helpPopup->insertItem(i18n("&Sync HowTo"), this, | 401 | helpPopup->insertItem(i18n("&Sync HowTo"), this, |
403 | SLOT(syncHowTo_slot()), 0, | 402 | SLOT(syncHowTo_slot()), 0, |
404 | BUTTON_POPUP_HELP_SYNC); | 403 | BUTTON_POPUP_HELP_SYNC); |
405 | 404 | ||
406 | helpPopup->insertItem(i18n("&What's New"), this, | 405 | helpPopup->insertItem(i18n("&What's New"), this, |
407 | SLOT(whatsnew_slot()), 0, | 406 | SLOT(whatsnew_slot()), 0, |
408 | BUTTON_POPUP_HELP_WHATSNEW); | 407 | BUTTON_POPUP_HELP_WHATSNEW); |
409 | 408 | ||
410 | #endif | 409 | #endif |
411 | menuBar()->insertItem(i18n("&Help"), helpPopup); | 410 | menuBar()->insertItem(i18n("&Help"), helpPopup); |
412 | 411 | ||
413 | } | 412 | } |
414 | 413 | ||
415 | void PwM::initToolbar() | 414 | void PwM::initToolbar() |
416 | { | 415 | { |
417 | KIconLoader* picons; | 416 | KIconLoader* picons; |
418 | #ifndef PWM_EMBEDDED | 417 | #ifndef PWM_EMBEDDED |
419 | KIconLoader icons; | 418 | KIconLoader icons; |
420 | picons = &icons; | 419 | picons = &icons; |
421 | #else | 420 | #else |
422 | picons = KGlobal::iconLoader(); | 421 | picons = KGlobal::iconLoader(); |
423 | #endif | 422 | #endif |
424 | 423 | ||
425 | #if 0 | 424 | #if 0 |
426 | toolBar()->insertButton(picons->loadIcon("filenew", KIcon::Toolbar), | 425 | toolBar()->insertButton(picons->loadIcon("filenew", KIcon::Toolbar), |
427 | BUTTON_TOOL_NEW, SIGNAL(clicked(int)), this, | 426 | BUTTON_TOOL_NEW, SIGNAL(clicked(int)), this, |
428 | SLOT(new_slot()), true, i18n("New")); | 427 | SLOT(new_slot()), true, i18n("New")); |
429 | #endif | 428 | #endif |
430 | toolBar()->insertButton(picons->loadIcon("fileopen", KIcon::Toolbar), | 429 | toolBar()->insertButton(picons->loadIcon("fileopen", KIcon::Toolbar), |
431 | BUTTON_TOOL_OPEN, SIGNAL(clicked(int)), this, | 430 | BUTTON_TOOL_OPEN, SIGNAL(clicked(int)), this, |
432 | SLOT(open_slot()), true, i18n("Open")); | 431 | SLOT(open_slot()), true, i18n("Open")); |
433 | toolBar()->insertButton(picons->loadIcon("pencil", KIcon::Toolbar), | 432 | toolBar()->insertButton(picons->loadIcon("pencil", KIcon::Toolbar), |
434 | BUTTON_TOOL_ADD, SIGNAL(clicked(int)), this, | 433 | BUTTON_TOOL_ADD, SIGNAL(clicked(int)), this, |
435 | SLOT(addPwd_slot()), true, | 434 | SLOT(addPwd_slot()), true, |
436 | i18n("Add password")); | 435 | i18n("Add password")); |
437 | toolBar()->insertSeparator(); | 436 | toolBar()->insertSeparator(); |
438 | 437 | ||
439 | toolBar()->insertButton(picons->loadIcon("find", KIcon::Toolbar), | 438 | toolBar()->insertButton(picons->loadIcon("find", KIcon::Toolbar), |
440 | BUTTON_TOOL_FIND, SIGNAL(clicked(int)), this, | 439 | BUTTON_TOOL_FIND, SIGNAL(clicked(int)), this, |
441 | SLOT(find_slot()), true, i18n("Find entry")); | 440 | SLOT(find_slot()), true, i18n("Find entry")); |
442 | toolBar()->insertSeparator(); | 441 | toolBar()->insertSeparator(); |
443 | toolBar()->insertButton(picons->loadIcon("filesave", KIcon::Toolbar), | 442 | toolBar()->insertButton(picons->loadIcon("filesave", KIcon::Toolbar), |
444 | BUTTON_TOOL_SAVE, SIGNAL(clicked(int)), this, | 443 | BUTTON_TOOL_SAVE, SIGNAL(clicked(int)), this, |
445 | SLOT(save_slot()), true, i18n("Save")); | 444 | SLOT(save_slot()), true, i18n("Save")); |
446 | #if 0 | 445 | #if 0 |
447 | toolBar()->insertButton(picons->loadIcon("filesaveas", KIcon::Toolbar), | 446 | toolBar()->insertButton(picons->loadIcon("filesaveas", KIcon::Toolbar), |
448 | BUTTON_TOOL_SAVEAS, SIGNAL(clicked(int)), this, | 447 | BUTTON_TOOL_SAVEAS, SIGNAL(clicked(int)), this, |
449 | SLOT(saveAs_slot()), true, i18n("Save as")); | 448 | SLOT(saveAs_slot()), true, i18n("Save as")); |
450 | #endif | 449 | #endif |
451 | 450 | ||
452 | 451 | ||
453 | #if 0 | 452 | #if 0 |
454 | toolBar()->insertButton(picons->loadIcon("fileprint", KIcon::Toolbar), | 453 | toolBar()->insertButton(picons->loadIcon("fileprint", KIcon::Toolbar), |
455 | BUTTON_TOOL_PRINT, SIGNAL(clicked(int)), this, | 454 | BUTTON_TOOL_PRINT, SIGNAL(clicked(int)), this, |
456 | SLOT(print_slot()), true, i18n("Print...")); | 455 | SLOT(print_slot()), true, i18n("Print...")); |
457 | #endif | 456 | #endif |
458 | toolBar()->insertSeparator(); | 457 | toolBar()->insertSeparator(); |
459 | toolBar()->insertButton(picons->loadIcon("edit", KIcon::Toolbar), | 458 | toolBar()->insertButton(picons->loadIcon("edit", KIcon::Toolbar), |
460 | BUTTON_TOOL_EDIT, SIGNAL(clicked(int)), this, | 459 | BUTTON_TOOL_EDIT, SIGNAL(clicked(int)), this, |
461 | SLOT(editPwd_slot()), true, | 460 | SLOT(editPwd_slot()), true, |
462 | i18n("Edit password")); | 461 | i18n("Edit password")); |
463 | toolBar()->insertButton(picons->loadIcon("editdelete", KIcon::Toolbar), | 462 | toolBar()->insertButton(picons->loadIcon("editdelete", KIcon::Toolbar), |
464 | BUTTON_TOOL_DEL, SIGNAL(clicked(int)), this, | 463 | BUTTON_TOOL_DEL, SIGNAL(clicked(int)), this, |
465 | SLOT(deletePwd_slot()), true, | 464 | SLOT(deletePwd_slot()), true, |
466 | i18n("Delete password")); | 465 | i18n("Delete password")); |
467 | toolBar()->insertSeparator(); | 466 | toolBar()->insertSeparator(); |
468 | toolBar()->insertButton(picons->loadIcon("halfencrypted", KIcon::Toolbar), | 467 | toolBar()->insertButton(picons->loadIcon("halfencrypted", KIcon::Toolbar), |
469 | BUTTON_TOOL_LOCK, SIGNAL(clicked(int)), this, | 468 | BUTTON_TOOL_LOCK, SIGNAL(clicked(int)), this, |
470 | SLOT(lockWnd_slot()), true, | 469 | SLOT(lockWnd_slot()), true, |
471 | i18n("Lock all entries")); | 470 | i18n("Lock all entries")); |
472 | toolBar()->insertButton(picons->loadIcon("encrypted", KIcon::Toolbar), | 471 | toolBar()->insertButton(picons->loadIcon("encrypted", KIcon::Toolbar), |
473 | BUTTON_TOOL_DEEPLOCK, SIGNAL(clicked(int)), this, | 472 | BUTTON_TOOL_DEEPLOCK, SIGNAL(clicked(int)), this, |
474 | SLOT(deepLockWnd_slot()), true, | 473 | SLOT(deepLockWnd_slot()), true, |
475 | i18n("Deep-Lock all entries")); | 474 | i18n("Deep-Lock all entries")); |
476 | toolBar()->insertButton(picons->loadIcon("decrypted", KIcon::Toolbar), | 475 | toolBar()->insertButton(picons->loadIcon("decrypted", KIcon::Toolbar), |
477 | BUTTON_TOOL_UNLOCK, SIGNAL(clicked(int)), this, | 476 | BUTTON_TOOL_UNLOCK, SIGNAL(clicked(int)), this, |
478 | SLOT(unlockWnd_slot()), true, | 477 | SLOT(unlockWnd_slot()), true, |
479 | i18n("Unlock all entries")); | 478 | i18n("Unlock all entries")); |
480 | } | 479 | } |
481 | 480 | ||
482 | void PwM::initMetrics() | 481 | void PwM::initMetrics() |
483 | { | 482 | { |
484 | QSize s = conf()->confWndMainWndSize(); | 483 | QSize s = conf()->confWndMainWndSize(); |
485 | if (s.isValid()) | 484 | if (s.isValid()) |
486 | resize(s); | 485 | resize(s); |
487 | else | 486 | else |
488 | resize(DEFAULT_SIZE); | 487 | resize(DEFAULT_SIZE); |
489 | } | 488 | } |
490 | 489 | ||
491 | void PwM::updateCaption() | 490 | void PwM::updateCaption() |
492 | { | 491 | { |
493 | setPlainCaption(curDoc()->getTitle() + " - " PROG_NAME " " PACKAGE_VER); | 492 | setPlainCaption(curDoc()->getTitle() + " - " PROG_NAME " " PACKAGE_VER); |
494 | } | 493 | } |
495 | 494 | ||
496 | void PwM::hideEvent(QHideEvent *) | 495 | void PwM::hideEvent(QHideEvent *) |
497 | { | 496 | { |
498 | if (isMinimized()) { | 497 | if (isMinimized()) { |
499 | if (init->tray()) { | 498 | if (init->tray()) { |
500 | forceMinimizeToTray = true; | 499 | forceMinimizeToTray = true; |
501 | close(); | 500 | close(); |
502 | } | 501 | } |
503 | int mmlock = conf()->confGlobMinimizeLock(); | 502 | int mmlock = conf()->confGlobMinimizeLock(); |
504 | switch (mmlock) { | 503 | switch (mmlock) { |
505 | case 0: // don't lock anything | 504 | case 0: // don't lock anything |
506 | break; | 505 | break; |
507 | case 1: {// normal lock | 506 | case 1: {// normal lock |
508 | curDoc()->lockAll(true); | 507 | curDoc()->lockAll(true); |
509 | break; | 508 | break; |
510 | } case 2: {// deep-lock | 509 | } case 2: {// deep-lock |
511 | curDoc()->deepLock(); | 510 | curDoc()->deepLock(); |
512 | break; | 511 | break; |
513 | } default: | 512 | } default: |
514 | WARN(); | 513 | WARN(); |
515 | } | 514 | } |
516 | } | 515 | } |
517 | } | 516 | } |
518 | 517 | ||
519 | void PwM::setVirgin(bool v) | 518 | void PwM::setVirgin(bool v) |
520 | { | 519 | { |
521 | if (virgin == v) | 520 | if (virgin == v) |
522 | return; | 521 | return; |
523 | virgin = v; | 522 | virgin = v; |
524 | filePopup->setItemEnabled(BUTTON_POPUP_FILE_SAVE, !v); | 523 | filePopup->setItemEnabled(BUTTON_POPUP_FILE_SAVE, !v); |
525 | filePopup->setItemEnabled(BUTTON_POPUP_FILE_SAVEAS, !v); | 524 | filePopup->setItemEnabled(BUTTON_POPUP_FILE_SAVEAS, !v); |
526 | filePopup->setItemEnabled(BUTTON_POPUP_FILE_EXPORT, !v); | 525 | filePopup->setItemEnabled(BUTTON_POPUP_FILE_EXPORT, !v); |
527 | filePopup->setItemEnabled(BUTTON_POPUP_FILE_PRINT, !v); | 526 | filePopup->setItemEnabled(BUTTON_POPUP_FILE_PRINT, !v); |
528 | managePopup->setItemEnabled(BUTTON_POPUP_MANAGE_EDIT, !v); | 527 | managePopup->setItemEnabled(BUTTON_POPUP_MANAGE_EDIT, !v); |
529 | managePopup->setItemEnabled(BUTTON_POPUP_MANAGE_DEL, !v); | 528 | managePopup->setItemEnabled(BUTTON_POPUP_MANAGE_DEL, !v); |
530 | managePopup->setItemEnabled(BUTTON_POPUP_MANAGE_CHANGEMP, !v); | 529 | managePopup->setItemEnabled(BUTTON_POPUP_MANAGE_CHANGEMP, !v); |
531 | viewPopup->setItemEnabled(BUTTON_POPUP_VIEW_LOCK, !v); | 530 | viewPopup->setItemEnabled(BUTTON_POPUP_VIEW_LOCK, !v); |
532 | viewPopup->setItemEnabled(BUTTON_POPUP_VIEW_DEEPLOCK, !v); | 531 | viewPopup->setItemEnabled(BUTTON_POPUP_VIEW_DEEPLOCK, !v); |
533 | viewPopup->setItemEnabled(BUTTON_POPUP_VIEW_UNLOCK, !v); | 532 | viewPopup->setItemEnabled(BUTTON_POPUP_VIEW_UNLOCK, !v); |
534 | viewPopup->setItemEnabled(BUTTON_POPUP_VIEW_FIND, !v); | 533 | viewPopup->setItemEnabled(BUTTON_POPUP_VIEW_FIND, !v); |
535 | toolBar()->setItemEnabled(BUTTON_TOOL_SAVE, !v); | 534 | toolBar()->setItemEnabled(BUTTON_TOOL_SAVE, !v); |
536 | toolBar()->setItemEnabled(BUTTON_TOOL_SAVEAS, !v); | 535 | toolBar()->setItemEnabled(BUTTON_TOOL_SAVEAS, !v); |
537 | toolBar()->setItemEnabled(BUTTON_TOOL_PRINT, !v); | 536 | toolBar()->setItemEnabled(BUTTON_TOOL_PRINT, !v); |
538 | toolBar()->setItemEnabled(BUTTON_TOOL_EDIT, !v); | 537 | toolBar()->setItemEnabled(BUTTON_TOOL_EDIT, !v); |
539 | toolBar()->setItemEnabled(BUTTON_TOOL_DEL, !v); | 538 | toolBar()->setItemEnabled(BUTTON_TOOL_DEL, !v); |
540 | toolBar()->setItemEnabled(BUTTON_TOOL_LOCK, !v); | 539 | toolBar()->setItemEnabled(BUTTON_TOOL_LOCK, !v); |
541 | toolBar()->setItemEnabled(BUTTON_TOOL_DEEPLOCK, !v); | 540 | toolBar()->setItemEnabled(BUTTON_TOOL_DEEPLOCK, !v); |
542 | toolBar()->setItemEnabled(BUTTON_TOOL_UNLOCK, !v); | 541 | toolBar()->setItemEnabled(BUTTON_TOOL_UNLOCK, !v); |
543 | toolBar()->setItemEnabled(BUTTON_TOOL_FIND, !v); | 542 | toolBar()->setItemEnabled(BUTTON_TOOL_FIND, !v); |
544 | } | 543 | } |
545 | 544 | ||
546 | void PwM::new_slot() | 545 | void PwM::new_slot() |
547 | { | 546 | { |
548 | init->createMainWnd(); | 547 | init->createMainWnd(); |
549 | } | 548 | } |
550 | 549 | ||
551 | //US ENH | 550 | //US ENH |
552 | void PwM::open_slot() | 551 | void PwM::open_slot() |
553 | { | 552 | { |
554 | open_slot(""); | 553 | open_slot(""); |
555 | } | 554 | } |
556 | 555 | ||
557 | void PwM::open_slot(QString fn) | 556 | void PwM::open_slot(QString fn) |
558 | { | 557 | { |
559 | openDoc(fn); | 558 | openDoc(fn); |
560 | } | 559 | } |
561 | 560 | ||
562 | PwMDoc * PwM::openDoc(QString filename, bool openDeepLocked) | 561 | PwMDoc * PwM::openDoc(QString filename, bool openDeepLocked) |
diff --git a/pwmanager/pwmanager/pwmviewstyle_0.cpp b/pwmanager/pwmanager/pwmviewstyle_0.cpp index d82eb15..1d88a34 100644 --- a/pwmanager/pwmanager/pwmviewstyle_0.cpp +++ b/pwmanager/pwmanager/pwmviewstyle_0.cpp | |||
@@ -1,132 +1,144 @@ | |||
1 | /*************************************************************************** | 1 | /*************************************************************************** |
2 | * * | 2 | * * |
3 | * copyright (C) 2004 by Michael Buesch * | 3 | * copyright (C) 2004 by Michael Buesch * |
4 | * email: mbuesch@freenet.de * | 4 | * email: mbuesch@freenet.de * |
5 | * * | 5 | * * |
6 | * This program is free software; you can redistribute it and/or modify * | 6 | * This program is free software; you can redistribute it and/or modify * |
7 | * it under the terms of the GNU General Public License version 2 * | 7 | * it under the terms of the GNU General Public License version 2 * |
8 | * as published by the Free Software Foundation. * | 8 | * as published by the Free Software Foundation. * |
9 | * * | 9 | * * |
10 | ***************************************************************************/ | 10 | ***************************************************************************/ |
11 | 11 | ||
12 | /*************************************************************************** | 12 | /*************************************************************************** |
13 | * copyright (C) 2004 by Ulf Schenk | 13 | * copyright (C) 2004 by Ulf Schenk |
14 | * This file is originaly based on version 1.0.1 of pwmanager | 14 | * This file is originaly based on version 1.0.1 of pwmanager |
15 | * and was modified to run on embedded devices that run microkde | 15 | * and was modified to run on embedded devices that run microkde |
16 | * | 16 | * |
17 | * $Id$ | 17 | * $Id$ |
18 | **************************************************************************/ | 18 | **************************************************************************/ |
19 | 19 | ||
20 | #include "pwmviewstyle_0.h" | 20 | #include "pwmviewstyle_0.h" |
21 | #include "pwmview.h" | 21 | #include "pwmview.h" |
22 | #include "listviewpwm.h" | 22 | #include "listviewpwm.h" |
23 | #include "commentbox.h" | 23 | #include "commentbox.h" |
24 | 24 | ||
25 | #include <klocale.h> | 25 | #include <klocale.h> |
26 | #include <kglobal.h> | ||
27 | #include <kiconloader.h> | ||
26 | #include "pwmprefs.h" | 28 | #include "pwmprefs.h" |
27 | 29 | ||
28 | PwMViewStyle_0::PwMViewStyle_0(PwMView *view) | 30 | PwMViewStyle_0::PwMViewStyle_0(PwMView *view) |
29 | : QObject() | 31 | : QObject() |
30 | { | 32 | { |
31 | vbox1 = new QVBox(view); | 33 | vbox1 = new QVBox(view); |
32 | vbox1->setSpacing(3); | 34 | vbox1->setSpacing(0); |
33 | hbox1 = new QHBox(vbox1); | 35 | hbox1 = new QHBox(vbox1); |
34 | hbox1->setSpacing(3); | 36 | hbox1->setSpacing(0); |
35 | categoriesTitle = new QLabel(hbox1); | 37 | categoriesTitle = new QLabel(hbox1); |
36 | categoriesTitle->setText(i18n("Categories:")); | 38 | categoriesTitle->setText(i18n("Category:")); |
37 | categoriesCombo = new QComboBox(hbox1); | 39 | categoriesCombo = new QComboBox(hbox1); |
38 | renCatButton = new QPushButton(i18n("&Rename"), hbox1); | 40 | categoriesCombo->setSizePolicy( QSizePolicy( QSizePolicy::Expanding,QSizePolicy::Preferred )); |
39 | delCatButton = new QPushButton(i18n("&Delete"), hbox1); | 41 | renCatButton = new QPushButton( hbox1); |
42 | renCatButton->setPixmap (KGlobal::iconLoader()->loadIcon("edit", KIcon::Small) ); | ||
43 | int maxsi = renCatButton->sizeHint().height()+4; | ||
44 | renCatButton->setMinimumSize( maxsi, maxsi ); | ||
45 | delCatButton = new QPushButton( hbox1); | ||
46 | delCatButton->setPixmap (KGlobal::iconLoader()->loadIcon("editdelete", KIcon::Small) ); | ||
47 | maxsi = delCatButton->sizeHint().height()+4; | ||
48 | delCatButton->setMinimumSize( maxsi, maxsi ); | ||
49 | delCatButton->setFocusPolicy( QWidget::NoFocus ); | ||
50 | renCatButton->setFocusPolicy( QWidget::NoFocus ); | ||
51 | |||
40 | #ifndef PWM_EMBEDDED | 52 | #ifndef PWM_EMBEDDED |
41 | splitter1 = new QSplitter(vbox1); | 53 | splitter1 = new QSplitter(vbox1); |
42 | splitter1->setOrientation(Qt::Vertical); | 54 | splitter1->setOrientation(Qt::Vertical); |
43 | #else | 55 | #else |
44 | splitter1 = new KDGanttMinimizeSplitter( Qt::Vertical, vbox1); | 56 | splitter1 = new KDGanttMinimizeSplitter( Qt::Vertical, vbox1); |
45 | splitter1->setMinimizeDirection ( KDGanttMinimizeSplitter::Down ); | 57 | splitter1->setMinimizeDirection ( KDGanttMinimizeSplitter::Down ); |
46 | 58 | ||
47 | //US topLayout->addWidget(mMiniSplitter ); | 59 | //US topLayout->addWidget(mMiniSplitter ); |
48 | #endif | 60 | #endif |
49 | lv = new ListViewPwM(splitter1); | 61 | lv = new ListViewPwM(splitter1); |
50 | commentBox = new CommentBox(splitter1); | 62 | commentBox = new CommentBox(splitter1); |
51 | // set sizes and styles | 63 | // set sizes and styles |
52 | commentBox->resize(commentBox->size().width(), 60); | 64 | commentBox->resize(commentBox->size().width(), 60); |
53 | categoriesTitle->setAlignment(Qt::AlignVCenter | Qt::AlignRight); | 65 | categoriesTitle->setAlignment(Qt::AlignVCenter | Qt::AlignRight); |
54 | // connections | 66 | // connections |
55 | connect(categoriesCombo, SIGNAL(activated(int)), | 67 | connect(categoriesCombo, SIGNAL(activated(int)), |
56 | view, SLOT(shiftToView())); | 68 | view, SLOT(shiftToView())); |
57 | connect(renCatButton, SIGNAL(clicked()), | 69 | connect(renCatButton, SIGNAL(clicked()), |
58 | view, SLOT(renCatButton_slot())); | 70 | view, SLOT(renCatButton_slot())); |
59 | connect(delCatButton, SIGNAL(clicked()), | 71 | connect(delCatButton, SIGNAL(clicked()), |
60 | view, SLOT(delCatButton_slot())); | 72 | view, SLOT(delCatButton_slot())); |
61 | connect(lv, SIGNAL(toggleOverview()), | 73 | connect(lv, SIGNAL(toggleOverview()), |
62 | this, SLOT(toggleSplitter())); | 74 | this, SLOT(toggleSplitter())); |
63 | } | 75 | } |
64 | 76 | ||
65 | PwMViewStyle_0::~PwMViewStyle_0() | 77 | PwMViewStyle_0::~PwMViewStyle_0() |
66 | { | 78 | { |
67 | delete vbox1; | 79 | delete vbox1; |
68 | } | 80 | } |
69 | void PwMViewStyle_0::toggleSplitter() | 81 | void PwMViewStyle_0::toggleSplitter() |
70 | { | 82 | { |
71 | 83 | ||
72 | QValueList<int> si = splitter1->sizes(); | 84 | QValueList<int> si = splitter1->sizes(); |
73 | splitter1->toggle(); | 85 | splitter1->toggle(); |
74 | QValueList<int> si2 = splitter1->sizes(); | 86 | QValueList<int> si2 = splitter1->sizes(); |
75 | //qDebug("PwMViewStyle_0::toggleSplitter() %d %d %d %d", si[0],si[1],si2[0],si2[1] ); | 87 | //qDebug("PwMViewStyle_0::toggleSplitter() %d %d %d %d", si[0],si[1],si2[0],si2[1] ); |
76 | if ( si[0] == si2[0] && si[1] == si2[1] && si2[1] == 1 ) { | 88 | if ( si[0] == si2[0] && si[1] == si2[1] && si2[1] == 1 ) { |
77 | int diff = si[0]/2; | 89 | int diff = si[0]/2; |
78 | if ( diff > 200 ) | 90 | if ( diff > 200 ) |
79 | diff = 200; | 91 | diff = 200; |
80 | si[0] -= diff; | 92 | si[0] -= diff; |
81 | si[1] += diff; | 93 | si[1] += diff; |
82 | splitter1->toggle(); | 94 | splitter1->toggle(); |
83 | splitter1->setSizes( si ); | 95 | splitter1->setSizes( si ); |
84 | } | 96 | } |
85 | 97 | ||
86 | } | 98 | } |
87 | 99 | ||
88 | void PwMViewStyle_0::delCategory(const QString &cat) | 100 | void PwMViewStyle_0::delCategory(const QString &cat) |
89 | { | 101 | { |
90 | PWM_ASSERT(categoriesCombo); | 102 | PWM_ASSERT(categoriesCombo); |
91 | int i, count = categoriesCombo->count(); | 103 | int i, count = categoriesCombo->count(); |
92 | for (i = 0; i < count; ++i) { | 104 | for (i = 0; i < count; ++i) { |
93 | if (categoriesCombo->text(i) == cat) { | 105 | if (categoriesCombo->text(i) == cat) { |
94 | categoriesCombo->removeItem(i); | 106 | categoriesCombo->removeItem(i); |
95 | return; | 107 | return; |
96 | } | 108 | } |
97 | } | 109 | } |
98 | BUG(); | 110 | BUG(); |
99 | } | 111 | } |
100 | 112 | ||
101 | void PwMViewStyle_0::selectCategory(const QString &cat) | 113 | void PwMViewStyle_0::selectCategory(const QString &cat) |
102 | { | 114 | { |
103 | PWM_ASSERT(categoriesCombo); | 115 | PWM_ASSERT(categoriesCombo); |
104 | int i, count = categoriesCombo->count(); | 116 | int i, count = categoriesCombo->count(); |
105 | for (i = 0; i < count; ++i) { | 117 | for (i = 0; i < count; ++i) { |
106 | if (categoriesCombo->text(i) == cat) { | 118 | if (categoriesCombo->text(i) == cat) { |
107 | categoriesCombo->setCurrentItem(i); | 119 | categoriesCombo->setCurrentItem(i); |
108 | return; | 120 | return; |
109 | } | 121 | } |
110 | } | 122 | } |
111 | // fall back to 0 | 123 | // fall back to 0 |
112 | categoriesCombo->setCurrentItem(0); | 124 | categoriesCombo->setCurrentItem(0); |
113 | } | 125 | } |
114 | 126 | ||
115 | 127 | ||
116 | //US ENH: I need a place to load the view dependend settings. Eg. splittersize | 128 | //US ENH: I need a place to load the view dependend settings. Eg. splittersize |
117 | void PwMViewStyle_0::restoreSettings(PWMPrefs* prefs) | 129 | void PwMViewStyle_0::restoreSettings(PWMPrefs* prefs) |
118 | { | 130 | { |
119 | //load and store the size of the listviewcolumns | 131 | //load and store the size of the listviewcolumns |
120 | lv->restoreLayout(prefs->getConfig(), "listview"); | 132 | lv->restoreLayout(prefs->getConfig(), "listview"); |
121 | splitter1->setSizes( prefs->mCommentSplitter ); | 133 | splitter1->setSizes( prefs->mCommentSplitter ); |
122 | commentBox->setFont( prefs->mViewFont ); | 134 | commentBox->setFont( prefs->mViewFont ); |
123 | } | 135 | } |
124 | 136 | ||
125 | //US ENH: I need a place to load the view dependend settings. Eg. splittersize | 137 | //US ENH: I need a place to load the view dependend settings. Eg. splittersize |
126 | void PwMViewStyle_0::saveSettings(PWMPrefs* prefs) | 138 | void PwMViewStyle_0::saveSettings(PWMPrefs* prefs) |
127 | { | 139 | { |
128 | //store the size of the listviewcolumns | 140 | //store the size of the listviewcolumns |
129 | lv->saveLayout(prefs->getConfig(), "listview"); | 141 | lv->saveLayout(prefs->getConfig(), "listview"); |
130 | prefs->mCommentSplitter = splitter1->sizes(); | 142 | prefs->mCommentSplitter = splitter1->sizes(); |
131 | 143 | ||
132 | } | 144 | } |
diff --git a/pwmanager/pwmanager/pwmviewstyle_1.cpp b/pwmanager/pwmanager/pwmviewstyle_1.cpp index 7294f34..e335a3f 100644 --- a/pwmanager/pwmanager/pwmviewstyle_1.cpp +++ b/pwmanager/pwmanager/pwmviewstyle_1.cpp | |||
@@ -1,192 +1,192 @@ | |||
1 | /*************************************************************************** | 1 | /*************************************************************************** |
2 | * * | 2 | * * |
3 | * copyright (C) 2004 by Michael Buesch * | 3 | * copyright (C) 2004 by Michael Buesch * |
4 | * email: mbuesch@freenet.de * | 4 | * email: mbuesch@freenet.de * |
5 | * * | 5 | * * |
6 | * This program is free software; you can redistribute it and/or modify * | 6 | * This program is free software; you can redistribute it and/or modify * |
7 | * it under the terms of the GNU General Public License version 2 * | 7 | * it under the terms of the GNU General Public License version 2 * |
8 | * as published by the Free Software Foundation. * | 8 | * as published by the Free Software Foundation. * |
9 | * * | 9 | * * |
10 | ***************************************************************************/ | 10 | ***************************************************************************/ |
11 | 11 | ||
12 | /*************************************************************************** | 12 | /*************************************************************************** |
13 | * copyright (C) 2004 by Ulf Schenk | 13 | * copyright (C) 2004 by Ulf Schenk |
14 | * This file is originaly based on version 1.0.1 of pwmanager | 14 | * This file is originaly based on version 1.0.1 of pwmanager |
15 | * and was modified to run on embedded devices that run microkde | 15 | * and was modified to run on embedded devices that run microkde |
16 | * | 16 | * |
17 | * $Id$ | 17 | * $Id$ |
18 | **************************************************************************/ | 18 | **************************************************************************/ |
19 | 19 | ||
20 | #include "pwmviewstyle_1.h" | 20 | #include "pwmviewstyle_1.h" |
21 | #include "pwmview.h" | 21 | #include "pwmview.h" |
22 | #include "listviewpwm.h" | 22 | #include "listviewpwm.h" |
23 | #include "commentbox.h" | 23 | #include "commentbox.h" |
24 | 24 | ||
25 | #include <klocale.h> | 25 | #include <klocale.h> |
26 | #include "pwmprefs.h" | 26 | #include "pwmprefs.h" |
27 | 27 | ||
28 | #ifndef DESKTOP_VERSION | 28 | #ifndef DESKTOP_VERSION |
29 | #include <qpe/qpeapplication.h> | 29 | #include <qpe/qpeapplication.h> |
30 | #else | 30 | #else |
31 | #include <qapplication.h> | 31 | #include <qapplication.h> |
32 | #endif | 32 | #endif |
33 | #define INITIAL_CATEGORIES_WIDTH100 | 33 | #define INITIAL_CATEGORIES_WIDTH100 |
34 | 34 | ||
35 | PwMViewStyle_1::PwMViewStyle_1(PwMView *view) | 35 | PwMViewStyle_1::PwMViewStyle_1(PwMView *view) |
36 | : QObject() | 36 | : QObject() |
37 | { | 37 | { |
38 | #ifndef PWM_EMBEDDED | 38 | #ifndef PWM_EMBEDDED |
39 | splitter = new QSplitter(view); | 39 | splitter = new QSplitter(view); |
40 | #else | 40 | #else |
41 | if ( QApplication::desktop()->width() > 240 ) { | 41 | if ( QApplication::desktop()->width() > 240 ) { |
42 | splitter = new KDGanttMinimizeSplitter( Qt::Horizontal, view); | 42 | splitter = new KDGanttMinimizeSplitter( Qt::Horizontal, view); |
43 | splitter->setMinimizeDirection ( KDGanttMinimizeSplitter::Left ); | 43 | splitter->setMinimizeDirection ( KDGanttMinimizeSplitter::Left ); |
44 | // topLayout = new QHBoxLayout( this ); | 44 | // topLayout = new QHBoxLayout( this ); |
45 | // mMiniSplitter = new KDGanttMinimizeSplitter( Qt::Horizontal, this); | 45 | // mMiniSplitter = new KDGanttMinimizeSplitter( Qt::Horizontal, this); |
46 | // mMiniSplitter->setMinimizeDirection ( KDGanttMinimizeSplitter::Right ); | 46 | // mMiniSplitter->setMinimizeDirection ( KDGanttMinimizeSplitter::Right ); |
47 | } else { | 47 | } else { |
48 | splitter = new KDGanttMinimizeSplitter( Qt::Vertical, view); | 48 | splitter = new KDGanttMinimizeSplitter( Qt::Vertical, view); |
49 | splitter->setMinimizeDirection ( KDGanttMinimizeSplitter::Up ); | 49 | splitter->setMinimizeDirection ( KDGanttMinimizeSplitter::Up ); |
50 | // topLayout = new QHBoxLayout( this ); | 50 | // topLayout = new QHBoxLayout( this ); |
51 | // mMiniSplitter = new KDGanttMinimizeSplitter( Qt::Vertical, this); | 51 | // mMiniSplitter = new KDGanttMinimizeSplitter( Qt::Vertical, this); |
52 | // mMiniSplitter->setMinimizeDirection ( KDGanttMinimizeSplitter::Down ); | 52 | // mMiniSplitter->setMinimizeDirection ( KDGanttMinimizeSplitter::Down ); |
53 | } | 53 | } |
54 | //US topLayout->addWidget(mMiniSplitter ); | 54 | //US topLayout->addWidget(mMiniSplitter ); |
55 | #endif | 55 | #endif |
56 | 56 | ||
57 | vbox1 = new QVBox(splitter); | 57 | vbox1 = new QVBox(splitter); |
58 | categoriesTitle = new QLabel(vbox1); | 58 | categoriesTitle = new QLabel(vbox1); |
59 | categoriesList = new QListBox(vbox1); | 59 | categoriesList = new QListBox(vbox1); |
60 | #ifndef PWM_EMBEDDED | 60 | #ifndef PWM_EMBEDDED |
61 | splitter2 = new QSplitter(splitter); | 61 | splitter2 = new QSplitter(splitter); |
62 | splitter2->setOrientation(Qt::Vertical); | 62 | splitter2->setOrientation(Qt::Vertical); |
63 | #else | 63 | #else |
64 | splitter2 = new KDGanttMinimizeSplitter( Qt::Vertical, splitter); | 64 | splitter2 = new KDGanttMinimizeSplitter( Qt::Vertical, splitter); |
65 | splitter2->setMinimizeDirection ( KDGanttMinimizeSplitter::Down ); | 65 | splitter2->setMinimizeDirection ( KDGanttMinimizeSplitter::Down ); |
66 | 66 | ||
67 | //US topLayout->addWidget(mMiniSplitter ); | 67 | //US topLayout->addWidget(mMiniSplitter ); |
68 | #endif | 68 | #endif |
69 | lv = new ListViewPwM(splitter2); | 69 | lv = new ListViewPwM(splitter2); |
70 | commentBox = new CommentBox(splitter2); | 70 | commentBox = new CommentBox(splitter2); |
71 | // set sizes and styles | 71 | // set sizes and styles |
72 | //UScommentBox->resize(commentBox->size().width(), 60); | 72 | //UScommentBox->resize(commentBox->size().width(), 60); |
73 | QValueList<int> sizes; | 73 | QValueList<int> sizes; |
74 | #ifndef PWM_EMBEDDED | 74 | #ifndef PWM_EMBEDDED |
75 | sizes.push_back(INITIAL_CATEGORIES_WIDTH); | 75 | sizes.push_back(INITIAL_CATEGORIES_WIDTH); |
76 | sizes.push_back(view->height() - INITIAL_CATEGORIES_WIDTH); | 76 | sizes.push_back(view->height() - INITIAL_CATEGORIES_WIDTH); |
77 | #else | 77 | #else |
78 | sizes.append(INITIAL_CATEGORIES_WIDTH); | 78 | sizes.append(INITIAL_CATEGORIES_WIDTH); |
79 | sizes.append(view->height() - INITIAL_CATEGORIES_WIDTH); | 79 | sizes.append(view->height() - INITIAL_CATEGORIES_WIDTH); |
80 | #endif | 80 | #endif |
81 | //USsplitter->setSizes(sizes); | 81 | //USsplitter->setSizes(sizes); |
82 | categoriesTitle->setAlignment(Qt::AlignHCenter); | 82 | categoriesTitle->setAlignment(Qt::AlignHCenter); |
83 | #ifndef PWM_EMBEDDED | 83 | #ifndef PWM_EMBEDDED |
84 | categoriesTitle->setFrameShape(QFrame::MenuBarPanel); | 84 | categoriesTitle->setFrameShape(QFrame::MenuBarPanel); |
85 | #else | 85 | #else |
86 | categoriesTitle->setFrameShape(QFrame::StyledPanel); | 86 | //categoriesTitle->setFrameShape(QFrame::StyledPanel); |
87 | #endif | 87 | #endif |
88 | categoriesTitle->setText(i18n("Categories:")); | 88 | categoriesTitle->setText(i18n("Category:")); |
89 | catCtxMenu = new QPopupMenu(view); | 89 | catCtxMenu = new QPopupMenu(view); |
90 | catCtxMenu->insertItem(i18n("&Rename"), | 90 | catCtxMenu->insertItem(i18n("&Rename"), |
91 | view, SLOT(renCatButton_slot())); | 91 | view, SLOT(renCatButton_slot())); |
92 | catCtxMenu->insertItem(i18n("&Delete"), | 92 | catCtxMenu->insertItem(i18n("&Delete"), |
93 | view, SLOT(delCatButton_slot())); | 93 | view, SLOT(delCatButton_slot())); |
94 | 94 | ||
95 | #ifndef DESKTOP_VERSION | 95 | #ifndef DESKTOP_VERSION |
96 | QPEApplication::setStylusOperation( categoriesList->viewport(), QPEApplication::RightOnHold ); | 96 | QPEApplication::setStylusOperation( categoriesList->viewport(), QPEApplication::RightOnHold ); |
97 | #endif | 97 | #endif |
98 | 98 | ||
99 | // connections | 99 | // connections |
100 | connect(categoriesList, SIGNAL(highlighted(int)), | 100 | connect(categoriesList, SIGNAL(highlighted(int)), |
101 | view, SLOT(shiftToView())); | 101 | view, SLOT(shiftToView())); |
102 | connect(categoriesList, | 102 | connect(categoriesList, |
103 | SIGNAL(rightButtonClicked(QListBoxItem *, const QPoint &)), | 103 | SIGNAL(rightButtonClicked(QListBoxItem *, const QPoint &)), |
104 | this, | 104 | this, |
105 | SLOT(catRightClick(QListBoxItem *, const QPoint &))); | 105 | SLOT(catRightClick(QListBoxItem *, const QPoint &))); |
106 | 106 | ||
107 | connect(lv, SIGNAL(toggleOverview()), | 107 | connect(lv, SIGNAL(toggleOverview()), |
108 | this, SLOT(toggleSplitter())); | 108 | this, SLOT(toggleSplitter())); |
109 | } | 109 | } |
110 | 110 | ||
111 | PwMViewStyle_1::~PwMViewStyle_1() | 111 | PwMViewStyle_1::~PwMViewStyle_1() |
112 | { | 112 | { |
113 | delete catCtxMenu; | 113 | delete catCtxMenu; |
114 | delete splitter; | 114 | delete splitter; |
115 | } | 115 | } |
116 | void PwMViewStyle_1::toggleSplitter() | 116 | void PwMViewStyle_1::toggleSplitter() |
117 | { | 117 | { |
118 | QValueList<int> si = splitter2->sizes(); | 118 | QValueList<int> si = splitter2->sizes(); |
119 | splitter2->toggle(); | 119 | splitter2->toggle(); |
120 | QValueList<int> si2 = splitter2->sizes(); | 120 | QValueList<int> si2 = splitter2->sizes(); |
121 | //qDebug("PwMViewStyle_1::toggleSplitter() %d %d %d %d", si[0],si[1],si2[0],si2[1] ); | 121 | //qDebug("PwMViewStyle_1::toggleSplitter() %d %d %d %d", si[0],si[1],si2[0],si2[1] ); |
122 | if ( si[0] == si2[0] && si[1] == si2[1] && si2[1] == 1 ) { | 122 | if ( si[0] == si2[0] && si[1] == si2[1] && si2[1] == 1 ) { |
123 | int diff = si[0]/2; | 123 | int diff = si[0]/2; |
124 | if ( diff > 200 ) | 124 | if ( diff > 200 ) |
125 | diff = 200; | 125 | diff = 200; |
126 | si[0] -= diff; | 126 | si[0] -= diff; |
127 | si[1] += diff; | 127 | si[1] += diff; |
128 | splitter2->toggle(); | 128 | splitter2->toggle(); |
129 | splitter2->setSizes( si ); | 129 | splitter2->setSizes( si ); |
130 | } | 130 | } |
131 | } | 131 | } |
132 | 132 | ||
133 | void PwMViewStyle_1::catRightClick(QListBoxItem *item, const QPoint &point) | 133 | void PwMViewStyle_1::catRightClick(QListBoxItem *item, const QPoint &point) |
134 | { | 134 | { |
135 | if (!item) | 135 | if (!item) |
136 | return; | 136 | return; |
137 | catCtxMenu->move(point); | 137 | catCtxMenu->move(point); |
138 | catCtxMenu->show(); | 138 | catCtxMenu->show(); |
139 | } | 139 | } |
140 | 140 | ||
141 | void PwMViewStyle_1::delCategory(const QString &cat) | 141 | void PwMViewStyle_1::delCategory(const QString &cat) |
142 | { | 142 | { |
143 | PWM_ASSERT(categoriesList); | 143 | PWM_ASSERT(categoriesList); |
144 | int i, count = categoriesList->count(); | 144 | int i, count = categoriesList->count(); |
145 | for (i = 0; i < count; ++i) { | 145 | for (i = 0; i < count; ++i) { |
146 | if (categoriesList->text(i) == cat) { | 146 | if (categoriesList->text(i) == cat) { |
147 | categoriesList->removeItem(i); | 147 | categoriesList->removeItem(i); |
148 | return; | 148 | return; |
149 | } | 149 | } |
150 | } | 150 | } |
151 | BUG(); | 151 | BUG(); |
152 | } | 152 | } |
153 | 153 | ||
154 | void PwMViewStyle_1::selectCategory(const QString &cat) | 154 | void PwMViewStyle_1::selectCategory(const QString &cat) |
155 | { | 155 | { |
156 | PWM_ASSERT(categoriesList); | 156 | PWM_ASSERT(categoriesList); |
157 | int i, count = categoriesList->count(); | 157 | int i, count = categoriesList->count(); |
158 | for (i = 0; i < count; ++i) { | 158 | for (i = 0; i < count; ++i) { |
159 | if (categoriesList->text(i) == cat) { | 159 | if (categoriesList->text(i) == cat) { |
160 | categoriesList->setCurrentItem(i); | 160 | categoriesList->setCurrentItem(i); |
161 | return; | 161 | return; |
162 | } | 162 | } |
163 | } | 163 | } |
164 | // fall back to 0 | 164 | // fall back to 0 |
165 | categoriesList->setCurrentItem(0); | 165 | categoriesList->setCurrentItem(0); |
166 | } | 166 | } |
167 | 167 | ||
168 | //US ENH: I need a place to load the view dependend settings. Eg. splittersize | 168 | //US ENH: I need a place to load the view dependend settings. Eg. splittersize |
169 | void PwMViewStyle_1::restoreSettings(PWMPrefs* prefs) | 169 | void PwMViewStyle_1::restoreSettings(PWMPrefs* prefs) |
170 | { | 170 | { |
171 | //load and store the size of the listviewcolumns | 171 | //load and store the size of the listviewcolumns |
172 | lv->restoreLayout(prefs->getConfig(), "listview"); | 172 | lv->restoreLayout(prefs->getConfig(), "listview"); |
173 | splitter->setSizes( prefs->mCategorySplitter ); | 173 | splitter->setSizes( prefs->mCategorySplitter ); |
174 | splitter2->setSizes( prefs->mCommentSplitter ); | 174 | splitter2->setSizes( prefs->mCommentSplitter ); |
175 | commentBox->setFont( prefs->mViewFont ); | 175 | commentBox->setFont( prefs->mViewFont ); |
176 | 176 | ||
177 | } | 177 | } |
178 | 178 | ||
179 | //US ENH: I need a place to load the view dependend settings. Eg. splittersize | 179 | //US ENH: I need a place to load the view dependend settings. Eg. splittersize |
180 | void PwMViewStyle_1::saveSettings(PWMPrefs* prefs) | 180 | void PwMViewStyle_1::saveSettings(PWMPrefs* prefs) |
181 | { | 181 | { |
182 | //store the size of the listviewcolumns | 182 | //store the size of the listviewcolumns |
183 | lv->saveLayout(prefs->getConfig(), "listview"); | 183 | lv->saveLayout(prefs->getConfig(), "listview"); |
184 | prefs->mCategorySplitter = splitter->sizes(); | 184 | prefs->mCategorySplitter = splitter->sizes(); |
185 | prefs->mCommentSplitter = splitter2->sizes(); | 185 | prefs->mCommentSplitter = splitter2->sizes(); |
186 | 186 | ||
187 | } | 187 | } |
188 | 188 | ||
189 | 189 | ||
190 | #ifndef PWM_EMBEDDED | 190 | #ifndef PWM_EMBEDDED |
191 | #include "pwmviewstyle_1.moc" | 191 | #include "pwmviewstyle_1.moc" |
192 | #endif | 192 | #endif |