--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/imgeditor_plat/image_editor_utilities_api/inc/ResolutionUtil.h Fri Jan 29 13:53:17 2010 +0200
@@ -0,0 +1,231 @@
+/*
+* 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:
+* CResolutionUtil provides functions to query current screen dimensions.
+*
+*/
+
+
+
+#ifndef RESOLUTIONUTIL_H
+#define RESOLUTIONUTIL_H
+
+#include <e32base.h>
+#include <coemain.h>
+
+/**
+ * The class provides functions to query current screen dimensions.
+ * The class is used through CCoeEnv::Static()
+ *
+ * @code
+ * ?good_class_usage_example(s)
+ * @endcode
+ *
+ * @lib ImageEditorUtils.lib
+ * @since S60 v5.0
+ */
+class CResolutionUtil : public CCoeStatic
+ {
+
+public:
+
+ /** Screen modes */
+ enum TScreenModes
+ {
+ EUnknown,
+ EStandard,
+ EStandardFullScreen,
+ EStandardLandscape,
+ EStandardLandscapeFullScreen,
+ ESquare,
+ ESquareFullScreen,
+ ESquareRotated,
+ ESquareRotatedFullScreen,
+ EQVGA,
+ EQVGAFullScreen,
+ EQVGALandscape,
+ EQVGALandscapeFullScreen,
+ EDouble,
+ EDoubleFullScreen,
+ EDoubleLandscape,
+ EDoubleLandscapeFullScreen,
+ EHVGA,
+ EHVGAFullScreen,
+ EHVGALandscape,
+ EHVGALandscapeFullScreen,
+ EVGA,
+ EVGAFullScreen,
+ EVGALandscape,
+ EVGALandscapeFullScreen,
+ EQHD,
+ EQHDFullScreen,
+ EQHDLandscape,
+ EQHDLandscapeFullScreen
+ };
+
+ /**
+ * Returns the singleton instance of this CCoeStatic.
+ * If the instance does not exist, panics the tread.
+ *
+ * @since S60 v5.0
+ * @param -
+ * @return the singleton instance of CResolutionUtil
+ */
+ IMPORT_C static CResolutionUtil* Self();
+
+ /**
+ * Returns the singleton instance of this CCoeStatic.
+ * If the instance does not exist, a new one is created.
+ *
+ * @since S60 v5.0
+ * @param -
+ * @return the singleton instance of CResolutionUtil
+ */
+ IMPORT_C static CResolutionUtil* InitializeL();
+
+ /**
+ * Destructor.
+ */
+ IMPORT_C virtual ~CResolutionUtil();
+
+ /**
+ * Returns the screen mode.
+ *
+ * @since S60 v5.0
+ * @param -
+ * @return screen mode, see TScreenModes
+ */
+ IMPORT_C TInt ScreenMode() const;
+
+ /**
+ * Returns the screen mode. Return the real screen mode i.e. Image Editor
+ * flagging has no effect on return value.
+ *
+ * @since S60 v5.0
+ * @param -
+ * @return screen mode, see TScreenModes
+ */
+ IMPORT_C TInt GetScreenMode() const;
+
+ /**
+ * Returns the screen rect for the current screen mode.
+ *
+ * @since S60 v5.0
+ * @param aRect screen rect for specified screen mode
+ * @return -
+ */
+ IMPORT_C void GetScreenRect(TRect& aRect) const;
+
+ /**
+ * Sets the screen rect for the current screen mode.
+ *
+ * @since S60 v5.0
+ * @param aRect screen rect for specified screen mode
+ * @return -
+ */
+ IMPORT_C void SetScreenRect(const TRect& aRect);
+
+ /**
+ * Gets the client rect for the current screen mode.
+ *
+ * @since S60 v5.0
+ * @param aRect client rect for specified screen mode
+ * @return -
+ */
+ IMPORT_C void GetClientRect(TRect& aRect) const;
+
+ /**
+ * Sets the client rect for the current screen mode.
+ *
+ * @since S60 v5.0
+ * @param aRect client rect for specified screen mode
+ * @return -
+ */
+ IMPORT_C void SetClientRect(const TRect& aRect);
+
+ /**
+ * Determines the current screen size and updates rect.
+ *
+ * @since S60 v5.0
+ * @param -
+ * @return -
+ */
+ IMPORT_C void UpdateScreenMode();
+
+ /**
+ * Sets Full Screen mode to true or false.
+ *
+ * @since S60 v5.0
+ * @param aFullScreen ETrue if full screen, otherwise EFalse
+ * @return -
+ */
+ IMPORT_C void SetFullScreen(TBool aFullScreen);
+
+ /**
+ * Gets the Full Screen state.
+ *
+ * @since S60 v5.0
+ * @param aFullScreen ETrue if full screen, otherwise EFalse
+ * @return -
+ */
+ IMPORT_C TBool GetFullScreen() const;
+
+ /**
+ * Sets the landscape mode to true or false.
+ *
+ * @since S60 v5.0
+ * @param aLandscape ETrue if landscape, otherwise EFalse
+ * @return -
+ */
+ IMPORT_C void SetLandscape(TBool aLandscape);
+
+ /**
+ * Gets the landscape mode to true or false.
+ *
+ * @since S60 v5.0
+ * @param aLandscape ETrue if landscape, otherwise EFalse
+ * @return -
+ */
+ IMPORT_C TBool GetLandscape() const;
+
+private:
+
+ CResolutionUtil( const TUid& aUid );
+
+private:
+
+ /**
+ * Screen rect
+ */
+ TRect iScreenRect;
+
+ /**
+ * Client rect
+ */
+ TRect iClientRect;
+
+ /**
+ * Landscape mode
+ */
+ TBool iLandscape;
+
+ /**
+ * Full Screen mode
+ */
+ TBool iFullScreen;
+
+ };
+
+#endif // RESUTIL_H