diff options
author | nils <nils@34ebc366-c3a9-4b3c-9f84-69acf7962910> | 2011-10-30 23:04:42 +0000 |
---|---|---|
committer | nils <nils@34ebc366-c3a9-4b3c-9f84-69acf7962910> | 2011-10-30 23:04:42 +0000 |
commit | 22471b148d8877c3fd721c443792ad1e721d00f9 (patch) | |
tree | 62c683edf0e9f9b900d7a27bc6f66e4af3ae1596 /wizard.cpp | |
parent | cleaned up (diff) | |
download | gpg4usb-22471b148d8877c3fd721c443792ad1e721d00f9.tar.gz gpg4usb-22471b148d8877c3fd721c443792ad1e721d00f9.zip |
added first idea of wizard
git-svn-id: http://cpunk.de/svn/src/gpg4usb/trunk@591 34ebc366-c3a9-4b3c-9f84-69acf7962910
Diffstat (limited to '')
-rw-r--r-- | wizard.cpp | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/wizard.cpp b/wizard.cpp new file mode 100644 index 0000000..320a9ad --- /dev/null +++ b/wizard.cpp @@ -0,0 +1,121 @@ +/* + * wizard.cpp + * + * Copyright 2008 gpg4usb-team <[email protected]> + * + * This file is part of gpg4usb. + * + * Gpg4usb 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 3 of the License, or + * (at your option) any later version. + * + * Gpg4usb 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 gpg4usb. If not, see <http://www.gnu.org/licenses/> + */ + +#include <QtGui> + + #include "wizard.h" + +Wizard::Wizard(GpgME::GpgContext *ctx, QWidget *parent) + : QWizard(parent) +{ + mCtx=ctx; + IntroPage *introPage = new IntroPage(); + KeyGenPage *keyGenPage = new KeyGenPage(mCtx); + ConclusionPage *conclusionPage = new ConclusionPage(); + addPage(introPage); + addPage(keyGenPage); + addPage(conclusionPage); + +#ifndef Q_WS_MAC + setWizardStyle(ModernStyle); +#endif + + setWindowTitle(tr("First Start Wizard")); +} + +IntroPage::IntroPage(QWidget *parent) + : QWizardPage(parent) + { + setTitle(tr("Introduction")); + + topLabel = new QLabel(tr("This wizard will help you getting started with encrypting and decrypting.")); + topLabel->setWordWrap(true); + + QVBoxLayout *layout = new QVBoxLayout; + layout->addWidget(topLabel); + setLayout(layout); + } + +int IntroPage::nextId() const +{ + return 1; +} + +KeyGenPage::KeyGenPage(GpgME::GpgContext *ctx, QWidget *parent) + : QWizardPage(parent) +{ + mCtx=ctx; + setTitle(tr("Key-Generating")); + topLabel = new QLabel(tr("First you've got to create an own key.")); + createKeyButton = new QPushButton(tr("Create New Key")); + layout = new QVBoxLayout; + layout->addWidget(topLabel); + layout->addWidget(createKeyButton); + connect(createKeyButton, SIGNAL(clicked()), this, SLOT(generateKeyDialog())); + + setLayout(layout); +} + +int KeyGenPage::nextId() const +{ + return 2; +} + +void KeyGenPage::generateKeyDialog() +{ + KeyGenDialog *keyGenDialog = new KeyGenDialog(mCtx, this); + connect(mCtx, SIGNAL(keyDBChanged()), this, SLOT(showKeyGeneratedMessage())); + keyGenDialog->show(); +} + +void KeyGenPage::showKeyGeneratedMessage() +{ + layout->addWidget(new QLabel(tr("key generated. Now you can crypt and sign texts."))); +} + + +ConclusionPage::ConclusionPage(QWidget *parent) + : QWizardPage(parent) +{ + setTitle(tr("Finish Start Wizard")); + + bottomLabel = new QLabel(tr("You're ready to encrypt and decrpt now.")); + bottomLabel->setWordWrap(true); + + showWizardCheckBox = new QCheckBox(tr("Dont show the wizard again.")); + showWizardCheckBox->setChecked(Qt::Checked); + + QVBoxLayout *layout = new QVBoxLayout; + layout->addWidget(bottomLabel); + layout->addWidget(showWizardCheckBox); + setLayout(layout); + setVisible(true); +} + +int ConclusionPage::nextId() const +{ + if (showWizardCheckBox->isChecked()) + { + QSettings settings; + settings.setValue("wizard/showWizard", false); + } + return -1; +} |