summaryrefslogtreecommitdiffabout
path: root/pwmanager
Unidiff
Diffstat (limited to 'pwmanager') (more/less context) (ignore whitespace changes)
-rw-r--r--pwmanager/pwmanager/addentrywndimpl.cpp1
-rw-r--r--pwmanager/pwmanager/pwm.cpp11
-rw-r--r--pwmanager/pwmanager/pwmviewstyle_0.cpp22
-rw-r--r--pwmanager/pwmanager/pwmviewstyle_1.cpp4
4 files changed, 25 insertions, 13 deletions
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,142 +1,143 @@
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
40AddEntryWndImpl::AddEntryWndImpl() 40AddEntryWndImpl::AddEntryWndImpl()
41 : addEntryWnd( 0, "AddEntryWndImpl", TRUE) 41 : addEntryWnd( 0, "AddEntryWndImpl", TRUE)
42#else 42#else
43AddEntryWndImpl::AddEntryWndImpl( PwMDoc* doc, QWidget* parent, const char* name) 43AddEntryWndImpl::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
55AddEntryWndImpl::~AddEntryWndImpl() 56AddEntryWndImpl::~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
65void AddEntryWndImpl::slotOk() 66void 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
87void AddEntryWndImpl::okButton_slot() 88void 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
105void AddEntryWndImpl::cancelButton_slot() 106void AddEntryWndImpl::cancelButton_slot()
106{ 107{
107 done(2); 108 done(2);
108} 109}
109#endif 110#endif
110 111
111void AddEntryWndImpl::setCurrCategory(const QString &cat) 112void 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
127void AddEntryWndImpl::revealButton_slot() 128void 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
136void AddEntryWndImpl::generateButton_slot() 137void 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
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
@@ -156,311 +156,310 @@ enum {
156enum { 156enum {
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
172PwM::PwM(PwMInit *_init, PwMDoc *doc, 172PwM::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
198PwM::~PwM() 198PwM::~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
212void PwM::initMenubar() 212void 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
415void PwM::initToolbar() 414void 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"));
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
28PwMViewStyle_0::PwMViewStyle_0(PwMView *view) 30PwMViewStyle_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
65PwMViewStyle_0::~PwMViewStyle_0() 77PwMViewStyle_0::~PwMViewStyle_0()
66{ 78{
67 delete vbox1; 79 delete vbox1;
68} 80}
69void PwMViewStyle_0::toggleSplitter() 81void 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
88void PwMViewStyle_0::delCategory(const QString &cat) 100void 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
101void PwMViewStyle_0::selectCategory(const QString &cat) 113void 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
117void PwMViewStyle_0::restoreSettings(PWMPrefs* prefs) 129void 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
126void PwMViewStyle_0::saveSettings(PWMPrefs* prefs) 138void 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,184 +1,184 @@
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
35PwMViewStyle_1::PwMViewStyle_1(PwMView *view) 35PwMViewStyle_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
111PwMViewStyle_1::~PwMViewStyle_1() 111PwMViewStyle_1::~PwMViewStyle_1()
112{ 112{
113 delete catCtxMenu; 113 delete catCtxMenu;
114 delete splitter; 114 delete splitter;
115} 115}
116void PwMViewStyle_1::toggleSplitter() 116void 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
133void PwMViewStyle_1::catRightClick(QListBoxItem *item, const QPoint &point) 133void 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
141void PwMViewStyle_1::delCategory(const QString &cat) 141void 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
154void PwMViewStyle_1::selectCategory(const QString &cat) 154void 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
169void PwMViewStyle_1::restoreSettings(PWMPrefs* prefs) 169void 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
180void PwMViewStyle_1::saveSettings(PWMPrefs* prefs) 180void 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();