diff -r e5618cc85d74 -r 6c158198356e javauis/lcdui_akn/javalcdui/inc/lcdui.h --- a/javauis/lcdui_akn/javalcdui/inc/lcdui.h Thu Jul 15 18:31:06 2010 +0300 +++ b/javauis/lcdui_akn/javalcdui/inc/lcdui.h Thu Aug 19 09:48:13 2010 +0300 @@ -49,7 +49,6 @@ #include #include #include -#include #ifdef RD_JAVA_NGA_ENABLED #include @@ -89,6 +88,7 @@ class MMIDTextEditor; class MMIDCanvasGraphicsItem; class MMIDCanvasGraphicsItemPainter; +class MMIDLcduiEventConsumer; /** * @internalComponent @@ -134,13 +134,6 @@ } -#ifdef RD_JAVA_S60_RELEASE_9_2 -const TInt KHighlightedItemTextColor = EAknsCIQsnTextColorsCG6; -#else -const TInt KHighlightedItemTextColor = EAknsCIQsnTextColorsCG8; -#endif // RD_JAVA_S60_RELEASE_9_2 -const TInt KNonHighlightedItemTextColor = EAknsCIQsnTextColorsCG6; - /** * @@ -242,7 +235,7 @@ * @return ETrue if EGL exists. * @since S60 9.2 */ - virtual TBool IsEglAvailable() = 0; + virtual TBool IsEglAvailable() const = 0; /** * Gets and binds EGL surface. @@ -830,6 +823,13 @@ * @since S60 9.2 */ virtual void UpdateRect(const TRect& aRect) = 0; + + /** + * Notifies canvas about MIDlet exit. In exit Canvas must draw content to CWindowGc + * to enable system transition effects. + * @since S60 9.2 + */ + virtual void MidletExiting() = 0; #endif // RD_JAVA_NGA_ENABLED virtual TBool ReadyToBlit() const = 0; @@ -2175,7 +2175,9 @@ EItemChanged = 0, // Futuredev: value // EList ESelect = 0, // Futuredev: value - EM3GDraw = 32 // M3G content is drowned on canvas + EM3GDraw = 32, // M3G content is drowned on canvas + EForcedPaint = 33, + EFreeGraphicsMemory = 34 }; /** @@ -2255,6 +2257,21 @@ * Handles a change to resources which are shared accross the environment. */ virtual void HandleResourceChangeL(TInt aType) = 0; + +#ifdef RD_JAVA_NGA_ENABLED + /** + * Called when MIDlet gains or loses partial/full foreground. + * Application (CAknAppUi::HandleWsEventL()) gets AknFullOrPartialForegroundGained event + * when it becomes at least partially visible even if it would not be the foreground application. + * AknFullOrPartialForegroundLost is received when application is not all visible anymore. + */ + virtual void HandleFullOrPartialForegroundL(TBool /*aFullOrPartialFg*/) {} + + /** + * Called when all graphics memory needs to be freed immediately. + */ + virtual void HandleFreeGraphicsMemory() {} +#endif //RD_JAVA_NGA_ENABLED }; /** @@ -2483,6 +2500,25 @@ */ virtual TBool IsHardwareAcceleratedL( MMIDEnv::THardwareType aHardwareType) = 0; + + /** + * Called when MIDlet's partial/full foreground status is changed. + * @since S60 9.2 + */ + virtual void HandleFullOrPartialForegroundL(TBool aFullOrPartialFg) = 0; + + /** + * Called when graphics memory needs to be freed immediately. + * @since S60 9.2 + */ + virtual void HandleFreeGraphicsMemory() = 0; + + /** + * Checks if MIDlet is at least partially visible. + * @return ETrue if MIDlet has full or partial foreground. + * @since S60 9.2 + */ + virtual TBool HasFullOrPartialForeground() const = 0; #endif // RD_JAVA_NGA_ENABLED /** @@ -2515,6 +2551,14 @@ * @since Java 2.0 */ virtual void DisplayableIsDestructed(const MMIDDisplayable* aDisplayable) = 0; + + /** + * Returns pointer to last fullscreen Displayble. + * + * @return Last fullscreen Displayable + * @since Java 2.1 + */ + virtual const MMIDDisplayable* LastFullscreenDisplayable() const = 0; }; /** @@ -2598,6 +2642,8 @@ virtual void InvokeUICallback( MUiEventConsumer& aConsumer, TInt aCallbackId) = 0; + + virtual void InvokeLcduiEvent(MMIDLcduiEventConsumer& aConsumer, TInt aCallbackId) = 0; }; /** @@ -2880,4 +2926,10 @@ virtual void AbortAsync() = 0; }; +class MMIDLcduiEventConsumer +{ +public: + virtual void HandleLcduiEvent(int aType) = 0; +}; + #endif // LCDUI_H