summaryrefslogtreecommitdiffstats
path: root/kjsembed/qtbindings/qt_imp.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kjsembed/qtbindings/qt_imp.cpp')
-rw-r--r--kjsembed/qtbindings/qt_imp.cpp780
1 files changed, 780 insertions, 0 deletions
diff --git a/kjsembed/qtbindings/qt_imp.cpp b/kjsembed/qtbindings/qt_imp.cpp
new file mode 100644
index 00000000..ba72c824
--- /dev/null
+++ b/kjsembed/qtbindings/qt_imp.cpp
@@ -0,0 +1,780 @@
+
+
+
+#include <qcstring.h>
+#include <qpalette.h>
+#include <qpixmap.h>
+#include <qfont.h>
+
+#include <kjs/object.h>
+
+#include <kjsembed/global.h>
+#include <kjsembed/jsobjectproxy.h>
+#include <kjsembed/jsopaqueproxy.h>
+#include <kjsembed/jsbinding.h>
+
+#include <qnamespace.h>
+#include "qt_imp.h"
+
+/**
+ * Namespace containing the KJSEmbed library.
+ */
+namespace KJSEmbed {
+
+QtImp::QtImp( KJS::ExecState *exec, int mid, bool constructor )
+ : JSProxyImp(exec), id(mid), cons(constructor)
+{
+}
+
+QtImp::~QtImp()
+{
+}
+
+/**
+ * Adds bindings for static methods and enum constants to the specified Object.
+ */
+void QtImp::addStaticBindings( KJS::ExecState *exec, KJS::Object &object )
+{
+ JSProxy::MethodTable methods[] = {
+
+ { 0, 0 }
+ };
+
+ int idx = 0;
+ QCString lastName;
+
+ while( methods[idx].name ) {
+ if ( lastName != methods[idx].name ) {
+ QtImp *meth = new QtImp( exec, methods[idx].id );
+ object.put( exec , methods[idx].name, KJS::Object(meth) );
+ lastName = methods[idx].name;
+ }
+ ++idx;
+ }
+
+
+ //
+ // Define the enum constants
+ //
+ struct EnumValue {
+ const char *id;
+ int val;
+ };
+
+ EnumValue enums[] = {
+
+ // enum ButtonState
+ { "NoButton", Qt::NoButton },
+ { "LeftButton", Qt::LeftButton },
+ { "RightButton", Qt::RightButton },
+ { "MidButton", Qt::MidButton },
+ { "MouseButtonMask", Qt::MouseButtonMask },
+ { "ShiftButton", Qt::ShiftButton },
+ { "ControlButton", Qt::ControlButton },
+ { "AltButton", Qt::AltButton },
+ { "MetaButton", Qt::MetaButton },
+ { "KeyButtonMask", Qt::KeyButtonMask },
+ { "Keypad", Qt::Keypad },
+ // enum Orientation
+ { "Horizontal", Qt::Horizontal },
+ { "Vertical", Qt::Vertical },
+ // enum SortOrder
+ { "Ascending", Qt::Ascending },
+ { "Descending", Qt::Descending },
+ // enum AlignmentFlags
+ { "AlignAuto", Qt::AlignAuto },
+ { "AlignLeft", Qt::AlignLeft },
+ { "AlignRight", Qt::AlignRight },
+ { "AlignHCenter", Qt::AlignHCenter },
+ { "AlignJustify", Qt::AlignJustify },
+ { "AlignHorizontal_Mask", Qt::AlignHorizontal_Mask },
+ { "AlignTop", Qt::AlignTop },
+ { "AlignBottom", Qt::AlignBottom },
+ { "AlignVCenter", Qt::AlignVCenter },
+ { "AlignVertical_Mask", Qt::AlignVertical_Mask },
+ { "AlignCenter", Qt::AlignCenter },
+ // enum TextFlags
+ { "SingleLine", Qt::SingleLine },
+ { "DontClip", Qt::DontClip },
+ { "ExpandTabs", Qt::ExpandTabs },
+ { "ShowPrefix", Qt::ShowPrefix },
+ { "WordBreak", Qt::WordBreak },
+ { "BreakAnywhere", Qt::BreakAnywhere },
+ { "DontPrint", Qt::DontPrint },
+ { "Underline", Qt::Underline },
+ { "Overline", Qt::Overline },
+ { "StrikeOut", Qt::StrikeOut },
+ { "IncludeTrailingSpaces", Qt::IncludeTrailingSpaces },
+ { "NoAccel", Qt::NoAccel },
+ // enum WidgetState
+ { "WState_Created", Qt::WState_Created },
+ { "WState_Disabled", Qt::WState_Disabled },
+ { "WState_Visible", Qt::WState_Visible },
+ { "WState_ForceHide", Qt::WState_ForceHide },
+ { "WState_OwnCursor", Qt::WState_OwnCursor },
+ { "WState_MouseTracking", Qt::WState_MouseTracking },
+ { "WState_CompressKeys", Qt::WState_CompressKeys },
+ { "WState_BlockUpdates", Qt::WState_BlockUpdates },
+ { "WState_InPaintEvent", Qt::WState_InPaintEvent },
+ { "WState_Reparented", Qt::WState_Reparented },
+ { "WState_ConfigPending", Qt::WState_ConfigPending },
+ { "WState_Resized", Qt::WState_Resized },
+ { "WState_AutoMask", Qt::WState_AutoMask },
+ { "WState_Polished", Qt::WState_Polished },
+ { "WState_DND", Qt::WState_DND },
+ { "WState_Reserved0", Qt::WState_Reserved0 },
+ { "WState_FullScreen", Qt::WState_FullScreen },
+ { "WState_OwnSizePolicy", Qt::WState_OwnSizePolicy },
+ { "WState_CreatedHidden", Qt::WState_CreatedHidden },
+ { "WState_Maximized", Qt::WState_Maximized },
+ { "WState_Minimized", Qt::WState_Minimized },
+ { "WState_ForceDisabled", Qt::WState_ForceDisabled },
+ { "WState_Exposed", Qt::WState_Exposed },
+ { "WState_HasMouse", Qt::WState_HasMouse },
+ // enum WidgetFlags
+ { "WType_TopLevel", Qt::WType_TopLevel },
+ { "WType_Dialog", Qt::WType_Dialog },
+ { "WType_Popup", Qt::WType_Popup },
+ { "WType_Desktop", Qt::WType_Desktop },
+ { "WType_Mask", Qt::WType_Mask },
+ { "WStyle_Customize", Qt::WStyle_Customize },
+ { "WStyle_NormalBorder", Qt::WStyle_NormalBorder },
+ { "WStyle_DialogBorder", Qt::WStyle_DialogBorder },
+ { "WStyle_NoBorder", Qt::WStyle_NoBorder },
+ { "WStyle_Title", Qt::WStyle_Title },
+ { "WStyle_SysMenu", Qt::WStyle_SysMenu },
+ { "WStyle_Minimize", Qt::WStyle_Minimize },
+ { "WStyle_Maximize", Qt::WStyle_Maximize },
+ { "WStyle_MinMax", Qt::WStyle_MinMax },
+ { "WStyle_Tool", Qt::WStyle_Tool },
+ { "WStyle_StaysOnTop", Qt::WStyle_StaysOnTop },
+ { "WStyle_ContextHelp", Qt::WStyle_ContextHelp },
+ { "WStyle_Reserved", Qt::WStyle_Reserved },
+ { "WStyle_Mask", Qt::WStyle_Mask },
+ { "WDestructiveClose", Qt::WDestructiveClose },
+ { "WPaintDesktop", Qt::WPaintDesktop },
+ { "WPaintUnclipped", Qt::WPaintUnclipped },
+ { "WPaintClever", Qt::WPaintClever },
+ { "WResizeNoErase", Qt::WResizeNoErase },
+ { "WMouseNoMask", Qt::WMouseNoMask },
+ { "WStaticContents", Qt::WStaticContents },
+ { "WRepaintNoErase", Qt::WRepaintNoErase },
+ { "WX11BypassWM", Qt::WX11BypassWM },
+ { "WWinOwnDC", Qt::WWinOwnDC },
+ { "WMacNoSheet", Qt::WMacNoSheet },
+ { "WMacDrawer", Qt::WMacDrawer },
+ { "WGroupLeader", Qt::WGroupLeader },
+ { "WShowModal", Qt::WShowModal },
+ { "WNoMousePropagation", Qt::WNoMousePropagation },
+ { "WSubWindow", Qt::WSubWindow },
+ { "WStyle_Splash", Qt::WStyle_Splash },
+ { "WNoAutoErase", Qt::WNoAutoErase },
+ { "WNorthWestGravity", Qt::WNorthWestGravity },
+ { "WType_Modal", Qt::WType_Modal },
+ { "WStyle_Dialog", Qt::WStyle_Dialog },
+ { "WStyle_NoBorderEx", Qt::WStyle_NoBorderEx },
+ // enum WindowState
+ { "WindowNoState", Qt::WindowNoState },
+ { "WindowMinimized", Qt::WindowMinimized },
+ { "WindowMaximized", Qt::WindowMaximized },
+ { "WindowFullScreen", Qt::WindowFullScreen },
+ { "WindowActive", Qt::WindowActive },
+ // enum ImageConversionFlags
+ { "ColorMode_Mask", Qt::ColorMode_Mask },
+ { "AutoColor", Qt::AutoColor },
+ { "ColorOnly", Qt::ColorOnly },
+ { "MonoOnly", Qt::MonoOnly },
+ { "AlphaDither_Mask", Qt::AlphaDither_Mask },
+ { "ThresholdAlphaDither", Qt::ThresholdAlphaDither },
+ { "OrderedAlphaDither", Qt::OrderedAlphaDither },
+ { "DiffuseAlphaDither", Qt::DiffuseAlphaDither },
+ { "NoAlpha", Qt::NoAlpha },
+ { "Dither_Mask", Qt::Dither_Mask },
+ { "DiffuseDither", Qt::DiffuseDither },
+ { "OrderedDither", Qt::OrderedDither },
+ { "ThresholdDither", Qt::ThresholdDither },
+ { "DitherMode_Mask", Qt::DitherMode_Mask },
+ { "AutoDither", Qt::AutoDither },
+ { "PreferDither", Qt::PreferDither },
+ { "AvoidDither", Qt::AvoidDither },
+ // enum BGMode
+ { "TransparentMode", Qt::TransparentMode },
+ { "OpaqueMode", Qt::OpaqueMode },
+ // enum PaintUnit
+ { "PixelUnit", Qt::PixelUnit },
+ { "LoMetricUnit", Qt::LoMetricUnit },
+ { "HiMetricUnit", Qt::HiMetricUnit },
+ { "LoEnglishUnit", Qt::LoEnglishUnit },
+ { "HiEnglishUnit", Qt::HiEnglishUnit },
+ { "TwipsUnit", Qt::TwipsUnit },
+ // enum GUIStyle
+ { "MacStyle", Qt::MacStyle },
+ { "WindowsStyle", Qt::WindowsStyle },
+ { "Win3Style", Qt::Win3Style },
+ { "PMStyle", Qt::PMStyle },
+ { "MotifStyle", Qt::MotifStyle },
+ // enum SequenceMatch
+ { "NoMatch", Qt::NoMatch },
+ { "PartialMatch", Qt::PartialMatch },
+ { "Identical", Qt::Identical },
+ // enum Modifier
+ { "META", Qt::META },
+ { "SHIFT", Qt::SHIFT },
+ { "CTRL", Qt::CTRL },
+ { "ALT", Qt::ALT },
+ { "MODIFIER_MASK", Qt::MODIFIER_MASK },
+ { "UNICODE_ACCEL", Qt::UNICODE_ACCEL },
+ { "ASCII_ACCEL", Qt::ASCII_ACCEL },
+ // enum Key
+ { "Key_Escape", Qt::Key_Escape },
+ { "Key_Tab", Qt::Key_Tab },
+ { "Key_Backtab", Qt::Key_Backtab },
+ { "Key_BackTab", Qt::Key_BackTab },
+ { "Key_Backspace", Qt::Key_Backspace },
+ { "Key_BackSpace", Qt::Key_BackSpace },
+ { "Key_Return", Qt::Key_Return },
+ { "Key_Enter", Qt::Key_Enter },
+ { "Key_Insert", Qt::Key_Insert },
+ { "Key_Delete", Qt::Key_Delete },
+ { "Key_Pause", Qt::Key_Pause },
+ { "Key_Print", Qt::Key_Print },
+ { "Key_SysReq", Qt::Key_SysReq },
+ { "Key_Clear", Qt::Key_Clear },
+ { "Key_Home", Qt::Key_Home },
+ { "Key_End", Qt::Key_End },
+ { "Key_Left", Qt::Key_Left },
+ { "Key_Up", Qt::Key_Up },
+ { "Key_Right", Qt::Key_Right },
+ { "Key_Down", Qt::Key_Down },
+ { "Key_Prior", Qt::Key_Prior },
+ { "Key_PageUp", Qt::Key_PageUp },
+ { "Key_Next", Qt::Key_Next },
+ { "Key_PageDown", Qt::Key_PageDown },
+ { "Key_Shift", Qt::Key_Shift },
+ { "Key_Control", Qt::Key_Control },
+ { "Key_Meta", Qt::Key_Meta },
+ { "Key_Alt", Qt::Key_Alt },
+ { "Key_CapsLock", Qt::Key_CapsLock },
+ { "Key_NumLock", Qt::Key_NumLock },
+ { "Key_ScrollLock", Qt::Key_ScrollLock },
+ { "Key_F1", Qt::Key_F1 },
+ { "Key_F2", Qt::Key_F2 },
+ { "Key_F3", Qt::Key_F3 },
+ { "Key_F4", Qt::Key_F4 },
+ { "Key_F5", Qt::Key_F5 },
+ { "Key_F6", Qt::Key_F6 },
+ { "Key_F7", Qt::Key_F7 },
+ { "Key_F8", Qt::Key_F8 },
+ { "Key_F9", Qt::Key_F9 },
+ { "Key_F10", Qt::Key_F10 },
+ { "Key_F11", Qt::Key_F11 },
+ { "Key_F12", Qt::Key_F12 },
+ { "Key_F13", Qt::Key_F13 },
+ { "Key_F14", Qt::Key_F14 },
+ { "Key_F15", Qt::Key_F15 },
+ { "Key_F16", Qt::Key_F16 },
+ { "Key_F17", Qt::Key_F17 },
+ { "Key_F18", Qt::Key_F18 },
+ { "Key_F19", Qt::Key_F19 },
+ { "Key_F20", Qt::Key_F20 },
+ { "Key_F21", Qt::Key_F21 },
+ { "Key_F22", Qt::Key_F22 },
+ { "Key_F23", Qt::Key_F23 },
+ { "Key_F24", Qt::Key_F24 },
+ { "Key_F25", Qt::Key_F25 },
+ { "Key_F26", Qt::Key_F26 },
+ { "Key_F27", Qt::Key_F27 },
+ { "Key_F28", Qt::Key_F28 },
+ { "Key_F29", Qt::Key_F29 },
+ { "Key_F30", Qt::Key_F30 },
+ { "Key_F31", Qt::Key_F31 },
+ { "Key_F32", Qt::Key_F32 },
+ { "Key_F33", Qt::Key_F33 },
+ { "Key_F34", Qt::Key_F34 },
+ { "Key_F35", Qt::Key_F35 },
+ { "Key_Super_L", Qt::Key_Super_L },
+ { "Key_Super_R", Qt::Key_Super_R },
+ { "Key_Menu", Qt::Key_Menu },
+ { "Key_Hyper_L", Qt::Key_Hyper_L },
+ { "Key_Hyper_R", Qt::Key_Hyper_R },
+ { "Key_Help", Qt::Key_Help },
+ { "Key_Direction_L", Qt::Key_Direction_L },
+ { "Key_Direction_R", Qt::Key_Direction_R },
+ { "Key_Space", Qt::Key_Space },
+ { "Key_Any", Qt::Key_Any },
+ { "Key_Exclam", Qt::Key_Exclam },
+ { "Key_QuoteDbl", Qt::Key_QuoteDbl },
+ { "Key_NumberSign", Qt::Key_NumberSign },
+ { "Key_Dollar", Qt::Key_Dollar },
+ { "Key_Percent", Qt::Key_Percent },
+ { "Key_Ampersand", Qt::Key_Ampersand },
+ { "Key_Apostrophe", Qt::Key_Apostrophe },
+ { "Key_ParenLeft", Qt::Key_ParenLeft },
+ { "Key_ParenRight", Qt::Key_ParenRight },
+ { "Key_Asterisk", Qt::Key_Asterisk },
+ { "Key_Plus", Qt::Key_Plus },
+ { "Key_Comma", Qt::Key_Comma },
+ { "Key_Minus", Qt::Key_Minus },
+ { "Key_Period", Qt::Key_Period },
+ { "Key_Slash", Qt::Key_Slash },
+ { "Key_0", Qt::Key_0 },
+ { "Key_1", Qt::Key_1 },
+ { "Key_2", Qt::Key_2 },
+ { "Key_3", Qt::Key_3 },
+ { "Key_4", Qt::Key_4 },
+ { "Key_5", Qt::Key_5 },
+ { "Key_6", Qt::Key_6 },
+ { "Key_7", Qt::Key_7 },
+ { "Key_8", Qt::Key_8 },
+ { "Key_9", Qt::Key_9 },
+ { "Key_Colon", Qt::Key_Colon },
+ { "Key_Semicolon", Qt::Key_Semicolon },
+ { "Key_Less", Qt::Key_Less },
+ { "Key_Equal", Qt::Key_Equal },
+ { "Key_Greater", Qt::Key_Greater },
+ { "Key_Question", Qt::Key_Question },
+ { "Key_At", Qt::Key_At },
+ { "Key_A", Qt::Key_A },
+ { "Key_B", Qt::Key_B },
+ { "Key_C", Qt::Key_C },
+ { "Key_D", Qt::Key_D },
+ { "Key_E", Qt::Key_E },
+ { "Key_F", Qt::Key_F },
+ { "Key_G", Qt::Key_G },
+ { "Key_H", Qt::Key_H },
+ { "Key_I", Qt::Key_I },
+ { "Key_J", Qt::Key_J },
+ { "Key_K", Qt::Key_K },
+ { "Key_L", Qt::Key_L },
+ { "Key_M", Qt::Key_M },
+ { "Key_N", Qt::Key_N },
+ { "Key_O", Qt::Key_O },
+ { "Key_P", Qt::Key_P },
+ { "Key_Q", Qt::Key_Q },
+ { "Key_R", Qt::Key_R },
+ { "Key_S", Qt::Key_S },
+ { "Key_T", Qt::Key_T },
+ { "Key_U", Qt::Key_U },
+ { "Key_V", Qt::Key_V },
+ { "Key_W", Qt::Key_W },
+ { "Key_X", Qt::Key_X },
+ { "Key_Y", Qt::Key_Y },
+ { "Key_Z", Qt::Key_Z },
+ { "Key_BracketLeft", Qt::Key_BracketLeft },
+ { "Key_Backslash", Qt::Key_Backslash },
+ { "Key_BracketRight", Qt::Key_BracketRight },
+ { "Key_AsciiCircum", Qt::Key_AsciiCircum },
+ { "Key_Underscore", Qt::Key_Underscore },
+ { "Key_QuoteLeft", Qt::Key_QuoteLeft },
+ { "Key_BraceLeft", Qt::Key_BraceLeft },
+ { "Key_Bar", Qt::Key_Bar },
+ { "Key_BraceRight", Qt::Key_BraceRight },
+ { "Key_AsciiTilde", Qt::Key_AsciiTilde },
+ { "Key_nobreakspace", Qt::Key_nobreakspace },
+ { "Key_exclamdown", Qt::Key_exclamdown },
+ { "Key_cent", Qt::Key_cent },
+ { "Key_sterling", Qt::Key_sterling },
+ { "Key_currency", Qt::Key_currency },
+ { "Key_yen", Qt::Key_yen },
+ { "Key_brokenbar", Qt::Key_brokenbar },
+ { "Key_section", Qt::Key_section },
+ { "Key_diaeresis", Qt::Key_diaeresis },
+ { "Key_copyright", Qt::Key_copyright },
+ { "Key_ordfeminine", Qt::Key_ordfeminine },
+ { "Key_guillemotleft", Qt::Key_guillemotleft },
+ { "Key_notsign", Qt::Key_notsign },
+ { "Key_hyphen", Qt::Key_hyphen },
+ { "Key_registered", Qt::Key_registered },
+ { "Key_macron", Qt::Key_macron },
+ { "Key_degree", Qt::Key_degree },
+ { "Key_plusminus", Qt::Key_plusminus },
+ { "Key_twosuperior", Qt::Key_twosuperior },
+ { "Key_threesuperior", Qt::Key_threesuperior },
+ { "Key_acute", Qt::Key_acute },
+ { "Key_mu", Qt::Key_mu },
+ { "Key_paragraph", Qt::Key_paragraph },
+ { "Key_periodcentered", Qt::Key_periodcentered },
+ { "Key_cedilla", Qt::Key_cedilla },
+ { "Key_onesuperior", Qt::Key_onesuperior },
+ { "Key_masculine", Qt::Key_masculine },
+ { "Key_guillemotright", Qt::Key_guillemotright },
+ { "Key_onequarter", Qt::Key_onequarter },
+ { "Key_onehalf", Qt::Key_onehalf },
+ { "Key_threequarters", Qt::Key_threequarters },
+ { "Key_questiondown", Qt::Key_questiondown },
+ { "Key_Agrave", Qt::Key_Agrave },
+ { "Key_Aacute", Qt::Key_Aacute },
+ { "Key_Acircumflex", Qt::Key_Acircumflex },
+ { "Key_Atilde", Qt::Key_Atilde },
+ { "Key_Adiaeresis", Qt::Key_Adiaeresis },
+ { "Key_Aring", Qt::Key_Aring },
+ { "Key_AE", Qt::Key_AE },
+ { "Key_Ccedilla", Qt::Key_Ccedilla },
+ { "Key_Egrave", Qt::Key_Egrave },
+ { "Key_Eacute", Qt::Key_Eacute },
+ { "Key_Ecircumflex", Qt::Key_Ecircumflex },
+ { "Key_Ediaeresis", Qt::Key_Ediaeresis },
+ { "Key_Igrave", Qt::Key_Igrave },
+ { "Key_Iacute", Qt::Key_Iacute },
+ { "Key_Icircumflex", Qt::Key_Icircumflex },
+ { "Key_Idiaeresis", Qt::Key_Idiaeresis },
+ { "Key_ETH", Qt::Key_ETH },
+ { "Key_Ntilde", Qt::Key_Ntilde },
+ { "Key_Ograve", Qt::Key_Ograve },
+ { "Key_Oacute", Qt::Key_Oacute },
+ { "Key_Ocircumflex", Qt::Key_Ocircumflex },
+ { "Key_Otilde", Qt::Key_Otilde },
+ { "Key_Odiaeresis", Qt::Key_Odiaeresis },
+ { "Key_multiply", Qt::Key_multiply },
+ { "Key_Ooblique", Qt::Key_Ooblique },
+ { "Key_Ugrave", Qt::Key_Ugrave },
+ { "Key_Uacute", Qt::Key_Uacute },
+ { "Key_Ucircumflex", Qt::Key_Ucircumflex },
+ { "Key_Udiaeresis", Qt::Key_Udiaeresis },
+ { "Key_Yacute", Qt::Key_Yacute },
+ { "Key_THORN", Qt::Key_THORN },
+ { "Key_ssharp", Qt::Key_ssharp },
+ { "Key_agrave", Qt::Key_agrave },
+ { "Key_aacute", Qt::Key_aacute },
+ { "Key_acircumflex", Qt::Key_acircumflex },
+ { "Key_atilde", Qt::Key_atilde },
+ { "Key_adiaeresis", Qt::Key_adiaeresis },
+ { "Key_aring", Qt::Key_aring },
+ { "Key_ae", Qt::Key_ae },
+ { "Key_ccedilla", Qt::Key_ccedilla },
+ { "Key_egrave", Qt::Key_egrave },
+ { "Key_eacute", Qt::Key_eacute },
+ { "Key_ecircumflex", Qt::Key_ecircumflex },
+ { "Key_ediaeresis", Qt::Key_ediaeresis },
+ { "Key_igrave", Qt::Key_igrave },
+ { "Key_iacute", Qt::Key_iacute },
+ { "Key_icircumflex", Qt::Key_icircumflex },
+ { "Key_idiaeresis", Qt::Key_idiaeresis },
+ { "Key_eth", Qt::Key_eth },
+ { "Key_ntilde", Qt::Key_ntilde },
+ { "Key_ograve", Qt::Key_ograve },
+ { "Key_oacute", Qt::Key_oacute },
+ { "Key_ocircumflex", Qt::Key_ocircumflex },
+ { "Key_otilde", Qt::Key_otilde },
+ { "Key_odiaeresis", Qt::Key_odiaeresis },
+ { "Key_division", Qt::Key_division },
+ { "Key_oslash", Qt::Key_oslash },
+ { "Key_ugrave", Qt::Key_ugrave },
+ { "Key_uacute", Qt::Key_uacute },
+ { "Key_ucircumflex", Qt::Key_ucircumflex },
+ { "Key_udiaeresis", Qt::Key_udiaeresis },
+ { "Key_yacute", Qt::Key_yacute },
+ { "Key_thorn", Qt::Key_thorn },
+ { "Key_ydiaeresis", Qt::Key_ydiaeresis },
+ { "Key_Back", Qt::Key_Back },
+ { "Key_Forward", Qt::Key_Forward },
+ { "Key_Stop", Qt::Key_Stop },
+ { "Key_Refresh", Qt::Key_Refresh },
+ { "Key_VolumeDown", Qt::Key_VolumeDown },
+ { "Key_VolumeMute", Qt::Key_VolumeMute },
+ { "Key_VolumeUp", Qt::Key_VolumeUp },
+ { "Key_BassBoost", Qt::Key_BassBoost },
+ { "Key_BassUp", Qt::Key_BassUp },
+ { "Key_BassDown", Qt::Key_BassDown },
+ { "Key_TrebleUp", Qt::Key_TrebleUp },
+ { "Key_TrebleDown", Qt::Key_TrebleDown },
+ { "Key_MediaPlay", Qt::Key_MediaPlay },
+ { "Key_MediaStop", Qt::Key_MediaStop },
+ { "Key_MediaPrev", Qt::Key_MediaPrev },
+ { "Key_MediaNext", Qt::Key_MediaNext },
+ { "Key_MediaRecord", Qt::Key_MediaRecord },
+ { "Key_HomePage", Qt::Key_HomePage },
+ { "Key_Favorites", Qt::Key_Favorites },
+ { "Key_Search", Qt::Key_Search },
+ { "Key_Standby", Qt::Key_Standby },
+ { "Key_OpenUrl", Qt::Key_OpenUrl },
+ { "Key_LaunchMail", Qt::Key_LaunchMail },
+ { "Key_LaunchMedia", Qt::Key_LaunchMedia },
+ { "Key_Launch0", Qt::Key_Launch0 },
+ { "Key_Launch1", Qt::Key_Launch1 },
+ { "Key_Launch2", Qt::Key_Launch2 },
+ { "Key_Launch3", Qt::Key_Launch3 },
+ { "Key_Launch4", Qt::Key_Launch4 },
+ { "Key_Launch5", Qt::Key_Launch5 },
+ { "Key_Launch6", Qt::Key_Launch6 },
+ { "Key_Launch7", Qt::Key_Launch7 },
+ { "Key_Launch8", Qt::Key_Launch8 },
+ { "Key_Launch9", Qt::Key_Launch9 },
+ { "Key_LaunchA", Qt::Key_LaunchA },
+ { "Key_LaunchB", Qt::Key_LaunchB },
+ { "Key_LaunchC", Qt::Key_LaunchC },
+ { "Key_LaunchD", Qt::Key_LaunchD },
+ { "Key_LaunchE", Qt::Key_LaunchE },
+ { "Key_LaunchF", Qt::Key_LaunchF },
+ { "Key_MediaLast", Qt::Key_MediaLast },
+ { "Key_unknown", Qt::Key_unknown },
+ // enum ArrowType
+ { "UpArrow", Qt::UpArrow },
+ { "DownArrow", Qt::DownArrow },
+ { "LeftArrow", Qt::LeftArrow },
+ { "RightArrow", Qt::RightArrow },
+ // enum RasterOp
+ { "CopyROP", Qt::CopyROP },
+ { "OrROP", Qt::OrROP },
+ { "XorROP", Qt::XorROP },
+ { "NotAndROP", Qt::NotAndROP },
+ { "EraseROP", Qt::EraseROP },
+ { "NotCopyROP", Qt::NotCopyROP },
+ { "NotOrROP", Qt::NotOrROP },
+ { "NotXorROP", Qt::NotXorROP },
+ { "AndROP", Qt::AndROP },
+ { "NotEraseROP", Qt::NotEraseROP },
+ { "NotROP", Qt::NotROP },
+ { "ClearROP", Qt::ClearROP },
+ { "SetROP", Qt::SetROP },
+ { "NopROP", Qt::NopROP },
+ { "AndNotROP", Qt::AndNotROP },
+ { "OrNotROP", Qt::OrNotROP },
+ { "NandROP", Qt::NandROP },
+ { "NorROP", Qt::NorROP },
+ { "LastROP", Qt::LastROP },
+ // enum PenStyle
+ { "NoPen", Qt::NoPen },
+ { "SolidLine", Qt::SolidLine },
+ { "DashLine", Qt::DashLine },
+ { "DotLine", Qt::DotLine },
+ { "DashDotLine", Qt::DashDotLine },
+ { "DashDotDotLine", Qt::DashDotDotLine },
+ { "MPenStyle", Qt::MPenStyle },
+ // enum PenCapStyle
+ { "FlatCap", Qt::FlatCap },
+ { "SquareCap", Qt::SquareCap },
+ { "RoundCap", Qt::RoundCap },
+ { "MPenCapStyle", Qt::MPenCapStyle },
+ // enum PenJoinStyle
+ { "MiterJoin", Qt::MiterJoin },
+ { "BevelJoin", Qt::BevelJoin },
+ { "RoundJoin", Qt::RoundJoin },
+ { "MPenJoinStyle", Qt::MPenJoinStyle },
+ // enum BrushStyle
+ { "NoBrush", Qt::NoBrush },
+ { "SolidPattern", Qt::SolidPattern },
+ { "Dense1Pattern", Qt::Dense1Pattern },
+ { "Dense2Pattern", Qt::Dense2Pattern },
+ { "Dense3Pattern", Qt::Dense3Pattern },
+ { "Dense4Pattern", Qt::Dense4Pattern },
+ { "Dense5Pattern", Qt::Dense5Pattern },
+ { "Dense6Pattern", Qt::Dense6Pattern },
+ { "Dense7Pattern", Qt::Dense7Pattern },
+ { "HorPattern", Qt::HorPattern },
+ { "VerPattern", Qt::VerPattern },
+ { "CrossPattern", Qt::CrossPattern },
+ { "BDiagPattern", Qt::BDiagPattern },
+ { "FDiagPattern", Qt::FDiagPattern },
+ { "DiagCrossPattern", Qt::DiagCrossPattern },
+ { "CustomPattern", Qt::CustomPattern },
+ // enum MacintoshVersion
+ { "MV_Unknown", Qt::MV_Unknown },
+ { "MV_9", Qt::MV_9 },
+ { "MV_10_DOT_0", Qt::MV_10_DOT_0 },
+ { "MV_10_DOT_1", Qt::MV_10_DOT_1 },
+ { "MV_10_DOT_2", Qt::MV_10_DOT_2 },
+ { "MV_10_DOT_3", Qt::MV_10_DOT_3 },
+ { "MV_CHEETAH", Qt::MV_CHEETAH },
+ { "MV_PUMA", Qt::MV_PUMA },
+ { "MV_JAGUAR", Qt::MV_JAGUAR },
+ { "MV_PANTHER", Qt::MV_PANTHER },
+ // enum WindowsVersion
+ { "WV_32s", Qt::WV_32s },
+ { "WV_95", Qt::WV_95 },
+ { "WV_98", Qt::WV_98 },
+ { "WV_Me", Qt::WV_Me },
+ { "WV_DOS_based", Qt::WV_DOS_based },
+ { "WV_NT", Qt::WV_NT },
+ { "WV_2000", Qt::WV_2000 },
+ { "WV_XP", Qt::WV_XP },
+ { "WV_2003", Qt::WV_2003 },
+ { "WV_NT_based", Qt::WV_NT_based },
+ { "WV_CE", Qt::WV_CE },
+ { "WV_CENET", Qt::WV_CENET },
+ { "WV_CE_based", Qt::WV_CE_based },
+ // enum UIEffect
+ { "UI_General", Qt::UI_General },
+ { "UI_AnimateMenu", Qt::UI_AnimateMenu },
+ { "UI_FadeMenu", Qt::UI_FadeMenu },
+ { "UI_AnimateCombo", Qt::UI_AnimateCombo },
+ { "UI_AnimateTooltip", Qt::UI_AnimateTooltip },
+ { "UI_FadeTooltip", Qt::UI_FadeTooltip },
+ { "UI_AnimateToolBox", Qt::UI_AnimateToolBox },
+ // enum CursorShape
+ { "ArrowCursor", Qt::ArrowCursor },
+ { "UpArrowCursor", Qt::UpArrowCursor },
+ { "CrossCursor", Qt::CrossCursor },
+ { "WaitCursor", Qt::WaitCursor },
+ { "IbeamCursor", Qt::IbeamCursor },
+ { "SizeVerCursor", Qt::SizeVerCursor },
+ { "SizeHorCursor", Qt::SizeHorCursor },
+ { "SizeBDiagCursor", Qt::SizeBDiagCursor },
+ { "SizeFDiagCursor", Qt::SizeFDiagCursor },
+ { "SizeAllCursor", Qt::SizeAllCursor },
+ { "BlankCursor", Qt::BlankCursor },
+ { "SplitVCursor", Qt::SplitVCursor },
+ { "SplitHCursor", Qt::SplitHCursor },
+ { "PointingHandCursor", Qt::PointingHandCursor },
+ { "ForbiddenCursor", Qt::ForbiddenCursor },
+ { "WhatsThisCursor", Qt::WhatsThisCursor },
+ { "BusyCursor", Qt::BusyCursor },
+ { "LastCursor", Qt::LastCursor },
+ { "BitmapCursor", Qt::BitmapCursor },
+ // enum TextFormat
+ { "PlainText", Qt::PlainText },
+ { "RichText", Qt::RichText },
+ { "AutoText", Qt::AutoText },
+ { "LogText", Qt::LogText },
+ // enum AnchorAttribute
+ { "AnchorName", Qt::AnchorName },
+ { "AnchorHref", Qt::AnchorHref },
+ // enum Dock
+ { "DockUnmanaged", Qt::DockUnmanaged },
+ { "DockTornOff", Qt::DockTornOff },
+ { "DockTop", Qt::DockTop },
+ { "DockBottom", Qt::DockBottom },
+ { "DockRight", Qt::DockRight },
+ { "DockLeft", Qt::DockLeft },
+ { "DockMinimized", Qt::DockMinimized },
+ { "Unmanaged", Qt::Unmanaged },
+ { "TornOff", Qt::TornOff },
+ { "Top", Qt::Top },
+ { "Bottom", Qt::Bottom },
+ { "Right", Qt::Right },
+ { "Left", Qt::Left },
+ { "Minimized", Qt::Minimized },
+ // enum DateFormat
+ { "TextDate", Qt::TextDate },
+ { "ISODate", Qt::ISODate },
+ { "LocalDate", Qt::LocalDate },
+ // enum TimeSpec
+ { "LocalTime", Qt::LocalTime },
+ { "UTC", Qt::UTC },
+ // enum BackgroundMode
+ { "FixedColor", Qt::FixedColor },
+ { "FixedPixmap", Qt::FixedPixmap },
+ { "NoBackground", Qt::NoBackground },
+ { "PaletteForeground", Qt::PaletteForeground },
+ { "PaletteButton", Qt::PaletteButton },
+ { "PaletteLight", Qt::PaletteLight },
+ { "PaletteMidlight", Qt::PaletteMidlight },
+ { "PaletteDark", Qt::PaletteDark },
+ { "PaletteMid", Qt::PaletteMid },
+ { "PaletteText", Qt::PaletteText },
+ { "PaletteBrightText", Qt::PaletteBrightText },
+ { "PaletteBase", Qt::PaletteBase },
+ { "PaletteBackground", Qt::PaletteBackground },
+ { "PaletteShadow", Qt::PaletteShadow },
+ { "PaletteHighlight", Qt::PaletteHighlight },
+ { "PaletteHighlightedText", Qt::PaletteHighlightedText },
+ { "PaletteButtonText", Qt::PaletteButtonText },
+ { "PaletteLink", Qt::PaletteLink },
+ { "PaletteLinkVisited", Qt::PaletteLinkVisited },
+ { "X11ParentRelative", Qt::X11ParentRelative },
+ // enum StringComparisonMode
+ { "CaseSensitive", Qt::CaseSensitive },
+ { "BeginsWith", Qt::BeginsWith },
+ { "EndsWith", Qt::EndsWith },
+ { "Contains", Qt::Contains },
+ { "ExactMatch", Qt::ExactMatch },
+ // enum Corner
+ { "TopLeft", Qt::TopLeft },
+ { "TopRight", Qt::TopRight },
+ { "BottomLeft", Qt::BottomLeft },
+ { "BottomRight", Qt::BottomRight },
+ { 0, 0 }
+ };
+
+ int enumidx = 0;
+ while( enums[enumidx].id ) {
+ object.put( exec, enums[enumidx].id, KJS::Number(enums[enumidx].val), KJS::ReadOnly );
+ ++enumidx;
+ }
+
+}
+
+/**
+ * Adds bindings for instance methods to the specified Object.
+ */
+void QtImp::addBindings( KJS::ExecState *exec, KJS::Object &object )
+{
+ JSProxy::MethodTable methods[] = {
+
+ { 0, 0 }
+ };
+
+ int idx = 0;
+ QCString lastName;
+
+ while( methods[idx].name ) {
+ if ( lastName != methods[idx].name ) {
+ QtImp *meth = new QtImp( exec, methods[idx].id );
+ object.put( exec , methods[idx].name, KJS::Object(meth) );
+ lastName = methods[idx].name;
+ }
+ ++idx;
+ }
+}
+
+/**
+ * Extract a Qt pointer from an Object.
+ */
+Qt *QtImp::toQt( KJS::Object &self )
+{
+ JSObjectProxy *ob = JSProxy::toObjectProxy( self.imp() );
+ if ( ob ) {
+ QObject *obj = ob->object();
+ if ( obj )
+ return dynamic_cast<Qt *>( obj );
+ }
+
+ JSOpaqueProxy *op = JSProxy::toOpaqueProxy( self.imp() );
+ if ( !op )
+ return 0;
+
+ if ( op->typeName() != "Qt" )
+ return 0;
+
+ return op->toNative<Qt>();
+}
+
+/**
+ * Select and invoke the correct constructor.
+ */
+KJS::Object QtImp::construct( KJS::ExecState *exec, const KJS::List &args )
+{
+ switch( id ) {
+
+ default:
+ break;
+ }
+
+ QString msg = i18n("QtCons has no constructor with id '%1'.").arg(id);
+ return throwError(exec, msg,KJS::ReferenceError);
+}
+
+
+KJS::Value QtImp::call( KJS::ExecState *exec, KJS::Object &self, const KJS::List &args )
+{
+ instance = QtImp::toQt( self );
+
+ switch( id ) {
+
+ default:
+ break;
+ }
+
+ QString msg = i18n( "QtImp has no method with id '%1'." ).arg( id );
+ return throwError(exec, msg,KJS::ReferenceError);
+}
+
+
+
+} // namespace KJSEmbed
+
+// Local Variables:
+// c-basic-offset: 4
+// End:
+
+