summaryrefslogtreecommitdiffabout
path: root/pwmanager
Side-by-side diff
Diffstat (limited to 'pwmanager') (more/less context) (ignore whitespace changes)
-rw-r--r--pwmanager/pwmanager/addentrywnd_emb.cpp45
-rw-r--r--pwmanager/pwmanager/addentrywnd_emb.h8
-rw-r--r--pwmanager/pwmanager/addentrywndimpl.cpp7
-rw-r--r--pwmanager/pwmanager/addentrywndimpl.h2
-rw-r--r--pwmanager/pwmanager/pwm.cpp4
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
@@ -24,6 +24,7 @@ $Id$
*/
#include "addentrywnd_emb.h"
+#include "pwmdoc.h"
#include <qlayout.h>
#include <qlabel.h>
@@ -42,10 +43,10 @@ $Id$
* 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 );
@@ -65,13 +66,13 @@ addEntryWnd::addEntryWnd( QWidget* parent, const char* name)
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++;
@@ -79,17 +80,19 @@ addEntryWnd::addEntryWnd( QWidget* parent, const char* name)
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++;
@@ -196,4 +199,28 @@ 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
@@ -39,13 +39,14 @@ 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;
@@ -55,9 +56,13 @@ public:
KLineEdit* usernameLineEdit;
KLineEdit* pwLineEdit;
KLineEdit* urlLineEdit;
+ QLabel* descLineLabel;
+ QLabel* usernameLineLabel;
+ QLabel* pwLineLabel;
QPushButton* revealButton;
QMultiLineEdit* commentTextEdit;
+ PwMDoc* doc;
public slots:
virtual void revealButton_slot();
@@ -66,6 +71,7 @@ public slots:
protected slots:
virtual void slotOk();
+ virtual void categorySelected ( const QString & string );
};
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
@@ -40,8 +40,8 @@
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
@@ -115,6 +115,9 @@ void AddEntryWndImpl::setCurrCategory(const QString &cat)
for (i = 0; i < count; ++i) {
if (categoryComboBox->text(i) == cat) {
categoryComboBox->setCurrentItem(i);
+#ifdef PWM_EMBEDDED
+ categorySelected(cat);
+#endif
return;
}
}
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
@@ -45,7 +45,7 @@ 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();
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
@@ -633,7 +633,7 @@ void PwM::addPwd_slot1(QString *pw, PwMDoc *_doc)
#ifndef PWM_EMBEDDED
AddEntryWndImpl w;
#else
- AddEntryWndImpl w(this, "addentrywndimpl");
+ AddEntryWndImpl w(doc, this, "addentrywndimpl");
#endif
vector<string> catList;
@@ -732,7 +732,7 @@ void PwM::editPwd_slot3(const QString *category, const int *index,
}
BUG_ON(currItem.binary);
- AddEntryWndImpl w;
+ AddEntryWndImpl w(doc);
vector<string> catList;
doc->getCategoryList(&catList);
unsigned i, size = catList.size();