|
|
@@ -166,10 +166,9 @@ void jsapi_init_ui(JSVM* vm)
|
|
|
{
|
|
|
duk_context* ctx = vm->GetJSContext();
|
|
|
|
|
|
- // UI object
|
|
|
+ // UI class object
|
|
|
duk_get_global_string(ctx, "Atomic");
|
|
|
-
|
|
|
- duk_push_object(ctx);
|
|
|
+ duk_get_prop_string(ctx, -1, "UI");
|
|
|
|
|
|
duk_push_c_function(ctx, UI_Init, DUK_VARARGS);
|
|
|
duk_put_prop_string(ctx, -2, "__init");
|
|
|
@@ -183,136 +182,7 @@ void jsapi_init_ui(JSVM* vm)
|
|
|
duk_push_c_function(ctx, UI_DebugShowSettingsWindow, 1);
|
|
|
duk_put_prop_string(ctx, -2, "debugShowSettingsWindow");
|
|
|
|
|
|
-
|
|
|
- // Layout
|
|
|
-
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_GRAVITY_NONE);
|
|
|
- duk_put_prop_string(ctx, -2, "GRAVITY_NONE");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_GRAVITY_LEFT);
|
|
|
- duk_put_prop_string(ctx, -2, "GRAVITY_LEFT");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_GRAVITY_RIGHT);
|
|
|
- duk_put_prop_string(ctx, -2, "GRAVITY_RIGHT");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_GRAVITY_TOP);
|
|
|
- duk_put_prop_string(ctx, -2, "GRAVITY_TOP");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_GRAVITY_BOTTOM);
|
|
|
- duk_put_prop_string(ctx, -2, "GRAVITY_BOTTOM");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_GRAVITY_LEFT_RIGHT);
|
|
|
- duk_put_prop_string(ctx, -2, "GRAVITY_LEFT_RIGHT");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_GRAVITY_TOP_BOTTOM);
|
|
|
- duk_put_prop_string(ctx, -2, "GRAVITY_TOP_BOTTOM");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_GRAVITY_ALL);
|
|
|
- duk_put_prop_string(ctx, -2, "GRAVITY_ALL");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_GRAVITY_DEFAULT);
|
|
|
- duk_put_prop_string(ctx, -2, "GRAVITY_DEFAULT");
|
|
|
-
|
|
|
- duk_push_number(ctx, (double) tb::AXIS_X);
|
|
|
- duk_put_prop_string(ctx, -2, "AXIS_X");
|
|
|
- duk_push_number(ctx, (double) tb::AXIS_Y);
|
|
|
- duk_put_prop_string(ctx, -2, "AXIS_Y");
|
|
|
-
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_SIZE_GRAVITY);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_SIZE_GRAVITY");
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_SIZE_PREFERRED);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_SIZE_PREFERRED");
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_SIZE_AVAILABLE);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_SIZE_AVAILABLE");
|
|
|
-
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_DISTRIBUTION_PREFERRED);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_DISTRIBUTION_PREFERRED");
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_DISTRIBUTION_AVAILABLE);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_DISTRIBUTION_AVAILABLE");
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_DISTRIBUTION_GRAVITY);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_DISTRIBUTION_GRAVITY");
|
|
|
-
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_POSITION_CENTER);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_POSITION_CENTER");
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_POSITION_LEFT_TOP);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_POSITION_LEFT_TOP");
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_POSITION_RIGHT_BOTTOM);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_POSITION_RIGHT_BOTTOM");
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_POSITION_GRAVITY);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_POSITION_GRAVITY");
|
|
|
-
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_DISTRIBUTION_POSITION_CENTER);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_DISTRIBUTION_POSITION_CENTER");
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_DISTRIBUTION_POSITION_LEFT_TOP);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_DISTRIBUTION_POSITION_LEFT_TOP");
|
|
|
- duk_push_number(ctx, (double) tb::LAYOUT_DISTRIBUTION_POSITION_RIGHT_BOTTOM);
|
|
|
- duk_put_prop_string(ctx, -2, "LAYOUT_DISTRIBUTION_POSITION_RIGHT_BOTTOM");
|
|
|
-
|
|
|
- // Window Settings
|
|
|
- duk_push_number(ctx, (double) tb::WINDOW_SETTINGS_NONE);
|
|
|
- duk_put_prop_string(ctx, -2, "WINDOW_SETTINGS_NONE");
|
|
|
- duk_push_number(ctx, (double) tb::WINDOW_SETTINGS_TITLEBAR);
|
|
|
- duk_put_prop_string(ctx, -2, "WINDOW_SETTINGS_TITLEBAR");
|
|
|
- duk_push_number(ctx, (double) tb::WINDOW_SETTINGS_RESIZABLE);
|
|
|
- duk_put_prop_string(ctx, -2, "WINDOW_SETTINGS_RESIZABLE");
|
|
|
- duk_push_number(ctx, (double) tb::WINDOW_SETTINGS_CLOSE_BUTTON);
|
|
|
- duk_put_prop_string(ctx, -2, "WINDOW_SETTINGS_CLOSE_BUTTON");
|
|
|
- duk_push_number(ctx, (double) tb::WINDOW_SETTINGS_CAN_ACTIVATE);
|
|
|
- duk_put_prop_string(ctx, -2, "WINDOW_SETTINGS_CAN_ACTIVATE");
|
|
|
- duk_push_number(ctx, (double) tb::WINDOW_SETTINGS_DEFAULT);
|
|
|
- duk_put_prop_string(ctx, -2, "WINDOW_SETTINGS_DEFAULT");
|
|
|
-
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_STATE_NONE);
|
|
|
- duk_put_prop_string(ctx, -2, "WIDGET_STATE_NONE");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_STATE_DISABLED);
|
|
|
- duk_put_prop_string(ctx, -2, "WIDGET_STATE_DISABLED");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_STATE_FOCUSED);
|
|
|
- duk_put_prop_string(ctx, -2, "WIDGET_STATE_FOCUSED");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_STATE_PRESSED);
|
|
|
- duk_put_prop_string(ctx, -2, "WIDGET_STATE_PRESSED");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_STATE_SELECTED);
|
|
|
- duk_put_prop_string(ctx, -2, "WIDGET_STATE_SELECTED");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_STATE_HOVERED);
|
|
|
- duk_put_prop_string(ctx, -2, "WIDGET_STATE_HOVERED");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_STATE_ALL);
|
|
|
- duk_put_prop_string(ctx, -2, "WIDGET_STATE_ALL");
|
|
|
-
|
|
|
- // Events
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_CLICK);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_CLICK");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_LONG_CLICK);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_LONG_CLICK");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_POINTER_DOWN);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_POINTER_DOWN");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_POINTER_UP);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_POINTER_UP");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_POINTER_MOVE);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_POINTER_MOVE");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_RIGHT_POINTER_DOWN);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_RIGHT_POINTER_DOWN");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_RIGHT_POINTER_UP);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_RIGHT_POINTER_UP");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_WHEEL);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_WHEEL");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_CHANGED);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_CHANGED");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_KEY_DOWN);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_KEY_DOWN");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_KEY_UP);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_KEY_UP");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_SHORTCUT);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_SHORTCUT");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_CONTEXT_MENU);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_CONTEXT_MENU");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_FILE_DROP);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_FILE_DROP");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_TAB_CHANGED);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_TAB_CHANGED");
|
|
|
- duk_push_number(ctx, (double) tb::EVENT_TYPE_CUSTOM);
|
|
|
- duk_put_prop_string(ctx, -2, "EVENT_TYPE_CUSTOM");
|
|
|
-
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_VISIBILITY_GONE);
|
|
|
- duk_put_prop_string(ctx, -2, "VISIBILITY_GONE");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_VISIBILITY_INVISIBLE);
|
|
|
- duk_put_prop_string(ctx, -2, "VISIBILITY_INVISIBLE");
|
|
|
- duk_push_number(ctx, (double) tb::WIDGET_VISIBILITY_VISIBLE);
|
|
|
- duk_put_prop_string(ctx, -2, "VISIBILITY_VISIBLE");
|
|
|
-
|
|
|
- duk_put_prop_string(ctx, -2, "UI");
|
|
|
-
|
|
|
- duk_pop(ctx);
|
|
|
+ duk_pop_2(ctx);
|
|
|
|
|
|
js_class_get_prototype(ctx, "Atomic", "UIButton");
|
|
|
duk_push_c_function(ctx, UIButton_Popup, 2);
|