author | ulf69 <ulf69> | 2004-10-29 05:20:48 (UTC) |
---|---|---|
committer | ulf69 <ulf69> | 2004-10-29 05:20:48 (UTC) |
commit | 41e3625b8c38ff45e70b59416a519d59a5f4d937 (patch) (side-by-side diff) | |
tree | 587b57d51bc77a699fd63cf10e53bf6f9f72a1b7 /pwmanager | |
parent | 08a4582f8e5184b8abb7d97781c4fc37ee7edf90 (diff) | |
download | kdepimpi-41e3625b8c38ff45e70b59416a519d59a5f4d937.zip kdepimpi-41e3625b8c38ff45e70b59416a519d59a5f4d937.tar.gz kdepimpi-41e3625b8c38ff45e70b59416a519d59a5f4d937.tar.bz2 |
display alternating category text in the add/edit dialogbox
-rw-r--r-- | pwmanager/pwmanager/addentrywnd_emb.cpp | 45 | ||||
-rw-r--r-- | pwmanager/pwmanager/addentrywnd_emb.h | 8 | ||||
-rw-r--r-- | pwmanager/pwmanager/addentrywndimpl.cpp | 7 | ||||
-rw-r--r-- | pwmanager/pwmanager/addentrywndimpl.h | 2 | ||||
-rw-r--r-- | pwmanager/pwmanager/pwm.cpp | 4 |
5 files changed, 51 insertions, 15 deletions
diff --git a/pwmanager/pwmanager/addentrywnd_emb.cpp b/pwmanager/pwmanager/addentrywnd_emb.cpp index dd09d13..f065058 100644 --- a/pwmanager/pwmanager/addentrywnd_emb.cpp +++ b/pwmanager/pwmanager/addentrywnd_emb.cpp @@ -21,12 +21,13 @@ without including the source code for Qt in the source distribution. $Id$ */ #include "addentrywnd_emb.h" +#include "pwmdoc.h" #include <qlayout.h> #include <qlabel.h> #include <qtabwidget.h> #include <qgroupbox.h> #include <klocale.h> @@ -39,16 +40,16 @@ $Id$ * Constructs a addEntryWnd as a child of 'parent', with the * name 'name' and widget flags set to 'f'. * * The dialog will by default be modeless, unless you set 'modal' to * TRUE to construct a modal dialog. */ -addEntryWnd::addEntryWnd( QWidget* parent, const char* name) +addEntryWnd::addEntryWnd( PwMDoc* d, QWidget* parent, const char* name) : KDialogBase( KDialogBase::Plain, i18n( "edit/add a password entry" ), KDialogBase::Ok | KDialogBase::Cancel, - KDialogBase::Ok, parent, name, true ) + KDialogBase::Ok, parent, name, true ), doc(d) { QWidget *page = plainPage(); QVBoxLayout *pageLayout = new QVBoxLayout( page ); QTabWidget* mTabWidget = new QTabWidget( page ); pageLayout->addWidget( mTabWidget ); @@ -62,37 +63,39 @@ addEntryWnd::addEntryWnd( QWidget* parent, const char* name) layout->setSpacing( KDialogBase::spacingHint() ); int i = 0; descLineEdit = new KLineEdit( tab1, "descLineEdit" ); - QLabel* label = new QLabel( descLineEdit, i18n("Description:"), tab1 ); - layout->addWidget( label, i, 0 ); + descLineLabel = new QLabel( descLineEdit, i18n("Description:"), tab1 ); + layout->addWidget( descLineLabel, i, 0 ); layout->addWidget( descLineEdit, i, 1 ); i++; categoryComboBox = new KComboBox( tab1 ); - label = new QLabel( categoryComboBox, i18n("Category:"), tab1 ); + QLabel* label = new QLabel( categoryComboBox, i18n("Category:"), tab1 ); layout->addWidget( label, i, 0 ); layout->addWidget( categoryComboBox, i, 1 ); i++; categoryComboBox->setEditable( TRUE ); categoryComboBox->setSizeLimit( 100 ); categoryComboBox->setAutoCompletion( TRUE ); categoryComboBox->setDuplicatesEnabled( FALSE ); + connect(categoryComboBox,SIGNAL(activated(const QString&)), SLOT(categorySelected(const QString&))); + usernameLineEdit = new KLineEdit( tab1, "usernameLineEdit" ); - label = new QLabel( usernameLineEdit, i18n("Username:"), tab1 ); - layout->addWidget( label, i, 0 ); + usernameLineLabel = new QLabel( usernameLineEdit, i18n("Username:"), tab1 ); + layout->addWidget( usernameLineLabel, i, 0 ); layout->addWidget( usernameLineEdit, i, 1 ); i++; pwLineEdit = new KLineEdit( tab1, "pwLineEdit" ); pwLineEdit->setEchoMode( QLineEdit::Password ); - label = new QLabel( pwLineEdit, i18n("Password:"), tab1 ); - layout->addWidget( label, i, 0 ); + pwLineLabel = new QLabel( pwLineEdit, i18n("Password:"), tab1 ); + layout->addWidget( pwLineLabel, i, 0 ); layout->addWidget( pwLineEdit, i, 1 ); i++; revealButton = new QPushButton( i18n("&Reveal"), tab1, "revealButton" ); revealButton->setToggleButton( TRUE ); layout->addWidget( revealButton, i, 0 ); @@ -193,7 +196,31 @@ void addEntryWnd::generateButton_slot() void addEntryWnd::advancedCommentButton_slot(bool) { qWarning( "addEntryWnd::advancedCommentButton_slot(bool): Not implemented yet" ); } +void addEntryWnd::categorySelected ( const QString & string ) +{ + unsigned int idx; + bool found = doc->findCategory(string, &idx); + + if (found == true) + { + qDebug("addEntryWnd::categorySelected found"); + PwMCategoryItem* catitem = doc->getCategoryEntry(idx); + + descLineLabel->setText(catitem->desc_text.c_str()); + usernameLineLabel->setText(catitem->name_text.c_str()); + pwLineLabel->setText(catitem->pw_text.c_str()); + return; + } + else + { + qDebug("addEntryWnd::categorySelected NOT found"); + BUG(); + } + + +} + diff --git a/pwmanager/pwmanager/addentrywnd_emb.h b/pwmanager/pwmanager/addentrywnd_emb.h index 83761dc..966d9d2 100644 --- a/pwmanager/pwmanager/addentrywnd_emb.h +++ b/pwmanager/pwmanager/addentrywnd_emb.h @@ -36,37 +36,43 @@ class QSpacerItem; class KLineEdit; class QPushButton; class KComboBox; class QLabel; class QGroupBox; class QMultiLineEdit; +class PwMDoc; class addEntryWnd : public KDialogBase { Q_OBJECT public: - addEntryWnd( QWidget* parent = 0, const char* name = 0); + addEntryWnd( PwMDoc* doc, QWidget* parent = 0, const char* name = 0); ~addEntryWnd(); KLineEdit* launcherLineEdit; QPushButton* generateButton; KLineEdit* descLineEdit; KComboBox* categoryComboBox; KLineEdit* usernameLineEdit; KLineEdit* pwLineEdit; KLineEdit* urlLineEdit; + QLabel* descLineLabel; + QLabel* usernameLineLabel; + QLabel* pwLineLabel; QPushButton* revealButton; QMultiLineEdit* commentTextEdit; + PwMDoc* doc; public slots: virtual void revealButton_slot(); virtual void generateButton_slot(); virtual void advancedCommentButton_slot(bool on); protected slots: virtual void slotOk(); + virtual void categorySelected ( const QString & string ); }; #endif // ADDENTRYWND_H diff --git a/pwmanager/pwmanager/addentrywndimpl.cpp b/pwmanager/pwmanager/addentrywndimpl.cpp index d47f32c..fa6b6c0 100644 --- a/pwmanager/pwmanager/addentrywndimpl.cpp +++ b/pwmanager/pwmanager/addentrywndimpl.cpp @@ -37,14 +37,14 @@ #ifndef PWM_EMBEDDED AddEntryWndImpl::AddEntryWndImpl() : addEntryWnd( 0, "AddEntryWndImpl", TRUE) #else -AddEntryWndImpl::AddEntryWndImpl( QWidget* parent, const char* name) - : addEntryWnd( parent, name) +AddEntryWndImpl::AddEntryWndImpl( PwMDoc* doc, QWidget* parent, const char* name) + : addEntryWnd( doc, parent, name) #endif { #ifndef PWM_EMBEDDED editAdvCommentButton = 0; commentTextEdit = 0; #endif @@ -112,12 +112,15 @@ void AddEntryWndImpl::setCurrCategory(const QString &cat) { int i, count = categoryComboBox->count(); for (i = 0; i < count; ++i) { if (categoryComboBox->text(i) == cat) { categoryComboBox->setCurrentItem(i); +#ifdef PWM_EMBEDDED + categorySelected(cat); +#endif return; } } BUG(); } diff --git a/pwmanager/pwmanager/addentrywndimpl.h b/pwmanager/pwmanager/addentrywndimpl.h index ce9a594..e13eb54 100644 --- a/pwmanager/pwmanager/addentrywndimpl.h +++ b/pwmanager/pwmanager/addentrywndimpl.h @@ -42,13 +42,13 @@ class AddEntryWndImpl : public addEntryWnd { Q_OBJECT public: #ifndef PWM_EMBEDDED AddEntryWndImpl(); #else - AddEntryWndImpl( QWidget* parent = 0, const char* name = 0); + AddEntryWndImpl( PwMDoc* doc, QWidget* parent = 0, const char* name = 0); #endif ~AddEntryWndImpl(); /* get... functions */ QString getDescription() { return descLineEdit->text(); } diff --git a/pwmanager/pwmanager/pwm.cpp b/pwmanager/pwmanager/pwm.cpp index bd98d72..9642a43 100644 --- a/pwmanager/pwmanager/pwm.cpp +++ b/pwmanager/pwmanager/pwm.cpp @@ -630,13 +630,13 @@ void PwM::addPwd_slot1(QString *pw, PwMDoc *_doc) } PWM_ASSERT(doc); doc->timer()->getLock(DocTimer::id_autoLockTimer); #ifndef PWM_EMBEDDED AddEntryWndImpl w; #else - AddEntryWndImpl w(this, "addentrywndimpl"); + AddEntryWndImpl w(doc, this, "addentrywndimpl"); #endif vector<string> catList; doc->getCategoryList(&catList); unsigned i, size = catList.size(); for (i = 0; i < size; ++i) { @@ -729,13 +729,13 @@ void PwM::editPwd_slot3(const QString *category, const int *index, if (!doc->getEntry(curCategory, curEntryIndex, &currItem, true)) { doc->timer()->putLock(DocTimer::id_autoLockTimer); return; } BUG_ON(currItem.binary); - AddEntryWndImpl w; + AddEntryWndImpl w(doc); vector<string> catList; doc->getCategoryList(&catList); unsigned i, size = catList.size(); for (i = 0; i < size; ++i) { w.addCategory(catList[i].c_str()); } |