diff -r 3104fc151679 -r 9a48e301e94b uiservicetab/vimpstui/inc/cvimpstuisearchfield.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uiservicetab/vimpstui/inc/cvimpstuisearchfield.h Wed Sep 01 12:33:36 2010 +0100 @@ -0,0 +1,173 @@ +/* +* Copyright (c) 2008 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: search field class declaration. +* +*/ + + +#ifndef CVIMPSTUISEARCHFIELD_H +#define CVIMPSTUISEARCHFIELD_H + +// INCLUDES +#include + +#include "mvimpstuisearchfield.h" +#include "tvimpstenums.h" + +// FORWARD DECLARATIONS +class CEikCaptionedControl; + +// CLASS DECLARATION +/** + * search editor field class declaration . + * @lib vimpstui.lib + * @since S60 v5.0 + */ + +class CVIMPSTUiSearchField : public CBase, + public MVIMPSTUiSearchField + { + + public: // Constructors and destructor + + /** + * Creates a new instance of this class. + * Creates editor fields + * append the field into array from last + * @param aLebal, label of field + * @param aFieldDataType, field data type + * @param aFieldType, field type basic or advanced + * @param aSearchKey, search key + * @return A new instance of this class. + */ + static CVIMPSTUiSearchField* NewL(const TDesC& aLebal, + TVIMPSTSearchDataFieldType aFieldDataType, + TIMPSTSearchFieldTypes aFieldType, + TVIMPSTEnums::TVIMPSTSearchKey aSearchKey ); + + /** + * Destructor. + */ + ~CVIMPSTUiSearchField(); + + public: // from MVIMPSTUiSearchField + + /** + * @see MVIMPSTUiSearchField + */ + TInt ControlId() const; + + /** + * @see MVIMPSTUiSearchField + */ + HBufC* ControlTextL() const; + + /** + * @see MVIMPSTUiSearchField + */ + CEikEdwin* Control() const; + + /** + * @see MVIMPSTUiSearchField + */ + void SetControl(CEikEdwin* aControl, CEikCaptionedControl* aCaptionedCtrl) ; + + /** + * @see MVIMPSTUiSearchField + */ + void ActivateL() ; + + /** + * @see MVIMPSTUiSearchField + */ + void SetFieldDataL( const TDesC& aData ); + + /** + * @see MVIMPSTUiSearchField + */ + TPtrC FieldLabel() ; + + /** + * @see MVIMPSTUiSearchField + */ + TVIMPSTSearchDataFieldType FieldDataType() const ; + + /** + * @see MVIMPSTUiSearchField + */ + TPtrC FieldData() ; + + /** + * @see MVIMPSTUiSearchField + */ + void ResetFieldData() ; + + /** + * @see MVIMPSTUiSearchField + */ + TBool IsBasicField() const; + + /** + * @see MVIMPSTUiSearchField + */ + TVIMPSTEnums::TVIMPSTSearchKey GetSearchKey() const ; + + private : + + /** + * C++ constructor. + * @param aFieldDataType , field data type eg text ,number + * @param aFieldType, field type eg basic or advanced + * @param aSearchKey, a search key + */ + CVIMPSTUiSearchField(TVIMPSTSearchDataFieldType aFieldDataType, + TIMPSTSearchFieldTypes aFieldType , + TVIMPSTEnums::TVIMPSTSearchKey aSearchKey ); + + /** + * ConstructL + * @param aLebal, a field label + */ + void ConstructL(const TDesC& aLebal ); + + + private : + + // owns : a field data type + TVIMPSTSearchDataFieldType iFieldDataType; + + // owns : field type + HBufC* iFieldLabel; + + // owns : field saved data + HBufC* iFieldData; + + // owns : field type + TIMPSTSearchFieldTypes iFieldType; + + // owns : search key + TVIMPSTEnums::TVIMPSTSearchKey iSearchKey; + + protected: // Data + // Ref: Editor control + CEikEdwin* iControl; + // Ref: Fields captioned control + CEikCaptionedControl* iCaptionedCtrl; + + }; + +#endif // CVIMPSTUISEARCHFIELD_H + +// End of File +