williamr@2: // Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@2: // All rights reserved. williamr@2: // This component and the accompanying materials are made available williamr@4: // under the terms of "Eclipse Public License v1.0" williamr@2: // which accompanies this distribution, and is available williamr@4: // at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@2: // williamr@2: // Initial Contributors: williamr@2: // Nokia Corporation - initial contribution. williamr@2: // williamr@2: // Contributors: williamr@2: // williamr@2: // Description: williamr@2: // williamr@2: williamr@2: #ifndef __COEFONT_H__ williamr@2: #define __COEFONT_H__ williamr@2: williamr@2: #include williamr@2: #include williamr@2: williamr@2: /** A class to simplify font usage williamr@2: williamr@2: @publishedAll williamr@2: @released williamr@2: */ williamr@2: class TCoeFont williamr@2: { williamr@2: public: williamr@2: enum TFlags williamr@2: { williamr@2: ENoFlags = 0x00, williamr@2: ENonZooming = 0x01 williamr@2: }; williamr@2: williamr@2: enum TLogicalSize williamr@2: { williamr@2: EExtraSmall = 0, williamr@2: ESmall, williamr@2: EMedium, williamr@2: ELarge, williamr@2: EExtraLarge, williamr@2: EUndefinedSize = -1 williamr@2: }; williamr@2: williamr@2: enum TStyle williamr@2: { williamr@2: EPlain = 0x00, williamr@2: EItalic = 0x01, williamr@2: EBold = 0x02, williamr@2: ESuper = 0x04, williamr@2: ESub = 0x08 williamr@2: }; williamr@2: williamr@2: public: williamr@2: IMPORT_C TCoeFont(TLogicalSize aSize, TInt aStyle, TInt aFlags = ENoFlags); williamr@2: IMPORT_C TCoeFont(TInt aHeightInPixels, TInt aStyle, TInt aFlags = ENoFlags); williamr@2: IMPORT_C TCoeFont(const TCoeFont& aFont); williamr@2: IMPORT_C TCoeFont(); williamr@2: IMPORT_C static TCoeFont NormalFont(TInt aFlags = ENoFlags); // Medium, Plain williamr@2: IMPORT_C static TCoeFont LegendFont(TInt aFlags = ENoFlags); // Medium, Bold williamr@2: IMPORT_C static TCoeFont AnnotationFont(TInt aFlags = ENoFlags);// Small, Plain williamr@2: IMPORT_C static TCoeFont TitleFont(TInt aFlags = ENoFlags); // Large, Bold williamr@2: public: // properties williamr@2: IMPORT_C TLogicalSize LogicalSize() const; williamr@2: IMPORT_C TInt HeightInPixels() const; williamr@2: IMPORT_C TFontStyle Style() const; williamr@2: IMPORT_C TBool IsNonZooming() const; williamr@2: public: williamr@2: static TInt Compare(const TCoeFont& aFirst, const TCoeFont& aSecond); williamr@2: private: williamr@2: TLogicalSize iLogicalSize; williamr@2: TInt8 iHeightInPixels; williamr@2: TInt8 iStyle; williamr@2: TInt8 iFlags; williamr@2: TTypeface iTypeface; // Member unused at the moment but included for possible future extension williamr@2: private: williamr@2: TInt iSpare; williamr@2: }; williamr@2: williamr@2: #endif // __COEFONT_H__ williamr@4: williamr@4: