diff -r 000000000000 -r dd21522fd290 webengine/widgetengine/inc/Widget.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/webengine/widgetengine/inc/Widget.h Mon Mar 30 12:54:55 2009 +0300 @@ -0,0 +1,131 @@ +/* +* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "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: +* +* Description: +* +*/ + + + +#ifndef __WIDGET_H +#define __WIDGET_H + +// INCLUDES +#include "config.h" +#include +#include + +// CONSTANTS + +// MACROS + +// DATA TYPES + +// FUNCTION PROTOTYPES + +// CLASS DECLARATION + +class MJSWidgetCallbacks; + +/** +* CWidget +* +* @lib widgetengine.dll +* @since 3.1 +*/ +namespace KJS { + +class WidgetEventHandler; +class JSWrt; + +struct WidgetPrivate +{ + WidgetPrivate( MJSWidgetCallbacks* callbacks, + WidgetEventHandler* showCallback, + WidgetEventHandler* hideCallback, + WidgetEventHandler* exitCallback, + bool visibility) : + m_callbacks(callbacks), + m_showCallback(showCallback), + m_hideCallback(hideCallback), + m_exitCallback(exitCallback), + m_visibility(visibility), + m_wrt(0) + { + } + + + virtual ~WidgetPrivate() { delete m_exitCallback; + delete m_hideCallback; + delete m_showCallback; } + + MJSWidgetCallbacks* m_callbacks; + WidgetEventHandler* m_showCallback; + WidgetEventHandler* m_hideCallback; + WidgetEventHandler* m_exitCallback; + bool m_visibility; + JSWrt* m_wrt; + +}; + +class JSWidget : public JSObject +{ + +public: + JSWidget(MJSWidgetCallbacks* aWidgetCallbacks); + virtual ~JSWidget(); + +//From JSObject +public: + JSType type() const; + JSValue* getValueProperty(KJS::ExecState*, int token) const; + bool getOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot); + bool canPut(ExecState *exec, const Identifier &propertyName) const; + void put(ExecState *exec, const Identifier &propertyName, JSValue *value, int attr = None); + const ClassInfo* classInfo() const { return &info; } + static const ClassInfo info; + virtual void mark(); + virtual UString toString(ExecState *exec) const; + void setVisibility(bool visibility); + void handleExit(); + + enum { + openApplication, + openURL, + preferenceForKey, + prepareForTransition, + performTransition, + setPreferenceForKey, + setNavigationEnabled, + setDisplayLandscape, + setDisplayPortrait, + isRotationSupported, + identifier, + onhide, + onremove, + onshow, + onexit, + wrt + }; + + +private: + WidgetPrivate* d; + +}; + +}; + +#include "Widget.lut.h" + +#endif