diff -r 000000000000 -r 2f259fa3e83a classicui_pub/base_controls_api/inc/eikalign.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/classicui_pub/base_controls_api/inc/eikalign.h Tue Feb 02 01:00:49 2010 +0200 @@ -0,0 +1,110 @@ +/* +* Copyright (c) 2002-2006 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: Class declaration for EIKON aligned control. +* +*/ + + +#ifndef __EIKALIGN_H__ +#define __EIKALIGN_H__ + +#include +#include +#include +#include + +/** + * Extends @c CAknControl to support control alignment and margins. + * + * @lib eikcoctl.lib + * @since S60 0.9 + */ +class CEikAlignedControl : public CAknControl + { +public: + + /** + * C++ default constructor. + */ + IMPORT_C CEikAlignedControl(); + + /** + * Destructor + */ + IMPORT_C ~CEikAlignedControl(); + + /** + * Sets all of the control's margins. + * + * @param aValue The number of pixels to which all margins will be set. + */ + IMPORT_C void SetAllMarginsTo(TInt aValue); + + /** + * Sets the control's alignment. + * + * @param aAlign The alignment to be set to the control. + */ + IMPORT_C void SetAlignment(TGulAlignmentValue aAlign); + +public: /** From @c CCoeControl. */ + + /** + * Handles pointer events. + * + * This function gets called whenever a pointer event occurs in the + * control, i.e. when the pointer is within the control's extent, or when + * the control has grabbed the pointer. The control should implement this + * function to handle pointer events. + * + * If overriding this method, the implementation must + * include a base call to this method. + * + * From @c CCoeControl. + * + * @param aPointerEvent The pointer event. + */ + IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent); + +protected: + + /** + * Writes the internal state of the control and its components + * to @c aWriteStream. + * + * Does nothing in release mode. + * Designed to be overridden and base called from subclasses. + * + * From @c CCoeControl. + * + * @param[in,out] aWriteStream A connected write stream. + */ + IMPORT_C void WriteInternalStateL(RWriteStream& aWriteStream) const; + +private: /** From @c CAknControl. */ + + IMPORT_C void* ExtensionInterface( TUid aInterface ); + +public: + /** The control's margins. */ + TMargins8 iMargin; + + /** The control's alignment. */ + TGulAlignment iAlignment; + +private: + TInt iSpare[2]; + }; + +#endif // __EIKALIGN_H__