securitysettings/eapqtdialogs/src/eapfastprovwaitnotedialog.cpp
author hgs
Thu, 24 Jun 2010 11:23:08 +0300
changeset 34 ad1f037f1ac2
child 36 c98682f98478
permissions -rw-r--r--
201025
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
34
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2010 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: Fast Provisioning Wait Notification Dialog implementation
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
/*
hgs
parents:
diff changeset
    19
* %version: 2 %
hgs
parents:
diff changeset
    20
*/
hgs
parents:
diff changeset
    21
hgs
parents:
diff changeset
    22
#include <HbTranslator>
hgs
parents:
diff changeset
    23
#include "eapfastprovwaitnotedialog.h"
hgs
parents:
diff changeset
    24
#include "OstTraceDefinitions.h"
hgs
parents:
diff changeset
    25
#include <QGraphicsLinearLayout>
hgs
parents:
diff changeset
    26
#ifdef OST_TRACE_COMPILER_IN_USE
hgs
parents:
diff changeset
    27
#endif
hgs
parents:
diff changeset
    28
hgs
parents:
diff changeset
    29
/**
hgs
parents:
diff changeset
    30
 * The constructor
hgs
parents:
diff changeset
    31
 */
hgs
parents:
diff changeset
    32
EapFastProvWaitNoteDialog::EapFastProvWaitNoteDialog(const QVariantMap &parameters)
hgs
parents:
diff changeset
    33
:mTranslator(new HbTranslator("eapprompts"))
hgs
parents:
diff changeset
    34
{
hgs
parents:
diff changeset
    35
    OstTraceFunctionEntry0( EAPFASTPROVWAITNOTEDIALOG_EAPFASTPROVWAITNOTEDIALOG_ENTRY );
hgs
parents:
diff changeset
    36
    qDebug("EapFastProvWaitNoteDialog::EapFastProvWaitNoteDialog ENTER");
hgs
parents:
diff changeset
    37
hgs
parents:
diff changeset
    38
    createDialog( parameters );
hgs
parents:
diff changeset
    39
        
hgs
parents:
diff changeset
    40
    OstTraceFunctionExit0( EAPFASTPROVWAITNOTEDIALOG_EAPFASTPROVWAITNOTEDIALOG_EXIT );
hgs
parents:
diff changeset
    41
    qDebug("EapFastProvWaitNoteDialog::EapFastProvWaitNoteDialog EXIT");
hgs
parents:
diff changeset
    42
}
hgs
parents:
diff changeset
    43
   
hgs
parents:
diff changeset
    44
/**
hgs
parents:
diff changeset
    45
 * The construction of the dialog
hgs
parents:
diff changeset
    46
 */ 
hgs
parents:
diff changeset
    47
void EapFastProvWaitNoteDialog::createDialog(const QVariantMap &parameters )
hgs
parents:
diff changeset
    48
{
hgs
parents:
diff changeset
    49
    OstTraceFunctionEntry0( EAPFASTPROVWAITNOTEDIALOG_CREATEDIALOG_ENTRY );
hgs
parents:
diff changeset
    50
    qDebug("EapFastProvWaitNoteDialog::createDialog ENTER");
hgs
parents:
diff changeset
    51
    
hgs
parents:
diff changeset
    52
    QString mainText;    
hgs
parents:
diff changeset
    53
    QString key("notificationtxt");
hgs
parents:
diff changeset
    54
    
hgs
parents:
diff changeset
    55
    bool authProvWaitNote = false;
hgs
parents:
diff changeset
    56
    
hgs
parents:
diff changeset
    57
    //Get the needed information from parameters that indicates to type of the dialog
hgs
parents:
diff changeset
    58
    //which is either a authenticated or a unauthenticated 
hgs
parents:
diff changeset
    59
    if ( parameters.empty() == false ) {
hgs
parents:
diff changeset
    60
        if ( parameters.contains(key) ) {
hgs
parents:
diff changeset
    61
            QVariant variant = parameters.value(key);
hgs
parents:
diff changeset
    62
            authProvWaitNote = variant.toBool();
hgs
parents:
diff changeset
    63
            }
hgs
parents:
diff changeset
    64
        }      
hgs
parents:
diff changeset
    65
    
hgs
parents:
diff changeset
    66
    if ( authProvWaitNote ) {
hgs
parents:
diff changeset
    67
        mainText = QString(hbTrId("txt_occ_dpopinfo_authenticated_provisioning_in_pro"));       
hgs
parents:
diff changeset
    68
    } else {
hgs
parents:
diff changeset
    69
        mainText = QString(hbTrId("txt_occ_dpopinfo_unauthenticated_provisioning_in_p"));
hgs
parents:
diff changeset
    70
    }
hgs
parents:
diff changeset
    71
       
hgs
parents:
diff changeset
    72
    // Set the dialog to be on the screen for 4 seconds.
hgs
parents:
diff changeset
    73
    this->setTimeout(4000);
hgs
parents:
diff changeset
    74
    this->setTitle(mainText);  
hgs
parents:
diff changeset
    75
   
hgs
parents:
diff changeset
    76
    // Connect the about to close and hide signals, so that we are able to inform 
hgs
parents:
diff changeset
    77
    // the caller that the dialog was closed        
hgs
parents:
diff changeset
    78
    bool connected = connect(this, SIGNAL(aboutToClose()), this, SLOT(closingDialog()));
hgs
parents:
diff changeset
    79
    Q_ASSERT(connected == true);
hgs
parents:
diff changeset
    80
    connected = connect(this, SIGNAL(aboutToHide()), this, SLOT(closingDialog()));
hgs
parents:
diff changeset
    81
    Q_ASSERT(connected == true);
hgs
parents:
diff changeset
    82
   
hgs
parents:
diff changeset
    83
    OstTraceFunctionExit0( DUP1_EAPFASTPROVWAITNOTEDIALOG_CREATEDIALOG_EXIT );
hgs
parents:
diff changeset
    84
    qDebug("EapFastProvWaitNoteDialog::createDialog EXIT");
hgs
parents:
diff changeset
    85
}
hgs
parents:
diff changeset
    86
hgs
parents:
diff changeset
    87
/**
hgs
parents:
diff changeset
    88
 * Destructor
hgs
parents:
diff changeset
    89
 */
hgs
parents:
diff changeset
    90
EapFastProvWaitNoteDialog::~EapFastProvWaitNoteDialog()
hgs
parents:
diff changeset
    91
{
hgs
parents:
diff changeset
    92
    OstTraceFunctionEntry0( EAPFASTPROVWAITNOTEDIALOG_DEAPFASTPROVWAITNOTEDIALOG_ENTRY );
hgs
parents:
diff changeset
    93
    qDebug("EapFastProvWaitNoteDialog::~EapFastProvWaitNoteDialog ENTER");
hgs
parents:
diff changeset
    94
    
hgs
parents:
diff changeset
    95
    // The dialog widgets are deleted as the dialog is deleted
hgs
parents:
diff changeset
    96
hgs
parents:
diff changeset
    97
    qDebug("EapFastProvWaitNoteDialog::~EapFastProvWaitNoteDialog EXIT");
hgs
parents:
diff changeset
    98
    OstTraceFunctionExit0( EAPFASTPROVWAITNOTEDIALOG_DEAPFASTPROVWAITNOTEDIALOG_EXIT );
hgs
parents:
diff changeset
    99
}
hgs
parents:
diff changeset
   100
hgs
parents:
diff changeset
   101
/**
hgs
parents:
diff changeset
   102
 * Function is called when the dialog is about to close
hgs
parents:
diff changeset
   103
 * 
hgs
parents:
diff changeset
   104
 */
hgs
parents:
diff changeset
   105
void EapFastProvWaitNoteDialog::closingDialog()
hgs
parents:
diff changeset
   106
{
hgs
parents:
diff changeset
   107
    OstTraceFunctionEntry0( EAPFASTPROVWAITNOTEDIALOG_CLOSINGDIALOG_ENTRY );
hgs
parents:
diff changeset
   108
    qDebug("EapFastProvWaitNoteDialog::closingDialog ENTER");
hgs
parents:
diff changeset
   109
 
hgs
parents:
diff changeset
   110
    closeDeviceDialog(false);
hgs
parents:
diff changeset
   111
    
hgs
parents:
diff changeset
   112
    qDebug("EapFastProvWaitNoteDialog::closingDialog EXIT");
hgs
parents:
diff changeset
   113
    OstTraceFunctionExit0( EAPFASTPROVWAITNOTEDIALOG_CLOSINGDIALOG_EXIT );
hgs
parents:
diff changeset
   114
}
hgs
parents:
diff changeset
   115
hgs
parents:
diff changeset
   116
/**
hgs
parents:
diff changeset
   117
 * Updating the dialog during its showing is not allowed.
hgs
parents:
diff changeset
   118
 */ 
hgs
parents:
diff changeset
   119
bool EapFastProvWaitNoteDialog::setDeviceDialogParameters
hgs
parents:
diff changeset
   120
                (const QVariantMap &parameters)
hgs
parents:
diff changeset
   121
{
hgs
parents:
diff changeset
   122
    OstTraceFunctionEntry0( EAPFASTPROVWAITNOTEDIALOG_SETDEVICEDIALOGPARAMETERS_ENTRY );
hgs
parents:
diff changeset
   123
    
hgs
parents:
diff changeset
   124
    Q_UNUSED(parameters)
hgs
parents:
diff changeset
   125
    // changing the dialog after presenting it is not supported.
hgs
parents:
diff changeset
   126
    
hgs
parents:
diff changeset
   127
    OstTraceFunctionExit0( EAPFASTPROVWAITNOTEDIALOG_SETDEVICEDIALOGPARAMETERS_EXIT );
hgs
parents:
diff changeset
   128
    return true;
hgs
parents:
diff changeset
   129
}
hgs
parents:
diff changeset
   130
hgs
parents:
diff changeset
   131
/**
hgs
parents:
diff changeset
   132
 * Not supported, 0 always returned
hgs
parents:
diff changeset
   133
 */
hgs
parents:
diff changeset
   134
int EapFastProvWaitNoteDialog::deviceDialogError() const
hgs
parents:
diff changeset
   135
{
hgs
parents:
diff changeset
   136
    OstTraceFunctionEntry0( EAPFASTPROVWAITNOTEDIALOG_DEVICEDIALOGERROR_ENTRY );
hgs
parents:
diff changeset
   137
    OstTraceFunctionExit0( EAPFASTPROVWAITNOTEDIALOG_DEVICEDIALOGERROR_EXIT);
hgs
parents:
diff changeset
   138
    return 0;
hgs
parents:
diff changeset
   139
}
hgs
parents:
diff changeset
   140
hgs
parents:
diff changeset
   141
/**
hgs
parents:
diff changeset
   142
 * Dialog is closed and the signal about closing is emitted
hgs
parents:
diff changeset
   143
 */
hgs
parents:
diff changeset
   144
void EapFastProvWaitNoteDialog::closeDeviceDialog(bool byClient)
hgs
parents:
diff changeset
   145
{   
hgs
parents:
diff changeset
   146
    OstTraceFunctionEntry0( EAPFASTPROVWAITNOTEDIALOG_CLOSEDEVICEDIALOG_ENTRY );
hgs
parents:
diff changeset
   147
    qDebug("EapFastProvWaitNoteDialog::closeDeviceDialog ENTER");
hgs
parents:
diff changeset
   148
        
hgs
parents:
diff changeset
   149
    Q_UNUSED(byClient)
hgs
parents:
diff changeset
   150
    
hgs
parents:
diff changeset
   151
    emit deviceDialogClosed();
hgs
parents:
diff changeset
   152
    
hgs
parents:
diff changeset
   153
    qDebug("EapFastProvWaitNoteDialog::closeDeviceDialog EXIT");
hgs
parents:
diff changeset
   154
    OstTraceFunctionExit0( EAPFASTPROVWAITNOTEDIALOG_CLOSEDEVICEDIALOG_EXIT );
hgs
parents:
diff changeset
   155
}
hgs
parents:
diff changeset
   156
hgs
parents:
diff changeset
   157
/**
hgs
parents:
diff changeset
   158
 * This dialog widget is returned to the caller
hgs
parents:
diff changeset
   159
 */
hgs
parents:
diff changeset
   160
HbPopup *EapFastProvWaitNoteDialog::deviceDialogWidget() const
hgs
parents:
diff changeset
   161
{
hgs
parents:
diff changeset
   162
    OstTraceFunctionEntry0( EAPFASTPROVWAITNOTEDIALOG_DEVICEDIALOGWIDGET_ENTRY );
hgs
parents:
diff changeset
   163
    qDebug("EapFastProvWaitNoteDialog::deviceDialogWidget ENTER");
hgs
parents:
diff changeset
   164
    
hgs
parents:
diff changeset
   165
    qDebug("EapFastProvWaitNoteDialog::deviceDialogWidget EXIT");
hgs
parents:
diff changeset
   166
    OstTraceFunctionExit0( EAPFASTPROVWAITNOTEDIALOG_DEVICEDIALOGWIDGET_EXIT );
hgs
parents:
diff changeset
   167
    
hgs
parents:
diff changeset
   168
    return const_cast<EapFastProvWaitNoteDialog*>(this);
hgs
parents:
diff changeset
   169
}
hgs
parents:
diff changeset
   170