--- a/javauis/lcdui_akn/lcdui/inc/CMIDDisplayable.h Thu Jul 15 18:31:06 2010 +0300
+++ b/javauis/lcdui_akn/lcdui/inc/CMIDDisplayable.h Thu Aug 19 09:48:13 2010 +0300
@@ -37,14 +37,13 @@
#include <AknsDrawUtils.h>// skin
// for backgroud control context (iBackGroundControlContext)
#include <AknsBasicBackgroundControlContext.h> //skin
+#include <aknappui.h>
#include "CMIDCommand.h"
// API needed for working with commands and command list (setting, getting, handling)
#include "CMIDCommandList.h"
// using CMIDMenuHandler::TMenuType
#include "CMIDMenuHandler.h"
-// using TMidpCustomEvents enumeration
-#include "S60LCDUICustomEvents.h"
#include "CMIDCanvasKeypad.h"
#include <e32property.h>
@@ -70,7 +69,7 @@
// Container for MIDlet Displayables.
NONSHARABLE_CLASS(CMIDDisplayable) : public CEikBorderedControl, public MMIDDisplayable,
- public MMIDEnvObserver, public MAknLongTapDetectorCallBack, public MEikMenuObserver
+public MMIDEnvObserver, public MAknLongTapDetectorCallBack, public MEikMenuObserver
{
public:
@@ -142,6 +141,10 @@
void HandleSwitchOnL(TBool aSwitchOn);
void HandleForegroundL(TBool aForeground);
void HandleResourceChangeL(TInt aType);
+#ifdef RD_JAVA_NGA_ENABLED
+ void HandleFullOrPartialForegroundL(TBool aFullOrPartialFg);
+ void HandleFreeGraphicsMemory();
+#endif
// Title handling
TBool HasTitle() const;
@@ -162,10 +165,13 @@
void InitializeCbasL();
void SetCba(CEikButtonGroupContainer* aCba);
TBool ShowOkOptionsMenuL();
+ TBool ShowScreenOrHelpOptionsMenuL();
TInt NumCommandsForOkOptionsMenu() const;
+ TInt NumCommandsForScreenOrHelpOptionsMenu() const;
TInt GetHighestPriorityScreenOrHelpCommand() const;
void SetItemCommandList(CMIDCommandList* aList, CMIDCommand* aMSKCommand);
void SetMSKCommand(CMIDCommand* aMSKCommand);
+
/**
* Stores select command to Displayable
* @param aSelectCommand a command used in MSK and in menu
@@ -311,6 +317,33 @@
* @since S60 5.0
*/
void ProcessMSKCommandL();
+ /**
+ * Enum callback type
+ * @since S60 9.2
+ */
+ enum TLcduiUiCallbackType
+ {
+ EFixUIOrientation,
+ EUnFixUIOrientation
+ };
+
+ /**
+ * Fix orientation from MMA
+ *
+ * @return void
+ *
+ * @since S60 9.2
+ */
+ void FixOrientation();
+
+ /**
+ * Release orientation from MMA
+ *
+ * @return void
+ *
+ * @since S60 9.2
+ */
+ void ReleaseOrientation();
private:
// Construction and destruction
@@ -332,7 +365,7 @@
void HandleStandardCommandL(const TCommandEntry& aCmdEntry);
void HandleItemCommandL(const TCommandEntry& aCmdEntry);
TInt GetInternalCommandIdFor(CMIDCommand* aCommand) const;
- void GetOkOptionsMenuCommands(RPointerArray<CMIDCommand>& aCommands) const;
+ void GetOkOptionsMenuCommandsL(RPointerArray<CMIDCommand>& aCommands) const;
void ResetSoftKeysAndCommands(const RArray<CMIDCommandList*>& aLists);
// Visual layouting and updating
@@ -355,14 +388,14 @@
* Default ctor
*/
TDirectContentsRect()
- : iRefCount(0) {}
+ : iRefCount(0) {}
/**
* Ctor
* @param aRect Rectangle
*/
TDirectContentsRect(const TRect& aRect)
- : iRect(aRect), iRefCount(1) {}
+ : iRect(aRect), iRefCount(1) {}
TRect iRect;
TInt iRefCount;
@@ -444,6 +477,12 @@
void HideIndicator(CEikStatusPane* aSp, TInt aId);
void HideIndicators();
+ /**
+ * If content control is CMIDCanvas, returns pointer to it, NULL otherwise.
+ * @since S60 9.2
+ */
+ CMIDCanvas* GetContentCanvas();
+
private:
CMIDAppUi* iAppUi;
CMIDUIManager* iUIManager;
@@ -559,7 +598,10 @@
// Indicates opened split screen keyboard
TBool iSplitScreenKeyboard;
#endif // RD_JAVA_S60_RELEASE_9_2
-
+
+ TBool iRestoreOrientation;
+ CAknAppUiBase::TAppUiOrientation iOldUiOrientation;
+ TInt iReleaseCnt;
};