00001 /* 00002 * ============================================================================ 00003 * Name : AknScreenMode.h 00004 * Part of : Avkon 00005 * 00006 * Description: Interface to product screen mode data. 00007 * 00008 * Version: 00009 * 00010 * Copyright © 2006 Nokia Corporation. 00011 * This material, including documentation and any related 00012 * computer programs, is protected by copyright controlled by 00013 * Nokia Corporation. All rights are reserved. Copying, 00014 * including reproducing, storing, adapting or translating, any 00015 * or all of this material requires the prior written consent of 00016 * Nokia Corporation. This material also contains confidential 00017 * information which may not be disclosed to others without the 00018 * prior written consent of Nokia Corporation. 00019 * ============================================================================ 00020 */ 00021 00022 #ifndef AKNSCREENMODE_H 00023 #define AKNSCREENMODE_H 00024 00025 #include <w32std.h> 00026 00027 class CAknAppUiBase; 00028 class SAknLayoutConfig; 00029 class SAknScreenModeInfo; 00030 00031 00037 class TAknScreenMode 00038 { 00039 public: 00044 IMPORT_C TSize SizeInPixels() const; 00049 IMPORT_C TDisplayMode DisplayMode() const; 00057 IMPORT_C TInt ModeNumber() const; 00058 00059 public: 00060 TAknScreenMode(const SAknScreenModeInfo& aInfo); 00061 00062 protected: 00063 const SAknScreenModeInfo& iInfo; 00064 }; 00065 00066 00074 class TAknScreenModes 00075 { 00076 public: 00081 IMPORT_C static TAknScreenModes GetModes(); 00086 IMPORT_C TInt Count() const; 00093 IMPORT_C TAknScreenMode operator[](TInt aIndex) const; 00127 IMPORT_C static void SetAppUiScreenModeL(CAknAppUiBase* aAppUi, const TAknScreenMode& aMode); 00128 00129 public: 00130 TAknScreenModes(const SAknLayoutConfig& aInfo); 00131 00132 protected: 00133 const SAknLayoutConfig& iInfo; 00134 }; 00135 00136 00137 #endif