javauis/lcdui_akn/javalcdui/inc/lcdui.h
branchRCL_3
changeset 77 7cee158cb8cd
parent 66 2455ef1f5bbc
child 83 26b2b12093af
equal deleted inserted replaced
71:d5e927d5853b 77:7cee158cb8cd
    47 
    47 
    48 #include <e32def.h>
    48 #include <e32def.h>
    49 #include <badesca.h>
    49 #include <badesca.h>
    50 #include <gdi.h>
    50 #include <gdi.h>
    51 #include <w32std.h>
    51 #include <w32std.h>
       
    52 #include <AknsConstants.h>
    52 
    53 
    53 #ifdef RD_JAVA_NGA_ENABLED
    54 #ifdef RD_JAVA_NGA_ENABLED
    54 #include <EGL/egltypes.h>
    55 #include <EGL/egltypes.h>
    55 #include "monitor.h"
    56 #include "monitor.h"
    56 #endif // RD_JAVA_NGA_ENABLED
    57 #endif // RD_JAVA_NGA_ENABLED
   122 {
   123 {
   123 _LIT(KUIEnhMediaKeys,          "musickeyssupported");
   124 _LIT(KUIEnhMediaKeys,          "musickeyssupported");
   124 _LIT(KUIEnhCanvasBackground,   "canvashasbackground");
   125 _LIT(KUIEnhCanvasBackground,   "canvashasbackground");
   125 _LIT(KUIEnhPopUpTextBox,       "popuptextbox");
   126 _LIT(KUIEnhPopUpTextBox,       "popuptextbox");
   126 _LIT(KUIEnhFullScreenTextBox,  "fullscreentextbox");
   127 _LIT(KUIEnhFullScreenTextBox,  "fullscreentextbox");
       
   128 _LIT(KUIEnhVideoOverlay,       "videooverlaysupported");
   127 _LIT(KTrueValue,               "true");
   129 _LIT(KTrueValue,               "true");
   128 _LIT(KPauseValue,              "pause");
   130 _LIT(KPauseValue,              "pause");
   129 _LIT(KRunValue,                "run");
   131 _LIT(KRunValue,                "run");
   130 _LIT(KPortraitValue,           "portrait");
   132 _LIT(KPortraitValue,           "portrait");
   131 _LIT(KLandscapeValue,          "landscape");
   133 _LIT(KLandscapeValue,          "landscape");
   132 _LIT(KPositionBottom,          "bottom");
   134 _LIT(KPositionBottom,          "bottom");
   133 _LIT(KPositionRight,           "right");
   135 _LIT(KPositionRight,           "right");
   134 }
   136 }
   135 
   137 
       
   138 const TInt KHighlightedItemTextColor    = EAknsCIQsnTextColorsCG8;
       
   139 const TInt KNonHighlightedItemTextColor = EAknsCIQsnTextColorsCG6;
   136 
   140 
   137 
   141 
   138 /**
   142 /**
   139  *
   143  *
   140  * Base class of all LCDUI objects. Concrete classes always implement a
   144  * Base class of all LCDUI objects. Concrete classes always implement a
   719          * is provided with the command as (x1,y1)-(x2,y2) inclusive-exclusive integer
   723          * is provided with the command as (x1,y1)-(x2,y2) inclusive-exclusive integer
   720          * coordinates following the command header.
   724          * coordinates following the command header.
   721          */
   725          */
   722         EDrwOpcBitBltRect = 1
   726         EDrwOpcBitBltRect = 1
   723 #endif // RD_JAVA_NGA_ENABLED
   727 #endif // RD_JAVA_NGA_ENABLED
       
   728 
       
   729         /**
       
   730          * Indicates start of drawing commands for canvas paint.
       
   731          * Used only video overlay case.
       
   732          * @since S60 9.2
       
   733          */
       
   734         ,EDrwOpcPaintStarted = 3
   724     };
   735     };
   725 public:
   736 public:
   726     /**
   737     /**
   727      * Returns the component type.
   738      * Returns the component type.
   728      * @return  The component type as a MMIDComponent::TType enum.
   739      * @return  The component type as a MMIDComponent::TType enum.
   828      * Notifies canvas about MIDlet exit. In exit Canvas must draw content to CWindowGc
   839      * Notifies canvas about MIDlet exit. In exit Canvas must draw content to CWindowGc
   829      * to enable system transition effects.
   840      * to enable system transition effects.
   830      * @since S60 9.2
   841      * @since S60 9.2
   831      */
   842      */
   832     virtual void MidletExiting() = 0;
   843     virtual void MidletExiting() = 0;
       
   844     
       
   845     /**
       
   846      * Returns ETrue if video overlay is currently used in Canvas.
       
   847      * ETrue is returned when:
       
   848      *      - overlay is enabled by the jad attribute
       
   849      *      - Canvas is not GameCanvas
       
   850      *      - Canvas has MMAPI content areas
       
   851      * @since S60 9.2
       
   852      */
       
   853     virtual TBool IsVideoOverlayActive() = 0;
   833 #endif // RD_JAVA_NGA_ENABLED
   854 #endif // RD_JAVA_NGA_ENABLED
   834 
   855 
   835     virtual TBool ReadyToBlit() const = 0;
   856     virtual TBool ReadyToBlit() const = 0;
   836 };
   857 };
   837 
   858 
  2478      * @param   Return <code>ETrue</code> if a background image can be shown.
  2499      * @param   Return <code>ETrue</code> if a background image can be shown.
  2479      * @since S60 5.0
  2500      * @since S60 5.0
  2480      */
  2501      */
  2481     virtual TBool CanvasHasBackground(const MMIDCanvas& aCanvas) const = 0;
  2502     virtual TBool CanvasHasBackground(const MMIDCanvas& aCanvas) const = 0;
  2482 
  2503 
       
  2504     /**
       
  2505      * Checks if video overlays are enabled (by the jad attribute).
       
  2506      * @return ETrue if overlays are enabled.
       
  2507      * @since S60 9.2
       
  2508      */
       
  2509     virtual TBool VideoOverlayEnabled() const = 0;
       
  2510 
  2483 #ifdef RD_JAVA_NGA_ENABLED
  2511 #ifdef RD_JAVA_NGA_ENABLED
  2484 
  2512 
  2485     /**
  2513     /**
  2486      * Hardware accelarator types
  2514      * Hardware accelarator types
  2487      * @since S60 9.2
  2515      * @since S60 9.2
  2557      *
  2585      *
  2558      * @return Last fullscreen Displayable
  2586      * @return Last fullscreen Displayable
  2559      * @since Java 2.1
  2587      * @since Java 2.1
  2560      */
  2588      */
  2561     virtual const MMIDDisplayable* LastFullscreenDisplayable() const = 0;
  2589     virtual const MMIDDisplayable* LastFullscreenDisplayable() const = 0;
       
  2590     
       
  2591     /**
       
  2592      * Returns reference to RCriticalSection that should be used in all
       
  2593      * MMAPI related synchronization in LCDUI.
       
  2594      *
       
  2595      * @return referende to RCriticalSection
       
  2596      * @since Java 2.1
       
  2597      */
       
  2598     virtual RCriticalSection& GetMMAPILock() = 0;
       
  2599     
       
  2600     /**
       
  2601      * Autolocker class for RCriticalSection.
       
  2602      */
       
  2603     class TCriticalSectionAutoLock
       
  2604     {
       
  2605     public:
       
  2606        /**
       
  2607         * Ctor
       
  2608         * @param aLock Syncronization primitive that is locked during construction
       
  2609         */
       
  2610         TCriticalSectionAutoLock(RCriticalSection& aLock) : iLock(aLock)
       
  2611        {
       
  2612            iLock.Wait();
       
  2613        }
       
  2614 
       
  2615        /**
       
  2616         * Dtor. Signals the synchronization primitive
       
  2617         */
       
  2618        ~TCriticalSectionAutoLock()
       
  2619        {
       
  2620            iLock.Signal();
       
  2621        }
       
  2622     private:
       
  2623        RCriticalSection& iLock;
       
  2624     };
  2562 };
  2625 };
  2563 
  2626 
  2564 /**
  2627 /**
  2565  *
  2628  *
  2566  * Interface class for provider of asynchronous calls to lcdui
  2629  * Interface class for provider of asynchronous calls to lcdui