policymanagement/policyengine/policyengineui/src/PolicyEngineUI.cpp
author hgs
Fri, 17 Sep 2010 19:59:15 +0530
changeset 66 08c8318ec9cb
parent 55 1c556dee8eb1
permissions -rw-r--r--
201037
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
55
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2000 Nokia Corporation and/or its subsidiary(-ies). 
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description: Implementation of policymanagement components
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
#include "PolicyEngineUI.h"
hgs
parents:
diff changeset
    19
#include <hbpopup.h>
hgs
parents:
diff changeset
    20
#include <hbinputdialog.h>
hgs
parents:
diff changeset
    21
#include <hbdocumentloader.h>
hgs
parents:
diff changeset
    22
#include <hbdialog.h>
hgs
parents:
diff changeset
    23
#include <hblabel.h>
hgs
parents:
diff changeset
    24
#include <hbaction.h>
hgs
parents:
diff changeset
    25
#include <hbnotificationdialog.h>
hgs
parents:
diff changeset
    26
#include <hbmessagebox.h>
hgs
parents:
diff changeset
    27
#include <hbdevicenotificationdialog.h>
hgs
parents:
diff changeset
    28
#include "Logger.h"
hgs
parents:
diff changeset
    29
hgs
parents:
diff changeset
    30
const int KMaxTries = 4;
hgs
parents:
diff changeset
    31
const int KMaxCodeLength = 4;
hgs
parents:
diff changeset
    32
hgs
parents:
diff changeset
    33
hgs
parents:
diff changeset
    34
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    35
// PolicyEngineUI::PolicyEngineUI()
hgs
parents:
diff changeset
    36
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    37
PolicyEngineUI::PolicyEngineUI(const QVariantMap& parameters)
hgs
parents:
diff changeset
    38
    {
hgs
parents:
diff changeset
    39
    estbTrustCount = KMaxTries;
hgs
parents:
diff changeset
    40
    DisplayNotificationDialog(parameters);
hgs
parents:
diff changeset
    41
    }
hgs
parents:
diff changeset
    42
hgs
parents:
diff changeset
    43
hgs
parents:
diff changeset
    44
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    45
// PolicyEngineUI::~PolicyEngineUI()
hgs
parents:
diff changeset
    46
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    47
PolicyEngineUI::~PolicyEngineUI()
hgs
parents:
diff changeset
    48
    {
hgs
parents:
diff changeset
    49
hgs
parents:
diff changeset
    50
    }
hgs
parents:
diff changeset
    51
hgs
parents:
diff changeset
    52
hgs
parents:
diff changeset
    53
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    54
// PolicyEngineUI::DisplayNotificationDialog()
hgs
parents:
diff changeset
    55
// Read the parameters sent from client
hgs
parents:
diff changeset
    56
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    57
void PolicyEngineUI::DisplayNotificationDialog(const QVariantMap& parameters)
hgs
parents:
diff changeset
    58
    {
hgs
parents:
diff changeset
    59
    LOGSTRING( "+ DisplayNotificationDialog +" );
hgs
parents:
diff changeset
    60
    QVariantMap::const_iterator i = parameters.constBegin();
hgs
parents:
diff changeset
    61
hgs
parents:
diff changeset
    62
    while (i != parameters.constEnd())
hgs
parents:
diff changeset
    63
        {
hgs
parents:
diff changeset
    64
        if (i.key().toAscii() == "serverdisplayname")
hgs
parents:
diff changeset
    65
            {
hgs
parents:
diff changeset
    66
            iServerName = i.value().toString();
hgs
parents:
diff changeset
    67
            }
hgs
parents:
diff changeset
    68
        else if (i.key().toAscii() == "fingerprint")
hgs
parents:
diff changeset
    69
            {
hgs
parents:
diff changeset
    70
            iFingerprint = i.value().toString();
hgs
parents:
diff changeset
    71
            }
hgs
parents:
diff changeset
    72
        ++i;
hgs
parents:
diff changeset
    73
        }
hgs
parents:
diff changeset
    74
    
hgs
parents:
diff changeset
    75
    TBuf<50> server(iServerName.utf16());
hgs
parents:
diff changeset
    76
    TBuf<10> buffer(iFingerprint.utf16());
hgs
parents:
diff changeset
    77
hgs
parents:
diff changeset
    78
    LOGSTRING2( "serverdisplayname %S", &server );
hgs
parents:
diff changeset
    79
    LOGSTRING2( "fingerprint %S", &buffer );
hgs
parents:
diff changeset
    80
hgs
parents:
diff changeset
    81
    ShowInputDialog();
hgs
parents:
diff changeset
    82
    LOGSTRING( "- DisplayNotificationDialog -" );
hgs
parents:
diff changeset
    83
    }
hgs
parents:
diff changeset
    84
hgs
parents:
diff changeset
    85
hgs
parents:
diff changeset
    86
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    87
// PolicyEngineUI::ShowInputDialog()
hgs
parents:
diff changeset
    88
// Show the accept control dialog
hgs
parents:
diff changeset
    89
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    90
void PolicyEngineUI::ShowInputDialog()
hgs
parents:
diff changeset
    91
    {
hgs
parents:
diff changeset
    92
    LOGSTRING( "+ ShowInputDialog +" );
hgs
parents:
diff changeset
    93
    HbDocumentLoader loader;
hgs
parents:
diff changeset
    94
    bool ok = false;
hgs
parents:
diff changeset
    95
    loader.load(":/xml/dialog.docml", &ok);
hgs
parents:
diff changeset
    96
    if (!ok)
hgs
parents:
diff changeset
    97
        {
hgs
parents:
diff changeset
    98
        return;
hgs
parents:
diff changeset
    99
        }
hgs
parents:
diff changeset
   100
hgs
parents:
diff changeset
   101
    HbDialog *dialog1 =
hgs
parents:
diff changeset
   102
            qobject_cast<HbDialog *> (loader.findWidget("dialog"));
hgs
parents:
diff changeset
   103
hgs
parents:
diff changeset
   104
    //set heading content
hgs
parents:
diff changeset
   105
    HbLabel *contentheading = qobject_cast<HbLabel *> (loader.findWidget(
hgs
parents:
diff changeset
   106
            "qtl_dialog_pri_heading"));
hgs
parents:
diff changeset
   107
    QString heading(hbTrId("txt_device_update_title_security_information"));
hgs
parents:
diff changeset
   108
    contentheading->setPlainText(heading);
hgs
parents:
diff changeset
   109
hgs
parents:
diff changeset
   110
    //set body content
hgs
parents:
diff changeset
   111
    HbLabel *contentbody = qobject_cast<HbLabel *> (loader.findWidget(
hgs
parents:
diff changeset
   112
            "qtl_dialog_pri5"));
hgs
parents:
diff changeset
   113
hgs
parents:
diff changeset
   114
    QString body(
hgs
parents:
diff changeset
   115
            (hbTrId("txt_device_update_info_1_server_wants_to_contro").arg(
hgs
parents:
diff changeset
   116
                    iServerName)));
hgs
parents:
diff changeset
   117
    contentbody->setTextWrapping(Hb::TextWordWrap);
hgs
parents:
diff changeset
   118
    contentbody->setPlainText(body);
hgs
parents:
diff changeset
   119
hgs
parents:
diff changeset
   120
    HbAction *primaryAction = qobject_cast<HbAction *> (
hgs
parents:
diff changeset
   121
            dialog1->actions().at(0));
hgs
parents:
diff changeset
   122
    HbAction *secondaryAction = qobject_cast<HbAction *> (
hgs
parents:
diff changeset
   123
            dialog1->actions().at(1));
hgs
parents:
diff changeset
   124
hgs
parents:
diff changeset
   125
    //set dialog properties
hgs
parents:
diff changeset
   126
    dialog1->setTimeout(HbPopup::NoTimeout);
hgs
parents:
diff changeset
   127
    dialog1->setDismissPolicy(HbPopup::NoDismiss);
hgs
parents:
diff changeset
   128
hgs
parents:
diff changeset
   129
    QObject::connect(primaryAction, SIGNAL(triggered()), this,
hgs
parents:
diff changeset
   130
            SLOT(onOKSelected()));
hgs
parents:
diff changeset
   131
    QObject::connect(secondaryAction, SIGNAL(triggered()), this,
hgs
parents:
diff changeset
   132
            SLOT(onCancelSelected()));
hgs
parents:
diff changeset
   133
66
hgs
parents: 55
diff changeset
   134
	emit applicationReady();
55
hgs
parents:
diff changeset
   135
    if (dialog1)
hgs
parents:
diff changeset
   136
        dialog1->show();
hgs
parents:
diff changeset
   137
hgs
parents:
diff changeset
   138
    LOGSTRING( "- ShowInputDialog -" );
hgs
parents:
diff changeset
   139
    }
hgs
parents:
diff changeset
   140
hgs
parents:
diff changeset
   141
hgs
parents:
diff changeset
   142
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   143
// PolicyEngineUI::onOKSelected()
hgs
parents:
diff changeset
   144
// Show the user input dialog once control is accepted
hgs
parents:
diff changeset
   145
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   146
void PolicyEngineUI::onOKSelected()
hgs
parents:
diff changeset
   147
    {
hgs
parents:
diff changeset
   148
hgs
parents:
diff changeset
   149
    LOGSTRING( "+ onOKSelected +" );
hgs
parents:
diff changeset
   150
hgs
parents:
diff changeset
   151
    HbDocumentLoader loader;
hgs
parents:
diff changeset
   152
    bool ok = false;
hgs
parents:
diff changeset
   153
    loader.load(":/xml/InputDialog.docml", &ok);
hgs
parents:
diff changeset
   154
    if (!ok)
hgs
parents:
diff changeset
   155
        {
hgs
parents:
diff changeset
   156
        return;
hgs
parents:
diff changeset
   157
        }
hgs
parents:
diff changeset
   158
hgs
parents:
diff changeset
   159
    mdialog = qobject_cast<HbDialog *> (loader.findWidget("dialog"));
hgs
parents:
diff changeset
   160
hgs
parents:
diff changeset
   161
    //set heading content
hgs
parents:
diff changeset
   162
    HbLabel *contentheading = qobject_cast<HbLabel *> (loader.findWidget(
hgs
parents:
diff changeset
   163
            "qtl_dialog_pri_heading"));
hgs
parents:
diff changeset
   164
    QString heading(hbTrId("txt_device_update_title_security_information"));
hgs
parents:
diff changeset
   165
    contentheading->setPlainText(heading);
hgs
parents:
diff changeset
   166
hgs
parents:
diff changeset
   167
    //set label
hgs
parents:
diff changeset
   168
    HbLabel *contentlabel = qobject_cast<HbLabel *> (loader.findWidget(
hgs
parents:
diff changeset
   169
            "HeadingLabel"));
hgs
parents:
diff changeset
   170
    contentlabel->setTextWrapping(Hb::TextWordWrap);
hgs
parents:
diff changeset
   171
    QString label(
hgs
parents:
diff changeset
   172
                (hbTrId("txt_device_update_info_enter_first_4_characters_of").arg(
hgs
parents:
diff changeset
   173
                        iServerName)));
hgs
parents:
diff changeset
   174
    contentlabel ->setPlainText(label);
hgs
parents:
diff changeset
   175
hgs
parents:
diff changeset
   176
    //set length for editline
hgs
parents:
diff changeset
   177
    mContentEdit = qobject_cast<HbLineEdit*> (loader.findWidget("InputLine"));
hgs
parents:
diff changeset
   178
    mContentEdit->setMaxLength(KMaxCodeLength);
hgs
parents:
diff changeset
   179
hgs
parents:
diff changeset
   180
    //set dialog properties
hgs
parents:
diff changeset
   181
    mdialog->setTimeout(HbPopup::NoTimeout);
hgs
parents:
diff changeset
   182
    mdialog->setDismissPolicy(HbPopup::NoDismiss);
hgs
parents:
diff changeset
   183
    
hgs
parents:
diff changeset
   184
    HbAction* primaryAction = (HbAction*) (mdialog->actions().at(0));
hgs
parents:
diff changeset
   185
    HbAction *secondaryAction = (HbAction*) (mdialog->actions().at(1));
hgs
parents:
diff changeset
   186
    primaryAction->setEnabled(false);
hgs
parents:
diff changeset
   187
hgs
parents:
diff changeset
   188
    QObject::connect(primaryAction, SIGNAL(triggered()), this,
hgs
parents:
diff changeset
   189
            SLOT(establishTrust()));
hgs
parents:
diff changeset
   190
    QObject::connect(secondaryAction, SIGNAL(triggered()), this,
hgs
parents:
diff changeset
   191
            SLOT(cancelTrust()));
hgs
parents:
diff changeset
   192
    QObject::connect(mContentEdit, SIGNAL(contentsChanged()), this,
hgs
parents:
diff changeset
   193
            SLOT(codeTextChanged()));
hgs
parents:
diff changeset
   194
hgs
parents:
diff changeset
   195
    if (mdialog)
hgs
parents:
diff changeset
   196
        mdialog->show();
hgs
parents:
diff changeset
   197
hgs
parents:
diff changeset
   198
    LOGSTRING( "- onOKSelected -" );
hgs
parents:
diff changeset
   199
    }
hgs
parents:
diff changeset
   200
hgs
parents:
diff changeset
   201
hgs
parents:
diff changeset
   202
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   203
// PolicyEngineUI::onCancelSelected()
hgs
parents:
diff changeset
   204
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   205
void PolicyEngineUI::onCancelSelected()
hgs
parents:
diff changeset
   206
    {
hgs
parents:
diff changeset
   207
    LOGSTRING( "+ onCancelSelected +" );
hgs
parents:
diff changeset
   208
hgs
parents:
diff changeset
   209
    QVariantMap result;
hgs
parents:
diff changeset
   210
hgs
parents:
diff changeset
   211
    result.insert("keyResponse", -1);
hgs
parents:
diff changeset
   212
    emit
hgs
parents:
diff changeset
   213
    deviceDialogData(result);
hgs
parents:
diff changeset
   214
hgs
parents:
diff changeset
   215
    emit
hgs
parents:
diff changeset
   216
    deviceDialogClosed();
hgs
parents:
diff changeset
   217
hgs
parents:
diff changeset
   218
    LOGSTRING( "- onCancelSelected -" );
hgs
parents:
diff changeset
   219
    }
hgs
parents:
diff changeset
   220
hgs
parents:
diff changeset
   221
hgs
parents:
diff changeset
   222
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   223
// PolicyEngineUI::onTrustCreation()
hgs
parents:
diff changeset
   224
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   225
void PolicyEngineUI::onTrustCreation()
hgs
parents:
diff changeset
   226
    {
hgs
parents:
diff changeset
   227
    LOGSTRING( "+ onTrustCreation +" );
hgs
parents:
diff changeset
   228
    QVariantMap result;
hgs
parents:
diff changeset
   229
hgs
parents:
diff changeset
   230
    result.insert("keyResponse", 0);
hgs
parents:
diff changeset
   231
    emit
hgs
parents:
diff changeset
   232
    deviceDialogData(result);
hgs
parents:
diff changeset
   233
hgs
parents:
diff changeset
   234
    emit
hgs
parents:
diff changeset
   235
    deviceDialogClosed();
hgs
parents:
diff changeset
   236
hgs
parents:
diff changeset
   237
    LOGSTRING( "- onTrustCreation -" );
hgs
parents:
diff changeset
   238
    }
hgs
parents:
diff changeset
   239
hgs
parents:
diff changeset
   240
hgs
parents:
diff changeset
   241
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   242
// PolicyEngineUI::establishTrust()
hgs
parents:
diff changeset
   243
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   244
void PolicyEngineUI::establishTrust()
hgs
parents:
diff changeset
   245
    {
hgs
parents:
diff changeset
   246
    LOGSTRING( "+ establishTrust +" );
hgs
parents:
diff changeset
   247
    bool retVal; // return value from code verification API.
hgs
parents:
diff changeset
   248
    estbTrustCount--;
hgs
parents:
diff changeset
   249
    retVal = verifyFingerPrint();
hgs
parents:
diff changeset
   250
hgs
parents:
diff changeset
   251
    if (retVal)
hgs
parents:
diff changeset
   252
        {
hgs
parents:
diff changeset
   253
        LOGSTRING( "Trust Created" );
hgs
parents:
diff changeset
   254
        //Reset the counter.
hgs
parents:
diff changeset
   255
        estbTrustCount = 0;
hgs
parents:
diff changeset
   256
        onTrustCreation();
hgs
parents:
diff changeset
   257
hgs
parents:
diff changeset
   258
        }
hgs
parents:
diff changeset
   259
    else
hgs
parents:
diff changeset
   260
        {
hgs
parents:
diff changeset
   261
        //check the number of tries.
hgs
parents:
diff changeset
   262
        if (estbTrustCount == 0)
hgs
parents:
diff changeset
   263
            {
hgs
parents:
diff changeset
   264
            //Access denied.
hgs
parents:
diff changeset
   265
            LOGSTRING( "Access Denied" );
hgs
parents:
diff changeset
   266
            HbMessageBox *msgBox = new HbMessageBox();
hgs
parents:
diff changeset
   267
            msgBox->setHeadingWidget(new HbLabel(hbTrId(
hgs
parents:
diff changeset
   268
                    "txt_device_update_title_security_information")));
hgs
parents:
diff changeset
   269
hgs
parents:
diff changeset
   270
            msgBox->setText(hbTrId(
hgs
parents:
diff changeset
   271
                    "txt_device_update_info_security_info_access_denied"));
hgs
parents:
diff changeset
   272
            msgBox->setTimeout(HbDialog::NoTimeout);
hgs
parents:
diff changeset
   273
            msgBox->setDismissPolicy(HbDialog::NoDismiss);
hgs
parents:
diff changeset
   274
hgs
parents:
diff changeset
   275
            HbAction *action = (HbAction*) (msgBox->actions().at(0));
hgs
parents:
diff changeset
   276
            QObject::connect(action, SIGNAL(triggered()), this,
hgs
parents:
diff changeset
   277
                    SLOT(onCancelSelected()));
hgs
parents:
diff changeset
   278
hgs
parents:
diff changeset
   279
            msgBox->show();
hgs
parents:
diff changeset
   280
            }
hgs
parents:
diff changeset
   281
        else
hgs
parents:
diff changeset
   282
            {
hgs
parents:
diff changeset
   283
            LOGSTRING2( "tries left %i", estbTrustCount );
hgs
parents:
diff changeset
   284
            //Code didnot match.
hgs
parents:
diff changeset
   285
            HbDocumentLoader loader;
hgs
parents:
diff changeset
   286
            bool ok = false;
hgs
parents:
diff changeset
   287
            loader.load(":/xml/InputDialog.docml", &ok);
hgs
parents:
diff changeset
   288
            if (!ok)
hgs
parents:
diff changeset
   289
                {
hgs
parents:
diff changeset
   290
                return;
hgs
parents:
diff changeset
   291
                }
hgs
parents:
diff changeset
   292
hgs
parents:
diff changeset
   293
            mdialog = qobject_cast<HbDialog *> (loader.findWidget("dialog"));
hgs
parents:
diff changeset
   294
hgs
parents:
diff changeset
   295
            //set heading content
hgs
parents:
diff changeset
   296
            HbLabel *contentheading = qobject_cast<HbLabel *> (
hgs
parents:
diff changeset
   297
                    loader.findWidget("qtl_dialog_pri_heading"));
hgs
parents:
diff changeset
   298
            contentheading->setTextWrapping(Hb::TextWordWrap);
hgs
parents:
diff changeset
   299
            QString heading(hbTrId(
hgs
parents:
diff changeset
   300
                    "txt_device_update_title_security_information"));
hgs
parents:
diff changeset
   301
            contentheading->setPlainText(heading);
hgs
parents:
diff changeset
   302
hgs
parents:
diff changeset
   303
            //set label
hgs
parents:
diff changeset
   304
            HbLabel *contentlabel = qobject_cast<HbLabel *> (
hgs
parents:
diff changeset
   305
                    loader.findWidget("HeadingLabel"));
hgs
parents:
diff changeset
   306
            QString
hgs
parents:
diff changeset
   307
                    label(
hgs
parents:
diff changeset
   308
                            (hbTrId(
hgs
parents:
diff changeset
   309
                                    "txt_device_update_info_security_information_did_no").arg(
hgs
parents:
diff changeset
   310
                                    estbTrustCount)));
hgs
parents:
diff changeset
   311
hgs
parents:
diff changeset
   312
            contentlabel->setTextWrapping(Hb::TextWordWrap);
hgs
parents:
diff changeset
   313
            contentlabel->setPlainText(label);
hgs
parents:
diff changeset
   314
hgs
parents:
diff changeset
   315
            mContentEdit = qobject_cast<HbLineEdit*> (loader.findWidget(
hgs
parents:
diff changeset
   316
                    "InputLine"));
hgs
parents:
diff changeset
   317
            mContentEdit->setMaxLength(KMaxCodeLength);
hgs
parents:
diff changeset
   318
hgs
parents:
diff changeset
   319
            mdialog->setTimeout(HbPopup::NoTimeout);
hgs
parents:
diff changeset
   320
            mdialog->setDismissPolicy(HbPopup::NoDismiss);
hgs
parents:
diff changeset
   321
hgs
parents:
diff changeset
   322
            HbAction* primaryAction = qobject_cast<HbAction*> (
hgs
parents:
diff changeset
   323
                    mdialog->actions().at(0));
hgs
parents:
diff changeset
   324
            HbAction *secondaryAction = qobject_cast<HbAction*> (
hgs
parents:
diff changeset
   325
                    mdialog->actions().at(1));
hgs
parents:
diff changeset
   326
            primaryAction->setEnabled(false);
hgs
parents:
diff changeset
   327
hgs
parents:
diff changeset
   328
            QObject::connect(primaryAction, SIGNAL(triggered()), this,
hgs
parents:
diff changeset
   329
                    SLOT(establishTrust()));
hgs
parents:
diff changeset
   330
            QObject::connect(secondaryAction, SIGNAL(triggered()), this,
hgs
parents:
diff changeset
   331
                    SLOT(cancelTrust()));
hgs
parents:
diff changeset
   332
            QObject::connect(mContentEdit, SIGNAL(contentsChanged()), this,
hgs
parents:
diff changeset
   333
                    SLOT(codeTextChanged()));
hgs
parents:
diff changeset
   334
hgs
parents:
diff changeset
   335
            if (mdialog)
hgs
parents:
diff changeset
   336
                mdialog->show();
hgs
parents:
diff changeset
   337
            }
hgs
parents:
diff changeset
   338
        }
hgs
parents:
diff changeset
   339
    LOGSTRING( "- establishTrust -" );
hgs
parents:
diff changeset
   340
    }
hgs
parents:
diff changeset
   341
hgs
parents:
diff changeset
   342
hgs
parents:
diff changeset
   343
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   344
// PolicyEngineUI::cancelTrust()
hgs
parents:
diff changeset
   345
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   346
void PolicyEngineUI::cancelTrust()
hgs
parents:
diff changeset
   347
    {
hgs
parents:
diff changeset
   348
    LOGSTRING( "+ cancelTrust +" );
hgs
parents:
diff changeset
   349
    //Reset the counter.
hgs
parents:
diff changeset
   350
    estbTrustCount = 0;
hgs
parents:
diff changeset
   351
hgs
parents:
diff changeset
   352
    QVariantMap result;
hgs
parents:
diff changeset
   353
    result.insert("keyResponse", -1);
hgs
parents:
diff changeset
   354
    emit
hgs
parents:
diff changeset
   355
    deviceDialogData(result);
hgs
parents:
diff changeset
   356
hgs
parents:
diff changeset
   357
    emit
hgs
parents:
diff changeset
   358
    deviceDialogClosed();
hgs
parents:
diff changeset
   359
    LOGSTRING( "- cancelTrust -" );
hgs
parents:
diff changeset
   360
    }
hgs
parents:
diff changeset
   361
hgs
parents:
diff changeset
   362
hgs
parents:
diff changeset
   363
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   364
// PolicyEngineUI::setDeviceDialogParameters()
hgs
parents:
diff changeset
   365
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   366
bool PolicyEngineUI::setDeviceDialogParameters(const QVariantMap &parameters)
hgs
parents:
diff changeset
   367
    {
hgs
parents:
diff changeset
   368
	Q_UNUSED(parameters);
hgs
parents:
diff changeset
   369
    LOGSTRING( "+ setDeviceDialogParameters +" );
hgs
parents:
diff changeset
   370
    return true;
hgs
parents:
diff changeset
   371
    }
hgs
parents:
diff changeset
   372
hgs
parents:
diff changeset
   373
hgs
parents:
diff changeset
   374
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   375
// PolicyEngineUI::deviceDialogError()
hgs
parents:
diff changeset
   376
// Get error
hgs
parents:
diff changeset
   377
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   378
int PolicyEngineUI::deviceDialogError() const
hgs
parents:
diff changeset
   379
    {
hgs
parents:
diff changeset
   380
    LOGSTRING( "+ deviceDialogError +" );
hgs
parents:
diff changeset
   381
    return 0;
hgs
parents:
diff changeset
   382
    }
hgs
parents:
diff changeset
   383
hgs
parents:
diff changeset
   384
hgs
parents:
diff changeset
   385
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   386
// PolicyEngineUI::PolicyEngineUI()
hgs
parents:
diff changeset
   387
// Close device dialog
hgs
parents:
diff changeset
   388
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   389
void PolicyEngineUI::closeDeviceDialog(bool byClient)
hgs
parents:
diff changeset
   390
    {
hgs
parents:
diff changeset
   391
	Q_UNUSED(byClient);
hgs
parents:
diff changeset
   392
    LOGSTRING( "+ closeDeviceDialog +" );
hgs
parents:
diff changeset
   393
    close();
hgs
parents:
diff changeset
   394
    }
hgs
parents:
diff changeset
   395
hgs
parents:
diff changeset
   396
hgs
parents:
diff changeset
   397
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   398
// PolicyEngineUI::PolicyEngineUI()
hgs
parents:
diff changeset
   399
// Return display widget
hgs
parents:
diff changeset
   400
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   401
HbDialog *PolicyEngineUI::deviceDialogWidget() const
hgs
parents:
diff changeset
   402
    {
hgs
parents:
diff changeset
   403
    LOGSTRING( "+ deviceDialogWidget +" );
hgs
parents:
diff changeset
   404
    return const_cast<PolicyEngineUI*> (this);
hgs
parents:
diff changeset
   405
    }
hgs
parents:
diff changeset
   406
hgs
parents:
diff changeset
   407
hgs
parents:
diff changeset
   408
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   409
// PolicyEngineUI::PolicyEngineUI()
hgs
parents:
diff changeset
   410
// Verify the user entered code
hgs
parents:
diff changeset
   411
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   412
bool PolicyEngineUI::verifyFingerPrint()
hgs
parents:
diff changeset
   413
    {
hgs
parents:
diff changeset
   414
    LOGSTRING( "+ verifyFingerPrint +" );
hgs
parents:
diff changeset
   415
hgs
parents:
diff changeset
   416
    QString enteredCode = mContentEdit->text();
hgs
parents:
diff changeset
   417
    TBuf<10> buffer(enteredCode.utf16());
hgs
parents:
diff changeset
   418
hgs
parents:
diff changeset
   419
    LOGSTRING2( "User entered code %i", &buffer);
hgs
parents:
diff changeset
   420
    LOGSTRING2( "User entered code %S", &buffer);
hgs
parents:
diff changeset
   421
hgs
parents:
diff changeset
   422
    if (enteredCode.compare(iFingerprint, Qt::CaseInsensitive) == 0)
hgs
parents:
diff changeset
   423
    {
hgs
parents:
diff changeset
   424
        LOGSTRING( "+ fingerprint MATCH !!!! +" );
hgs
parents:
diff changeset
   425
        return true;
hgs
parents:
diff changeset
   426
    }
hgs
parents:
diff changeset
   427
    else
hgs
parents:
diff changeset
   428
    {
hgs
parents:
diff changeset
   429
        LOGSTRING( "+  fingerprint DOESNOT MATCH  +" );
hgs
parents:
diff changeset
   430
        return false;
hgs
parents:
diff changeset
   431
    }
hgs
parents:
diff changeset
   432
    }
hgs
parents:
diff changeset
   433
hgs
parents:
diff changeset
   434
hgs
parents:
diff changeset
   435
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   436
// PolicyEngineUI::codeTextChanged()
hgs
parents:
diff changeset
   437
// checks the entered text length and enables the OK option accordingly.
hgs
parents:
diff changeset
   438
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   439
void PolicyEngineUI::codeTextChanged()
hgs
parents:
diff changeset
   440
    {
hgs
parents:
diff changeset
   441
    QString str = mContentEdit->text();
hgs
parents:
diff changeset
   442
hgs
parents:
diff changeset
   443
    if (str.length() >= KMaxCodeLength)
hgs
parents:
diff changeset
   444
        mdialog->actions().at(0)->setEnabled(true);
hgs
parents:
diff changeset
   445
    else
hgs
parents:
diff changeset
   446
        mdialog->actions().at(0)->setEnabled(false);
hgs
parents:
diff changeset
   447
    }