diff -r 8173571d354e -r 1fc85118c3ae landmarksui/uicontrols/inc/CLmkCoordinateEditor.h --- a/landmarksui/uicontrols/inc/CLmkCoordinateEditor.h Thu Aug 19 09:48:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,129 +0,0 @@ -/* -* Copyright (c) 2002 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: LandmarksUi Content File - Coordinate editor for editor/viewer form -* -*/ - - - - - - - - -#ifndef CLmkCoordinateEditor_h -#define CLmkCoordinateEditor_h - -// INCLUDES -#include "CLmkFloatEditor.h" - -/// FORWARD DECLARATION -class CEikMfneSymbol; -class CLmkMfneSeparator; - -// CLASS DECLARATION - -/** - * CLmkCoordinateEditor extend ClmkFloatEditor's functionality - * Implements both latitude and longitude editors. - * Underlying floating value is just a value, which user inputs. - * Its upper limit depends on editor type: latitude or longitude. - * Lower limit is always 0, because coordinate sign is represented - * by cardinal point. - * Number() always returns coordinate in degrees. Cardinal points - * are represented by number's sign. - */ -class CLmkCoordinateEditor : public CLmkFloatEditor - { - public: - enum TEditorType - { - ELatitudeEditor, - ELongitudeEditor - }; - - public: // Constructors and destructor - /** - * Constructor - * @return newly instantiated object - */ - CLmkCoordinateEditor(); - - /** - * Destructor. - */ - virtual ~CLmkCoordinateEditor(); - - /** - * By default Symbian 2nd phase constructor - */ - void ConstructL(TReal aInitialValue, - TEditorType aType); - - public: // From CLmkFloatEditor - - /** Sets value */ - void SetNumber(TReal aNumber); - - /** Gets value */ - TReal Number() const; - - protected: // From CLmkFloatEditor - - void HandleValueChanged(); - void HandleCustomFieldChanged(TInt aCustomFieldIndex); - - void HandleEnter(); - void HandleExit(); - - protected: // new functions - - // only NS or WE may be shown - enum TCardinalPoint - { - ECardinalNone, - ECardinalNorth, - ECardinalSouth, - ECardinalEast, - ECardinalWest - }; - - /** Abs(180) is allowed only for West */ - void CheckEastLongitude(); - - void SetCardinal(TCardinalPoint aUnit); - TCardinalPoint Cardinal() const; - TCardinalPoint DefaultCardinal(); - - void ConstructDegreeMarkFieldL(); - void ConstructCardinalPointFieldL(); - - void ShowDegreeAndCardinal(TBool aVisible); - - private: //data - - /// Ref: - CLmkMfneSeparator* iDegreeField; - - /// Ref: - CEikMfneSymbol* iCardinalField; - - TEditorType iEditorType; - - HBufC* iDegreeMark; - }; - -#endif // CLmkCoordinateEditor_h - -// End of File