wlanutilities/testwizard/src/FirstView.cpp
author hgs
Mon, 23 Aug 2010 13:30:09 +0300
changeset 53 bdc64aa9b954
parent 39 7b3e49e4608a
child 58 301aeb18ae47
permissions -rw-r--r--
201033
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
39
hgs
parents:
diff changeset
     1
/*
53
hgs
parents: 39
diff changeset
     2
* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents: 39
diff changeset
     3
* All rights reserved.
hgs
parents: 39
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents: 39
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents: 39
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents: 39
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents: 39
diff changeset
     8
*
hgs
parents: 39
diff changeset
     9
* Initial Contributors:
hgs
parents: 39
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents: 39
diff changeset
    11
*
hgs
parents: 39
diff changeset
    12
* Contributors:
hgs
parents: 39
diff changeset
    13
*
hgs
parents: 39
diff changeset
    14
* Description: 
hgs
parents: 39
diff changeset
    15
* Test application for wizards.
hgs
parents: 39
diff changeset
    16
*/
39
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
#include <qgraphicswidget>
hgs
parents:
diff changeset
    19
#include <hbpushbutton.h>
hgs
parents:
diff changeset
    20
#include <hbdocumentloader.h>
hgs
parents:
diff changeset
    21
#include <hbcombobox.h>
hgs
parents:
diff changeset
    22
#include <hbcheckbox.h>
hgs
parents:
diff changeset
    23
#include <hblineedit.h>
hgs
parents:
diff changeset
    24
#include <hblabel.h>
hgs
parents:
diff changeset
    25
hgs
parents:
diff changeset
    26
#include <qdebug.h>
hgs
parents:
diff changeset
    27
hgs
parents:
diff changeset
    28
#include "firstview.h"
hgs
parents:
diff changeset
    29
#include "wlanwizard.h"
hgs
parents:
diff changeset
    30
hgs
parents:
diff changeset
    31
FirstView::FirstView() :
hgs
parents:
diff changeset
    32
    mWizard(NULL)
hgs
parents:
diff changeset
    33
{
hgs
parents:
diff changeset
    34
    qDebug("FirstView::FirstView()");
hgs
parents:
diff changeset
    35
    bool ok = false;
hgs
parents:
diff changeset
    36
    HbDocumentLoader loader;
hgs
parents:
diff changeset
    37
    loader.load(":/docml/mainview.docml", &ok);
hgs
parents:
diff changeset
    38
    Q_ASSERT_X(ok, "EAP Wizard EXE", "Invalid docml file");
hgs
parents:
diff changeset
    39
hgs
parents:
diff changeset
    40
    QGraphicsWidget *widget = loader.findWidget("view");
hgs
parents:
diff changeset
    41
    Q_ASSERT_X(widget != 0, "TestEapWizard", "View not found");
hgs
parents:
diff changeset
    42
hgs
parents:
diff changeset
    43
    HbPushButton *action = qobject_cast<HbPushButton *> (loader.findObject("startWizard"));
hgs
parents:
diff changeset
    44
    Q_ASSERT_X(action != 0, "TestEapWizard", "startWizard not found");
hgs
parents:
diff changeset
    45
    connect(action, SIGNAL(clicked(bool)), this, SLOT(start(bool)));
hgs
parents:
diff changeset
    46
hgs
parents:
diff changeset
    47
    mUseConf = qobject_cast<HbCheckBox *> (loader.findWidget("useConf"));
hgs
parents:
diff changeset
    48
    Q_ASSERT_X(mUseConf != 0, "TestEapWizard", "useConf not found");
hgs
parents:
diff changeset
    49
hgs
parents:
diff changeset
    50
    mSsid = qobject_cast<HbLineEdit *> (loader.findWidget("ssid"));
hgs
parents:
diff changeset
    51
    Q_ASSERT_X(mSsid != 0, "TestEapWizard", "ssid not found");
hgs
parents:
diff changeset
    52
hgs
parents:
diff changeset
    53
    mNetworkMode = qobject_cast<HbComboBox *> (loader.findWidget("networkMode"));
hgs
parents:
diff changeset
    54
    Q_ASSERT_X(mNetworkMode != 0, "TestEapWizard", "networkMode not found");
hgs
parents:
diff changeset
    55
hgs
parents:
diff changeset
    56
    mSecurityMode = qobject_cast<HbComboBox *> (loader.findWidget("securityMode"));
hgs
parents:
diff changeset
    57
    Q_ASSERT_X(mSecurityMode != 0, "TestEapWizard", "securityMode not found");
hgs
parents:
diff changeset
    58
hgs
parents:
diff changeset
    59
    mUseWpaPsk = qobject_cast<HbCheckBox *> (loader.findWidget("useWpaPsk"));
hgs
parents:
diff changeset
    60
    Q_ASSERT_X(mUseWpaPsk != 0, "TestEapWizard", "useWpaPsk not found");
hgs
parents:
diff changeset
    61
        
hgs
parents:
diff changeset
    62
    mUseWps = qobject_cast<HbCheckBox *> (loader.findWidget("useWps"));
hgs
parents:
diff changeset
    63
    Q_ASSERT_X(mUseConf != 0, "TestEapWizard", "useWps not found");
hgs
parents:
diff changeset
    64
    
hgs
parents:
diff changeset
    65
    mStatus = qobject_cast<HbLabel *> (loader.findWidget("labelWizardStatus"));
hgs
parents:
diff changeset
    66
    Q_ASSERT_X(mStatus != 0, "TestEapWizard", "labelWizardStatus not found");
hgs
parents:
diff changeset
    67
hgs
parents:
diff changeset
    68
    setWidget(widget);
hgs
parents:
diff changeset
    69
    qDebug("FirstView::FirstView() - done %d", action);
hgs
parents:
diff changeset
    70
}
hgs
parents:
diff changeset
    71
hgs
parents:
diff changeset
    72
FirstView::~FirstView()
hgs
parents:
diff changeset
    73
{
hgs
parents:
diff changeset
    74
    delete mWizard;
hgs
parents:
diff changeset
    75
}
hgs
parents:
diff changeset
    76
hgs
parents:
diff changeset
    77
void FirstView::start(bool)
hgs
parents:
diff changeset
    78
{
hgs
parents:
diff changeset
    79
    qDebug("FirstView::Start");
hgs
parents:
diff changeset
    80
    if (!mWizard) {
hgs
parents:
diff changeset
    81
        mWizard = new WlanWizard(mainWindow());
hgs
parents:
diff changeset
    82
hgs
parents:
diff changeset
    83
        connect(mWizard, SIGNAL(finished(int, bool)), this, SLOT(finished(int, bool)));
hgs
parents:
diff changeset
    84
        connect(mWizard, SIGNAL(cancelled()), this, SLOT(cancelled()));
hgs
parents:
diff changeset
    85
    }
hgs
parents:
diff changeset
    86
hgs
parents:
diff changeset
    87
    if (mUseConf->isChecked()) {
hgs
parents:
diff changeset
    88
        mWizard->setParameters(
hgs
parents:
diff changeset
    89
            mSsid->text(), 
hgs
parents:
diff changeset
    90
            mNetworkMode->currentIndex(), 
hgs
parents:
diff changeset
    91
            1 << mSecurityMode->currentIndex(),
hgs
parents:
diff changeset
    92
            mUseWpaPsk->isChecked(),
hgs
parents:
diff changeset
    93
            mUseWps->isChecked());
hgs
parents:
diff changeset
    94
    }
hgs
parents:
diff changeset
    95
hgs
parents:
diff changeset
    96
    mWizard->show();
hgs
parents:
diff changeset
    97
}
hgs
parents:
diff changeset
    98
hgs
parents:
diff changeset
    99
void FirstView::deleteWizard()
hgs
parents:
diff changeset
   100
{
hgs
parents:
diff changeset
   101
    qDebug("FirstView::deleteWizard");
hgs
parents:
diff changeset
   102
hgs
parents:
diff changeset
   103
    Q_ASSERT(mWizard);
hgs
parents:
diff changeset
   104
    mWizard->deleteLater();
hgs
parents:
diff changeset
   105
    mWizard = NULL;
hgs
parents:
diff changeset
   106
hgs
parents:
diff changeset
   107
}
hgs
parents:
diff changeset
   108
hgs
parents:
diff changeset
   109
void FirstView::finished(int iapId, bool connected)
hgs
parents:
diff changeset
   110
{
hgs
parents:
diff changeset
   111
    qDebug("FirstView::complete(), iap id: %d, connected: %d", iapId, connected);
hgs
parents:
diff changeset
   112
    QString text;
hgs
parents:
diff changeset
   113
    text.setNum(iapId);
hgs
parents:
diff changeset
   114
    text.prepend("Finished, IAP ID: ");
hgs
parents:
diff changeset
   115
    mStatus->setPlainText(text);
hgs
parents:
diff changeset
   116
    deleteWizard();
hgs
parents:
diff changeset
   117
}
hgs
parents:
diff changeset
   118
hgs
parents:
diff changeset
   119
void FirstView::cancelled()
hgs
parents:
diff changeset
   120
{
hgs
parents:
diff changeset
   121
    qDebug("FirstView::cancelled()");
hgs
parents:
diff changeset
   122
    mStatus->setPlainText("Cancelled");
hgs
parents:
diff changeset
   123
    deleteWizard();
hgs
parents:
diff changeset
   124
}