controlpanel/src/cpplugins/pincodeplugin/src/cppincodepluginview.cpp
author hgs
Thu, 01 Apr 2010 03:17:51 +0800
changeset 31 2c9d3aa5bea2
permissions -rw-r--r--
201003_2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
31
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     1
/*
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     2
 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     3
 * All rights reserved.
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0""
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     8
 *
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     9
 * Initial Contributors:
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    11
 *
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    12
 * Contributors:
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    13
 *
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    14
 * Description:  
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    15
 *
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    16
 */
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    17
#include "cppincodepluginview.h"
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    18
#include <hbdataform.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    19
#include <hbdataformmodel.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    20
#include <hbdataformmodelitem.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    21
#include <hblineedit.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    22
#include <seccodeeditdataformviewitem.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    23
#include <seccodesettings.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    24
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    25
CpPinCodePluginView::CpPinCodePluginView(QGraphicsItem *parent /*= 0*/)
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    26
: CpBaseSettingView(0,parent), mSecCodeSettings(new SecCodeSettings())
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    27
{
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    28
	if (HbDataForm *form = settingForm()) {
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    29
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    30
		QList<HbAbstractViewItem *> protoTypeList = form->itemPrototypes();
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    31
		protoTypeList.append(new SecCodeEditDataFormViewItem());
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    32
        form->setItemPrototypes(protoTypeList);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    33
		
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    34
		form->setHeading(tr("PIN code"));
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    35
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    36
		HbDataFormModel *formModel = new HbDataFormModel();
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    37
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    38
		HbDataFormModelItem *pinCodeRequestItem = new HbDataFormModelItem(
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    39
			HbDataFormModelItem::ToggleValueItem,tr("PIN code requests"));
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    40
    
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    41
		pinCodeRequestItem->setContentWidgetData("text",tr("On"));
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    42
		pinCodeRequestItem->setContentWidgetData("additionalText",tr("Off"));
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    43
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    44
		formModel->appendDataFormItem(pinCodeRequestItem);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    45
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    46
		HbDataFormModelItem *pinCodeItem = new HbDataFormModelItem(
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    47
			static_cast<HbDataFormModelItem::DataItemType>(SecCodeEditDataFormViewItem::SecCodeEditItem),
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    48
			tr("PIN code"));
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    49
		pinCodeItem->setContentWidgetData("echoMode",HbLineEdit::Password);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    50
		pinCodeItem->setContentWidgetData("text","1111");
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    51
		pinCodeItem->setContentWidgetData("readOnly",true);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    52
		form->addConnection(pinCodeItem,SIGNAL(clicked()),this,SLOT(onPinCodeClicked()));
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    53
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    54
		formModel->appendDataFormItem(pinCodeItem);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    55
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    56
		HbDataFormModelItem *pin2CodeItem = new HbDataFormModelItem(
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    57
			 static_cast<HbDataFormModelItem::DataItemType>(SecCodeEditDataFormViewItem::SecCodeEditItem),
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    58
			 tr("PIN2 code"));
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    59
		pin2CodeItem->setContentWidgetData("echoMode",HbLineEdit::Password);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    60
		pin2CodeItem->setContentWidgetData("text","1111");
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    61
		pin2CodeItem->setContentWidgetData("readOnly",true);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    62
		form->addConnection(pin2CodeItem,SIGNAL(clicked()),this,SLOT(onPin2CodeClicked()));
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    63
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    64
		formModel->appendDataFormItem(pin2CodeItem);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    65
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    66
		form->setModel(formModel);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    67
	}
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    68
}
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    69
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    70
CpPinCodePluginView::~CpPinCodePluginView()
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    71
{
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    72
	delete mSecCodeSettings;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    73
}
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    74
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    75
void CpPinCodePluginView::onPinCodeClicked()
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    76
{
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    77
	mSecCodeSettings->changePinCode();
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    78
}
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    79
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    80
void CpPinCodePluginView::onPin2CodeClicked()
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    81
{
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    82
	mSecCodeSettings->changePin2Code();
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    83
}