diff -r 57d4cdd99204 -r edfc90759b9f imageeditor/ImageEditorUI/inc/ColorSelectionGrid.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/imageeditor/ImageEditorUI/inc/ColorSelectionGrid.h Fri Jan 29 13:53:17 2010 +0200 @@ -0,0 +1,161 @@ +/* +* Copyright (c) 2010 Ixonos Plc. +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the "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: +* Ixonos Plc +* +* Description: +* +*/ + + +#ifndef COLORSELECTIONGRID_H +#define COLORSELECTIONGRID_H + +// INCLUDES +#include + + +/* CLASS: CColorSelectionGrid +* +* CColorSelectionGrid represents a color selection grid control in +* Nokia Still Image Editor. +*/ +class CColorSelectionGrid : public CAknGrid +{ + +public: + +/** @name Methods:*/ +//@{ + + /** Default constructor + * + * @param aParent - parent control + * @param aFlags - grid flags + * @return - + */ + IMPORT_C CColorSelectionGrid (); + + /** Destructor + * + * @param - + * @return - + */ + IMPORT_C virtual ~CColorSelectionGrid (); + + /** Second phase constructor + * + * @param aParent - parent control + * @param aFlags - grid flags + * @return - + */ + IMPORT_C virtual void ConstructL ( + const CCoeControl * aParent, + TInt aFlags + ); + + +//@} + +protected: + +/** @name Methods:*/ +//@{ + + /* SizeChanged + * + * @see CImageEditorControlBase + */ + IMPORT_C virtual void SizeChanged(); + +//@} + +/** @name Members:*/ +//@{ + +//@} + +private: + +/** @name Methods:*/ +//@{ + + /* SetupGridIconsL + * + * Sets up grid icons. + * + * @param - + * @return - + */ + void SetupGridIconsL (); + + /* SetupGrid + * + * Sets up grid every time the grid size changes. + * + * @param - + * @return - + */ + void SetupGrid(); + + /* HSLtoRGB + * + * HSL to RGB color conversion + * + * @param aH - hue [0.0 - 360.0] + * @param aS - saturation [0.0 - 1.0] + * @param aL - luminance [0.0 - 1.0] + * @return TRgb + */ + TRgb HSLtoRGB ( + const TReal aH, + const TReal aS, + const TReal aL + ) const; + + /* ToRGB + * + * Helper function in color conversion. + * + * @param aRM1 - helper variable + * @param aRM2 - helper variable + * @param aRH - helper variable + * @return TInt + */ + TInt ToRGB ( + TReal aRM1, + TReal aRM2, + TReal aRH + ) const; + + /** Copy constructor, disabled + */ + CColorSelectionGrid (const CColorSelectionGrid & rhs); + + /** Assignment operator, disabled + */ + CColorSelectionGrid & operator= (const CColorSelectionGrid & rhs); + +//@} + +private: + +/** @name Members:*/ +//@{ + TSize iGridSize; + TSize iIconSize; +//@} + +}; + + +#endif // EOF ColorSelectionGrid.h