summaryrefslogtreecommitdiffabout
authorulf69 <ulf69>2004-09-23 19:35:13 (UTC)
committer ulf69 <ulf69>2004-09-23 19:35:13 (UTC)
commitae069aa892b29a96a923e49254cc89e65d0393eb (patch) (side-by-side diff)
tree2336ca51394e2b5d52f630d53087c489cadca505
parent15c6615421bc50d6d54dc334c90944749c347d9e (diff)
downloadkdepimpi-ae069aa892b29a96a923e49254cc89e65d0393eb.zip
kdepimpi-ae069aa892b29a96a923e49254cc89e65d0393eb.tar.gz
kdepimpi-ae069aa892b29a96a923e49254cc89e65d0393eb.tar.bz2
added implementation of dialogs to fit on embedded devices screens
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--pwmanager/pwmanager/addentrywnd_emb.cpp213
-rw-r--r--pwmanager/pwmanager/addentrywnd_emb.h73
-rw-r--r--pwmanager/pwmanager/pwgenwnd_emb.cpp137
-rw-r--r--pwmanager/pwmanager/pwgenwnd_emb.h59
4 files changed, 482 insertions, 0 deletions
diff --git a/pwmanager/pwmanager/addentrywnd_emb.cpp b/pwmanager/pwmanager/addentrywnd_emb.cpp
new file mode 100644
index 0000000..3a40cfc
--- a/dev/null
+++ b/pwmanager/pwmanager/addentrywnd_emb.cpp
@@ -0,0 +1,213 @@
+/*
+ This file is part of PwManager/Platform independent.
+ Copyright (c) 2004 Ulf Schenk
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+ As a special exception, permission is given to link this program
+ with any edition of Qt, and distribute the resulting executable,
+ without including the source code for Qt in the source distribution.
+
+$Id$
+*/
+
+#include "addentrywnd_emb.h"
+
+#include <qlayout.h>
+#include <qlabel.h>
+#include <qtabwidget.h>
+#include <qgroupbox.h>
+#include <klocale.h>
+#include <kcombobox.h>
+#include <klineedit.h>
+#include <qpushbutton.h>
+
+/*
+ * 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)
+ : KDialogBase( KDialogBase::Plain, i18n( "Edit Password" ),
+ KDialogBase::Ok | KDialogBase::Cancel,
+ KDialogBase::Ok, parent, name, true )
+{
+ QWidget *page = plainPage();
+ QVBoxLayout *pageLayout = new QVBoxLayout( page );
+
+ QTabWidget* mTabWidget = new QTabWidget( page );
+ pageLayout->addWidget( mTabWidget );
+
+ ////////////////////////////////////////////////////////////////////
+ // This is the Password tab
+ QWidget *tab1 = new QWidget( mTabWidget );
+
+ QGridLayout *layout = new QGridLayout( tab1, 3, 1 );
+ layout->setMargin( KDialogBase::marginHint() );
+ 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 );
+ layout->addWidget( descLineEdit, i, 1 );
+ i++;
+
+ categoryComboBox = new KComboBox( tab1 );
+ 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 );
+
+ usernameLineEdit = new KLineEdit( tab1, "usernameLineEdit" );
+ label = new QLabel( usernameLineEdit, i18n("Username:"), tab1 );
+ layout->addWidget( label, 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 );
+ layout->addWidget( pwLineEdit, i, 1 );
+ i++;
+
+ revealButton = new QPushButton( i18n("&Reveal"), tab1, "revealButton" );
+ revealButton->setToggleButton( TRUE );
+ layout->addWidget( revealButton, i, 0 );
+
+ generateButton = new QPushButton( i18n("&Generate"), tab1, "generateButton" );
+ layout->addWidget( generateButton, i, 1 );
+ i++;
+
+ urlLineEdit = new KLineEdit( tab1, "urlLineEdit" );
+ label = new QLabel( urlLineEdit, i18n("URL:"), tab1 );
+ layout->addWidget( label, i, 0 );
+ layout->addWidget( urlLineEdit, i, 1 );
+ i++;
+
+ mTabWidget->addTab( tab1, i18n( "&Password" ) );
+
+
+ ////////////////////////////////////////////////////////////////////
+ // This is the Comment tab
+ QWidget *tab2 = new QWidget( mTabWidget );
+
+ layout = new QGridLayout( tab2, 3, 1 );
+ layout->setMargin( KDialogBase::marginHintSmall() );
+ layout->setSpacing( KDialogBase::spacingHintSmall() );
+ i = 0;
+
+
+
+ groupBox1 = new QGroupBox( tab2, "groupBox1" );
+ commentDummy = new QLabel( groupBox1, "commentDummy" );
+ commentDummy->setText( QString::null );
+
+ groupBox1->setTitle( i18n( "Comment:" ) );
+
+ layout->addMultiCellWidget( groupBox1, i, i, 0, 1 );
+ i++;
+
+
+ advancedCommentButton = new QPushButton( i18n("advanced comment"), groupBox1, "advancedCommentButton" );
+ advancedCommentButton->setToggleButton( FALSE );
+ layout->addMultiCellWidget( advancedCommentButton, i, i, 0, 1 );
+ i++;
+
+
+ mTabWidget->addTab( tab2, i18n( "&Comments" ) );
+
+
+ ////////////////////////////////////////////////////////////////////
+ // This is the Launcher tab
+ QWidget *tab3 = new QWidget( mTabWidget );
+
+ layout = new QGridLayout( tab3, 3, 1 );
+ layout->setMargin( KDialogBase::marginHintSmall() );
+ layout->setSpacing( KDialogBase::spacingHintSmall() );
+ i = 0;
+
+ launcherLineEdit = new KLineEdit( tab3, "launcherLineEdit" );
+ label = new QLabel( launcherLineEdit, i18n("Launcher:"), tab3 );
+
+ QLabel* label1 = new QLabel( launcherLineEdit, i18n("$d = Description"), tab3 );
+ QLabel* label2 = new QLabel( launcherLineEdit, i18n("$n = Username"), tab3 );
+ QLabel* label3 = new QLabel( launcherLineEdit, i18n("$c = Comment"), tab3 );
+ QLabel* label4 = new QLabel( launcherLineEdit, i18n("$u = URL"), tab3 );
+ QLabel* label5 = new QLabel( launcherLineEdit, i18n("$p = Password"), tab3 );
+
+ label = new QLabel( launcherLineEdit, i18n("Launcher:"), tab3 );
+
+ layout->addWidget( label1, i, 0 );
+ layout->addWidget( label2, i, 1 );
+ i++;
+ layout->addWidget( label3, i, 0 );
+ layout->addWidget( label4, i, 1 );
+ i++;
+ layout->addWidget( label5, i, 0 );
+ i++;
+
+ layout->addWidget( label, i, 0 );
+ layout->addWidget( launcherLineEdit, i, 1 );
+ i++;
+
+
+ mTabWidget->addTab( tab3, i18n( "&Launcher" ) );
+
+ // signals and slots connections
+ connect( generateButton, SIGNAL( clicked() ), this, SLOT( generateButton_slot() ) );
+ connect( revealButton, SIGNAL( toggled(bool) ), this, SLOT( revealButton_slot() ) );
+ connect( advancedCommentButton, SIGNAL( toggled(bool) ), this, SLOT( advancedCommentButton_slot(bool) ) );
+
+}
+
+/*
+ * Destroys the object and frees any allocated resources
+ */
+addEntryWnd::~addEntryWnd()
+{
+ // no need to delete child widgets, Qt does it all for us
+}
+
+void addEntryWnd::slotOk()
+{
+ qWarning( "addEntryWnd::slotOk(): Not implemented yet" );
+}
+
+void addEntryWnd::revealButton_slot()
+{
+ qWarning( "addEntryWnd::revealButton_slot(): Not implemented yet" );
+}
+
+void addEntryWnd::generateButton_slot()
+{
+ qWarning( "addEntryWnd::generateButton_slot(): Not implemented yet" );
+}
+
+void addEntryWnd::advancedCommentButton_slot(bool)
+{
+ qWarning( "addEntryWnd::advancedCommentButton_slot(bool): Not implemented yet" );
+}
+
+
diff --git a/pwmanager/pwmanager/addentrywnd_emb.h b/pwmanager/pwmanager/addentrywnd_emb.h
new file mode 100644
index 0000000..e368721
--- a/dev/null
+++ b/pwmanager/pwmanager/addentrywnd_emb.h
@@ -0,0 +1,73 @@
+/*
+ This file is part of PwManager/Platform independent.
+ Copyright (c) 2004 Ulf Schenk
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+ As a special exception, permission is given to link this program
+ with any edition of Qt, and distribute the resulting executable,
+ without including the source code for Qt in the source distribution.
+
+$Id$
+*/
+
+#ifndef ADDENTRYWND_EMB_H
+#define ADDENTRYWND_EMB_H
+
+#include <qvariant.h>
+#include <kdialogbase.h>
+
+class QVBoxLayout;
+class QHBoxLayout;
+class QGridLayout;
+class QSpacerItem;
+class KLineEdit;
+class QPushButton;
+class KComboBox;
+class QLabel;
+class QGroupBox;
+
+class addEntryWnd : public KDialogBase
+{
+ Q_OBJECT
+
+public:
+ addEntryWnd( QWidget* parent = 0, const char* name = 0);
+ ~addEntryWnd();
+
+ KLineEdit* launcherLineEdit;
+ QPushButton* generateButton;
+ KLineEdit* descLineEdit;
+ KComboBox* categoryComboBox;
+ KLineEdit* usernameLineEdit;
+ KLineEdit* pwLineEdit;
+ KLineEdit* urlLineEdit;
+
+ QPushButton* revealButton;
+ QGroupBox* groupBox1;
+ QLabel* commentDummy;
+ QPushButton* advancedCommentButton;
+
+public slots:
+ virtual void revealButton_slot();
+ virtual void generateButton_slot();
+ virtual void advancedCommentButton_slot(bool on);
+
+ protected slots:
+ virtual void slotOk();
+
+};
+
+#endif // ADDENTRYWND_H
diff --git a/pwmanager/pwmanager/pwgenwnd_emb.cpp b/pwmanager/pwmanager/pwgenwnd_emb.cpp
new file mode 100644
index 0000000..9655e9f
--- a/dev/null
+++ b/pwmanager/pwmanager/pwgenwnd_emb.cpp
@@ -0,0 +1,137 @@
+/*
+ This file is part of PwManager/Platform independent.
+ Copyright (c) 2004 Ulf Schenk
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+ As a special exception, permission is given to link this program
+ with any edition of Qt, and distribute the resulting executable,
+ without including the source code for Qt in the source distribution.
+
+$Id$
+*/
+
+#include "pwgenwnd_emb.h"
+
+#include <qpushbutton.h>
+#include <qgroupbox.h>
+#include <qcheckbox.h>
+#include <qlabel.h>
+#include <qlineedit.h>
+#include <qspinbox.h>
+#include <qlayout.h>
+
+#include "klocale.h"
+
+/*
+ * Constructs a pwGenWnd as a child of 'parent', with the
+ * name 'name'.
+ *
+ */
+pwGenWnd::pwGenWnd( QWidget* parent, const char* name)
+ : KDialogBase( KDialogBase::Plain, i18n( "Password generator" ),
+ KDialogBase::Ok | KDialogBase::Cancel,
+ KDialogBase::Ok, parent, name, true )
+{
+ if ( !name )
+ setName( "pwGenWnd" );
+
+ QWidget *page = plainPage();
+ QVBoxLayout* pwGenWndLayout = new QVBoxLayout( page, 11, 6, "pwGenWndLayout");
+
+ QGroupBox* groupBox1 = new QGroupBox( page, "groupBox1" );
+ groupBox1->setTitle( i18n( "Character set:" ) );
+ groupBox1->setColumnLayout(0, Qt::Vertical );
+ groupBox1->layout()->setSpacing( 6 );
+ groupBox1->layout()->setMargin( 11 );
+ QVBoxLayout* groupBox1Layout = new QVBoxLayout( groupBox1->layout() );
+ groupBox1Layout->setAlignment( Qt::AlignTop );
+
+ int_charLowerCheckBox = new QCheckBox( i18n("Lowercase (abc)"), groupBox1, "int_charLowerCheckBox" );
+ int_charLowerCheckBox->setChecked( TRUE );
+ groupBox1Layout->addWidget( int_charLowerCheckBox );
+
+ int_charUpperCheckBox = new QCheckBox( i18n("Uppercase (ABC)"), groupBox1, "int_charUpperCheckBox" );
+ int_charUpperCheckBox->setChecked( TRUE );
+ groupBox1Layout->addWidget( int_charUpperCheckBox );
+
+
+ int_charNumCheckBox = new QCheckBox( i18n("Numbers (123)"), groupBox1, "int_charNumCheckBox" );
+ int_charNumCheckBox->setChecked( TRUE );
+ groupBox1Layout->addWidget( int_charNumCheckBox );
+
+ int_charSpecCheckBox = new QCheckBox( i18n("Special characters:"), groupBox1, "int_charSpecCheckBox" );
+ groupBox1Layout->addWidget( int_charSpecCheckBox );
+
+ QLabel* textLabel7 = new QLabel( groupBox1, "textLabel7" );
+ QString st("\x21\x22\xc2\xa7\x24\x25\x26\x2f\x28\x29\x3d\x3f\x2c\x2e\x2d\x3b\x3a\x5f\x2b");
+ textLabel7->setText( st.utf8() );
+ groupBox1Layout->addWidget( textLabel7 );
+
+ int_charBlankCheckBox = new QCheckBox( i18n( "Spaces (blank characters)"), groupBox1, "int_charBlankCheckBox" );
+ groupBox1Layout->addWidget( int_charBlankCheckBox );
+
+ QHBoxLayout* layout7 = new QHBoxLayout( 0, 0, 6, "layout7");
+
+ int_charUserCheckBox = new QCheckBox( i18n("User defined:"), groupBox1, "int_charUserCheckBox" );
+ layout7->addWidget( int_charUserCheckBox );
+
+ int_userDefLineEdit = new QLineEdit( groupBox1, "int_userDefLineEdit" );
+ int_userDefLineEdit->setEnabled( FALSE );
+ layout7->addWidget( int_userDefLineEdit );
+ groupBox1Layout->addLayout( layout7 );
+ pwGenWndLayout->addWidget( groupBox1 );
+
+
+ QHBoxLayout* layout8 = new QHBoxLayout( 0, 0, 6, "layout8");
+
+ int_lenSpinBox = new QSpinBox( page, "int_lenSpinBox" );
+ QLabel* textLabel2 = new QLabel( int_lenSpinBox, i18n("Password Length:"), page, "textLabel2" );
+ layout8->addWidget( textLabel2 );
+
+ int_lenSpinBox->setMaxValue( 9999 );
+ int_lenSpinBox->setMinValue( 1 );
+ int_lenSpinBox->setValue( 8 );
+ layout8->addWidget( int_lenSpinBox );
+ pwGenWndLayout->addLayout( layout8 );
+
+ int_filterCheckBox = new QCheckBox( i18n( "Enable Filtering to get better passwords" ), page, "int_filterCheckBox" );
+ int_filterCheckBox->setChecked( TRUE );
+ pwGenWndLayout->addWidget( int_filterCheckBox );
+
+ setButtonText( KDialogBase::Ok, "&Generate now" );
+
+ // signals and slots connections
+ connect( int_charUserCheckBox, SIGNAL( toggled(bool) ), int_userDefLineEdit, SLOT( setEnabled(bool) ) );
+}
+
+/*
+ * Destroys the object and frees any allocated resources
+ */
+pwGenWnd::~pwGenWnd()
+{
+ // no need to delete child widgets, Qt does it all for us
+}
+
+void pwGenWnd::cancelButton_slot()
+{
+ qWarning( "pwGenWnd::cancelButton_slot(): Not implemented yet" );
+}
+
+void pwGenWnd::genButton_slot()
+{
+ qWarning( "pwGenWnd::genButton_slot(): Not implemented yet" );
+}
+
diff --git a/pwmanager/pwmanager/pwgenwnd_emb.h b/pwmanager/pwmanager/pwgenwnd_emb.h
new file mode 100644
index 0000000..dcc1787
--- a/dev/null
+++ b/pwmanager/pwmanager/pwgenwnd_emb.h
@@ -0,0 +1,59 @@
+/*
+ This file is part of PwManager/Platform independent.
+ Copyright (c) 2004 Ulf Schenk
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+ As a special exception, permission is given to link this program
+ with any edition of Qt, and distribute the resulting executable,
+ without including the source code for Qt in the source distribution.
+
+$Id$
+*/
+
+#ifndef PWGENWND_EMB_H
+#define PWGENWND_EMB_H
+
+#include <kdialogbase.h>
+
+class QLineEdit;
+class QSpinBox;
+class QCheckBox;
+
+class pwGenWnd : public KDialogBase
+{
+ Q_OBJECT
+
+public:
+ pwGenWnd( QWidget* parent = 0, const char* name = 0);
+ ~pwGenWnd();
+
+ QCheckBox* int_charLowerCheckBox;
+ QCheckBox* int_charUpperCheckBox;
+ QCheckBox* int_charNumCheckBox;
+ QCheckBox* int_charSpecCheckBox;
+ QCheckBox* int_charBlankCheckBox;
+ QCheckBox* int_charUserCheckBox;
+ QLineEdit* int_userDefLineEdit;
+ QSpinBox* int_lenSpinBox;
+ QCheckBox* int_filterCheckBox;
+
+public slots:
+ virtual void cancelButton_slot();
+ virtual void genButton_slot();
+
+};
+
+#endif // PWGENWND_H