webengine/widgetengine/inc/Widget.h
changeset 5 10e98eab6f85
parent 0 dd21522fd290
equal deleted inserted replaced
1:7c90e6132015 5:10e98eab6f85
    34 // FUNCTION PROTOTYPES
    34 // FUNCTION PROTOTYPES
    35 
    35 
    36 // CLASS DECLARATION
    36 // CLASS DECLARATION
    37 
    37 
    38 class MJSWidgetCallbacks;
    38 class MJSWidgetCallbacks;
       
    39 class MJSObjectProtector;
    39 
    40 
    40 /**
    41 /**
    41 *  CWidget
    42 *  CWidget
    42 *
    43 *
    43 *  @lib widgetengine.dll
    44 *  @lib widgetengine.dll
    52 {
    53 {
    53     WidgetPrivate( MJSWidgetCallbacks* callbacks,
    54     WidgetPrivate( MJSWidgetCallbacks* callbacks,
    54                     WidgetEventHandler* showCallback,
    55                     WidgetEventHandler* showCallback,
    55                     WidgetEventHandler* hideCallback,
    56                     WidgetEventHandler* hideCallback,
    56                     WidgetEventHandler* exitCallback,
    57                     WidgetEventHandler* exitCallback,
    57                     bool visibility) :
    58                     bool visibility,
       
    59 					MJSObjectProtector* protector) :
    58                         m_callbacks(callbacks),
    60                         m_callbacks(callbacks),
    59                         m_showCallback(showCallback),
    61                         m_showCallback(showCallback),
    60                         m_hideCallback(hideCallback),
    62                         m_hideCallback(hideCallback),
    61                         m_exitCallback(exitCallback),
    63                         m_exitCallback(exitCallback),
    62                         m_visibility(visibility),
    64                         m_visibility(visibility),
       
    65 						m_protector(protector),
    63                         m_wrt(0)
    66                         m_wrt(0)
    64     {
    67     {
    65     }
    68     }
    66 
    69 
    67 
    70 
    68     virtual ~WidgetPrivate() { delete m_exitCallback;
    71     virtual ~WidgetPrivate() { delete m_exitCallback;
    69                                delete m_hideCallback;
    72                                delete m_hideCallback;
    70                                delete m_showCallback; }
    73                                delete m_showCallback; }
    71 
    74 
    72     MJSWidgetCallbacks*   m_callbacks;
    75     MJSWidgetCallbacks*		m_callbacks;
    73     WidgetEventHandler* m_showCallback;
    76     WidgetEventHandler*		m_showCallback;
    74     WidgetEventHandler* m_hideCallback;
    77     WidgetEventHandler*		m_hideCallback;
    75     WidgetEventHandler* m_exitCallback;
    78     WidgetEventHandler*		m_exitCallback;
       
    79 	MJSObjectProtector*		m_protector;
    76     bool m_visibility;
    80     bool m_visibility;
    77     JSWrt* m_wrt;
    81     JSWrt* m_wrt;
    78 
    82 
    79 };
    83 };
    80 
    84 
    81 class JSWidget : public JSObject
    85 class JSWidget : public JSObject
    82 {
    86 {
    83 
    87 
    84 public:
    88 public:
    85     JSWidget(MJSWidgetCallbacks* aWidgetCallbacks);
    89     JSWidget(MJSWidgetCallbacks* aWidgetCallbacks, MJSObjectProtector* aProtector);
    86     virtual ~JSWidget();
    90     virtual ~JSWidget();
    87 
    91 
    88 //From JSObject
    92 //From JSObject
    89 public:
    93 public:
    90     JSType type() const;
    94     JSType type() const;
   105         preferenceForKey,
   109         preferenceForKey,
   106         prepareForTransition,
   110         prepareForTransition,
   107         performTransition,
   111         performTransition,
   108         setPreferenceForKey,
   112         setPreferenceForKey,
   109         setNavigationEnabled,
   113         setNavigationEnabled,
       
   114         setNavigationType,
   110         setDisplayLandscape,
   115         setDisplayLandscape,
   111         setDisplayPortrait,
   116         setDisplayPortrait,
   112         isRotationSupported,
   117         isRotationSupported,
   113         identifier,
   118         identifier,
   114         onhide,
   119         onhide,