diff -r bad0cc58d154 -r c74b3d9f6b9e securitysettings/qtconfigutils/eapqtconfiginterface/src/eapqtvalidatorusername.cpp --- a/securitysettings/qtconfigutils/eapqtconfiginterface/src/eapqtvalidatorusername.cpp Tue Aug 31 15:16:37 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,201 +0,0 @@ -/* - * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). - * All rights reserved. - * This component and the accompanying materials are made available - * under the terms of "Eclipse Public License v1.0" - * which accompanies this distribution, and is available - * at the URL "http://www.eclipse.org/legal/epl-v10.html". - * - * Initial Contributors: - * Nokia Corporation - initial contribution. - * - * Contributors: - * - * Description: - * EAP method username format validator - * - */ - -/* - * %version: 11 % - */ - -// System includes -#include -#include - -// User includes -#include "eapqtvalidatorusername.h" -#include "eapqtconfiginterface_p.h" - -/*! - * \class EapQtValidatorUsername - * \brief EAP method username format validator - */ - -// External function prototypes - -// Local constants - -// ======== LOCAL FUNCTIONS ======== - -// ======== MEMBER FUNCTIONS ======== - -EapQtValidatorUsername::EapQtValidatorUsername(const EapQtExpandedEapType& type) : - mEapType(type) -{ -} - -EapQtValidatorUsername::~EapQtValidatorUsername() -{ -} - -EapQtValidator::Status EapQtValidatorUsername::validate(const QVariant& value) -{ - qDebug("EapQtValidatorUsername::validate()"); - - Status status(StatusOk); - - switch (mEapType.type()) { - case EapQtExpandedEapType::TypeEapAka: - case EapQtExpandedEapType::TypeEapFast: - case EapQtExpandedEapType::TypeEapGtc: - case EapQtExpandedEapType::TypeEapMschapv2: - case EapQtExpandedEapType::TypeEapSim: - case EapQtExpandedEapType::TypeEapTls: - case EapQtExpandedEapType::TypeEapTtls: - case EapQtExpandedEapType::TypeLeap: - case EapQtExpandedEapType::TypePeap: - case EapQtExpandedEapType::TypePap: - case EapQtExpandedEapType::TypePlainMschapv2: - status = validateGeneral(value); - break; - default: - // for methods that do not have a realm - status = StatusInvalid; - break; - } - - return status; -} - -EapQtValidator::Status EapQtValidatorUsername::validateGeneral(const QVariant& value) -{ - Status status(StatusOk); - QString str = value.toString(); - - // input must be of correct type - if (value.type() != QVariant::String) { - status = StatusInvalid; - } - else if (str.length() <= 0 && !isEmptyAllowed()) { - status = StatusTooShort; - } - // zero length username is ok - else if (str.length() > EapQtConfigInterfacePrivate::StringMaxLength) { - status = StatusTooLong; - } - else if (!validateCharacters(str)) { - status = StatusInvalidCharacters; - } - - qDebug("EapQtValidatorUsername::validateGeneral - return status: %d", status); - - return status; -} - -bool EapQtValidatorUsername::isEmptyAllowed() -{ - qDebug("EapQtValidatorUsername::isEmptyAllowed()"); - - bool ret(true); - - switch (mEapType.type()) { - case EapQtExpandedEapType::TypeEapGtc: - case EapQtExpandedEapType::TypeEapMschapv2: - case EapQtExpandedEapType::TypeLeap: - case EapQtExpandedEapType::TypePap: - case EapQtExpandedEapType::TypePlainMschapv2: - ret = false; - break; - default: - // other methods can have empty username - break; - } - - return ret; -} - -bool EapQtValidatorUsername::validateCharacters(const QString& str) -{ - qDebug("EapQtValidatorUsername::validateCharacters()"); - - bool ret(true); - - switch (mEapType.type()) { - case EapQtExpandedEapType::TypeEapAka: - case EapQtExpandedEapType::TypeEapFast: - case EapQtExpandedEapType::TypeEapSim: - case EapQtExpandedEapType::TypeEapTls: - case EapQtExpandedEapType::TypeEapTtls: - case EapQtExpandedEapType::TypePeap: - // these methods have a separate UI setting for realm, - // hence @ is not allowed in username field - ret = !(str.contains(QChar('@'), Qt::CaseInsensitive)); - break; - default: - // username field can contain realm separated with @ - break; - } - - return ret; -} - -void EapQtValidatorUsername::updateEditor(HbLineEdit* const edit) -{ - qDebug("EapQtValidatorUsername::updateEditor()"); - - Q_ASSERT(edit); - if(edit == NULL) { - return; - } - - switch (mEapType.type()) { - case EapQtExpandedEapType::TypeEapAka: - case EapQtExpandedEapType::TypeEapFast: - case EapQtExpandedEapType::TypeEapGtc: - case EapQtExpandedEapType::TypeEapMschapv2: - case EapQtExpandedEapType::TypeEapSim: - case EapQtExpandedEapType::TypeEapTls: - case EapQtExpandedEapType::TypeEapTtls: - case EapQtExpandedEapType::TypeLeap: - case EapQtExpandedEapType::TypePeap: - case EapQtExpandedEapType::TypePap: - case EapQtExpandedEapType::TypePlainMschapv2: - updateEditorGeneral(edit); - // falls through on purpose - default: - // no editor preferences for other types - break; - } -} - -void EapQtValidatorUsername::updateEditorGeneral(HbLineEdit* const edit) -{ - qDebug("EapQtValidatorUsername::updateEditorGeneral()"); - - Q_ASSERT(edit); - - edit->setMaxLength(EapQtConfigInterfacePrivate::StringMaxLength); - edit->setInputMethodHints(Qt::ImhNoAutoUppercase | Qt::ImhPreferLowercase - | Qt::ImhNoPredictiveText); - - HbEditorInterface editInterface(edit); - editInterface.setEditorClass(HbInputEditorClassUsername); - - HbEditorConstraints constraints = HbEditorConstraintAutoCompletingField; - editInterface.setInputConstraints(constraints); - - // no smileys :) - editInterface.setSmileyTheme(HbSmileyTheme()); -}