Remove V8 plugin 67/208967/2
authorAdeel Kazmi <adeel.kazmi@samsung.com>
Mon, 1 Jul 2019 17:05:15 +0000 (18:05 +0100)
committerAdeel Kazmi <adeel.kazmi@samsung.com>
Mon, 1 Jul 2019 19:07:43 +0000 (20:07 +0100)
Change-Id: If2c1980e49692a99e181fc7e468ef1421bd9fbb2

256 files changed:
CMakeLists.txt
automated-tests/src/dali-toolkit/CMakeLists.txt
automated-tests/src/dali-toolkit/utc-Dali-Script.cpp [deleted file]
build/tizen/Makefile.am
build/tizen/configure.ac
build/tizen/dali-toolkit/Makefile.am
build/tizen/docs/Makefile.am
build/tizen/plugins/csharp/Makefile.am [deleted file]
build/tizen/plugins/javascript/Makefile.am [deleted file]
dali-addon.manifest [deleted file]
dali-toolkit/devel-api/file.list
dali-toolkit/devel-api/scripting/script-plugin.h [deleted file]
dali-toolkit/devel-api/scripting/script.cpp [deleted file]
dali-toolkit/devel-api/scripting/script.h [deleted file]
dali-toolkit/internal/file.list
dali-toolkit/internal/scripting/script-impl.cpp [deleted file]
dali-toolkit/internal/scripting/script-impl.h [deleted file]
dali-toolkit/internal/scripting/script-plugin-proxy.cpp [deleted file]
dali-toolkit/internal/scripting/script-plugin-proxy.h [deleted file]
docs/content/figures/image-scaling/example-fitting-mode-options.svg
docs/content/images/javascript-wrapping-guide/scripting-overview.png [deleted file]
docs/content/main.md
docs/content/programming-guide/accessibility.md [moved from docs/content/shared-javascript-and-cpp-documentation/accessibility.md with 97% similarity]
docs/content/programming-guide/animation.md [moved from docs/content/shared-javascript-and-cpp-documentation/animation.md with 100% similarity]
docs/content/programming-guide/build-guide.md [moved from docs/content/shared-javascript-and-cpp-documentation/build-guide.md with 100% similarity]
docs/content/programming-guide/copy-and-paste.md [moved from docs/content/shared-javascript-and-cpp-documentation/copy-and-paste.md with 74% similarity]
docs/content/programming-guide/creating-custom-controls.md [moved from docs/content/shared-javascript-and-cpp-documentation/creating-custom-controls.md with 97% similarity]
docs/content/programming-guide/dali-introduction.md [moved from docs/content/shared-javascript-and-cpp-documentation/dali-introduction.md with 87% similarity]
docs/content/programming-guide/debug-rendering.md [moved from docs/content/shared-javascript-and-cpp-documentation/debug-rendering.md with 90% similarity]
docs/content/programming-guide/documentation-guide.md [new file with mode: 0644]
docs/content/programming-guide/flex-container.md [moved from docs/content/shared-javascript-and-cpp-documentation/flex-container.md with 75% similarity]
docs/content/programming-guide/font-selection.md [moved from docs/content/shared-javascript-and-cpp-documentation/font-selection.md with 94% similarity]
docs/content/programming-guide/fundamentals.md [moved from docs/content/shared-javascript-and-cpp-documentation/fundamentals.md with 95% similarity]
docs/content/programming-guide/high-level-design.md [moved from docs/content/shared-javascript-and-cpp-documentation/high-level-design.md with 92% similarity]
docs/content/programming-guide/input-style.md [moved from docs/content/shared-javascript-and-cpp-documentation/input-style.md with 100% similarity]
docs/content/programming-guide/item-view.md [moved from docs/content/shared-javascript-and-cpp-documentation/item-view.md with 100% similarity]
docs/content/programming-guide/layer.md [moved from docs/content/shared-javascript-and-cpp-documentation/layer.md with 76% similarity]
docs/content/programming-guide/markup-style.md [moved from docs/content/shared-javascript-and-cpp-documentation/markup-style.md with 87% similarity, mode: 0644]
docs/content/programming-guide/multi-touch-guide.md [moved from docs/content/shared-javascript-and-cpp-documentation/multi-touch-guide.md with 97% similarity]
docs/content/programming-guide/performance-profiling.md [moved from docs/content/shared-javascript-and-cpp-documentation/performance-profiling.md with 99% similarity]
docs/content/programming-guide/performance-tips.md [moved from docs/content/shared-javascript-and-cpp-documentation/performance-tips.md with 72% similarity]
docs/content/programming-guide/popup.md [moved from docs/content/shared-javascript-and-cpp-documentation/popup.md with 97% similarity]
docs/content/programming-guide/programming-languages.md [moved from docs/content/shared-javascript-and-cpp-documentation/programming-languages.md with 71% similarity]
docs/content/programming-guide/properties.h
docs/content/programming-guide/resource-image-scaling.md [moved from docs/content/shared-javascript-and-cpp-documentation/resource-image-scaling.md with 87% similarity]
docs/content/programming-guide/resource-tracking.md [moved from docs/content/shared-javascript-and-cpp-documentation/resource-tracking.md with 98% similarity]
docs/content/programming-guide/resources.md [moved from docs/content/shared-javascript-and-cpp-documentation/resources.md with 100% similarity]
docs/content/programming-guide/script-hello.md [new file with mode: 0644]
docs/content/programming-guide/script-json-specification.md [moved from docs/content/shared-javascript-and-cpp-documentation/script-json-specification.md with 97% similarity]
docs/content/programming-guide/script-overview.md [moved from docs/content/shared-javascript-and-cpp-documentation/script-overview.md with 72% similarity]
docs/content/programming-guide/signals-actions.md [moved from docs/content/shared-javascript-and-cpp-documentation/signals-actions.md with 100% similarity]
docs/content/programming-guide/stage-hand.md [moved from docs/content/shared-javascript-and-cpp-documentation/stage-hand.md with 82% similarity]
docs/content/programming-guide/text-auto-scrolling.md [moved from docs/content/shared-javascript-and-cpp-documentation/text-auto-scrolling.md with 96% similarity]
docs/content/programming-guide/text-editor.md [moved from docs/content/shared-javascript-and-cpp-documentation/text-editor.md with 94% similarity]
docs/content/programming-guide/text-field.md [moved from docs/content/shared-javascript-and-cpp-documentation/text-field.md with 93% similarity]
docs/content/programming-guide/text-label.md [moved from docs/content/shared-javascript-and-cpp-documentation/text-label.md with 70% similarity, mode: 0644]
docs/content/programming-guide/visuals.md [moved from docs/content/shared-javascript-and-cpp-documentation/visuals.md with 92% similarity]
docs/content/shared-javascript-and-cpp-documentation/documentation-guide.md [deleted file]
docs/content/shared-javascript-and-cpp-documentation/emscripten.md [deleted file]
docs/content/shared-javascript-and-cpp-documentation/javascript-wrapping-guide.md [deleted file]
docs/content/shared-javascript-and-cpp-documentation/script-hello.md [deleted file]
node-addon/README [deleted file]
node-addon/binding.gyp [deleted file]
node-addon/build/binding.Makefile [deleted file]
node-addon/build/tizen/CMakeLists.txt [deleted file]
node-addon/dali-addon.cpp [deleted file]
node-addon/examples/flex-container.js [deleted file]
node-addon/examples/images/icon-0.png [deleted file]
node-addon/examples/images/icon-1.png [deleted file]
node-addon/examples/images/icon-2.png [deleted file]
node-addon/examples/images/image-1.jpg [deleted file]
node-addon/examples/images/image-2.jpg [deleted file]
node-addon/examples/images/image-3.jpg [deleted file]
node-addon/examples/item-view.js [deleted file]
node-addon/examples/line-mesh.js [deleted file]
node-addon/examples/mesh-morph.js [deleted file]
node-addon/examples/point-mesh.js [deleted file]
node-addon/examples/scripts/item-template.json [deleted file]
node-addon/examples/scroll-view.js [deleted file]
node-addon/examples/texture-mesh.js [deleted file]
node-addon/item-template.json [deleted file]
node-addon/javascript-application-options.cpp [deleted file]
node-addon/javascript-application-options.h [deleted file]
node-addon/package.json [deleted file]
plugins/dali-script-v8/.gitignore [deleted file]
plugins/dali-script-v8/docs/.gitignore [deleted file]
plugins/dali-script-v8/docs/README.txt [deleted file]
plugins/dali-script-v8/docs/content/actor.js [deleted file]
plugins/dali-script-v8/docs/content/animation.js [deleted file]
plugins/dali-script-v8/docs/content/camera-actor.js [deleted file]
plugins/dali-script-v8/docs/content/constants.js [deleted file]
plugins/dali-script-v8/docs/content/dali.js [deleted file]
plugins/dali-script-v8/docs/content/helpers.js [deleted file]
plugins/dali-script-v8/docs/content/image-view.js [deleted file]
plugins/dali-script-v8/docs/content/image.js [deleted file]
plugins/dali-script-v8/docs/content/item-factory.js [deleted file]
plugins/dali-script-v8/docs/content/item-view.js [deleted file]
plugins/dali-script-v8/docs/content/keyboard-focus-manager.js [deleted file]
plugins/dali-script-v8/docs/content/layer-actor.js [deleted file]
plugins/dali-script-v8/docs/content/module-loader.js [deleted file]
plugins/dali-script-v8/docs/content/pan-gesture-detector.js [deleted file]
plugins/dali-script-v8/docs/content/path-animation.js [deleted file]
plugins/dali-script-v8/docs/content/render-task.js [deleted file]
plugins/dali-script-v8/docs/content/resource-image.js [deleted file]
plugins/dali-script-v8/docs/content/scroll-view.js [deleted file]
plugins/dali-script-v8/docs/content/stage.js [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/css/external-small.png [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/css/logo.png [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/css/main.css [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/favicon.png [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/img [deleted symlink]
plugins/dali-script-v8/docs/dali-theme/assets/index.html [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/js/api-filter.js [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/js/api-list.js [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/js/api-search.js [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/js/apidocs.js [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/js/yui-prettify.js [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/vendor/prettify/CHANGES.html [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/vendor/prettify/COPYING [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/vendor/prettify/prettify-min.css [deleted file]
plugins/dali-script-v8/docs/dali-theme/assets/vendor/prettify/prettify-min.js [deleted file]
plugins/dali-script-v8/docs/dali-theme/layouts/main.handlebars [deleted file]
plugins/dali-script-v8/docs/dali-theme/layouts/xhr.handlebars [deleted file]
plugins/dali-script-v8/docs/dali-theme/partials/attrs.handlebars [deleted file]
plugins/dali-script-v8/docs/dali-theme/partials/classes.handlebars [deleted file]
plugins/dali-script-v8/docs/dali-theme/partials/events.handlebars [deleted file]
plugins/dali-script-v8/docs/dali-theme/partials/files.handlebars [deleted file]
plugins/dali-script-v8/docs/dali-theme/partials/index.handlebars [deleted file]
plugins/dali-script-v8/docs/dali-theme/partials/method.handlebars [deleted file]
plugins/dali-script-v8/docs/dali-theme/partials/module.handlebars [deleted file]
plugins/dali-script-v8/docs/dali-theme/partials/options.handlebars [deleted file]
plugins/dali-script-v8/docs/dali-theme/partials/props.handlebars [deleted file]
plugins/dali-script-v8/docs/dali-theme/partials/sidebar.handlebars [deleted file]
plugins/dali-script-v8/docs/dali-theme/theme.json [deleted file]
plugins/dali-script-v8/docs/gmon.out [deleted file]
plugins/dali-script-v8/docs/yuidoc.json [deleted file]
plugins/dali-script-v8/file.list [deleted file]
plugins/dali-script-v8/src/actors/actor-api.cpp [deleted file]
plugins/dali-script-v8/src/actors/actor-api.h [deleted file]
plugins/dali-script-v8/src/actors/actor-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/actors/actor-wrapper.h [deleted file]
plugins/dali-script-v8/src/actors/camera-actor-api.cpp [deleted file]
plugins/dali-script-v8/src/actors/camera-actor-api.h [deleted file]
plugins/dali-script-v8/src/actors/layer-api.cpp [deleted file]
plugins/dali-script-v8/src/actors/layer-api.h [deleted file]
plugins/dali-script-v8/src/animation/animation-api.cpp [deleted file]
plugins/dali-script-v8/src/animation/animation-api.h [deleted file]
plugins/dali-script-v8/src/animation/animation-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/animation/animation-wrapper.h [deleted file]
plugins/dali-script-v8/src/animation/constrainer-api.cpp [deleted file]
plugins/dali-script-v8/src/animation/constrainer-api.h [deleted file]
plugins/dali-script-v8/src/animation/linear-constrainer-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/animation/linear-constrainer-wrapper.h [deleted file]
plugins/dali-script-v8/src/animation/path-api.cpp [deleted file]
plugins/dali-script-v8/src/animation/path-api.h [deleted file]
plugins/dali-script-v8/src/animation/path-constrainer-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/animation/path-constrainer-wrapper.h [deleted file]
plugins/dali-script-v8/src/animation/path-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/animation/path-wrapper.h [deleted file]
plugins/dali-script-v8/src/constants/constants-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/constants/constants-wrapper.h [deleted file]
plugins/dali-script-v8/src/controls/control-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/controls/control-wrapper.h [deleted file]
plugins/dali-script-v8/src/controls/item-factory-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/controls/item-factory-wrapper.h [deleted file]
plugins/dali-script-v8/src/controls/item-view-api.cpp [deleted file]
plugins/dali-script-v8/src/controls/item-view-api.h [deleted file]
plugins/dali-script-v8/src/controls/scroll-view-api.cpp [deleted file]
plugins/dali-script-v8/src/controls/scroll-view-api.h [deleted file]
plugins/dali-script-v8/src/dali-script-v8.cpp [deleted file]
plugins/dali-script-v8/src/dali-script-v8.h [deleted file]
plugins/dali-script-v8/src/dali-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/dali-wrapper.h [deleted file]
plugins/dali-script-v8/src/events/event-object-generator.cpp [deleted file]
plugins/dali-script-v8/src/events/event-object-generator.h [deleted file]
plugins/dali-script-v8/src/events/pan-gesture-detector-api.cpp [deleted file]
plugins/dali-script-v8/src/events/pan-gesture-detector-api.h [deleted file]
plugins/dali-script-v8/src/events/pan-gesture-detector-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/events/pan-gesture-detector-wrapper.h [deleted file]
plugins/dali-script-v8/src/garbage-collector/garbage-collector.cpp [deleted file]
plugins/dali-script-v8/src/garbage-collector/garbage-collector.h [deleted file]
plugins/dali-script-v8/src/image/buffer-image-api.cpp [deleted file]
plugins/dali-script-v8/src/image/buffer-image-api.h [deleted file]
plugins/dali-script-v8/src/image/frame-buffer-image-api.cpp [deleted file]
plugins/dali-script-v8/src/image/frame-buffer-image-api.h [deleted file]
plugins/dali-script-v8/src/image/image-api.cpp [deleted file]
plugins/dali-script-v8/src/image/image-api.h [deleted file]
plugins/dali-script-v8/src/image/image-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/image/image-wrapper.h [deleted file]
plugins/dali-script-v8/src/image/resource-image-api.cpp [deleted file]
plugins/dali-script-v8/src/image/resource-image-api.h [deleted file]
plugins/dali-script-v8/src/interfaces/garbage-collector-interface.h [deleted file]
plugins/dali-script-v8/src/module-loader/module-loader.cpp [deleted file]
plugins/dali-script-v8/src/module-loader/module-loader.h [deleted file]
plugins/dali-script-v8/src/module-loader/module.cpp [deleted file]
plugins/dali-script-v8/src/module-loader/module.h [deleted file]
plugins/dali-script-v8/src/object/handle-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/object/handle-wrapper.h [deleted file]
plugins/dali-script-v8/src/object/property-buffer-api.cpp [deleted file]
plugins/dali-script-v8/src/object/property-buffer-api.h [deleted file]
plugins/dali-script-v8/src/object/property-buffer-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/object/property-buffer-wrapper.h [deleted file]
plugins/dali-script-v8/src/object/property-value-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/object/property-value-wrapper.h [deleted file]
plugins/dali-script-v8/src/render-tasks/render-task-api.cpp [deleted file]
plugins/dali-script-v8/src/render-tasks/render-task-api.h [deleted file]
plugins/dali-script-v8/src/render-tasks/render-task-list-api.cpp [deleted file]
plugins/dali-script-v8/src/render-tasks/render-task-list-api.h [deleted file]
plugins/dali-script-v8/src/render-tasks/render-task-list-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/render-tasks/render-task-list-wrapper.h [deleted file]
plugins/dali-script-v8/src/render-tasks/render-task-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/render-tasks/render-task-wrapper.h [deleted file]
plugins/dali-script-v8/src/rendering/geometry-api.cpp [deleted file]
plugins/dali-script-v8/src/rendering/geometry-api.h [deleted file]
plugins/dali-script-v8/src/rendering/geometry-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/rendering/geometry-wrapper.h [deleted file]
plugins/dali-script-v8/src/rendering/renderer-api.cpp [deleted file]
plugins/dali-script-v8/src/rendering/renderer-api.h [deleted file]
plugins/dali-script-v8/src/rendering/renderer-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/rendering/renderer-wrapper.h [deleted file]
plugins/dali-script-v8/src/rendering/sampler-api.cpp [deleted file]
plugins/dali-script-v8/src/rendering/sampler-api.h [deleted file]
plugins/dali-script-v8/src/rendering/sampler-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/rendering/sampler-wrapper.h [deleted file]
plugins/dali-script-v8/src/rendering/shader-api.cpp [deleted file]
plugins/dali-script-v8/src/rendering/shader-api.h [deleted file]
plugins/dali-script-v8/src/rendering/shader-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/rendering/shader-wrapper.h [deleted file]
plugins/dali-script-v8/src/rendering/texture-set-api.cpp [deleted file]
plugins/dali-script-v8/src/rendering/texture-set-api.h [deleted file]
plugins/dali-script-v8/src/rendering/texture-set-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/rendering/texture-set-wrapper.h [deleted file]
plugins/dali-script-v8/src/shared/api-function.h [deleted file]
plugins/dali-script-v8/src/shared/base-wrapped-object.cpp [deleted file]
plugins/dali-script-v8/src/shared/base-wrapped-object.h [deleted file]
plugins/dali-script-v8/src/shared/object-template-helper.cpp [deleted file]
plugins/dali-script-v8/src/shared/object-template-helper.h [deleted file]
plugins/dali-script-v8/src/signals/dali-any-javascript-converter.cpp [deleted file]
plugins/dali-script-v8/src/signals/dali-any-javascript-converter.h [deleted file]
plugins/dali-script-v8/src/signals/emit-notification-interface.h [deleted file]
plugins/dali-script-v8/src/signals/signal-manager.cpp [deleted file]
plugins/dali-script-v8/src/signals/signal-manager.h [deleted file]
plugins/dali-script-v8/src/stage/stage-api.cpp [deleted file]
plugins/dali-script-v8/src/stage/stage-api.h [deleted file]
plugins/dali-script-v8/src/stage/stage-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/stage/stage-wrapper.h [deleted file]
plugins/dali-script-v8/src/toolkit/builder/builder-api.cpp [deleted file]
plugins/dali-script-v8/src/toolkit/builder/builder-api.h [deleted file]
plugins/dali-script-v8/src/toolkit/builder/builder-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/toolkit/builder/builder-wrapper.h [deleted file]
plugins/dali-script-v8/src/toolkit/focus-manager/keyboard-focus-manager-api.cpp [deleted file]
plugins/dali-script-v8/src/toolkit/focus-manager/keyboard-focus-manager-api.h [deleted file]
plugins/dali-script-v8/src/toolkit/focus-manager/keyboard-focus-manager-wrapper.cpp [deleted file]
plugins/dali-script-v8/src/toolkit/focus-manager/keyboard-focus-manager-wrapper.h [deleted file]
plugins/dali-script-v8/src/utils/v8-utils.cpp [deleted file]
plugins/dali-script-v8/src/utils/v8-utils.h [deleted file]

index 57599c7..ff17e64 100755 (executable)
@@ -62,7 +62,6 @@ SET ( SOURCES ${SOURCES}
   ${devel_api_src_dir}/image-loader/atlas-upload-observer.cpp\r
   ${devel_api_src_dir}/image-loader/image-atlas.cpp\r
   ${devel_api_src_dir}/image-loader/texture-manager.cpp\r
-  ${devel_api_src_dir}/scripting/script.cpp\r
   ${devel_api_src_dir}/styling/style-manager-devel.cpp\r
   ${devel_api_src_dir}/transition-effects/cube-transition-cross-effect.cpp\r
   ${devel_api_src_dir}/transition-effects/cube-transition-effect.cpp\r
@@ -231,8 +230,6 @@ SET( SOURCES ${SOURCES}
    ${internal_src_dir}/transition-effects/cube-transition-cross-effect-impl.cpp\r
    ${internal_src_dir}/transition-effects/cube-transition-fold-effect-impl.cpp\r
    ${internal_src_dir}/transition-effects/cube-transition-wave-effect-impl.cpp\r
-   ${internal_src_dir}/scripting/script-impl.cpp\r
-   ${internal_src_dir}/scripting/script-plugin-proxy.cpp\r
    ${internal_src_dir}/text/xhtml-entities.cpp\r
 )\r
 \r
index 2e0a4f9..91613bc 100755 (executable)
@@ -26,7 +26,6 @@ SET(TC_SOURCES
   utc-Dali-KeyInputFocusManager.cpp
   utc-Dali-PageTurnView.cpp
   utc-Dali-Scene3dView.cpp
-  utc-Dali-Script.cpp
   utc-Dali-ScrollBar.cpp
   utc-Dali-ScrollView.cpp
   utc-Dali-ShaderEffects.cpp
diff --git a/automated-tests/src/dali-toolkit/utc-Dali-Script.cpp b/automated-tests/src/dali-toolkit/utc-Dali-Script.cpp
deleted file mode 100644 (file)
index 00bf7ae..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-#include <iostream>
-#include <stdlib.h>
-#include <dali-toolkit-test-suite-utils.h>
-#include <dali-toolkit/dali-toolkit.h>
-#include <dali-toolkit/devel-api/scripting/script.h>
-
-using namespace Dali;
-using namespace Dali::Toolkit;
-
-void dali_script_startup(void)
-{
-  test_return_value = TET_UNDEF;
-}
-
-void dali_script_cleanup(void)
-{
-  test_return_value = TET_PASS;
-}
-
-int UtcDaliScriptExecuteFileN(void)
-{
-  ToolkitTestApplication application;
-  tet_infoline(" UtcDaliScriptExecuteFileN");
-
-  Script script = Script::New();
-
-  bool ok = script.ExecuteFile("non-existing file");
-
-  DALI_TEST_CHECK( !ok );
-
-  END_TEST;
-}
index 1649112..b38ee06 100755 (executable)
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2014 Samsung Electronics Co., Ltd.
+# Copyright (c) 2019 Samsung Electronics Co., Ltd.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 
 SUBDIRS = dali-toolkit
 
-if ENABLE_JAVASCRIPT_PLUGIN
-SUBDIRS +=plugins/javascript
-endif
-
-if ENABLE_CSHARP_PLUGIN
-SUBDIRS +=plugins/csharp
-endif
-
 # perform documentation last, so it doesn't prevent code from building if there's an error
 SUBDIRS += docs
 
index 24d2a9e..fe5f491 100755 (executable)
@@ -49,31 +49,6 @@ AC_ARG_ENABLE([i18n],
               [enable_i18n=$enableval],
               [enable_i18n=no])
 
-# option to build JavaScript plugin
-# configure settings and output
-# --enable-javascript        // enable_javascript = yes
-# --enable-javascript=yes    // enable_javascript = yes
-# --enable-javascript=no     // enable_javascript = no
-# --disable-javascript       // enable_javascript = no
-#  no setting                // enable_javascript = automatic ( enable if v8 present)
-AC_ARG_ENABLE([javascript],
-              [AC_HELP_STRING([--enable-javascript],
-                [Enable JavaScript plugin])],
-              [enable_javascript=$enableval],
-              [enable_javascript=automatic])
-
-# option to build C# plugin
-# configure settings and output
-# --enable-csharp        // enable_csharp = yes
-# --enable-csharp=yes    // enable_csharp = yes
-# --enable-csharp=no     // enable_csharp = no
-#  no setting            // enable_csharp = no
-AC_ARG_ENABLE([csharp],
-              [AC_HELP_STRING([--enable-csharp],
-                [Enable csharp plugin])],
-              [enable_csharp=$enableval],
-              [enable_csharp=automatic])
-
 AC_ARG_ENABLE([rename_so],
               [AC_HELP_STRING([--enable-rename-so],
                               [Specify whether so file is renamed or not])],
@@ -138,33 +113,6 @@ STYLE_DIR=$STYLE_BASE_DIR/$dali_style
 AC_SUBST(STYLE_BASE_DIR)
 AC_SUBST(STYLE_DIR)
 
-# v8 version 4+ requires c++11
-PKG_CHECK_MODULES(V8, v8 = 3.32.7, [ pkg_check_v8=yes ],  [ pkg_check_v8=no  ] )
-
-# Rules for building JavaScript plugin
-# If enable_javascript=yes and v8 installed = build javascript
-# If enable_javascript=automatic and v8 installed = build javascript
-# If enable_javascript=yes and v8 not installed = throw an error
-build_javascript_plugin=no
-if test x$enable_javascript = xyes; then
-  if test x$pkg_check_v8 = xno; then
-    [build_javascript_plugin=no]
-    AC_MSG_ERROR("V8 not found or incorrect version installed")
-    AC_MSG_NOTICE("To disable building of JavaScript plugin use --disable-javascript")
-  else
-    [build_javascript_plugin=yes]
-    AC_MSG_NOTICE(V8 library found. Building DALi JavaScript plugin)
-  fi
-fi
-if test x$enable_javascript = xautomatic && test x$pkg_check_v8 = xyes; then
-  [build_javascript_plugin=yes]
-  AC_MSG_NOTICE( V8 library found. Automatic building of JavaScript plugin. Use  use --disable-javascript to disable)
-fi
-
-
-#set a variable for the makefile to force compile the JAvaSplugin
-AM_CONDITIONAL([ENABLE_JAVASCRIPT_PLUGIN], [test x$build_javascript_plugin = xyes])
-
 # Platforms with highp shader support can use vector based text
 AM_CONDITIONAL([ENABLE_VECTOR_BASED_TEXT_RENDERING], [test x$dali_profile = xUBUNTU])
 
@@ -187,43 +135,9 @@ AC_SUBST(DOXYGEN_ROOT_DIR)
 PKG_CHECK_MODULES(DALICORE, dali-core)
 PKG_CHECK_MODULES(DALIADAPTOR, dali-adaptor)
 
-# Enable csharp plugin
-build_csharp_plugin=no
-build_ruby_flag=no
-if test x$enable_csharp = xyes; then
-  [build_csharp_plugin=yes]
-  AC_MSG_NOTICE(Building DALi csharp plugin ...)
-  AC_PATH_PROG([SWIG], [swig])
-
-  # if gbs enable, then only use swig, without ruby or mcs
-  if test "x$dali_profile" = "xUBUNTU"; then
-    [build_ruby_flag=yes]
-    AC_PATH_PROG([RUBY], [ruby])
-    AC_PATH_PROGS([MCS], [mcs gmcs gmcs2])
-    AC_MSG_NOTICE(swig ruby mcs working ...)
-  else
-    [build_ruby_flag=no]
-    AC_PATH_PROG([RUBY], [ruby])
-    #AC_PATH_PROGS([MCS], [mcs gmcs gmcs2])
-    #AC_MSG_NOTICE(swig only working ...)
-  fi
-
-  # Set varaibles for dali-toolkit
-  DALITOOLKIT_CFLAGS="-I${prefix}/include -I${prefix}/include/dali-toolkit"
-  DALITOOLKIT_LIBS="-L${prefix}/lib -ldali-toolkit -ldali-core"
-  AC_SUBST(DALITOOLKIT_CFLAGS)
-  AC_SUBST(DALITOOLKIT_LIBS)
-fi
-
-#set a variable for the makefile to force compile the csharp plugin
-AM_CONDITIONAL([ENABLE_CSHARP_PLUGIN], [test x$build_csharp_plugin = xyes])
-AM_CONDITIONAL([ENABLE_RUBY_FLAG], [test x$build_ruby_flag = xyes])
-
 AC_CONFIG_FILES([
  Makefile
  dali-toolkit/Makefile
- plugins/javascript/Makefile
- plugins/csharp/Makefile
  docs/Makefile
  docs/dali.doxy
  docs-internal/dali-internal.doxy
@@ -239,8 +153,6 @@ Configuration
   Prefix:                           $prefix
   Debug Build:                      $enable_debug
   Trace Build:                      $enable_trace
-  JavaScript support (V8 required)  $build_javascript_plugin
-  CSharp support                    $build_csharp_plugin
   Profile:                          $dali_profile
   Data Dir (Read/Write):            $dataReadWriteDir
   Data Dir (Read Only):             $dataReadOnlyDir
index 07f5e38..5baff32 100644 (file)
@@ -130,7 +130,6 @@ develapifocusmanagerdir =       $(develapidir)/focus-manager
 develapiimageloaderdir =        $(develapidir)/image-loader
 develapilayoutingdir =          $(develapidir)/layouting
 develapilayoutingcontrolsdir =  $(develapidir)/controls/layouting
-develapiscriptingdir =          $(develapidir)/scripting
 develapishadereffectsdir =      $(develapidir)/shader-effects
 develapistylingdir =            $(develapidir)/styling
 develapitransitioneffectsdir =  $(develapidir)/transition-effects
@@ -161,7 +160,6 @@ develapipageturnview_HEADERS =      $(devel_api_page_turn_view_header_files)
 develapipopup_HEADERS =             $(devel_api_popup_header_files)
 develapivisualfactory_HEADERS =     $(devel_api_visual_factory_header_files)
 develapivisuals_HEADERS =           $(devel_api_visuals_header_files)
-develapiscripting_HEADERS =         $(devel_api_scripting_header_files)
 develapiscene3dview_HEADERS =       $(devel_api_scene3d_view_header_files)
 develapishadowview_HEADERS =        $(devel_api_shadow_view_header_files)
 develapishadereffects_HEADERS =     $(devel_api_shader_effects_header_files)
index 776a275..c49a732 100644 (file)
@@ -6,6 +6,3 @@ all-local:
        @cat doxygen-errors.txt
        @if [ -s doxygen-errors.txt ]; then exit 1 ; fi
        @rm doxygen-errors.txt
-# Build JavaScript API documentation using yuidoc ( Yahoo JavaScript Documentation Tool )
-# We first test yuidoc exists, then change in to the dali-script-v8 docs directory and run yuidoc
-       @if [ ! `which yuidoc` = "" ]; then cd ../../../plugins/dali-script-v8/docs && yuidoc --config yuidoc.json -e ".cpp,.js,.md"  -o generated .. ../../../docs/content/shared-javascript-and-cpp-documentation/ ; fi
diff --git a/build/tizen/plugins/csharp/Makefile.am b/build/tizen/plugins/csharp/Makefile.am
deleted file mode 100755 (executable)
index 3e4e246..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright (c) 2016 Samsung Electronics Co., Ltd.
-
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-
-# http://www.apache.org/licenses/LICENSE-2.0
-
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-dali_swig_dir = ../../../../plugins/dali-swig
-
-BUILT_SOURCES = \
-          $(dali_swig_dir)/automatic/cpp/dali_wrap.cpp \
-          $(dali_swig_dir)/automatic/cpp/dali_wrap.h \
-          $(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.cpp \
-          $(dali_swig_dir)/manual/cpp/view-wrapper-impl-wrap.cpp \
-          $(dali_swig_dir)/manual/cpp/event-thread-callback-wrap.cpp
-
-all-local:
-gbs-local: libNDalic.so NDali.dll
-
-libNDalic.so: $(dali_swig_dir)/automatic/cpp/dali_wrap.o $(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.o $(dali_swig_dir)/manual/cpp/view-wrapper-impl-wrap.o $(dali_swig_dir)/manual/cpp/event-thread-callback-wrap.o
-       $(CXX) -shared $(dali_swig_dir)/automatic/cpp/dali_wrap.o $(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.o $(dali_swig_dir)/manual/cpp/view-wrapper-impl-wrap.o $(dali_swig_dir)/manual/cpp/event-thread-callback-wrap.o -o $(dali_swig_dir)/libNDalic.so $(DALICORE_LIBS) $(DALIADAPTOR_LIBS) $(DALITOOLKIT_LIBS)
-
-$(dali_swig_dir)/automatic/cpp/dali_wrap.o: $(BUILT_SOURCES)
-       $(CXX) -c -fpic $(CXXFLAGS) $(DALICORE_CFLAGS) $(DALIADAPTOR_CFLAGS) $(DALITOOLKIT_CFLAGS) $(dali_swig_dir)/automatic/cpp/dali_wrap.cpp -o $(dali_swig_dir)/automatic/cpp/dali_wrap.o
-
-$(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.o: $(BUILT_SOURCES)
-       $(CXX) -c -fpic $(CXXFLAGS) $(DALICORE_CFLAGS) $(DALIADAPTOR_CFLAGS) $(DALITOOLKIT_CFLAGS) $(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.cpp -o $(dali_swig_dir)/manual/cpp/keyboard_focus_manager_wrap.o
-
-$(dali_swig_dir)/manual/cpp/view-wrapper-impl-wrap.o: $(BUILT_SOURCES)
-       $(CXX) -c -fpic $(CXXFLAGS) $(DALICORE_CFLAGS) $(DALIADAPTOR_CFLAGS) $(DALITOOLKIT_CFLAGS) $(dali_swig_dir)/manual/cpp/view-wrapper-impl-wrap.cpp -o $(dali_swig_dir)/manual/cpp/view-wrapper-impl-wrap.o
-
-$(dali_swig_dir)/manual/cpp/event-thread-callback-wrap.o: $(BUILT_SOURCES)
-       $(CXX) -c -fpic $(CXXFLAGS) $(DALICORE_CFLAGS) $(DALIADAPTOR_CFLAGS) $(DALITOOLKIT_CFLAGS) $(dali_swig_dir)/manual/cpp/event-thread-callback-wrap.cpp -o $(dali_swig_dir)/manual/cpp/event-thread-callback-wrap.o
-
-NDali.dll: $(BUILT_SOURCES)
-#      mcs -nologo -target:library -out:$(dali_swig_dir)/NDali.dll $(dali_swig_dir)/automatic/csharp/*.cs $(dali_swig_dir)/manual/csharp/*.cs
-
-$(BUILT_SOURCES): $(dali_swig_dir)/SWIG/*.i
-       rm -f $(dali_swig_dir)/automatic/csharp/*.cs
-       rm -f $(dali_swig_dir)/automatic/cpp/*.cpp
-       $(SWIG) -version
-       $(SWIG) -csharp -c++ -outdir $(dali_swig_dir)/automatic/csharp \
-            $(DALI_CFLAGS) $(DALICORE_CFLAGS) $(DALIADAPTOR_CFLAGS) $(DALITOOLKIT_CFLAGS) -namespace Dali -o $(dali_swig_dir)/automatic/cpp/dali_wrap.cpp $(dali_swig_dir)/SWIG/dali.i
-
-gbs-install: gbs-local
-       -$(INSTALL) -d $(DESTDIR)
-       -$(INSTALL) $(dali_swig_dir)/libNDalic.so $(DESTDIR)
-       -$(INSTALL) $(dali_swig_dir)/NDali.dll $(DESTDIR)
-
-EXTRA_DIST = \
-    swig.cmd
-
diff --git a/build/tizen/plugins/javascript/Makefile.am b/build/tizen/plugins/javascript/Makefile.am
deleted file mode 100644 (file)
index 0bb1082..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-#
-# Copyright (c) 2015 Samsung Electronics Co., Ltd.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-# Build the Dali Toolkit library
-
-plugin_src_dir = ../../../../plugins
-
-include ../../../../plugins/dali-script-v8/file.list
-
-
-lib_LTLIBRARIES = libdali-script-plugin-v8.la
-
-# force the source code to include the directory the wrapper file is in
-# e.g. actors/actor-api.h to copy the same include style as dali-core
-# The reason for including toolkit paths directly instead of just the
-# install path for dali-toolkit.h, is dali-toolkit.h is not installed yet.
-# It won't be installed until the rpm is installed, and unfortunately the
-# plugin is part of the same rpm
-script_plugin_v8_includes = -I../../../../plugins/dali-script-v8/src \
-                            -I../../../../plugins/dali-script-v8/src/utils
-
-
-libdali_script_plugin_v8_la_SOURCES = \
-                     $(script_v8_plugin_src_files)
-
-libdali_script_plugin_v8_la_DEPENDENCIES =
-
-libdali_script_plugin_v8_la_CXXFLAGS = -DDALI_COMPILATION \
-                            -I../../../../ \
-                            $(V8_CFLAGS) \
-                            $(DALI_TOOLKIT_CFLAGS) \
-                            $(DALICORE_CFLAGS) \
-                            -DDALI_DATA_READ_ONLY_DIR="\"${dataReadOnlyDir}\"" \
-                            $(DALI_CFLAGS) \
-                            $(DLOG_CFLAGS) \
-                            $(script_plugin_v8_includes) \
-                            $(V8_CFLAGS) \
-                            -Werror -Wall
-
-libdali_script_plugin_v8_la_LIBADD = \
-                            $(DALICORE_LIBS) \
-                            $(DALI_LIBS) \
-                            $(DLOG_LIBS) \
-                            $(V8_LIBS)
-
-libdali_script_plugin_v8_la_LDFLAGS = \
-                           -rdynamic
diff --git a/dali-addon.manifest b/dali-addon.manifest
deleted file mode 100644 (file)
index 75b0fa5..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<manifest>
-    <request>
-        <domain name="_"/>
-    </request>
-</manifest>
index 65403db..c784496 100755 (executable)
@@ -35,7 +35,6 @@ devel_api_src_files = \
   $(devel_api_src_dir)/image-loader/image-atlas.cpp \
   $(devel_api_src_dir)/image-loader/texture-manager.cpp \
   $(devel_api_src_dir)/layouting/flex-node.cpp \
-  $(devel_api_src_dir)/scripting/script.cpp \
   $(devel_api_src_dir)/styling/style-manager-devel.cpp \
   $(devel_api_src_dir)/text/bitmap-font.cpp \
   $(devel_api_src_dir)/text/text-utils-devel.cpp \
@@ -131,10 +130,6 @@ devel_api_image_loader_header_files = \
   $(devel_api_src_dir)/image-loader/image-atlas.h \
   $(devel_api_src_dir)/image-loader/texture-manager.h
 
-devel_api_scripting_header_files = \
-  $(devel_api_src_dir)/scripting/script.h \
-  $(devel_api_src_dir)/scripting/script-plugin.h
-
 devel_api_shader_effects_header_files = \
   $(devel_api_src_dir)/shader-effects/alpha-discard-effect.h \
   $(devel_api_src_dir)/shader-effects/dissolve-effect.h \
diff --git a/dali-toolkit/devel-api/scripting/script-plugin.h b/dali-toolkit/devel-api/scripting/script-plugin.h
deleted file mode 100644 (file)
index 54b26ae..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-#ifndef DALI_SCRIPT_PLUGIN_H
-#define DALI_SCRIPT_PLUGIN_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-#include <dali-toolkit/public-api/dali-toolkit-common.h>
-#include <string>
-
-namespace Dali
-{
-
-namespace Toolkit
-{
-
-/**
- * @brief Abstract interface to provide scripting support.
- *
- * A plugin must export the following functions to create / destroy the object
- * CreateScriptPlugin()  // returns a pointer to a ScriptPlugin object
- * DestroyScriptPlugin() // destroys the plugin
- */
-class DALI_TOOLKIT_API ScriptPlugin
-{
-public:
-
-
-  /**
-   * Function pointer called in toolkit to create a ScriptPlugin plugin instance.
-   * @return Pointer to the newly created plugin object
-   */
-  typedef ScriptPlugin* Create();
-
-  /**
-   * Function pointer called in toolkit to Unload the plugin.
-   * @param plugin  The plugin object created and returned by CreateScriptPluginPlugin().
-   */
-  typedef void Destroy(ScriptPlugin* plugin);
-
-  /**
-   * virtual Destructor.
-   */
-  virtual ~ScriptPlugin() {};
-
-  /**
-   * Set engine configuration flags
-   * @param [in] flags string. Format dependent on the scripting engine.
-   */
-  virtual void SetFlags(const std::string& flags) = 0;
-
-  /**
-   * Exec buffer contents as a script
-   * @param buffer script file contents
-   * @param filename a nominal name for the buffer contents.
-   * filename extension may be used to disambiguate script language
-   * @return true on success, false on failure
-   *
-   */
-  virtual bool ExecuteBuffer(const std::string& buffer, const std::string& filename) = 0;
-
-  /**
-   * Exec file as a script
-   * @param filename the filename to read and execute
-   * @return true on success, false on failure
-   */
-  virtual bool ExecuteFile(const std::string& filename) = 0;
-
-}; // class ScriptPlugin
-
-} // namespace Toolkit
-
-} // namespace Dali
-
-#endif // DALI_SCRIPT_PLUGIN_H
diff --git a/dali-toolkit/devel-api/scripting/script.cpp b/dali-toolkit/devel-api/scripting/script.cpp
deleted file mode 100644 (file)
index 7fdf5e4..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "script.h"
-
-// INTERNAL INCLUDES
-#include <dali/integration-api/debug.h>
-#include <dali-toolkit/internal/scripting/script-impl.h>
-
-namespace Dali
-{
-
-namespace Toolkit
-{
-
-Script::Script()
-{
-}
-
-Script::~Script()
-{
-}
-
-Script Script::New(void)
-{
-  return Script(new Internal::Script());
-}
-
-Script::Script(Internal::Script *impl)
-  : BaseHandle(impl)
-{
-}
-
-bool Script::ExecuteFile( const std::string &filename )
-{
-  return GetImpl(*this).ExecuteFile( filename );
-}
-
-} // namespace Toolkit
-
-} // namespace Dali
-
diff --git a/dali-toolkit/devel-api/scripting/script.h b/dali-toolkit/devel-api/scripting/script.h
deleted file mode 100644 (file)
index 12cd72a..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-#ifndef DALI_TOOLKIT_SCRIPT_H
-#define DALI_TOOLKIT_SCRIPT_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <dali-toolkit/public-api/dali-toolkit-common.h>
-#include <dali/public-api/object/base-handle.h>
-
-namespace Dali
-{
-
-namespace Toolkit
-{
-
-namespace Internal DALI_INTERNAL
-{
-class Script;
-}
-
-/**
- * Script
- * This class provides the ability to execute script in a supported language.
- * Specific script language support is provided through plugins.
- *
- * For Example.
- *
- * @code
- *
- * Script script = Script::New();
- *
- * script.ExecuteFile("bump-map.js");
- *
- * @endcode
- *
- */
-class DALI_TOOLKIT_API Script : public BaseHandle
-{
-
-public:
-
-  /**
-   * Create an Script handle; this can be initialised with Script::New()
-   * Calling member functions with an uninitialised handle is not allowed.
-   */
-  Script();
-
-  /**
-   * Creates an Script object.
-   * @return A handle to the Script control.
-   */
-  static Script New();
-
-  /**
-   * Virtual destructor.
-   */
-  ~Script();
-
-  /**
-   * Executes the contents of filename in a scripted environment.
-   * @pre A Dali Application object exists
-   * @param filename A filename of a script file to execute
-   * @return true on success, false on failure
-   *
-   */
-  bool ExecuteFile( const std::string& filename );
-
-private:
-
-  Script(Internal::Script *impl);
-
-}; // class Script
-
-} // namespace Toolkit
-
-} // namespace Dali
-
-#endif // DALI_TOOLKIT_SCRIPT_H
index cec9d3f..c2b60e2 100755 (executable)
@@ -162,7 +162,5 @@ toolkit_src_files = \
    $(toolkit_src_dir)/transition-effects/cube-transition-cross-effect-impl.cpp \
    $(toolkit_src_dir)/transition-effects/cube-transition-fold-effect-impl.cpp \
    $(toolkit_src_dir)/transition-effects/cube-transition-wave-effect-impl.cpp \
-   $(toolkit_src_dir)/scripting/script-impl.cpp \
-   $(toolkit_src_dir)/scripting/script-plugin-proxy.cpp \
    $(toolkit_src_dir)/text/xhtml-entities.cpp \
    $(toolkit_src_dir)/drag-drop-detector/drag-and-drop-detector-impl.cpp
diff --git a/dali-toolkit/internal/scripting/script-impl.cpp b/dali-toolkit/internal/scripting/script-impl.cpp
deleted file mode 100644 (file)
index 6c9191b..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "script-impl.h"
-
-// INTERNAL INCLUDES
-#include <dali/integration-api/debug.h>
-#include "script-plugin-proxy.h"
-
-namespace Dali
-{
-
-namespace Toolkit
-{
-
-namespace Internal
-{
-
-namespace
-{
-#if _GLIBCXX_USE_CXX11_ABI
-const char* PLUGIN_FILE = "libdali-script-plugin-v8-cxx11.so";
-#else
-const char* PLUGIN_FILE = "libdali-script-plugin-v8.so";
-#endif
-}
-
-Script::Script()
-: mPlugin( NULL )
-{
-  ScriptPluginProxy *plugin = new ScriptPluginProxy( PLUGIN_FILE );
-
-  if( plugin->IsInitialized() )
-  {
-    mPlugin = plugin;
-  }
-  else
-  {
-    delete plugin;
-  }
-}
-
-bool Script::ExecuteFile( const std::string& filename )
-{
-  if( mPlugin )
-  {
-    return mPlugin->ExecuteFile(filename);
-  }
-  return false;
-}
-
-Script::~Script()
-{
-  if( mPlugin )
-  {
-    delete mPlugin;
-  }
-}
-
-} // namespace Internal
-
-} // namespace Toolkit
-
-} // namespace Dali
diff --git a/dali-toolkit/internal/scripting/script-impl.h b/dali-toolkit/internal/scripting/script-impl.h
deleted file mode 100644 (file)
index f523928..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-#ifndef DALI_TOOLKIT_INTERNAL_SCRIPT_H
-#define DALI_TOOLKIT_INTERNAL_SCRIPT_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-// EXTERNAL INCLUDES
-#include <dali/public-api/object/base-object.h>
-
-// INTERNAL INCLUDES
-#include <dali-toolkit/devel-api/scripting/script.h>
-#include <dali-toolkit/devel-api/scripting/script-plugin.h>
-
-
-namespace Dali
-{
-
-namespace Toolkit
-{
-
-namespace Internal
-{
-
-class Script;
-
-/**
- * @copydoc Toolkit::Script
- */
-class Script : public Dali::BaseObject
-{
-public:
-
-  /**
-   * @brief Constructor
-   */
-  Script();
-
-  /**
-   * @copydoc Toolkit::Script::ExecuteFile
-   */
-  bool ExecuteFile( const std::string& filename );
-
-protected:
-
-  /**
-   *  @brief virtual destructor
-   */
-  virtual ~Script();
-
-private:
-
-  /**
-   * @brief Undefined copy  constructor
-   */
-  Script(const Script&);
-
-  /**
-   * @brief Undefined assignment operator
-   */
-  Script& operator=(const Script& rhs);
-
-private: // data
-
-  ScriptPlugin* mPlugin;    ///< plugin
-
-};
-
-} // namespace Internal
-
-inline Internal::Script& GetImpl(Dali::Toolkit::Script& obj)
-{
-  DALI_ASSERT_ALWAYS(obj);
-
-  Dali::BaseObject& handle = obj.GetBaseObject();
-
-  return static_cast<Internal::Script&>(handle);
-}
-
-inline const Internal::Script& GetImpl(const Dali::Toolkit::Script& obj)
-{
-  DALI_ASSERT_ALWAYS(obj);
-
-  const Dali::BaseObject& handle = obj.GetBaseObject();
-
-  return static_cast<const Internal::Script&>(handle);
-}
-
-
-} // namespace Toolkit
-
-} // namespace Dali
-
-#endif // DALI_TOOLKIT_INTERNAL_SCRIPT_H
diff --git a/dali-toolkit/internal/scripting/script-plugin-proxy.cpp b/dali-toolkit/internal/scripting/script-plugin-proxy.cpp
deleted file mode 100644 (file)
index 0af3711..0000000
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "script-plugin-proxy.h"
-
-// INTERNAL INCLUDES
-#include <dali/integration-api/debug.h>
-
-// EXTERNAL INCLUDES
-#include <dlfcn.h>
-
-namespace Dali
-{
-
-namespace Toolkit
-{
-
-namespace Internal
-{
-
-ScriptPluginProxy::ScriptPluginProxy( const std::string& sharedObjectName)
-: mLibHandle(NULL),
-  mCreatePluginFunctionPtr(NULL),
-  mDestroyPluginFunctionPtr(NULL),
-  mScriptingPlugin(NULL),
-  mSharedObjectName(sharedObjectName),
-  mIsInitialized(false)
-{
-  Initialize();
-}
-
-ScriptPluginProxy::~ScriptPluginProxy()
-{
-  UnInitialize();
-}
-
-void ScriptPluginProxy::SetFlags(const std::string& flags)
-{
-  if( mIsInitialized )
-  {
-    mScriptingPlugin->SetFlags( flags );
-  }
-}
-
-bool ScriptPluginProxy::ExecuteBuffer(const std::string &buffer, const std::string &filename)
-{
-  if( mIsInitialized )
-  {
-    return mScriptingPlugin->ExecuteBuffer( buffer, filename );
-  }
-  return false;
-}
-
-bool ScriptPluginProxy::ExecuteFile(const std::string &filename)
-{
-  if( mIsInitialized )
-  {
-    return mScriptingPlugin->ExecuteFile( filename );
-  }
-  return false;
-}
-
-bool ScriptPluginProxy::IsInitialized() const
-{
-  return mIsInitialized;
-};
-
-void ScriptPluginProxy::Initialize()
-{
-  if( mIsInitialized )
-  {
-    return;
-  }
-
-  // dl library maintains link counts if you call this twice on the same library
-  // (so its okay to do but we should close every handle we get too)
-  mLibHandle = dlopen( mSharedObjectName.c_str(), RTLD_NOW | RTLD_GLOBAL );
-  if( !mLibHandle )
-  {
-    DALI_LOG_ERROR( "Cannot load dali script plugin. %s\n", dlerror() );
-    return;
-  }
-
-  // reset errors
-  dlerror();
-
-  // load plugin
-  mCreatePluginFunctionPtr = reinterpret_cast<ScriptPlugin::Create*>( dlsym( mLibHandle, "CreateScriptPlugin" ) );
-  if( !mCreatePluginFunctionPtr )
-  {
-    DALI_LOG_ERROR( "Cannot load symbol CreateScriptPlugin(). %s\n", dlerror() );
-    return;
-  }
-
-  // reset errors
-  dlerror();
-
-  mDestroyPluginFunctionPtr = reinterpret_cast<ScriptPlugin::Destroy*>( dlsym( mLibHandle, "DestroyScriptPlugin" ) );
-  if( !mDestroyPluginFunctionPtr )
-  {
-    DALI_LOG_ERROR( "Cannot load symbol:DestroyScriptPlugin(). %s\n", dlerror() );
-    return;
-  }
-
-  // reset errors
-  dlerror();
-
-  mScriptingPlugin = mCreatePluginFunctionPtr();
-
-  if( !mScriptingPlugin )
-  {
-    DALI_LOG_ERROR( "Call to function CreateFeedbackPlugin() failed\n" );
-    return;
-  }
-
-  mIsInitialized = true;
-}
-
-void ScriptPluginProxy::UnInitialize()
-{
-  if( mScriptingPlugin )
-  {
-    mDestroyPluginFunctionPtr( mScriptingPlugin );
-  }
-
-  if( mLibHandle )
-  {
-    if( dlclose( mLibHandle ) )
-    {
-      DALI_LOG_ERROR( "Error closing dali plugin library: %s\n", dlerror() );
-    }
-  }
-  mIsInitialized = false;
-}
-} // namespace Adaptor
-
-} // namespace Internal
-
-} // namespace Dali
diff --git a/dali-toolkit/internal/scripting/script-plugin-proxy.h b/dali-toolkit/internal/scripting/script-plugin-proxy.h
deleted file mode 100644 (file)
index 7af87a2..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-#ifndef DALI_INTERNAL_SCRIPT_PLUGIN_PROXY_H
-#define DALI_INTERNAL_SCRIPT_PLUGIN_PROXY_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-#include <dali-toolkit/devel-api/scripting/script-plugin.h>
-
-namespace Dali
-{
-
-namespace Toolkit
-{
-
-namespace Internal
-{
-
-/**
- * @brief Proxy class to dynamically load, use and unload script plugin.
- *
- *
- */
-class ScriptPluginProxy : public ScriptPlugin
-{
-public:
-
-  /**
-   * @brief Constructor
-   * @param sharedObjectName so file to load
-   */
-  ScriptPluginProxy( const std::string& sharedObjectName);
-
-  /**
-   *  @brief destructor
-   */
-  virtual ~ScriptPluginProxy();
-
-  /**
-   * Set engine configuration flags
-   * @param [in] flags string. Format dependent on the scripting engine.
-   */
-  virtual void SetFlags( const std::string& flags );
-
-  /**
-   * @brief Exececute the buffer contents as a script
-   * @param [in] buffer script file contents
-   * @param [in] filename a nominal name for the buffer contents.
-   * @note filename extension may be used to disambiguate script language
-   * @return true on success, false on failure
-   *
-   */
-  virtual bool ExecuteBuffer( const std::string& buffer, const std::string& filename );
-
-  /**
-   * @brief  execture the file as a script
-   * @param [in] filename the filename to read and execute
-   * @return true on success, false on failure
-   */
-  virtual bool ExecuteFile( const std::string& fileName );
-
-  /**
-   * @brief check if the plugin is initialized
-   * @return true if it's initialized
-   */
-  bool IsInitialized() const;
-
-private:
-
-  ScriptPluginProxy( const ScriptPluginProxy& ); ///< Undefined
-  ScriptPluginProxy& operator=( const ScriptPluginProxy& ); ///< Undefined
-
-  /**
-   * @brief Dynamically loads the script plugin.
-   */
-  void Initialize();
-
-  /**
-   * @brief Unloads the script plugin.
-   */
-  void UnInitialize();
-
-private:
-
-  void* mLibHandle;
-  ScriptPlugin::Create* mCreatePluginFunctionPtr;
-  ScriptPlugin::Destroy* mDestroyPluginFunctionPtr;
-  ScriptPlugin* mScriptingPlugin;
-  std::string mSharedObjectName;
-  bool mIsInitialized;
-
-};
-
-} // namespace Adaptor
-
-} // namespace Internal
-
-} // namespace Dali
-
-#endif // DALI_INTERNAL_SCRIPT_PLUGIN_PROXY_H
index f64443b..17b4c6f 100644 (file)
@@ -17,7 +17,7 @@
    version="1.1"
    inkscape:version="0.48.3.1 r9886"
    sodipodi:docname="example-fitting-mode-options.svg"
-   inkscape:export-filename="/tmp/1.png"
+   inkscape:export-filename="1.png"
    inkscape:export-xdpi="89.269394"
    inkscape:export-ydpi="89.269394">
   <defs
      id="layer1"
      transform="translate(0,-308.2677)">
     <image
-       sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/door.jpg"
+       sodipodi:absref="door.jpg"
        xlink:href="door.jpg"
        inkscape:export-ydpi="89.269394"
        inkscape:export-xdpi="89.269394"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        width="256"
        height="256"
        id="image6106"
     <g
        id="g6199"
        transform="matrix(0.75,0,0,0.75,158.83024,-448.90946)"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394">
       <image
-         sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/door.jpg"
+         sodipodi:absref="door.jpg"
          xlink:href="door.jpg"
          inkscape:export-ydpi="89.269394"
          inkscape:export-xdpi="89.269394"
-         inkscape:export-filename="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/shared-javascript-and-cpp-documentation/door-scale-to-fill2.png"
+         inkscape:export-filename="door-scale-to-fill2.png"
          y="764.36218"
          x="512"
          id="image6106-0"
          width="51.309372"
          id="rect6179"
          style="fill:#ffffff;fill-opacity:1;stroke:none"
-         inkscape:export-filename="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/shared-javascript-and-cpp-documentation/door-scale-to-fill.png"
+         inkscape:export-filename="door-scale-to-fill.png"
          inkscape:export-xdpi="89.269394"
          inkscape:export-ydpi="89.269394" />
       <rect
          width="48.189934"
          id="rect6179-2"
          style="fill:#ffffff;fill-opacity:1;stroke:none"
-         inkscape:export-filename="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/shared-javascript-and-cpp-documentation/door-scale-to-fill.png"
+         inkscape:export-filename="door-scale-to-fill.png"
          inkscape:export-xdpi="89.269394"
          inkscape:export-ydpi="89.269394" />
       <rect
          inkscape:export-ydpi="89.269394"
          inkscape:export-xdpi="89.269394"
-         inkscape:export-filename="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/shared-javascript-and-cpp-documentation/door-scale-to-fill2.png"
+         inkscape:export-filename="door-scale-to-fill2.png"
          y="764.36218"
          x="560"
          height="256.00003"
        height="192.00003"
        x="356"
        y="124.36218"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394" />
     <image
-       sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/door.jpg"
+       sodipodi:absref="door.jpg"
        xlink:href="door.jpg"
        inkscape:export-ydpi="89.269394"
        inkscape:export-xdpi="89.269394"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        width="120"
        height="135.85014"
        id="image6106-5"
        height="192.00003"
        x="804"
        y="124.36212"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394" />
     <image
-       sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/door.jpg"
+       sodipodi:absref="door.jpg"
        xlink:href="door.jpg"
        inkscape:export-ydpi="89.269394"
        inkscape:export-xdpi="89.269394"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        width="120"
        height="135.85014"
        id="image6106-5-3"
        height="192.00003"
        x="1030.3395"
        y="124.36212"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394" />
     <image
-       sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/door.jpg"
+       sodipodi:absref="door.jpg"
        xlink:href="door.jpg"
        inkscape:export-ydpi="89.269394"
        inkscape:export-xdpi="89.269394"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        width="192"
        height="192"
        id="image6106-4"
        height="192.00003"
        x="1254.3396"
        y="124.36218"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394" />
     <image
-       sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/dog.jpg"
+       sodipodi:absref="dog.jpg"
        xlink:href="dog.jpg"
        inkscape:export-ydpi="89.269394"
        inkscape:export-xdpi="89.269394"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        width="256"
        height="256"
        id="image6359"
        height="192"
        x="-604.36218"
        y="320"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394"
        transform="matrix(0,-1,1,0,0,0)" />
     <g
        id="g6476"
        transform="translate(-7.128906e-7,-384.82965)"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394">
       <image
-         sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/dog.jpg"
+         sodipodi:absref="dog.jpg"
          xlink:href="dog.jpg"
          y="829.19183"
          x="544"
          transform="matrix(0,-1,1,0,0,0)"
          inkscape:export-ydpi="89.269394"
          inkscape:export-xdpi="89.269394"
-         inkscape:export-filename="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/shared-javascript-and-cpp-documentation/example-scale-to-fill-sequence.png"
+         inkscape:export-filename="example-scale-to-fill-sequence.png"
          y="544"
          x="-989.19183"
          height="192"
          style="fill:none;stroke:#ff0000;stroke-width:3.31857371;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
     </g>
     <image
-       sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/dog.jpg"
+       sodipodi:absref="dog.jpg"
        xlink:href="dog.jpg"
        inkscape:export-ydpi="89.269394"
        inkscape:export-xdpi="89.269394"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        width="192"
        height="192"
        id="image6359-2-2"
        height="192"
        x="-605.19183"
        y="994.33954"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394"
        transform="matrix(0,-1,1,0,0,0)" />
     <image
-       sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/dog.jpg"
+       sodipodi:absref="dog.jpg"
        xlink:href="dog.jpg"
        inkscape:export-ydpi="89.269394"
        inkscape:export-xdpi="89.269394"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        width="128"
        height="128"
        id="image6359-2-2-2"
        height="192"
        x="-605.19183"
        y="1218.3396"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394"
        transform="matrix(0,-1,1,0,0,0)" />
     <image
-       sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/dog.jpg"
+       sodipodi:absref="dog.jpg"
        xlink:href="dog.jpg"
        inkscape:export-ydpi="89.269394"
        inkscape:export-xdpi="89.269394"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        width="128"
        height="128"
        id="image6359-2-2-2-1"
        height="192"
        x="-604.36218"
        y="768"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394"
        transform="matrix(0,-1,1,0,0,0)" />
        id="flowRoot3024"
        style="font-size:24px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
        transform="translate(0,244.2677)"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394"><flowRegion
          id="flowRegion3026"><rect
        id="flowRoot3032"
        style="font-size:24px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
        transform="translate(0,244.2677)"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394"><flowRegion
          id="flowRegion3034"><rect
        id="flowRoot3040"
        style="font-size:24px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
        transform="translate(0,244.2677)"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394"><flowRegion
          id="flowRegion3042"><rect
        id="flowRoot3048"
        style="font-size:24px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
        transform="translate(0,244.2677)"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394"><flowRegion
          id="flowRegion3050"><rect
        id="flowRoot3056"
        style="font-size:24px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
        transform="translate(0,244.2677)"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394"><flowRegion
          id="flowRegion3058"><rect
        id="flowRoot3064"
        style="font-size:24px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
        transform="translate(0,244.2677)"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394"><flowRegion
          id="flowRegion3066"><rect
            x="1215.7982"
            y="744.88245" /></flowRegion><flowPara
          id="flowPara3070">FIT_HEIGHT</flowPara></flowRoot>    <image
-       sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/liberty.jpg"
+       sodipodi:absref="liberty.jpg"
        xlink:href="liberty.jpg"
        inkscape:export-ydpi="89.269394"
        inkscape:export-xdpi="89.269394"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        width="256"
        height="256"
        id="image3239"
        y="700.36218" />
     <g
        id="g4034"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394">
       <rect
          width="128"
          id="rect3244"
          style="fill:none;stroke:#ff0000;stroke-width:4.19999981;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
-         inkscape:export-filename="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/shared-javascript-and-cpp-documentation/fitting-mode-options.png"
+         inkscape:export-filename="fitting-mode-options.png"
          inkscape:export-xdpi="89.269394"
          inkscape:export-ydpi="89.269394" />
     </g>
     <g
        transform="translate(224,-1.9531262e-7)"
        id="g4034-5"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394">
       <image
-         sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/liberty.jpg"
+         sodipodi:absref="liberty.jpg"
          xlink:href="liberty.jpg"
          y="764.36218"
          x="352"
     <g
        transform="translate(448,-1.9531262e-7)"
        id="g4034-4"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394">
       <image
-         sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/liberty.jpg"
+         sodipodi:absref="liberty.jpg"
          xlink:href="liberty.jpg"
          y="764.36218"
          x="352"
     <g
        transform="translate(672,-1.9531262e-7)"
        id="g4034-3"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394">
       <image
-         sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/liberty.jpg"
+         sodipodi:absref="liberty.jpg"
          xlink:href="liberty.jpg"
          y="764.36218"
          x="352"
     <g
        transform="translate(896,-1.9531262e-7)"
        id="g4034-2"
-       inkscape:export-filename="/tmp/fitting-mode-options.png"
+       inkscape:export-filename="fitting-mode-options.png"
        inkscape:export-xdpi="89.269394"
        inkscape:export-ydpi="89.269394">
       <image
-         sodipodi:absref="/home/SERILOCAL/andrew.cox/git/opendali-features/dali-toolkit/docs/content/figures/liberty.jpg"
+         sodipodi:absref="liberty.jpg"
          xlink:href="liberty.jpg"
          y="764.36218"
          x="352"
diff --git a/docs/content/images/javascript-wrapping-guide/scripting-overview.png b/docs/content/images/javascript-wrapping-guide/scripting-overview.png
deleted file mode 100644 (file)
index 0dea37b..0000000
Binary files a/docs/content/images/javascript-wrapping-guide/scripting-overview.png and /dev/null differ
index c7b88f6..b54806b 100644 (file)
@@ -23,7 +23,6 @@
 ### Programming Guide
  + [Programming Languages:](@ref programming-languages)
   + [C++](@ref c-plus-plus)
-  + [JavaScript](@ref java-script-support)
   + [JSON](@ref json-support)
  + [Application](@ref dali-application)
  + [Actors](@ref actors-and-stage)
@@ -68,7 +67,7 @@
  + [Overview](@ref shader-intro)
 
 ### Scripting
- + [JSON and JavaScript Overview](@ref scriptoverview)
+ + [JSON Overview](@ref scriptoverview)
  + [JSON Syntax](@ref script-json-specification)
  + [Scripting Hello World](@ref script-hello)
 
@@ -85,7 +84,6 @@
   + [Type Registration](@ref type-registration)
  + [Automated Tests](@ref auto_testing)
  + [Programming Guide](@ref documentationguide)
- + [JavaScript Wrapping Guide for DALi developers](@ref javascriptwrapping)
 
 ### Application Optimization Guide
  + [Rescaling Images](@ref resourceimagescaling)
@@ -32,7 +32,7 @@ The AccessibilityManager lives within DALi Toolkit. Please see accessibility-man
 
 <!-- Float image to the right of the text -->
 <div style="float: right">
-    ![ ](../assets/img/accessibility/accessibility-focus.png) ![ ](./accessibility-focus.png)
+    ![ ](./accessibility-focus.png)
 </div>
 
 Visibly, when enabled, accessibility will typically show an actor (or actors) as focused. This is represented by default with yellow rectangular frame around the actor. See this section for [modifying the appearance of the accessibility focus](#accessibilityfocusappearance).
@@ -61,7 +61,7 @@ Note: The gestures that perform these actions are platform specific. These are t
 - Doing a left or right swipe-return (where a direction is swiped forwards and backwards quickly) will move to the previous or next page - DALi cannot know what a page is within your application so these gestures can only work if implemented manually.
   
 
-![ ](../assets/img/accessibility/accessibility-focus-order.png) ![ ](./accessibility-focus-order.png)
+![ ](./accessibility-focus-order.png)
 
 ### Activation {#accessibilityactivation}
 
@@ -153,7 +153,7 @@ Controlling the activation behaviour within a custom control is covered in the [
 
 <!-- Float image to the right of the text -->
 <div style="float: right">
-    ![ ](../assets/img/accessibility/accessibility-focus-group.png) ![ ](./accessibility-focus-group.png)
+    ![ ](./accessibility-focus-group.png)
 </div>
 
 Group mode allows the limiting of focusable actors.
@@ -269,5 +269,4 @@ The main categories of signals are:
 Please see accessibility-manager.h within DALi Toolkit for the full API.
 
 
-@class _Guide_Accessibility
 */
@@ -15,13 +15,13 @@ Below shows how the popup will look depending on the state of the text-control.
 |--|--|
 | Condition: Long press/double tap when empty text but clipboard has content  |  Condition: Long press/double tap when text-control contains text |
 |[PASTE][CLIPBOARD] buttons shown| [CUT][COPY], [SELECT ALL] unless all text selected and [PASTE][CLIPBOARD] if content to paste. |
-|    ![ ](../assets/img/text-controls/EmptyTextClipboardHasContent.png) ![ ](./EmptyTextClipboardHasContent.png) |   ![ ](../assets/img/text-controls/SelectingText.png) ![ ](./SelectingText.png) |
+|    ![ ](./EmptyTextClipboardHasContent.png) |  ![ ](./SelectingText.png) |
 | Condition: Long press/double tap popup when text-control contains just whitespace | Condition: Empty text & clipboard empty |
 | Whitespace treated as regular text, [CUT][COPY] shown and [PASTE][CLIPBOARD] if content to paste. As all text is selected there is no need for [SELECT ALL] |  No popup shown after long press/double tap|
-|  ![ ](../assets/img/text-controls/SelectAllWhitespace.png) ![ ](./SelectAllWhitespace.png) | ![ ](../assets/img/text-controls/EmptyTextAndNoContentToPaste.png) ![ ](./EmptyTextAndNoContentToPaste.png)|
+|  ![ ](./SelectAllWhitespace.png) | ![ ](./EmptyTextAndNoContentToPaste.png)|
 | Condition: Long press/(double tap) on whitespace which is following text | Condition: Tapping text or panning grab handle |
 | [PASTE][CLIPBOARD] shown if something to paste. [SELECT ALL] as more text to select | If content in clipboard [PASTE][CLIPBOARD] popup will be shown. |
-| ![ ](../assets/img/text-controls/SelectWhitespaceAfterText.png) ![ ](./SelectWhitespaceAfterText.png) | ![ ](../assets/img/text-controls/TapAfterCopyingText.png) ![ ](./TapAfterCopyingText.png) |
+| ![ ](./SelectWhitespaceAfterText.png) | ![ ](./TapAfterCopyingText.png) |
 
 
 */
@@ -10,7 +10,6 @@ This can be done by extending Dali::Toolkit::Control and Dali::Toolkit::Internal
  
 Custom controls are created using the [handle/body idiom](@ref handle-body-idiom) used in DALi.
  
-![ ](../assets/img/creating-custom-controls/control-handle-body.png)
 ![ ](creating-custom-controls/control-handle-body.png)
  
 Namespaces are important
@@ -23,7 +22,7 @@ Namespaces are important
 ### General Guidelines:
 + Try to avoid adding C++ APIs as they become difficult to maintain.
   + Use **properties** as much as possible as Controls should be data driven.
-  + These controls will be used through JavaScript and JSON files so need to be compatible.
+  + These controls will be used through JSON files so need to be compatible.
 + Bear in mind that the Control can be updated when the properties change (e.g. style change)
   + Ensure control deals with these property changes gracefully
   + Not just the first time they are set
@@ -44,7 +43,6 @@ However, this solution is not fully optimised and means extra actors will be add
 Controls should be as generic as possible so the recommendation is to re-use visuals to create the content required as described in the [Visuals](@ref visuals) section.
 Currently, this is devel-api though, so is subject to change.
  
-![ ](../assets/img/creating-custom-controls/rendering.png)
 ![ ](creating-custom-controls/rendering.png)
 
 To add a visual to a control, first create a Property for the visual of type MAP, and ensure the name has a suffix of "_VISUAL". Then the visual is normally defined in the stylesheet, and the definition sent via SetProperty(), where you would then create the visual:
@@ -105,7 +103,7 @@ Styling gives the UI designer the ability to change the look and feel of the con
  
 | Normal Style | Customized Style |
 |:------------:|:----------------:|
-|![ ](../assets/img/creating-custom-controls/popup-normal.png) ![ ](creating-custom-controls/popup-normal.png) | ![ ](../assets/img/creating-custom-controls/popup-styled.png) ![ ](creating-custom-controls/popup-styled.png)|
+|![ ](creating-custom-controls/popup-normal.png) | ![ ](creating-custom-controls/popup-styled.png)|
  
 More information regarding styling can be found in the [Styling](@ref styling) section.
 ___________________________________________________________________________________________________
@@ -495,6 +493,5 @@ ________________________________________________________________________________
  
 ___________________________________________________________________________________________________
 
-@class _Guide_Creating_UI_Controls
 
 */
@@ -13,7 +13,7 @@ DALi is a quick and easy way of allowing developers to create Rich UI Applicatio
  + Advanced watch faces for wearable devices
 
 DALi is based on OpenGL ES 2.0 & 3.0, however it hides the complexity of
-the OpenGL API from developers and provides a clean cross-platform C++ & JavaScript framework.
+the OpenGL API from developers and provides a clean cross-platform C++ API.
 
 ## Features {#dali-features}
 
@@ -23,7 +23,7 @@ the OpenGL API from developers and provides a clean cross-platform C++ & JavaScr
  + Provides Layers to aid in 2D UI layout
  + Easy to use Animation framework
  + Automatic background loading of resources ( images / text / meshes )
- + Runs all animations in a separate thread. This helps maintain 60 FPS even if JavaScript is performing a long operation ( e.g. Garbage Collection ).
+ + Runs all animations in a separate thread. This helps maintain 60 FPS even if a long operation is being performed holding up the main thread.
  + Provides keyboard / touch / mouse handling
 
 ![ ](screen-shot.png)
@@ -13,7 +13,6 @@ The wireframe visual renders a simple quad wireframe, so that the control layout
 sh-4.1$ DALI_DEBUG_RENDERING=1 /usr/apps/com.samsung.dali-demo/bin/blocks.example
 ~~~
 
-![ ](../assets/img/debug-rendering/debug-blocks.png)
 ![ ](debug-blocks.png)
 
 
diff --git a/docs/content/programming-guide/documentation-guide.md b/docs/content/programming-guide/documentation-guide.md
new file mode 100644 (file)
index 0000000..8227fc1
--- /dev/null
@@ -0,0 +1,45 @@
+<!--
+/**-->
+
+# Writing documentation for the DALi programming guide  {#documentationguide}
+
+For documentation, please follow these guidelines:
+
+ - Create a mark down file (.md) using GitHub Flavoured Markdown https://help.github.com/articles/github-flavored-markdown/
+ - Put it into the following folder: dali-toolkit/docs/content/programming-guide/
+ - Include code samples for C++ in the mark down.
+ - See script-overview.md overview in dali-toolkit/docs/content/programming-guide for an example
+ - For DOXYGEN to link to the mark down it currently needs a reference {hash myfile}
+  
+
+#### Images
+ Doxygen copies all images in to the same folder as the HTML generated pages so you can just reference it as follows:
+
+ ~~~
+![ ](screen-shot.png)                  // required for Doxygen
+
+The space between the brackets is the alternative text. This means you will never see a broken image symbol.
+~~~
+  
+## Example
+
+Please have a look at the numerous markdown files to see the header and footer requirements.
+
+You can add tags to your headings as follows:
+~~~{.md}
+# MyChapter {#my-chapter}
+~~~
+Which will allow you to link to this section as follows:
+~~~{.md}
+[Go To MyChapter](@ref my-chapter)
+~~~
+
+Code blocks can be enclosed within 2 blocks of 3 tildes(~).
+
+You can even specify your language type, for example:
+~~~{.md}
+~~~{.cpp}
+...
+
+
+*/
@@ -12,7 +12,6 @@ The container expands items to fill available free space, or shrinks them to pre
  
 Below is an illustration of the various directions and terms as applied to a flex container with the "flex direction" defined as "row".
  
-![ ](../assets/img/flex-container/flex-container.jpg)
 ![ ](flex-container/flex-container.jpg)
  
 DALi supports the following subset of Flexbox properties.
@@ -34,7 +33,7 @@ contentDirection specifies the primary direction in which content is ordered on
  
 | LTR (left-to-right) | RTL (right-to-left) |
 |--------|--------|
-| ![ ](../assets/img/flex-container/content-direction-ltr.jpg) ![ ](flex-container/content-direction-ltr.jpg) | ![ ](../assets/img/flex-container/content-direction-rtl.jpg) ![ ](flex-container/content-direction-rtl.jpg) |
+| ![ ](flex-container/content-direction-ltr.jpg) | ![ ](flex-container/content-direction-rtl.jpg) |
  
 The possible values for this property are:
  
@@ -52,18 +51,12 @@ Dali::Toolkit::FlexContainer flexContainer = Dali::Toolkit::FlexContainer::New()
 flexContainer.SetProperty( Dali::Toolkit::FlexContainer::Property::CONTENT_DIRECTION, Dali::Toolkit::FlexContainer::RTL );
 ~~~
 
-~~~{.js}
-// JavaScript
-var flexContainer = new dali.Control("FlexContainer");
-flexContainer.contentDirection = "RTL";
-~~~
 ___________________________________________________________________________________________________
 
 ## flexDirection {#flex-direction}
  
 flexDirection specifies the direction of the main axis which determines the direction that flex items are laid out.
  
-![ ](../assets/img/flex-container/flex-direction.jpg)
 ![ ](flex-container/flex-direction.jpg)
  
 The possible values for this property are:
@@ -83,18 +76,12 @@ Dali::Toolkit::FlexContainer flexContainer = Dali::Toolkit::FlexContainer::New()
 flexContainer.SetProperty( Dali::Toolkit::FlexContainer::Property::FLEX_DIRECTION, Dali::Toolkit::FlexContainer::ROW_REVERSE );
 ~~~
 
-~~~{.js}
-// JavaScript
-var flexContainer = new dali.Control("FlexContainer");
-flexContainer.flexDirection = "rowReverse";
-~~~
 ___________________________________________________________________________________________________
 
 ## flexWrap {#flex-wrap}
  
 flexWrap specifies whether the flex items should wrap or not if there is no enough room for them on one flex line.
  
-![ ](../assets/img/flex-container/flex-wrap.jpg)
 ![ ](flex-container/flex-wrap.jpg)
  
 The possible values for this property are:
@@ -112,18 +99,12 @@ Dali::Toolkit::FlexContainer flexContainer = Dali::Toolkit::FlexContainer::New()
 flexContainer.SetProperty( Dali::Toolkit::FlexContainer::Property::FLEX_WRAP, Dali::Toolkit::FlexContainer::NO_WRAP );
 ~~~
 
-~~~{.js}
-// JavaScript
-var flexContainer = new dali.Control("FlexContainer");
-flexContainer.flexWrap = "noWrap";
-~~~
 ___________________________________________________________________________________________________
 
 ## justifyContent {#justify-content}
  
 justifyContent specifies the alignment of flex items when they do not use all available space on the main axis.
  
-![ ](../assets/img/flex-container/justify-content.jpg)
 ![ ](flex-container/justify-content.jpg)
  
 The possible values for this property are:
@@ -144,18 +125,12 @@ Dali::Toolkit::FlexContainer flexContainer = Dali::Toolkit::FlexContainer::New()
 flexContainer.SetProperty( Dali::Toolkit::FlexContainer::Property::JUSTIFY_CONTENT, Dali::Toolkit::FlexContainer::JUSTIFY_SPACE_BETWEEN );
 ~~~
 
-~~~{.js}
-// JavaScript
-var flexContainer = new dali.Control("FlexContainer");
-flexContainer.justifyContent = "spaceBetween";
-~~~
 ___________________________________________________________________________________________________
 
 ## alignItems {#align-items}
  
 alignItems specifies the alignment of flex items when they do not use all available space on the cross axis.
  
-![ ](../assets/img/flex-container/align-items.jpg)
 ![ ](flex-container/align-items.jpg)
  
 The possible values for this property are:
@@ -175,18 +150,12 @@ Dali::Toolkit::FlexContainer flexContainer = Dali::Toolkit::FlexContainer::New()
 flexContainer.SetProperty( Dali::Toolkit::FlexContainer::Property::ALIGN_ITEMS, Dali::Toolkit::FlexContainer::ALIGN_FLEX_START );
 ~~~
 
-~~~{.js}
-// JavaScript
-var flexContainer = new dali.Control("FlexContainer");
-flexContainer.alignItems = "flexStart";
-~~~
 ___________________________________________________________________________________________________
 
 ## alignContent {#align-content}
  
 alignContent specifies the alignment of flex lines when they do not use all available space on the cross axis, so only works when there are multiple lines.
  
-![ ](../assets/img/flex-container/align-content.jpg)
 ![ ](flex-container/align-content.jpg)
  
 The possible values for this property are:
@@ -205,11 +174,6 @@ Dali::Toolkit::FlexContainer flexContainer = Dali::Toolkit::FlexContainer::New()
 flexContainer.SetProperty( Dali::Toolkit::FlexContainer::Property::ALIGN_CONTENT, Dali::Toolkit::FlexContainer::ALIGN_FLEX_END );
 ~~~
 
-~~~{.js}
-// JavaScript
-var flexContainer = new dali.Control("FlexContainer");
-flexContainer.alignContent = "flexEnd";
-~~~
 ___________________________________________________________________________________________________
 
 ## Custom properties supported by flex item:
@@ -230,7 +194,6 @@ By default, the items in the flex container are not flexible. If set, this prope
 If all items in the flex container use this pattern, their sizes will be proportional to the specified flex factor.
 Flex items will not shrink below their minimum size (if set using Dali::Actor::SetMinimumSize).
  
-![ ](../assets/img/flex-container/flex.jpg)
 ![ ](flex-container/flex.jpg)
  
 
@@ -270,44 +233,12 @@ flexContainer.Add( item5 );
 
 ~~~
 
-~~~{.js}
-// JavaScript
-
-// Create the flex container
-var flexContainer = new dali.Control("FlexContainer");
-
-// Set the flex direction to lay out the items horizontally
-flexContainer.flexDirection = "row";
-
-// Create flex items and set the proportion
-var item1 = new dali.Control();
-item1.flex = 1.0;
-flexContainer.add(item1);
-
-var item2 = new dali.Control();
-item2.flex = 3.0;
-flexContainer.add(item2);
-
-var item3 = new dali.Control();
-item3.flex = 1.0;
-flexContainer.add(item3);
-
-var item4 = new dali.Control();
-item4.flex = 2.0;
-flexContainer.add(item4);
-
-var item5 = new dali.Control();
-item5.flex = 1.0;
-flexContainer.add(item5);
-
-~~~
 ___________________________________________________________________________________________________
 
 ## alignSelf {#align-self}
  
 alignSelf specifies how the item will align along the cross axis, if set, this overrides the default alignment for all items defined by the container’s [alignItems](@ref align-items) property.
  
-![ ](../assets/img/flex-container/align-self.jpg)
 ![ ](flex-container/align-self.jpg)
  
 The possible values for this property are:
@@ -353,34 +284,6 @@ flexContainer.Add( item4 ); // item4 is aligned at the beginning of the containe
 
 ~~~
 
-~~~{.js}
-// JavaScript
-
-// Create the flex container
-var flexContainer = new dali.Control("FlexContainer");
-
-// Set the flex direction to lay out the items horizontally
-flexContainer.flexDirection = "row";
-
-// Set the items to be aligned at the beginning of the container on the cross axis by default
-flexContainer.alignItems = "flexStart";
-
-// Create flex items and add them to the flex container
-var item1 = new dali.Control();
-item1.alignSelf = "center"; // Align item1 at the center of the container
-flexContainer.add(item1);
-
-var item2 = new dali.Control();
-flexContainer.add(item2); // item2 is aligned at the beginning of the container
-
-var item3 = new dali.Control();
-item1.alignSelf = "flexEnd"; // Align item3 at the bottom of the container
-flexContainer.add(item3);
-
-var item4 = new dali.Control();
-flexContainer.add(item4); // item4 is aligned at the beginning of the container
-
-~~~
 ___________________________________________________________________________________________________
 
 ## flexMargin {#flex-margin}
@@ -392,7 +295,6 @@ Each flex item inside the flex container is treated as a box (in CSS term) which
  + border: The border that goes around the padding and the content of the item.
  + flexMargin: The space outside the border.
  
-![ ](../assets/img/flex-container/flex-margin.jpg)
 ![ ](flex-container/flex-margin.jpg)
  
 In DALi, the size of the flex item = content size + padding + border.
@@ -417,29 +319,12 @@ item.SetProperty( Dali::Toolkit::FlexContainer::ChildProperty::FLEX_MARGIN, Vect
 flexContainer.Add( item );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-// Create the flex container
-var flexContainer = new dali.Control("FlexContainer");
-
-// Create flex items
-var item = new dali.Control();
-
-// Add the margin around the item
-item.flexMargin = [10.0, 10.0, 10.0, 10.0];
-
-// Add the item to the container
-flexContainer.add(item);
-~~~
-
 ___________________________________________________________________________________________________
 
 ## Example of creating Flexbox layout using FlexContainer
 
 Now let's see how to create a Gallery like layout (as shown below) using FlexContainer.
 
-![ ](../assets/img/flex-container/flexbox-demo.jpg)
 ![ ](flex-container/flexbox-demo.jpg)
  
 Firstly, we create a flex container as the whole view and set its resize policy to fill its parent (i.e. the stage).
@@ -458,20 +343,6 @@ flexContainer.SetBackgroundColor( Dali::Color::WHITE ); // set the background co
 Dali::Stage::GetCurrent().Add( flexContainer );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-// Create the main flex container
-var flexContainer = new dali.Control("FlexContainer");
-flexContainer.parentOrigin = dali.TOP_LEFT;
-flexContainer.anchorPoint = dali.TOP_LEFT;
-flexContainer.widthResizePolicy = "FILL_TO_PARENT";
-flexContainer.heightResizePolicy = "FILL_TO_PARENT";
-flexContainer.backgroundColor = dali.COLOR_WHITE; // set the background color to be white
-
-// Add it to the stage
-dali.stage.add( flexContainer );
-~~~
  
 We want to set the flex direction of this main container to column, as we want the toolbar and the actual content to be displayed vertically.
  
@@ -482,13 +353,6 @@ We want to set the flex direction of this main container to column, as we want t
 flexContainer.SetProperty( Dali::Toolkit::FlexContainer::Property::FLEX_DIRECTION, Dali::Toolkit::FlexContainer::COLUMN );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-// Display toolbar and content vertically
-flexContainer.flexDirection = "column";
-~~~
 Now we create a flex container as the toolbar and add it to the main container. Because the flex direction in the main container is column, the toolbar will be arranged on the top of the main container.
  
 ~~~{.cpp}
@@ -504,19 +368,6 @@ toolBar.SetBackgroundColor( Dali::Color::CYAN ); // Set the background color for
 flexContainer.Add( toolBar );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-// Create the toolbar area
-var toolBar = new dali.Control("FlexContainer");
-toolBar.parentOrigin = dali.TOP_LEFT;
-toolBar.anchorPoint = dali.TOP_LEFT;
-toolBar.backgroundColor = dali.COLOR_CYAN; // Set the background color for the toolbar
-
-// Add it to the main container
-flexContainer.add(toolBar);
-~~~
 We want the buttons and title to be displayed horizontally and vertically aligned to the center of the toolbar, so we set its flex direction to row and set its alignItems property to center.
 We also want the toolbar and the actual content to share the height of the main container, so that the toolbar will occupy 10 percent of the whole vertical space and the content will occupy the rest of the vertical space.
 This can be achieved by setting the flex property.
@@ -529,14 +380,6 @@ toolBar.SetProperty( Dali::Toolkit::FlexContainer::Property::ALIGN_ITEMS, Dali::
 toolBar.SetProperty( Dali::Toolkit::FlexContainer::ChildProperty::FLEX, 0.1f ); // 10 percent of available space in the cross axis
 ~~~
 
-~~~{.js}
-// JavaScript
-
-toolBar.flexDirection = "row"; // display toolbar items horizontally
-toolBar.alignItems = "center"; // align toolbar items vertically center
-toolBar.flex = 0.1; // 10 percent of available space in the cross axis
-~~~
 Then we create another flex container as the content area to display the image, and it will be displayed in the bottom of the main container.
 We want the item inside it to be horizontally and vertically centered, so that the image will always be in the center of the content area.
 
@@ -556,22 +399,6 @@ content.SetProperty( Dali::Toolkit::FlexContainer::ChildProperty::FLEX, 0.9f );
 flexContainer.Add( content );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-// Create the content area
-var content = new dali.Control("FlexContainer");
-content.parentOrigin = dali.TOP_LEFT;
-content.anchorPoint = dali.TOP_LEFT;
-content.flexDirection = "row";
-content.alignItems = "center"; // align items vertically center
-content.justifyContent = "center"; // align items horizontally center
-content.flex = 0.9; // 90 percent of available space in the cross axis
-
-// Add it to the main container
-flexContainer.add(content);
-~~~
 Now we start to add items to the toolbar. The toolbar will have one button on the left, one button on the right, and a title always in the center (regardless of the screen size).
 To achieve that, we can simply make the title flexible so that it will automatically take all the available horizontal space left.
 We will also add some space around the items so that the layout looks nicer.
@@ -617,46 +444,6 @@ labelMap[ "text" ] = "Next";
 nextButton.SetProperty( Dali::Toolkit::Button::Property::LABEL, labelMap );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-// Add a button to the left of the toolbar
-var prevButton = new dali.Control("PushButton");
-prevButton.name = "Prev";
-prevButton.parentOrigin = dali.TOP_LEFT;
-prevButton.anchorPoint = dali.TOP_LEFT;
-prevButton.minimumSize = [100.0, 60.0]; // this is the minimum size the button should keep
-prevButton.labelText = "Prev";
-prevButton.flexMargin = [10, 10, 10, 10]; // set 10 pixel margin around the button
-
-toolBar.add( prevButton );
-
-// Add a title to the center of the toolbar
-var title = new dali.Control("TextLabel");
-title.parentOrigin = dali.TOP_LEFT;
-title.anchorPoint = dali.TOP_LEFT;
-title.widthResizePolicy = "USE_NATURAL_SIZE";
-title.heightResizePolicy = "USE_NATURAL_SIZE";
-title.horizontalAlignment = "CENTER";
-title.verticalAlignment = "CENTER";
-title.text = "Gallery";
-title.flex = 1.0; // take all the available space left apart from the two buttons
-title.flexMargin = [10, 10, 10, 10]; // set 10 pixel margin around the title
-
-toolBar.add( title );
-
-// Add a button to the right of the toolbar
-var nextButton = new dali.Control("PushButton");
-nextButton.name = "Next";
-nextButton.parentOrigin = dali.TOP_LEFT;
-nextButton.anchorPoint = dali.TOP_LEFT;
-nextButton.minimumSize = [100.0, 60.0]; // this is the minimum size the button should keep
-nextButton.labelText = "Next";
-nextButton.flexMargin = [10, 10, 10, 10]; // set 10 pixel margin around the button
-
-toolBar.add( nextButton );
-~~~
 This is really neat when running on devices with different size or changing from different orientation, because the toolbar will expand or shrink based on the available space and the title will always be in the center, therefore the layout of the toolbar will keep the same.
  
 Finally, we will add the image to the content area.
@@ -671,19 +458,7 @@ imageView.SetAnchorPoint( Dali::AnchorPoint::TOP_LEFT );
 content.Add( imageView );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-// Add an image to the center of the content area
-imageView = new dali.Control("ImageView");
-imageView.image = "image.jpg";
-imageView.parentOrigin = dali.TOP_LEFT;
-imageView.anchorPoint = dali.TOP_LEFT;
-content.add( imageView );
-~~~
 As you can see, it is easy to make flexible containers in DALi. We can use these concepts to create responsive layouts.
  
-@class _Guide_Flex_Container
 
 */
@@ -60,17 +60,6 @@ label.SetProperty( TextLabel::Property::FONT_STYLE,
 label.SetProperty( TextLabel::Property::POINT_SIZE,  12.0f );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-label.fontFamily = "FreeSerif";
-label.fontStyle = {
-                    "weight" : "bold",
-                    "slant"  : "italic"
-                  };
-label.pointSize = 12;
-~~~
-
 However the text control will fall-back to using the default font, if the requested font does not support the required scripts.
 
 ### Font Styles
@@ -122,12 +111,6 @@ in the style sheet are applied after the base section ("textlabel"), so take pre
 
   label.SetProperty( Control::Property::STYLE_NAME, "custom" );
 ~~~
-~~~{.js}
-  // JavaScript
-
-  label.styleName = "customLabel"';
-~~~
-
 ~~~{.json}
 {
   "styles":
@@ -31,7 +31,6 @@ The Stage has a 2D size, which matches the size of the application window.
 The default **unit 1 is 1 pixel with default camera and** the default coordinate system in DALi has the **origin at the top-left corner, with positive X to right, and position Y going
 downwards**.  This is intended to be convenient when laying-out 2D views.
 
-![ ](../assets/img/coordinate-system-and-stage.png)
 ![ ](coordinate-system-and-stage.png)
 
 
@@ -41,21 +40,18 @@ An actor inherits its parent's position.  The relative position between the acto
 
 1) ParentOrigin.  This Vector3 property defines a point within the parent actor's area.
 
-![ ](../assets/img/parent-origin.png)
 ![ ](parent-origin.png)
 
 The default is "top-left", which can be visualized in 2D as (0, 0), but is actually Vector3(0, 0, 0.5) in the 3D DALi world.  The actor's position is relative to this point.
 
 2) AnchorPoint.  This Vector3 property defines a point within the child actor's area.
 
-![ ](../assets/img/anchor-point.png)
 ![ ](anchor-point.png)
 
 The default is "center", which can be visualized in 2D as (0.5, 0.5), but is actually Vector3(0.5, 0.5, 0.5) in the 3D DALi world.  The actor's position is also relative to this point.
 
 3) Position.  This is the position vector between the parent-origin and anchor-point.
 
-![ ](../assets/img/actor-position.png)
 ![ ](actor-position.png)
 
 The default is (X = 0, Y = 0), so an actor placed directly without modifying the parent origin, anchor point or position would appear centred around the top left corner of its parent.
@@ -85,6 +81,5 @@ etc. as easily as a single object.
 Actors are effectively nodes that receive input (touch events) and act as a
 container for draw-able elements (which are also nodes) and other actors.
 
-@class _Guide_DALi_Fundamentals
 
 */
@@ -10,7 +10,6 @@
  + **DALi Platform Abstraction:** Resource loading & decoding in multiple threads (part of dali-adaptor)
  + **DALi Toolkit:** Reusable UI Controls, Effects & Scripting Support
 
-![ ](../assets/img/architecture.png)
 ![ ](architecture.png)
 
 ## Main, Update & Render Threads {#dali-threads}
@@ -22,7 +21,6 @@ DALi uses a multithreaded architecture in order to provide the best performance
  + **Render Thread:** OpenGL drawing, texture and geometry uploading etc.
  + **Resource Threads:** Loads images and decodes into bitmaps etc.
 
-![ ](../assets/img/dali-threads.png)
 ![ ](dali-threads.png)
 
 */
@@ -5,7 +5,6 @@
  Layers provide a mechanism for overlaying groups of actors on top of each other.
  Layers can also clip their contents to exclude any content outside a user defined area.
   
- ![ ](../assets/img/layer/layers.png)
  ![ ](layers.png)
   
  When a layer is added to the stage it is assigned a unique depth value. By default the stage has a root layer with a depth value of 0.
 **Note: Layers work independently of the actor hierarchy.**
 They can be positioned anywhere in the actor tree, but their draw order is always defined by their layer.getDepth() value.
   
-~~~{.js}
-// JavaScript Example of adding an actor to the root layer
-
-//  using stage.add() will automatically add actor to the root layer
-dali.stage.add( myActor );
-
-// Or you can explicitly add actor to the root layer.
-var rootLayer = dali.stage.getRootLayer();
-rootLayer.add( myActor );  // adds an actor to the root layer
-
-// rootLayer.getDepth() == 0
-
-~~~
-  
   
 ~~~{.cpp}
 // C++ example of adding an actor to the root layer
@@ -51,40 +36,10 @@ rootLayer.add( myActor );  // adds an actor to the root layer
 Example To create two new layers on top of the root layer.
   
 
-~~~{.js}
-// JavaScript 
-
-var layer1 = new dali.Layer();
-var layer2 = new dali.Layer();
-
-// the initially depth order of each layer, depends on the order
-// it is added to the stage.
-
-dali.stage.add( layer1 );  // will be drawn on top of root layer
-dali.stage.add( layer2 );  // will be drawn on top of layer 1
-
-dali.stage.add( myActor1);
-layer1.add( myActor2);
-layer2.add( myActor3);
-
-// dali.stage.getRootLayer().getDepth = 0  myActor1 drawn first ( on bottom )
-// layer1.getDepth() == 1                  myActor2 drawn second ( in middle )
-// layer2.getDepth() == 2                  myActor3 drawn last ( on top )
-~~~
-
 ### Layer clipping
 
 Clips the contents of the layer to a rectangle.
 
-~~~{.js}
-// JavaScript
-
-layer1.anchorPoint = dali.CENTER;
-layer1.parentOrigin = dali.CENTER;
-layer1.clippingEnable = true;
-layer1.clippingBox = [20,20,100,100];  // X, Y, Width, Height
-~~~
-
 ~~~{.cpp}
 // C++
 
@@ -121,11 +76,6 @@ Layers have two behaviour modes:
 
 ### Layer_2D
 
-~~~{.js}
-// JavaScript
-layer.behaviour = "LAYER_2D";
-~~~
-
 ~~~{.cpp}
 // C++
 layer.SetBehavior( Layer::LAYER_2D );
@@ -153,7 +103,6 @@ We have two layers below. Everything in the root layer is drawn first.
 If we did dali.stage.getRootLayer().raiseToTop(), then the root layer would be drawn last.
 
   
-![ ](../assets/img/layer/layer2d.png)
 ![ ](layer2d.png)
   
 
@@ -197,11 +146,6 @@ For example if we want the render draw order to be 8, 7, 6, with 6 being drawn l
 
 ### Layer_3D
 
-~~~{.js}
-// JavaScript
-layer.behaviour = "LAYER_3D";
-~~~
-
 ~~~{.cpp}
 // C++
 layer.SetBehavior( Layer::LAYER_3D );
@@ -213,14 +157,12 @@ Opaque renderers are drawn first and write to the depth buffer.
   
 Then transparent renderers are drawn with depth test enabled but depth write switched off.
   
- ![ ](../assets/img/layer/layers3d.png)
  ![ ](layers3d.png)
 
   
 Transparent renderers are drawn in order of distance
 from the camera ( painter's algorithm ).
 
- ![ ](../assets/img/layer/transSort.png)
  ![ ](transSort.png)
   
 
@@ -238,32 +180,6 @@ The draw order of the actors inside the tree marked OVERLAY_2D, the draw order i
 Depth testing is not used.
   
 
-Example:
-
-~~~{.js}
-// JavaScript
-var layer = new dali.Layer();
-
-layer.behaviour = "LAYER_3D"
-
-dali.stage.add( layer );
-
-layer.add( myActor1 );
-layer.add( myActor2 );
-
-myActor3.drawMode = "OVERLAY_2D";
-
-layer.add( myActor3 );   // actor 3 is drawn on top of actor 1 and 2 as it's in the OVERLAY.
-
-myActor3.add( myActor4 ); // actor 4 is drawn on top of actor 3, which is drawn on top of actor 1 and 2.
-
-myActor3.add( myActor5);  // the depth index of actor 4 and 5 renderers will determine which is drawn first
-~~~
-
-  
-
-
-
 ### Layer Actor Specific Properties
 
 | Name                   |    Type    | Writable     | Animatable|
@@ -272,7 +188,6 @@ myActor3.add( myActor5);  // the depth index of actor 4 and 5 renderers will det
 | clippingBox            | ARRAY [0,0,400,600]) | 0 | X|
 | behaviour              | STRING ( "LAYER_2D" or "LAYER_3D") | 0 | X|
 
-  @class Layer
   @extends Actor
 
 */
old mode 100755 (executable)
new mode 100644 (file)
similarity index 87%
rename from docs/content/shared-javascript-and-cpp-documentation/markup-style.md
rename to docs/content/programming-guide/markup-style.md
index 5697959..944a670
@@ -16,15 +16,6 @@ field.SetProperty( TextField::Property::ENABLE_MARKUP, true );
 Stage::GetCurrent().Add( field );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-var field = new dali.TextField();
-field.enableMarkup = true;
-
-dali.stage.add( field );
-~~~
-
 Note the mark-up processor doesn't check the correctness of the mark-up string. This may
 cause the text to be badly rendered.
 
@@ -63,45 +54,21 @@ Examples below are equivalent, render the text in red. Second example codes the
 field.SetProperty( TextLabel::Property::TEXT, "<color value='red'>Red Text</color>" ); // Color coded with a text constant.
 ~~~
 
-~~~{.js}
-// JavaScript
-
-field.text = "<color value='red'>Red Text</color>"; // Color coded with a text constant.
-~~~
-
 ~~~{.cpp}
 // C++
 field.SetProperty( TextLabel::Property::TEXT, "<color value='0xFFFF0000'>Red Text</color>" ); // Color packed inside an ARGB hexadecimal value.
 ~~~
 
-~~~{.js}
-// JavaScript
-
-field.text = "<color value='0xFFFF0000'>Red Text</color>"; // Color packed inside an ARGB hexadecimal value.
-~~~
-
 ~~~{.cpp}
 // C++
 field.SetProperty( TextLabel::Property::TEXT, "<color value='#F00'>Red Text</color>" ); // Color packed with the web color format (3 characters).
 ~~~
 
-~~~{.js}
-// JavaScript
-
-field.text = "<color value='#F00'>Red Text</color>"; // Color packed with the web color format (3 characters).
-~~~
-
 ~~~{.cpp}
 // C++
 field.SetProperty( TextLabel::Property::TEXT, "<color value='#FF0000'>Red Text</color>" ); // Color packed with the web color format (6 characters).
 ~~~
 
-~~~{.js}
-// JavaScript
-
-field.text = "<color value='#FF0000'>Red Text</color>"; // Color packed with the web color format (6 characters).
-~~~
-
 ## \<font\>
 
 Sets the font values of the characters inside the tag.
@@ -120,12 +87,6 @@ See the [Font Selection](@ref font-selection) to have a view of the possible val
 field.SetProperty( TextLabel::Property::TEXT, "<font family='SamsungSans' weight='bold'>Hello world</font>" );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-field.text = "<font family='SamsungSans' weight='bold'>Hello world</font>";
-~~~
-
 ## XHTML ENTITIES
 
 Single characters can be embedded into text using character entity references. These references have a numeric value as well as a named value.
@@ -8,8 +8,6 @@ Touch events are received via signals.
 
 For C++ API see Dali::Actor::TouchSignal() and Dali::Actor::HoveredSignal() for more details.
 
-For JavaScript use actor.connect( "touch", myCallback ) and actor.connect("hovered", myCallback );
-
 ### Hit Testing Rules Summary:
 
  - An actor is only hittable if the actor's touch signal has a connection.
@@ -143,6 +141,5 @@ Hit Priority of above Actor tree (all overlays): 1 - Lowest. 6 - Highest.
    - If the consumed actor on touch-down is not the same as the consumed actor on touch-up, then
      touch signals are also emitted from the touch-down actor with an "Interrupted" state.
 
-@class MultiTouch
 
 */
@@ -26,7 +26,6 @@ Update produces data - **Writes** final object positions to a buffer
   
 Render consumes data - **Reads** object positions from a buffer and draws with OpenGL
 
-![ ](../assets/img/performance/update-render.png)
 ![ ](update-render.png)
 
   
@@ -252,7 +251,6 @@ $ cat /sys/kernel/debug/tracing/trace
   <...>-3329  [001] 785155.264508: tracing_mark_write: SPI_EV_DALI_RENDER_START
   <...>-3329  [001] 785155.265006: tracing_mark_write: SPI_EV_DALI_RENDER_END
 ~~~
-@class _Guide_Performance_Profiling
 */
 
 
 Actor::SetDrawMode( DrawMode::OVERLAY_2D ); // C++
 ~~~
 
-~~~{.js}
-// JavaScript
-// In this mode depth testing is turned off and order is determined by the hierarchy (depth-first search order).
-// Not always recommended if there is going to be a lot of overdraw ( if lots of actors are on top of each other)
-
-actor.drawMode = dali.DRAW_MODE_OVERLAY_2D;
-~~~
-  - Use TextureAtlases ( reduces state changes in the GPU)
+  - Use TextureAtlases (reduces state changes in the GPU)
   - Use compressed textures
   - Use lower quality textures, e.g. smaller, lower number of bits per pixel
-  - Use Dali::NinePatchImage  where possible.
   - Avoid using too many textures which contain alpha and require blending
   - Avoid using too many Dali::Layer with depth testing enabled. Otherwise the layer has to clear the depth buffer.
   - Optimize any shaders used. Pixel shaders should be kept as lean as possible.
 
 
-@class _Guide_Performance_Tips
 
 */
 
@@ -5,7 +5,7 @@
 
 # Popup {#popup}
   
-![ ](../assets/img/popup/popup-example.png) ![ ](./popup-example.png)
+![ ](./popup-example.png)
 
 ## Description {#popupdescription}
   
@@ -33,13 +33,13 @@ Within the Popup there are three main fields:
 - Content
 - Footer
   
-![ ](../assets/img/popup/popup-fields.png) ![ ](./popup-fields.png)
+![ ](./popup-fields.png)
   
 Each field can contain any Actor.
   
 Note: All actor properties are optional, allowing any combination of content areas.
 Example: Image only popup (using the content field):
-![ ](../assets/img/popup/popup-image-content.png) ![ ](./popup-image-content.png)
+![ ](./popup-image-content.png)
   
 ### Example content: {#popupfieldexample}
   
@@ -105,7 +105,7 @@ Popup types can be created with the TypeRegistry (as they are not separate class
 
 ### Example: {#popuptoastexample}
   
-![ ](../assets/img/popup/popup-toast.png) ![ ](./popup-toast.png)
+![ ](./popup-toast.png)
 
 Here is the code to produce the above example:
   
@@ -204,7 +204,7 @@ Connect to the following respective signals within ConfirmationPopup:
   
 The ConfirmationPopup will dynamically make the connection between the signalling control, and your signal handler.
   
-This allows connection of signals within both C++, JSON and JavaScript APIs.
+This allows connection of signals within both C++ APIs and JSON.
 If more manual control or customizable layout is needed, then it is recommended to use the Popup widget directly for full control.
   
 The JSON code example at the bottom of this document uses the ConfirmationPopup to allow signal connection from within the JSON description.
@@ -387,6 +387,5 @@ This time without an image around the buttons. This could be added in the same w
 ~~~
   
 
-@class _Guide_Popup
 */
 
@@ -24,29 +24,6 @@ bool OnPressed( Dali::Actor, const TouchData& touch )
 actor.TouchSignal().Connect( &OnPressed );
 ~~~
 
-*/
-
-## JavaScript {#java-script-support}
-
-~~~{.js}
-var actor = new dali.Actor();
-actor.parentOrigin = dali.CENTER;
-actor.anchorPoint = dali.CENTER;
-dali.stage.add( actor );
-...
-function onPressed( actor, touch )
-{
-  var animOptions = { alpha: "bounce", delay: 0, duration: 15 };
-  var anim = new dali.Animation();
-  anim.animateTo( actor, "position", [ 200, -100, 0 ], animOptions );
-  anim.play();
-  return true; // consume the touch event
-}
-...
-actor.connect( "touch", onPressed );
-
-~~~
-
 ## JSON {#json-support}
 
 ~~~{.json}
@@ -81,4 +58,4 @@ actor.connect( "touch", onPressed );
     }
   ]
 }
-~~~
\ No newline at end of file
+~~~
index a1a95e9..7f5f327 100644 (file)
@@ -217,31 +217,6 @@ Property lookup via index should always be used unless the indicies cannot be kn
 
 <br>
 <hr>
-@section property-use-example-js Property use in JavaScript
-
-Note that constraints cannot be used within JavaScript, so below is a simple example that sets one of the default properties; scale:
-
-@code
-var imageView = new dali.Control( "ImageView" );
-
-// by default an actor is anchored to the top-left of it's parent actor
-// change it to the middle
-imageView.parentOrigin = dali.CENTER;
-
-// Set an image view property
-imageView.image = {
-  "visualType" : "IMAGE",
-  "url": "images/icon-0.png",
-  "desiredWidth" : 100,
-  "desiredHeight" : 100
-};
-
-// add to the stage
-dali.stage.add( imageView );
-@endcode
-
-<br>
-<hr>
 @section property-use-example-json Property use in JSON
 
 This is a basic example of a button defined in JSON by setting the default properties.
@@ -29,7 +29,6 @@ Let's say we are writing a home-screen application for a smart phone.
 Here we have a large, square image that we want to set as the wallpaper on a tall and narrow phone screen.
 We want to fill the screen without distorting the image or having black borders, and wasting as few pixels from the source image as possible.
   
-![ ](../assets/img/image-scaling/example-scale-to-fill-problem.jpg)
 ![ ](example-scale-to-fill-problem.jpg)
   
 DALi provides the concept of a `FittingMode` to specify how a source image is mapped into a target rectangle, and the one we need here is `FittingMode::SCALE_TO_FILL` as it guarantees to cover all of the pixels of the target dimensions specified.
@@ -38,7 +37,7 @@ Since our image is to be loaded once and reused, we use `SamplingMode::BOX_THEN_
   
 In this case, `SCALE_TO_FILL` will perform this sequence of operations:
   
-![ ](../assets/img/image-scaling/example-scale-to-fill-sequence.jpg) ![ ](example-scale-to-fill-sequence.jpg)
+![ ](example-scale-to-fill-sequence.jpg)
   
 We can pass the stage dimensions to the `ResourceImage` creator function as the desired rectangle and ask it to map the image to the screen as shown here:
   
@@ -50,22 +49,11 @@ We can pass the stage dimensions to the `ResourceImage` creator function as the
   Dali::FittingMode::SCALE_TO_FILL,
   Dali::SamplingMode::BOX_THEN_LINEAR );
 ~~~
-~~~{.js}
-// JavaScript
-// First get stage dimensions into stageX and stageY ...
-var image = new dali.ResourceImage( {
-  url: "gallery-large-12.jpg",
-  width: stageX,
-  height: stageY,
-  fittingMode: "SCALE_TO_FILL",
-  samplingMode: "BOX_THEN_LINEAR"
-});
-~~~
   
 
 ## Workflow {#resourceimagescaling-workflow}
   
-![ ](../assets/img/image-scaling/workflow-main.png) ![ ](workflow-main.png)
+![ ](workflow-main.png)
   
 The workflow for achieving the final scaled image is (in order):
   
@@ -78,7 +66,7 @@ The workflow for achieving the final scaled image is (in order):
 
 ### Determine Target Dimensions {#resourceimagescaling-targetdimensions}
   
-![ ](../assets/img/image-scaling/workflow-1.png) ![ ](workflow-1.png)
+![ ](workflow-1.png)
   
 An application has several options for specifying the target rectangle for the image to be fitted to.
 The application may request dimensions through `ResourceImage::New()`:
@@ -90,7 +78,7 @@ The application may request dimensions through `ResourceImage::New()`:
      
   - `Width AND Height both specified` The requested dimensions pass straight through to become the target for fitting.
   
-![ ](../assets/img/image-scaling/scaling-fitting-target-dimensions.png) ![ ](scaling-fitting-target-dimensions.png)
+![ ](scaling-fitting-target-dimensions.png)
 
 The result of this process is an `(x, y)` target size to fit the image in the next step.
   
@@ -98,7 +86,7 @@ The result of this process is an `(x, y)` target size to fit the image in the ne
 
 ### Target Image Dimensions {#resourceimagescaling-targetimagedimensions}
 
-![ ](../assets/img/image-scaling/workflow-2.png) ![ ](workflow-2.png)
+![ ](workflow-2.png)
   
 #### Fitting Mode {#resourceimagescaling-fittingmode}
   
@@ -116,7 +104,7 @@ The operation of each of these modes is as follows:
 | `FIT_HEIGHT` | Centers the image on the target box and uniformly scales it so that it matches the target in height without regard for the target width. |
   
 
-![ ](../assets/img/image-scaling/fitting-mode-options.png) ![ ](fitting-mode-options.png)
+![ ](fitting-mode-options.png)
   
 <sub> **Fitting modes**: *The top row shows the effect of each mode when a tall target rectangle is applied to a square image. The middle row applies a wide target to a square raw image. The bottom row uses a target with the same aspect ratio as the raw image. This example shows that `SCALE_TO_FILL` is the only option for which the dimensions of the fitted image result fill all the area of the target. Others would be letterboxed with borders. `SHRINK_TO_FIT` is always equal to one of `FIT_WIDTH` or `FIT_HEIGHT`: in each case it is the minimum of them. As a special case, where the aspect ratio of raw image and target match, all fitting modes generate an exact match final image and are equivalent to each other.* </sub>
   
@@ -127,7 +115,7 @@ Note: The image is scaled to the same aspect and shrunk to fit depending on fitt
 
 ### Scaling {#resourceimagescaling-scaling}
   
-![ ](../assets/img/image-scaling/workflow-3.png) ![ ](workflow-3.png)
+![ ](workflow-3.png)
   
 To perform the scaling stage, the source image is scaled to a (factor of) the target image size using the specified Sampling Mode/
   
@@ -149,9 +137,9 @@ Here are all the modes applied to scaling-down a `(640,720)` line art and text J
   
 |  |  | |
 | ---- | ---- | --- |
-| ![ ](../assets/img/image-scaling/sampling_modes_no_filter.png) ![ ](sampling_modes_no_filter.png) | ![ ](../assets/img/image-scaling/sampling_modes_nearest.png) ![ ](sampling_modes_nearest.png) | ![ ](../assets/img/image-scaling/sampling_modes_linear.png) ![ ](sampling_modes_linear.png) |
+| ![ ](sampling_modes_no_filter.png) | ![ ](sampling_modes_nearest.png) | ![ ](sampling_modes_linear.png) |
 | **NO_FILTER** | **NEAREST** | **LINEAR** |
-| ![ ](../assets/img/image-scaling/sampling_modes_box.png) ![ ](sampling_modes_box.png) | ![ ](../assets/img/image-scaling/sampling_modes_box_then_nearest.png) ![ ](sampling_modes_box_then_nearest.png) | ![ ](../assets/img/image-scaling/sampling_modes_box_then_linear.png) ![ ](sampling_modes_box_then_linear.png) |
+| ![ ](sampling_modes_box.png) | ![ ](sampling_modes_box_then_nearest.png) | ![ ](sampling_modes_box_then_linear.png) |
 | **BOX** | **BOX_THEN_NEAREST** | **BOX_THEN_LINEAR** |
   
 These are screenshots, showing how the images are rendered in a DALi demo.
@@ -162,7 +150,7 @@ The best way to get a feel for the best sampling mode for different image types
 
 ### Crop or Add Borders {#resourceimagescaling-croporaddborders}
   
-![ ](../assets/img/image-scaling/workflow-4.png) ![ ](workflow-4.png)
+![ ](workflow-4.png)
   
 Lastly, the image data will be cropped, or have borders added automatically as necessary.
 This is done to ensure the image correctly fits the aspect of the target window, whilst maintaining the aspect of the source image.
@@ -190,11 +178,6 @@ If we have a `(320, 240)` image called "flower.jpg", we use these options in cod
 ResourceImage image1 = ResourceImage::New( "flower.png" );
 ResourceImage image2 = ResourceImage::New( "flower.png", ImageDimensions( 0, 0 ) );
 ~~~
-~~~{.js}
-// JavaScript
-var image1 = new dali.ResourceImage( { url:"flower.png" } );
-var image2 = new dali.ResourceImage( { url:"flower.png", width:0, height:0 } );
-~~~
   
 
 **Case 2**: In these loads, the target dimensions will be `(160, 120)` as the zero dimension is derived from the aspect ratio of the raw image.
@@ -203,11 +186,6 @@ var image2 = new dali.ResourceImage( { url:"flower.png", width:0, height:0 } );
 ResourceImage image1 = ResourceImage::New( "flower.png", ImageDimensions( 160, 0 ) );
 ResourceImage image2 = ResourceImage::New( "flower.png", ImageDimensions( 0, 120 ) );
 ~~~
-~~~{.js}
-// JavaScript
-var image1 = new dali.ResourceImage( { url:"flower.png", width:160, height:0 } );
-var image2 = new dali.ResourceImage( { url:"flower.png", width:0, height:120 } );
-~~~
   
 
 **Case 3**: In this load, the target dimensions will be `(111, 233)`.
@@ -215,10 +193,6 @@ var image2 = new dali.ResourceImage( { url:"flower.png", width:0, height:120 } )
 // C++
 ResourceImage image = ResourceImage::New( "flower.png", ImageDimensions( 111, 233 ) );
 ~~~
-~~~{.js}
-// JavaScript
-var image = new dali.ResourceImage( { url:"flower.png", width:111, height:233 } );
-~~~
   
 
 ### Fitting an image's dimensions to the target box {#resourceimagescaling-codeexamplesfittingmodes}
@@ -233,12 +207,6 @@ EG:
 ResourceImage image = ResourceImage::New( "flower.png", ImageDimensions( 32, 24 ) );
 // Image will be loaded at (32, 24), regardless of fitting mode.
 ~~~
-~~~{.js}
-// JavaScript
-// Image on 'disk' is 320x240.
-var image = new dali.ResourceImage( { url:"flower.png", width:32, height:24});
-// Image will be loaded at (32, 24), regardless of fitting mode.
-~~~
   
 
 ### Passing a Zero Dimension {#resourceimagescalingzerodimensions}
@@ -262,21 +230,6 @@ ResourceImage image = ResourceImage::New("flower.png", ImageDimensions(x, 0));
 // FIT_HEIGHT:
 ResourceImage image = ResourceImage::New("flower.png", ImageDimensions(0, y));
 ~~~
-~~~{.js}
-// JavaScript
-// FIT_WIDTH:
-var image = new dali.ResourceImage( {
-  url: "flower.png",
-  width: x,
-  height: 0
-});
-// FIT_HEIGHT:
-var image = new dali.ResourceImage( {
-  url: "flower.png",
-  width: 0,
-  height: y
-});
-~~~
   
 Note:
 - If both values are specified as 0, both dimensions are taken from the source image.
@@ -301,28 +254,6 @@ ResourceImage image3 = ResourceImage::New( "flower.png",
 ResourceImage image4 = ResourceImage::New( "flower.png",
     ImageDimensions( 240, 240 ), FittingMode::SCALE_TO_FILL, SamplingMode::BOX_THEN_LINEAR );
 ~~~
-~~~{.js}
-// JavaScript
-var image1 = new dali.ResourceImage( {
-  url:"flower.png", width:240, height:240,
-  fittingMode:"SCALE_TO_FILL", samplingMode:"NEAREST"
-} );
-
-var image2 = new dali.ResourceImage( {
-  url:"flower.png", width:240, height:240,
-  fittingMode:"SCALE_TO_FILL", samplingMode:"NO_FILTER"
-} );
-
-var image3 = new dali.ResourceImage( {
-  url:"flower.png", width:240, height:240,
-  fittingMode:"SCALE_TO_FILL", samplingMode:"BOX"
-} );
-
-var image4 = new dali.ResourceImage( {
-  url:"flower.png", width:240, height:240,
-  fittingMode:"SCALE_TO_FILL", samplingMode:"BOX_THEN_LINEAR"
-} );
-~~~
   
   
 
@@ -347,7 +278,7 @@ Search for `"ImageDimensions"` in the dali-demo project to see it used.
 There is also a specific demo to show all of the fitting and scaling modes.
 which lives in the demo project at `examples/image-scaling-and-filtering`.
   
-![ ](../assets/img/image-scaling/demo-fitting-sampling.png) ![ ](./demo-fitting-sampling.png)
+![ ](./demo-fitting-sampling.png)
   
 Touch the arrows in the top corners to changes image.
 Drag the resize handle in the corner of the image to change the requested size and trigger an immediate image reload.
@@ -357,7 +288,7 @@ This demo does not take any of the special measures [described here](#resourceim
 A second specific demo shows the effect of a filter mode on a single image loaded into various requested rectangles side by side.
 It can be found under `examples/image-scaling-irregular-grid`.
   
-![ ](../assets/img/image-scaling/demo-sampling-modes.jpg) ![ ](./demo-sampling-modes.jpg)
+![ ](./demo-sampling-modes.jpg)
   
 Touch the button at top-left to change image.
 The button at top-right changes sampling mode.
@@ -415,5 +346,4 @@ The application can get a scaled resource image rendered correctly to screen wit
   
 
 
-@class _Guide_Resource_Image_Scaling
 */
@@ -53,5 +53,4 @@ A list of files is displayed in the main view, with different color codes repres
 |CPUGPU | resource has been uploaded to a GL texture, but still present in CPU memory as well.|
 |DISCARDED | resource has been discarded, memory freed up |
 
-@class _Guide_ResourceTracking
  */
diff --git a/docs/content/programming-guide/script-hello.md b/docs/content/programming-guide/script-hello.md
new file mode 100644 (file)
index 0000000..f1fc87e
--- /dev/null
@@ -0,0 +1,35 @@
+<!--
+/**-->
+
+ # Hello World - JSON layout{#script-hello}
+
+ The following JSON code is the minimum required to put the sentence "Hello World" on the screen.
+
+~~~{.json}
+{
+ // a tree of actors
+ "stage": [{
+   "name": "text-label",
+   "type": "TextLabel",
+   "text": "Hello World",
+   "parentOrigin": "CENTER"
+ }]
+}
+~~~
+
+ The following code loads the JSON file
+
+~~~{.cpp}
+ // C++
+ Builder builder = Builder::New();
+
+ std::string json_data(ReadFile("layout.json"));
+
+ builder.LoadFromString(json_data);
+
+ builder.AddActors( Stage::GetCurrent().GetRootLayer() );
+
+ ~~~
+
+
+*/
@@ -144,14 +144,6 @@ where the first and last positions are braces.
 The template section supports the creation of actor instances. The
 template name can be used in code to create an actor tree.
 
-~~~{.js}
-// JavaScript
-
-var builder = new dali.Builder();
-builder.loadFromFile( "my-app.json");
-var userActorTree = builder.create( { template:"basic-text"} );
-~~~
-
 ~~~{.cpp}
 // C++
 
@@ -210,13 +202,6 @@ applied to an actor or actor tree.
 Builder.ApplyStyle("light-theme", myActor);
 ~~~
 
-~~~{.js}
-// JavaScript
-
-builder.applyStyle("light-theme", myActor);
-~~~
-
-
 The styles can also be applied as an animation.
 
 ~~~{.cpp}
@@ -436,12 +421,6 @@ stage = Dali.Stage.GetCurrent();
 builder.AddActors( stage.GetRootLayer()); // Add actors to the stage root layer
 ~~~
 
-~~~{.js}
-// JavaScript
-
-builder.addActors( dali.stage.getRootLayer() );
-~~~
-
 ~~~
     {                                    \\
     "stage":                             \\  Stage Section Number
@@ -474,5 +453,4 @@ UI Control Specification".
 Please refer to the above document for further information about specific
 controls.
 
-@class _Guide_JSON_Specification
 */
@@ -3,35 +3,23 @@
 
 # Scripting Overview  {#scriptoverview}
 
-DALi has:
-- JSON to support:
- - layouting
- - theme / styling
- - templated actor/control creation
- - basic actions
- - DALi GUI builder generates JSON files. Allows UI designers to create / modify the application look and feel.
-
-- JavaScript to support:
- - Rapid Application Development
- - Hybrid C++/JavaScript applications
- - Leverage third party JavaScript modules (backbone.js etc)
+DALi has JSON to support:
+- layouting
+- theme / styling
+- templated actor/control creation
+- basic actions
+- DALi GUI builder generates JSON files. Allows UI designers to create / modify the application look and feel.
 
 JSON support is built in to DALi.
 
-JavaScript support is via a plugin held in DALi Toolkit, which builds automatically if Google's V8 engine is installed. 
-The V8 version required by DALi can be built and installed using dali-core/scripts/dali_env script.
-
-Files can be loaded inside any DALi application, or from command line using the launcher ( part of dali-demo).
+Files can be loaded inside any DALi application, or from command line using the launcher (part of dali-demo).
 
 ~~~{.cpp}
-scripting.example hello-world.json hello-world.js
+scripting.example hello-world.json
 ~~~
 
-We currently have JSON and JavaScript example files held in dali-demo/resources/scripts
+We currently have JSON example files held in dali-demo/resources/scripts
   
-![ ](../assets/img/javascript-wrapping-guide/scripting-overview.png)
-![ ](scripting-overview.png)
-
 # JSON
 
 JSON file contains different sections:
@@ -83,18 +71,6 @@ JSON file contains different sections:
 
 ~~~
 
-#### JavaScript example
-
-~~~{.js}
-
-var builder = new dali.Builder();
-
-builder.loadFromFile( "my-app.json");
-
-var userActorTree = builder.create( { template:"users"} );
-
-~~~
-
 #### C++ example
 
 ~~~{.cpp}
@@ -136,12 +112,6 @@ Actor userActorTree = builder.Create("users");
   }
 ~~~
 
-#### JavaScript example
-
-~~~{.js}
-builder.applyStyle( "live-tv-focus", tvIcon );
-~~~
-
 #### C++ example
 
 ~~~{.cpp}
@@ -182,13 +152,7 @@ builder.ApplyStyle( "live-tv-focus", tvIcon );
     },
 ~~~
 
-#### JavaScript example
-
-~~~{.js}
-// JavaScript
-
-var anim = builder.createAnimation( { animation:"animate-show", actor: myActor } );
-~~~
+#### C++ example
 
 ~~~{.cpp}
 // C+++
@@ -233,13 +197,6 @@ Animation anim = builder.createAnimation( "animate-show", propertyMap );
             ....
 ~~~
 
-#### JavaScript example
-
-~~~{.js}
-// add all actors under stage section to the root layer
-builder.addActors( dali.stage.getRootLayer() );
-~~~
-
 #### C++ example
 
 ~~~{.cpp}
@@ -247,19 +204,5 @@ builder.addActors( dali.stage.getRootLayer() );
 builder.AddActors( Stage::GetCurrent().GetRootLayer() );
 ~~~
 
-# JavaScript
-
-For the JavaScript API please build dali-toolkit with YUIDOC installed. This will generate the documentation.
-See dali-toolkit/plugins/dali-script-v8/docs/README.txt
-
-To execute JavaScript from C++
-
-~~~{.cpp}
-script = Toolkit::Script::New();
-
-script.ExecuteFile( scriptFileName );
-~~~
-
-@class _Guide_JSON_and_JavaScript_overview
 
 */
@@ -3,7 +3,6 @@
 
 # Stagehand Visual Debugger for DALi {#stagehand}
 
-![ ](../assets/img/stage-hand/blocks.png)
 ![ ](blocks.png)
 
 ## Introduction
@@ -33,7 +32,6 @@ Install both files on the website. Start with the QT dependencies first.
 
 Stagehand connects to DALi via the network using a TCP/IP connection.
   
-![ ](../assets/img/stage-hand/inner-workings.png)
 ![ ](inner-workings.png)
 
 ## Connecting Stagehand to your DALi application
@@ -71,7 +69,6 @@ $ su
 $ netstat -tlpn
 ~~~
 
-![ ](../assets/img/stage-hand/netstat.png)
 ![ ](netstat.png)
 
 
@@ -79,7 +76,6 @@ $ netstat -tlpn
 
 Click the settings icons below
   
-![ ](../assets/img/stage-hand/stagehand-settings.png)
 ![ ](stagehand-settings.png)
 
 
@@ -87,46 +83,38 @@ Click the settings icons below
 
 Here we are connecting to a device running SDB
   
-![ ](../assets/img/stage-hand/stagehand-tizen-connection.png)
 ![ ](stagehand-tizen-connection.png)
 
 ### Connect to DALi running on Desktop ( Ubuntu )
   
-![ ](../assets/img/stage-hand/stagehand-ubuntu-connection.png)
 ![ ](stagehand-ubuntu-connection.png)
 
 ## Using Stagehand
 
 Click Refresh to load the current scene from the device.
   
-![ ](../assets/img/stage-hand/stagehand-refesh.png)
 ![ ](stagehand-refesh.png)
 
 Click screen shot to get overlay current screen
   
-![ ](../assets/img/stage-hand/stagehand-screenshot.png)
 ![ ](stagehand-screenshot.png)
 
 To cycle through the actor hierarchy, keep clicking the same spot. Alternatively, select using the actor tree.
 
   
-![ ](../assets/img/stage-hand/stagehand-mainscreen.png)
 ![ ](stagehand-mainscreen.png)
 
 
 Click the save icon to save the scene
   
-![ ](../assets/img/stage-hand/stagehand-save.png)
 ![ ](stagehand-save.png)
 
 Zooming in and out
   
-![ ](../assets/img/stage-hand/stagehand-zoom.png)
 ![ ](stagehand-zoom.png)
 
 Modifying the scene
   
-![ ](../assets/img/stage-hand/stagehand-modify.png)
 ![ ](stagehand-modify.png)
 
 ## Performance monitoring
@@ -139,7 +127,6 @@ Set perfmode=on
 
 Restart application. Click performance
   
-![ ](../assets/img/stage-hand/stagehand-performance.png)
 ![ ](stagehand-performance.png)
 
 ## Trouble shooting
@@ -150,7 +137,6 @@ In the example below we are connecting to a Tizen device using SDB port forwardi
   
 After running nc localhost 3031 we type help
   
-![ ](../assets/img/stage-hand/stagehand-netcat.png)
 ![ ](stagehand-netcat.png)
 
 
@@ -179,4 +165,3 @@ Make sure  DALi application is run using launch_app:
 launch_app [APP_ID] __AUL_SDK__ DEBUG __DLP_DEBUG_ARG__ :10003
 ~~~
 
-@class _Guide_Visual_Debugger
@@ -11,7 +11,6 @@ It will also scroll text that is smaller than the control and ensure the same bi
 If the number of loops (repetitions) is not set then once triggered to start it will scroll until requested to stop.
 If loop count is set to 3 for example it will scroll the text 3 times.
 
-![ ](../assets/img/text-controls/AutoScroll.gif)
 ![ ](AutoScroll.gif)
 
 ### Usage
@@ -58,6 +57,5 @@ If the text is multi-lined it will scroll upwards. ( Not supported at 1.1.35 )
 
 The properties used by TextLabel for Auto Scrolling are listed [here](@ref TextLabelProperties)
 
-@class TextLabel_Scrolling
 
 */
@@ -19,14 +19,6 @@ TextEditor editor = TextEditor::New();
 Stage::GetCurrent().Add( editor );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-var editor = new dali.TextEditor();
-
-dali.stage.add( editor );
-~~~
-
 When the TextEditor is tapped, it will automatically gain the keyboard focus. Key events will then result in text being inserted.
 After text has been entered, it can be retrieved from the TEXT property.
 
@@ -37,12 +29,6 @@ Property::Value editorText = editor.GetProperty( TextEditor::Property::TEXT );
 std::cout << "Received text: " << editorText.Get< std::string >() << std::endl;
 ~~~
 
-~~~{.js}
-// JavaScript
-
-console.log( editor.text );
-~~~
-
 ### Font Selection
 
 By default TextEditor will automatically select a suitable font from the platform. However, a different font could be selected. See the [Font Selection](@ref font-selection) section for more details.
@@ -66,12 +52,6 @@ If there is enough room, then the text can be aligned horizontally to the beginn
 editor.SetProperty( TextEditor::Property::HORIZONTAL_ALIGNMENT, "BEGIN" ); // "CENTER" or "END"
 ~~~
 
-~~~{.js}
-// JavaScript
-
-editor.HorizontalAlignment = "BEGIN"; // "CENTER" or "END"
-~~~
-
 ### Copy and Paste  (Selection)
 
 Text can be selected by a long press or double tapping it. See the [Copy and Paste](@ref copy-n-paste) section for more details.
@@ -87,15 +67,9 @@ To change the color of the text, the recommended way is to use the TEXT_COLOR pr
 editor.SetProperty( TextEditor::Property::TEXT_COLOR, Color::CYAN );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-editor.textColor = dali.COLOR_CYAN;
-~~~
-
 ### TextEditor Properties
 
- Name (JavaScript)                 |  Name (C++)                          |  Type        | Writable     | Animatable
+ Name (JSON)                       |  Name (C++)                          |  Type        | Writable     | Animatable
 -----------------------------------|--------------------------------------|--------------|--------------|-----------
  renderingBackend                  | RENDERING_BACKEND                    |  INTEGER     | O            | X
  text                              | TEXT                                 |  STRING      | O            | X
@@ -139,6 +113,5 @@ editor.textColor = dali.COLOR_CYAN;
  outline                           | OUTLINE                              |  STRING      | O            | X
  inputOutline                      | INPUT_OUTLINE                        |  STRING      | O            | X
 
-@class TextEditor
 
 */
@@ -25,16 +25,6 @@ field.SetProperty( TextField::Property::PLACEHOLDER_TEXT_FOCUSED, "Enter Name."
 Stage::GetCurrent().Add( field );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-var field = new dali.TextField();
-field.placeholderText = "Unnamed Name";
-field.placeholderTextFocused = "Enter Name.";
-
-dali.stage.add( field );
-~~~
-
 When the TextField is tapped, it will automatically gain the keyboard focus. Key events will then result in text being inserted, and the placeholder text will be removed.
 After text has been entered, it can be retrieved from the TEXT property.
 
@@ -45,12 +35,6 @@ Property::Value fieldText = field.GetProperty( TextField::Property::TEXT );
 std::cout << "Received text: " << fieldText.Get< std::string >() << std::endl;
 ~~~
 
-~~~{.js}
-// JavaScript
-
-console.log( field.text );
-~~~
-
 ### Font Selection
 
 By default TextField will automatically select a suitable font from the platform. However, a different font could be selected. See the [Font Selection](@ref font-selection) section for more details.
@@ -74,12 +58,6 @@ If there is enough room, then the text can be aligned horizontally to the beginn
 field.SetProperty( TextField::Property::HORIZONTAL_ALIGNMENT, "BEGIN" ); // "CENTER" or "END"
 ~~~
 
-~~~{.js}
-// JavaScript
-
-field.HorizontalAlignment = "BEGIN"; // "CENTER" or "END"
-~~~
-
 ### Copy and Paste  (Selection)
 
 Text can be selected by a long press or double tapping it. See the [Copy and Paste](@ref copy-n-paste) section for more details.
@@ -98,16 +76,9 @@ field.SetProperty( TextField::Property::TEXT_COLOR, Color::CYAN );
 field.SetProperty( TextField::Property::PLACEHOLDER_TEXT_COLOR, Color::BLACK );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-field.textColor = dali.COLOR_CYAN;
-field.placeholderTextColor = dali.COLOR_BLACK;
-~~~
-
 ### Text Field Properties
 
- Name (JavaScript)                 |  Name (C++)                          |  Type        | Writable     | Animatable
+ Name (JSON)                       |  Name (C++)                          |  Type        | Writable     | Animatable
 -----------------------------------|--------------------------------------|--------------|--------------|-----------
  renderingBackend                  | RENDERING_BACKEND                    |  INTEGER     | O            | X
  text                              | TEXT                                 |  STRING      | O            | X
@@ -155,6 +126,4 @@ field.placeholderTextColor = dali.COLOR_BLACK;
  outline                           | OUTLINE                              |  STRING      | O            | X
  inputOutline                      | INPUT_OUTLINE                        |  STRING      | O            | X
 
-@class TextField
-
 */
old mode 100755 (executable)
new mode 100644 (file)
similarity index 70%
rename from docs/content/shared-javascript-and-cpp-documentation/text-label.md
rename to docs/content/programming-guide/text-label.md
index 8b9d4d6..4629482
@@ -23,23 +23,12 @@ label.SetAnchorPoint( AnchorPoint::TOP_LEFT );
 Stage::GetCurrent().Add( label );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-var label = new dali.TextLabel();
-
-label.text = "Hello World";
-label.anchorPoint = dali.TOP_LEFT;
-
-dali.stage.add( label );
-~~~
-
 The label must also be added to the stage, or to an actor which is on the stage.  
 The position of the label on-screen is dependent on the parentOrigin and anchorPoint properties.  
 
 |  |  |
 |--|--|
-| (ParentOrigin::TOP_LEFT, AnchorPoint::TOP_LEFT) | ![ ](../assets/img/text-controls/TextLabelTopLeft.png) ![ ](TextLabelTopLeft.png)   |
+| (ParentOrigin::TOP_LEFT, AnchorPoint::TOP_LEFT) | ![ ](TextLabelTopLeft.png)   |
 
 ### Font Selection
 
@@ -59,12 +48,6 @@ Wrapping can be enabled using the MULTI_LINE property:
 label.SetProperty( TextLabel::Property::MULTI_LINE, true );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-label.mutliLine = true;
-~~~
-
 The text can be either aligned horizontally to the beginning, end, or center of the available area:
 
 ~~~{.cpp}
@@ -73,20 +56,14 @@ The text can be either aligned horizontally to the beginning, end, or center of
 label.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "BEGIN" ); // "CENTER" or "END"
 ~~~
 
-~~~{.js}
-// JavaScript
-
-label.HorizontalAlignment = "BEGIN"; // "CENTER" or "END"
-~~~
-
 |  |  |
 |--|--|
 | Here is the "BEGIN" alignment shown for left-to-right (Latin)   |  right-to-left (Arabic) scripts |
-| ![ ](../assets/img/text-controls/LatinBegin.png) ![ ](LatinBegin.png) | ![ ](../assets/img/text-controls/ArabicBegin.png) ![ ](ArabicBegin.png) |
+| ![ ](LatinBegin.png) | ![ ](ArabicBegin.png) |
 | Here is the "CENTER" alignment shown for left-to-right (Latin)  | right-to-left (Arabic) scripts:|
-| ![ ](../assets/img/text-controls/LatinCenter.png) ![ ](LatinCenter.png) | ![ ](../assets/img/text-controls/ArabicCenter.png) ![ ](ArabicCenter.png) |
+| ![ ](LatinCenter.png) | ![ ](ArabicCenter.png) |
 | Here is the "END" alignment shown for left-to-right (Latin)  | right-to-left (Arabic) scripts:|
-| ![ ](../assets/img/text-controls/LatinEnd.png) ![ ](LatinEnd.png) | ![ ](../assets/img/text-controls/ArabicEnd.png) ![ ](ArabicEnd.png) |
+| ![ ](LatinEnd.png) | ![ ](ArabicEnd.png) |
 
 
 
@@ -100,28 +77,22 @@ If the MATCH_SYSTEM_LANGUAGE_DIRECTION property is set to true then the directio
 label.SetProperty( Toolkit::DevelTextLabel::Property::MATCH_SYSTEM_LANGUAGE_DIRECTION, true );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-label.matchSystemLanguageDirection = true;
-~~~
-
 |  |  |
 |--|--|
 | Current system language direction left-to-right | |
 | MATCH_SYSTEM_LANGUAGE_DIRECTION set to TRUE. | MATCH_SYSTEM_LANGUAGE_DIRECTION set to FALSE (default). |
 | BEGIN alignment | BEGIN alignment  |
-| ![ ](../assets/img/text-controls/HelloWorld-System-BEGIN.png) ![ ](HelloWorld-System-BEGIN.png) | ![ ](../assets/img/text-controls/HelloWorld-Default-BEGIN.png) ![ ](HelloWorld-Default-BEGIN.png) |
+| ![ ](HelloWorld-System-BEGIN.png) | ![ ](HelloWorld-Default-BEGIN.png) |
 | CENTER alignment | CENTER alignment  |
-| ![ ](../assets/img/text-controls/HelloWorld-System-CENTER.png) ![ ](HelloWorld-System-CENTER.png) | ![ ](../assets/img/text-controls/HelloWorld-Default-CENTER.png) ![ ](HelloWorld-Default-CENTER.png) |
+| ![ ](HelloWorld-System-CENTER.png) | ![ ](HelloWorld-Default-CENTER.png) |
 | END alignment | END alignment  |
-| ![ ](../assets/img/text-controls/HelloWorld-System-END.png) ![ ](HelloWorld-System-END.png) | ![ ](../assets/img/text-controls/HelloWorld-Default-END.png) ![ ](HelloWorld-Default-END.png) |
+| ![ ](HelloWorld-System-END.png) | ![ ](HelloWorld-Default-END.png) |
 
 
 |  |  |
 |--|--|
 | Current system language direction left-to-right | Current system language direction right-to-left |
-| ![ ](../assets/img/text-controls/LTR_order.png) ![ ](LTR_order.png)  | ![ ](../assets/img/text-controls/RTL_order.png) ![ ](RTL_order.png) |
+| ![ ](LTR_order.png)  | ![ ](RTL_order.png) |
 
 
 The examples above assume that the TextLabel size greater than the minimum required.  
@@ -150,23 +121,7 @@ label.SetBackgroundColor( Color::BLUE );
 Stage::GetCurrent().Add( label );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-var label = new dali.Textlabel;
-label.text = "Hello World";
-label.anchorPoint = dali.TOP_LEFT;
-
-label.widthResizePolicy = "USE_NATURAL_SIZE";
-label.heightResizePolicy = "USE_NATURAL_SIZE";
-
-label.textColor = dali.COLOR_WHITE;
-// background color not available as it's currently not a property of control
-dali.stage.add( label );
-~~~
-
 
- ![ ](../assets/img/text-controls/HelloWorld-NaturalSize.png)
  ![ ](HelloWorld-NaturalSize.png)
 
 
@@ -211,7 +166,6 @@ parent.AddChild( label, TableView::CellPosition( 2, 0 ) );
 parent.SetFitHeight( 2 );
 ~~~
 
- ![ ](../assets/img/text-controls/HelloWorld-HeightForWidth.png)
  ![ ](HelloWorld-HeightForWidth.png)
 
 
@@ -230,14 +184,6 @@ label.SetProperty( TextLabel::Property::TEXT, "Red Text" );
 label.SetProperty( TextLabel::Property::TEXT_COLOR, Color::RED );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-label.text = "Red Text";
-label.textColor = dali.COLOR_RED;
-~~~
-
- ![ ](../assets/img/text-controls/RedText.png)
  ![ ](RedText.png)
 
 #### Drop Shadow
@@ -267,43 +213,14 @@ label4.SetProperty( TextLabel::Property::SHADOW, shadow );
 
 ~~~
 
-~~~{.js}
-// JavaScript
-
-dali.stage.setBackgroundColor( dali.COLOR_BLUE );
-
-label1.text = "Plain Text";
-
-
-label2.text = "Text with Shadow";
-label2.shadow = "{\"offset\":\"1 1\",\"color\":\"black\"}";
-
-label3.text = "Text with Bigger Shadow";
-label3.shadow = "{\"offset\":\"2 2\",\"color\":\"black\"}";
-
-label4.SetProperty( TextLabel::Property::TEXT, "Text with Color Soft Shadow" );
-var shadow = {
-    "offset" : [ 1.0, 1.0 ],
-    "color" : dali.COLOR_RED;
-    "blurRadius" : 2.0
-};
-label4.shadow = shadow;
-
-~~~
-
-
-![ ](../assets/img/text-controls/PlainText.png)
 ![ ](PlainText.png)
 
 
-![ ](../assets/img/text-controls/TextWithShadow.png)
 ![ ](TextWithShadow.png)
 
-![ ](../assets/img/text-controls/TextWithBiggerShadow.png)
 ![ ](TextWithBiggerShadow.png)
 
 
-![ ](../assets/img/text-controls/TextWithColorShadow.png)
 ![ ](TextWithColorShadow.png)
 
 
@@ -321,22 +238,10 @@ label2.SetProperty( TextLabel::Property::TEXT, "Text with Color Underline" );
 label2.SetProperty( TextLabel::Property::UNDERLINE_ENABLED, true );
 label2.SetProperty( TextLabel::Property::UNDERLINE_COLOR, Color::GREEN );
 ~~~
-~~~{.js}
-// JavaScript
-label1.Text = "Text with Underline";
-label1.underlineEnabled = true;
-
-label2.Text = "Text with Color Underline";
-label2.underlineEnabled = true;
-label2.underlineColor = dali.COLOR_GREEN;
-~~~
 
-
-![ ](../assets/img/text-controls/TextWithUnderline.png)
 ![ ](TextWithUnderline.png)
 
 
-![ ](../assets/img/text-controls/TextWithColorUnderline.png)
 ![ ](TextWithColorUnderline.png)
 
 By default the underline height will be taken from the font metrics, however this can be overridden using the UNDERLINE_HEIGHT property:
@@ -347,18 +252,10 @@ By default the underline height will be taken from the font metrics, however thi
 label1.SetProperty( TextLabel::Property::UNDERLINE_HEIGHT, 1.0f );
 ~~~
 
-~~~{.js}
-// JavaScript
-
-label1.underlineHeight = 1;
-~~~
-
-![ ](../assets/img/text-controls/TextWith1pxUnderline.png)
 ![ ](TextWith1pxUnderline.png)
 
 ### Auto Scrolling
 
-![ ](../assets/img/text-controls/AutoScroll.gif)
 ![ ](AutoScroll.gif)
 
 The \link text-auto-scrolling Auto text scrolling \endlink section details how to scroll text automatically.
@@ -367,6 +264,5 @@ The \link text-auto-scrolling Auto text scrolling \endlink section details how t
 
 The properties used by TextLabel are listed [here](@ref TextLabelProperties)
 
-@class TextLabel
 
 */
@@ -92,7 +92,6 @@ ________________________________________________________________________________
 
 Renders a color to the visual's quad geometry.
  
-![ ](../assets/img/visuals/color-visual.png)
 ![ ](visuals/color-visual.png)
 
 ### Properties Supported
@@ -115,17 +114,6 @@ map[ ColorVisual::Property::MIX_COLOR ] = Color::RED;
 
 control.SetProperty( Control::Property::BACKGROUND, map );
 ~~~
-
-~~~{.js}
-// JavaScript
-var control = new dali.Control( "Control" );
-
-control.background =
-{
-  visualType : "COLOR",
-  mixColor : dali.COLOR_RED
-};
-~~~
 ___________________________________________________________________________________________________
 
 ## Gradient Visual {#gradient-visual}
@@ -136,7 +124,7 @@ Both Linear and Radial gradients are supported.
 
 | Linear | Radial |
 |--------|--------|
-| ![ ](../assets/img/visuals/linear-gradient-visual.png) ![ ](visuals/linear-gradient-visual.png) | ![ ](../assets/img/visuals/radial-gradient-visual.png) ![ ](visuals/radial-gradient-visual.png) |
+| ![ ](visuals/linear-gradient-visual.png) | ![ ](visuals/radial-gradient-visual.png) |
 
 ### Properties Supported
 
@@ -207,26 +195,6 @@ map[ GradientVisual::Property::STOP_COLOR ] = stopColors;
 control.SetProperty( Control::Property::BACKGROUND, map );
 ~~~
 
-~~~{.js}
-// JavaScript
-var control = new dali.Control( "Control" );
-
-control.background =
-{
-  visualType : "GRADIENT",
-  startPosition : [ 0.5, 0.5 ],
-  endPosition : [ -0.5, -0.5 ],
-  stopOffset : [ 0.0, 0.3, 0.6, 0.8, 1.0 ],
-  stopColor : [
-    [ 129 / 255, 198 / 255, 193 / 255, 255 / 255 ],
-    [ 196 / 255, 198 / 255,  71 / 255, 122 / 255 ],
-    [ 214 / 255,  37 / 255, 139 / 255, 191 / 255 ],
-    [ 129 / 255, 198 / 255, 193 / 255, 150 / 255 ],
-    dali.COLOR_YELLOW
-  ]
-};
-~~~
-
 **Radial:**
 ~~~{.cpp}
 // C++
@@ -255,26 +223,6 @@ map[ GradientVisual::Property::STOP_COLOR ] = stopColors;
 
 control.SetProperty( Control::Property::BACKGROUND, map );
 ~~~
-
-~~~{.js}
-// JavaScript
-var control = new dali.Control( "Control" );
-
-control.background =
-{
-  visualType : "GRADIENT",
-  center : [ 0.5, 0.5 ],
-  radius : 1.414,
-  stopOffset : [ 0.0, 0.3, 0.6, 0.8, 1.0 ],
-  stopColor : [
-    [ 129 / 255, 198 / 255, 193 / 255, 255 / 255 ],
-    [ 196 / 255, 198 / 255,  71 / 255, 122 / 255 ],
-    [ 214 / 255,  37 / 255, 139 / 255, 191 / 255 ],
-    [ 129 / 255, 198 / 255, 193 / 255, 150 / 255 ],
-    dali.COLOR_YELLOW
-  ]
-};
-~~~
 ___________________________________________________________________________________________________
 
 ## Image Visual {#image-visuals}
@@ -294,7 +242,6 @@ ___________________________
  
 Renders a raster image ( jpg, png etc.) into the visual's quad geometry.
  
-![ ](../assets/img/visuals/image-visual.png)
 ![ ](visuals/image-visual.png)
 
 #### Properties Supported
@@ -324,24 +271,12 @@ map[ ImageVisual::Property::URL ] = "path-to-image.jpg";
 
 control.SetProperty( Control::Property::BACKGROUND, map );
 ~~~
-
-~~~{.js}
-// JavaScript
-var control = new dali.Control( "Control" );
-
-control.background =
-{
-  visualType : "IMAGE",
-  url : "path-to-image.jpg"
-};
-~~~
 ___________________________________________________________________________________________________
 
 ### N-Patch {#n-patch-visual}
 
 Renders an n-patch or a 9-patch image. Uses non-quad geometry. Both geometry and texture are cached to reduce memory consumption if the same n-patch image is used elsewhere.
  
-![ ](../assets/img/visuals/n-patch-visual.png)
 ![ ](visuals/n-patch-visual.png)
 
 #### Properties Supported
@@ -366,18 +301,6 @@ map[ Dali::Toolkit::ImageVisual::Property::URL ] = "path-to-image.9.png";
 
 control.SetProperty( Control::Property::BACKGROUND, map );
 ~~~
-
-~~~{.js}
-// JavaScript
-var control = new dali.Control( "Control" );
-
-control.background =
-{
-  visualType : "IMAGE",
-  url : "path-to-image.9.png"
-};
-~~~
-
 ___________________________________________________________________________________________________
 
 ### SVG {#svg-visual}
@@ -404,7 +327,6 @@ Renders a svg image into the visual's quad geometry.
 
 <div style="width:300px">
  
-![ ](../assets/img/visuals/svg-visual.svg)
  
 </div>
  
@@ -437,25 +359,12 @@ map[ Dali::Toolkit::ImageVisual::Property::URL ] = "path-to-image.svg";
 control.SetSize( 200.f, 200.f );
 control.SetProperty( Control::Property::BACKGROUND, map );
 ~~~
-
-~~~{.js}
-// JavaScript
-var control = new dali.Control( "Control" );
-
-control.background =
-{
-  visualType : "IMAGE",
-  url : "path-to-image.svg"
-};
-~~~
-
 ___________________________________________________________________________________________________
 
 ## Animated Image Visual {#animated-image-visual}
 
 Renders an animated image into the visual's quad geometry. Currently, only the GIF format is supported.
 
-![ ](../assets/img/visuals/animated-image-visual.gif)
 ![ ](animated-image-visual.gif)
 
 #### Properties Supported
@@ -479,24 +388,12 @@ control.SetProperty( Control::Property::BACKGROUND,
                      Property::Map().Add( Visual::Property::TYPE, Dali::Toolkit::Visual::IMAGE )
                                     .Add( Dali::Toolkit::ImageVisual::Property::URL, "path-to-image.gif" ) );
 ~~~
-
-~~~{.js}
-// JavaScript
-var control = new dali.Control( "Control" );
-
-control.background =
-{
-  visualType : "IMAGE",
-  url : "path-to-image.gif"
-};
-~~~
 ___________________________________________________________________________________________________
 
 ## Border Visual {#border-visual}
 
 Renders a color as an internal border to the visual's geometry.
  
-![ ](../assets/img/visuals/border-visual.png)
 ![ ](visuals/border-visual.png)
 
 ### Properties Supported
@@ -523,26 +420,12 @@ map[ BorderVisual::Property::SIZE ] = 5.0f;
 
 control.SetProperty( Control::Property::BACKGROUND, map );
 ~~~
-
-~~~{.js}
-// JavaScript
-var control = new dali.Control( "Control" );
-
-control.background =
-{
-  visualType : "BORDER",
-  borderColor : dali.COLOR_BLUE,
-  borderSize = 5
-};
-~~~
-
 ___________________________________________________________________________________________________
 
 ## Mesh Visual {#mesh-visual}
 
 Renders a mesh using a .obj file, optionally with textures provided by a mtl file. Scaled to fit the control.
  
-![ ](../assets/img/visuals/mesh-visual.png)
 ![ ](visuals/mesh-visual.png)
  
 ### Properties Supported
@@ -596,7 +479,6 @@ Renders a simple 3D shape, such as a cube or sphere. Scaled to fit the control.
 
 The shapes are generated with clockwise winding and back-face culling on by default.
 
-![ ](../assets/img/visuals/cube.png)
 ![ ](visuals/cube.png)
  
 ### Properties Supported
@@ -636,14 +518,13 @@ There are six shapes that can be chosen, some of which are simplified specialisa
 
 **sphere:**
  
-![ ](../assets/img/visuals/sphere.png)
 ![ ](visuals/sphere.png)
  
 **conics:**
  
 | Frustrum | Cone | Cylinder |
 |----------|------|----------|
-| ![ ](../assets/img/visuals/conical-frustrum.png) ![ ](visuals/conical-frustrum.png) | ![ ](../assets/img/visuals/cone.png) ![ ](visuals/cone.png) | ![ ](../assets/img/visuals/cylinder.png) ![ ](visuals/cylinder.png) |
+| ![ ](visuals/conical-frustrum.png) | ![ ](visuals/cone.png) | ![ ](visuals/cylinder.png) |
  
 ### Bevel {#bevel-details}
  
@@ -651,20 +532,18 @@ Bevel percentage ranges from 0.0 to 1.0. It affects the ratio of the outer face
  
 | 0.0 ( cube) | 0.3 | 0.7 | 1.0 (octahedron) |
 |-------------|-----|-----|------------------|
-| ![ ](../assets/img/visuals/cube.png) ![ ](visuals/cube.png) | ![ ](../assets/img/visuals/bevelled-cube-low.png) ![ ](visuals/bevelled-cube-low.png) | ![ ](../assets/img/visuals/bevelled-cube-high.png) ![ ](visuals/bevelled-cube-high.png) | ![ ](../assets/img/visuals/octahedron.png) ![ ](visuals/octahedron.png) |
+| ![ ](visuals/cube.png) | ![ ](visuals/bevelled-cube-low.png) | ![ ](visuals/bevelled-cube-high.png) | ![ ](visuals/octahedron.png) |
  
 ### Slices {#slices-details}
  
 For spheres and conical frustrums, 'slices' determines how many divisions there are as you go around the object.
  
-![ ](../assets/img/visuals/slices.png)
 ![ ](visuals/slices.png)
  
 ### Stacks {#stacks-details}
  
 For spheres, 'stacks' determines how many layers there are as you go down the object.
  
-![ ](../assets/img/visuals/stacks.png)
 ![ ](visuals/stacks.png)
  
 ### Usage
@@ -723,7 +602,6 @@ ________________________________________________________________________________
 
 Renders text within a control.
 
-![ ](../assets/img/visuals/HelloWorld.png)
 ![ ](visuals/HelloWorld.png)
 
 ### Properties
@@ -771,7 +649,6 @@ Renders text within a control.
 Renders a wireframe around a quad geometry.
 Is mainly used for debugging and is the visual that replaces all other visuals when [Visual Debug Rendering](@ref debugrendering) is turned on.
  
-![ ](../assets/img/visuals/wireframe-visual.png)
 ![ ](visuals/wireframe-visual.png)
 
 ### Properties
@@ -790,17 +667,6 @@ map[ Visual::Property::TYPE ] = Dali::Toolkit::Visual::WIREFRAME;
 control.SetProperty( Control::Property::BACKGROUND, map );
 ~~~
 
-~~~{.js}
-// JavaScript
-var control = new dali.Control( "Control" );
-
-control.background =
-{
-  visualType : "WIREFRAME"
-};
-~~~
-
 
-@class _Guide_Control_Visuals
 
 */
diff --git a/docs/content/shared-javascript-and-cpp-documentation/documentation-guide.md b/docs/content/shared-javascript-and-cpp-documentation/documentation-guide.md
deleted file mode 100644 (file)
index 397428a..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-<!--
-/**-->
-
-# Writing documentation for the DALi programming guide  {#documentationguide}
-
-To allow documentation to be shared between C++ and JavaScript, please follow these guidelines:
-
- - Create a mark down file (.md) using GitHub Flavoured Markdown https://help.github.com/articles/github-flavored-markdown/
- - Put it into the shared C++ / JavaScript documentation: dali-toolkit/docs/content/shared-javascript-and-cpp-documentation/~
- - Include code samples for both C++ and JavaScript in the mark down.
- - See script-overview.md overview in dali-toolkit/docs/content/shared-javascript-and-cpp-documentation for an example
- - For YUIDOC to parse the file it needs:
-   - Enclosed in code comment block
-   - Have a class tag with a description of the file
- - For DOXYGEN to link to the mark down it currently needs a reference {hash myfile}
-  
-
-#### Images
- Images are shared between both Doxygen and YUIDOC tools using a symbolic link.
- You need to link to the image twice in shared documentation.
- This is because YUIDOC stores images in a folder called assets/img/  which is relative to the HTML pages.
- Where as Doxygen copies all images in to the same folder as the HTML generated pages.
-
- ~~~
-![ ](../assets/img/screen-shot.png)    // required for YUIDOC
-![ ](screen-shot.png)                  // required for Doxygen
-
-The space between the brackets is the alternative text. This means you will never see a broken image symbol.
-~~~
-  
-## Example
-
-Please have a look at the numerous markdown files to see the header and footer requirements.
-
-You can add tags to your headings as follows:
-~~~{.md}
-# MyChapter {#my-chapter}
-~~~
-Which will allow you to link to this section as follows:
-~~~{.md}
-[Go To MyChapter](@ref my-chapter)
-~~~
-
-Code blocks can be enclosed within 2 blocks of 3 tildes(~).
-
-You can even specify your language type, for example:
-~~~{.md}
-~~~{.cpp}
-...
-~~~{.js}
-~~~
-
-#### Why use GitHub flavoured markdown?
- - Table support is good and language specific code blocks are easier to define ( javascript/C++).
- - Doxygen and YUIDOC both support it.
-
-
-@class _Guide_Writing_DALi_Programming_Guide_Documentation
-
-*/
diff --git a/docs/content/shared-javascript-and-cpp-documentation/emscripten.md b/docs/content/shared-javascript-and-cpp-documentation/emscripten.md
deleted file mode 100644 (file)
index 9960e35..0000000
+++ /dev/null
@@ -1,199 +0,0 @@
-<!--
-/**-->
-
-[TOC]
-
-# DALi Emscripten {#emscripten}
-  
-
-## Introduction - What is Emscripten? {#emscripten-introduction}
-  
-Emscripten is a backend for LLVM that allows C and C++ to be compiled to Javascript.
-This can then be run within a web browser at near native speed (without plugins).
-  
-## DALi Emscripten {#emscripten-dali}
-  
-Dali-Core can be built using with Emscripten producing a Javascript version of DALi.
-A web page can then be made with HTML, and by embedding Javascript can reference and control the DALi Javascript canvas.
-  
-This allows you to have a DALi canvas within a web page that can either:
-- Run autonomously
-- Be controlled by HTML / Javascript controls elsewhere on the web page
-  
-The necessary scripts for building are included within each DALi repository.
-  
-
-# Building DALi Emscripten {#emscripten-building}
-  
-Within each DALi repository, the README file gives the respective instructions for building that repository.
-In summary, this process involves:
-  
-- Setting up a DALi environment with the Emscripten SDK (the dali_env script will do this if specified)
-- Building dali-core as Javascript (using Emscriptens configure and make replacements)
-- Building dali-adaptor Emscripten replacement with a separate build script found in dali-adaptor
-- Installing the examples within the dali-demo repository
-  
-## Build Artifacts {#emscripten-artifacts}
-  
-Each step in the build process will produce artifacts that will be written to the DALi environment directory.
-  
-- dali-core: Produces a dali-core.so in bytecode.
-- dali-adaptor: Produces:
-  - dali-emscripten.js (the main DALi Javascript runtime).
-  - dali-wrapper.js    (wrapped DALi calls that call into their cpp-built-to-js counterpart to execute DALi calls).
-- dali-toolkit: Note: Does not currently have Emscripten support.
-- dali-demo: Does not build with Emscripten, but includes some Javascript examples that can be run with an Emscripten build of DALi.
-  
-
-# Running The Examples {#emscripten-examples}
-  
-After building by following the README within each repository, navigate to the emscripten directory within your DALi environment. Assuming your DESKTOP_PREFIX environment variable is set (from your DALi environment), run:
-  
-~~~
-cd $DESKTOP_PREFIX/share/emscripten
-~~~
-  
-You will see the following files (among others):
-  
-- dali-toy.html          - An interactive DALi editor. Add actors, edit shaders and more.
-- dali-toy.js            - Required runtime for dali-toy.
-- dali-doc-demo.html     - Live documentation demo (a document containing a live DALi canvas).
-- dali-tests.html        - Live unit tests for DALi Emscripten.
-- dali-emscripten.html   - Required DALi Emscripten runtime.
-- dali-emscripten.js     - Required DALi Emscripten runtime.
-- dali-wrapper.js        - Required DALi Emscripten runtime.
-  
-The other files within the directory are part of the live unit tests.
-  
-You can use various browsers to run the examples, however for compatibility we recommend chrome.
-To install chrome on Ubuntu:
-  
-~~~
-sudo apt-get install chromium-browser
-~~~
-  
-To run an example:
-  
-<br>
-~~~
-chromium-browser ./dali-toy.html
-~~~
-  
-![ ](../assets/img/emscripten/emscripten-dali-toy.png) ![ ](./emscripten-dali-toy.png)
-  
-<br><br>
-~~~
-chromium-browser ./dali-doc-demo.html
-~~~
-  
-![ ](../assets/img/emscripten/emscripten-live-doc.png) ![ ](./emscripten-live-doc.png)
-  
-<br><br>
-
-
-# Running The Live Unit Tests {#emscripten-tests}
-  
-Included are some live unit tests.
-These run as a web page within a browser, a DALi canvas is created and used to run each test.
-The QUnit test suite is used (included within the repository for compatibility).
-  
-![ ](../assets/img/emscripten/emscripten-tests.png) ![ ](./emscripten-tests.png)
-  
-<br>
-
-For the tests to work correctly, the web page should be run through a web server, rather than directly with a browser.
-This can be achieved simply using npms's zero configuration command line server: "http-server".
-  
-To install "http-server":
-  
-~~~
-npm install http-server -g
-~~~
-  
-To start the server, just run:
-  
-~~~
-http-server
-~~~
-  
-This will give the following output:
-  
-~~~
-http-server
-Starting up http-server, serving ./
-Available on:
-  http://127.0.0.1:8080
-  http://106.1.10.118:8080
-Hit CTRL-C to stop the server
-~~~
-  
-This will automatically create a server and serve the contents of the current directory.
-The command outputs the URL to paste into your browser, in the above case:
-  
-So to run the tests:
-  
-- cd $DESKTOP_PREFIX/share/emscripten
-- http-server
-- Open a browser and paste the URL into the address bar.
-- Click "All" to run all the tests.
-- After a short while the tests will complete and any errors will be shown.
-- A test can be re-run by clicking the "Rerun" link by that test. There is also a global Rerun option.
-  
-# Debugging & Usage Tips {#emscripten-debugging}
-  
-Most browsers provide a Javascript console.
-In many cases this will open when inspecting an element. However to jump straight to the console (within chromium), press:
-  
-- "Ctrl + Shift + J" (Windows/Linux)
-- "Command + Option + J" (Mac)
-  
-From this console, any references within your Javascript code and DALi itself can be accessed directly.
-This allows you to run commands live.
-  
-EG. Within the console you could enter:
-  
-~~~
-var MyActor = new dali.Actor();
-MyActor.name = "MyName";
-...
-MyActor.name
-<- "MyName"
-~~~
-  
-You can also inspect elements like so:
-  
-~~~
-var MyActor = new dali.Actor();
-MyActor
-<- â–¶ Object {$$: Object}
-~~~
-  
-Then clicking on the tree node toggle "â–¶" Will expand the objects hierarchy like so:
-  
-~~~
-â–¼ Object {$$: Object}
-  â–¶ $$: Object
-    anchorPoint: (...)
-  â–¶ get anchorPoint: function ()
-  â–¶ set anchorPoint: function (newValue)
-    anchorPointX: (...)
-  â–¶ get anchorPointX: function ()
-  â–¶ set anchorPointX: function (newValue)
-  <etc>
-~~~
-  
-You can then further expand the tree by clicking on the "â–¶" nodes.
-  
-You can also expand the "(...)" sections to show type information, EG:
-  
-~~~
-    anchorPoint: (...)
-Becomes:
-    anchorPoint: Array[3]
-~~~
-  
-Note: You can access and modify existing objects created by the Javascript also.
-  
-
-@class _Guide_Emscripten
-*/
diff --git a/docs/content/shared-javascript-and-cpp-documentation/javascript-wrapping-guide.md b/docs/content/shared-javascript-and-cpp-documentation/javascript-wrapping-guide.md
deleted file mode 100644 (file)
index b2eef34..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-<!--
-/**-->
-
-# JavaScript wrapping guide  {#javascriptwrapping}
-
-This guide outlines what files to modify when the DALi C++ public API changes.
-
-## Background
-
-We use Google's V8 to run JavaScript code.
-https://developers.google.com/v8/get_started
-
-#### Folder structure
-
-There is a folder for each type of wrapped object.
-  
-
-The filename for a wrapped type are always object-wrapper.xxx
-The filename for the static functions that forward calls to DALi are always object-api.xxx
-  
-The current file / folder structure is as follows:
-  
-![ ](../assets/img/javascript-wrapping-guide/folder-view.png)
-![ ](folder-view.png)
-
-
-## What to do when the DALi public API changes:
-
-### New property has been added
-- No code change required.
-- It will be automatically available using the dot notation. E.g. actor.my_new_property = true;
-
-### New property type has been added
-- modify property-value-wrapper.h / .cpp to support the new type
-
-### New function added to an object
-- Add the function name to function table in my-object-wrapper.cpp
-- Add the forwarding function to my-object-api.cpp/.h
-- Ensure you have created YUIDOC documentation above the function
-  
-![ ](../assets/img/javascript-wrapping-guide/adding-function.png)
-![ ](adding-function.png)
-
-### New object added
-
-This is an example of wrapping a new DALi C++ object called Light.
-
-- in dali-wrapper.cpp in ConstructorFunctionTable insert the constructor in the table.
-  
-![ ](../assets/img/javascript-wrapping-guide/constructors.png)
-![ ](constructors.png)
-  
-
-Objects registered in this table can be created in JavaScript as follows:
-
-~~~{.js}
-var light = new dali.Light();
-~~~
-
-- Add the Light to the Type enum in BaseWrappedObject class.
-  
-![ ](../assets/img/javascript-wrapping-guide/base-wrapped-types.png)
-![ ](base-wrapped-types.png)
-  
-
--  Create the light-wrapper / light-api files
-  
-If Light inherits from Handle then use path-wrapper and path-api as a template to create light-wrapper and light-api
-( inherits from HandleWrapper)
-  
-Otherwise use animation-wrapper and animation-api as a template ( inherits from BaseWrappedObject)
-
-
-
-## Design
-![ ](../assets/img/javascript-wrapping-guide/high-level-design.png)
-![ ](high-level-design.png)
-
-
-![ ](../assets/img/javascript-wrapping-guide/plugin-creation.png)
-![ ](plugin-creation.png)
-
-
-![ ](../assets/img/javascript-wrapping-guide/plugin-execution.png)
-![ ](plugin-execution.png)
-
-### Internals
-In order to wrap DALi C++ objects in JavaScript, we use
-hidden fields inside the JavaScript object.
-
-
-  
-| JavaScript Object                     |   _   |  C++ WrappedObject  (e.g. ImageWrapper)|
-|---------------------------------------|-------|----------------------------------------|
-| Hidden internal fields                |       |                                        |
-| *Pointer to a     WrappedObject       | ----> |      Handle to a Dali::Image object    |
-| Type of wrapped object (e.g. Image)   |       |                                        |
-  
-
-So if you call
-~~~{.js}
-var name = myActor.getId();
-~~~
-v8 will detect myActor is a wrapped object, and call getId() on that wrapped object.
-The wrapped object, then forwards the command to the real DALi object.
-  
-Whenever we want to access functions / properties of that wrapped object, we unwrap it
-to get access to the DALi object.
-  
-Each wrapped object registers with DALi garbage collector so they can be deleted
-when DALi shuts down
-
-@class _Guide_JavaScript_Wrapping
-
-*/
diff --git a/docs/content/shared-javascript-and-cpp-documentation/script-hello.md b/docs/content/shared-javascript-and-cpp-documentation/script-hello.md
deleted file mode 100644 (file)
index ff15954..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-<!--
-/**-->
-
- # Hello World - JSON layout{#script-hello}
-
- The following JSON code is the minimum required to put the sentence "Hello World" on the screen.
-
-~~~{.json}
-{
- // a tree of actors
- "stage": [{
-   "name": "text-label",
-   "type": "TextLabel",
-   "text": "Hello World",
-   "parentOrigin": "CENTER"
- }]
-}
-~~~
-
- The following code loads the JSON file
-
-~~~{.cpp}
- // C++
- Builder builder = Builder::New();
-
- std::string json_data(ReadFile("layout.json"));
-
- builder.LoadFromString(json_data);
-
- builder.AddActors( Stage::GetCurrent().GetRootLayer() );
-
- ~~~
-
- ~~~{.js}
- // JavaScript
-
- var builder = new dali.Builder();
-
- builder.loadFromFile("layout.json");
-
- builder.addActors( dali.stage.getRootLayer )
-
-~~~
- ## Hello World - Javascript
-
- The DALi script application is needed to run the Javascript which provides a Javascript runtime and an interface to DALi.
-
-~~~
- scripting.example hello-world.js
-~~~
-
- The TextLabel control to display Hello World can be constructed using Javascript dot notation accessing DALi Actor Properties.
-
-~~~{.js}
-// JavaScript
-
- var textLabel = new dali.TextLabel();
-
- textLabel.text         = "Hello World";
- textLabel.fontFamily   = "FreeSans";
- textLabel.fontStyle    = "Regular";
- textLabel.parentOrigin = dali.CENTER;
-
- dali.stage.add( textLabel );
-~~~
-
-@class _Guide_Script_Hello_World
-
-*/
diff --git a/node-addon/README b/node-addon/README
deleted file mode 100644 (file)
index 0a66f1e..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-Building dali node addon for GBS
-
-Ensure node-devel (0.12.4) rpm is install into gbs. The addon expects /usr/lib/node/node.h to exists
-in the gbs environment
-
-sudo gbs  build -A armv7l --include-all --ccache --keep-packs --spec dali-addon.spec
-
-Building for Ubuntu desktop:
-
-2 options:
-
-option 1 (easy):  in node-addon folder type
-
-$ node-gyp build
-
-option 2 (harder)
-Ensure node-js source has been downloaded and built from source.
-It doesn't have to be installed anywhere (make sure node executable is in your PATH).
-
-In node-addon/build/tizen direction, run cmake, with the source directory of node
-
-cmake -DDesktopNodePath:String=/home/my-user/Downloads/node-v0.12.4 .
-make
diff --git a/node-addon/binding.gyp b/node-addon/binding.gyp
deleted file mode 100644 (file)
index da23da5..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-{
-  "variables": {
-    'DALI_JS_DIR%':'../plugins/dali-script-v8/src/'
-  },
-  "targets": [
-    {
-      'target_name': 'dali',
-      'include_dirs': ['<(DALI_JS_DIR)/',
-                       '<(DALI_JS_DIR)/utils'],
-      'sources': [ 'dali-addon.cpp',
-      'javascript-application-options.cpp',
-      '<(DALI_JS_DIR)/utils/v8-utils.cpp',
-      '<(DALI_JS_DIR)/dali-wrapper.cpp',
-      '<(DALI_JS_DIR)/shared/base-wrapped-object.cpp',
-      '<(DALI_JS_DIR)/shared/object-template-helper.cpp',
-      '<(DALI_JS_DIR)/actors/actor-wrapper.cpp',
-      '<(DALI_JS_DIR)/actors/actor-api.cpp',
-      '<(DALI_JS_DIR)/actors/layer-api.cpp',
-      '<(DALI_JS_DIR)/actors/camera-actor-api.cpp',
-      '<(DALI_JS_DIR)/constants/constants-wrapper.cpp',
-      '<(DALI_JS_DIR)/controls/control-wrapper.cpp',
-      '<(DALI_JS_DIR)/controls/item-factory-wrapper.cpp',
-      '<(DALI_JS_DIR)/controls/item-view-api.cpp',
-      '<(DALI_JS_DIR)/controls/scroll-view-api.cpp',
-      '<(DALI_JS_DIR)/animation/animation-api.cpp',
-      '<(DALI_JS_DIR)/animation/animation-wrapper.cpp',
-      '<(DALI_JS_DIR)/animation/constrainer-api.cpp',
-      '<(DALI_JS_DIR)/animation/linear-constrainer-wrapper.cpp',
-      '<(DALI_JS_DIR)/animation/path-api.cpp',
-      '<(DALI_JS_DIR)/animation/path-constrainer-wrapper.cpp',
-      '<(DALI_JS_DIR)/animation/path-wrapper.cpp',
-      '<(DALI_JS_DIR)/stage/stage-wrapper.cpp',
-      '<(DALI_JS_DIR)/events/event-object-generator.cpp',
-      '<(DALI_JS_DIR)/events/pan-gesture-detector-api.cpp',
-      '<(DALI_JS_DIR)/events/pan-gesture-detector-wrapper.cpp',
-      '<(DALI_JS_DIR)/stage/stage-api.cpp',
-      '<(DALI_JS_DIR)/image/image-wrapper.cpp',
-      '<(DALI_JS_DIR)/image/image-api.cpp',
-      '<(DALI_JS_DIR)/image/buffer-image-api.cpp',
-      '<(DALI_JS_DIR)/image/frame-buffer-image-api.cpp',
-      '<(DALI_JS_DIR)/image/resource-image-api.cpp',
-      '<(DALI_JS_DIR)/object/handle-wrapper.cpp',
-      '<(DALI_JS_DIR)/object/property-buffer-api.cpp',
-      '<(DALI_JS_DIR)/object/property-buffer-wrapper.cpp',
-      '<(DALI_JS_DIR)/object/property-value-wrapper.cpp',
-      '<(DALI_JS_DIR)/signals/signal-manager.cpp',
-      '<(DALI_JS_DIR)/render-tasks/render-task-list-api.cpp',
-      '<(DALI_JS_DIR)/render-tasks/render-task-list-wrapper.cpp',
-      '<(DALI_JS_DIR)/render-tasks/render-task-api.cpp',
-      '<(DALI_JS_DIR)/render-tasks/render-task-wrapper.cpp',
-      '<(DALI_JS_DIR)/rendering/geometry-api.cpp',
-      '<(DALI_JS_DIR)/rendering/geometry-wrapper.cpp',
-      '<(DALI_JS_DIR)/rendering/renderer-api.cpp',
-      '<(DALI_JS_DIR)/rendering/renderer-wrapper.cpp',
-      '<(DALI_JS_DIR)/rendering/sampler-api.cpp',
-      '<(DALI_JS_DIR)/rendering/sampler-wrapper.cpp',
-      '<(DALI_JS_DIR)/rendering/shader-api.cpp',
-      '<(DALI_JS_DIR)/rendering/shader-wrapper.cpp',
-      '<(DALI_JS_DIR)/rendering/texture-set-api.cpp',
-      '<(DALI_JS_DIR)/rendering/texture-set-wrapper.cpp',
-      '<(DALI_JS_DIR)/toolkit/builder/builder-api.cpp',
-      '<(DALI_JS_DIR)/toolkit/builder/builder-wrapper.cpp',
-      '<(DALI_JS_DIR)/toolkit/focus-manager/keyboard-focus-manager-api.cpp',
-      '<(DALI_JS_DIR)/toolkit/focus-manager/keyboard-focus-manager-wrapper.cpp',
-      '<(DALI_JS_DIR)/signals/dali-any-javascript-converter.cpp',
-      '<(DALI_JS_DIR)/garbage-collector/garbage-collector.cpp',
-      '<(DALI_JS_DIR)/module-loader/module.cpp',
-      '<(DALI_JS_DIR)/module-loader/module-loader.cpp'
-     ],
-      'cflags': [
-            '-fPIC',
-            '-frtti',
-            '<!@(pkg-config --cflags dali-core dali-adaptor-uv dali-toolkit)'
-        ],
-
-    'cflags_cc': [
-            '-fexceptions', # Enable exception handler
-            '-frtti'    # needed for typeinfo with dali-any
-        ],
-      'ldflags': [
-            '<!@(pkg-config --libs-only-L --libs-only-other dali-core dali-adaptor-uv dali-toolkit)'
-        ],
-      'libraries': [
-        '<!@(pkg-config --libs-only-l dali-core dali-adaptor-uv dali-toolkit)'
-      ]
-    }]
-}
diff --git a/node-addon/build/binding.Makefile b/node-addon/build/binding.Makefile
deleted file mode 100644 (file)
index 2e10c88..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-# This file is generated by gyp; do not edit.
-
-export builddir_name ?= ./build/.
-.PHONY: all
-all:
-       $(MAKE) dali
diff --git a/node-addon/build/tizen/CMakeLists.txt b/node-addon/build/tizen/CMakeLists.txt
deleted file mode 100644 (file)
index a5925af..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-# Guide to build for GBS
-# Build dali-toolkit with gbs, the dali-addon will be built automatically
-#
-# To build for Desktop
-# option 1 (easy):  in node-addon folder type
-#
-# $ node-gyp build
-#
-# option 2: use cmake
-# This relies on Node source being downloaded ( don't forget the dot)
-#
-# cmake -DDesktopNodePath:String=/home/Downloads/node-v0.12.4 .
-
-
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8.5)
-PROJECT(dali_addon)
-set(configuration "Default")
-enable_language(ASM)
-set(builddir "${CMAKE_BINARY_DIR}")
-set(obj "${builddir}/obj")
-
-set(CMAKE_C_OUTPUT_EXTENSION_REPLACE 1)
-set(CMAKE_CXX_OUTPUT_EXTENSION_REPLACE 1)
-
-option(GBSBuild "GBSBuild" 0)
-option(DesktopNodePath "DesktopNodePath" "")
-
-IF( ${GBSBuild} )
-  set( NODE_HEADERS "/usr/include/node" )
-  set( V8_HEADERS "/usr/include/node" )
-  MESSAGE("Performing a GBS build, ensure Node JS devel RPM is installed")
-  MESSAGE("node.h and v8.h should exist in ${NODE_HEADERS}")
-ELSE()
-  MESSAGE("Performing Desktop build node path =${DesktopNodePath}")
-  IF( NOT DesktopNodePath )
-    MESSAGE(FATAL_ERROR "\n Node JS Source code path empty, please specify,e.g. \n cmake -DDesktopNodePath:String=~/Downloads/node-v0.12.4/  .")
-  ENDIF( NOT DesktopNodePath )
-  set( NODE_HEADERS "${DesktopNodePath}/src" )
-  set( V8_HEADERS   "${DesktopNodePath}/deps/v8/include" )
-  MESSAGE( "-- Node include header location = ${NODE_HEADERS} ")
-  MESSAGE( "-- V8 include header location = ${V8_HEADERS} ")
-ENDIF( ${GBSBuild})
-
-set(TARGET "dali_addon")
-set(TOOLSET "target")
-set(PLUGING_SRC_DIR "../../../plugins/dali-script-v8/src")
-set(NODE_ADDON_SRC "../..")
-add_library(dali_addon SHARED
-  ${NODE_ADDON_SRC}/dali-addon.cpp
-  ${NODE_ADDON_SRC}/javascript-application-options.cpp
-  ${PLUGING_SRC_DIR}/utils/v8-utils.cpp
-  ${PLUGING_SRC_DIR}/dali-wrapper.cpp
-  ${PLUGING_SRC_DIR}/shared/base-wrapped-object.cpp
-  ${PLUGING_SRC_DIR}/shared/object-template-helper.cpp
-  ${PLUGING_SRC_DIR}/actors/actor-wrapper.cpp
-  ${PLUGING_SRC_DIR}/actors/actor-api.cpp
-  ${PLUGING_SRC_DIR}/actors/layer-api.cpp
-  ${PLUGING_SRC_DIR}/actors/camera-actor-api.cpp
-  ${PLUGING_SRC_DIR}/controls/control-wrapper.cpp
-  ${PLUGING_SRC_DIR}/controls/item-factory-wrapper.cpp
-  ${PLUGING_SRC_DIR}/controls/item-view-api.cpp
-  ${PLUGING_SRC_DIR}/controls/scroll-view-api.cpp
-  ${PLUGING_SRC_DIR}/constants/constants-wrapper.cpp
-  ${PLUGING_SRC_DIR}/animation/animation-api.cpp
-  ${PLUGING_SRC_DIR}/animation/animation-wrapper.cpp
-  ${PLUGING_SRC_DIR}/animation/constrainer-api.cpp
-  ${PLUGING_SRC_DIR}/animation/linear-constrainer-wrapper.cpp
-  ${PLUGING_SRC_DIR}/animation/path-api.cpp
-  ${PLUGING_SRC_DIR}/animation/path-constrainer-wrapper.cpp
-  ${PLUGING_SRC_DIR}/animation/path-wrapper.cpp
-  ${PLUGING_SRC_DIR}/stage/stage-wrapper.cpp
-  ${PLUGING_SRC_DIR}/events/event-object-generator.cpp
-  ${PLUGING_SRC_DIR}/events/pan-gesture-detector-api.cpp
-  ${PLUGING_SRC_DIR}/events/pan-gesture-detector-wrapper.cpp
-  ${PLUGING_SRC_DIR}/stage/stage-api.cpp
-  ${PLUGING_SRC_DIR}/image/image-wrapper.cpp
-  ${PLUGING_SRC_DIR}/image/image-api.cpp
-  ${PLUGING_SRC_DIR}/image/buffer-image-api.cpp
-  ${PLUGING_SRC_DIR}/image/frame-buffer-image-api.cpp
-  ${PLUGING_SRC_DIR}/image/resource-image-api.cpp
-  ${PLUGING_SRC_DIR}/object/handle-wrapper.cpp
-  ${PLUGING_SRC_DIR}/object/property-buffer-api.cpp
-  ${PLUGING_SRC_DIR}/object/property-buffer-wrapper.cpp
-  ${PLUGING_SRC_DIR}/object/property-value-wrapper.cpp
-  ${PLUGING_SRC_DIR}/signals/signal-manager.cpp
-  ${PLUGING_SRC_DIR}/render-tasks/render-task-list-api.cpp
-  ${PLUGING_SRC_DIR}/render-tasks/render-task-list-wrapper.cpp
-  ${PLUGING_SRC_DIR}/render-tasks/render-task-api.cpp
-  ${PLUGING_SRC_DIR}/render-tasks/render-task-wrapper.cpp
-  ${PLUGING_SRC_DIR}/rendering/geometry-api.cpp
-  ${PLUGING_SRC_DIR}/rendering/geometry-wrapper.cpp
-  ${PLUGING_SRC_DIR}/rendering/texture-set-api.cpp
-  ${PLUGING_SRC_DIR}/rendering/texture-set-wrapper.cpp
-  ${PLUGING_SRC_DIR}/rendering/renderer-api.cpp
-  ${PLUGING_SRC_DIR}/rendering/renderer-wrapper.cpp
-  ${PLUGING_SRC_DIR}/rendering/sampler-api.cpp
-  ${PLUGING_SRC_DIR}/rendering/sampler-wrapper.cpp
-  ${PLUGING_SRC_DIR}/rendering/shader-api.cpp
-  ${PLUGING_SRC_DIR}/rendering/shader-wrapper.cpp
-  ${PLUGING_SRC_DIR}/toolkit/builder/builder-api.cpp
-  ${PLUGING_SRC_DIR}/toolkit/builder/builder-wrapper.cpp
-  ${PLUGING_SRC_DIR}/toolkit/focus-manager/keyboard-focus-manager-api.cpp
-  ${PLUGING_SRC_DIR}/toolkit/focus-manager/keyboard-focus-manager-wrapper.cpp
-  ${PLUGING_SRC_DIR}/signals/dali-any-javascript-converter.cpp
-  ${PLUGING_SRC_DIR}/garbage-collector/garbage-collector.cpp
-  ${PLUGING_SRC_DIR}/module-loader/module.cpp
-  ${PLUGING_SRC_DIR}/module-loader/module-loader.cpp
-)
-set_target_properties(dali_addon PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${builddir}/lib.${TOOLSET}")
-set_target_properties(dali_addon PROPERTIES PREFIX "")
-set_target_properties(dali_addon PROPERTIES LIBRARY_OUTPUT_NAME "dali")
-set_target_properties(dali_addon PROPERTIES SUFFIX ".node")
-set_source_files_properties(${builddir}/lib.${TOOLSET}/dali.node PROPERTIES GENERATED "TRUE")
-set_target_properties(dali_addon PROPERTIES EXCLUDE_FROM_ALL "FALSE")
-
-
-SET(PKG_LIST dali-core
-             dali-adaptor-uv
-             dali-toolkit)
-
-INCLUDE(FindPkgConfig)
-pkg_check_modules(REQUIRED_PKGS REQUIRED ${PKG_LIST})
-
-# This is just pulling out dali / dali-toolkit header locations from pkg-config
-FOREACH(flag ${REQUIRED_PKGS_CFLAGS})
-        SET(REQUIRED_CFLAGS "${REQUIRED_CFLAGS} ${flag}")
-ENDFOREACH(flag)
-
-# Set the include paths to include dali, dali-core, node, v8 and headers for dali-addon
-SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${REQUIRED_CFLAGS} -I${PLUGING_SRC_DIR}/utils -I${PLUGING_SRC_DIR}  -I${NODE_HEADERS} -I ${V8_HEADERS}")
-
-set_target_properties(dali_addon PROPERTIES COMPILE_FLAGS "-fPIC -frtti -fexceptions")
-
-# This sets up the linker flags for dali-core/ adaptor and toolkit
-# we don't need any flags for node / v8 as we're running inside node and v8 is statically linked to it
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${REQUIRED_PKGS_LDFLAGS})
-
-# ${CMAKE_INSTALL_PREFIX}
-#################################### install #####################################
-INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX} )
-
-unset(TOOLSET)
-unset(TARGET)
diff --git a/node-addon/dali-addon.cpp b/node-addon/dali-addon.cpp
deleted file mode 100644 (file)
index 0cb3e5c..0000000
+++ /dev/null
@@ -1,155 +0,0 @@
-/* Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <node.h>
-#include <public-api/dali-core.h>
-#include <dali-toolkit/dali-toolkit.h>
-#include <integration-api/core.h>
-#include <integration-api/adaptors/adaptor.h>
-#include <public-api/adaptor-framework/window.h>
-#include <devel-api/adaptor-framework/singleton-service.h>
-
-// INTERNAL INCLUDES
-#include <dali-wrapper.h>
-#include "javascript-application-options.h"
-
-using namespace Dali;
-
-namespace DaliNodeAddon
-{
-
-class DaliApplication
-{
-public:
-
-    DaliApplication()
-    : mInitialized( false),
-      mSingletonService(SingletonService::New()),
-      mAdaptor( NULL )
-    {
-    }
-
-    ~DaliApplication()
-    {
-      mSingletonService.UnregisterAll();
-      delete mAdaptor;
-      mWindow.Reset();
-    }
-
-    bool Initialized() const
-    {
-      return mInitialized;
-    }
-
-    void Initialize(  ApplicationOptions options )
-    {
-      if( mInitialized )
-      {
-        return;
-      }
-
-      // 1. Create the window ( adaptor requires a window)
-      const WindowOptions& window( options.window);
-
-      mWindow = Window::New( window.positionSize, window.name, window.transparent );
-
-      // 2. create the adaptor
-      Adaptor* adaptor = &Adaptor::New( mWindow );
-
-      // 3. start the adaptor
-      adaptor->Start();
-
-      // fire the scene create signal
-      adaptor->NotifySceneCreated();
-
-      mInitialized = true;
-    }
-private:
-
-    bool mInitialized;
-    SingletonService mSingletonService;
-    Adaptor* mAdaptor;
-    Window mWindow;
-
-};
-
-DaliApplication app;
-
-void CreateDali(const v8::FunctionCallbackInfo<v8::Value>& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope scope(isolate);
-
-  ApplicationOptions options;
-
-  bool ok = GetApplicationOptions( args, options);
-  if (!ok )
-  {
-    isolate->ThrowException( v8::Exception::TypeError( v8::String::NewFromUtf8(isolate, "Please check arguments passed to DALi require") ) );
-    return;
-  }
-
-  app.Initialize( options );
-
-  // the return value from calling the function   require('dali.js)(  options )
-  // is the dali object
-  args.GetReturnValue().Set( V8Plugin::DaliWrapper::CreateWrapperForNodeJS( isolate ) );
-}
-
-
-/**
- * We make module.exports a function so that the developer can pass to
- * parameters to DALi when it's 'required'
- * E.g
- *
- *
- * var window= {
- *        x:10,
- *        y:10,
- *        width:800,
- *        height: 600,
- *        transparent: false,
- *        name:'my-first-dali-app'
- * };
- *
- * var viewMode {
- *       'stereoscopic-mode':'stereo-vertical', // mono, stereo-horizontal, stereo-vertical, stereo-interlaced,
- *       'stereo-base': 65 // Distance in millimeters between left/right cameras typically between (50-70mm)
- * };
- *
- * var options= {
- *    'window': window,
- *    'view-mode': viewMode,
- *    'style-sheet': 'my-theme.json'
- * }
- *
- * var dali = require('dali.js')( options )
- *
- *
- */
-void ExportDaliModule(v8::Handle<v8::Object> exports, v8::Handle<v8::Object> module)
-{
-  NODE_SET_METHOD(module, "exports", CreateDali);
-}
-
-} // namespace DaliNodeAddon
-
-NODE_MODULE(dali, DaliNodeAddon::ExportDaliModule)
-
-
-
-
diff --git a/node-addon/examples/flex-container.js b/node-addon/examples/flex-container.js
deleted file mode 100644 (file)
index 467d2a2..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
- var window = {
-           x:0,
-           y:0,
-           width:1920,
-           height:1080,
-           transparent: false,
-           name:'Flexbox Demo'
- };
-
- var options = {
-    'window': window
- }
-
-try {
-  // target
-  var dali = require('dali')( options );
-}
-catch(err) {
-  // desktop
-  var dali = require('../build/Release/dali')( options );
-}
-
-var imageDir = "./images/";
-
-var imageView;
-var currentImageIndex = 0;
-var imageNames = ["image-1.jpg", "image-2.jpg", "image-3.jpg"];
-
-var daliApp = {};
-
-daliApp.init = function() {
-
-  // Create the main flex container
-  var flexContainer = new dali.Control("FlexContainer");
-  flexContainer.parentOrigin = dali.TOP_LEFT;
-  flexContainer.anchorPoint = dali.TOP_LEFT;
-  flexContainer.widthResizePolicy = "FILL_TO_PARENT";
-  flexContainer.heightResizePolicy = "FILL_TO_PARENT";
-  flexContainer.backgroundColor = dali.COLOR_WHITE;
-  flexContainer.flexDirection = "column"; // display toolbar and content vertically
-
-  dali.stage.add( flexContainer );
-
-  // Create the toolbar area
-  var toolBar = new dali.Control("FlexContainer");
-  toolBar.parentOrigin = dali.TOP_LEFT;
-  toolBar.anchorPoint = dali.TOP_LEFT;
-  toolBar.backgroundColor = dali.COLOR_CYAN;
-  toolBar.flexDirection = "row"; // display toolbar items horizontally
-  toolBar.alignItems = "center"; // align toolbar items vertically center
-  toolBar.flex = 0.1; // 10 percent of available space in the cross axis
-
-  flexContainer.add(toolBar);
-
-  // Create the content area
-  var content = new dali.Control("FlexContainer");
-  content.parentOrigin = dali.TOP_LEFT;
-  content.anchorPoint = dali.TOP_LEFT;
-  content.flexDirection = "row";
-  content.alignItems = "center"; // align items vertically center
-  content.justifyContent = "center"; // align items horizontally center
-  content.flex = 0.9; // 90 percent of available space in the cross axis
-
-  flexContainer.add(content);
-
-  // Add a button to the left of the toolbar
-  var prevButton = new dali.Control("PushButton");
-  prevButton.name = "Prev";
-  prevButton.parentOrigin = dali.TOP_LEFT;
-  prevButton.anchorPoint = dali.TOP_LEFT;
-  prevButton.minimumSize = [100.0, 60.0]; // this is the minimum size the button should keep
-  prevButton.labelText = "Prev";
-  prevButton.flexMargin = [10, 10, 10, 10]; // set 10 pixel margin around the button
-
-  toolBar.add( prevButton );
-
-  // Add a title to the center of the toolbar
-  var title = new dali.Control("TextLabel");
-  title.parentOrigin = dali.TOP_LEFT;
-  title.anchorPoint = dali.TOP_LEFT;
-  title.widthResizePolicy = "USE_NATURAL_SIZE";
-  title.heightResizePolicy = "USE_NATURAL_SIZE";
-  title.horizontalAlignment = "CENTER";
-  title.verticalAlignment = "CENTER";
-  title.text = "Gallery";
-  title.pointSize = 28;
-  title.flex = 1.0; // take all the available space left apart from the two buttons
-  title.flexMargin = [10, 10, 10, 10]; // set 10 pixel margin around the title
-
-  toolBar.add( title );
-
-  // Add a button to the right of the toolbar
-  var nextButton = new dali.Control("PushButton");
-  nextButton.name = "Next";
-  nextButton.parentOrigin = dali.TOP_LEFT;
-  nextButton.anchorPoint = dali.TOP_LEFT;
-  nextButton.minimumSize = [100.0, 60.0]; // this is the minimum size the button should keep
-  nextButton.labelText = "Next";
-  nextButton.flexMargin = [10, 10, 10, 10]; // set 10 pixel margin around the button
-
-  toolBar.add( nextButton );
-
-  // Add an image to the center of the content area
-  imageView = new dali.Control("ImageView");
-  imageView.image = imageDir + imageNames[currentImageIndex];
-  imageView.parentOrigin = dali.TOP_LEFT;
-  imageView.anchorPoint = dali.TOP_LEFT;
-  content.add( imageView );
-
-  // Connect signal callback to button pressed signal
-  prevButton.on("pressed", daliApp.buttonPressedEvent);
-  nextButton.on("pressed", daliApp.buttonPressedEvent);
-}
-
-daliApp.buttonPressedEvent = function( button ) {
-
-  // Set the size of image view to its natural size
-  imageView.widthResizePolicy = "USE_NATURAL_SIZE";
-  imageView.heightResizePolicy = "USE_NATURAL_SIZE";
-
-  // Work out the index of the new image
-  if (button.name == "Prev") {
-    currentImageIndex--;
-  }
-  else {
-    currentImageIndex++;
-  }
-  currentImageIndex %= imageNames.length;
-
-  // Display the new image
-  imageView.image = imageDir + imageNames[Math.abs(currentImageIndex)];
-}
-
-function startup() {
-
-  daliApp.init();
-}
-
-startup();
-
diff --git a/node-addon/examples/images/icon-0.png b/node-addon/examples/images/icon-0.png
deleted file mode 100755 (executable)
index 8d300e9..0000000
Binary files a/node-addon/examples/images/icon-0.png and /dev/null differ
diff --git a/node-addon/examples/images/icon-1.png b/node-addon/examples/images/icon-1.png
deleted file mode 100755 (executable)
index bfed8ac..0000000
Binary files a/node-addon/examples/images/icon-1.png and /dev/null differ
diff --git a/node-addon/examples/images/icon-2.png b/node-addon/examples/images/icon-2.png
deleted file mode 100755 (executable)
index db892fb..0000000
Binary files a/node-addon/examples/images/icon-2.png and /dev/null differ
diff --git a/node-addon/examples/images/image-1.jpg b/node-addon/examples/images/image-1.jpg
deleted file mode 100644 (file)
index 155ab30..0000000
Binary files a/node-addon/examples/images/image-1.jpg and /dev/null differ
diff --git a/node-addon/examples/images/image-2.jpg b/node-addon/examples/images/image-2.jpg
deleted file mode 100644 (file)
index e855ecf..0000000
Binary files a/node-addon/examples/images/image-2.jpg and /dev/null differ
diff --git a/node-addon/examples/images/image-3.jpg b/node-addon/examples/images/image-3.jpg
deleted file mode 100644 (file)
index 8dee462..0000000
Binary files a/node-addon/examples/images/image-3.jpg and /dev/null differ
diff --git a/node-addon/examples/item-view.js b/node-addon/examples/item-view.js
deleted file mode 100644 (file)
index 4b3e0dc..0000000
+++ /dev/null
@@ -1,145 +0,0 @@
- var window= {
-           x:0,
-           y:0,
-           width:1920,
-           height: 1080,
-           transparent: false,
-           name:'itemview-example'
- };
-
- var viewMode={
-       'stereoscopic-mode':'mono', // stereo-horizontal, stereo-vertical, stereo-interlaced,
-       'stereoBase': 65 // Distance in millimeters between left/right cameras typically between (50-70mm)
- };
-
- var options= {
-    'window': window,
-    'viewMode': viewMode,
- }
-
-try {
-  // target
-  var dali = require('dali')( options );
-}
-catch(err) {
-  // desktop
-  var dali = require('../build/Release/dali')( options );
-}
-
-var items = [];
-var button;
-var stageSize;
-
-var itemView;
-var itemFactory;
-
-var currentLayoutIndex = 0;
-var totalItemCount = 100;
-
-var imageDir = "./images/";
-
-var daliApp = {};
-
-daliApp.createItemView = function() {
-
-  // Create item view data
-  var itemViewData = [];
-  for (var itemId = 0; itemId < totalItemCount; itemId++)
-  {
-    var data = {};
-    data["template"] = "template-item-list"; // Create items initially with list template
-    data["icon_path"] = imageDir + "icon-" + itemId % 3 + ".png";
-    data["title_text"] = "Item " + itemId;
-    itemViewData[itemId] = data;
-  }
-
-  // Create item factory and set the data
-  itemFactory = new dali.ItemFactory();
-  itemFactory.jsonTemplateFile = "./scripts/item-template.json";
-  itemFactory.data = itemViewData;
-
-  // Create item view
-  stageSize = dali.stage.getSize();
-  itemView = new dali.Control("ItemView", itemFactory);
-  itemView.size = [stageSize.x, stageSize.y, 0.0];
-  itemView.parentOrigin = dali.CENTER_LEFT;
-  itemView.anchorPoint = dali.CENTER_LEFT;
-  itemView.refreshInterval = 4.0;
-
-  // Add item view to the stage
-  dali.stage.add( itemView );
-
-  // Create scroll bar for item view
-  var scrollBar = new dali.Control("ScrollBar");
-  scrollBar.parentOrigin = dali.TOP_RIGHT;
-  scrollBar.anchorPoint = dali.TOP_RIGHT;
-  scrollBar.widthResizePolicy = "FIT_TO_CHILDREN";
-  scrollBar.heightResizePolicy = "FILL_TO_PARENT";
-  itemView.add(scrollBar);
-
-  // Add the list and grid layouts
-  itemView.addLayout(dali.ITEM_LAYOUT_LIST); // layout index 0
-  itemView.addLayout(dali.ITEM_LAYOUT_GRID); // layout index 1
-
-  // Set custom item size for list layout
-  itemView.setItemSize(0, [stageSize.x, stageSize.y * 0.1, 0.0]);
-
-  // Set custom item size for grid layout
-  var layoutMargin = 120;
-  itemView.setItemSize(1, [(stageSize.x - layoutMargin) / 4, stageSize.y * 0.2, 0.0]);
-
-  // Activate the list layout
-  itemView.activateLayout(0, itemView.size);
-
-  // Create button for layout switching
-  button = new dali.Control("PushButton");
-  button.size = [100.0, 60.0, 0.0];
-  button.position = [-20.0, 20.0, 0.0];
-  button.parentOrigin = dali.TOP_RIGHT;
-  button.anchorPoint = dali.TOP_RIGHT;
-  button.labelText = "Switch";
-  dali.stage.add( button );
-
-  // Connect a signal callback to button pressed signal
-  button.on("pressed", daliApp.buttonPressedEvent);
-}
-
-daliApp.buttonPressedEvent = function( button ) {
-
-  // Calculate the layout index for the next layout to switch to
-  currentLayoutIndex++;
-  currentLayoutIndex = currentLayoutIndex % itemView.getLayoutCount();
-
-  // Activate the next layout
-  itemView.activateLayout(currentLayoutIndex, [stageSize.x, stageSize.y, 0.0], 0.0);
-
-  // Change the item template in item view data as we want to change the layout of the items
-  var data = itemFactory.data;
-  for (var itemId = 0; itemId < totalItemCount; itemId++)
-  {
-    if(currentLayoutIndex == 0)
-    {
-      // List layout
-      data[itemId]["template"] = "template-item-list"; // Create items with list template
-    }
-    else
-    {
-      // Grid layout
-      data[itemId]["template"] = "template-item-grid"; // Create items with grid template
-    }
-  }
-  itemFactory.data = data;
-}
-
-function startup()
-{
-  daliApp.init();
-}
-
-daliApp.init = function()
-{
-  daliApp.createItemView();
-}
-
-startup();
-
diff --git a/node-addon/examples/line-mesh.js b/node-addon/examples/line-mesh.js
deleted file mode 100644 (file)
index e26948f..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
- var window= {
-           x:0,
-           y:0,
-           width:1920,
-           height: 1080,
-           transparent: false,
-           name:'line-mesh-app'
- };
-
- var viewMode={
-       'stereoscopic-mode':'mono', // stereo-horizontal, stereo-vertical, stereo-interlaced,
-       'stereo-base': 65 // Distance in millimeters between left/right cameras typically between (50-70mm)
- };
-
- var options= {
-    'window': window,
-    'view-mode': viewMode,
- }
-
-try {
-  // target
-  var dali = require('dali')( options );
-}
-catch(err) {
-  // desktop
-  var dali = require('../build/Release/dali')( options );
-}
-
-var daliApp = {};
-
-daliApp.createMeshActor = function() {
-
-      // Create shader
-      var vertShader =
-               "attribute mediump vec2    aPosition1;\
-                attribute mediump vec2    aPosition2;\
-                uniform   mediump mat4    uMvpMatrix;\
-                uniform   mediump vec3    uSize;\
-                uniform   mediump float   uMorphAmount;\
-                void main()\
-                {\
-                  mediump vec2 morphPosition = mix(aPosition1, aPosition2, uMorphAmount);\
-                  mediump vec4 vertexPosition = vec4(morphPosition, 0.0, 1.0);\
-                  vertexPosition.xyz *= uSize;\
-                  vertexPosition = uMvpMatrix * vertexPosition;\
-                  gl_Position = vertexPosition;\
-                }";
-
-      var fragShader =
-               "uniform lowp  vec4    uColor;\
-                uniform sampler2D     sTexture;\
-                void main()\
-                {\
-                  gl_FragColor = uColor;\
-                }";
-
-      var shaderOptions = {
-              vertexShader : vertShader,
-              fragmentShader: fragShader
-          };
-
-      var shader = new dali.Shader(shaderOptions);
-
-      // Create vertex buffer
-      var pentagonVertexFormat ={ "aPosition1" : dali.PROPERTY_VECTOR2 };
-
-      var pentagonVertexData = [    0,     1,
-                                -0.95,  0.31,
-                                -0.59, -0.81,
-                                 0.59, -0.81,
-                                 0.95,  0.31];
-
-      var pentagonVertexDataArray = new Float32Array(pentagonVertexData.length);
-      pentagonVertexDataArray.set(pentagonVertexData, 0);
-      var pentagonVertices = new dali.PropertyBuffer(pentagonVertexFormat);
-      pentagonVertices.setData(pentagonVertexDataArray, 5);
-
-      var pentacleVertexFormat ={ "aPosition2" : dali.PROPERTY_VECTOR2};
-
-      var pentacleVertexData = [    0,    -1,
-                                 0.59,  0.81,
-                                -0.95, -0.31,
-                                 0.95, -0.31,
-                                -0.59,  0.81];
-
-      var pentacleVertexDataArray = new Float32Array(pentacleVertexData.length);
-      pentacleVertexDataArray.set(pentacleVertexData, 0);
-      var pentacleVertices = new dali.PropertyBuffer(pentacleVertexFormat);
-      pentacleVertices.setData(pentacleVertexDataArray, 5);
-
-      var indexFormat ={ "indices" : dali.PROPERTY_INTEGER };
-
-      var indexData = [0, 1, 1, 2, 2, 3, 3, 4, 4, 0];
-
-      var indexDataArray = new Uint32Array(indexData.length);
-      indexDataArray.set(indexData, 0);
-
-      // Create geometry
-      var geometry = new dali.Geometry();
-      geometry.addVertexBuffer( pentagonVertices );
-      geometry.addVertexBuffer( pentacleVertices );
-      geometry.setIndexBuffer( indexDataArray, 10 );
-      geometry.setType( dali.GEOMETRY_LINES );
-
-      var renderer = new dali.Renderer(geometry, shader);
-      renderer.depthIndex = 0;
-
-      // Create mesh actor
-      var meshActor = new dali.Actor();
-      meshActor.addRenderer( renderer );
-      meshActor.size = [300, 300, 0];
-      meshActor.parentOrigin = dali.CENTER;
-      meshActor.anchorPoint = dali.CENTER;
-      meshActor.registerAnimatableProperty("uMorphAmount", 0.0);
-
-      dali.stage.add( meshActor );
-
-      // Animate the mesh actor
-      var animation = new dali.Animation(5);
-
-      var keyFramesIndex = [{progress:0.0, value: 0.0}, {progress:1.0, value:1.0}];
-      var animOptions = { alpha:dali.ALPHA_FUNCTION_SIN, delay:0, duration:5};
-
-      animation.animateBetween( meshActor, "uMorphAmount", keyFramesIndex, animOptions );
-      animation.setLooping(true);
-      animation.play();
-}
-
-function startup()
-{
-  daliApp.init();
-}
-
-daliApp.init = function()
-{
-  daliApp.createMeshActor();
-}
-
-
-startup();
-
diff --git a/node-addon/examples/mesh-morph.js b/node-addon/examples/mesh-morph.js
deleted file mode 100644 (file)
index 14f3888..0000000
+++ /dev/null
@@ -1,263 +0,0 @@
- var window= {
-           x:0,
-           y:0,
-           width:1920,
-           height: 1080,
-           transparent: false,
-           name:'mesh-morph-app'
- };
-
- var viewMode={
-       'stereoscopic-mode':'mono', // stereo-horizontal, stereo-vertical, stereo-interlaced,
-       'stereo-base': 65 // Distance in millimeters between left/right cameras typically between (50-70mm)
- };
-
- var options= {
-    'window': window,
-    'view-mode': viewMode,
- }
-
-try {
-  // target
-  var dali = require('dali')( options );
-}
-catch(err) {
-  // desktop
-  var dali = require('../build/Release/dali')( options );
-}
-
-var daliApp = {};
-
-daliApp.createMeshActor = function() {
-
-      // Create shader
-      var vertShader =
-                  "attribute mediump vec2    aInitPos;\
-                attribute mediump vec2    aFinalPos;\
-                attribute mediump vec3    aColor;\
-                uniform   mediump mat4    uMvpMatrix;\
-                uniform   mediump vec3    uSize;\
-                uniform   mediump float   uDelta;\
-                uniform   lowp    vec4    uColor;\
-                varying   lowp    vec4    vColor;\
-                void main()\
-                {\
-                  mediump vec4 vertexPosition = vec4(mix(aInitPos, aFinalPos, uDelta), 0.0, 1.0);\
-                  vertexPosition.xyz *= uSize;\
-                  vertexPosition = uMvpMatrix * vertexPosition;\
-                  gl_Position = vertexPosition;\
-                  vColor = vec4(aColor, 0.) * uColor;\
-                }";
-
-      var fragShader =
-               "varying lowp vec4 vColor;\
-                void main()\
-                {\
-                  gl_FragColor = vColor;\
-                }";
-
-      var shaderOptions = {
-              vertexShader : vertShader,
-              fragmentShader : fragShader
-          };
-
-      var shader = new dali.Shader(shaderOptions);
-
-      // Create vertex buffer for initial positions
-      var initialPositionVertexFormat = { "aInitPos" : dali.PROPERTY_VECTOR2 };
-
-      var initialPositionVertexData = [
-                                       // yellow
-                                       -0.50, -0.50,
-                                         0.0,   0.0,
-                                       -0.50,  0.50,
-
-                                       // green
-                                       -0.50, -0.50,
-                                        0.50, -0.50,
-                                         0.0,   0.0,
-
-                                       // blue
-                                        0.50, -0.50,
-                                        0.50,   0.0,
-                                        0.25, -0.25,
-
-                                       // red
-                                        0.25, -0.25,
-                                        0.50,   0.0,
-                                        0.25,  0.25,
-                                        0.25,  0.25,
-                                         0.0,   0.0,
-                                        0.25, -0.25,
-
-                                       // cyan
-                                         0.0,   0.0,
-                                        0.25,  0.25,
-                                       -0.25,  0.25,
-
-                                       // magenta
-                                       -0.25,  0.25,
-                                        0.25,  0.25,
-                                         0.0,  0.50,
-                                         0.0,  0.50,
-                                       -0.50,  0.50,
-                                       -0.25,  0.25,
-
-                                        // orange
-                                        0.50,   0.0,
-                                        0.50,  0.50,
-                                         0.0,  0.50
-                                      ];
-
-      var initialPositionVertexDataArray = new Float32Array(initialPositionVertexData.length);
-      initialPositionVertexDataArray.set(initialPositionVertexData, 0);
-      var initialPositionVertices = new dali.PropertyBuffer(initialPositionVertexFormat);
-      initialPositionVertices.setData(initialPositionVertexDataArray, 27);
-
-      // Create vertex buffer for final positions
-      var finalPositionVertexFormat = { "aFinalPos" : dali.PROPERTY_VECTOR2 };
-
-      var bigSide = 0.707106781;
-      var side = bigSide * 0.5;
-
-      var finalPositionVertexData = [
-                                     // yellow
-                                               side,                        0.25, // pA
-                                               side,              0.25 + bigSide, // pB
-                                     side - bigSide,              0.25 + bigSide, // pC
-
-                                     // green
-                                        side - 0.50,                       -0.25, // pD
-                                               side,                        0.25, // pA
-                                        side - 0.50,                        0.75, // pE
-
-                                     // blue
-                                        side - 0.50,                       -0.75, // pJ
-                                        side - 0.50,                       -0.25, // pD
-                                        side - 0.75,                       -0.50, // pI
-
-                                     // red
-                                        side - 0.75,                       -0.50, // pI
-                                        side - 0.50,                       -0.25, // pD
-                                        side - 0.75,                         0.0, // pG
-                                        side - 0.75,                         0.0, // pG
-                                         side - 1.0,                       -0.25, // pH
-                                        side - 0.75,                       -0.50, // pI
-
-                                     // cyan
-                                        side - 0.75,                       -0.50, // pI
-                                         side - 1.0,                       -0.25, // pH
-                                         side - 1.0,                       -0.75, // pK
-
-                                     // magenta
-                                               side,       0.25 + bigSide - side, // pL
-                                         side * 2.0, 0.25 + bigSide - side * 2.0, // pM
-                                         side * 2.0,       0.25 + bigSide - side, // pN
-                                         side * 2.0,       0.25 + bigSide - side, // pN
-                                               side,              0.25 + bigSide, // pB
-                                               side,       0.25 + bigSide - side, // pL
-
-                                     // orange
-                                        side - 0.50,                       -0.25, // pD
-                                        side - 0.50,             -0.25 + bigSide, // pF2
-                                             - 0.50,                -0.25 + side  // pF
-                                    ];
-
-      var finalPositionVertexDataArray = new Float32Array(finalPositionVertexData.length);
-      finalPositionVertexDataArray.set(finalPositionVertexData, 0);
-      var finalPositionVertices = new dali.PropertyBuffer(finalPositionVertexFormat);
-      finalPositionVertices.setData(finalPositionVertexDataArray, 27);
-
-      // Create vertex buffer for color
-      var colorVertexFormat = { "aColor" : dali.PROPERTY_VECTOR3 };
-
-      var colorVertexData = [
-                             // yellow
-                             1.0, 1.0, 0.0,
-                             1.0, 1.0, 0.0,
-                             1.0, 1.0, 0.0,
-
-                             // green
-                             0.0, 1.0, 0.0,
-                             0.0, 1.0, 0.0,
-                             0.0, 1.0, 0.0,
-
-                             // blue
-                             0.0, 0.0, 1.0,
-                             0.0, 0.0, 1.0,
-                             0.0, 0.0, 1.0,
-
-                             // red
-                             1.0, 0.0, 0.0,
-                             1.0, 0.0, 0.0,
-                             1.0, 0.0, 0.0,
-                             1.0, 0.0, 0.0,
-                             1.0, 0.0, 0.0,
-                             1.0, 0.0, 0.0,
-
-                             // cyan
-                             0.0, 1.0, 1.0,
-                             0.0, 1.0, 1.0,
-                             0.0, 1.0, 1.0,
-
-                             // magenta
-                             1.0, 0.0, 1.0,
-                             1.0, 0.0, 1.0,
-                             1.0, 0.0, 1.0,
-                             1.0, 0.0, 1.0,
-                             1.0, 0.0, 1.0,
-                             1.0, 0.0, 1.0,
-
-                             // orange
-                             1.0, 0.5, 0.0,
-                             1.0, 0.5, 0.0,
-                             1.0, 0.5, 0.0
-                            ];
-
-      var colorVertexDataArray = new Float32Array(colorVertexData.length);
-      colorVertexDataArray.set(colorVertexData, 0);
-      var colorVertices = new dali.PropertyBuffer(colorVertexFormat);
-      colorVertices.setData(colorVertexDataArray, 27);
-
-      // Create geometry
-      var geometry = new dali.Geometry();
-      geometry.addVertexBuffer( initialPositionVertices );
-      geometry.addVertexBuffer( finalPositionVertices );
-      geometry.addVertexBuffer( colorVertices );
-
-      var renderer = new dali.Renderer(geometry, shader);
-      renderer.depthIndex = 0;
-
-      // Create mesh actor
-      var meshActor = new dali.Actor();
-      meshActor.addRenderer( renderer );
-      meshActor.size = [400, 400, 0];
-      meshActor.parentOrigin = dali.CENTER;
-      meshActor.anchorPoint = dali.CENTER;
-      meshActor.registerAnimatableProperty("uDelta", 0.0);
-
-      dali.stage.add( meshActor );
-
-      // Animate the mesh actor
-      var animation = new dali.Animation(5);
-
-      var animOptions = { alpha:dali.ALPHA_FUNCTION_SIN, delay:0, duration:5};
-
-      animation.animateTo( meshActor, "uDelta", 1.0, animOptions );
-      animation.setLooping(true);
-      animation.play();
-}
-
-function startup()
-{
-  daliApp.init();
-}
-
-daliApp.init = function()
-{
-  daliApp.createMeshActor();
-}
-
-
-startup();
-
diff --git a/node-addon/examples/point-mesh.js b/node-addon/examples/point-mesh.js
deleted file mode 100644 (file)
index 0ae3bab..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
- var window= {
-           x:0,
-           y:0,
-           width:1920,
-           height: 1080,
-           transparent: false,
-           name:'line-mesh-app'
- };
-
- var viewMode={
-       'stereoscopic-mode':'mono', // stereo-horizontal, stereo-vertical, stereo-interlaced,
-       'stereo-base': 65 // Distance in millimeters between left/right cameras typically between (50-70mm)
- };
-
- var options= {
-    'window': window,
-    'view-mode': viewMode,
- }
-
-var imageDir = "./images/";
-
-
-try {
-  // target
-  var dali = require('dali')( options );
-}
-catch(err) {
-  // desktop
-  var dali = require('../build/Release/dali')( options );
-}
-
-var daliApp = {};
-
-daliApp.createMeshActor = function() {
-
-      // Create shader
-      var vertShader =
-               "attribute mediump vec2    aPosition;\
-                attribute highp   float   aHue;\
-                varying   mediump vec2    vTexCoord;\
-                uniform   mediump mat4    uMvpMatrix;\
-                uniform   mediump vec3    uSize;\
-                uniform   mediump float   uPointSize;\
-                uniform   lowp    vec4    uFadeColor;\
-                varying   mediump vec3    vVertexColor;\
-                varying   mediump float   vHue;\
-                vec3 hsv2rgb(vec3 c)\
-                {\
-                  vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\
-                  vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);\
-                  return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);\
-                }\
-                void main()\
-                {\
-                  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);\
-                  vertexPosition.xyz *= (uSize-uPointSize);\
-                  vertexPosition = uMvpMatrix * vertexPosition;\
-                  vVertexColor = hsv2rgb( vec3( aHue, 0.7, 1.0 ) );\
-                  vHue = aHue;\
-                  gl_PointSize = uPointSize;\
-                  gl_Position = vertexPosition;\
-                }";
-
-      var fragShader =
-               "varying mediump vec3  vVertexColor;\
-                varying mediump float vHue;\
-                uniform lowp  vec4    uColor;\
-                uniform sampler2D     sTexture1;\
-                uniform sampler2D     sTexture2;\
-                uniform lowp vec4     uFadeColor;\
-                void main()\
-                {\
-                  mediump vec4 texCol1 = texture2D(sTexture1, gl_PointCoord);\
-                  mediump vec4 texCol2 = texture2D(sTexture2, gl_PointCoord);\
-                  gl_FragColor = vec4(vVertexColor, 1.0) * ((texCol1*vHue) + (texCol2*(1.0-vHue)));\
-                }";
-
-      var shaderOptions = {
-              vertexShader : vertShader,
-              fragmentShader: fragShader
-          };
-
-      var shader = new dali.Shader(shaderOptions);
-
-      var image = new dali.ResourceImage( {url: imageDir + "image-1.jpg"} );
-      var textureSet = new dali.TextureSet;
-      textureSet.setImage(0, image);
-
-      // Create vertex buffer
-      var polyhedraVertexFormat ={ "aPosition" : dali.PROPERTY_VECTOR2,
-                                     "aHue"      : dali.PROPERTY_FLOAT    };
-
-      var numSides = 20;
-      var angle = 0;
-      var sectorAngle = 2.0 * Math.PI / numSides;
-
-      var polyhedraVertexData = [];
-      for(i=0; i<numSides; ++i)
-      {
-        var positionX = Math.sin(angle) * 0.5;
-        var positionY = Math.cos(angle) * 0.5;
-        var hue = angle / ( 2.0 * Math.PI);
-
-        polyhedraVertexData[i*3+0] = positionX;
-        polyhedraVertexData[i*3+1] = positionY;
-        polyhedraVertexData[i*3+2] = hue;
-
-        angle += sectorAngle;
-      }
-
-      var polyhedraVertexDataArray = new Float32Array(polyhedraVertexData.length);
-      polyhedraVertexDataArray.set(polyhedraVertexData, 0);
-      var polyhedraVertices = new dali.PropertyBuffer(polyhedraVertexFormat);
-      polyhedraVertices.setData(polyhedraVertexDataArray, numSides);
-
-      // Create geometry
-      var geometry = new dali.Geometry();
-      geometry.addVertexBuffer( polyhedraVertices );
-      geometry.setType( dali.GEOMETRY_POINTS );
-
-      var renderer = new dali.Renderer(geometry, shader);
-      renderer.setTextures(textureSet);
-      renderer.registerAnimatableProperty("uFadeColor", [1.0, 0.0, 1.0, 1.0]); // Green
-      renderer.registerAnimatableProperty("uPointSize", 80.0);
-      renderer.depthIndex = 0;
-
-      // Create mesh actor
-      var meshActor = new dali.Actor();
-      meshActor.addRenderer( renderer );
-      meshActor.size = [400, 400, 0];
-      meshActor.parentOrigin = dali.CENTER;
-      meshActor.anchorPoint = dali.CENTER;
-      meshActor.registerAnimatableProperty("uFadeColor", [0.0, 1.0, 0.0, 1.0]); // Magenta
-
-      dali.stage.add( meshActor );
-
-      // Animate the mesh actor
-      var animation = new dali.Animation(5);
-      var animOptions = { alpha:dali.ALPHA_FUNCTION_LINEAR, delay:0, duration:5};
-      var rotation = new dali.Rotation(360,0,0,1);
-      animation.animateBy( meshActor, "orientation", rotation, animOptions );
-      animation.setLooping(true);
-      animation.play();
-}
-
-function startup()
-{
-  daliApp.init();
-}
-
-daliApp.init = function()
-{
-  daliApp.createMeshActor();
-}
-
-
-startup();
-
diff --git a/node-addon/examples/scripts/item-template.json b/node-addon/examples/scripts/item-template.json
deleted file mode 100644 (file)
index f6e7e64..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-{
-  "templates":
-  {
-    "template-item-list":
-    {
-      "name":"item",
-      "type":"Actor",
-      "position":[0,0,0],
-      "anchorPoint":"TOP_LEFT",
-      "parentOrigin":"TOP_LEFT",
-      "actors":
-       [
-        {
-          "name":"icon",
-          "type":"ImageView",
-          "image":
-          {
-            "visualType" : "IMAGE",
-            "url": "{icon_path}"
-          },
-          "position":[20.0, 0.0, 0.0],
-          "size":[70.0, 70.0, 0.0],
-          "color":[1.0,1.0,1.0,1.0],
-          "anchorPoint":"CENTER_LEFT",
-          "parentOrigin":"CENTER_LEFT",
-          "actors":
-          [
-            {
-              "name":"title",
-              "anchorPoint":"CENTER_LEFT",
-              "parentOrigin":"CENTER_RIGHT",
-              "type":"TextLabel",
-              "position": [30.0, 0.0, 0.0],
-              "size":[200.0, 70.0, 0.0],
-              "pointSize":30,
-              "fontFamily":"HelveticaNeue",
-              "fontStyle":"Bold",
-              "horizontalAlignment":"BEGIN",
-              "verticalAlignment":"CENTER",
-              "textColor": [1.0,0.0,1.0,1.0],
-              "text":"{title_text}"
-            }
-          ]
-        }
-      ]
-    },
-
-    "template-item-grid":
-    {
-      "name":"item",
-      "type":"Actor",
-      "position":[0,0,0],
-      "anchorPoint":"TOP_LEFT",
-      "parentOrigin":"TOP_LEFT",
-      "actors":
-       [
-        {
-          "name":"icon",
-          "type":"ImageView",
-          "image":
-          {
-            "visualType" : "IMAGE",
-            "url": "{icon_path}"
-          },
-          "position":[0.0, -10.0, 0.0],
-          "size":[70.0, 70.0, 0.0],
-          "color":[1.0,1.0,1.0,1.0],
-          "anchorPoint":"CENTER",
-          "parentOrigin":"CENTER",
-          "actors":
-          [
-            {
-              "name":"title",
-              "anchorPoint":"TOP_CENTER",
-              "parentOrigin":"BOTTOM_CENTER",
-              "type":"TextLabel",
-              "position": [0.0,10.0,0.0],
-              "size":[100.0, 100.0, 0.0],
-              "pointSize":22,
-              "fontFamily":"HelveticaNeue",
-              "fontStyle":"Bold",
-              "horizontalAlignment":"CENTER",
-              "textColor": [1.0,0.0,1.0,1.0],
-              "text":"{title_text}"
-            }
-          ]
-        }
-      ]
-    }
-  }
-}
-
diff --git a/node-addon/examples/scroll-view.js b/node-addon/examples/scroll-view.js
deleted file mode 100644 (file)
index eab2bc2..0000000
+++ /dev/null
@@ -1,133 +0,0 @@
- var window= {
-           x:0,
-           y:0,
-           width:1920,
-           height:1080,
-           transparent: false,
-           name:'scrollview-example'
- };
-
- var viewMode={
-       'stereoscopic-mode':'mono', // stereo-horizontal, stereo-vertical, stereo-interlaced,
-       'stereoBase': 65 // Distance in millimeters between left/right cameras typically between (50-70mm)
- };
-
- var options= {
-    'window': window,
-    'viewMode': viewMode,
- }
-
-try {
-  // target
-  var dali = require('dali')( options );
-}
-catch(err) {
-  // desktop
-  var dali = require('../build/Release/dali')( options );
-}
-
-var stageSize;
-var scrollView;
-var scrollBar;
-
-var imageDir = "./images/";
-
-var daliApp = {};
-
-daliApp.createScrollView = function() {
-
-  // Create a scroll view
-  scrollView = new dali.Control("ScrollView");
-  stageSize = dali.stage.getSize();
-  scrollView.size = [stageSize.x, stageSize.y, 0.0];
-  scrollView.parentOrigin = dali.CENTER;
-  scrollView.anchorPoint = dali.CENTER;
-
-  dali.stage.add( scrollView );
-
-  // Add actors to a scroll view with 4 pages
-  var pageRows = 1;
-  var pageColumns = 3;
-  for(var pageRow = 0; pageRow < pageRows; pageRow++)
-  {
-    for(var pageColumn = 0; pageColumn < pageColumns; pageColumn++)
-    {
-      var pageActor = new dali.Control();
-      pageActor.widthResizePolicy = "FILL_TO_PARENT";
-      pageActor.heightResizePolicy = "FILL_TO_PARENT";
-      pageActor.parentOrigin = dali.CENTER;
-      pageActor.anchorPoint = dali.CENTER;
-      pageActor.position = [pageColumn * stageSize.x, pageRow * stageSize.y, 0.0];
-      pageActor.name = "pageActor" + pageColumn;
-
-      // Add images in a 5x4 grid layout for each page
-      var imageRows = 4;
-      var imageColumns = 5;
-      var margin = 10.0;
-      var imageSize = [(stageSize.x / imageColumns) - margin, (stageSize.y / imageRows) - margin, 0.0];
-
-      for(var row = 0; row < imageRows; row++)
-      {
-        for(var column = 0; column < imageColumns;column++)
-        {
-          var imageView = new dali.Control("ImageView");
-          var imageId = (row * imageColumns + column) % 2 + 1;
-          imageView.image = imageDir + "image-" + imageId + ".jpg";
-          imageView.parentOrigin = dali.CENTER;
-          imageView.anchorPoint = dali.CENTER;
-          imageView.size = imageSize;
-          imageView.position = [ margin * 0.5 + (imageSize[0] + margin) * column - stageSize.x * 0.5 + imageSize[0] * 0.5,
-                                 margin * 0.5 + (imageSize[1] + margin) * row - stageSize.y * 0.5 + imageSize[1] * 0.5,
-                                 0.0 ];
-          pageActor.add(imageView);
-          var position = imageView.position;
-        }
-      }
-
-      scrollView.add( pageActor );
-    }
-  }
-
-  // Set scroll view to have 3 pages in X axis and allow page snapping,
-  // and also disable scrolling in Y axis.
-  var scrollMode = {
-                     xAxisScrollEnabled  : true,
-                     xAxisSnapToInterval : stageSize.x,                // Define the snap points
-                     xAxisScrollBoundary : stageSize.x * pageColumns,  // i.e. Define 3 pages
-                     yAxisScrollEnabled  : false
-                   }
-
-  scrollView.setScrollMode(scrollMode);
-
-  // Create a horizontal scroll bar in the bottom of scroll view (optional)
-  scrollBar = new dali.Control("ScrollBar");
-  scrollBar.parentOrigin = dali.BOTTOM_LEFT;
-  scrollBar.anchorPoint = dali.TOP_LEFT;
-  scrollBar.widthResizePolicy = "FIT_TO_CHILDREN";
-  scrollBar.heightResizePolicy = "FILL_TO_PARENT";
-  scrollBar.orientation = [0, 0, 270];
-  scrollBar.scrollDirection = "Horizontal";
-  scrollView.add(scrollBar);
-
-  // Connect to the onRelayout signal
-  scrollView.on("onRelayout", daliApp.onScrollViewRelayout);
-}
-
-daliApp.onScrollViewRelayout = function( button ) {
-
-  // Set the correct scroll bar size after size negotiation of scroll view is done
-  scrollBar.size = [0.0, scrollView.getRelayoutSize(dali.DIMENSION_WIDTH), 0.0 ];
-}
-
-function startup()
-{
-  daliApp.init();
-}
-
-daliApp.init = function()
-{
-  daliApp.createScrollView();
-}
-
-startup();
-
diff --git a/node-addon/examples/texture-mesh.js b/node-addon/examples/texture-mesh.js
deleted file mode 100644 (file)
index 27f7744..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
- var window= {
-           x:0,
-           y:0,
-           width:1920,
-           height: 1080,
-           transparent: false,
-           name:'texture-mesh-app'
- };
-
- var viewMode={
-       'stereoscopic-mode':'mono', // stereo-horizontal, stereo-vertical, stereo-interlaced,
-       'stereo-base': 65 // Distance in millimeters between left/right cameras typically between (50-70mm)
- };
-
- var options= {
-    'window': window,
-    'view-mode': viewMode,
- }
-
-var imageDir = "./images/";
-
-
-try {
-  // target
-  var dali = require('dali')( options );
-}
-catch(err) {
-  // desktop
-  var dali = require('../build/Release/dali')( options );
-}
-
-var daliApp = {};
-
-daliApp.createMeshActor = function() {
-
-      // Create shader
-      var vertShader =
-               "attribute mediump vec2    aPosition;\
-                attribute highp   vec2    aTexCoord;\
-                varying   mediump vec2    vTexCoord;\
-                uniform   mediump mat4    uMvpMatrix;\
-                uniform   mediump vec3    uSize;\
-                uniform   lowp    vec4    uFadeColor;\
-                void main()\
-                {\
-                  mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);\
-                  vertexPosition.xyz *= uSize;\
-                  vertexPosition = uMvpMatrix * vertexPosition;\
-                  vTexCoord = aTexCoord;\
-                  gl_Position = vertexPosition;\
-                }";
-
-      var fragShader =
-               "varying mediump vec2  vTexCoord;\
-                uniform lowp    vec4  uColor;\
-                uniform sampler2D     sTexture;\
-                uniform lowp    vec4  uFadeColor;\
-                void main()\
-                {\
-                  gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor * uFadeColor;\
-                }";
-
-      var shaderOptions = {
-              vertexShader : vertShader,
-              fragmentShader: fragShader
-          };
-
-      var shader = new dali.Shader(shaderOptions);
-
-      var textureSet = new dali.TextureSet;
-      var image = new dali.ResourceImage( {url: imageDir + "image-1.jpg"} );
-      textureSet.setImage(0, image);
-
-      var textureSet2 = new dali.TextureSet;
-      var image2 = new dali.ResourceImage( {url: imageDir + "image-2.jpg"} );
-      textureSet2.setImage(0, image2);
-
-      // Create vertex buffer
-      var texturedQuadVertexFormat ={ "aPosition" : dali.PROPERTY_VECTOR2,
-                                        "aTexCoord" : dali.PROPERTY_VECTOR2 };
-
-      var halfQuadSize = 0.5;
-      var texturedQuadVertexData = [ -halfQuadSize, -halfQuadSize, 0.0, 0.0,
-                                      halfQuadSize, -halfQuadSize, 1.0, 0.0,
-                                     -halfQuadSize,  halfQuadSize, 0.0, 1.0,
-                                      halfQuadSize,  halfQuadSize, 1.0, 1.0 ];
-
-      var texturedQuadVertexDataArray = new Float32Array(texturedQuadVertexData.length);
-      texturedQuadVertexDataArray.set(texturedQuadVertexData, 0);
-      var texturedQuadVertices = new dali.PropertyBuffer(texturedQuadVertexFormat);
-      texturedQuadVertices.setData(texturedQuadVertexDataArray, 4);
-
-      var indexFormat ={ "indices" : dali.PROPERTY_INTEGER };
-
-      var indexData = [0, 3, 1, 0, 2, 3];
-
-      var indexDataArray = new Uint32Array(indexData.length);
-      indexDataArray.set(indexData, 0);
-
-      // Create geometry
-      var geometry = new dali.Geometry();
-      geometry.addVertexBuffer( texturedQuadVertices );
-      geometry.setIndexBuffer( indexDataArray, 6 );
-
-      var renderer = new dali.Renderer(geometry, shader);
-      renderer.setTextures(textureSet);
-      renderer.depthIndex = 0;
-
-      var meshActor = new dali.Actor();
-      meshActor.addRenderer( renderer );
-      meshActor.size = [530, 530, 0];
-      meshActor.parentOrigin = dali.TOP_CENTER;
-      meshActor.anchorPoint = dali.TOP_CENTER;
-      meshActor.registerAnimatableProperty("uFadeColor", [1.0, 0.0, 1.0, 1.0]);
-
-      dali.stage.add( meshActor );
-
-      var renderer2 = new dali.Renderer(geometry, shader);
-      renderer2.setTextures(textureSet2);
-      renderer2.depthIndex = 0;
-
-      var meshActor2 = new dali.Actor();
-      meshActor2.addRenderer( renderer2 );
-      meshActor2.size = [530, 530, 0];
-      meshActor2.parentOrigin = dali.BOTTOM_CENTER;
-      meshActor2.anchorPoint = dali.BOTTOM_CENTER;
-      meshActor2.registerAnimatableProperty("uFadeColor", [0.0, 0.0, 1.0, 1.0]);
-
-      dali.stage.add( meshActor2 );
-
-      // Animate the mesh actors
-      var animation = new dali.Animation(5);
-
-      var keyFramesIndex = [{progress:0.0, value: [0.0, 0.0, 0.0, 0.0]}, {progress:1.0, value:[0.0, 1.0, 0.0, 1.0]}];
-      var animOptions = { alpha:dali.ALPHA_FUNCTION_SIN, delay:0, duration:5};
-
-      var keyFramesIndex2 = [{progress:0.0, value: [0.0, 0.0, 0.0, 0.0]}, {progress:1.0, value:[1.0, 0.0, 1.0, 1.0]}];
-      var animOptions2 = { alpha:dali.ALPHA_FUNCTION_SIN, delay:0, duration:5};
-
-      animation.animateBetween( meshActor, "uFadeColor", keyFramesIndex, animOptions );
-      animation.animateBetween( meshActor2, "uFadeColor", keyFramesIndex2, animOptions2 );
-      animation.setLooping(true);
-      animation.play();
-}
-
-function startup()
-{
-  daliApp.init();
-}
-
-daliApp.init = function()
-{
-  daliApp.createMeshActor();
-}
-
-
-startup();
-
diff --git a/node-addon/item-template.json b/node-addon/item-template.json
deleted file mode 100644 (file)
index f6e7e64..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-{
-  "templates":
-  {
-    "template-item-list":
-    {
-      "name":"item",
-      "type":"Actor",
-      "position":[0,0,0],
-      "anchorPoint":"TOP_LEFT",
-      "parentOrigin":"TOP_LEFT",
-      "actors":
-       [
-        {
-          "name":"icon",
-          "type":"ImageView",
-          "image":
-          {
-            "visualType" : "IMAGE",
-            "url": "{icon_path}"
-          },
-          "position":[20.0, 0.0, 0.0],
-          "size":[70.0, 70.0, 0.0],
-          "color":[1.0,1.0,1.0,1.0],
-          "anchorPoint":"CENTER_LEFT",
-          "parentOrigin":"CENTER_LEFT",
-          "actors":
-          [
-            {
-              "name":"title",
-              "anchorPoint":"CENTER_LEFT",
-              "parentOrigin":"CENTER_RIGHT",
-              "type":"TextLabel",
-              "position": [30.0, 0.0, 0.0],
-              "size":[200.0, 70.0, 0.0],
-              "pointSize":30,
-              "fontFamily":"HelveticaNeue",
-              "fontStyle":"Bold",
-              "horizontalAlignment":"BEGIN",
-              "verticalAlignment":"CENTER",
-              "textColor": [1.0,0.0,1.0,1.0],
-              "text":"{title_text}"
-            }
-          ]
-        }
-      ]
-    },
-
-    "template-item-grid":
-    {
-      "name":"item",
-      "type":"Actor",
-      "position":[0,0,0],
-      "anchorPoint":"TOP_LEFT",
-      "parentOrigin":"TOP_LEFT",
-      "actors":
-       [
-        {
-          "name":"icon",
-          "type":"ImageView",
-          "image":
-          {
-            "visualType" : "IMAGE",
-            "url": "{icon_path}"
-          },
-          "position":[0.0, -10.0, 0.0],
-          "size":[70.0, 70.0, 0.0],
-          "color":[1.0,1.0,1.0,1.0],
-          "anchorPoint":"CENTER",
-          "parentOrigin":"CENTER",
-          "actors":
-          [
-            {
-              "name":"title",
-              "anchorPoint":"TOP_CENTER",
-              "parentOrigin":"BOTTOM_CENTER",
-              "type":"TextLabel",
-              "position": [0.0,10.0,0.0],
-              "size":[100.0, 100.0, 0.0],
-              "pointSize":22,
-              "fontFamily":"HelveticaNeue",
-              "fontStyle":"Bold",
-              "horizontalAlignment":"CENTER",
-              "textColor": [1.0,0.0,1.0,1.0],
-              "text":"{title_text}"
-            }
-          ]
-        }
-      ]
-    }
-  }
-}
-
diff --git a/node-addon/javascript-application-options.cpp b/node-addon/javascript-application-options.cpp
deleted file mode 100644 (file)
index eea3e9e..0000000
+++ /dev/null
@@ -1,185 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// HEADER
-#include "javascript-application-options.h"
-
-// EXTERNAL INCLUDES
-#include <cstring>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-
-namespace DaliNodeAddon
-{
-
-namespace
-{
-
-struct StereoInfo
-{
-  const char* const name;
-  Dali::ViewMode mode;
-};
-StereoInfo StereoModeTable[] = {
-    { "mono",                 Dali::MONO},
-    { "stereoHorizontal",     Dali::STEREO_HORIZONTAL },
-    { "stereoVertical",       Dali::STEREO_VERTICAL },
-};
-
-const unsigned int numberViewModes = sizeof( StereoModeTable ) / sizeof( StereoModeTable[0] );
-
-bool GetViewMode( const std::string& modeString, Dali::ViewMode& mode )
-{
-  for( unsigned int i = 0; i < numberViewModes; ++i )
-  {
-    const StereoInfo& info (StereoModeTable[i]);
-
-    if( strcmp ( modeString.c_str() , info.name ) == 0 )
-    {
-      mode = info.mode;
-      return true;
-    }
-  }
-  // mode not found
-  mode = Dali::MONO;
-  return false;
-}
-
-
-// Note we can't parse the enviroment options for window width / height because
-// adaptor which holds the environment option class has not been created
-// and we can't create it, until we have a window
-bool ParseWindowOptions( v8::Isolate* isolate, const v8::Local<v8::Object>& obj,  WindowOptions& window )
-{
-  v8::HandleScope scope(isolate);
-
-  v8::Local<v8::Value> xValue = obj->Get( v8::String::NewFromUtf8( isolate, "x" ) );
-  v8::Local<v8::Value> yValue = obj->Get( v8::String::NewFromUtf8( isolate, "y" ) );
-  v8::Local<v8::Value> widthValue = obj->Get( v8::String::NewFromUtf8( isolate, "width" ) );
-  v8::Local<v8::Value> heightValue = obj->Get( v8::String::NewFromUtf8( isolate, "height" ) );
-  v8::Local<v8::Value> nameValue = obj->Get( v8::String::NewFromUtf8( isolate, "name" ) );
-  v8::Local<v8::Value> transparencyValue = obj->Get( v8::String::NewFromUtf8( isolate, "transparent" ) );
-
-  // if x,y are optional
-  if( xValue->IsUint32() )
-  {
-    window.positionSize.x = xValue->ToUint32()->Value();
-  }
-  if( yValue->IsUint32() )
-  {
-    window.positionSize.y = yValue->ToUint32()->Value();
-  }
-
-  // width and height are optional but will only accept them if they are both set
-  if( widthValue->IsUint32() &&  heightValue->IsUint32() )
-  {
-    window.positionSize.width = widthValue->ToUint32()->Value();
-    window.positionSize.height = heightValue->ToUint32()->Value();
-  }
-
-  // get the window name
-  if( nameValue->IsString() )
-  {
-    window.name = Dali::V8Plugin::V8Utils::v8StringToStdString( nameValue );
-  }
-  else
-  {
-    window.name ="DALi application";
-  }
-
-  if( transparencyValue->IsBoolean() )
-  {
-    window.transparent = transparencyValue->ToBoolean()->Value();
-  }
-  return true;
-}
-
-bool ParseStereoScopicOptions( v8::Isolate* isolate, const v8::Local<v8::Object>& stereoObject,  StereoScopicOptions& options )
-{
-  v8::HandleScope scope(isolate);
-
-  v8::Local<v8::Value> modeValue = stereoObject->Get( v8::String::NewFromUtf8( isolate, "stereoscopicMode" ) );
-  v8::Local<v8::Value> stereoBaseValue = stereoObject->Get( v8::String::NewFromUtf8( isolate, "stereoBase" ) );
-
-  if( !modeValue->IsString() )
-  {
-    return true;
-  }
-
-  std::string mode = Dali::V8Plugin::V8Utils::v8StringToStdString( modeValue );
-  bool ok = GetViewMode( mode,  options.viewMode);
-  if( !ok )
-  {
-    return false;
-  }
-  if( stereoBaseValue->IsNumber() )
-  {
-    options.stereoBase = stereoBaseValue->ToNumber()->Value();
-  }
-
-  return true;
-}
-
-} // unnamed namespace
-
-bool GetApplicationOptions(const v8::FunctionCallbackInfo<v8::Value>& args, ApplicationOptions& options )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope scope(isolate);
-  bool ok( false );
-
-  if( !args[ 0 ]->IsObject() )
-  {
-    return false;
-  }
-
-  v8::Local<v8::Object> object = args[ 0 ]->ToObject();
-
-  // get the window settings
-  v8::Local<v8::Value> windowValue= object->Get( v8::String::NewFromUtf8( isolate, "window" ) );
-  if( windowValue->IsObject() )
-  {
-    ok = ParseWindowOptions( isolate, windowValue->ToObject(), options.window );
-    if( !ok )
-    {
-      return false; // missing window size
-    }
-  }
-
-  // get the stereoscopic settings
-  v8::Local<v8::Value> stereoValue= object->Get( v8::String::NewFromUtf8( isolate, "viewMode" ) );
-  if( stereoValue->IsObject() )
-  {
-    ok = ParseStereoScopicOptions( isolate,  stereoValue->ToObject(), options.stereo );
-    if( !ok )
-    {
-      return false;  // incorrect stereoscopic mode
-    }
-  }
-
-  // get the style sheet
-  v8::Local<v8::Value> stylesheetValue= object->Get( v8::String::NewFromUtf8( isolate, "styleSheet" ) );
-  if( stylesheetValue->IsString() )
-  {
-    options.stylesheet = Dali::V8Plugin::V8Utils::v8StringToStdString( stylesheetValue );
-  }
-
-  return true;
-}
-
-} // namespace DaliNodeAddon
diff --git a/node-addon/javascript-application-options.h b/node-addon/javascript-application-options.h
deleted file mode 100644 (file)
index 1401c7d..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-#ifndef DALI_JAVASCRIPT_APPLICATION_OPTIONS_H
-#define DALI_JAVASCRIPT_APPLICATION_OPTIONS_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-#include <public-api/dali-core.h>
-#include <public-api/adaptor-framework/window.h>
-#include <v8.h>
-
-namespace DaliNodeAddon
-{
-
-struct WindowOptions
-{
-  WindowOptions()
-  : positionSize(0,0,0,0)
-  {
-  }
-
-  std::string name;
-  Dali::PositionSize positionSize;
-  bool transparent:1;
-};
-
-struct StereoScopicOptions
-{
-  StereoScopicOptions()
-  : viewMode(Dali::MONO),
-    stereoBase(65.f)
-  {
-  }
-
-  Dali::ViewMode viewMode;
-  float stereoBase;
-};
-
-struct ApplicationOptions
-{
-  WindowOptions window;
-  StereoScopicOptions stereo;
-  std::string stylesheet;
-};
-
-/**
- * @brief parse the dali JavaScript application options
- * The options are passed to dali when require is called.
- * E.g. var dali.require('dali.js)(  {options object}  )
- *
- * @param[in] args JavaScript arguments
- * @param[out] options assigned Dali options
- * @return true on success, false on failure
- *
- */
-bool GetApplicationOptions( const v8::FunctionCallbackInfo<v8::Value>& args, ApplicationOptions& options );
-
-
-} // namespace DaliNodeAddon
-
-
-
-#endif // DALI_JAVASCRIPT_APPLICATION_OPTIONS_H
diff --git a/node-addon/package.json b/node-addon/package.json
deleted file mode 100644 (file)
index 9314a16..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-  "name": "dali",
-  "version": "0.0.0",
-  "description": "DALi 3D Engine addon",
-  "main": "index.js",
-  "gypfile": "true",
-  "scripts": {
-     "preinstall" : "./configure",
-     "install" : "make && make install",
-    "test" : "node test.js"
-  },
-  "repository": {
-    "type": "git",
-    "url": "review.tizen.org:29418/platform/core/uifw/dali-core"
-  },
-  "keywords": [
-    "dali",
-    "3D",
-    "engine",
-    "OpenGL",
-    "user interface"
-  ],
-  "author": "Samsung",
-  "license": "http://www.apache.org/licenses/LICENSE-2.0"
-}
diff --git a/plugins/dali-script-v8/.gitignore b/plugins/dali-script-v8/.gitignore
deleted file mode 100644 (file)
index 9884cf9..0000000
+++ /dev/null
@@ -1 +0,0 @@
-docs/generated
diff --git a/plugins/dali-script-v8/docs/.gitignore b/plugins/dali-script-v8/docs/.gitignore
deleted file mode 100644 (file)
index 8f030d1..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-/generated/*
-
-
-
-
-
diff --git a/plugins/dali-script-v8/docs/README.txt b/plugins/dali-script-v8/docs/README.txt
deleted file mode 100644 (file)
index c2322b3..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-// Follow instructions on the internets on how to install yuidoc
-// Then run this command
-
-yuidoc --config yuidoc.json -e ".cpp,.js,.md"  -o generated .. ../../../docs/content/shared-javascript-and-cpp-documentation/
-
-// -e says what extensions to pass, we have comments in js and cpp files
-// -o specifies output directory ( in this case we output to a folder called generated)
-// The list of directories after the generated, is the folders to scan for documentation
-
-To view the output
-firefox generated/index.html &
diff --git a/plugins/dali-script-v8/docs/content/actor.js b/plugins/dali-script-v8/docs/content/actor.js
deleted file mode 100644 (file)
index 5ad2180..0000000
+++ /dev/null
@@ -1,656 +0,0 @@
-/**
- *
- ## Actor API
-
-  Actor is the primary object with which Dali applications interact. UI controls can be built by combining multiple actors.
-
-  There are different types of Actors supported by Dali. They all have the same
-  base functionality of the actor class.
-
-```
-var actor = new dali.Actor();
-var textActor = new dali.TextActor("hello world");
-var camera = new dali.CameraActor();
-var layer = new dali.Layer();
-```
-
-### Hello world example
-```
-var myActor = new dali.TextActor("hello-world");
-
-myActor.name = "my first actor";
-myActor.color = [ 1, 0, 0, 1];    // Red,Green,Blue, Alpha ( 1 == max, 0 = none )
-myActor.scale = [ 2, 2, 1];      // double the width and height
-
-// by default an actor is anchored to the top-left of it's parent actor
-// change it to the middle
-
-myActor.parentOrigin = [0.5,0.5,0.5];
-
-// add to the stage
-dali.stage.add( myActor );
-```
-
-
-### Positioning Actors
-
-An actor inherits its parent's position.  The relative position between the actor & parent is determined by 3 properties:
-
-1) ParentOrigin.  This Vector3 property defines a point within the parent actor's area.
-
-![ ](../assets/img/parent-origin.png)
-
-
-The default is "top-left", which can be visualized in 2D as (0, 0), but is actually Vector3(0, 0, 0.5) in the 3D DALi world.  The actor's position is relative to this point.
-```
-// to change parent origin to the centre
-myActor.parentOrigin = [0.5, 0.5, 0.5];
-```
-
-2) AnchorPoint.  This Vector3 property defines a point within the child actor's area.
-
-![ ](../assets/img/anchor-point.png)
-
-The default is "center", which can be visualized in 2D as (0.5, 0.5), but is actually Vector3(0.5, 0.5, 0.5) in the 3D DALi world.  The actor's position is also relative to this point.
-```
-// setting anchor point to the centre
-myActor.anchorPoint = [0.5, 0.5, 0.5];
-```
-
-3) Position.  This is the position vector between the parent-origin and anchor-point.
-
-![ ](../assets/img/actor-position.png)
-
-Therefore by default, an actors position is the distance between its center and the top-left corner of its parent.
-
-An actor added directly to the stage with position (X = stageWidth*0.5, Y = stageHeight*0.5), would appear in the center of the screen.  Likewise an actor with position (X = actorWidth*0.5, Y = actorWidth*0.5), would appear at the top-left of the screen.
-
-Note that since DALi is a 3D toolkit, this behaviour is the result of a default perspective camera setup.
-
-### Actor callback events
-
-The actor provides the following call back events
-
-| Name            | Description                            | Parameters passed to call back |
-|-----------------|----------------------------------------|--------------------------|
-|touch            | touch                                  | (actor, touchData )      |
-|hovered          | mouse or pointer hovering over actor   | (actor, hoverEvent)      |
-|mouseWheelEvent  | mouse wheel events                     | (actor, wheelEvent)      |
-|onStage          | actor has been moved on stage          | (actor)                  |
-|offStage         | actor has been moved off stage         | (actor)                  |
-
-
-#### Touch event
-
-Used to detect multiple touch events on the actor. The state of each touch point can be:
-+ "DOWN"        = touch down
-+ "UP"          = Touch up
-+ "MOTION"      = Finger dragged or hovered
-+ "LEAVE"       = Leave the boundary of an actor
-+ "STATIONARY"  = No change from last event.  Useful when a multi-point event occurs where
-                  all points are sent but indicates that this particular point has not changed
-                  since the last time
-+ "INTERRUPTED" = A system event has occurred which has interrupted the touch or hover event sequence
-
-
-
-```
-touchData = {
-  
-  pointCount: int,  // number of points touched ( multi-touch )
-  time: int,        // The time in milliseconds that the touch event occurred.
-  points = [ Points ],    // array of Points
-  
-  Point = {
-    "deviceId" : int,        // Each touch point has a unique device ID
-    "state" : string,        // touch state ="DOWN","UP","MOTION","LEAVE","STATIONARY","INTERRUPTED"
-    "sourceActor" : actor,   // the actor that is emitting the callback (the actor that is hit maybe a child of it)
-    "hitActor" : actor,      // actor that was hit
-    "local" :  {x,y},        // co-ordinates of top left of hit actor (local.x, local.y)
-    "screen" : {x,y},        // co-ordinates of top left of hit actor (screen.x, screen.y)
-    "radius" : float,        // radius of the press point (average of both the horizontal & vertical radii)
-    "ellipseRadius" : {x,y}, // both the horizontal and the vertical radii of the press point
-    "pressure" : float,      // the touch pressure
-    "angle" : float          // angle of the press point relative to the Y-Axis (in degrees)
-  }
-}
-
-function onPressed( actor, touchData )
-{
-  var firstPoint = touchData.points[0];
-  log("first touch point = " + firstPoint.screen.x + "," + firstPoint.screen.x + "actor= " + firstPoint.hitActor );
-  
-  var anim = new dali.Animation( 4 );
-  var rotation = new dali.Rotation( 90, 0, 0 ); // pitch, yaw, roll
-  anim.animateBy( actor, "orientation", rotation );
-  anim.play();
-  return true;
-}
-  
-// connect to touch events
-myActor.on( "touch", onPressed );
-
-```
-
-#### Hover event
-
-```
-hoverEvent = {
-  
-  pointCount  // number of points hovered over
-  time        // The time in milliseconds that the hover event occurred.
-  points[]    // array of TouchPoints
-  
-  TouchPoint = {
-    "deviceId" : int,      // Each touch point has a unique device ID
-    "state" : string,      // touch state ="down,up,motion,leave,stationary, interrupted }
-    "sourceActor" : actor, // the actor that is emitting the callback (the actor that is hit maybe a child of it)
-    "hitActor" : actor,    // actor that was hit
-    "local" :  {x,y},      // co-ordinates of top left of hit actor (local.x, local.y)
-    "screen" : {x,y}       // co-ordinates of top left of hit actor (screen.x, screen.y)
-  }
-}
-```
-      // connect to touch events
-      myActor.on( "hovered", onHover);
-
-#### Mouse wheel event
-
-```
-mouseWheelEvent = {
-  
-  direction,       // "vertical" or "horizontal" direction the wheel is being rolled
-  shiftPressed,    // boolean, shift key is held
-  ctrlPressed,     // boolean, ctrl key is held
-  altPressed,      // boolean, alt key is held
-  keyModifiers,    // bitmask of keys pressed
-  point {x,y},     // The co-ordinates of the mouse cursor relative to the top-left of the screen when the wheel is being rolled.
-  rolled,          // offset of mouse wheel rolling, positive = rolling down, negative = rolling up
-  timestamp        // The time in milliseconds that the mouse event occurred
-}
-  
-// connect to touch events
-myActor.on( "mouseWheelEvent", onMouseWheel );
-```
-#### Key events
-
-Key events are performed using the dali.stage object and dali.keyboardFocusManager.
- - {{#crossLink "stage"}}Stage{{/crossLink}}
-
-
-#### Multi-touch events
-
-See
- - {{#crossLink "MultiTouch"}}Multi Touch Events.{{/crossLink}}
-
-
-### Actor Properties
-
- Name                   |    Type    | Writable     | Animatable
-------------------------|------------|--------------|-----------
- anchorPoint            |VECTOR3     | &#10004;     | &#10008;
- anchorPointX           |FLOAT       | &#10004;     | &#10008;
- anchorPointY           |FLOAT       | &#10004;     | &#10008;
- anchorPointZ           |FLOAT       | &#10004;     | &#10008;
- size                   |VECTOR3     | &#10004;     | &#10004;
- sizeWidth              |FLOAT       | &#10004;     | &#10004;
- sizeHeight             |FLOAT       | &#10004;     | &#10004;
- sizeDepth              |FLOAT       | &#10004;     | &#10004;
- position               |VECTOR3     | &#10004;     | &#10004;
- positionX              |FLOAT       | &#10004;     | &#10004;
- positionY              |FLOAT       | &#10004;     | &#10004;
- positionZ              |FLOAT       | &#10004;     | &#10004;
- worldPosition          |VECTOR3     | &#10008;     | &#10008;
- worldPositionX         |FLOAT       | &#10008;     | &#10008;
- worldPositionY         |FLOAT       | &#10008;     | &#10008;
- worldPositionZ         |FLOAT       | &#10008;     | &#10008;
- orientation            |ROTATION    | &#10004;     | &#10004;
- worldOrientation       |ROTATION    | &#10008;     | &#10008;
- scale                  |VECTOR3     | &#10004;     | &#10004;
- scaleX                 |FLOAT       | &#10004;     | &#10004;
- scaleY                 |FLOAT       | &#10004;     | &#10004;
- scaleZ                 |FLOAT       | &#10004;     | &#10004;
- worldScale             |VECTOR3     | &#10008;     | &#10008;
- visible                |BOOLEAN     | &#10004;     | &#10004;
- color                  |VECTOR4     | &#10004;     | &#10004;
- colorRed               |FLOAT       | &#10004;     | &#10004;
- colorGreen             |FLOAT       | &#10004;     | &#10004;
- colorBlue              |FLOAT       | &#10004;     | &#10004;
- colorAlpha             |FLOAT       | &#10004;     | &#10004;
- worldColor             |VECTOR4     | &#10008;     | &#10008;
- worldMatrix            |MATRIX      | &#10008;     | &#10008;
- name                   |STRING      | &#10004;     | &#10008;
- sensitive              |BOOLEAN     | &#10004;     | &#10008;
- leaveRequired          |BOOLEAN     | &#10004;     | &#10008;
- inheritOrientation     |BOOLEAN     | &#10004;     | &#10008;
- inheritScale           |BOOLEAN     | &#10004;     | &#10008;
- colorMode              |NUMBER      | &#10004;     | &#10008;
- positionInheritance    |NUMBER      | &#10004;     | &#10008;
- drawMode               |NUMBER      | &#10004;     | &#10008;
- sizeMode               |NUMBER      | &#10004;     | &#10008;
- sizeModeFactor         |VECTOR3     | &#10004;     | &#10008;
-
-
-
-
- * @class Actor
- * @extends Handle
- */
-
-
-/**
- * Actors parent origin
- *
- * @property parentOrigin
- * @type dali Vector3
- * @default TOP_LEFT (0.0, 0.0, 0.5).
- */
-parentOrigin
-
-/**
- * Actors parent origin X
- *
- * @property parentOriginX
- * @readOnly
- * @type Number
- */
-parent - origin - x
-
-/**
- * Actors parent origin-y
- * @property parentOriginY
- * @readOnly
- * @type Number
- */
-parent - origin - y
-
-/**
- * Actors parent origin-z
- * @property parentOriginZ
- * @readOnly
- * @type Number
- */
-parent - origin - z
-
-/**
- * Actors anchor point
- * @property anchorPoint
- * @type dali Vector3
- * @default CENTER (0.5, 0.5, 0.5)
- */
-ANCHOR_POINT;
-
-/**
- * Actors anchor point x
- * @property anchorPointX
- * @type Number
- */
-ANCHOR_POINT_X
-
-/**
- * Actors anchor point y
- * @property anchorPointY
- * @type Number
- */
-ANCHOR_POINT_Y
-
-/**
- * Actors anchor point z
- * @property anchorPointZ
- * @type Number
- */
-ANCHOR_POINT_Z
-
-/**
- * Actors size
- * @property size
- * @type dali Vector3
- */
-SIZE
-
-
-/**
- * Actors width
- * @property sizeWidth
- * @type Number
- */
-SIZE_WIDTH
-
-/**
- * Actors height
- * @property sizeHeight
- * @type Number
- */
-SIZE_HEIGHT
-
-/**
- * Actors depth
- * @property sizeDepth
- * @type Number
- */
-SIZE_DEPTH
-
-
-/**
- * Actors position
- * @property position
- * @type dali Vector3
- */
-POSITION
-
-/**
- * Actors x position
- * @property positionX
- * @type Number
- */
-POSITION_X
-
-/**
- * Actors y position
- * @property positionY
- * @type Number
- */
-POSITION_Y
-
-/**
- * Actors z position
- * @property positionZ
- * @type Number
- */
-POSITION_Z
-
-
-/**
- * Actors world position
- * @property position
- * @type dali Vector3  ( read-only, not animatable )
- */
-WORLD_POSITION
-
-/**
- * Actors world x position
- * @property worldPositionX
- * @type Number ( read-only )
- */
-WORLD_POSITION_X
-
-/**
- * Actors world y position
- * @property worldPositionY
- * @type Number ( read-only )
- */
-WORLD_POSITION_Y
-
-/**
- * Actors world z position
- * @property worldPositionZ
- * @type Number ( read-only )
- */
-WORLD_POSITION_Z
-
-
-/**
- * Actors orientation
- * @property orientation
- * @type dali Rotation object
- */
-ORIENTATION
-
-
-/**
- * Actors world-orientation
- * @property worldOrientation
- * @type dali Rotation object ( read only)
- */
-WORLD_ORIENTATION
-
-/**
- * Actors scale
- * @property scale
- * @type dali Vector3
- */
-SCALE
-
-/**
- * Actors x scale
- * @property scaleX
- * @type Number
- */
-SCALE_X
-
-/**
- * Actors y scale
- * @property scaleY
- * @type Number
- */
-SCALE_Y
-
-/**
- * Actors z scale
- * @property scaleZ
- * @type Number
- */
-SCALE_Z
-
-/**
- * Actors world scale
- * @property worldScale
- * @type dali Vector3 ( read only )
- */
-WORLD_SCALE
-
-/**
- * Actors visible flag
- * If an actor is not visible, then the actor and its children will not be rendered.
- * This is regardless of the individual visibility values of the children i.e. an actor will only be
- * rendered if all of its parents have visibility set to true.
- *
- * @property visible
- * @type Boolean
- */
-VISIBLE
-
-/**
- * Actors color.
- * The final color of the actor depends on its color mode.
- * 4 components, red, green, blue and alpha. Each range from 0..1
- * @property color
- * @type dali Vector 4
- */
-COLOR
-
-/**
- * Actors red color
- * @property colorRed
- * @type Number  ( 0..1)
- */
-COLOR_RED
-
-/**
- * Actors green color
- * @property colorGreen
- * @type Number  ( 0..1)
- */
-COLOR_GREEN
-
-/**
- * Actors blue color
- * @property colorBlue
- * @type Number  ( 0..1)
- */
-COLOR_BLUE
-
-/**
- * Actors world color.
- * 4 components, red, green, blue and alpha. Each range from 0..1
- * @property worldColor
- * @type dali Vector 4 ( read only)
- */
-WORLD_COLOR
-
-/**
- * Actors name
- * @property name
- * @type String
- */
-
-/**
- * Actors sensitive flag
- * brief Sets whether an actor should emit touch event signals; @see SignalTouch().
- *
- * An actor is sensitive by default, which means that as soon as an application connects to the SignalTouch(),
- * the touch event signal will be emitted.
- *
- * If the application wishes to temporarily disable the touch event signal emission, then they can do so by calling
- *
- *    actor.sensitve = false;
- *
- * Then, to re-enable the touch event signal emission, the application should call:
- *
- *    actor.sensitive = true;
- *
- * @property sensitive
- * @type Boolean
- * @default true ( is sensistive )
- */
-SENSITIVE
-
-/**
- * Controls whether the actor should receive a notification when touch motion events leave
- * the boundary of the actor.
- *
- * Note: Need to connect to the SignalTouch to actually receive this event.
- *  Should be set to true if a Leave event is required
- * @type Boolean
- * @property leaveRequired
- * @default false, this is set to false as most actors do not require this.
- */
-LEAVE_REQUIRED
-
-/**
- * Set whether a child actor inherits it's parent's orientation.
- * @type Boolean
- * @property inheritOrientation
- * @default true
- */
-INHERIT_ORIENTATION,
-
-
-/**
- * Set whether a child actor inherits it's parent's scale.
- * @type Boolean
- * @property inheritScale
- * @default true
- */
-INHERIT_SCALE,
-
-
-/**
- * Set how the actor and its children should be drawn.
- *
- * Not all actors are renderable, but DrawMode can be inherited from any actor.
- * By default a renderable actor will be drawn as a 3D object. It will be depth-tested against
- * other objects in the world i.e. it may be obscured if other objects are in front.
- *
- * If OVERLAY_2D is used, the actor and its children will be drawn as a 2D overlay.
- * Overlay actors are drawn in a separate pass, after all non-overlay actors within the Layer.
- * For overlay actors, the drawing order is determined by the hierachy (depth-first search order),
- * and depth-testing will not be used.
- *
- * If STENCIL is used, the actor and its children will be used to stencil-test other actors
- * within the Layer. Stencil actors are therefore drawn into the stencil buffer before any other
- * actors within the Layer.
- *
- * @example
- *
- *      var actor.drawMode = dali.DRAW_MODE_NORMAL;     // binary 00. The default draw-mode
- *      var actor.drawMode = dali.DRAW_MODE_OVERLAY_2D; // binary 01. Draw the actor and its children as an overlay
- *      var actor.drawMode = dali.DRAW_MODE_STENCIL ;   // binary 11. Draw the actor and its children into the stencil buffer
- *
- *
- * @type Number
- * @property drawMode
- * @default 0 (Normal )
- */
-DRAW_MODE,
-
-
-/**
- * Sets the actor's color mode.
- *
- * This specifies whether the Actor uses its own color, or inherits
- * its parent color. The default is USE_OWN_MULTIPLY_PARENT_ALPHA.
- *
- * @example
- *    actor.colorMode = dali.COLOR_MODE_USE_OWN_COLOR; // Actor will use its own color
- *    actor.colorMode = dali.COLOR_MODE_USE_PARENT_COLOR;  // Actor will use its parent color
- *    actor.colorMode = dali. COLOR_MODE_USE_OWN_MULTIPLY_PARENT_COLOR; // Actor will blend its color with its parents color.
- *    actor.colorMode = dali.COLOR_MODE_USE_OWN_MULTIPLY_PARENT_ALPHA ;  // Actor will blend its alpha with its parents alpha. This means when parent fades in or out child does as well. This is the default.
- *
- *
- * @type Number
- * @property colorMode
- * @default 2 (USE_OWN_MULTIPLY_PARENT_ALPHA )
- */
-COLOR_MODE
-
-/**
- * Set the actors position inheritance mode.
- *
- * @example
- *    actor.positionInheritance = dali.POSITION_INHERITANCE_INHERIT_PARENT_POSITION;  // Actor will inherit its parent position. This is the default
- *    actor.positionInheritance = dali.POSITION_INHERITANCE_USE_PARENT_POSITION;      // Actor will copy its parent position. This is useful if many actors are stacked together in the same place. This option ignores parent origin and anchor point.
- *    actor.positionInheritance = dali.POSITION_INHERITANCE_USE_PARENT_POSITION_PLUS_LOCAL_POSITION; // Actor will copy its parent position and add local position. This is useful if many actors are stacked together in the same place with an offset.  This option ignores parent origin and anchor point.
- *    actor.positionInheritance = dali.POSITION_INHERITANCE_DONT_INHERIT_POSITION;           // Actor will not inherit position. Local position is treated as world position. This is useful if a constraint is used to override local position or if an actor is positioned globally. This option ignores parent origin, anchor point and local position.
- *
- * Switching this off means that using SetPosition() sets the actor's world position.
- * @type Number
- * @property positionInheritance
- * @default 0 (INHERIT_PARENT_POSITION )
- */
-POSTITION_INHERITANCE
-
-
-/**
- *  Defines how a child actor's size is affected by its parent's size.
- *
- * The default is to ignore the parent's size and use the size property of this actor.
- *
- * If USE_OWN_SIZE is used, this option is bypassed and the actor's size
- *     property is used.
- *
- * If SIZE_EQUAL_TO_PARENT is used, this actor's size will be equal to that
- *     of its parent. The actor's size property is ignored.
- *
- * If SIZE_RELATIVE_TO_PARENT is used, this actor's size will be based on
- *     its parent's size by multiplying the parent size by
- *     SizeModeFactor.
- *
- * If SIZE_FIXED_OFFSET_FROM_PARENT is used, this actor's size will be based on
- *     its parent's size plus SizeModeFactor.
- *
- *
- * @example
- *    actor.sizeMode = dali.USE_OWN_SIZE;
- *    actor.sizeMode = dali.SIZE_EQUAL_TO_PARENT;
- *    actor.sizeMode = dali.SIZE_RELATIVE_TO_PARENT;
- *    actor.sizeMode = dali.SIZE_FIXED_OFFSET_FROM_PARENT
- *
- * @type Number
- * @property sizeMode
- * @default 0 (dali.SIZE_MODE_USE_OWN_SIZE; )
- */
- SIZE_MODE
-
-/**
- *
- * @brief Sets the relative to parent size factor of the actor.
- *
- * This factor is only used when SizeMode is set to either:
- * SIZE_RELATIVE_TO_PARENT or SIZE_FIXED_OFFSET_FROM_PARENT.
- * This actor's size is set to the actor's parent size multipled by or added to this factor,
- * depending on SideMode (See SetSizeMode).
- * @type Vector3
- * @property sizeModeFactor
- */
-SIZE_MODE_FACTOR
diff --git a/plugins/dali-script-v8/docs/content/animation.js b/plugins/dali-script-v8/docs/content/animation.js
deleted file mode 100644 (file)
index a6bf12a..0000000
+++ /dev/null
@@ -1,246 +0,0 @@
-/**
- *
-## Animation API
-
-   DALi Animation can be used to animate the properties of any number of objects, typically Actors.
-
-The API supports functionality such as:
-
- - {{#crossLink "animation/play:method"}}{{/crossLink}}
- - {{#crossLink "animation/pause:method"}}{{/crossLink}}
- - {{#crossLink "animation/stop:method"}}{{/crossLink}}
- - {{#crossLink "animation/setLooping:method"}}{{/crossLink}}, set whether the animation should loop
- - {{#crossLink "animation/setSpeedFactor:method"}}{{/crossLink}}, speeds / slows down an animation
- - {{#crossLink "animation/setPlayRange:method"}}{{/crossLink}}, only play part of the animation between a set range
- - Key frame support. See {{#crossLink "animation/animateBetween:method"}}{{/crossLink}}
- - Path Animations. See {{#crossLink "path"}}Path {{/crossLink}}
- - Signals to be informed when an animation has finished.
- - animate multiple properties, owned by multiple objects with a single animation object
-  
-### Simple example of moving an actor to a set position
-
-```
-var myActor = new dali.TextActor( "hello world" );
-  
-myActor.parentOrigin = dali.CENTER;
-dali.stage.add( myActor );
-  
-var anim = new dali.Animation( 2 ); // 2 seconds
-  
-// we're animation the property position of the actor.
-anim.animateTo( myActor, "position", [100, 100, 0] );
-  
-function finished( animation )
-{
-  log("Animation finished \n");
-}
-  
-anim.on("finished", finished );
-  
-anim.play();
-```
-
-### Multiple actor example
-
-```
-// Following demonstrates:
-// - aimating multiple properties on an object (actor properties in this example)
-// - animating multiple objects at the same time (2 actors in the example)
-// - using the optional, animation options object to set a delay time and alpha function (easing)
-  
-// Sets the original position to be rotated and pushed into the distance
-  
-var myActor1 = new dali.TextActor( "Hello" );
-var myActor2 = new dali.TextActor( "from DALi" );
-  
-// centre both actors to the middle of the screen
-myActor1.parentOrigin = dali.CENTER;
-myActor2.parentOrigin =  dali.CENTER;
-myActor1.scale=[2,2,1]; // scale up x and y by 2
-myActor2.scale=[2,2,1]; // scale up x and y by 2
-
-  
-// reposition them to the left / right, and push them away from the camera
-myActor1.position=[-100,0,-2000];  // x = -100, y = 0 , z = -2000
-myActor2.position=[ 100,0,-2000];  // x = 100, y = 0 , z = -2000
-  
-// start with actor rotated by 180 about x & y axis, so they can twist into place
-function createAnimation() {
-  
-  var startRotation = new dali.Rotation(180, -180, 0);
-  myActor1.orientation = startRotation;
-  myActor2.orientation = startRotation;
-  
-  dali.stage.add( myActor1 );
-  dali.stage.add( myActor2 );
-  
-
-  var anim = new dali.Animation(1); // default duration is increased if length of all animations is greater than it.
-  
-  var animOptions = {
-      alpha: dali.ALPHA_FUNCTION_LINEAR,
-      delay: 0.5,     // used to delay the start of the animation
-      duration: 3,    // duration of the animation
-      };
-  
-  // move myActor1 z position back to 0
-  anim.animateTo(myActor1, "positionZ", 0, animOptions);
-  
-  //  rotate back to correct orientation
-  var endRotation = new dali.Rotation(0,0,0);
-  
-  animOptions.alpha = dali.ALPHA_FUNCTION_EASE_IN_OUT_SINE;
-  anim.animateTo(myActor1, "orientation", endRotation, animOptions);
-  
-  // Delay the myActor2  by  a second
-  animOptions.delay = 0.0;
-  animOptions.alpha = dali.ALPHA_FUNCTION_LINEAR;
-  anim.animateTo(myActor2, "positionZ", 0, animOptions);
-  
-  //  rotate back to correct orientation
-  animOptions.alpha = dali.ALPHA_FUNCTION_EASE_IN_OUT_SINE;
-  anim.animateTo(myActor2, "orientation", endRotation, animOptions);
-
-  return anim;
-}
-
-
-var anim = createAnimation();
-
-anim.play();
-
-```
-
-### GL-ES shader animation example
-
-The example below does the following with a single animation object:
-
- - rotates the image view
- - magnifies and color shifts the image using a fragment shader
-  
-![ ](../assets/img/shaders/shader-animation.png)
-
-  
-
-```
-// Creates an image view in the centre of the stage
-createImageView = function() {
-  
-  var imageView = new dali.Control("ImageView");
-  imageView.parentOrigin = dali.CENTER;
-  dali.stage.add( imageView );
-  
-  return imageView;
-}
-  
-// Creates a simple fragment shader that has 2 uniforms.
-// uColorShift which can add a color to pixel
-// uScale which can simulate zooming into the texture
-  
-createColorShiftAndZoomEffect = function() {
-  
-  var fragShader =
-      "varying vec2 vTexCoord;\
-       uniform sampler2D sTexture;\
-       uniform vec4 uColor;\
-       uniform lowp vec4 uColorShift;\
-       uniform lowp vec2 uScale;\
-       void main() \
-       {           \
-         gl_FragColor = texture2D( sTexture, vTexCoord * uScale ) * uColor + uColorShift; \
-       }";
-  
-  // vertexShader = "";  // vertex shader   ( optional)
-  // fragmentShader = "";  // fragment shader   ( optional)
-  // hints =   // shader hints   ( optional)
-  //       [ "OUTPUT_IS_TRANSPARENT",   // Might generate transparent alpha from opaque inputs
-  //         "MODIFIES_GEOMETRY" ];     // Might change position of vertices, this option disables any culling optimizations
-  
-  var shader = {
-      "fragmentShader": fragShader,
-      "hints" : "OUTPUT_IS_TRANSPARENT"
-  };
-  
-  return shader;
-}
-
-createShaderAnimation = function( imageView, color, zoom, duration, delay )
-{
-  var shaderAnim = new dali.Animation(duration+delay);
-
-  var animOptions = {
-     alpha: dali.ALPHA_FUNCTION_EASE_IN_OUT_SINE,
-     delay: delay,
-     duration: duration,
-  };
-
-  // animate the color uniform
-  shaderAnim.animateTo( imageView, "uColorShift", color, animOptions);
-
-  // zoom in and out of the image while applying the color shift
-  shaderAnim.animateTo( imageView, "uScale", zoom, animOptions);
-
-  return shaderAnim;
-}
-  
-var imageView = createImageView();
-  
-var shader = createColorShiftAndZoomEffect();
-  
-var image = {
-    "visualType" : "IMAGE",
-    "url" : getImageDirectory()+"gallery-medium-50.jpg",
-    "shader" : shader
-};
-  
-imageView.image = image; // assign the shader to imageView
-  
-// register the color shift property so we can animate it
-// default the color shift to zero, so it has no effect
-imageView.registerAnimatableProperty("uColorShift", [0, 0, 0, 0]);
-  
-// register the zoom property so we can animate it
-// default to 1,1 so no zoom is applied
-imageView.registerAnimatableProperty("uScale", [1, 1]);
-  
-// create the shader animation
-var zoom = [0.5,0.5];  // zoom into the image by 2
-var color = dali.COLOR_BLUE; // color shift the image to blue
-var duration = 5; // 5 seconds
-var delay = 5; // wait 1 second before starting
-var shaderAnim = createShaderAnimation( imageView, color,zoom, duration, delay);
-  
-// also rotate the imageView 90 degrees at the same time.
-var rotation = new dali.Rotation(90,0,0,1);
-shaderAnim.animateTo(imageView, "orientation", rotation, { alpha:dali.ALPHA_FUNCTION_LINEAR, duration:duration, delay:delay });
-
-
-shaderAnim.play();
-
-```
-
-
-### Animation alpha functions
-
-| Name                             | Description    |
-|----------------------------------|----------------|
-|ALPHA_FUNCTION_DEFAULT            |Linear          |
-|ALPHA_FUNCTION_LINEAR             |Linear          |
-|ALPHA_FUNCTION_REVERSE            |Reverse linear  |
-|ALPHA_FUNCTION_EASE_IN_SQUARE     |Speeds up and comes to a sudden stop (Square) |
-|ALPHA_FUNCTION_EASE_OUT_SQUARE    |Sudden start and slows to a gradual stop (Square) |
-|ALPHA_FUNCTION_EASE_IN            |Speeds up and comes to a sudden stop |
-|ALPHA_FUNCTION_EASE_OUT           |Sudden start and slows to a gradual stop|
-|ALPHA_FUNCTION_EASE_IN_OUT        |Speeds up and slows to a gradual stop|
-|ALPHA_FUNCTION_EASE_IN_SINE       |Speeds up and comes to a sudden stop|
-|ALPHA_FUNCTION_EASE_OUT_SINE      |Sudden start and slows to a gradual stop|
-|ALPHA_FUNCTION_EASE_IN_OUT_SINE   |Speeds up and slows to a gradual stop |
-|ALPHA_FUNCTION_BOUNCE             |Sudden start, loses momentum and ** Returns to start position ** |
-|ALPHA_FUNCTION_SIN                |full 360 revolution ** Returns to start position ** |
-|ALPHA_FUNCTION_EASE_OUT_BACK      |Sudden start, exceed end position and return to a gradual stop|
-
-
-
- @class Animation
-
-*/
diff --git a/plugins/dali-script-v8/docs/content/camera-actor.js b/plugins/dali-script-v8/docs/content/camera-actor.js
deleted file mode 100644 (file)
index 71b750b..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-/**
- ## Camera Actor API ( extends Actor API)
-
-
-Allows the developer to use actor semantics to control a camera.
-
-There are two types of camera actor, FREE_LOOK and LOOK_AT_TARGET. By default
-the camera actor will be FREE_LOOK.
-
-A FREE_LOOK camera uses actor's orientation to control where the camera is looking.
-If no additional rotations are specified, the camera looks in the negative Z direction.
-
-For LOOK_AT_TARGET the actor's orientation is ignored, instead the camera looks at TARGET_POSITION
-in world coordinates.
-```
-// get the camera currently used
-var defaultCamera = dali.stage.getRenderTaskList().getTask(0).getCameraActor();
-  
-var fov = defaultCamera.fieldOfView;
-  
-// increase field of view by 10%
-defaultCamera.fieldOfView = fov * 1.1;
-  
-// shift the camera to the left, the rendered scene will shift to the right
-defaultCamera.x -= 10;
-```
-  
-### Camera Actor Specific Properties
-
-| Name                   |    Type    | Writable     | Animatable|
-|------------------------|------------|--------------|-----------|
-| type                  |  dali.CAMERA_FREE_LOOK or  dali.CAMERA_LOOK_AT_TARGET  | &#10004; | &#10008; |
-| projectionMode        | dali.CAMERA_ORTHOGRAPHIC_PROJECTION or dali.CAMERA_PERSPECTIVE_PROJECTION  | &#10004;| &#10008; |
-| fieldOfView           | FLOAT      | &#10004; | &#10008;  |
-| aspectRatio           | FLOAT      | &#10004; | &#10008;  |
-| nearPlaneDistance     | FLOAT      | &#10004; | &#10008;  |
-| farPlaneDistance      | FLOAT      | &#10004; | &#10008;  |
-| leftPlaneDistance     | FLOAT      | &#10004; | &#10008;  |
-| rightPlaneDistance    | FLOAT      | &#10004; | &#10008;  |
-| topPlaneDistance      | FLOAT      | &#10004; | &#10008;  |
-| bottomPlaneDistance   | FLOAT      | &#10004; | &#10008;  |
-| targetPosition        | VECTOR3    | &#10004; | &#10008;  |
-| projectionMatrix      | MATRIX     | &#10004; | &#10008;  |
-| viewMatrix            | MATRIX     | &#10004; | &#10008;  |
-| invertYAxis           | BOOLEAN    | &#10004; | &#10008;  |
-
-
-
-  @class CameraActor
-  @extends Actor
- */
diff --git a/plugins/dali-script-v8/docs/content/constants.js b/plugins/dali-script-v8/docs/content/constants.js
deleted file mode 100644 (file)
index 19359bd..0000000
+++ /dev/null
@@ -1,217 +0,0 @@
-/**
- *
-### Dali Constants
-
-Constants accessible under the dali global object.
-  
-    actor.parentOrigin = dali.TOP_LEFT;
-    actor.color = dali.COLOR_RED;
-    actor.setBlendFunc( dali.BLEND_FACTOR_ONE_MINUS_SRC_COLOR, dali.BLEND_FACTOR_SRC_ALPHA_SATURATE );
-
-
-| Constant Name | value |
-|---------------|-------|
-|  ** actor.parentOrigin and actor.anchorPoint  **      |                      |
-|TOP_LEFT            |  (0.0f, 0.0f, 0.5f)  |
-|TOP_CENTER          |  (0.5f, 0.0f, 0.5f)  |
-|TOP_RIGHT          |  (1.0f, 0.0f, 0.5f)  |
-|CENTER_LEFT         |  (0.0f, 0.5f, 0.5f)  |
-|CENTER              |  (0.5f, 0.5f, 0.5f)  |
-|CENTER_RIGHT        |  (1.0f, 0.5f, 0.5f)  |
-|BOTTOM_LEFT         |  (0.0f, 1.0f, 0.5f)  |
-|BOTTOM_CENTER       |  (0.5f, 1.0f, 0.5f)  |
-|BOTTOM_RIGHT        |  (1.0f, 1.0f, 0.5f)  |
-
-
-|** Vector3 ** | |
-|VECTOR3_ONE                  |  (1.0f, 1.0f, 1.0f)         |
-|VECTOR3_XAXIS                |  (1.0f, 0.0f, 0.0f)         |
-|VECTOR3_YAXIS                |  (0.0f, 1.0f, 0.0f)         |
-|VECTOR3_ZAXIS                |  (0.0f, 0.0f, 1.0f)         |
-|VECTOR3_NEGATIVE_XAXIS       |  (-1.0f, 0.0f, 0.0f)        |
-|VECTOR3_NEGATIVE_YAXIS       |   (0.0f, -1.0f, 0.0f)       |
-|VECTOR3_NEGATIVE_ZAXIS       |   (0.0f, 0.0f, -1.0f)       |
-|VECTOR3_ZERO                 |   (0.0f, 0.0f, 0.0f)        |
-
-|**  Colors **| -|
-|COLOR_BLACK              |    ( 0.0f, 0.0f, 0.0f, 1.0f )     |
-|COLOR_WHITE              |    ( 1.0f, 1.0f, 1.0f, 1.0f )     |
-|COLOR_RED                |    (   1.0f, 0.0f, 0.0f, 1.0f )   |
-|COLOR_GREEN              |    ( 0.0f, 1.0f, 0.0f, 1.0f )     |
-|COLOR_BLUE               |    (  0.0f, 0.0f, 1.0f, 1.0f )    |
-|COLOR_YELLOW             |    (  1.0f, 1.0f, 0.0f, 1.0f )    |
-|COLOR_MAGENTA            |     ( 1.0f, 0.0f, 1.0f, 1.0f )    |
-|COLOR_CYAN               |    (    0.0f, 1.0f, 1.0f, 1.0f )  |
-|COLOR_TRANSPARENT        |  ( 0.0f, 0.0f, 0.0f, 0.0f )       |
-
-| ** actor.colorMode constants  **  | -|
-| COLOR_MODE_USE_OWN_COLOR,                  | integer value  |
-| COLOR_MODE_USE_PARENT_COLOR,               | integer value  |
-| COLOR_MODE_USE_OWN_MULTIPLY_PARENT_COLOR,  | integer value  |
-| COLOR_MODE_USE_OWN_MULTIPLY_PARENT_ALPHA,  | integer value  |
-
-|**actor.positionInheritance  **| |
-|POSITION_INHERITANCE_INHERIT_PARENT_POSITION,       | integer value |
-|POSITION_INHERITANCE_USE_PARENT_POSITION,           | integer value |
-|POSITION_INHERITANCE_USE_PARENT_POSITION_PLUS_LOCAL_POSITION, | integer value |
-|POSITION_INHERITANCE_DONT_INHERIT_POSITION,         | integer value |
-
-|**actor.drawMode  **| |
-|DRAW_MODE_NORMAL                         | integer value |
-|DRAW_MODE_OVERLAY_2D                     | integer value |
-|DRAW_MODE_STENCIL                        | integer value |
-
-|**Image load policy  **| |
-|**actor.SetBlendFunc() ** | |
-|BLEND_FACTOR_ZERO                        | integer value |
-|BLEND_FACTOR_ONE                         | integer value |
-|BLEND_FACTOR_SRC_COLOR                   | integer value |
-|BLEND_FACTOR_ONE_MINUS_SRC_COLOR         | integer value |
-|BLEND_FACTOR_SRC_ALPHA                   | integer value |
-|BLEND_FACTOR_ONE_MINUS_SRC_ALPHA         | integer value |
-|BLEND_FACTOR_DST_ALPHA                   | integer value |
-|BLEND_FACTOR_ONE_MINUS_DST_ALPHA         | integer value |
-|BLEND_FACTOR_DST_COLOR                   | integer value |
-|BLEND_FACTOR_ONE_MINUS_DST_COLOR         | integer value |
-|BLEND_FACTOR_SRC_ALPHA_SATURATE          | integer value |
-|BLEND_FACTOR_CONSTANT_COLOR              | integer value |
-|BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR    | integer value |
-|BLEND_FACTOR_CONSTANT_ALPHA              | integer value |
-|BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA    | integer value |
-
-|**actor.SetBlendMode()  **| |
-|BLENDING_OFF                              | integer value |
-|BLENDING_AUTO                             | integer value |
-|BLENDING_ON                               | integer value |
-
-|**actor.SetCullFace()** | |
-|CULL_FACE_DISABLE          | integer value  |
-|CULL_FRONT_FACE           | integer value  |
-|CULL_BACK_FACE            | integer value  |
-|CULL_FRONT_AND_BACK_FACE  | integer value  |
-
-|**actor.sizeMode** | |
-|USE_OWN_SIZE                   | integer value  |
-|SIZE_EQUAL_TO_PARENT           | integer value  |
-|SIZE_RELATIVE_TO_PARENT        | integer value  |
-|SIZE_FIXED_OFFSET_FROM_PARENT  | integer value  |
-
-
-|**animation.SetEndAction( mode ) ** | |
-|ANIMATION_BAKE             | integer value  |
-|ANIMATION_DISCARD          | integer value  |
-|ANIMATION_BAKE_FINAL       | integer value  |
-
-|**camera.type ** | |
-|CAMERA_FREE_LOOK             | integer value  |
-|CAMERA_LOOK_AT_TARGET        | integer value  |
-
-|**camera.projectionMode ** | |
-|CAMERA_PERSPECTIVE_PROJECTION  | integer value  |
-|CAMERA_ORTHOGRAPHIC_PROJECTION | integer value  |
-
-
-|** Pixel formats     **          |  |
-| PIXEL_FORMAT_A8                            | integer value  |
-| PIXEL_FORMAT_L8                            | integer value  |
-| PIXEL_FORMAT_LA88                          | integer value  |
-| PIXEL_FORMAT_RGB565                        | integer value  |
-| PIXEL_FORMAT_BGR565                        | integer value  |
-| PIXEL_FORMAT_RGBA4444                      | integer value  |
-| PIXEL_FORMAT_BGRA4444                      | integer value  |
-| PIXEL_FORMAT_RGBA5551                      | integer value  |
-| PIXEL_FORMAT_BGRA5551                      | integer value  |
-| PIXEL_FORMAT_RGB888                        | integer value  |
-| PIXEL_FORMAT_RGB8888                       | integer value  |
-| PIXEL_FORMAT_BGR8888                       | integer value  |
-| PIXEL_FORMAT_RGBA8888                      | integer value  |
-| PIXEL_FORMAT_BGRA8888                      | integer value  |
-
-| **Pixel Compressed formats                 ** |  |
-| PIXEL_FORMAT_COMPRESSED_R11_EAC                 | integer value           |
-| PIXEL_FORMAT_COMPRESSED_SIGNED_R11_EAC          | integer value           |
-| PIXEL_FORMAT_COMPRESSED_RG11_EAC                | integer value           |
-| PIXEL_FORMAT_COMPRESSED_SIGNED_RG11_EAC         | integer value           |
-| PIXEL_FORMAT_COMPRESSED_RGB8_ETC2               | integer value           |
-| PIXEL_FORMAT_COMPRESSED_SRGB8_ETC2              | integer value           |
-| PIXEL_FORMAT_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2    | integer value  |
-| PIXEL_FORMAT_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2   | integer value  |
-| PIXEL_FORMAT_COMPRESSED_RGBA8_ETC2_EAC                   | integer value  |
-| PIXEL_FORMAT_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC            | integer value  |
-| PIXEL_FORMAT_COMPRESSED_RGB8_ETC1                        | integer value  |
-| PIXEL_FORMAT_COMPRESSED_RGB_PVRTC_4BPPV1                 | integer value  |
-
-|**Texture filtering mode ** | |
-|FILTER_MODE_NONE                     | integer value  |
-|FILTER_MODE_DEFAULT                  | integer value  |
-|FILTER_MODE_NEAREST                  | integer value  |
-|FILTER_MODE_LINEAR                   | integer value  |
-
-|**Sampler wrap mode ** | |
-|WRAP_MODE_DEFAULT                    | integer value  |
-|WRAP_MODE_CLAMP_TO_EDGE              | integer value  |
-|WRAP_MODE_REPEAT                     | integer value  |
-|WRAP_MODE_MIRRORED_REPEAT            | integer value  |
-
-|**Material face culling mode ** | |
-|MATERIAL_NONE                        | integer value  |
-|MATERIAL_CULL_BACK                   | integer value  |
-|MATERIAL_CULL_FRONT                  | integer value  |
-|MATERIAL_CULL_BACK_AND_FRONT         | integer value  |
-
-|**Geometry primitives type ** | |
-|GEOMETRY_POINTS                      | integer value  |
-|GEOMETRY_LINES                       | integer value  |
-|GEOMETRY_LINE_LOOP                   | integer value  |
-|GEOMETRY_LINE_STRIP                  | integer value  |
-|GEOMETRY_TRIANGLES                   | integer value  |
-|GEOMETRY_TRIANGLE_FAN                | integer value  |
-|GEOMETRY_TRIANGLE_STRIP              | integer value  |
-
-|**Property type ** | |
-|PROPERTY_NONE                        | none  |
-|PROPERTY_BOOLEAN                     | integer value  |
-|PROPERTY_FLOAT                       | float value  |
-|PROPERTY_INTEGER                     | integer value  |
-|PROPERTY_VECTOR2                     | Array[ float, float ] |
-|PROPERTY_VECTOR3                     | Array[ float, float, float ]  |
-|PROPERTY_VECTOR4                     | Array[ float, float, float, float ]  |
-|PROPERTY_MATRIX3                     | Object         |
-|PROPERTY_MATRIX                      | Object         |
-|PROPERTY_RECTANGLE                   | Object |
-|PROPERTY_ORIENTATION                 | Object  |
-|PROPERTY_STRING                      | String  |
-|PROPERTY_ARRAY                       | Object   |
-|PROPERTY_MAP                         | Object  |
-
-|**Layout dimensions ** | |
-|DIMENSION_WIDTH                      | integer value  |
-|DIMENSION_HEIGHT                     | integer value  |
-
-|**Item layout type ** | |
-|ITEM_LAYOUT_LIST                     | integer value  |
-|ITEM_LAYOUT_GRID                     | integer value  |
-
-|**Scroll direction bias ** | |
-|DIRECTION_BIAS_NONE                  | integer value  |
-|DIRECTION_BIAS_LEFT                  | integer value  |
-|DIRECTION_BIAS_RIGHT                 | integer value  |
-
-|**Animation alpha function ** | |
-|ALPHA_FUNCTION_DEFAULT               | integer value  |
-|ALPHA_FUNCTION_LINEAR                | integer value  |
-|ALPHA_FUNCTION_REVERSE               | integer value  |
-|ALPHA_FUNCTION_EASE_IN_SQUARE        | integer value  |
-|ALPHA_FUNCTION_EASE_OUT_SQUARE       | integer value  |
-|ALPHA_FUNCTION_EASE_IN               | integer value  |
-|ALPHA_FUNCTION_EASE_OUT              | integer value  |
-|ALPHA_FUNCTION_EASE_IN_OUT           | integer value  |
-|ALPHA_FUNCTION_EASE_IN_SINE          | integer value  |
-|ALPHA_FUNCTION_EASE_OUT_SINE         | integer value  |
-|ALPHA_FUNCTION_EASE_IN_OUT_SINE      | integer value  |
-|ALPHA_FUNCTION_BOUNCE                | integer value  |
-|ALPHA_FUNCTION_SIN                   | integer value  |
-|ALPHA_FUNCTION_EASE_OUT_BACK         | integer value  |
-
- * @class Constants
- */
diff --git a/plugins/dali-script-v8/docs/content/dali.js b/plugins/dali-script-v8/docs/content/dali.js
deleted file mode 100644 (file)
index e03a9d2..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-/**
- *
-
-## DALi 3D ( Dynamic Animation Library )
-
-DALi is a quick and easy way of allowing developers to create Rich UI Applications like:
-
- + Image & Video galleries
- + Music players
- + Games
- + Maps
- + Homescreens / launch pads
- + Advanced watch faces for wearable devices
-  
-
-DALi is based on OpenGL ES 2.0 & 3.0, however it hides the complexity of
-the OpenGL API from developers and provides a clean cross-platform JavaScript framework.
-
-+ Create Images, Text and Meshes
-+ Create shaders using GLSL
-+ Provide multiple cameras and render targets
-+ Provides Layers to aid in 2D UI layout
-+ Easy to use Animation framework
-+ Automatic background loading of resources ( images / text / meshes )
-+ Runs all animations in a seperate thread. This helps maintain 60 FPS even if JavaScript is performing a long operation ( e.g. Garbage Collection ).
-+ Provides keyboard / touch / mouse handling
-  
-![Screen shots](../assets/img/screen-shot.png)
-
-## Running JavaScript from DALi C++ API
-```
-mScript = Dali::Toolkit::Script::New();
-  
-mScript.ExecuteFile( mScriptFileName);
-```
-
-## Actors and the Stage
-
-A DALi application uses a hierachy of Dali::Actor objects to position visible content.  An actor inherits a position relative to its parent, and can be moved relative to this point.  UI controls can be built by combining multiple actors.
-
-To display the contents of an actor, it must be connected to the Dali::Stage.  This provides an invisible root (top-level) actor, to which all other actors are added.  A direct or indirect child of the root actor is considered "onStage".  Multi-touch events are received through signals emitted by on-stage actors.
-
-The following example shows how to connect a new actor to the stage:
-```
-       var actor = new dali.actor();
-  
-       dali.stage.add(actor);
-```
-## The Coordinate System
-
-The Stage has a 2D size, which matches the size of the application window.  The default coordinate system in DALi has the origin at the top-left corner, with positive X to right, and position Y going
-downwards.  This is intended to be convenient when laying-out 2D views.
-
-![Screen shots](../assets/img/coordinate-system-and-stage.png)
-
-
- * @module DALi
- * @main  DALi
- */
diff --git a/plugins/dali-script-v8/docs/content/helpers.js b/plugins/dali-script-v8/docs/content/helpers.js
deleted file mode 100644 (file)
index 78b37c2..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-module.exports = {
-    daliName: function() {
-        return "dali";
-    }
-};
diff --git a/plugins/dali-script-v8/docs/content/image-view.js b/plugins/dali-script-v8/docs/content/image-view.js
deleted file mode 100644 (file)
index 66f2240..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-/**
- *
-## ImageView API
-
-   DALi ImageView can be used to display an image.
-
-   It is preferable to set a valid size to the image for efficiency. However, do not set size
-   that is bigger than the actual image size, as the up-scaling is not available, the content
-   of the area not covered by actual image is undefined and it will not be cleared.
-
-  
-### Simple example of creating an ImageView
-
-```
-var imageView = new dali.Control("ImageView");
-  
-imageView.image = "myImage.jpg";
-imageView.parentOrigin = dali.CENTER;
-imageView.anchorPoint = dali.CENTER;
-  
-dali.stage.add( imageView );
-```
-
-### Advanced example of creating an ImageView and applying a GL-ES shader to it
-
-```
-// vertexShader = "";  // vertex shader   ( optional)
-// fragmentShader = "";  // fragment shader   ( optional)
-// hints =   // shader hints   ( optional)
-//       [ "OUTPUT_IS_TRANSPARENT",   // Might generate transparent alpha from opaque inputs
-//         "MODIFIES_GEOMETRY" ];     // Might change position of vertices, this option disables any culling optimizations
-  
-var shader = {
-    "vertexShader": myVertexShader,
-    "fragmentShader": myFragmentShader,
-    "hints" : myHints
-};
-  
-var imageView = new dali.Control("ImageView");
-imageView.parentOrigin = dali.CENTER;
-imageView.anchorPoint = dali.CENTER;
-imageView.size = imageViewSize; // If not set, it will use either the natural image size or the desired image size if any
-dali.stage.add( imageView );
-  
-var image = {
-    "visualType" : "IMAGE",
-    "url" : "myImage.jpg",
-    "desiredWidth" : desiredWidth,   // The desired image width while loading (optional but preferable to set for efficiency)
-    "desiredHeight" : desiredHeight,   // The desired image height while loading (optional but preferable to set for efficiency)
-    "shader" : shader  // Optional
-};
-  
-imageView.image = image; // assign the image and shader to imageView
-
-```
-
-
- @class ImageView
- @extends Actor
-
-*/
diff --git a/plugins/dali-script-v8/docs/content/image.js b/plugins/dali-script-v8/docs/content/image.js
deleted file mode 100644 (file)
index e5810de..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- *
-## Image API
-
-An Image object represents a resource that can be added to Material.
-  
-The image is discarded when all Materials using the Image object are discarded.
-  
-Note: if a resource was shared between Image objects it exists until its last reference is gone.
-  
-Image objects are responsible for the underlying resource's lifetime.
-  
-### The hierarchy of Image is:
-
-- {{#crossLink "image"}}Image base class {{/crossLink}} provides basic functionality
- - {{#crossLink "ResourceImage"}}ResourceImage {{/crossLink}} used for loading image files and nine-patch files
- - {{#crossLink "BufferImage"}}BufferImage {{/crossLink}} used for generating your own image
- - {{#crossLink "FrameBufferImage"}}FrameBufferImage {{/crossLink}} contains the result of an 'off screen' render pass of a RenderTask.
-
-  
-### Example:
-```
-// Create a resource image with a given URL
-var image = new dali.ResourceImage( {url: "background.png"} );
-  
-// Create materials that specifie the visual properties of the renderer.
-var material1 = new dali.Material();
-var material2 = new dali.Material();
-  
-// Add images as texture to be used by the materials
-material1.addTexture( image, "sTexture" );
-material2.addTexture( image, "sTexture" );
-
-```
-The API supports functionality such as:
-
-+ {{#crossLink "image/Image:method"}}new dali.ResourceImage{{/crossLink}}
-+ {{#crossLink "image/getWidth:method"}}{{/crossLink}}
-+ {{#crossLink "image/getHeight:method"}}{{/crossLink}}
-  
-### 9 patch images
-
-The Image class also has support for loading 9 patch Images if the filename contains .9.
-e.g.
-```
-var blackFrame = new dali.ResourceImage( {url:"black-frame.9.png"} );
-var borderNinePatch = new dali.ResourceImage( {url:"border.9.png"} );
-```
-The nine patch image will scale automatically with the size of the actor.
-  
-Tool for making 9 patches
-  
-  http://romannurik.github.io/AndroidAssetStudio/nine-patches.html
-  
-More information on them:
-  
-  http://radleymarx.com/blog/simple-guide-to-9-patch/
-  
-  http://developer.android.com/tools/help/draw9patch.html
-  
-
-
- @class Image
- */
diff --git a/plugins/dali-script-v8/docs/content/item-factory.js b/plugins/dali-script-v8/docs/content/item-factory.js
deleted file mode 100644 (file)
index b15c1f1..0000000
+++ /dev/null
@@ -1,177 +0,0 @@
-/**
- *
-## ItemFactory API
-
- ItemFactory is for storing the data of {{#crossLink "ItemView"}}ItemView{{/crossLink}}
- and creating actors for ItemView on request. Each item in ItemView is identified by a
- unique ID, and has a linear order from 0.
- A JSON file should be provided to ItemFactory which defines the templates of items
- to be used to create the actors. Multiple templates can be defined in the JSON file
- for different type of items.
-### Simple example of creating a JSON template for items
-```
-  {
-    "templates":
-    {
-      "template-item":
-      {
-        "name":"item",
-        "type":"Actor",
-        "position":[0,0,0],
-        "anchorPoint":"TOP_LEFT",
-        "parentOrigin":"TOP_LEFT",
-        "actors":
-         [
-          {
-            "name":"icon",
-            "type":"ImageView",
-            "image":
-            {
-              "visualType" : "IMAGE",
-              "url": "{icon_path}"
-            },
-            "position":[20.0, 0.0, 0.0],
-            "size":[70.0, 70.0, 0.0],
-            "color":[1.0,1.0,1.0,1.0],
-            "anchorPoint":"CENTER_LEFT",
-            "parentOrigin":"CENTER_LEFT",
-            "actors":
-            [
-              {
-                "name":"title",
-                "anchorPoint":"CENTER_LEFT",
-                "parentOrigin":"CENTER_RIGHT",
-                "type":"TextLabel",
-                "position": [30.0, 0.0, 0.0],
-                "size":[200.0, 70.0, 0.0],
-                "pointSize":30,
-                "fontFamily":"HelveticaNeue",
-                "fontStyle":"Bold",
-                "horizontalAlignment":"BEGIN",
-                "verticalAlignment":"CENTER",
-                "textColor": [1.0,0.0,1.0,1.0],
-                "text":"{title_text}"
-              }
-            ]
-          }
-        ]
-      }
-    }
-  }
-```
- The data of items should be provided to ItemFactory as an array of property maps
- in which each map contains the data for each item, including the template to be used
- to build the actor and the pairs of key/value to be used to replace the constants
- defined in the template. The order of property maps in the array represents the actual
- order of items in ItemView.
- ### Example of defining the data of an ItemView with two items
-```
-  var itemViewData = [
-                       { "template" : "template-item",
-                         "icon_path" : "icon0.png",
-                         "title_text" : "Item 0" },
-                       { "template" : "template-item",
-                         "icon_path" : "icon1.png",
-                         "title_text" : "Item 1" }
-                     ];
-```
- This means ItemFactory will use the template "template-item" defined in the JSON file
- to create the item for ItemView and replace the constants "icon_path" and "title_text"
- in the template with their actual values, e.g. "icon0.png" and "Item 0". Each item can
- have different template and different data.
- ### Example of creating an ItemFactory with the above JSON template and link it with an ItemView
-
-![ ](../assets/img/item-view/list.png)
-
-```
-  // Define the data of 100 items
-  var itemViewData = [];
-  for (var itemId = 0; itemId < 100; itemId++)
-  {
-    var itemData = {};
-    itemData["template"] = "template-item";
-    itemData["icon_path"] = "icon" + itemId + ".png";
-    itemData["title_text"] = "Item " + itemId;
-    itemViewData[itemId] = itemData;
-  }
-  // Create the item factory and set the JSON template file and item view data
-  var itemFactory = new dali.ItemFactory();
-  itemFactory.jsonTemplateFile = "./item-template.json"; // Set the JSON template file
-  itemFactory.data = itemViewData; // Set the ItemView data
-  // Create the item view with the given item factory
-  var itemView = new dali.Control("ItemView", itemFactory);
-  itemView.size = [stageSize.x, stageSize.y, 0.0];
-  itemView.parentOrigin = dali.CENTER_LEFT;
-  itemView.anchorPoint = dali.CENTER_LEFT;
-  dali.stage.add( itemView );
-
-  // Add a list layout to ItemView (multiple layouts can be added to the same ItemView)
-  itemView.addLayout(dali.ITEM_LAYOUT_LIST);
-  // Set custom item size for the list layout
-  // If set, this will overide the predefined item size in the list layout
-  itemView.setItemSize(0, [350, 100, 0]); // 0 means the first layout added to ItemView
-  // Acticate the list layout (which will layout the items as a list)
-  itemView.activateLayout(0, itemView.size); // 0 means the first layout added to ItemView
-```
- ### Example of changing the data of items in ItemView dynamically
-```
-  var data = itemFactory.data;
-  data[itemId]["icon_path"] = "new-icon.png";
-  data[itemId]["title_text"] = "New Item";
-  itemFactory.data = data; // ItemView will update the changed items immediately
-```
- @class ItemFactory
-
-*/
-
-/**
- * Sets the file name of JSON template that contains the templates for items.
- *
- * @example
- *    itemFactory.jsonTemplateFile = "item-template.json"; // ItemFactory will look for the template from this JSON file
- *
- * @type String
- * @property jsonTemplateFile
- */
-JSON_TEMPLATE_FILE
-
-/**
- * Sets the data of ItemView
- *
- *  The data is an array of property maps in which each map contains the data
- *  for each item, including the template to be used to build the actor and
- *  the pairs of key/value to be used to replace the constants defined in the
- *  template. The order of property maps in the array represents the actual
- *  order of items in ItemView.
- *
- * @example
- *   var itemViewData = [
- *                        { "template" : "template-item",
- *                          "icon_path" : "icon0.png",
- *                          "title_text" : "Item 0" },
- *                        { "template" : "template-item",
- *                          "icon_path" : "icon1.png",
- *                          "title_text" : "Item 1" }
- *                     ];
- *
- *    itemFactory.data = itemViewData; // ItemFactory will create items from this data
- *
- * @type Array
- * @property data
- */
-DATA
diff --git a/plugins/dali-script-v8/docs/content/item-view.js b/plugins/dali-script-v8/docs/content/item-view.js
deleted file mode 100644 (file)
index 776c5ea..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
- *
-## ItemView API
-
- ItemView is a scrollable layout container with built-in layouts to determine
- the logical position of each item in a layout.
- Actors are provided from an external {{#crossLink "ItemFactory"}}ItemFactory{{/crossLink}},
- to display the currently visible items. ItemFactory is for storing the data of ItemView and
- creating actors for ItemView on request. Each item in ItemView is identified by a unique ID,
- and has a linear order from 0.
- ### Example of creating an ItemView (see {{#crossLink "ItemFactory"}}ItemFactory{{/crossLink}} API for a full example)
-```
-  // Define the data of 100 items
-  var itemViewData = [];
-  for (var itemId = 0; itemId < 100; itemId++)
-  {
-    var itemData = {};
-    itemData["template"] = "template-item";
-    itemData["title_text"] = "Item " + itemId;
-    itemViewData[itemId] = itemData;
-  }
-  // Create an item factory and set the JSON template file and item view data
-  var itemFactory = new dali.ItemFactory();
-  itemFactory.jsonTemplateFile = "./item-template.json"; // Set the JSON template file
-  itemFactory.data = itemViewData; // Set the ItemView data
-  // Create the item view with the given item factory
-  var itemView = new dali.Control("ItemView", itemFactory);
-  itemView.size = [stageSize.x, stageSize.y, 0.0];
-  itemView.parentOrigin = dali.CENTER_LEFT;
-  itemView.anchorPoint = dali.CENTER_LEFT;
-  dali.stage.add( itemView );
-  // Add a scroll bar to ItemView (optional)
-  var scrollBar = new dali.Control("ScrollBar");
-  scrollBar.parentOrigin = dali.TOP_RIGHT;
-  scrollBar.anchorPoint = dali.TOP_RIGHT;
-  scrollBar.widthResizePolicy = "FIT_TO_CHILDREN";
-  scrollBar.heightResizePolicy = "FILL_TO_PARENT";
-  scrollBar.indicatorHeightPolicy = "Fixed";
-  scrollBar.indicatorFixedHeight = 60.0;
-  itemView.add(scrollBar);
-  // Add a list layout to ItemView (multiple layouts can be added to the same ItemView)
-  itemView.addLayout(dali.ITEM_LAYOUT_LIST);
-  // Set custom item size for the list layout
-  // If set, this will overide the predefined item size in the list layout
-  itemView.setItemSize(0, [350, 100, 0]); // 0 means the first layout added to ItemView
-  // Acticate the list layout (which will layout the items as a list)
-  itemView.activateLayout(0, itemView.size); // 0 means the first layout added to ItemView
-```
- @class ItemView
- @extends Actor
-
-*/
diff --git a/plugins/dali-script-v8/docs/content/keyboard-focus-manager.js b/plugins/dali-script-v8/docs/content/keyboard-focus-manager.js
deleted file mode 100644 (file)
index fbdf726..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/**
- *
-
-## Keyboard Focus Manager API
-
-Keyboard focus manager controls the keyboard focus flow.
-
-It also allows you to set an actor that is used to high light the focused actor.
-
-{{#crossLink "KeyboardFocusManager/setFocusIndicatorActor:method"}}{{/crossLink}}
-
-The application is required to help the manager when moving focus.
-
-![ Focus Manager ](../assets/img/focus-manager/focus-manager.png)
-
-### keyboard-pre-focus-change
-
-Connect to the pre-focus-change call back as follows:
-```
-// listen for pre-focus change events
-dali.keyboardFocusManager.on("keyboardPreFocusChange", this.preFocusChanged);
-  
-// example call back handler
-  
-// currentFocusedActor =  currently focused actor
-// proposed = keyboard focus managers guess at what actor should be next
-// direction = the direction of the focus is moving in
-//
-myApp.preFocusChanged = function( currentFocusedActor, proposedActorToFocus, direction)
-{
-  
-  if (direction == "up" )
-  {
-    return actor above current actor;
-    }
-  if (direction == "right" )
-  {
-    return actor to the right of current actor;
-  }
-}
-  
-dali.keyboardFocusManager.on("keyboardPreFocusChange", myCallback)
-```
-
-KeyboardFocusManager makes the best guess for which actor to focus towards the given direction, but applications might want to change that.
-
-By connecting with this signal, they can check the proposed actor to focus and return a different actor if they wish.
-
-This signal is only emitted when the navigation key is pressed and KeyboardFocusManager tries to move the focus automatically.
-
-It won't be emitted for focus movement by calling setCurrentFocusActor directly.
-
-### keyboard-focus-changed
-
-This signal is emitted after the current focused actor has been changed.
-```
-myCallback( originalFocusedActor, currentFocusedActor)
-{
-}
-  
-dali.keyboardFocusManager.on("keyboardFocusChange", myCallback)
-```
-
-@class KeyboardFocusManager
-
- */
diff --git a/plugins/dali-script-v8/docs/content/layer-actor.js b/plugins/dali-script-v8/docs/content/layer-actor.js
deleted file mode 100644 (file)
index bcbf696..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
-## Layer Actor API ( extends Actor API)
-
- Layers provide a mechanism for overlaying groups of actors on top of each other.
-
- When added to the stage, a layer can be ordered relative to other layers. The bottom
- layer is at depth zero. The stage provides a default layer for it's children.
-
- Layered actors inherit position etc. as normal, but are drawn in an order determined
- by the layers. The depth buffer is cleared before each layer is rendered unless depth
- test is disabled or there's no need for it based on the layers contents;
- actors in lower layers cannot obscure actors in higher layers.
-
- If depth test is disabled, there is no performance overhead from clearing the depth buffer.
-
-
-### Simple example
-
-```
-
-var textActor1 = new dali.TextActor( "I'm above" );
-var textActor2 = new dali.TextActor( "I'm below" );
-  
-// add first actor to the stage
-dali.stage.add( textActor1 );
-  
-// create a layer and add second actor
-var layer = new dali.Layer();
-layer.add( textActor2 );
-dali.stage.add( layer );  // textActor2 is now above textActor1
-  
-// shift layer to bottom
-layer.lowerToBottom();   // textActor2 is now below textActor1
-```
-
-### Layer Actor Specific Properties
-
-| Name                   |    Type    | Writable     | Animatable|
-|------------------------|------------|--------------|-----------|
-| clippingEnabled        |BOOLEAN     | &#10004;     |  &#10008; |
-| clippingBox            | RECTANGLE ([0,0,400,600]) | &#10004; | &#10008;|
-
-  @class Layer
-  @extends Actor
- */
diff --git a/plugins/dali-script-v8/docs/content/module-loader.js b/plugins/dali-script-v8/docs/content/module-loader.js
deleted file mode 100644 (file)
index 181d8dc..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-/**
- ## Module loader
-
- See {{#crossLink "ModuleLoader/require:method"}}{{/crossLink}}
-
- @class ModuleLoader
- */
-
diff --git a/plugins/dali-script-v8/docs/content/pan-gesture-detector.js b/plugins/dali-script-v8/docs/content/pan-gesture-detector.js
deleted file mode 100644 (file)
index 55291e0..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-/**
- *
-## PanGestureDetector API
-
-
-PanGestureDetector analyse a stream of touch events and looks for panning (or dragging) gestures.
-If an actor is attached to the pan gesture detector, the detector will emit a detected signal to
-the application when it recognises a pan gesture on the attached actor in its analysis.
-
-### Simple example
-
-```
-// Create a pan gesture detector
-var panGestureDetector = new dali.PanGestureDetector();
-
-var actor = new dali.Actor();
-dali.stage.add(actor);
-
-// Attach an actor to the detector
-panGestureDetector.attach(actor);
-
-// Connect the detected signal
-panGestureDetector.on("panDetected", onPan);
-
-onPan = function(actor, panGesture)
-{
-    log("Pan gesture state: " + panGesture.state + ", number of touches: " + panGesture.numberOfTouches + ", time stamp: " + panGesture.time + "\n");
-    log("local position: " + panGesture.position.x + ", " + panGesture.position.y + "\n");
-    log("local displacement: " + panGesture.displacement.x + ", " + panGesture.displacement.y + "\n");
-    log("local velocity: " + panGesture.velocity.x + ", " + panGesture.velocity.y + "\n");
-    log("screen position: " + panGesture.screenPosition.x + ", " + panGesture.screenPosition.y + "\n");
-    log("screen displacement: " + panGesture.screenDisplacement.x + ", " + panGesture.screenDisplacement.y + "\n");
-    log("screen velocity: " + panGesture.screenVelocity.x + ", " + panGesture.screenVelocity.y + "\n");
-}
-
-// Detach the actor from the detector
-panGestureDetector.detach(actor);
-```
-@class PanGestureDetector
-
-*/
diff --git a/plugins/dali-script-v8/docs/content/path-animation.js b/plugins/dali-script-v8/docs/content/path-animation.js
deleted file mode 100644 (file)
index 45b7fb6..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- *
-## Path Animation API
-
-Paths can be used to animate position and orientation of actors.
-
-![ ](../assets/img/path/path.png)
-  
-Example
-
-```
-log("Path animation test\n");
-  
-var point0 = [ 0.0, 80.0, 0.0 ];
-var point1 = [ 200.0, 200.0, 0.0 ];
-var point2 = [ 400.0, 80.0, 0.0 ];
-  
-//Create a path
-var myPath = new dali.Path();
-myPath.points = [ point0, point1, point2 ];
-myPath.generateControlPoints( 0.25 );
-  
-function begin()
-{
-  
-  var imageView = new dali.Control("ImageView");
-  imageView.image = "gallery-small-45.jpg";
-  
-  imageView.position = [100,100,0];
-  dali.stage.add( imageView );
-  
-  var animation = new dali.Animation(2.0);
-  var animOptions = { alpha:dali.ALPHA_FUNCTION_EASE_IN_OUT_SINE, delay:0.5, duration:1.5 };
-  var forward = new dali.Vector3(1,0,0);
-  animation.animate( imageView, myPath, forward, animOptions );
-  
-  animation.setLooping( true );
-  animation.play();
-}
-  
-begin();
-```
-@class Path
-
-*/
\ No newline at end of file
diff --git a/plugins/dali-script-v8/docs/content/render-task.js b/plugins/dali-script-v8/docs/content/render-task.js
deleted file mode 100644 (file)
index c410fdf..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-/**
- *
-
-## RenderTask API
-
-
-RenderTasks describe how the Dali scene should be rendered.
-
-The {{#crossLink "Stage/getRenderTaskList:method"}}{{/crossLink}} method provides access to an ordered list of render-tasks.
-
-Each RenderTask must specify the source actors to be rendered, and a camera actor from
-which the scene is viewed.
-
-
-RenderTasks may optionally target a frame-buffer, otherwise the default GL surface is used;
-typically this is a window provided by the native system.
-
-
-By default Dali provides a single RenderTask, which renders the entire actor hierachy using
-a default camera actor and GL surface. If stereoscopic rendering is enabled, Dali will create
-two additional render tasks, on for each eye. Each render task will have its own camera parented
-to the default camera actor.
-
-The first RenderTask used for input handling will be the last one rendered, which also has input enabled,
-and has a valid source & camera actor; see {{#crossLink "RenderTask/setInputEnabled:method"}}{{/crossLink}}.
-
-If none of the actors are hit in the last RenderTask rendered, then input handling will continue
-with the second last RenderTask rendered, and so on.
-
-All RenderTasks which target a frame-buffer (i.e. off screen) will be rendered before all RenderTasks
-which target the default GL surface. This allows the user to render intermediate targets which are used
-later when targetting the screen.
-
-A RenderTask targetting a frame-buffer can still be hit-tested, provided that the
-screen->frame-buffer coordinate conversion is successful; see SetScreenToFrameBufferMappingActor().
-```
-var tasklist = dali.stage.getRenderTaskList();
-  
-var renderTask0 = tasklist.createTask();
-
-renderTask0.setSourceActor( myActor );
-renderTask0.setClearEnabled( true );
-renderTask0.clearColor = [1.0,0.0,0.0,0.0];
-
-renderTask0.clearColor = [1.0,0.0,0.0,0.0];
-
-var camera = new dali.CameraActor();
-
-renderTask0.setCameraActor( camera );
-```
-
-### Render Task Specific Properties
-
-
-| Name                   |    Type    | Writable     | Animatable|
-|------------------------|------------|--------------|-----------|
-|viewportPosition       | VECTOR2    | &#10004;     | &#10008; |
-|viewportSize           | VECTOR2    | &#10004;     | &#10008; |
-|clearColor             | VECTOR4    | &#10004;     | &#10008; |
-
-
-@class RenderTask
-*/
-
-/**
- * View port position
- *
- * @property viewportPosition
- * @type dali Vector2
- */
-viewportPosition
-
-/**
- * View port size
- *
- * @property parentOrigin
- * @type dali Vector3
- */
-viewportSize
-
- /**
- * clear color
- *
- * @property clearColor
- * @type dali Vector4
- */
- clearColor
\ No newline at end of file
diff --git a/plugins/dali-script-v8/docs/content/resource-image.js b/plugins/dali-script-v8/docs/content/resource-image.js
deleted file mode 100644 (file)
index fb982a0..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-/**
- *
-## ResourceImage (extends Image)
-
-A resource image extends the basic {{#crossLink "image"}}Image class{{/crossLink}} with
-the ability to load an image from a file.
-
-### Simple example
-```
-
-// Create a resource image with a given URL
-var image = new dali.ResourceImage( {url: "my_image.png"} );
-  
-// Create a material that specifies the visual properties of the renderer.
-var material = new dali.Material();
-  
-// Add the image as texture to be used by the material
-material.addTexture( image, "sTexture" );
-  
-```
-### Advanced example
-```
-
-function imageLoaded( image )
-{
-  log("image loaded " +image.url + "\n");
-}
-  
-var image = new dali.ResourceImage( {url: "my_image.png"} );
-  
-image.on("imageLoadingFinished", finished );
-  
-// Create a material and add the image as texture to be used by the material.
-var material = new dali.Material();
-material.addTexture( image, "sTexture" );
-
-```
-@class ResourceImage
-@extends Image
- */
diff --git a/plugins/dali-script-v8/docs/content/scroll-view.js b/plugins/dali-script-v8/docs/content/scroll-view.js
deleted file mode 100644 (file)
index bff2fc3..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-/**
- *
-## ScrollView API
-ScrollView is a container where the actors inside it can be scrolled manually
-(via touch or pan gesture) or automatically.
-By default, ScrollView can scroll to any position both horizontally and
-vertically and no snapping is enabled.
-Scroll mode can be specified to define how ScrollView should handle scrolling
-in X and Y axes respectively (i.e. whether scrolling is enabled horizontally
-or vertically, how scrolling is snapped, and the boundary to prevent ScrollView
-to scroll beyond a certain position in the axes).
-![ ](../assets/img/scroll-view/scroll-view.png)
-
-### Example of creating a ScrollView
-```
-  // Create a scroll view
-  var scrollView = new dali.Control("ScrollView");
-  var stageSize = dali.stage.getSize();
-  scrollView.size = [stageSize.x, stageSize.y, 0.0];
-  scrollView.parentOrigin = dali.CENTER;
-  scrollView.anchorPoint = dali.CENTER;
-  dali.stage.add( scrollView );
-  // Add actors to a scroll view with 3 pages
-  var pageRows = 1;
-  var pageColumns = 3;
-  for(var pageRow = 0; pageRow < pageRows; pageRow++)
-  {
-    for(var pageColumn = 0; pageColumn < pageColumns; pageColumn++)
-    {
-      var pageActor = new dali.Control();
-      pageActor.widthResizePolicy = "FILL_TO_PARENT";
-      pageActor.heightResizePolicy = "FILL_TO_PARENT";
-      pageActor.parentOrigin = dali.CENTER;
-      pageActor.anchorPoint = dali.CENTER;
-      pageActor.position = [pageColumn * stageSize.x, pageRow * stageSize.y, 0.0];
-      pageActor.name = "pageActor" + pageColumn;
-      // Add images in a 3x4 grid layout for each page
-      var imageRows = 4;
-      var imageColumns = 3;
-      var margin = 10.0;
-      var imageSize = [(stageSize.x / imageColumns) - margin, (stageSize.y / imageRows) - margin, 0.0];
-      for(var row = 0; row < imageRows; row++)
-      {
-        for(var column = 0; column < imageColumns;column++)
-        {
-          var imageView = new dali.Control("ImageView");
-          var imageId = row * imageColumns + column;
-          imageView.image = "./image-" + imageId + ".jpg";
-          imageView.parentOrigin = dali.CENTER;
-          imageView.anchorPoint = dali.CENTER;
-          imageView.size = imageSize;
-          imageView.position = [ margin * 0.5 + (imageSize[0] + margin) * column - stageSize.x * 0.5 + imageSize[0] * 0.5,
-                                 margin * 0.5 + (imageSize[1] + margin) * row - stageSize.y * 0.5 + imageSize[1] * 0.5,
-                                 0.0 ];
-          pageActor.add(imageView);
-          var position = imageView.position;
-        }
-      }
-      scrollView.add( pageActor );
-    }
-  }
-  // Set scroll view to have 3 pages in X axis and allow page snapping,
-  // and also disable scrolling in Y axis.
-  var scrollMode = {
-                     xAxisScrollEnabled  : true,
-                     xAxisSnapToInterval : stageSize.x,                // Define the snap points
-                     xAxisScrollBoundary : stageSize.x * pageColumns,  // i.e. Define 3 pages
-                     yAxisScrollEnabled  : false
-                   }
-  scrollView.setScrollMode(scrollMode);
-```
- @class ScrollView
- @extends Actor
-
-*/
diff --git a/plugins/dali-script-v8/docs/content/stage.js b/plugins/dali-script-v8/docs/content/stage.js
deleted file mode 100644 (file)
index 512b661..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
-## Stage API
-
-The Stage is a top-level object used for displaying a tree of Actors.
-
- - Stage is a static object used by accessing the dali.stage object.
- - Stage provides a top-level "root" actor.
- - Stage provides Key Events to the application
- - Stage has a background color you can set, see  {{#crossLink "stage/setBackgroundColor:method"}}{{/crossLink}}
-  
-When an actor is not required, remove it from the stage to save memory and help performance.
-```
-dali.stage.setBackgroundColor( dali.COLOR_WHITE);
-  
-var stageSize = dali.stage.getSize();
-  
-var actor = new dali.Actor( );
-  
-dali.stage.add( actor );
-  
-// when the actor is no longer required
-dali.stage.remove( actor );
-```
-
-![ ](../assets/img/stage.png)
-
-
-### Key Events
-
-Key events are received through the keyEvent callback.
-
-```
-daliApp.myCallback = function (keyEvent)
-{
-  switch (keyEvent.keyDescription) {
-          case "Up": log("up");
-              break;
-  
-          case "Down": log("down");
-              break;
-  
-          case "Left": log("left");
-              break;
-  
-          case "Right": log("right");
-              break;
-  
-  }
-}
-
-dali.stage.on("keyEvent", daliApp.myCallback);
-```
-
-The key event object has the following properties
-```
-  KeyEvent = {
-    state,             // boolean  = "down" or "up" key state
-    shiftPressed,      // boolean, shift key is held
-    ctrlPressed,       // boolean, ctrl key is held
-    altPressed,        // boolean, alt key is held
-    keyModifiers,      // key modifiers
-    keyCode,           // key code
-    keyDescription,    // key description
-    timestamp          // The time in milli-seconds when the event occured
-  }
-```
- @class Stage
-*/
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/css/external-small.png b/plugins/dali-script-v8/docs/dali-theme/assets/css/external-small.png
deleted file mode 100644 (file)
index 759a1cd..0000000
Binary files a/plugins/dali-script-v8/docs/dali-theme/assets/css/external-small.png and /dev/null differ
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/css/logo.png b/plugins/dali-script-v8/docs/dali-theme/assets/css/logo.png
deleted file mode 100644 (file)
index eda5c9f..0000000
Binary files a/plugins/dali-script-v8/docs/dali-theme/assets/css/logo.png and /dev/null differ
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/css/main.css b/plugins/dali-script-v8/docs/dali-theme/assets/css/main.css
deleted file mode 100644 (file)
index cdfe209..0000000
+++ /dev/null
@@ -1,783 +0,0 @@
-/*
-Font sizes for all selectors other than the body are given in percentages,
-with 100% equal to 13px. To calculate a font size percentage, multiply the
-desired size in pixels by 7.6923076923.
-
-Here's a quick lookup table:
-
-10px - 76.923%
-11px - 84.615%
-12px - 92.308%
-13px - 100%
-14px - 107.692%
-15px - 115.385%
-16px - 123.077%
-17px - 130.769%
-18px - 138.462%
-19px - 146.154%
-20px - 153.846%
-*/
-
-html {
-    background: #fff;
-    color: #333;
-    overflow-y: scroll;
-}
-
-body {
-    /*font: 13px/1.4 'Lucida Grande', 'Lucida Sans Unicode', 'DejaVu Sans', 'Bitstream Vera Sans', 'Helvetica', 'Arial', sans-serif;*/
-    font: 13px/1.4 'Helvetica', 'Arial', sans-serif;
-    margin: 0;
-    padding: 0;
-}
-
-/* -- Links ----------------------------------------------------------------- */
-a {
-    color: #356de4;
-    text-decoration: none;
-}
-
-.hidden {
-    display: none;
-}
-
-a:hover { text-decoration: underline; }
-
-/* "Jump to Table of Contents" link is shown to assistive tools, but hidden from
-   sight until it's focused. */
-.jump {
-    position: absolute;
-    padding: 3px 6px;
-    left: -99999px;
-    top: 0;
-}
-
-.jump:focus { left: 40%; }
-
-/* -- Paragraphs ------------------------------------------------------------ */
-p { margin: 1.3em 0; }
-dd p, td p { margin-bottom: 0; }
-dd p:first-child, td p:first-child { margin-top: 0; }
-
-/* -- Headings -------------------------------------------------------------- */
-h1, h2, h3, h4, h5, h6 {
-    color: #D98527;/*was #f80*/
-    font-family: 'Trebuchet MS', sans-serif;
-    font-weight: bold;
-    line-height: 1.1;
-    margin: 1.1em 0 0.5em;
-}
-
-h1 {
-    font-size: 184.6%;
-    color: #30418C;
-    margin: 0.75em 0 0.5em;
-}
-
-h2 {
-    font-size: 153.846%;
-    color: #E48A2B;
-}
-
-h3 { font-size: 138.462%; }
-
-h4 {
-    border-bottom: 1px solid #DBDFEA;
-    color: #E48A2B;
-    font-size: 115.385%;
-    font-weight: normal;
-    padding-bottom: 2px;
-}
-
-h5, h6 { font-size: 107.692%; }
-
-/* -- Code and examples ----------------------------------------------------- */
-code, kbd, pre, samp {
-    font-family: Menlo, Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace;
-    font-size: 92.308%;
-    line-height: 1.35;
-}
-
-p code, p kbd, p samp, li code {
-    background: #FCFBFA;
-    border: 1px solid #EFEEED;
-    padding: 0 3px;
-}
-
-a code, a kbd, a samp,
-pre code, pre kbd, pre samp,
-table code, table kbd, table samp,
-.intro code, .intro kbd, .intro samp,
-.toc code, .toc kbd, .toc samp {
-    background: none;
-    border: none;
-    padding: 0;
-}
-
-pre.code, pre.terminal, pre.cmd {
-    overflow-x: auto;
-    *overflow-x: scroll;
-    padding: 0.3em 0.6em;
-}
-
-pre.code {
-    background: #FCFBFA;
-    border: 1px solid #EFEEED;
-    border-left-width: 5px;
-}
-
-pre.terminal, pre.cmd {
-    background: #F0EFFC;
-    border: 1px solid #D0CBFB;
-    border-left: 5px solid #D0CBFB;
-}
-
-/* Don't reduce the font size of <code>/<kbd>/<samp> elements inside <pre>
-   blocks. */
-pre code, pre kbd, pre samp { font-size: 100%; }
-
-/* Used to denote text that shouldn't be selectable, such as line numbers or
-   shell prompts. Guess which browser this doesn't work in. */
-.noselect {
-    -moz-user-select: -moz-none;
-    -khtml-user-select: none;
-    -webkit-user-select: none;
-    -o-user-select: none;
-    user-select: none;
-}
-
-/* -- Lists ----------------------------------------------------------------- */
-dd { margin: 0.2em 0 0.7em 1em; }
-dl { margin: 1em 0; }
-dt { font-weight: bold; }
-
-/* -- Tables ---------------------------------------------------------------- */
-caption, th { text-align: left; }
-
-table {
-    border-collapse: collapse;
-    width: 100%;
-}
-
-td, th {
-    border: 1px solid #fff;
-    padding: 5px 12px;
-    vertical-align: top;
-}
-
-td { background: #E6E9F5; }
-td dl { margin: 0; }
-td dl dl { margin: 1em 0; }
-td pre:first-child { margin-top: 0; }
-
-th {
-    background: #D2D7E6;/*#97A0BF*/
-    border-bottom: none;
-    border-top: none;
-    color: #000;/*#FFF1D5*/
-    font-family: 'Trebuchet MS', sans-serif;
-    font-weight: bold;
-    line-height: 1.3;
-    white-space: nowrap;
-}
-
-
-/* -- Layout and Content ---------------------------------------------------- */
-#doc {
-    margin: auto;
-    min-width: 1024px;
-}
-
-.content { padding: 0 20px 0 25px; }
-
-.sidebar {
-    padding: 0 15px 0 10px;
-}
-#bd {
-    padding: 7px 0 130px;
-    position: relative;
-    width: 99%;
-}
-
-/* -- Table of Contents ----------------------------------------------------- */
-
-/* The #toc id refers to the single global table of contents, while the .toc
-   class refers to generic TOC lists that could be used throughout the page. */
-
-.toc code, .toc kbd, .toc samp { font-size: 100%; }
-.toc li { font-weight: bold; }
-.toc li li { font-weight: normal; }
-
-/* -- Intro and Example Boxes ----------------------------------------------- */
-/*
-.intro, .example { margin-bottom: 2em; }
-.example {
-    -moz-border-radius: 4px;
-    -webkit-border-radius: 4px;
-    border-radius: 4px;
-    -moz-box-shadow: 0 0 5px #bfbfbf;
-    -webkit-box-shadow: 0 0 5px #bfbfbf;
-    box-shadow: 0 0 5px #bfbfbf;
-    padding: 1em;
-}
-.intro {
-    background: none repeat scroll 0 0 #F0F1F8; border: 1px solid #D4D8EB; padding: 0 1em;
-}
-*/
-
-/* -- Other Styles ---------------------------------------------------------- */
-
-/* These are probably YUI-specific, and should be moved out of Selleck's default
-   theme. */
-
-.button {
-    border: 1px solid #dadada;
-    -moz-border-radius: 3px;
-    -webkit-border-radius: 3px;
-    border-radius: 3px;
-    color: #444;
-    display: inline-block;
-    font-family: Helvetica, Arial, sans-serif;
-    font-size: 92.308%;
-    font-weight: bold;
-    padding: 4px 13px 3px;
-    -moz-text-shadow: 1px 1px 0 #fff;
-    -webkit-text-shadow: 1px 1px 0 #fff;
-    text-shadow: 1px 1px 0 #fff;
-    white-space: nowrap;
-
-    background: #EFEFEF; /* old browsers */
-    background: -moz-linear-gradient(top, #f5f5f5 0%, #efefef 50%, #e5e5e5 51%, #dfdfdf 100%); /* firefox */
-    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f5f5f5), color-stop(50%,#efefef), color-stop(51%,#e5e5e5), color-stop(100%,#dfdfdf)); /* webkit */
-    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f5f5', endColorstr='#dfdfdf',GradientType=0 ); /* ie */
-}
-
-.button:hover {
-    border-color: #466899;
-    color: #fff;
-    text-decoration: none;
-    -moz-text-shadow: 1px 1px 0 #222;
-    -webkit-text-shadow: 1px 1px 0 #222;
-    text-shadow: 1px 1px 0 #222;
-
-    background: #6396D8; /* old browsers */
-    background: -moz-linear-gradient(top, #6396D8 0%, #5A83BC 50%, #547AB7 51%, #466899 100%); /* firefox */
-    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#6396D8), color-stop(50%,#5A83BC), color-stop(51%,#547AB7), color-stop(100%,#466899)); /* webkit */
-    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6396D8', endColorstr='#466899',GradientType=0 ); /* ie */
-}
-
-.newwindow { text-align: center; }
-
-.header .version em {
-    display: block;
-    text-align: right;
-}
-
-
-#classdocs .item {
-    border-bottom: 1px solid #466899;
-    margin: 1em 0;
-    padding: 1.5em;
-}
-
-#classdocs .item .params p,
-    #classdocs .item .returns p,{
-    display: inline;
-}
-
-#classdocs .item em code, #classdocs .item em.comment {
-    color: green;
-}
-
-#classdocs .item em.comment a {
-    color: green;
-    text-decoration: underline;
-}
-
-#classdocs .foundat {
-    font-size: 11px;
-    font-style: normal;
-}
-
-.attrs .emits {
-    margin-left: 2em;
-    padding: .5em;
-    border-left: 1px dashed #ccc;
-}
-
-abbr {
-    border-bottom: 1px dashed #ccc;
-    font-size: 80%;
-    cursor: help;
-}
-
-.prettyprint li.L0, 
-.prettyprint li.L1, 
-.prettyprint li.L2, 
-.prettyprint li.L3, 
-.prettyprint li.L5, 
-.prettyprint li.L6, 
-.prettyprint li.L7, 
-.prettyprint li.L8 {
-    list-style: decimal;
-}
-
-ul li p {
-    margin-top: 0;
-}
-
-.method .name {
-    font-size: 110%;
-}
-
-.apidocs .methods .extends .method,
-.apidocs .properties .extends .property,
-.apidocs .attrs .extends .attr,
-.apidocs .events .extends .event {
-    font-weight: bold;
-}
-
-.apidocs .methods .extends .inherited,
-.apidocs .properties .extends .inherited,
-.apidocs .attrs .extends .inherited,
-.apidocs .events .extends .inherited {
-    font-weight: normal;
-}
-
-#hd {
-    background: whiteSmoke;
-    background: -moz-linear-gradient(top,#DCDBD9 0,#F6F5F3 100%);
-    background: -webkit-gradient(linear,left top,left bottom,color-stop(0%,#DCDBD9),color-stop(100%,#F6F5F3));
-    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#dcdbd9',endColorstr='#F6F5F3',GradientType=0);
-    border-bottom: 1px solid #DFDFDF;
-    padding: 0 15px 1px 20px;
-    margin-bottom: 15px;
-}
-
-#hd img {
-    margin-right: 10px;
-    vertical-align: middle;
-}
-
-
-/* -- API Docs CSS ---------------------------------------------------------- */
-
-/*
-This file is organized so that more generic styles are nearer the top, and more
-specific styles are nearer the bottom of the file. This allows us to take full
-advantage of the cascade to avoid redundant style rules. Please respect this
-convention when making changes.
-*/
-
-/* -- Generic TabView styles ------------------------------------------------ */
-
-/*
-These styles apply to all API doc tabviews. To change styles only for a
-specific tabview, see the other sections below.
-*/
-
-.yui3-js-enabled .apidocs .tabview {
-    visibility: hidden; /* Hide until the TabView finishes rendering. */
-    _visibility: visible;
-}
-
-.apidocs .tabview.yui3-tabview-content { visibility: visible; }
-.apidocs .tabview .yui3-tabview-panel { background: #fff; }
-
-/* -- Generic Content Styles ------------------------------------------------ */
-
-/* Headings */
-h2, h3, h4, h5, h6 {
-    border: none;
-    color: #30418C;
-    font-weight: bold;
-    text-decoration: none;
-}
-
-.link-docs {
-    float: right;
-    font-size: 15px;
-    margin: 4px 4px 6px;
-    padding: 6px 30px 5px;
-}
-
-.apidocs { zoom: 1; }
-
-/* Generic box styles. */
-.apidocs .box {
-    border: 1px solid;
-    border-radius: 3px;
-    margin: 1em 0;
-    padding: 0 1em;
-}
-
-/* A flag is a compact, capsule-like indicator of some kind. It's used to
-   indicate private and protected items, item return types, etc. in an
-   attractive and unobtrusive way. */
-.apidocs .flag {
-    background: #bababa;
-    border-radius: 3px;
-    color: #fff;
-    font-size: 11px;
-    margin: 0 0.5em;
-    padding: 2px 4px 1px;
-}
-
-/* Class/module metadata such as "Uses", "Extends", "Defined in", etc. */
-.apidocs .meta {
-    background: #f9f9f9;
-    border-color: #efefef;
-    color: #555;
-    font-size: 11px;
-    padding: 3px 6px;
-}
-
-.apidocs .meta p { margin: 0; }
-
-/* Deprecation warning. */
-.apidocs .box.deprecated,
-.apidocs .flag.deprecated {
-    background: #fdac9f;
-    border: 1px solid #fd7775;
-}
-
-.apidocs .box.deprecated p { margin: 0.5em 0; }
-.apidocs .flag.deprecated { color: #333; }
-
-/* Module/Class intro description. */
-.apidocs .intro {
-    background: #f0f1f8;
-    border-color: #d4d8eb;
-}
-
-/* Loading spinners. */
-#bd.loading .apidocs,
-#api-list.loading .yui3-tabview-panel {
-    background: #fff url(../img/spinner.gif) no-repeat center 70px;
-    min-height: 150px;
-}
-
-#bd.loading .apidocs .content,
-#api-list.loading .yui3-tabview-panel .apis {
-    display: none;
-}
-
-.apidocs .no-visible-items { color: #666; }
-
-/* Generic inline list. */
-.apidocs ul.inline {
-    display: inline;
-    list-style: none;
-    margin: 0;
-    padding: 0;
-}
-
-.apidocs ul.inline li { display: inline; }
-
-/* Comma-separated list. */
-.apidocs ul.commas li:after { content: ','; }
-.apidocs ul.commas li:last-child:after { content: ''; }
-
-/* Keyboard shortcuts. */
-kbd .cmd { font-family: Monaco, Helvetica; }
-
-/* -- Generic Access Level styles ------------------------------------------- */
-.apidocs .item.protected,
-.apidocs .item.private,
-.apidocs .index-item.protected,
-.apidocs .index-item.deprecated,
-.apidocs .index-item.private {
-    display: none;
-}
-
-.show-deprecated .item.deprecated,
-.show-deprecated .index-item.deprecated,
-.show-protected .item.protected,
-.show-protected .index-item.protected,
-.show-private .item.private,
-.show-private .index-item.private {
-    display: block;
-}
-
-.hide-inherited .item.inherited,
-.hide-inherited .index-item.inherited {
-    display: none;
-}
-
-/* -- Generic Item Index styles --------------------------------------------- */
-.apidocs .index { margin: 1.5em 0 3em; }
-
-.apidocs .index h3 {
-    border-bottom: 1px solid #efefef;
-    color: #333;
-    font-size: 13px;
-    margin: 2em 0 0.6em;
-    padding-bottom: 2px;
-}
-
-.apidocs .index .no-visible-items { margin-top: 2em; }
-
-.apidocs .index-list {
-    border-color: #efefef;
-    font-size: 12px;
-    list-style: none;
-    margin: 0;
-    padding: 0;
-    -moz-column-count: 4;
-    -moz-column-gap: 10px;
-    -moz-column-width: 170px;
-    -ms-column-count: 4;
-    -ms-column-gap: 10px;
-    -ms-column-width: 170px;
-    -o-column-count: 4;
-    -o-column-gap: 10px;
-    -o-column-width: 170px;
-    -webkit-column-count: 4;
-    -webkit-column-gap: 10px;
-    -webkit-column-width: 170px;
-    column-count: 4;
-    column-gap: 10px;
-    column-width: 170px;
-}
-
-.apidocs .no-columns .index-list {
-    -moz-column-count: 1;
-    -ms-column-count: 1;
-    -o-column-count: 1;
-    -webkit-column-count: 1;
-    column-count: 1;
-}
-
-.apidocs .index-item { white-space: nowrap; }
-
-.apidocs .index-item .flag {
-    background: none;
-    border: none;
-    color: #afafaf;
-    display: inline;
-    margin: 0 0 0 0.2em;
-    padding: 0;
-}
-
-/* -- Generic API item styles ----------------------------------------------- */
-.apidocs .args {
-    display: inline;
-    margin: 0 0.5em;
-}
-
-.apidocs .flag.chainable { background: #46ca3b; }
-.apidocs .flag.protected { background: #9b86fc; }
-.apidocs .flag.private { background: #fd6b1b; }
-.apidocs .flag.async { background: #356de4; }
-.apidocs .flag.required { background: #e60923; }
-
-.apidocs .item {
-    border-bottom: 1px solid #efefef;
-    margin: 1.5em 0 2em;
-    padding-bottom: 2em;
-}
-
-.apidocs .item h4,
-.apidocs .item h5,
-.apidocs .item h6 {
-    color: #333;
-    font-family: inherit;
-    font-size: 100%;
-}
-
-.apidocs .item .description p,
-.apidocs .item pre.code {
-    margin: 1em 0 0;
-}
-
-.apidocs .item .meta {
-    background: none;
-    border: none;
-    padding: 0;
-}
-
-.apidocs .item .name {
-    display: inline;
-    font-size: 14px;
-}
-
-.apidocs .item .type,
-.apidocs .item .type a,
-.apidocs .returns-inline {
-    color: #555;
-}
-
-.apidocs .item .type,
-.apidocs .returns-inline {
-    font-size: 11px;
-    margin: 0 0 0 0;
-}
-
-.apidocs .item .type a { border-bottom: 1px dotted #afafaf; }
-.apidocs .item .type a:hover { border: none; }
-
-/* -- Item Parameter List --------------------------------------------------- */
-.apidocs .params-list {
-    list-style: square;
-    margin: 1em 0 0 2em;
-    padding: 0;
-}
-
-.apidocs .param { margin-bottom: 1em; }
-
-.apidocs .param .type,
-.apidocs .param .type a {
-    color: #666;
-}
-
-.apidocs .param .type {
-    margin: 0 0 0 0.5em;
-    *margin-left: 0.5em;
-}
-
-.apidocs .param-name { font-weight: bold; }
-
-/* -- Item "Emits" block ---------------------------------------------------- */
-.apidocs .item .emits {
-    background: #f9f9f9;
-    border-color: #eaeaea;
-}
-
-/* -- Item "Returns" block -------------------------------------------------- */
-.apidocs .item .returns .type,
-.apidocs .item .returns .type a {
-    font-size: 100%;
-    margin: 0;
-}
-
-/* -- Class Constructor block ----------------------------------------------- */
-.apidocs .constructor .item {
-    border: none;
-    padding-bottom: 0;
-}
-
-/* -- File Source View ------------------------------------------------------ */
-.apidocs .file pre.code,
-#doc .apidocs .file pre.prettyprint {
-    background: inherit;
-    border: none;
-    overflow: visible;
-    padding: 0;
-}
-
-.apidocs .L0,
-.apidocs .L1,
-.apidocs .L2,
-.apidocs .L3,
-.apidocs .L4,
-.apidocs .L5,
-.apidocs .L6,
-.apidocs .L7,
-.apidocs .L8,
-.apidocs .L9 {
-    background: inherit;
-}
-
-/* -- Submodule List -------------------------------------------------------- */
-.apidocs .module-submodule-description {
-    font-size: 12px;
-    margin: 0.3em 0 1em;
-}
-
-.apidocs .module-submodule-description p:first-child { margin-top: 0; }
-
-/* -- Sidebar TabView ------------------------------------------------------- */
-#api-tabview { margin-top: 0.6em; }
-
-#api-tabview-filter,
-#api-tabview-panel {
-    border: 1px solid #dfdfdf;
-}
-
-#api-tabview-filter {
-    border-bottom: none;
-    border-top: none;
-    padding: 0.6em 10px 0 10px;
-}
-
-#api-tabview-panel { border-top: none; }
-#api-filter { width: 97%; }
-
-/* -- Content TabView ------------------------------------------------------- */
-#classdocs .yui3-tabview-panel { border: none; }
-
-/* -- Source File Contents -------------------------------------------------- */
-.prettyprint li.L0,
-.prettyprint li.L1,
-.prettyprint li.L2,
-.prettyprint li.L3,
-.prettyprint li.L5,
-.prettyprint li.L6,
-.prettyprint li.L7,
-.prettyprint li.L8 {
-    list-style: decimal;
-}
-
-/* -- API options ----------------------------------------------------------- */
-#api-options {
-    font-size: 11px;
-    margin-top: 2.2em;
-    position: absolute;
-    right: 1.5em;
-}
-
-/*#api-options label { margin-right: 0.6em; }*/
-
-/* -- API list -------------------------------------------------------------- */
-#api-list {
-    margin-top: 1.5em;
-    *zoom: 1;
-}
-
-.apis {
-    font-size: 12px;
-    line-height: 1.4;
-    list-style: none;
-    margin: 0;
-    padding: 0.5em 0 0.5em 0.4em;
-}
-
-.apis a {
-    border: 1px solid transparent;
-    display: block;
-    margin: 0 0 0 -4px;
-    padding: 1px 4px 0;
-    text-decoration: none;
-    _border: none;
-    _display: inline;
-}
-
-.apis a:hover,
-.apis a:focus {
-    background: #E8EDFC;
-    background: -moz-linear-gradient(top, #e8edfc 0%, #becef7 100%);
-    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#E8EDFC), color-stop(100%,#BECEF7));
-    border-color: #AAC0FA;
-    border-radius: 3px;
-    color: #333;
-    outline: none;
-}
-
-.api-list-item a:hover,
-.api-list-item a:focus {
-    font-weight: bold;
-    text-shadow: 1px 1px 1px #fff;
-}
-
-.apis .message { color: #888; }
-.apis .result a { padding: 3px 5px 2px; }
-
-.apis .result .type {
-    right: 4px;
-    top: 7px;
-}
-
-.api-list-item .yui3-highlight {
-    font-weight: bold;
-}
-
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/favicon.png b/plugins/dali-script-v8/docs/dali-theme/assets/favicon.png
deleted file mode 100644 (file)
index 5a95dda..0000000
Binary files a/plugins/dali-script-v8/docs/dali-theme/assets/favicon.png and /dev/null differ
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/img b/plugins/dali-script-v8/docs/dali-theme/assets/img
deleted file mode 120000 (symlink)
index e8c2249..0000000
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../docs/content/images/
\ No newline at end of file
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/index.html b/plugins/dali-script-v8/docs/dali-theme/assets/index.html
deleted file mode 100644 (file)
index 487fe15..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<!doctype html>
-<html>
-    <head>
-        <title>Redirector</title>
-        <meta http-equiv="refresh" content="0;url=../">
-    </head>
-    <body>
-        <a href="../">Click here to redirect</a>
-    </body>
-</html>
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/js/api-filter.js b/plugins/dali-script-v8/docs/dali-theme/assets/js/api-filter.js
deleted file mode 100644 (file)
index 37aefba..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-YUI.add('api-filter', function (Y) {
-
-Y.APIFilter = Y.Base.create('apiFilter', Y.Base, [Y.AutoCompleteBase], {
-    // -- Initializer ----------------------------------------------------------
-    initializer: function () {
-        this._bindUIACBase();
-        this._syncUIACBase();
-    },
-    getDisplayName: function(name) {
-
-        Y.each(Y.YUIDoc.meta.allModules, function(i) {
-            if (i.name === name && i.displayName) {
-                name = i.displayName;
-            }
-        });
-
-        return name;
-    }
-
-}, {
-    // -- Attributes -----------------------------------------------------------
-    ATTRS: {
-        resultHighlighter: {
-            value: 'phraseMatch'
-        },
-
-        // May be set to "classes" or "modules".
-        queryType: {
-            value: 'classes'
-        },
-
-        source: {
-            valueFn: function() {
-                var self = this;
-                return function(q) {
-                    var data = Y.YUIDoc.meta[self.get('queryType')],
-                        out = [];
-                    Y.each(data, function(v) {
-                        if (v.toLowerCase().indexOf(q.toLowerCase()) > -1) {
-                            out.push(v);
-                        }
-                    });
-                    return out;
-                };
-            }
-        }
-    }
-});
-
-}, '3.4.0', {requires: [
-    'autocomplete-base', 'autocomplete-highlighters', 'autocomplete-sources'
-]});
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/js/api-list.js b/plugins/dali-script-v8/docs/dali-theme/assets/js/api-list.js
deleted file mode 100644 (file)
index 88905b5..0000000
+++ /dev/null
@@ -1,251 +0,0 @@
-YUI.add('api-list', function (Y) {
-
-var Lang   = Y.Lang,
-    YArray = Y.Array,
-
-    APIList = Y.namespace('APIList'),
-
-    classesNode    = Y.one('#api-classes'),
-    inputNode      = Y.one('#api-filter'),
-    modulesNode    = Y.one('#api-modules'),
-    tabviewNode    = Y.one('#api-tabview'),
-
-    tabs = APIList.tabs = {},
-
-    filter = APIList.filter = new Y.APIFilter({
-        inputNode : inputNode,
-        maxResults: 1000,
-
-        on: {
-            results: onFilterResults
-        }
-    }),
-
-    search = APIList.search = new Y.APISearch({
-        inputNode : inputNode,
-        maxResults: 100,
-
-        on: {
-            clear  : onSearchClear,
-            results: onSearchResults
-        }
-    }),
-
-    tabview = APIList.tabview = new Y.TabView({
-        srcNode  : tabviewNode,
-        panelNode: '#api-tabview-panel',
-        render   : true,
-
-        on: {
-            selectionChange: onTabSelectionChange
-        }
-    }),
-
-    focusManager = APIList.focusManager = tabviewNode.plug(Y.Plugin.NodeFocusManager, {
-        circular   : true,
-        descendants: '#api-filter, .yui3-tab-panel-selected .api-list-item a, .yui3-tab-panel-selected .result a',
-        keys       : {next: 'down:40', previous: 'down:38'}
-    }).focusManager,
-
-    LIST_ITEM_TEMPLATE =
-        '<li class="api-list-item {typeSingular}">' +
-            '<a href="{rootPath}{typePlural}/{name}.html">{displayName}</a>' +
-        '</li>';
-
-// -- Init ---------------------------------------------------------------------
-
-// Duckpunch FocusManager's key event handling to prevent it from handling key
-// events when a modifier is pressed.
-Y.before(function (e, activeDescendant) {
-    if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) {
-        return new Y.Do.Prevent();
-    }
-}, focusManager, '_focusPrevious', focusManager);
-
-Y.before(function (e, activeDescendant) {
-    if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) {
-        return new Y.Do.Prevent();
-    }
-}, focusManager, '_focusNext', focusManager);
-
-// Create a mapping of tabs in the tabview so we can refer to them easily later.
-tabview.each(function (tab, index) {
-    var name = tab.get('label').toLowerCase();
-
-    tabs[name] = {
-        index: index,
-        name : name,
-        tab  : tab
-    };
-});
-
-// Switch tabs on Ctrl/Cmd-Left/Right arrows.
-tabviewNode.on('key', onTabSwitchKey, 'down:37,39');
-
-// Focus the filter input when the `/` key is pressed.
-Y.one(Y.config.doc).on('key', onSearchKey, 'down:83');
-
-// Keep the Focus Manager up to date.
-inputNode.on('focus', function () {
-    focusManager.set('activeDescendant', inputNode);
-});
-
-// Update all tabview links to resolved URLs.
-tabview.get('panelNode').all('a').each(function (link) {
-    link.setAttribute('href', link.get('href'));
-});
-
-// -- Private Functions --------------------------------------------------------
-function getFilterResultNode() {
-    return filter.get('queryType') === 'classes' ? classesNode : modulesNode;
-}
-
-// -- Event Handlers -----------------------------------------------------------
-function onFilterResults(e) {
-    var frag         = Y.one(Y.config.doc.createDocumentFragment()),
-        resultNode   = getFilterResultNode(),
-        typePlural   = filter.get('queryType'),
-        typeSingular = typePlural === 'classes' ? 'class' : 'module';
-
-    if (e.results.length) {
-        YArray.each(e.results, function (result) {
-            frag.append(Lang.sub(LIST_ITEM_TEMPLATE, {
-                rootPath    : APIList.rootPath,
-                displayName : filter.getDisplayName(result.highlighted),
-                name        : result.text,
-                typePlural  : typePlural,
-                typeSingular: typeSingular
-            }));
-        });
-    } else {
-        frag.append(
-            '<li class="message">' +
-                'No ' + typePlural + ' found.' +
-            '</li>'
-        );
-    }
-
-    resultNode.empty(true);
-    resultNode.append(frag);
-
-    focusManager.refresh();
-}
-
-function onSearchClear(e) {
-
-    focusManager.refresh();
-}
-
-function onSearchKey(e) {
-    var target = e.target;
-
-    if (target.test('input,select,textarea')
-            || target.get('isContentEditable')) {
-        return;
-    }
-
-    e.preventDefault();
-
-    inputNode.focus();
-    focusManager.refresh();
-}
-
-function onSearchResults(e) {
-    var frag = Y.one(Y.config.doc.createDocumentFragment());
-
-    if (e.results.length) {
-        YArray.each(e.results, function (result) {
-            frag.append(result.display);
-        });
-    } else {
-        frag.append(
-            '<li class="message">' +
-                'No results found. Maybe you\'ll have better luck with a ' +
-                'different query?' +
-            '</li>'
-        );
-    }
-
-
-    focusManager.refresh();
-}
-
-function onTabSelectionChange(e) {
-    var tab  = e.newVal,
-        name = tab.get('label').toLowerCase();
-
-    tabs.selected = {
-        index: tab.get('index'),
-        name : name,
-        tab  : tab
-    };
-
-    switch (name) {
-    case 'classes': // fallthru
-    case 'modules':
-        filter.setAttrs({
-            minQueryLength: 0,
-            queryType     : name
-        });
-
-        search.set('minQueryLength', -1);
-
-        // Only send a request if this isn't the initially-selected tab.
-        if (e.prevVal) {
-            filter.sendRequest(filter.get('value'));
-        }
-        break;
-
-    case 'everything':
-        filter.set('minQueryLength', -1);
-        search.set('minQueryLength', 1);
-
-        if (search.get('value')) {
-            search.sendRequest(search.get('value'));
-        } else {
-            inputNode.focus();
-        }
-        break;
-
-    default:
-        // WTF? We shouldn't be here!
-        filter.set('minQueryLength', -1);
-        search.set('minQueryLength', -1);
-    }
-
-    if (focusManager) {
-        setTimeout(function () {
-            focusManager.refresh();
-        }, 1);
-    }
-}
-
-function onTabSwitchKey(e) {
-    var currentTabIndex = tabs.selected.index;
-
-    if (!(e.ctrlKey || e.metaKey)) {
-        return;
-    }
-
-    e.preventDefault();
-
-    switch (e.keyCode) {
-    case 37: // left arrow
-        if (currentTabIndex > 0) {
-            tabview.selectChild(currentTabIndex - 1);
-            inputNode.focus();
-        }
-        break;
-
-    case 39: // right arrow
-        if (currentTabIndex < (Y.Object.size(tabs) - 2)) {
-            tabview.selectChild(currentTabIndex + 1);
-            inputNode.focus();
-        }
-        break;
-    }
-}
-
-}, '3.4.0', {requires: [
-    'api-filter', 'api-search', 'event-key', 'node-focusmanager', 'tabview'
-]});
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/js/api-search.js b/plugins/dali-script-v8/docs/dali-theme/assets/js/api-search.js
deleted file mode 100644 (file)
index 175f6a6..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-YUI.add('api-search', function (Y) {
-
-var Lang   = Y.Lang,
-    Node   = Y.Node,
-    YArray = Y.Array;
-
-Y.APISearch = Y.Base.create('apiSearch', Y.Base, [Y.AutoCompleteBase], {
-    // -- Public Properties ----------------------------------------------------
-    RESULT_TEMPLATE:
-        '<li class="result {resultType}">' +
-            '<a href="{url}">' +
-                '<h3 class="title">{name}</h3>' +
-                '<span class="type">{resultType}</span>' +
-                '<div class="description">{description}</div>' +
-                '<span class="className">{class}</span>' +
-            '</a>' +
-        '</li>',
-
-    // -- Initializer ----------------------------------------------------------
-    initializer: function () {
-        this._bindUIACBase();
-        this._syncUIACBase();
-    },
-
-    // -- Protected Methods ----------------------------------------------------
-    _apiResultFilter: function (query, results) {
-        // Filter components out of the results.
-        return YArray.filter(results, function (result) {
-            return result.raw.resultType === 'component' ? false : result;
-        });
-    },
-
-    _apiResultFormatter: function (query, results) {
-        return YArray.map(results, function (result) {
-            var raw  = Y.merge(result.raw), // create a copy
-                desc = raw.description || '';
-
-            // Convert description to text and truncate it if necessary.
-            desc = Node.create('<div>' + desc + '</div>').get('text');
-
-            if (desc.length > 65) {
-                desc = Y.Escape.html(desc.substr(0, 65)) + ' &hellip;';
-            } else {
-                desc = Y.Escape.html(desc);
-            }
-
-            raw['class'] || (raw['class'] = '');
-            raw.description = desc;
-
-            // Use the highlighted result name.
-            raw.name = result.highlighted;
-
-            return Lang.sub(this.RESULT_TEMPLATE, raw);
-        }, this);
-    },
-
-    _apiTextLocator: function (result) {
-        return result.displayName || result.name;
-    }
-}, {
-    // -- Attributes -----------------------------------------------------------
-    ATTRS: {
-        resultFormatter: {
-            valueFn: function () {
-                return this._apiResultFormatter;
-            }
-        },
-
-        resultFilters: {
-            valueFn: function () {
-                return this._apiResultFilter;
-            }
-        },
-
-        resultHighlighter: {
-            value: 'phraseMatch'
-        },
-
-        resultListLocator: {
-            value: 'data.results'
-        },
-
-        resultTextLocator: {
-            valueFn: function () {
-                return this._apiTextLocator;
-            }
-        },
-
-        source: {
-            value: '/api/v1/search?q={query}&count={maxResults}'
-        }
-    }
-});
-
-}, '3.4.0', {requires: [
-    'autocomplete-base', 'autocomplete-highlighters', 'autocomplete-sources',
-    'escape'
-]});
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/js/apidocs.js b/plugins/dali-script-v8/docs/dali-theme/assets/js/apidocs.js
deleted file mode 100644 (file)
index e00591c..0000000
+++ /dev/null
@@ -1,370 +0,0 @@
-YUI().use(
-    'yuidoc-meta',
-    'api-list', 'history-hash', 'node-screen', 'node-style', 'pjax',
-function (Y) {
-
-var win          = Y.config.win,
-    localStorage = win.localStorage,
-
-    bdNode = Y.one('#bd'),
-
-    pjax,
-    defaultRoute,
-
-    classTabView,
-    selectedTab;
-
-// Kill pjax functionality unless serving over HTTP.
-if (!Y.getLocation().protocol.match(/^https?\:/)) {
-    Y.Router.html5 = false;
-}
-
-// Create the default route with middleware which enables syntax highlighting
-// on the loaded content.
-defaultRoute = Y.Pjax.defaultRoute.concat(function (req, res, next) {
-    prettyPrint();
-    bdNode.removeClass('loading');
-
-    next();
-});
-
-pjax = new Y.Pjax({
-    container      : '#docs-main',
-    contentSelector: '#docs-main > .content',
-    linkSelector   : '#bd a',
-    titleSelector  : '#xhr-title',
-
-    navigateOnHash: true,
-    root          : '/',
-    routes        : [
-        // -- / ----------------------------------------------------------------
-        {
-            path     : '/(index.html)?',
-            callbacks: defaultRoute
-        },
-
-        // -- /classes/* -------------------------------------------------------
-        {
-            path     : '/classes/:class.html*',
-            callbacks: [defaultRoute, 'handleClasses']
-        },
-
-        // -- /files/* ---------------------------------------------------------
-        {
-            path     : '/files/*file',
-            callbacks: [defaultRoute, 'handleFiles']
-        },
-
-        // -- /modules/* -------------------------------------------------------
-        {
-            path     : '/modules/:module.html*',
-            callbacks: defaultRoute
-        }
-    ]
-});
-
-// -- Utility Functions --------------------------------------------------------
-
-pjax.checkVisibility = function (tab) {
-    tab || (tab = selectedTab);
-
-    if (!tab) { return; }
-
-    var panelNode = tab.get('panelNode'),
-        visibleItems;
-
-    // If no items are visible in the tab panel due to the current visibility
-    // settings, display a message to that effect.
-    visibleItems = panelNode.all('.item,.index-item').some(function (itemNode) {
-        if (itemNode.getComputedStyle('display') !== 'none') {
-            return true;
-        }
-    });
-
-    panelNode.all('.no-visible-items').remove();
-
-    if (!visibleItems) {
-        if (Y.one('#index .index-item')) {
-            panelNode.append(
-                '<div class="no-visible-items">' +
-                    '<p>' +
-                    'Some items are not shown due to the current visibility ' +
-                    'settings. Use the checkboxes at the upper right of this ' +
-                    'page to change the visibility settings.' +
-                    '</p>' +
-                '</div>'
-            );
-        } else {
-            panelNode.append(
-                '<div class="no-visible-items">' +
-                    '<p>' +
-                    'This class doesn\'t provide any methods, properties, ' +
-                    'attributes, or events.' +
-                    '</p>' +
-                '</div>'
-            );
-        }
-    }
-
-    // Hide index sections without any visible items.
-    Y.all('.index-section').each(function (section) {
-        var items        = 0,
-            visibleItems = 0;
-
-        section.all('.index-item').each(function (itemNode) {
-            items += 1;
-
-            if (itemNode.getComputedStyle('display') !== 'none') {
-                visibleItems += 1;
-            }
-        });
-
-        section.toggleClass('hidden', !visibleItems);
-        section.toggleClass('no-columns', visibleItems < 4);
-    });
-};
-
-pjax.initClassTabView = function () {
-    if (!Y.all('#classdocs .api-class-tab').size()) {
-        return;
-    }
-
-    if (classTabView) {
-        classTabView.destroy();
-        selectedTab = null;
-    }
-
-    classTabView = new Y.TabView({
-        srcNode: '#classdocs',
-
-        on: {
-            selectionChange: pjax.onTabSelectionChange
-        }
-    });
-
-    pjax.updateTabState();
-    classTabView.render();
-};
-
-pjax.initLineNumbers = function () {
-    var hash      = win.location.hash.substring(1),
-        container = pjax.get('container'),
-        hasLines, node;
-
-    // Add ids for each line number in the file source view.
-    container.all('.linenums>li').each(function (lineNode, index) {
-        lineNode.set('id', 'l' + (index + 1));
-        lineNode.addClass('file-line');
-        hasLines = true;
-    });
-
-    // Scroll to the desired line.
-    if (hasLines && /^l\d+$/.test(hash)) {
-        if ((node = container.getById(hash))) {
-            win.scroll(0, node.getY());
-        }
-    }
-};
-
-pjax.initRoot = function () {
-    var terminators = /^(?:classes|files|modules)$/,
-        parts       = pjax._getPathRoot().split('/'),
-        root        = [],
-        i, len, part;
-
-    for (i = 0, len = parts.length; i < len; i += 1) {
-        part = parts[i];
-
-        if (part.match(terminators)) {
-            // Makes sure the path will end with a "/".
-            root.push('');
-            break;
-        }
-
-        root.push(part);
-    }
-
-    pjax.set('root', root.join('/'));
-};
-
-pjax.updateTabState = function (src) {
-    var hash = win.location.hash.substring(1),
-        defaultTab, node, tab, tabPanel;
-
-    function scrollToNode() {
-        if (node.hasClass('protected')) {
-            Y.one('#api-show-protected').set('checked', true);
-            pjax.updateVisibility();
-        }
-
-        if (node.hasClass('private')) {
-            Y.one('#api-show-private').set('checked', true);
-            pjax.updateVisibility();
-        }
-
-        setTimeout(function () {
-            // For some reason, unless we re-get the node instance here,
-            // getY() always returns 0.
-            var node = Y.one('#classdocs').getById(hash);
-            win.scrollTo(0, node.getY() - 70);
-        }, 1);
-    }
-
-    if (!classTabView) {
-        return;
-    }
-
-    if (src === 'hashchange' && !hash) {
-        defaultTab = 'index';
-    } else {
-        if (localStorage) {
-            defaultTab = localStorage.getItem('tab_' + pjax.getPath()) ||
-                'index';
-        } else {
-            defaultTab = 'index';
-        }
-    }
-
-    if (hash && (node = Y.one('#classdocs').getById(hash))) {
-        if ((tabPanel = node.ancestor('.api-class-tabpanel', true))) {
-            if ((tab = Y.one('#classdocs .api-class-tab.' + tabPanel.get('id')))) {
-                if (classTabView.get('rendered')) {
-                    Y.Widget.getByNode(tab).set('selected', 1);
-                } else {
-                    tab.addClass('yui3-tab-selected');
-                }
-            }
-        }
-
-        // Scroll to the desired element if this is a hash URL.
-        if (node) {
-            if (classTabView.get('rendered')) {
-                scrollToNode();
-            } else {
-                classTabView.once('renderedChange', scrollToNode);
-            }
-        }
-    } else {
-        tab = Y.one('#classdocs .api-class-tab.' + defaultTab);
-
-        // When the `defaultTab` node isn't found, `localStorage` is stale.
-        if (!tab && defaultTab !== 'index') {
-            tab = Y.one('#classdocs .api-class-tab.index');
-        }
-
-        if (classTabView.get('rendered')) {
-            Y.Widget.getByNode(tab).set('selected', 1);
-        } else {
-            tab.addClass('yui3-tab-selected');
-        }
-    }
-};
-
-pjax.updateVisibility = function () {
-    var container = pjax.get('container');
-
-    container.toggleClass('hide-inherited',
-            !Y.one('#api-show-inherited').get('checked'));
-
-    container.toggleClass('show-deprecated',
-            Y.one('#api-show-deprecated').get('checked'));
-
-    container.toggleClass('show-protected',
-            Y.one('#api-show-protected').get('checked'));
-
-    container.toggleClass('show-private',
-            Y.one('#api-show-private').get('checked'));
-
-    pjax.checkVisibility();
-};
-
-// -- Route Handlers -----------------------------------------------------------
-
-pjax.handleClasses = function (req, res, next) {
-    var status = res.ioResponse.status;
-
-    // Handles success and local filesystem XHRs.
-    if (res.ioResponse.readyState === 4 && (!status || (status >= 200 && status < 300))) {
-        pjax.initClassTabView();
-    }
-
-    next();
-};
-
-pjax.handleFiles = function (req, res, next) {
-    var status = res.ioResponse.status;
-
-    // Handles success and local filesystem XHRs.
-    if (res.ioResponse.readyState === 4 && (!status || (status >= 200 && status < 300))) {
-        pjax.initLineNumbers();
-    }
-
-    next();
-};
-
-// -- Event Handlers -----------------------------------------------------------
-
-pjax.onNavigate = function (e) {
-    var hash         = e.hash,
-        originTarget = e.originEvent && e.originEvent.target,
-        tab;
-
-    if (hash) {
-        tab = originTarget && originTarget.ancestor('.yui3-tab', true);
-
-        if (hash === win.location.hash) {
-            pjax.updateTabState('hashchange');
-        } else if (!tab) {
-            win.location.hash = hash;
-        }
-
-        e.preventDefault();
-        return;
-    }
-
-    // Only scroll to the top of the page when the URL doesn't have a hash.
-    this.set('scrollToTop', !e.url.match(/#.+$/));
-
-    bdNode.addClass('loading');
-};
-
-pjax.onOptionClick = function (e) {
-    pjax.updateVisibility();
-};
-
-pjax.onTabSelectionChange = function (e) {
-    var tab   = e.newVal,
-        tabId = tab.get('contentBox').getAttribute('href').substring(1);
-
-    selectedTab = tab;
-
-    // If switching from a previous tab (i.e., this is not the default tab),
-    // replace the history entry with a hash URL that will cause this tab to
-    // be selected if the user navigates away and then returns using the back
-    // or forward buttons.
-    if (e.prevVal && localStorage) {
-        localStorage.setItem('tab_' + pjax.getPath(), tabId);
-    }
-
-    pjax.checkVisibility(tab);
-};
-
-// -- Init ---------------------------------------------------------------------
-
-pjax.on('navigate', pjax.onNavigate);
-
-pjax.initRoot();
-pjax.upgrade();
-pjax.initClassTabView();
-pjax.initLineNumbers();
-pjax.updateVisibility();
-
-Y.APIList.rootPath = pjax.get('root');
-
-Y.one('#api-options').delegate('click', pjax.onOptionClick, 'input');
-
-Y.on('hashchange', function (e) {
-    pjax.updateTabState('hashchange');
-}, win);
-
-});
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/js/yui-prettify.js b/plugins/dali-script-v8/docs/dali-theme/assets/js/yui-prettify.js
deleted file mode 100644 (file)
index 18de864..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-YUI().use('node', function(Y) {
-    var code = Y.all('.prettyprint.linenums');
-    if (code.size()) {
-        code.each(function(c) {
-            var lis = c.all('ol li'),
-                l = 1;
-            lis.each(function(n) {
-                n.prepend('<a name="LINENUM_' + l + '"></a>');
-                l++;
-            });
-        });
-        var h = location.hash;
-        location.hash = '';
-        h = h.replace('LINE_', 'LINENUM_');
-        location.hash = h;
-    }
-});
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/vendor/prettify/CHANGES.html b/plugins/dali-script-v8/docs/dali-theme/assets/vendor/prettify/CHANGES.html
deleted file mode 100644 (file)
index b50b841..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-<html>
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-    <title>Change Log</title>
-  </head>
-  <body bgcolor="white">
-    <a style="float:right" href="README.html">README</a>
-
-    <h1>Known Issues</h1>
-    <ul>
-      <li>Perl formatting is really crappy.  Partly because the author is lazy and
-      partly because Perl is
-      <a href="http://www.perlmonks.org/?node_id=663393">hard</a> to parse.
-      <li>On some browsers, <code>&lt;code&gt;</code> elements with newlines in the text
-      which use CSS to specify <code>white-space:pre</code> will have the newlines
-      improperly stripped if the element is not attached to the document at the time
-      the stripping is done.  Also, on IE 6, all newlines will be stripped from
-      <code>&lt;code&gt;</code> elements because of the way IE6 produces
-      <code>innerHTML</code>.  Workaround: use <code>&lt;pre&gt;</code> for code with
-      newlines.
-    </ul>
-
-    <h1>Change Log</h1>
-    <h2>29 March 2007</h2>
-    <ul>
-      <li>Added <a href="tests/prettify_test.html#PHP">tests</a> for PHP support
-        to address 
-      <a href="http://code.google.com/p/google-code-prettify/issues/detail?id=3"
-       >issue 3</a>.
-      <li>Fixed
-      <a href="http://code.google.com/p/google-code-prettify/issues/detail?id=6"
-       >bug</a>: <code>prettyPrintOne</code> was not halting.  This was not
-        reachable through the normal entry point.
-      <li>Fixed
-      <a href="http://code.google.com/p/google-code-prettify/issues/detail?id=4"
-       >bug</a>: recursing into a script block or PHP tag that was not properly
-        closed would not silently drop the content.
-        (<a href="tests/prettify_test.html#issue4">test</a>)
-      <li>Fixed
-      <a href="http://code.google.com/p/google-code-prettify/issues/detail?id=8"
-       >bug</a>: was eating tabs
-        (<a href="tests/prettify_test.html#issue8">test</a>)
-      <li>Fixed entity handling so that the caveat
-        <blockquote>
-          <p>Caveats: please properly escape less-thans.  <tt>x&amp;lt;y</tt>
-          instead of <tt>x&lt;y</tt>, and use <tt>&quot;</tt> instead of 
-          <tt>&amp;quot;</tt> for string delimiters.</p>
-        </blockquote>
-        is no longer applicable.
-      <li>Added noisefree's C#
-      <a href="http://code.google.com/p/google-code-prettify/issues/detail?id=4"
-       >patch</a>
-      <li>Added a <a href="http://google-code-prettify.googlecode.com/files/prettify-small.zip">distribution</a> that has comments and
-        whitespace removed to reduce download size from 45.5kB to 12.8kB.
-    </ul>
-    <h2>4 Jul 2008</h2>
-    <ul>
-      <li>Added <a href="http://code.google.com/p/google-code-prettify/issues/detail?id=17">language specific formatters</a> that are triggered by the presence
-      of a <code>lang-&lt;language-file-extension&gt;</code></li>
-      <li>Fixed <a href="http://code.google.com/p/google-code-prettify/issues/detail?id=29">bug</a>: python handling of <code>'''string'''</code>
-      <li>Fixed bug: <code>/</code> in regex <code>[charsets] should not end regex</code>
-    </ul>
-    <h2>5 Jul 2008</h2>
-    <ul>
-      <li>Defined language extensions for Lisp and Lua</code>
-    </ul>
-    <h2>14 Jul 2008</h2>
-    <ul>
-      <li>Language handlers for F#, OCAML, SQL</code>
-      <li>Support for <code>nocode</code> spans to allow embedding of line
-      numbers and code annotations which should not be styled or otherwise
-      affect the tokenization of prettified code.
-      See the issue 22
-      <a href="tests/prettify_test.html#issue22">testcase</a>.</code>
-    </ul>
-    <h2>6 Jan 2009</h2>
-    <ul>
-      <li>Language handlers for Visual Basic, Haskell, CSS, and WikiText</li>
-      <li>Added <tt>.mxml</tt> extension to the markup style handler for
-        Flex <a href="http://en.wikipedia.org/wiki/MXML">MXML files</a>.  See
-        <a
-        href="http://code.google.com/p/google-code-prettify/issues/detail?id=37"
-        >issue 37</a>.
-      <li>Added <tt>.m</tt> extension to the C style handler so that Objective
-        C source files properly highlight.  See
-        <a
-        href="http://code.google.com/p/google-code-prettify/issues/detail?id=58"
-       >issue 58</a>.
-      <li>Changed HTML lexer to use the same embedded source mechanism as the
-        wiki language handler, and changed to use the registered
-        CSS handler for STYLE element content.
-    </ul>
-    <h2>21 May 2009</h2>
-    <ul>
-      <li>Rewrote to improve performance on large files.
-        See <a href="http://mikesamuel.blogspot.com/2009/05/efficient-parsing-in-javascript.html">benchmarks</a>.</li>
-      <li>Fixed bugs with highlighting of Haskell line comments, Lisp
-        number literals, Lua strings, C preprocessor directives,
-        newlines in Wiki code on Windows, and newlines in IE6.</li>
-    </ul>
-    <h2>14 August 2009</h2>
-    <ul>
-      <li>Fixed prettifying of <code>&lt;code&gt;</code> blocks with embedded newlines.
-    </ul>
-    <h2>3 October 2009</h2>
-    <ul>
-      <li>Fixed prettifying of XML/HTML tags that contain uppercase letters.
-    </ul>
-    <h2>19 July 2010</h2>
-    <ul>
-      <li>Added support for line numbers.  Bug
-        <a href="http://code.google.com/p/google-code-prettify/issues/detail?id=22"
-         >22</a></li>
-      <li>Added YAML support.  Bug
-        <a href="http://code.google.com/p/google-code-prettify/issues/detail?id=123"
-         >123</a></li>
-      <li>Added VHDL support courtesy Le Poussin.</li>
-      <li>IE performance improvements.  Bug
-        <a href="http://code.google.com/p/google-code-prettify/issues/detail?id=102"
-         >102</a> courtesy jacobly.</li>
-      <li>A variety of markup formatting fixes courtesy smain and thezbyg.</li>
-      <li>Fixed copy and paste in IE[678].
-      <li>Changed output to use <code>&amp;#160;</code> instead of
-        <code>&amp;nbsp;</code> so that the output works when embedded in XML.
-        Bug
-        <a href="http://code.google.com/p/google-code-prettify/issues/detail?id=108"
-         >108</a>.</li>
-    </ul>
-  </body>
-</html>
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/vendor/prettify/COPYING b/plugins/dali-script-v8/docs/dali-theme/assets/vendor/prettify/COPYING
deleted file mode 100644 (file)
index d645695..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "[]"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright [yyyy] [name of copyright owner]
-
-   Licensed under the Apache License, Version 2.0 (the "License");
-   you may not use this file except in compliance with the License.
-   You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/vendor/prettify/prettify-min.css b/plugins/dali-script-v8/docs/dali-theme/assets/vendor/prettify/prettify-min.css
deleted file mode 100644 (file)
index d44b3a2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee}
\ No newline at end of file
diff --git a/plugins/dali-script-v8/docs/dali-theme/assets/vendor/prettify/prettify-min.js b/plugins/dali-script-v8/docs/dali-theme/assets/vendor/prettify/prettify-min.js
deleted file mode 100644 (file)
index 4845d05..0000000
+++ /dev/null
@@ -1 +0,0 @@
-window.PR_SHOULD_USE_CONTINUATION=true;var prettyPrintOne;var prettyPrint;(function(){var O=window;var j=["break,continue,do,else,for,if,return,while"];var v=[j,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];var q=[v,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"];var m=[q,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"];var y=[q,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"];var T=[y,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,let,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var,virtual,where"];var s="all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,throw,true,try,unless,until,when,while,yes";var x=[q,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"];var t="caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END";var J=[j,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"];var g=[j,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"];var I=[j,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"];var B=[m,T,x,t+J,g,I];var f=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)\b/;var D="str";var A="kwd";var k="com";var Q="typ";var H="lit";var M="pun";var G="pln";var n="tag";var F="dec";var K="src";var R="atn";var o="atv";var P="nocode";var N="(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<<?=?|>>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*";function l(ab){var af=0;var U=false;var ae=false;for(var X=0,W=ab.length;X<W;++X){var ag=ab[X];if(ag.ignoreCase){ae=true}else{if(/[a-z]/i.test(ag.source.replace(/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi,""))){U=true;ae=false;break}}}var aa={b:8,t:9,n:10,v:11,f:12,r:13};function ad(aj){var ai=aj.charCodeAt(0);if(ai!==92){return ai}var ah=aj.charAt(1);ai=aa[ah];if(ai){return ai}else{if("0"<=ah&&ah<="7"){return parseInt(aj.substring(1),8)}else{if(ah==="u"||ah==="x"){return parseInt(aj.substring(2),16)}else{return aj.charCodeAt(1)}}}}function V(ah){if(ah<32){return(ah<16?"\\x0":"\\x")+ah.toString(16)}var ai=String.fromCharCode(ah);return(ai==="\\"||ai==="-"||ai==="]"||ai==="^")?"\\"+ai:ai}function Z(an){var ar=an.substring(1,an.length-1).match(new RegExp("\\\\u[0-9A-Fa-f]{4}|\\\\x[0-9A-Fa-f]{2}|\\\\[0-3][0-7]{0,2}|\\\\[0-7]{1,2}|\\\\[\\s\\S]|-|[^-\\\\]","g"));var ah=[];var ap=ar[0]==="^";var ao=["["];if(ap){ao.push("^")}for(var at=ap?1:0,al=ar.length;at<al;++at){var aj=ar[at];if(/\\[bdsw]/i.test(aj)){ao.push(aj)}else{var ai=ad(aj);var am;if(at+2<al&&"-"===ar[at+1]){am=ad(ar[at+2]);at+=2}else{am=ai}ah.push([ai,am]);if(!(am<65||ai>122)){if(!(am<65||ai>90)){ah.push([Math.max(65,ai)|32,Math.min(am,90)|32])}if(!(am<97||ai>122)){ah.push([Math.max(97,ai)&~32,Math.min(am,122)&~32])}}}}ah.sort(function(aw,av){return(aw[0]-av[0])||(av[1]-aw[1])});var ak=[];var aq=[];for(var at=0;at<ah.length;++at){var au=ah[at];if(au[0]<=aq[1]+1){aq[1]=Math.max(aq[1],au[1])}else{ak.push(aq=au)}}for(var at=0;at<ak.length;++at){var au=ak[at];ao.push(V(au[0]));if(au[1]>au[0]){if(au[1]+1>au[0]){ao.push("-")}ao.push(V(au[1]))}}ao.push("]");return ao.join("")}function Y(an){var al=an.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g"));var aj=al.length;var ap=[];for(var am=0,ao=0;am<aj;++am){var ai=al[am];if(ai==="("){++ao}else{if("\\"===ai.charAt(0)){var ah=+ai.substring(1);if(ah){if(ah<=ao){ap[ah]=-1}else{al[am]=V(ah)}}}}}for(var am=1;am<ap.length;++am){if(-1===ap[am]){ap[am]=++af}}for(var am=0,ao=0;am<aj;++am){var ai=al[am];if(ai==="("){++ao;if(!ap[ao]){al[am]="(?:"}}else{if("\\"===ai.charAt(0)){var ah=+ai.substring(1);if(ah&&ah<=ao){al[am]="\\"+ap[ah]}}}}for(var am=0;am<aj;++am){if("^"===al[am]&&"^"!==al[am+1]){al[am]=""}}if(an.ignoreCase&&U){for(var am=0;am<aj;++am){var ai=al[am];var ak=ai.charAt(0);if(ai.length>=2&&ak==="["){al[am]=Z(ai)}else{if(ak!=="\\"){al[am]=ai.replace(/[a-zA-Z]/g,function(aq){var ar=aq.charCodeAt(0);return"["+String.fromCharCode(ar&~32,ar|32)+"]"})}}}}return al.join("")}var ac=[];for(var X=0,W=ab.length;X<W;++X){var ag=ab[X];if(ag.global||ag.multiline){throw new Error(""+ag)}ac.push("(?:"+Y(ag)+")")}return new RegExp(ac.join("|"),ae?"gi":"g")}function b(aa,Y){var W=/(?:^|\s)nocode(?:\s|$)/;var ab=[];var Z=0;var X=[];var V=0;function U(ac){switch(ac.nodeType){case 1:if(W.test(ac.className)){return}for(var af=ac.firstChild;af;af=af.nextSibling){U(af)}var ae=ac.nodeName.toLowerCase();if("br"===ae||"li"===ae){ab[V]="\n";X[V<<1]=Z++;X[(V++<<1)|1]=ac}break;case 3:case 4:var ad=ac.nodeValue;if(ad.length){if(!Y){ad=ad.replace(/[ \t\r\n]+/g," ")}else{ad=ad.replace(/\r\n?/g,"\n")}ab[V]=ad;X[V<<1]=Z;Z+=ad.length;X[(V++<<1)|1]=ac}break}}U(aa);return{sourceCode:ab.join("").replace(/\n$/,""),spans:X}}function C(U,W,Y,V){if(!W){return}var X={sourceCode:W,basePos:U};Y(X);V.push.apply(V,X.decorations)}var w=/\S/;function p(U){var X=undefined;for(var W=U.firstChild;W;W=W.nextSibling){var V=W.nodeType;X=(V===1)?(X?U:W):(V===3)?(w.test(W.nodeValue)?U:X):X}return X===U?undefined:X}function h(W,V){var U={};var X;(function(){var af=W.concat(V);var aj=[];var ai={};for(var ad=0,ab=af.length;ad<ab;++ad){var aa=af[ad];var ae=aa[3];if(ae){for(var ag=ae.length;--ag>=0;){U[ae.charAt(ag)]=aa}}var ah=aa[1];var ac=""+ah;if(!ai.hasOwnProperty(ac)){aj.push(ah);ai[ac]=null}}aj.push(/[\0-\uffff]/);X=l(aj)})();var Z=V.length;var Y=function(aj){var ab=aj.sourceCode,aa=aj.basePos;var af=[aa,G];var ah=0;var ap=ab.match(X)||[];var al={};for(var ag=0,at=ap.length;ag<at;++ag){var ai=ap[ag];var ar=al[ai];var ak=void 0;var ao;if(typeof ar==="string"){ao=false}else{var ac=U[ai.charAt(0)];if(ac){ak=ai.match(ac[1]);ar=ac[0]}else{for(var aq=0;aq<Z;++aq){ac=V[aq];ak=ai.match(ac[1]);if(ak){ar=ac[0];break}}if(!ak){ar=G}}ao=ar.length>=5&&"lang-"===ar.substring(0,5);if(ao&&!(ak&&typeof ak[1]==="string")){ao=false;ar=K}if(!ao){al[ai]=ar}}var ad=ah;ah+=ai.length;if(!ao){af.push(aa+ad,ar)}else{var an=ak[1];var am=ai.indexOf(an);var ae=am+an.length;if(ak[2]){ae=ai.length-ak[2].length;am=ae-an.length}var au=ar.substring(5);C(aa+ad,ai.substring(0,am),Y,af);C(aa+ad+am,an,r(au,an),af);C(aa+ad+ae,ai.substring(ae),Y,af)}}aj.decorations=af};return Y}function i(V){var Y=[],U=[];if(V.tripleQuotedStrings){Y.push([D,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""])}else{if(V.multiLineStrings){Y.push([D,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"])}else{Y.push([D,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"])}}if(V.verbatimStrings){U.push([D,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null])}var ab=V.hashComments;if(ab){if(V.cStyleComments){if(ab>1){Y.push([k,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"])}else{Y.push([k,/^#(?:(?:define|e(?:l|nd)if|else|error|ifn?def|include|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"])}U.push([D,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h(?:h|pp|\+\+)?|[a-z]\w*)>/,null])}else{Y.push([k,/^#[^\r\n]*/,null,"#"])}}if(V.cStyleComments){U.push([k,/^\/\/[^\r\n]*/,null]);U.push([k,/^\/\*[\s\S]*?(?:\*\/|$)/,null])}if(V.regexLiterals){var aa=("/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/");U.push(["lang-regex",new RegExp("^"+N+"("+aa+")")])}var X=V.types;if(X){U.push([Q,X])}var W=(""+V.keywords).replace(/^ | $/g,"");if(W.length){U.push([A,new RegExp("^(?:"+W.replace(/[\s,]+/g,"|")+")\\b"),null])}Y.push([G,/^\s+/,null," \r\n\t\xA0"]);var Z=/^.[^\s\w\.$@\'\"\`\/\\]*/;U.push([H,/^@[a-z_$][a-z_$@0-9]*/i,null],[Q,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[G,/^[a-z_$][a-z_$@0-9]*/i,null],[H,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[G,/^\\[\s\S]?/,null],[M,Z,null]);return h(Y,U)}var L=i({keywords:B,hashComments:true,cStyleComments:true,multiLineStrings:true,regexLiterals:true});function S(W,ah,aa){var V=/(?:^|\s)nocode(?:\s|$)/;var ac=/\r\n?|\n/;var ad=W.ownerDocument;var ag=ad.createElement("li");while(W.firstChild){ag.appendChild(W.firstChild)}var X=[ag];function af(am){switch(am.nodeType){case 1:if(V.test(am.className)){break}if("br"===am.nodeName){ae(am);if(am.parentNode){am.parentNode.removeChild(am)}}else{for(var ao=am.firstChild;ao;ao=ao.nextSibling){af(ao)}}break;case 3:case 4:if(aa){var an=am.nodeValue;var ak=an.match(ac);if(ak){var aj=an.substring(0,ak.index);am.nodeValue=aj;var ai=an.substring(ak.index+ak[0].length);if(ai){var al=am.parentNode;al.insertBefore(ad.createTextNode(ai),am.nextSibling)}ae(am);if(!aj){am.parentNode.removeChild(am)}}}break}}function ae(al){while(!al.nextSibling){al=al.parentNode;if(!al){return}}function aj(am,at){var ar=at?am.cloneNode(false):am;var ap=am.parentNode;if(ap){var aq=aj(ap,1);var ao=am.nextSibling;aq.appendChild(ar);for(var an=ao;an;an=ao){ao=an.nextSibling;aq.appendChild(an)}}return ar}var ai=aj(al.nextSibling,0);for(var ak;(ak=ai.parentNode)&&ak.nodeType===1;){ai=ak}X.push(ai)}for(var Z=0;Z<X.length;++Z){af(X[Z])}if(ah===(ah|0)){X[0].setAttribute("value",ah)}var ab=ad.createElement("ol");ab.className="linenums";var Y=Math.max(0,((ah-1))|0)||0;for(var Z=0,U=X.length;Z<U;++Z){ag=X[Z];ag.className="L"+((Z+Y)%10);if(!ag.firstChild){ag.appendChild(ad.createTextNode("\xA0"))}ab.appendChild(ag)}W.appendChild(ab)}function E(af){var X=/\bMSIE\s(\d+)/.exec(navigator.userAgent);X=X&&+X[1]<=8;var ao=/\n/g;var an=af.sourceCode;var ap=an.length;var Y=0;var ad=af.spans;var V=ad.length;var aj=0;var aa=af.decorations;var ab=aa.length;var ac=0;aa[ab]=ap;var av,at;for(at=av=0;at<ab;){if(aa[at]!==aa[at+2]){aa[av++]=aa[at++];aa[av++]=aa[at++]}else{at+=2}}ab=av;for(at=av=0;at<ab;){var aw=aa[at];var ae=aa[at+1];var Z=at+2;while(Z+2<=ab&&aa[Z+1]===ae){Z+=2}aa[av++]=aw;aa[av++]=ae;at=Z}ab=aa.length=av;var au=af.sourceNode;var ak;if(au){ak=au.style.display;au.style.display="none"}try{var ah=null;while(aj<V){var ai=ad[aj];var U=ad[aj+2]||ap;var ar=aa[ac+2]||ap;var Z=Math.min(U,ar);var am=ad[aj+1];var W;if(am.nodeType!==1&&(W=an.substring(Y,Z))){if(X){W=W.replace(ao,"\r")}am.nodeValue=W;var al=am.ownerDocument;var aq=al.createElement("span");aq.className=aa[ac+1];var ag=am.parentNode;ag.replaceChild(aq,am);aq.appendChild(am);if(Y<U){ad[aj+1]=am=al.createTextNode(an.substring(Z,U));ag.insertBefore(am,aq.nextSibling)}}Y=Z;if(Y>=U){aj+=2}if(Y>=ar){ac+=2}}}finally{if(au){au.style.display=ak}}}var u={};function d(W,X){for(var U=X.length;--U>=0;){var V=X[U];if(!u.hasOwnProperty(V)){u[V]=W}else{if(O.console){console.warn("cannot override language handler %s",V)}}}}function r(V,U){if(!(V&&u.hasOwnProperty(V))){V=/^\s*</.test(U)?"default-markup":"default-code"}return u[V]}d(L,["default-code"]);d(h([],[[G,/^[^<?]+/],[F,/^<!\w[^>]*(?:>|$)/],[k,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[M,/^(?:<[%?]|[%?]>)/],["lang-",/^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);d(h([[G,/^[\s]+/,null," \t\r\n"],[o,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[n,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[R,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[M,/^[=<>\/]+/],["lang-js",/^on\w+\s*=\s*\"([^\"]+)\"/i],["lang-js",/^on\w+\s*=\s*\'([^\']+)\'/i],["lang-js",/^on\w+\s*=\s*([^\"\'>\s]+)/i],["lang-css",/^style\s*=\s*\"([^\"]+)\"/i],["lang-css",/^style\s*=\s*\'([^\']+)\'/i],["lang-css",/^style\s*=\s*([^\"\'>\s]+)/i]]),["in.tag"]);d(h([],[[o,/^[\s\S]+/]]),["uq.val"]);d(i({keywords:m,hashComments:true,cStyleComments:true,types:f}),["c","cc","cpp","cxx","cyc","m"]);d(i({keywords:"null,true,false"}),["json"]);d(i({keywords:T,hashComments:true,cStyleComments:true,verbatimStrings:true,types:f}),["cs"]);d(i({keywords:y,cStyleComments:true}),["java"]);d(i({keywords:I,hashComments:true,multiLineStrings:true}),["bsh","csh","sh"]);d(i({keywords:J,hashComments:true,multiLineStrings:true,tripleQuotedStrings:true}),["cv","py"]);d(i({keywords:t,hashComments:true,multiLineStrings:true,regexLiterals:true}),["perl","pl","pm"]);d(i({keywords:g,hashComments:true,multiLineStrings:true,regexLiterals:true}),["rb"]);d(i({keywords:x,cStyleComments:true,regexLiterals:true}),["js"]);d(i({keywords:s,hashComments:3,cStyleComments:true,multilineStrings:true,tripleQuotedStrings:true,regexLiterals:true}),["coffee"]);d(h([],[[D,/^[\s\S]+/]]),["regex"]);function e(X){var W=X.langExtension;try{var U=b(X.sourceNode,X.pre);var V=U.sourceCode;X.sourceCode=V;X.spans=U.spans;X.basePos=0;r(W,V)(X);E(X)}catch(Y){if(O.console){console.log(Y&&Y.stack?Y.stack:Y)}}}function z(Y,X,W){var U=document.createElement("pre");U.innerHTML=Y;if(W){S(U,W,true)}var V={langExtension:X,numberLines:W,sourceNode:U,pre:1};e(V);return U.innerHTML}function c(aj){function ab(al){return document.getElementsByTagName(al)}var ah=[ab("pre"),ab("code"),ab("xmp")];var V=[];for(var ae=0;ae<ah.length;++ae){for(var ac=0,Y=ah[ae].length;ac<Y;++ac){V.push(ah[ae][ac])}}ah=null;var Z=Date;if(!Z.now){Z={now:function(){return +(new Date)}}}var aa=0;var U;var af=/\blang(?:uage)?-([\w.]+)(?!\S)/;var ak=/\bprettyprint\b/;var W=/\bprettyprinted\b/;var ag=/pre|xmp/i;var ai=/^code$/i;var ad=/^(?:pre|code|xmp)$/i;function X(){var ar=(O.PR_SHOULD_USE_CONTINUATION?Z.now()+250:Infinity);for(;aa<V.length&&Z.now()<ar;aa++){var at=V[aa];var au=at.className;if(ak.test(au)&&!W.test(au)){var aw=false;for(var ao=at.parentNode;ao;ao=ao.parentNode){var ax=ao.tagName;if(ad.test(ax)&&ao.className&&ak.test(ao.className)){aw=true;break}}if(!aw){at.className+=" prettyprinted";var aq=au.match(af);var am;if(!aq&&(am=p(at))&&ai.test(am.tagName)){aq=am.className.match(af)}if(aq){aq=aq[1]}var ap;if(ag.test(at.tagName)){ap=1}else{var an=at.currentStyle;var al=(an?an.whiteSpace:(document.defaultView&&document.defaultView.getComputedStyle)?document.defaultView.getComputedStyle(at,null).getPropertyValue("white-space"):0);ap=al&&"pre"===al.substring(0,3)}var av=at.className.match(/\blinenums\b(?::(\d+))?/);av=av?av[1]&&av[1].length?+av[1]:true:false;if(av){S(at,av,ap)}U={langExtension:aq,sourceNode:at,numberLines:av,pre:ap};e(U)}}}if(aa<V.length){setTimeout(X,250)}else{if(aj){aj()}}}X()}var a=O.PR={createSimpleLexer:h,registerLangHandler:d,sourceDecorator:i,PR_ATTRIB_NAME:R,PR_ATTRIB_VALUE:o,PR_COMMENT:k,PR_DECLARATION:F,PR_KEYWORD:A,PR_LITERAL:H,PR_NOCODE:P,PR_PLAIN:G,PR_PUNCTUATION:M,PR_SOURCE:K,PR_STRING:D,PR_TAG:n,PR_TYPE:Q,prettyPrintOne:O.prettyPrintOne=z,prettyPrint:O.prettyPrint=c};if(typeof define==="function"&&define.amd){define("google-code-prettify",[],function(){return a})}})();PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_DECLARATION,/^<!\w[^>]*(?:>|$)/],[PR.PR_COMMENT,/^<\!--[\s\S]*?(?:-\->|$)/],[PR.PR_PUNCTUATION,/^(?:<[%?]|[%?]>)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],["lang-",/^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-handlebars",/^<script\b[^>]*type\s*=\s*['"]?text\/x-handlebars-template['"]?\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-js",/^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i],[PR.PR_DECLARATION,/^{{[#^>/]?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{&?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{{>?\s*[\w.][^}]*}}}/],[PR.PR_COMMENT,/^{{![^}]*}}/]]),["handlebars","hbs"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[ \t\r\n\f]+/,null," \t\r\n\f"]],[[PR.PR_STRING,/^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/,null],[PR.PR_STRING,/^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/,null],["lang-css-str",/^url\(([^\)\"\']*)\)/i],[PR.PR_KEYWORD,/^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],[PR.PR_COMMENT,/^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],[PR.PR_COMMENT,/^(?:<!--|-->)/],[PR.PR_LITERAL,/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],[PR.PR_LITERAL,/^#(?:[0-9a-f]{3}){1,2}/i],[PR.PR_PLAIN,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],[PR.PR_PUNCTUATION,/^[^\s\w\'\"]+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_KEYWORD,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_STRING,/^[^\)\"\']+/]]),["css-str"]);
\ No newline at end of file
diff --git a/plugins/dali-script-v8/docs/dali-theme/layouts/main.handlebars b/plugins/dali-script-v8/docs/dali-theme/layouts/main.handlebars
deleted file mode 100644 (file)
index 7ea2bd4..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="utf-8">
-    <title>{{htmlTitle}}</title>
-    <link rel="stylesheet" href="{{yuiGridsUrl}}">
-    <link rel="stylesheet" href="{{projectAssets}}/vendor/prettify/prettify-min.css">
-    <link rel="stylesheet" href="{{projectAssets}}/css/main.css" id="site_styles">
-    <link rel="shortcut icon" type="image/png" href="{{projectAssets}}/favicon.png">
-    <script src="{{yuiSeedUrl}}"></script>
-</head>
-<body class="yui3-skin-sam">
-
-<div id="doc">
-    <div id="hd" class="yui3-g header">
-        <div class="yui3-u-3-4">
-            {{#if projectLogo}}
-                <h1><img src="{{projectLogo}}" title="{{projectName}}"></h1>
-            {{else}}
-                <h1><img src="{{projectAssets}}/css/logo.png" title="{{projectName}}"></h1>
-            {{/if}}
-        </div>
-        <div class="yui3-u-1-4 version">
-            <em>API Docs for: {{projectVersion}}</em>
-        </div>
-    </div>
-    <div id="bd" class="yui3-g">
-
-        <div class="yui3-u-1-4">
-            <div id="docs-sidebar" class="sidebar apidocs">
-                {{>sidebar}}
-            </div>
-        </div>
-        <div class="yui3-u-3-4">
-            {{>options}}
-            <div class="apidocs">
-                <div id="docs-main">
-                    <div class="content">
-{{>layout_content}}
-                    </div>
-                </div>
-            </div>
-        </div>
-    </div>
-</div>
-<script src="{{projectAssets}}/vendor/prettify/prettify-min.js"></script>
-<script>prettyPrint();</script>
-<script src="{{projectAssets}}/js/yui-prettify.js"></script>
-<script src="{{projectAssets}}/../api.js"></script>
-<script src="{{projectAssets}}/js/api-filter.js"></script>
-<script src="{{projectAssets}}/js/api-list.js"></script>
-<script src="{{projectAssets}}/js/api-search.js"></script>
-<script src="{{projectAssets}}/js/apidocs.js"></script>
-</body>
-</html>
diff --git a/plugins/dali-script-v8/docs/dali-theme/layouts/xhr.handlebars b/plugins/dali-script-v8/docs/dali-theme/layouts/xhr.handlebars
deleted file mode 100644 (file)
index c66f7d3..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<div id="docs-main">
-    <div class="content">
-{{>layout_content}}
-    </div>
-</div>
-
-<div id="xhr-title" class="hidden">{{title}}</div>
diff --git a/plugins/dali-script-v8/docs/dali-theme/partials/attrs.handlebars b/plugins/dali-script-v8/docs/dali-theme/partials/attrs.handlebars
deleted file mode 100644 (file)
index a957ce0..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-<div id="attr_{{name}}" class="attr item{{#if access}} {{access}}{{/if}}{{#if deprecated}} deprecated{{/if}}{{#if extended_from}} inherited{{/if}}">
-    <a name="config_{{name}}"></a> {{! For backwards compatibility }}
-    <h3 class="name"><code>{{name}}</code></h3>
-    <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-
-    {{#if deprecated}}
-        <span class="flag deprecated"{{#if deprecationMessage}} title="{{deprecationMessage}}"{{/if}}>deprecated</span>
-    {{/if}}
-
-    {{#if access}}
-        <span class="flag {{access}}">{{access}}</span>
-    {{/if}}
-
-    {{#if final}}
-        <span class="flag final">final</span>
-    {{/if}}
-
-    {{#if static}}
-        <span class="flag static">static</span>
-    {{/if}}
-
-    {{#if optional}}
-        <span class="flag optional">optional</span>
-    {{/if}}
-
-    {{#if required}}
-        <span class="flag required">required</span>
-    {{/if}}
-
-    {{#if readonly}}
-        <span class="flag readonly">readonly</span>
-    {{/if}}
-
-    <div class="meta">
-        {{#if overwritten_from}}
-            <p>Inherited from
-            <a href="{{crossLinkRaw overwritten_from/class}}#attr_{{overwritten_from/name}}">
-                {{overwritten_from/class}}
-            </a>
-            {{#if foundAt}}
-            but overwritten in
-            {{/if}}
-        {{else}}
-            {{#if extended_from}}
-                <p>Inherited from
-                <a href="{{crossLinkRaw extended_from}}#attr_{{name}}">{{extended_from}}</a>:
-            {{else}}
-                {{#providedBy}}
-                    <p>Provided by the <a href="../modules/{{.}}.html">{{.}}</a> module.</p>
-                {{/providedBy}}
-                <p>
-                {{#if foundAt}}
-                Defined in
-                {{/if}}
-            {{/if}}
-        {{/if}}
-        {{#if foundAt}}
-        <a href="{{foundAt}}">`{{{file}}}:{{{line}}}`</a>
-        {{/if}}
-        </p>
-
-        {{#if deprecationMessage}}
-            <p>Deprecated: {{deprecationMessage}}</p>
-        {{/if}}
-
-        {{#if since}}
-            <p>Available since {{since}}</p>
-        {{/if}}
-    </div>
-
-    <div class="description">
-        {{{attrDescription}}}
-    </div>
-
-    {{#if default}}
-        <p><strong>Default:</strong> {{default}}</p>
-    {{/if}}
-
-    {{#if emit}}
-        <div class="emits box">
-            <h4>Fires event <code>{{name}}Change</code></h4>
-
-            <p>
-            Fires when the value for the configuration attribute `{{{name}}}` is
-            changed. You can listen for the event using the `on` method if you
-            wish to be notified before the attribute's value has changed, or
-            using the `after` method if you wish to be notified after the
-            attribute's value has changed.
-            </p>
-
-            <div class="params">
-                <h4>Parameters:</h4>
-
-                <ul class="params-list">
-                    <li class="param">
-                        <code class="param-name">e</code>
-                        <span class="type">{{#crossLink "EventFacade"}}{{/crossLink}}</span>
-
-                        <div class="param-description">
-                            An Event Facade object with the following
-                            attribute-specific properties added:
-                        </div>
-
-                        <ul class="params-list">
-                            <li class="param">
-                                <code class="param-name">prevVal</code>
-                                <span class="type">Any</span>
-                                <div class="param-description">The value of the attribute, prior to it being set.</div>
-                            </li>
-                            <li class="param">
-                                <code class="param-name">newVal</code>
-                                <span class="type">Any</span>
-                                <div class="param-description">The value the attribute is to be set to.</div>
-                            </li>
-                            <li class="param">
-                                <code class="param-name">attrName</code>
-                                <span class="type">{{#crossLink "String"}}{{/crossLink}}</span>
-                                <div class="param-description">The name of the attribute being set.</div>
-                            </li>
-                            <li class="param">
-                                <code class="param-name">subAttrName</code>
-                                <span class="type">{{#crossLink "String"}}{{/crossLink}}</span>
-                                <div class="param-description">If setting a property within the attribute's value, the name of the sub-attribute property being set.</div>
-                            </li>
-                        </ul>
-                    </li>
-                </ul>
-            </div>
-        </div>
-    {{/if}}
-
-    {{#example}}
-        <div class="example">
-            <h4>Example:</h4>
-
-            <div class="example-content">
-                {{{.}}}
-            </div>
-        </div>
-    {{/example}}
-</div>
diff --git a/plugins/dali-script-v8/docs/dali-theme/partials/classes.handlebars b/plugins/dali-script-v8/docs/dali-theme/partials/classes.handlebars
deleted file mode 100644 (file)
index 0d0a937..0000000
+++ /dev/null
@@ -1,203 +0,0 @@
-<h1>{{name}} Class</h1>
-<div class="box meta">
-    {{#if uses}}
-        <div class="uses">
-            Uses
-            <ul class="inline commas">
-                {{#uses}}
-                    <li><a href="{{.}}.html">{{.}}</a></li>
-                {{/uses}}
-            </ul>
-        </div>
-    {{/if}}
-
-    {{#if extends}}
-        <div class="extends">
-            Extends {{#crossLink extends}}{{/crossLink}}
-        </div>
-    {{/if}}
-
-    {{#if foundAt}}
-        <div class="foundat">
-            Defined in: <a href="{{foundAt}}">`{{{file}}}:{{{line}}}`</a>
-        </div>
-    {{/if}}
-
-    {{#if module}}
-        {{#if submodule}}
-            Module: {{#crossLinkModule submodule}}{{/crossLinkModule}}<br>
-            Parent Module: {{#crossLinkModule module}}{{/crossLinkModule}}
-        {{else}}
-            Module: {{#crossLinkModule module}}{{/crossLinkModule}}
-        {{/if}}
-    {{/if}}
-
-    {{#if since}}
-        <p>Available since {{since}}</p>
-    {{/if}}
-</div>
-
-{{#if deprecated}}
-    <div class="box deprecated">
-        <p>
-        {{#if deprecationMessage}}
-            <strong>Deprecated:</strong> {{deprecationMessage}}
-        {{else}}
-            This class is deprecated.
-        {{/if}}
-        </p>
-    </div>
-{{/if}}
-
-<div class="box intro">
-    {{{classDescription}}}
-</div>
-
-{{#is_constructor}}
-    <div class="constructor">
-        <h2>Constructor</h2>
-        {{>method}}
-    </div>
-{{/is_constructor}}
-
-<div id="classdocs" class="tabview">
-    <ul class="api-class-tabs">
-        <li class="api-class-tab index"><a href="#index">Index</a></li>
-
-        {{#if methods}}
-            <li class="api-class-tab methods"><a href="#methods">Methods</a></li>
-        {{/if}}
-        {{#if properties}}
-            <li class="api-class-tab properties"><a href="#properties">Properties</a></li>
-        {{/if}}
-        {{#if attrs}}
-            <li class="api-class-tab attrs"><a href="#attrs">Attributes</a></li>
-        {{/if}}
-        {{#if events}}
-            <li class="api-class-tab events"><a href="#events">Events</a></li>
-        {{/if}}
-    </ul>
-
-    <div>
-        <div id="index" class="api-class-tabpanel index">
-            <h2 class="off-left">Item Index</h2>
-
-            {{#if methods}}
-                <div class="index-section methods">
-                    <h3>Methods</h3>
-
-                    <ul class="index-list methods{{#if extends}} extends{{/if}}">
-                        {{#methods}}
-                            <li class="index-item method{{#if access}} {{access}}{{/if}}{{#if deprecated}} deprecated{{/if}}{{#if overwritten_from}} inherited{{/if}}{{#if extended_from}} inherited{{/if}}">
-                                <a href="#method_{{name}}">{{name}}</a>
-
-                                {{#if static}}
-                                    <span class="flag static">static</span>
-                                {{/if}}
-                                {{#if deprecated}}
-                                    <span class="flag deprecated">deprecated</span>
-                                {{/if}}
-                            </li>
-                        {{/methods}}
-                    </ul>
-                </div>
-            {{/if}}
-
-            {{#if properties}}
-                <div class="index-section properties">
-                    <h3>Properties</h3>
-
-                    <ul class="index-list properties{{#if extends}} extends{{/if}}">
-                        {{#properties}}
-                            <li class="index-item property{{#if access}} {{access}}{{/if}}{{#if deprecated}} deprecated{{/if}}{{#if overwritten_from}} inherited{{/if}}{{#if extended_from}} inherited{{/if}}">
-                                <a href="#property_{{name}}">{{name}}</a>
-
-                                {{#if static}}
-                                    <span class="flag static">static</span>
-                                {{/if}}
-                                {{#if deprecated}}
-                                    <span class="flag deprecated">deprecated</span>
-                                {{/if}}
-                            </li>
-                        {{/properties}}
-                    </ul>
-                </div>
-            {{/if}}
-
-            {{#if attrs}}
-                <div class="index-section attrs">
-                    <h3>Attributes</h3>
-
-                    <ul class="index-list attrs{{#if extends}} extends{{/if}}">
-                        {{#attrs}}
-                            <li class="index-item attr{{#if access}} {{access}}{{/if}}{{#if deprecated}} deprecated{{/if}}{{#if overwritten_from}} inherited{{/if}}{{#if extended_from}} inherited{{/if}}">
-                                <a href="#attr_{{name}}">{{name}}</a>
-                            </li>
-                        {{/attrs}}
-                    </ul>
-                </div>
-            {{/if}}
-
-            {{#if events}}
-                <div class="index-section events">
-                    <h3>Events</h3>
-
-                    <ul class="index-list events{{#if extends}} extends{{/if}}">
-                        {{#events}}
-                            <li class="index-item event{{#if access}} {{access}}{{/if}}{{#if deprecated}} deprecated{{/if}}{{#if overwritten_from}} inherited{{/if}}{{#if extended_from}} inherited{{/if}}">
-                                <a href="#event_{{name}}">{{name}}</a>
-
-                                {{#if static}}
-                                    <span class="flag static">static</span>
-                                {{/if}}
-                                {{#if deprecated}}
-                                    <span class="flag deprecated">deprecated</span>
-                                {{/if}}
-                            </li>
-                        {{/events}}
-                    </ul>
-                </div>
-            {{/if}}
-        </div>
-
-        {{#if methods}}
-            <div id="methods" class="api-class-tabpanel">
-                <h2 class="off-left">Methods</h2>
-
-                {{#methods}}
-{{>method}}
-                {{/methods}}
-            </div>
-        {{/if}}
-
-        {{#if properties}}
-            <div id="properties" class="api-class-tabpanel">
-                <h2 class="off-left">Properties</h2>
-
-                {{#properties}}
-                    {{>props}}
-                {{/properties}}
-            </div>
-        {{/if}}
-
-        {{#if attrs}}
-            <div id="attrs" class="api-class-tabpanel">
-                <h2 class="off-left">Attributes</h2>
-
-                {{#attrs}}
-                    {{>attrs}}
-                {{/attrs}}
-            </div>
-        {{/if}}
-
-        {{#if events}}
-            <div id="events" class="api-class-tabpanel">
-                <h2 class="off-left">Events</h2>
-
-                {{#events}}
-                    {{>events}}
-                {{/events}}
-            </div>
-        {{/if}}
-    </div>
-</div>
diff --git a/plugins/dali-script-v8/docs/dali-theme/partials/events.handlebars b/plugins/dali-script-v8/docs/dali-theme/partials/events.handlebars
deleted file mode 100644 (file)
index cb7a6b5..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-<div id="event_{{name}}" class="events item{{#if access}} {{access}}{{/if}}{{#if deprecated}} deprecated{{/if}}{{#if extended_from}} inherited{{/if}}">
-    <h3 class="name"><code>{{name}}</code></h3>
-    <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-
-    {{#if deprecated}}
-        <span class="flag deprecated"{{#if deprecationMessage}} title="{{deprecationMessage}}"{{/if}}>deprecated</span>
-    {{/if}}
-
-    {{#if access}}
-        <span class="flag {{access}}">{{access}}</span>
-    {{/if}}
-
-    {{#if final}}
-        <span class="flag final">final</span>
-    {{/if}}
-
-    {{#if static}}
-        <span class="flag static">static</span>
-    {{/if}}
-
-    <div class="meta">
-        {{#if overwritten_from}}
-            <p>Inherited from
-            <a href="{{crossLinkRaw overwritten_from/class}}#event_{{overwritten_from/name}}">
-                {{overwritten_from/class}}
-            </a>
-            {{#if foundAt}}
-            but overwritten in
-            {{/if}}
-        {{else}}
-            {{#if extended_from}}
-                <p>Inherited from
-                <a href="{{crossLinkRaw extended_from}}#event_{{name}}">{{extended_from}}</a>:
-            {{else}}
-                {{#providedBy}}
-                    <p>Provided by the <a href="../modules/{{.}}.html">{{.}}</a> module.</p>
-                {{/providedBy}}
-                <p>
-                {{#if foundAt}}
-                Defined in
-                {{/if}}
-            {{/if}}
-        {{/if}}
-        {{#if foundAt}}
-        <a href="{{foundAt}}">`{{{file}}}:{{{line}}}`</a>
-        {{/if}}
-        </p>
-
-        {{#if deprecationMessage}}
-            <p>Deprecated: {{deprecationMessage}}</p>
-        {{/if}}
-
-        {{#if since}}
-            <p>Available since {{since}}</p>
-        {{/if}}
-    </div>
-
-    <div class="description">
-        {{{eventDescription}}}
-    </div>
-
-    {{#if params}}
-        <div class="params">
-            <h4>Event Payload:</h4>
-
-            <ul class="params-list">
-            {{#params}}
-                <li class="param">
-                    {{#if optional}}
-                        <code class="param-name optional">[{{name}}{{#if optdefault}}={{optdefault}}{{/if}}]</code>
-                        <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                        <span class="flag optional" title="This parameter is optional.">optional</span>
-                    {{else}}
-                        <code class="param-name">{{name}}</code>
-                        <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                    {{/if}}
-
-                    {{#if multiple}}
-                        <span class="flag multiple" title="This parameter may occur one or more times.">Multiple</span>
-                    {{/if}}
-
-                    <div class="param-description">
-                        {{{description}}}
-                    </div>
-
-                    {{#if props}}
-                        <ul class="params-list">
-                            {{#props}}
-                            <li class="param">
-                                {{#if optional}}
-                                    <code class="param-name optional">[{{name}}{{#if optdefault}}={{optdefault}}{{/if}}]</code>
-                                    <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                                    <span class="flag optional" title="This parameter is optional.">optional</span>
-                                {{else}}
-                                    <code class="param-name">{{name}}</code>
-                                    <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                                {{/if}}
-
-                                <div class="param-description">
-                                    {{{description}}}
-                                </div>
-
-                                {{#if props}}
-                                    <ul class="params-list">
-                                        {{#props}}
-                                        <li class="param">
-                                            <code class="param-name">{{name}}</code>
-                                            <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-
-                                            <div class="param-description">
-                                                {{{description}}}
-                                            </div>
-                                        </li>
-                                        {{/props}}
-                                    </ul>
-                                {{/if}}
-                            </li>
-                            {{/props}}
-                        </ul>
-                    {{/if}}
-                </li>
-            {{/params}}
-            </ul>
-        </div>
-    {{/if}}
-
-
-    {{#example}}
-        <div class="example">
-            <h4>Example:</h4>
-
-            <div class="example-content">
-                {{{.}}}
-            </div>
-        </div>
-    {{/example}}
-</div>
diff --git a/plugins/dali-script-v8/docs/dali-theme/partials/files.handlebars b/plugins/dali-script-v8/docs/dali-theme/partials/files.handlebars
deleted file mode 100644 (file)
index fccd476..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<h1 class="file-heading">File: {{fileName}}</h1>
-
-<div class="file">
-    <pre class="code prettyprint linenums">
-{{fileData}}
-    </pre>
-</div>
diff --git a/plugins/dali-script-v8/docs/dali-theme/partials/index.handlebars b/plugins/dali-script-v8/docs/dali-theme/partials/index.handlebars
deleted file mode 100644 (file)
index 29a0e85..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-    <div class="apidocs">
-        <div id="docs-main" class="content">
-            <p>
-            Browse to a module or class using the sidebar to view its API documentation.
-            </p>
-
-            <h2>Keyboard Shortcuts</h2>
-
-            <ul>
-                <li><p>Press <kbd>s</kbd> to focus the API search box.</p></li>
-
-                <li><p>Use <kbd>Up</kbd> and <kbd>Down</kbd> to select classes, modules, and search results.</p></li>
-
-                <li class="mac-only"><p>With the API search box or sidebar focused, use <kbd><span class="cmd">&#x2318;</span>-Left</kbd> or <kbd><span class="cmd">&#x2318;</span>-Right</kbd> to switch sidebar tabs.</p></li>
-
-                <li class="pc-only"><p>With the API search box or sidebar focused, use <kbd>Ctrl+Left</kbd> and <kbd>Ctrl+Right</kbd> to switch sidebar tabs.</p></li>
-            </ul>
-        </div>
-    </div>
-
-
diff --git a/plugins/dali-script-v8/docs/dali-theme/partials/method.handlebars b/plugins/dali-script-v8/docs/dali-theme/partials/method.handlebars
deleted file mode 100644 (file)
index 664d79b..0000000
+++ /dev/null
@@ -1,212 +0,0 @@
-<div id="method_{{name}}" class="method item{{#if access}} {{access}}{{/if}}{{#if deprecated}} deprecated{{/if}}{{#if extended_from}} inherited{{/if}}">
-    <h3 class="name"><code>{{name}}</code></h3>
-
-    {{#if params}}
-        <div class="args">
-            <span class="paren">(</span><ul class="args-list inline commas">
-            {{#params}}
-                <li class="arg">
-                    {{#if optional}}
-                        <code class="optional">[{{name}}{{#if optdefault}}={{optdefault}}{{/if}}]</code>
-                    {{else}}
-                        <code>{{name}}</code>
-                    {{/if}}
-                </li>
-            {{/params}}
-            </ul><span class="paren">)</span>
-        </div>
-    {{else}}
-        <span class="paren">()</span>
-    {{/if}}
-
-    {{#if return}}
-        <span class="returns-inline">
-            <span class="type">{{#crossLink returnType}}{{/crossLink}}</span>
-        </span>
-    {{/if}}
-
-    {{#if deprecated}}
-        <span class="flag deprecated"{{#if deprecationMessage}} title="{{deprecationMessage}}"{{/if}}>deprecated</span>
-    {{/if}}
-
-    {{#if access}}
-        <span class="flag {{access}}">{{access}}</span>
-    {{/if}}
-
-    {{#if final}}
-        <span class="flag final">final</span>
-    {{/if}}
-
-    {{#if static}}
-        <span class="flag static">static</span>
-    {{/if}}
-
-    {{#if chainable}}
-        <span class="flag chainable">chainable</span>
-    {{/if}}
-
-    {{#if async}}
-        <span class="flag async">async</span>
-    {{/if}}
-
-    <div class="meta">
-        {{#if overwritten_from}}
-            <p>Inherited from
-            <a href="{{crossLinkRaw overwritten_from/class}}#method_{{overwritten_from/name}}">
-                {{overwritten_from/class}}
-            </a>
-            {{#if foundAt}}
-            but overwritten in
-            {{/if}}
-        {{else}}
-            {{#if extended_from}}
-                <p>Inherited from
-                <a href="{{crossLinkRaw extended_from}}#method_{{name}}">{{extended_from}}</a>:
-            {{else}}
-                {{#providedBy}}
-                    <p>Provided by the <a href="../modules/{{.}}.html">{{.}}</a> module.</p>
-                {{/providedBy}}
-                <p>
-                {{#if foundAt}}
-                Defined in
-                {{/if}}
-            {{/if}}
-        {{/if}}
-        {{#if foundAt}}
-        <a href="{{foundAt}}">`{{{file}}}:{{{line}}}`</a>
-        {{/if}}
-        </p>
-
-
-        {{#if deprecationMessage}}
-            <p>Deprecated: {{deprecationMessage}}</p>
-        {{/if}}
-
-        {{#if since}}
-            <p>Available since {{since}}</p>
-        {{/if}}
-    </div>
-
-    <div class="description">
-        {{{methodDescription}}}
-    </div>
-
-    {{#if params}}
-        <div class="params">
-            <h4>Parameters:</h4>
-
-            <ul class="params-list">
-            {{#params}}
-                <li class="param">
-                    {{#if optional}}
-                        <code class="param-name optional">[{{name}}{{#if optdefault}}={{optdefault}}{{/if}}]</code>
-                        <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                        <span class="flag optional" title="This parameter is optional.">optional</span>
-                    {{else}}
-                        <code class="param-name">{{name}}</code>
-                        <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                    {{/if}}
-
-                    {{#if multiple}}
-                        <span class="flag multiple" title="This argument may occur one or more times.">multiple</span>
-                    {{/if}}
-
-                    <div class="param-description">
-                        {{{description}}}
-                    </div>
-
-                    {{#if props}}
-                        <ul class="params-list">
-                            {{#props}}
-                            <li class="param">
-                                {{#if optional}}
-                                    <code class="param-name optional">[{{name}}{{#if optdefault}}={{optdefault}}{{/if}}]</code>
-                                    <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                                    <span class="flag optional" title="This parameter is optional.">optional</span>
-                                {{else}}
-                                    <code class="param-name">{{name}}</code>
-                                    <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                                {{/if}}
-
-                                <div class="param-description">
-                                    {{{description}}}
-                                </div>
-
-                                {{#if props}}
-                                    <ul class="params-list">
-                                        {{#props}}
-                                        <li class="param">
-                                            {{#if optional}}
-                                                <code class="param-name optional">[{{name}}{{#if optdefault}}={{optdefault}}{{/if}}]</code>
-                                                <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                                                <span class="flag optional" title="This parameter is optional.">optional</span>
-                                            {{else}}
-                                                <code class="param-name">{{name}}</code>
-                                                <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                                            {{/if}}
-
-                                            <div class="param-description">
-                                                {{{description}}}
-                                            </div>
-                                        </li>
-                                        {{/props}}
-                                    </ul>
-                                {{/if}}
-                            </li>
-                            {{/props}}
-                        </ul>
-                    {{/if}}
-                </li>
-            {{/params}}
-            </ul>
-        </div>
-    {{/if}}
-
-    {{#return}}
-        <div class="returns">
-            <h4>Returns:</h4>
-
-            <div class="returns-description">
-                {{#if description}}
-                    {{#if type}}
-                        <span class="type">{{#crossLink type}}{{/crossLink}}</span>:
-                    {{/if}}
-                    {{{description}}}
-                {{else}}
-                    {{#if type}}
-                        <span class="type">{{#crossLink type}}{{/crossLink}}</span>:
-                    {{/if}}
-                {{/if}}
-            </div>
-        </div>
-    {{/return}}
-
-    {{#throws}}
-        <div class="throws">
-            <h4>Throws:</h4>
-
-            <div class="throws-description">
-                {{#if description}}
-                    {{#if type}}
-                        <span class="type">{{#crossLink type}}{{/crossLink}}</span>:
-                    {{/if}}
-                    {{{description}}}
-                {{else}}
-                    {{#if type}}
-                        <span class="type">{{#crossLink type}}{{/crossLink}}</span>:
-                    {{/if}}
-                {{/if}}
-            </div>
-        </div>
-    {{/throws}}
-
-    {{#example}}
-        <div class="example">
-            <h4>Example:</h4>
-
-            <div class="example-content">
-                {{{.}}}
-            </div>
-        </div>
-    {{/example}}
-</div>
diff --git a/plugins/dali-script-v8/docs/dali-theme/partials/module.handlebars b/plugins/dali-script-v8/docs/dali-theme/partials/module.handlebars
deleted file mode 100644 (file)
index 190007f..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-<h1>{{name}} Module</h1>
-<div class="box clearfix meta">
-    {{#extra}}
-        {{#selleck}}
-            <a class="button link-docs" href="/yui/docs/{{name}}">User Guide &amp; Examples</a>
-        {{/selleck}}
-    {{/extra}}
-
-    {{#if requires}}
-        <div class="uses">
-            Requires
-            <ul class="inline commas">
-                {{#requires}}
-                    <li>{{#crossLinkModule .}}{{/crossLinkModule}}</li>
-                {{/requires}}
-            </ul>
-        </div>
-    {{/if}}
-
-    {{#if foundAt}}
-        <div class="foundat">
-            Defined in: <a href="{{foundAt}}">`{{{file}}}:{{{line}}}`</a>
-        </div>
-    {{/if}}
-
-    {{#if since}}
-        <p>Available since {{since}}</p>
-    {{/if}}
-</div>
-
-{{#if deprecated}}
-    <div class="box deprecated">
-        <p>
-        {{#if deprecationMessage}}
-            <strong>Deprecated:</strong> {{deprecationMessage}}
-        {{else}}
-            This module is deprecated.
-        {{/if}}
-        </p>
-    </div>
-{{/if}}
-
-<div class="box intro">
-    {{{moduleDescription}}}
-</div>
-
-{{#example}}
-    <div class="example">
-        <h4>Example:</h4>
-        <div class="example-content">
-            {{{.}}}
-        </div>
-    </div>
-{{/example}}
-
-<div class="yui3-g">
-    <div class="yui3-u-1-2">
-        {{#if moduleClasses}}
-            <p>This module provides the following classes:</p>
-
-            <ul class="module-classes">
-            {{#moduleClasses}}
-                <li class="module-class">
-                    <a href="{{../projectRoot}}classes/{{name}}.html">
-                        {{displayName}}
-                    </a>
-                </li>
-            {{/moduleClasses}}
-            </ul>
-        {{/if}}
-    </div>
-
-    <div class="yui3-u-1-2">
-        {{#if subModules}}
-            <p>This module is a rollup of the following modules:</p>
-
-            <ul class="module-submodules">
-            {{#subModules}}
-                <li class="module-submodule">
-                    <a href="{{../projectRoot}}modules/{{name}}.html">
-                        {{displayName}}
-                    </a>
-
-                    <div class="module-submodule-description">
-                        {{{description}}}
-                    </div>
-                </li>
-            {{/subModules}}
-            </ul>
-        {{/if}}
-    </div>
-</div>
diff --git a/plugins/dali-script-v8/docs/dali-theme/partials/options.handlebars b/plugins/dali-script-v8/docs/dali-theme/partials/options.handlebars
deleted file mode 100644 (file)
index 2b26210..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-    <div id="api-options">
-        Show:
-        <label for="api-show-inherited">
-            <input type="checkbox" id="api-show-inherited" checked>
-            Inherited
-        </label>
-
-        <label for="api-show-protected">
-            <input type="checkbox" id="api-show-protected">
-            Protected
-        </label>
-
-        <label for="api-show-private">
-            <input type="checkbox" id="api-show-private">
-            Private
-        </label>
-        <label for="api-show-deprecated">
-            <input type="checkbox" id="api-show-deprecated">
-            Deprecated
-        </label>
-
-    </div>
-
diff --git a/plugins/dali-script-v8/docs/dali-theme/partials/props.handlebars b/plugins/dali-script-v8/docs/dali-theme/partials/props.handlebars
deleted file mode 100644 (file)
index 696e720..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-<div id="property_{{name}}" class="property item{{#if access}} {{access}}{{/if}}{{#if deprecated}} deprecated{{/if}}{{#if extended_from}} inherited{{/if}}">
-    <h3 class="name"><code>{{name}}</code></h3>
-    <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-
-    {{#if deprecated}}
-        <span class="flag deprecated"{{#if deprecationMessage}} title="{{deprecationMessage}}"{{/if}}>deprecated</span>
-    {{/if}}
-
-    {{#if access}}
-        <span class="flag {{access}}">{{access}}</span>
-    {{/if}}
-
-    {{#if final}}
-        <span class="flag final">final</span>
-    {{/if}}
-
-    {{#if static}}
-        <span class="flag static">static</span>
-    {{/if}}
-
-    <div class="meta">
-        {{#if overwritten_from}}
-            <p>Inherited from
-            <a href="{{crossLinkRaw overwritten_from/class}}#property_{{overwritten_from/name}}">
-                {{overwritten_from/class}}
-            </a>
-            {{#if foundAt}}
-            but overwritten in
-            {{/if}}
-        {{else}}
-            {{#if extended_from}}
-                <p>Inherited from
-                <a href="{{crossLinkRaw extended_from}}#property_{{name}}">{{extended_from}}</a>:
-            {{else}}
-                {{#providedBy}}
-                    <p>Provided by the <a href="../modules/{{.}}.html">{{.}}</a> module.</p>
-                {{/providedBy}}
-                <p>
-                {{#if foundAt}}
-                Defined in
-                {{/if}}
-            {{/if}}
-        {{/if}}
-        {{#if foundAt}}
-        <a href="{{foundAt}}">`{{{file}}}:{{{line}}}`</a>
-        {{/if}}
-        </p>
-
-        {{#if deprecationMessage}}
-            <p>Deprecated: {{deprecationMessage}}</p>
-        {{/if}}
-
-        {{#if since}}
-            <p>Available since {{since}}</p>
-        {{/if}}
-    </div>
-
-    <div class="description">
-        {{{propertyDescription}}}
-    </div>
-
-    {{#if default}}
-        <p><strong>Default:</strong> {{default}}</p>
-    {{/if}}
-
-    {{#example}}
-        <div class="example">
-            <h4>Example:</h4>
-
-            <div class="example-content">
-                {{{.}}}
-            </div>
-        </div>
-    {{/example}}
-
-    {{#if subprops}}
-        <h4>Sub-properties:</h4>
-
-        <ul class="params-list">
-            {{#subprops}}
-            <li class="param">
-                {{#if optional}}
-                    <code class="param-name optional">[{{name}}{{#if optdefault}}={{optdefault}}{{/if}}]</code>
-                    <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                    <span class="flag optional" title="This property is optional.">optional</span>
-                {{else}}
-                    <code class="param-name">{{name}}</code>
-                    <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                {{/if}}
-
-                <div class="param-description">
-                    {{{description}}}
-                </div>
-
-                {{#if subprops}}
-                    <ul class="params-list">
-                        {{#subprops}}
-                        <li class="param">
-                            {{#if optional}}
-                                <code class="param-name optional">[{{name}}{{#if optdefault}}={{optdefault}}{{/if}}]</code>
-                                <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                                <span class="flag optional" title="This property is optional.">optional</span>
-                            {{else}}
-                                <code class="param-name">{{name}}</code>
-                                <span class="type">{{#crossLink type}}{{/crossLink}}</span>
-                            {{/if}}
-
-                            <div class="param-description">
-                                {{{description}}}
-                            </div>
-                        </li>
-                        {{/subprops}}
-                    </ul>
-                {{/if}}
-            </li>
-            {{/subprops}}
-        </ul>
-    {{/if}}
-</div>
diff --git a/plugins/dali-script-v8/docs/dali-theme/partials/sidebar.handlebars b/plugins/dali-script-v8/docs/dali-theme/partials/sidebar.handlebars
deleted file mode 100644 (file)
index a8500c5..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-<div id="api-list">
-    <h2 class="off-left">APIs</h2>
-    <div id="api-tabview" class="tabview">
-        <ul class="tabs">
-            <li><a href="#api-classes">Classes</a></li>
-            <li><a href="#api-modules">Modules</a></li>
-        </ul>
-
-        <div id="api-tabview-filter">
-            <input type="search" id="api-filter" placeholder="Type to filter APIs">
-        </div>
-
-        <div id="api-tabview-panel">
-            <ul id="api-classes" class="apis classes">
-            {{#classes}}
-                <li><a href="{{../projectRoot}}classes/{{name}}.html">{{displayName}}</a></li>
-            {{/classes}}
-            </ul>
-
-            <ul id="api-modules" class="apis modules">
-            {{#allModules}}
-                <li><a href="{{../projectRoot}}modules/{{name}}.html">{{displayName}}</a></li>
-            {{/allModules}}
-            </ul>
-        </div>
-    </div>
-</div>
diff --git a/plugins/dali-script-v8/docs/dali-theme/theme.json b/plugins/dali-script-v8/docs/dali-theme/theme.json
deleted file mode 100644 (file)
index d540f15..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-{
-    "yuiGridsUrl": "http://yui.yahooapis.com/3.9.1/build/cssgrids/cssgrids-min.css",
-    "yuiSeedUrl": "http://yui.yahooapis.com/combo?3.9.1/build/yui/yui-min.js"
-}
diff --git a/plugins/dali-script-v8/docs/gmon.out b/plugins/dali-script-v8/docs/gmon.out
deleted file mode 100644 (file)
index 04ee467..0000000
Binary files a/plugins/dali-script-v8/docs/gmon.out and /dev/null differ
diff --git a/plugins/dali-script-v8/docs/yuidoc.json b/plugins/dali-script-v8/docs/yuidoc.json
deleted file mode 100644 (file)
index 89a27cb..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-{
-    "name": "DALI JavaScript API",
-    "description": "DALI is a dynamic animtaion library for building advanced 3D applications",
-    "version": "1.0.0",
-    "themedir": "dali-theme",
-    "url": "https://review.tizen.org/gerrit/platform/core/uifw/dali-core",
-    "options": {
-        "outdir": "generated",
-        "markdown": {
-          "gfm":"true"
-       }
-    }
-}
diff --git a/plugins/dali-script-v8/file.list b/plugins/dali-script-v8/file.list
deleted file mode 100644 (file)
index 3c50077..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-# Add local source files here
-
-v8_plugin_dir =\
- $(plugin_src_dir)/dali-script-v8/src
-
-script_v8_plugin_src_files = \
-   $(v8_plugin_dir)/dali-script-v8.cpp \
-   $(v8_plugin_dir)/utils/v8-utils.cpp \
-   $(v8_plugin_dir)/dali-wrapper.cpp \
-   $(v8_plugin_dir)/shared/base-wrapped-object.cpp \
-   $(v8_plugin_dir)/shared/object-template-helper.cpp \
-   $(v8_plugin_dir)/actors/actor-wrapper.cpp \
-   $(v8_plugin_dir)/actors/actor-api.cpp \
-   $(v8_plugin_dir)/actors/layer-api.cpp \
-   $(v8_plugin_dir)/actors/camera-actor-api.cpp \
-   $(v8_plugin_dir)/controls/control-wrapper.cpp \
-   $(v8_plugin_dir)/controls/item-factory-wrapper.cpp \
-   $(v8_plugin_dir)/controls/item-view-api.cpp \
-   $(v8_plugin_dir)/controls/scroll-view-api.cpp \
-   $(v8_plugin_dir)/constants/constants-wrapper.cpp \
-   $(v8_plugin_dir)/animation/animation-api.cpp \
-   $(v8_plugin_dir)/animation/animation-wrapper.cpp \
-   $(v8_plugin_dir)/animation/constrainer-api.cpp \
-   $(v8_plugin_dir)/animation/linear-constrainer-wrapper.cpp \
-   $(v8_plugin_dir)/animation/path-api.cpp \
-   $(v8_plugin_dir)/animation/path-constrainer-wrapper.cpp \
-   $(v8_plugin_dir)/animation/path-wrapper.cpp \
-   $(v8_plugin_dir)/stage/stage-wrapper.cpp \
-   $(v8_plugin_dir)/events/event-object-generator.cpp \
-   $(v8_plugin_dir)/events/pan-gesture-detector-api.cpp \
-   $(v8_plugin_dir)/events/pan-gesture-detector-wrapper.cpp \
-   $(v8_plugin_dir)/stage/stage-api.cpp \
-   $(v8_plugin_dir)/image/image-wrapper.cpp \
-   $(v8_plugin_dir)/image/image-api.cpp \
-   $(v8_plugin_dir)/image/buffer-image-api.cpp \
-   $(v8_plugin_dir)/image/frame-buffer-image-api.cpp \
-   $(v8_plugin_dir)/image/resource-image-api.cpp \
-   $(v8_plugin_dir)/object/handle-wrapper.cpp \
-   $(v8_plugin_dir)/object/property-buffer-api.cpp \
-   $(v8_plugin_dir)/object/property-buffer-wrapper.cpp \
-   $(v8_plugin_dir)/object/property-value-wrapper.cpp \
-   $(v8_plugin_dir)/signals/signal-manager.cpp \
-   $(v8_plugin_dir)/render-tasks/render-task-list-api.cpp \
-   $(v8_plugin_dir)/render-tasks/render-task-list-wrapper.cpp \
-   $(v8_plugin_dir)/render-tasks/render-task-api.cpp \
-   $(v8_plugin_dir)/render-tasks/render-task-wrapper.cpp \
-   $(v8_plugin_dir)/rendering/geometry-api.cpp \
-   $(v8_plugin_dir)/rendering/geometry-wrapper.cpp \
-   $(v8_plugin_dir)/rendering/texture-set-api.cpp \
-   $(v8_plugin_dir)/rendering/texture-set-wrapper.cpp \
-   $(v8_plugin_dir)/rendering/renderer-api.cpp \
-   $(v8_plugin_dir)/rendering/renderer-wrapper.cpp \
-   $(v8_plugin_dir)/rendering/sampler-api.cpp \
-   $(v8_plugin_dir)/rendering/sampler-wrapper.cpp \
-   $(v8_plugin_dir)/rendering/shader-api.cpp \
-   $(v8_plugin_dir)/rendering/shader-wrapper.cpp \
-   $(v8_plugin_dir)/toolkit/builder/builder-api.cpp \
-   $(v8_plugin_dir)/toolkit/builder/builder-wrapper.cpp \
-   $(v8_plugin_dir)/toolkit/focus-manager/keyboard-focus-manager-api.cpp \
-   $(v8_plugin_dir)/toolkit/focus-manager/keyboard-focus-manager-wrapper.cpp \
-   $(v8_plugin_dir)/signals/dali-any-javascript-converter.cpp \
-   $(v8_plugin_dir)/garbage-collector/garbage-collector.cpp \
-   $(v8_plugin_dir)/module-loader/module.cpp \
-   $(v8_plugin_dir)/module-loader/module-loader.cpp
diff --git a/plugins/dali-script-v8/src/actors/actor-api.cpp b/plugins/dali-script-v8/src/actors/actor-api.cpp
deleted file mode 100644 (file)
index 9459a46..0000000
+++ /dev/null
@@ -1,846 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "actor-api.h"
-
-// EXTERNAL INCLUDES
-#include <dali-toolkit/public-api/controls/text-controls/text-label.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <actors/actor-wrapper.h>
-#include <animation/path-constrainer-wrapper.h>
-#include <rendering/renderer-wrapper.h>
-#include <rendering/renderer-api.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace  // unanmed namespace
-{
-
-Actor GetActor( v8::Isolate* isolate, const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  HandleWrapper* handleWrapper = HandleWrapper::Unwrap( isolate, args.This() );
-  return Actor::DownCast( handleWrapper->mHandle );
-}
-
-} //unanmed namespace
-
-/***************************************
- * ACTOR API FUNCTIONS
- ****************************************/
-/**
- * Constructor
- *
- * @for Actor
- * @constructor
- * @method Actor
- * @return {Object} actor
- */
-Actor ActorApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  return Actor::New();
-}
-
-/**
- * get the actors unique id
- *
- * @for Actor
- * @method getId
- * @return {Integer} id
- */
-void ActorApi::GetId( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, actor.GetId() ) );
-}
-
-/**
- * Query whether an actor is the root actor, which is owned by the Stage
- *
- * @for Actor
- * @method isRoot
- * @return {Boolean} true if it is root
- *
- */
-void ActorApi::IsRoot( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  args.GetReturnValue().Set( v8::Boolean::New( isolate, actor.IsRoot() ) );
-}
-
-/**
- *
- * Query whether the actor is connected to the Stage.
- * When an actor is connected, it will be directly or indirectly parented to the root Actor.
- * The root Actor is provided automatically by dali.stage, and is always considered to be connected.
- *
- * @for Actor
- * @method onStage
- * @return {Boolean} True if the actor is connected to the Stage
- */
-void ActorApi::OnStage( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  args.GetReturnValue().Set( v8::Boolean::New( isolate, actor.OnStage() ) );
-}
-
-/**
- * Query whether an actor is a layer
- *
- * @for Actor
- * @method isLayer
- * @return {Boolean} true if it is a layer
- */
-void ActorApi::IsLayer( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  args.GetReturnValue().Set( v8::Boolean::New( isolate, actor.IsLayer() ) );
-}
-
-/**
- * Gets the layer in which the actor is present.
- *
- * @for Actor
- * @method getLayer
- * @return {Object} Layer
- */
-void ActorApi::GetLayer( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-  Layer layer = actor.GetLayer();
-  if( layer ) // actors don't always have a layer
-  {
-    v8::Handle < v8::Object > wrappedLayer = ActorWrapper::ActorWrapper::WrapActor( isolate, layer, ActorWrapper::LAYER_ACTOR );
-    args.GetReturnValue().Set( wrappedLayer );
-  }
-  // else return an empty object
-}
-
-/**
- * Adds a child Actor to this Actor.
- *
- * NOTE! if the child already has a parent, it will be removed from old parent
- * and reparented to this actor. This may change childs position, color, shader effect,
- * scale etc as it now inherits them from this actor
- *
- * Pre-conditions
- * - The child actor is not the same as the parent actor.
- * - The actor is not the Root actor
-
- * Once added The child will be referenced by its parent. This means that the child will be kept alive,
- * even if the handle passed into this method is reset or destroyed.
- *
- * @for Actor
- * @method add
- * @param {Object} Actor
- */
-void ActorApi::AddActor( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor parent = GetActor( isolate, args );
-  bool found(false);
-  Actor child = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( found )
-  {
-    parent.Add( child );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "child parameter missing" );
-  }
-}
-
-/**
- * Removes a child Actor from this Actor.
- *
- * If the actor was not a child of this actor, this is a no-op.
- *
- * Preconditions:
- * -  The child actor is not the same as the parent actor.
- *
- * @for Actor
- * @param{Object} Actor the child actor
- * @method Remove
- */
-void ActorApi::RemoveActor( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor parent = GetActor( isolate, args );
-  bool found( false );
-  Actor child = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-
-  if( found )
-  {
-    parent.Remove( child );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "child parameter missing" );
-  }
-}
-
-/**
- * Checks whether an Actor is equal to this Actor.
- *
- * @for Actor
- * @method iIsEqualTo
- * @param {Object} Actor
- */
-void ActorApi::IsEqualTo( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor self = GetActor( isolate, args );
-  bool found( false );
-
-  Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( found )
-  {
-    args.GetReturnValue().Set( v8::Boolean::New( isolate, (actor == self) ) );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "actor parameter missing" );
-  }
-}
-
-/** Removes an actor from its parent.
- *
- * If the actor has no parent, this method does nothing.
- *
- * @for Actor
- * @method Unparent
- */
-void ActorApi::Unparent( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-  actor.Unparent();
-}
-
-/**
- * get number of child actors
- *
- * @for Actor
- * @method getChildCount
- * @return {Integer} count
- */
-void ActorApi::GetChildCount( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, actor.GetChildCount() ) );
-}
-
-/**
- * Retrieve a child actor by index.
- *
- * @for Actor
- * @method getChildAt
- * @param {Integer} actor index
- * @return {Object} actor on success, empty actor handle if not found
- */
-void ActorApi::GetChildAt( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor parent = GetActor( isolate, args );
-  bool found( false );
-  int id = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Integer parameter missing" );
-    return;
-  }
-  Actor childActor = parent.GetChildAt( id );
-  if( childActor )
-  {
-    // wrap the child
-    v8::Handle < v8::Object > wrappedActor = ActorWrapper::WrapActor( isolate, childActor );
-    args.GetReturnValue().Set( wrappedActor );
-  }
-}
-
-/**
- * Search through this actor's hierarchy for an actor with the given name
- * The actor itself is also considered in the search
- *
- * @for Actor
- * @method findChildByName
- * @param {String} actor name
- * @return {Object} actor on success, empty actor handle if not found
- */
-void ActorApi::FindChildByName( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor parent = GetActor( isolate, args );
-  bool found( false );
-  std::string name = V8Utils::GetStringParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "string parameter missing" );
-    return;
-  }
-  Actor childActor = parent.FindChildByName( name );
-  if( childActor )
-  {
-    // wrap the child
-    v8::Handle < v8::Object > wrappedLayer = ActorWrapper::WrapActor( isolate, childActor );
-    args.GetReturnValue().Set( wrappedLayer );
-  }
-}
-
-/**
- * Search through this actor's hierarchy for an actor with the given unique ID.
- * The actor itself is also considered in the search
- *
- * @for Actor
- * @method findChildById
- * @param {Integer} id
- * @return {Object} actor on success, empty actor handle if not found
- */
-void ActorApi::FindChildById( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor parent = GetActor( isolate, args );
-
-  bool found( false );
-  int id = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Integer parameter missing" );
-    return;
-  }
-  Actor childActor = parent.FindChildById( id );
-  if( childActor )
-  {
-    // wrap the child
-    v8::Local < v8::Object > wrappedLayer = ActorWrapper::WrapActor( isolate, childActor );
-    args.GetReturnValue().Set( wrappedLayer );
-  }
-}
-
-
-/**
- * retrieve the actor's parent.
- *
- * @for Actor
- * @method getParent
- * @return {Object} actor on success, empty actor handle if actor has no parent
- */
-void ActorApi::GetParent( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-  Actor parent = actor.GetParent();
-
-  if( parent )
-  {
-    v8::Local < v8::Object > wrappedLayer = ActorWrapper::WrapActor( isolate, parent );
-    args.GetReturnValue().Set( wrappedLayer );
-  }
-}
-/**
- * Converts screen coordinates into the actor's coordinate system using the default camera.
- *
- * The actor coordinates are relative to the top-left (0.0, 0.0, 0.5)
- *
- * @example
- *    var local = actor.screenToLocal( [ 10, 53 ]);
- *    var xPos = local.x;
- *    var yPos = local.y;
- *
- *
- * @for Actor
- * @method screenToLocal
- * @param {Object}  ScreenCoordinates array of 2 objects
- * @return {Object} local coordinates object with x,y properties
- */
-void ActorApi::ScreenToLocal( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  //ool ScreenToLocal(float& localX, float& localY, float screenX, float screenY) const;
-  bool found( false );
-
-  int argCount( args.Length() );
-  Vector2 vector;
-
-  if( argCount == 1 )
-  {
-    vector = V8Utils::GetVector2Parameter( PARAMETER_0, found, isolate, args );
-    if( !found )
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "invalid parameters (x,y)" );
-      return;
-    }
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid parameters (x,y)" );
-    return;
-  }
-  float localX, localY;
-  actor.ScreenToLocal( localX, localY, vector.x, vector.y );
-
-  v8::Local < v8::Object > localCoordinates = v8::Object::New( isolate );
-
-  localCoordinates->Set( v8::String::NewFromUtf8( isolate, "x" ), v8::Number::New( isolate, localX ) );
-  localCoordinates->Set( v8::String::NewFromUtf8( isolate, "y" ), v8::Number::New( isolate, localY ) );
-
-  args.GetReturnValue().Set( localCoordinates );
-
-}
-
-/**
- * Sets whether the actor should be focusable by keyboard navigation.
- *
- * @for Actor
- * @method setKeyboardFocusable
- * @param {Boolean}  folcusable
- */
-void ActorApi::SetKeyboardFocusable( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-  bool parameterFound( false );
-  bool focus = V8Utils::GetBooleanParameter( PARAMETER_0, parameterFound, isolate, args );
-  if( !parameterFound )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "boolean parameter missing" );
-    return;
-  }
-
-  actor.SetKeyboardFocusable( focus );
-}
-
-/**
- * Returns whether the actor is focusable by keyboard navigation.
- *
- *
- * @for Actor
- * @method isKeyboardFocusable
- * @return {Boolean}  folcusable
- */
-void ActorApi::IsKeyboardFocusable( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  args.GetReturnValue().Set( v8::Boolean::New( isolate, actor.IsKeyboardFocusable() ) );
-
-}
-/**
- * retrieve the actor type
- *
- * @for Actor
- * @method getActorType
- * @return {String} Actor, Layer, CameraActor ...
- */
-void ActorApi::GetActorType( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  std::string name = actor.GetTypeName();
-  v8::Local < v8::String > v8String = v8::String::NewFromUtf8( isolate, name.c_str() );
-  args.GetReturnValue().Set( v8String );
-}
-/**
- * Return the natural size of the actor.
- *
- * @for Actor
- * @method getNaturalSize
- * @return {Object} { x, y, z }
- */
-void ActorApi::GetNaturalSize( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  Vector3 size( actor.GetNaturalSize() );
-
-  v8::Local<v8::Object> sizeObject = v8::Object::New( isolate );
-
-  sizeObject->Set( v8::String::NewFromUtf8( isolate, "x" ), v8::Integer::New( isolate, size.width ) );
-  sizeObject->Set( v8::String::NewFromUtf8( isolate, "y" ), v8::Integer::New( isolate, size.height ) );
-  sizeObject->Set( v8::String::NewFromUtf8( isolate, "z" ), v8::Integer::New( isolate, size.depth ) );
-
-  args.GetReturnValue().Set( sizeObject );
-}
-
-/**
- * Return the value of negotiated dimension for the given dimension
- *
- * @for Actor
- * @method getRelayoutSize
- * @param {Integer} dimension The dimension of layout to retrieve (either dali.DIMENSION_WIDTH or dali.DIMENSION_HEIGHT)
- * @return {Number} The value of the negotiated dimension
- */
-void ActorApi::GetRelayoutSize( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  bool found;
-  int dimension = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing dimension parameter");
-    return;
-  }
-
-  args.GetReturnValue().Set( v8::Number::New( isolate, actor.GetRelayoutSize( static_cast<Dimension::Type>(dimension) ) ) );
-}
-
-/**
- *  Calculate the width of the actor given a height
- *
- * The natural size is used for default calculation.
- * size 0 is treated as aspect ratio 1:1.
- * @for Actor
- * @method getWidthForHeight
- * @param {Float} height to use
- * @return {Float} Return the width based on the height
- * @example
- *   myTextLabel.getWidthForHeight(40);
- *
- * // DALi uses this formula internally
- * // width = naturalSize.width * height / naturalSize.height;
- *
- *
- */
-void ActorApi::GetWidthForHeight( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  bool found;
-  float height = V8Utils::GetFloatParameter( PARAMETER_0, found, isolate, args, 0.f );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing height parameter");
-    return;
-  }
-  args.GetReturnValue().Set( v8::Number::New( isolate, actor.GetWidthForHeight( height ) ) );
-}
-
-/**
- *  Calculate the height of the actor given a width
- *
- * The natural size is used for default calculation.
- * size 0 is treated as aspect ratio 1:1.
- * @for Actor
- * @method getHeightForWidth
- * @param {Float} width to use
- * @return {Float} Return the height based on the width
- * @example
- *   myTextLabel.getHeightForWidth(250);
- *
- * // DALi uses this formula internally
- * // height = naturalSize.height * width / naturalSize.width
- */
-void ActorApi::GetHeightForWidth( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  bool found;
-  float width = V8Utils::GetFloatParameter( PARAMETER_0, found, isolate, args, 0.f );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing width parameter");
-    return;
-  }
-  args.GetReturnValue().Set( v8::Number::New( isolate, actor.GetHeightForWidth( width ) ) );
-}
-/**
- * Move an actor relative to its existing position.
- * @example
- *
- *    // using an array
- *    actor.translateBy( [20,40,0] );
- *
- * @for Actor
- * @method translateBy
- * @param {object} an array of 3 numbers
- */
-void ActorApi::TranslateBy( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  //Get displacement vector
-  Vector3 vector;
-  int argCount( args.Length() );
-  if( argCount == 1 )
-  {
-    bool found(false);
-    vector = V8Utils::GetVector3Parameter( PARAMETER_0, found, isolate, args );
-    if( !found )
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "Vector3 move parameter missing" );
-      return;
-    }
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Vector3 move parameter missing" );
-    return;
-  }
-  actor.TranslateBy( vector );
-
-}
-
-
-/**
- * Apply a relative rotation to an actor.
- * @example
- *
- *     var rotation =new dali.Rotation( pitch, roll, yaw );
- *     actor.rotateBy( rotation );
- *
- * @for Actor
- * @method rotateBy
- * @param {object} dali rotation object
- */
-void ActorApi::RotateBy( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  bool found( false );
-  Property::Value rotation = V8Utils::GetPropertyValueParameter( PARAMETER_0, found, isolate, args );
-
-  if( rotation.GetType() != Property::ROTATION )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Rotation parameter missing" );
-    return;
-  }
-  // the rotation parameter has to be either a AngleAxis or a Quaternion
-  // both will work when calling Get( Quaternion);
-
-  Quaternion quaternionValue;
-  rotation.Get( quaternionValue );
-
-  actor.RotateBy( quaternionValue );
-}
-
-/**
- * Apply a relative scale to an actor.
- * @example
- *    // Double actor width and height ( keep depth the same )
- *    // using an array
- *    actor.scaleBy( [2,2,1] );
- *
- *
- * @for Actor
- * @method scaleBy
- * @param {object} JavaScript array
- */
-void ActorApi::ScaleBy( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  Vector3 vector;
-  int argCount( args.Length() );
-  if( argCount == 1 )
-  {
-    bool found(false);
-    vector = V8Utils::GetVector3Parameter( PARAMETER_0, found, isolate, args );
-    if( !found )
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "Vector3 move parameter missing" );
-      return;
-    }
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Vector3 parameter missing" );
-    return;
-  }
-  actor.ScaleBy( vector );
-}
-
-/**
- * Add a renderer to this actor.
- * @example
- *
- *     var renderer = new dali.Renderer( geometry, shader );
- *     actor.addRenderer( renderer );
- *
- * @for Actor
- * @method addRenderer
- * @param {object} renderer Renderer to add to the actor
- * @return {integer} The index of the Renderer that was added
- */
-void ActorApi::AddRenderer( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  unsigned int index = 0;
-
-  bool found( false );
-  Renderer renderer = RendererApi::GetRendererFromParams( 0, found, isolate, args );
-  if( found )
-  {
-    index = actor.AddRenderer(renderer);
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Renderer parameter missing" );
-    return;
-  }
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, index ) );
-}
-
-/**
- * Get the number of renderers on this actor.
- * @example
- *
- *     var count = actor.getRendererCount();
- *
- * @for Actor
- * @method getRendererCount
- * @return {integer} the number of renderers on this actor
- */
-void ActorApi::GetRendererCount( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Actor actor = GetActor( isolate, args );
-  args.GetReturnValue().Set( v8::Integer::New( isolate, actor.GetRendererCount() ) );
-}
-
-/**
- * Get a Renderer by index.
- * @example
- *
- *     var renderer = actor.getRendererAt( 0 );
- *
- * @for Actor
- * @method getRendererAt
- * @param {integer} index The index of the renderer to fetch, which must be between 0 and getRendererCount()-1
- * @return {object} The renderer at the specified index
- */
-void ActorApi::GetRendererAt( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  Renderer renderer;
-
-  bool found( false );
-  int index = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid index parameter" );
-    return;
-  }
-  else
-  {
-    renderer = actor.GetRendererAt(static_cast<unsigned int>(index));
-    if( !renderer )
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "renderer not found" );
-      return;
-    }
-  }
-
-  // Wrap the renderer
-  v8::Local<v8::Object> localObject = RendererWrapper::WrapRenderer( isolate, renderer );
-  args.GetReturnValue().Set( localObject );
-}
-
-/**
- * Remove an renderer from the actor by index.
- * @example
- *
- *     actor.removeRenderer( 0 );
- *
- * @for Actor
- * @method removeRenderer
- * @param {integer} index Index of the renderer to be removed, which must be between 0 and getRendererCount()-1
- */
-void ActorApi::RemoveRenderer( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Actor actor = GetActor( isolate, args );
-
-  bool found( false );
-  int index = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid index parameter" );
-  }
-  else
-  {
-    actor.RemoveRenderer(static_cast<unsigned int>(index));
-  }
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/actors/actor-api.h b/plugins/dali-script-v8/src/actors/actor-api.h
deleted file mode 100644 (file)
index 6db7534..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-#ifndef DALI_V8PLUGIN_ACTOR_API_H
-#define DALI_V8PLUGIN_ACTOR_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/actors/actor.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace ActorApi
-{
-
-  /**
-   * constructor
-   */
-  Actor New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * Actor API. See actor.h for description of functions
-   */
-  void IsRoot( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetId( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void OnStage( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void IsLayer( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetLayer( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void AddActor( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void RemoveActor( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void IsEqualTo( const v8::FunctionCallbackInfo<v8::Value>& args );
-  void Unparent( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void GetChildAt( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void FindChildByName( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void FindChildById( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void GetParent( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetChildCount( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void ScreenToLocal( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetKeyboardFocusable( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void IsKeyboardFocusable( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetNaturalSize( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetRelayoutSize( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetWidthForHeight( const v8::FunctionCallbackInfo<v8::Value>& args );
-  void GetHeightForWidth( const v8::FunctionCallbackInfo<v8::Value>& args );
-  void TranslateBy( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void RotateBy( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void ScaleBy( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void AddRenderer( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetRendererCount( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetRendererAt( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void RemoveRenderer( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  // new function just for JavaScript API, to help developers know what type of actor
-  // they're dealing with, returns actor name as a string
-  void GetActorType( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace ActorApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_ACTOR_API_H
diff --git a/plugins/dali-script-v8/src/actors/actor-wrapper.cpp b/plugins/dali-script-v8/src/actors/actor-wrapper.cpp
deleted file mode 100644 (file)
index c9d3e1d..0000000
+++ /dev/null
@@ -1,413 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "actor-wrapper.h"
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/object/type-registry.h>
-#include <dali-toolkit/public-api/controls/control.h>
-
-// INTERNAL INCLUDES
-#include <actors/layer-api.h>
-#include <actors/actor-api.h>
-#include <actors/camera-actor-api.h>
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> ActorWrapper::mActorTemplate;
-v8::Persistent<v8::ObjectTemplate> ActorWrapper::mCameraActorTemplate;
-v8::Persistent<v8::ObjectTemplate> ActorWrapper::mLayerActorTemplate;
-
-namespace
-{
-
-
-/**
- * pointer to a persistent template handle
- */
-struct ActorTemplate
-{
-  v8::Persistent<v8::ObjectTemplate>* actorTemplate;
-};
-
-/**
- * array of templates for each type of actor
- */
-const ActorTemplate ActorTemplateLookup[]=
-{
-    { &ActorWrapper::mActorTemplate },        // ACTOR
-    { &ActorWrapper::mLayerActorTemplate },   // LAYER_ACTOR
-    { &ActorWrapper::mCameraActorTemplate}    // CAMERA_ACTOR
-};
-
-/**
- * Bitmask of API's that an actor can support
- */
-enum ActorApiBitMask
-{
-  ACTOR_API              = 1 << 0,
-  LAYER_API              = 1 << 1,
-  CAMERA_ACTOR_API       = 1 << 2,
-};
-
-/**
- * structure used for the ActorApiLookup.
- */
-struct ActorApiStruct
-{
-  const char* actorName;
-  ActorWrapper::ActorType actorType;
-  Actor (*constructor)( const v8::FunctionCallbackInfo< v8::Value >& args);
-  int supportApis;
-};
-
-/**
- * Lookup table to match a actor type with a constructor and supported API's.
- * ActorWrapper::ActorType is used to index this table
- */
-const ActorApiStruct ActorApiLookup[]=
-{
-  {"Actor",      ActorWrapper::ACTOR,        ActorApi::New,       ACTOR_API },
-  {"Layer",      ActorWrapper::LAYER_ACTOR,  LayerApi::New,       ACTOR_API | LAYER_API                                },
-  {"CameraActor",ActorWrapper::CAMERA_ACTOR, CameraActorApi::New, ACTOR_API | CAMERA_ACTOR_API                         },
-};
-
-const unsigned int ActorApiLookupCount = sizeof(ActorApiLookup)/sizeof(ActorApiLookup[0]);
-
-
-
-/**
- * Creates an actor given a type name
- * Uses the type registry to create an actor of the correct type
- */
-Actor CreateActor( const v8::FunctionCallbackInfo< v8::Value >& args,
-                        const std::string& typeName )
-{
-  Actor actor;
-
-  ActorWrapper::ActorType actorType = ActorWrapper::GetActorType( typeName );
-
-  // if we don't currently support the actor type, then use type registry to create it
-  if( actorType == ActorWrapper::UNKNOWN_ACTOR )
-  {
-      DALI_SCRIPT_EXCEPTION( args.GetIsolate(), "Unknown actor type" );
-      return Actor();
-  }
-  else
-  {
-    // run the constructor for this type of actor so it can pull out
-    // custom parameters;
-    actor = (ActorApiLookup[actorType].constructor)( args );
-  }
-  return actor;
-}
-
-
-
-/**
- * given an actor type return what api's it supports
- */
-int GetActorSupportedApis( ActorWrapper::ActorType type )
-{
-  return ActorApiLookup[ type].supportApis;
-}
-
-/**
- * Used for the ActorFunctionTable to map function names to functions
- * with for a specific API
- */
-struct ActorFunctions
-{
-  const char* name;               ///< function name
-  void (*function)( const v8::FunctionCallbackInfo< v8::Value >& args);
-  ActorApiBitMask api;
-};
-
-/**
- * Contains a list of all functions that can be called an
- * actor / image-actor / layer / camera-actor
- */
-const ActorFunctions ActorFunctionTable[]=
-{
-    /**************************************
-    * Actor API (in order of actor.h)
-    * Any properties that have accessor functions are ignored to avoid duplication
-    **************************************/
-    // ignore. GetName()  use Actor.name
-    // ignore. SetName()  use Actor.name
-    { "GetId",             ActorApi::GetId,            ACTOR_API },
-    { "IsRoot",            ActorApi::IsRoot,           ACTOR_API },
-    { "OnStage",           ActorApi::OnStage,          ACTOR_API },
-    { "IsLayer",           ActorApi::IsLayer,          ACTOR_API },
-    { "GetLayer",          ActorApi::GetLayer,         ACTOR_API },
-    { "Add",               ActorApi::AddActor,         ACTOR_API },
-    { "Remove",            ActorApi::RemoveActor,      ACTOR_API },
-    { "IsEqualTo" ,        ActorApi::IsEqualTo,        ACTOR_API },
-    { "Unparent",          ActorApi::Unparent,         ACTOR_API },
-    { "GetChildCount",     ActorApi::GetChildCount,    ACTOR_API },
-    { "GetChildAt"   ,     ActorApi::GetChildAt,       ACTOR_API },
-    { "FindChildByName",   ActorApi::FindChildByName,  ACTOR_API },
-    { "FindChildById",     ActorApi::FindChildById,    ACTOR_API },
-    { "GetParent" ,        ActorApi::GetParent,        ACTOR_API },
-    { "GetActorType" ,     ActorApi::GetActorType,     ACTOR_API }, // custom for javascript
-
-    // ignore. SetParentOrigin() use Actor.parentOrigin
-    // ignore. GetCurrentParentOrigin()  use Actor.parentOrigin
-    // ignore. SetAnchorPoint()  use Actor.anchorPoint
-    // ignore. GetCurrentAnchorPoint()  use Actor.anchorPoint
-    // ignore. SetSize() use Actor.size
-    // ignore. GetCurrentSize() use Actor.size
-    { "GetNaturalSize",   ActorApi::GetNaturalSize,    ACTOR_API },
-    { "GetRelayoutSize",  ActorApi::GetRelayoutSize,   ACTOR_API },
-    { "GetWidthForHeight",ActorApi::GetWidthForHeight, ACTOR_API },
-    { "GetHeightForWidth",ActorApi::GetHeightForWidth, ACTOR_API },
-    // ignore. SetPosition(....) use Actor.position
-    // ignore. SetX, SetY, SetZ,  use Actor.position.x, Actor.position.y, Actor.position.z
-    { "TranslateBy",         ActorApi::TranslateBy,              ACTOR_API },
-    // ignore GetCurrentPosition(). use Actor.position
-    // ignore GetCurrentWorldPosition() use Actor.worldPosition
-    // ignore SetPositionInheritanceMode() use Actor.positionInheritance
-    // ignore GetPositionInheritanceMode()  use Actor.positionInheritance
-    // ignore SetOrientation() use Actor.orientation
-    { "RotateBy",         ActorApi::RotateBy,          ACTOR_API },
-    // ignore GetCurrentOrientation() use Actor.orientation
-    // ignore SetInheritOrientation() use Actor.inheritOrientation
-    // ignore IsOrientationInherited() use Actor.inheritOrientation
-    // ignore GetCurrentWorldOrientation() use Actor.worldOrientation
-    // ignore SetScale() use Actor.scale
-    { "ScaleBy",         ActorApi::ScaleBy,            ACTOR_API },
-    // ignore GetCurrentScale() use Actor.scale
-    // ignore GetCurrentWorldScale() use Actor.worldScale
-    // ignore SetInheritScale() use Actor.inheritScale
-    // ignore IsScaleInherited() use Actor.inheritScale
-    // ignore GetCurrentWorldMatrix() use Actor.worldMatrix
-    // ignore SetVisible() use Actor.visible
-    // ignore IsVisible() use Actor.visible
-    // ignore SetOpacity() use Actor.opacity
-    // ignore GetCurrentOpacity() use Actor.opacity
-    // ignore SetColor() use Actor.color
-    // ignore GetCurrentColor() use Actor.color
-    // ignore SetColorMode() use Actor.colorMode
-    // ignore GetColorMode() use Actor.colorMode
-    // ignore GetCurrentWorldColor() use Actor.worldColor
-    // ignore SetDrawMode() use Actor.drawMode
-    // ignore GetDrawMode() use Actor.drawMode
-    // ignore SetSensitive() use Actor.sensitve
-    // ignore IsSensitive() use Actor.sensitive
-    { "ScreenToLocal"       , ActorApi::ScreenToLocal,         ACTOR_API},
-    // ignore SetLeaveRequired() use Actor.leaveRequired
-    // ignore GetLeaveRequired() use Actor.leaveRequired
-    { "SetKeyboardFocusable", ActorApi::SetKeyboardFocusable,  ACTOR_API }, //-- should this be a property???
-    { "IsKeyboardFocusable" , ActorApi::IsKeyboardFocusable,   ACTOR_API }, //-- should this be a property???
-
-    { "AddRenderer",          ActorApi::AddRenderer,           ACTOR_API },
-    { "GetRendererCount",     ActorApi::GetRendererCount,      ACTOR_API },
-    { "GetRendererAt" ,       ActorApi::GetRendererAt,         ACTOR_API },
-    { "RemoveRenderer" ,      ActorApi::RemoveRenderer,        ACTOR_API },
-
-    /**************************************
-     * Layer  API (in order of layer.h)
-     **************************************/
-    { "GetDepth",           LayerApi::GetDepth,                 LAYER_API  },
-    { "Raise",              LayerApi::Raise,                    LAYER_API  },
-    { "Lower",              LayerApi::Lower,                    LAYER_API  },
-    { "RaiseAbove",         LayerApi::RaiseAbove,               LAYER_API  },
-    { "LowerBelow",         LayerApi::LowerBelow,               LAYER_API  },
-    { "RaiseToTop",         LayerApi::RaiseToTop,               LAYER_API  },
-    { "LowerToBottom",      LayerApi::LowerToBottom,            LAYER_API  },
-    { "MoveAbove",          LayerApi::MoveAbove,                LAYER_API  },
-    { "MoveBelow",          LayerApi::MoveBelow,                LAYER_API  },
-    // ignore SetClipping, use layer.clippingEnable
-    // ignore IsClipping, use layer.clippingEnable
-    // ignore SetClippingBox, use layer.clippingBox
-    { "SetDepthTestDisabled", LayerApi::SetDepthTestDisabled,   LAYER_API },
-    { "IsDepthTestDisabled",  LayerApi::IsDepthTestDisabled,    LAYER_API },
-    // @todo SetSortFunction
-
-    /**************************************
-     * Camera Actor API (in order of camera.h)
-     **************************************/
-    // ignore SetType use camera.type
-    // ignore GetType use camera.type
-    // ignore SetProjectionMode use camera.projectionMode
-    // ignore GetProjectionMode use camera.projectionMode
-    // ignore SetFieldOfView use camera.fieldOfView
-    // ignore GetFieldOfView use camera.fieldOfView
-    // ignore SetAspectRatio use camera.aspectRatio
-    // ignore GetAspectRatio use camera.aspectRatio
-    // ignore SetNearClippingPlane use camera.nearPlaneDistance
-    // ignore GetNearClippingPlane use camera.nearPlaneDistance
-    // ignore SetFarClippingPlane use camera.farPlaneDistance
-    // ignore GetFarClippingPlane use camera.farPlaneDistance
-    // ignore GetTargetPosition use camera.targetPosition
-    // ignore SetInvertYAxis use camera.invertYAxis
-    // ignore GetInvertYAxis use camera.invertYAxis
-    { "SetPerspectiveProjection",   CameraActorApi::SetPerspectiveProjection,   CAMERA_ACTOR_API },
-    { "SetOrthographicProjection",  CameraActorApi::SetOrthographicProjection,  CAMERA_ACTOR_API },
-
-};
-
-const unsigned int ActorFunctionTableCount = sizeof(ActorFunctionTable)/sizeof(ActorFunctionTable[0]);
-} //un-named space
-
-
-ActorWrapper::ActorWrapper( Actor actor,
-              GarbageCollectorInterface& gc )
-: HandleWrapper( BaseWrappedObject::ACTOR , actor, gc ),
-  mActor( actor )
-
-{
-}
-
-v8::Handle<v8::Object> ActorWrapper::WrapActor(v8::Isolate* isolate, Actor actor )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  // Check whether the actor is a Control
-  ActorWrapper::ActorType type = Toolkit::Control::DownCast(actor) ? ACTOR : GetActorType( actor.GetTypeName() );
-  v8::Local<v8::Object> object = WrapActor( isolate, actor, type );
-
-  return handleScope.Escape( object );
-}
-
-Actor ActorWrapper::GetActor()
-{
-  return mActor;
-}
-
-v8::Handle<v8::Object> ActorWrapper::WrapActor( v8::Isolate* isolate, Actor actor, ActorType actorType )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetActorTemplate( isolate, actorType );
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the actor object
-  ActorWrapper* pointer = new ActorWrapper( actor, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  // This also stores Dali object, in an internal field inside the JavaScript object.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> ActorWrapper::GetActorTemplate( v8::Isolate* isolate, ActorWrapper::ActorType type )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( ActorTemplateLookup[type].actorTemplate->IsEmpty() )
-  {
-    objectTemplate = MakeDaliActorTemplate( isolate, type );
-    ActorTemplateLookup[type].actorTemplate->Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, *ActorTemplateLookup[type].actorTemplate );
-  }
-
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> ActorWrapper::MakeDaliActorTemplate( v8::Isolate* isolate, ActorType actorType )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // find out what API's this actor supports
-  int supportApis = GetActorSupportedApis( actorType );
-
-  // add our function properties
-  for( unsigned int i = 0; i < ActorFunctionTableCount; ++i )
-  {
-    const ActorFunctions property =  ActorFunctionTable[i];
-
-    // check to see if the actor supports a certain type of API
-    // e.g. Layer will support ACTOR_API and LAYER_API
-    if( supportApis &  property.api )
-    {
-      std::string funcName = V8Utils::GetJavaScriptFunctionName( property.name);
-
-      objTemplate->Set( v8::String::NewFromUtf8(   isolate, funcName.c_str() ),
-                      v8::FunctionTemplate::New( isolate, property.function ) );
-    }
-  }
-
-  // property handle intercepts property getters and setters and signals
-  HandleWrapper::AddInterceptsToTemplate( isolate, objTemplate );
-
-
-  return handleScope.Escape( objTemplate );
-}
-
-void ActorWrapper::NewActor( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  if( !args.IsConstructCall() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "constructor called without 'new" );
-    return;
-  }
-
-  // find out the callee function name...e.g. CameraActor
-  v8::Local<v8::Function> callee = args.Callee();
-  v8::Local<v8::Value> v8String = callee->GetName();
-  std::string typeName = V8Utils::v8StringToStdString( v8String );
-
-  // create a new actor based on type, using the type registry.
-  Actor actor = CreateActor( args, typeName );
-
-  v8::Local<v8::Object> localObject = WrapActor( isolate, actor );
-
-  args.GetReturnValue().Set( localObject );
-}
-
-/**
- * given an actor type name, e.g. CameraActor returns the type, e.g. ActorWrapper::CAMERA_ACTOR
- */
-ActorWrapper::ActorType ActorWrapper::GetActorType( const std::string& name )
-{
-  for( unsigned int i = 0 ; i < ActorApiLookupCount ; i++ )
-  {
-    if( ActorApiLookup[i].actorName == name )
-    {
-      return ActorApiLookup[i].actorType;
-    }
-  }
-  return ActorWrapper::UNKNOWN_ACTOR;
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/actors/actor-wrapper.h b/plugins/dali-script-v8/src/actors/actor-wrapper.h
deleted file mode 100644 (file)
index f7a48b3..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-#ifndef DALI_V8PLUGIN_ACTOR_WRAPPER_H
-#define DALI_V8PLUGIN_ACTOR_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/actors/actor.h>
-
-// INTERNAL INCLUDES
-#include <object/handle-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * Wraps a Dali Actor.
- */
-class ActorWrapper : public HandleWrapper
-{
-
-public:
-
-  /**
-   * Actor type used an index.
-   * These enums are used to index the ActorApiLookup table in actor-wrapper.cpp.
-   * Any changes made must be reflected in the ActorApiLookup otherwise it may segfault when creating an actor
-   */
-  enum ActorType
-  {
-    UNKNOWN_ACTOR = -1,
-    ACTOR        = 0,
-    LAYER_ACTOR  = 1,
-    CAMERA_ACTOR = 2
-  };
-
-  /**
-   * Constructor
-   * @param actor DALi actor
-   * @param gc garbage collection interface
-   */
-  ActorWrapper( Actor actor,
-                GarbageCollectorInterface& gc );
-
-  /**
-   * destructor
-   */
-  virtual ~ActorWrapper()
-  {
-  }
-
-  /**
-   * @brief Creates a new Actor wrapped inside a Javascript Object.
-   * @note: the actor type ie 'CameraActor' is expected to be the name of the callee function.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewActor( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * @brief Wraps an actor of a given type
-   */
-  static v8::Handle<v8::Object> WrapActor(v8::Isolate* isolate, Dali::Actor actor,ActorType actorType);
-
-  /**
-   * @brief Wraps an actor, the type is looked up from the actor
-   */
-  static v8::Handle<v8::Object> WrapActor(v8::Isolate* isolate, Dali::Actor actor );
-
-  // The Actor ObjectTemplates.
-  static v8::Persistent<v8::ObjectTemplate> mActorTemplate;
-  static v8::Persistent<v8::ObjectTemplate> mCameraActorTemplate;
-  static v8::Persistent<v8::ObjectTemplate> mLayerActorTemplate;
-
-  /**
-   * @return the wrapped actor
-   */
-  Actor GetActor();
-
-  /**
-   * @return they actor type
-   */
-  static ActorWrapper::ActorType GetActorType( const std::string& name );
-
-protected:
-
-  /**
-   * @brief Helper to make the actor template
-   *
-   */
-  static v8::Handle<v8::ObjectTemplate> MakeDaliActorTemplate( v8::Isolate* isolate, ActorType actorType );
-
-private:
-
-  /**
-   * Helper, get an actor template given an actor type
-   */
-  static v8::Local<v8::ObjectTemplate> GetActorTemplate( v8::Isolate* isolate, ActorType type );
-
-  Actor mActor;
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_ACTOR_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/actors/camera-actor-api.cpp b/plugins/dali-script-v8/src/actors/camera-actor-api.cpp
deleted file mode 100644 (file)
index 94fcbe5..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "camera-actor-api.h"
-
-// INTERNAL INCLUDES
-#include <object/handle-wrapper.h>
-#include <v8-utils.h>
-#include <shared/base-wrapped-object.h>
-#include <object/property-value-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace // un-named namespace
-{
-
-CameraActor GetCameraActor( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  HandleWrapper* handleWrapper = HandleWrapper::Unwrap( isolate, args.This() );
-  return CameraActor::DownCast( handleWrapper->mHandle );
-}
-
-} // un-named name space
-
-/***************************************
- * CAMERA ACTOR FUNCTIONS
- ****************************************/
-/**
- * Constructor
- *
- * @constructor
- * @method CameraActor
- * @for CameraActor
- * @return {Object} CameraActor
- */
-Actor CameraActorApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  return CameraActor::New();
-}
-
-/**
- *
- * Sets the default camera perspective projection for the given canvas size.
- *
- * Sets the near and far clipping planes, the field of view, the aspect ratio
- * and the Z position of the actor based on the canvas size so that 1 unit in
- * XY (z=0) plane is 1 pixel on screen.
- *
- * If the canvas size is ZERO, it sets the default camera perspective
- * projection for the stage's size.
- *
- * If size is non ZERO, \e width and \e height must be greater than zero.
- *
- *
- * @example
- *     var camera = dali.stage.getRenderTaskList().getTask(0).getCameraActor();
- *
- *     camera.setPerspectiveProjection( [100, 150] );
- *
- *
- * @for CameraActor
- * @method setPerspectiveProjection
- * @param {Object}  The canvas size, array of 2 numbers
- */
-void CameraActorApi::SetPerspectiveProjection( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  CameraActor cameraActor = GetCameraActor( isolate, args );
-
-  bool found;
-  Vector2 size = V8Utils::GetVector2Parameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-    return;
-  }
-  cameraActor.SetPerspectiveProjection( size );
-}
-
-/**
- *
- * Sets the camera projection to use orthographic projection.
- *
- * The XY plane is centered on the camera axis. The units in the X/Y
- * plane directly equate to pixels on an equivalently sized
- * framebuffer.
- *
- * The Z position of the actor, and the near and far clip planes of the
- * bounding box match those that would be created by using
- * SetPerspectiveProjection with the same size.
- *
- *
- * @example
- *     var camera = dali.stage.getRenderTaskList().getTask(0).getCameraActor();
- *     camera.setOrthographicProjection( [1920, 1080] );
- *
- * @for CameraActor
- * @method setOrthographicProjection
- * @param {Object}  Size Size of XY plane (normal to camera axis)
- */
-void CameraActorApi::SetOrthographicProjection( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  CameraActor cameraActor = GetCameraActor( isolate, args );
-
-  bool found;
-  Vector2 size = V8Utils::GetVector2Parameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-    return;
-  }
-  cameraActor.SetOrthographicProjection( size );
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/actors/camera-actor-api.h b/plugins/dali-script-v8/src/actors/camera-actor-api.h
deleted file mode 100644 (file)
index eeabae7..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-#ifndef DALI_V8PLUGIN_CAMERA_ACTOR_API_H
-#define DALI_V8PLUGIN_CAMERA_ACTOR_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/actors/camera-actor.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace CameraActorApi
-{
-  /**
-   * constructor
-   */
-  Actor New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-
-  /**
-   * Camera API see DALI camera.h
-   */
-  void SetPerspectiveProjection( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetOrthographicProjection( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace CameraActorApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_CAMERA_ACTOR_API_H
diff --git a/plugins/dali-script-v8/src/actors/layer-api.cpp b/plugins/dali-script-v8/src/actors/layer-api.cpp
deleted file mode 100644 (file)
index da6e18f..0000000
+++ /dev/null
@@ -1,299 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "layer-api.h"
-
-// INTERNAL INCLUDES
-#include <object/handle-wrapper.h>
-#include <v8-utils.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace //unnamed name space
-{
-
-Layer GetLayer( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  HandleWrapper* handleWrapper = HandleWrapper::Unwrap( isolate, args.This() );
-  return Layer::DownCast( handleWrapper->mHandle );
-}
-
-} //unnamed name space
-
-/***************************************
- * LAYER FUNCTIONS
- *
- ****************************************/
-/**
- * Constructor
- *
- * @constructor
- * @method Layer
- * @for Layer
- * @return {Object} Layer
- */
-Actor LayerApi::New( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  return Layer::New();
-}
-
-/**
- *  Query the depth of the layer
- *
- * 0 is bottom most layer, higher number is on top
- * Condition: layer is on the stage
- * If layer is not added to the stage, returns 0.
- * @return  {Number}  the current depth of the layer.
- */
-void LayerApi::GetDepth( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Layer layer = GetLayer( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, layer.GetDepth() ) );
-
-}
-
-/**
- * Increment the depth of the layer.
- * Condition: layer is on the stage
- * @method Raise
- * @for Layer
- *
- */
-void LayerApi::Raise( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Layer layer = GetLayer( isolate, args );
-  layer.Raise();
-}
-
-/**
- * Decrement the depth of the layer.
- * Condition: layer is on the stage
- * @for Layer
- * @method lower
- */
-void LayerApi::Lower( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Layer layer = GetLayer( isolate, args );
-  layer.Lower();
-}
-
-/**
- *  Ensures the layers depth is greater than the target layer.
- *
- * If the layer already is above target layer its depth is not changed
- * If the layer was below target, its new depth will be immediately above target
- * Note! All layers between this layer and target get new depth values
- * Condition: layer is on the stage
- * Condition: target layer is on the stage
- * @for Layer
- * @method raiseAbove
- * @param target layer to get above of
- */
-void LayerApi::RaiseAbove( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Layer layer = GetLayer( isolate, args );
-  bool found(false);
-
-  Layer target = V8Utils::GetLayerParameter( PARAMETER_0, found, isolate, args );
-  if( found )
-  {
-    layer.RaiseAbove( target );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "layer param not found");
-  }
-}
-
-/**
- *  Ensures the layers depth is less than the target layer.
- *
- * If the layer already is below the layer its depth is not changed
- * If the layer was above target, its new depth will be immediately below target
- * Note! All layers between this layer and target get new depth values
- * Conditions: layer is on the stage, target layer is on the stage
- * @param target layer to get below of
- * @for Layer
- * @method lowerBelow
- */
-void LayerApi::LowerBelow( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Layer layer = GetLayer( isolate, args );
-  bool found( false );
-
-  Layer target = V8Utils::GetLayerParameter( PARAMETER_0, found, isolate, args );
-
-  if( found )
-  {
-    layer.LowerBelow( target );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "layer param not found");
-  }
-
-}
-
-/**
- * Raises the layer to the top.
- * Conditions:  layer is on the stage
- * @for Layer
- * @method raiseToTop
- */
-void LayerApi::RaiseToTop( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Layer layer = GetLayer( isolate, args );
-  layer.RaiseToTop();
-}
-
-/**
- * Lowers the layer to the bottom.
- * Conditions:  layer is on the stage
- * @for Layer
- * @method lowerToBottom
- */
-void LayerApi::LowerToBottom( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Layer layer = GetLayer( isolate, args );
-  layer.LowerToBottom();
-}
-
-/**
- *  Moves the layer directly above the given layer.
- *
- * After the call this layers depth will be immediately above target
- * Note! All layers between this layer and target get new depth values
- * Conditions: layer is on the stage, target layer is on the stage
- * @param target layer to get on top of
- * @for Layer
- * @method moveAbove
- */
-void LayerApi::MoveAbove( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Layer layer = GetLayer( isolate, args );
-  bool found( false );
-
-  Layer target = V8Utils::GetLayerParameter( PARAMETER_0, found, isolate, args );
-  if( found )
-  {
-    layer.MoveAbove( target );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "layer param not found");
-  }
-}
-
-/**
- *  Moves the layer directly below the given layer.
- *
- * After the call this layers depth will be immediately below target
- * Note! All layers between this layer and target get new depth values
- * Condition: layer is on the stage
- * Condition: target layer is on the stage
- * @param target layer to get below of
- * @for Layer
- * @method moveBelow
- */
-void LayerApi::MoveBelow( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Layer layer = GetLayer( isolate, args );
-  bool found( false );
-
-  Layer target = V8Utils::GetLayerParameter( PARAMETER_0, found, isolate, args );
-
-  if( found )
-  {
-    layer.MoveBelow( target );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "layer param not found");
-  }
-}
-
-// should really be a property
-/**
- *  Whether to disable the depth test.
- *
- * By default a layer enables depth test if there is more than one opaque actor or if there is one opaque actor and one, or more, transparent actors.
- * However, it's possible to disable the depth test by calling this method.
- *
- * @param {Boolean}  disable true disables depth test. false sets the default behaviour.
- * @for Layer
- * @method setDepthTestDisabled
- */
-void LayerApi::SetDepthTestDisabled( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Layer layer = GetLayer( isolate, args );
-  bool parameterFound( false );
-  bool depthTest = V8Utils::GetBooleanParameter( PARAMETER_0, parameterFound, isolate, args );
-  if( !parameterFound )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-    return;
-  }
-  layer.SetDepthTestDisabled( depthTest );
-
-}
-
-/**
- *  Retrieves whether depth test is disabled.
- *
- * @return { Boolean}  true if depth test is disabled.
- * @for Layer
- * @method isDepthTestDisabled
- */
-void LayerApi::IsDepthTestDisabled( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Layer layer = GetLayer( isolate, args );
-  args.GetReturnValue().Set( v8::Boolean::New( isolate, layer.IsDepthTestDisabled() ) );
-}
-
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/actors/layer-api.h b/plugins/dali-script-v8/src/actors/layer-api.h
deleted file mode 100644 (file)
index e6d0187..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-#ifndef DALI_V8PLUGIN_LAYER_API_H
-#define DALI_V8PLUGIN_LAYER_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/actors/layer.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace LayerApi
-{
-  /**
-   * Layer constructor
-   */
-  Actor New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * Layer API see layer.h for a description
-   */
-  void GetDepth( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Raise( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Lower( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void RaiseAbove( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void LowerBelow( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void RaiseToTop( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void LowerToBottom( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void MoveBelow( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void MoveAbove( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetDepthTestDisabled( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void IsDepthTestDisabled( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-
-}; // namespace LayerApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_LAYER_API_H
diff --git a/plugins/dali-script-v8/src/animation/animation-api.cpp b/plugins/dali-script-v8/src/animation/animation-api.cpp
deleted file mode 100644 (file)
index 3a63034..0000000
+++ /dev/null
@@ -1,1088 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "animation-api.h"
-#include "path-wrapper.h"
-
-// EXTERNAL INCLUDES
-#include <dali/integration-api/debug.h>
-
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <animation/animation-wrapper.h>
-#include <object/property-value-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace // un named namespace
-{
-
-struct AnimationParameters
-{
-  AnimationParameters( const Animation& anim)
-  : propertyIndex( Property::INVALID_INDEX  ),
-    alphaFunction( AlphaFunction::DEFAULT),
-    delay( 0.f ),
-    duration(anim.GetDuration()),
-    optionsFound( false )
-  {
-  }
-
-  Handle target;
-  Property::Index propertyIndex;
-  Property::Value value;
-  KeyFrames keyFrames;
-  AlphaFunction alphaFunction;
-  float delay;
-  float duration;
-  bool optionsFound;
-};
-
-void GetAnimationOptions( v8::Isolate* isolate,
-                          v8::Local<v8::Value > options,
-                          AnimationParameters& animParams )
-{
-  // animation options is an optional parameter passed in which holds
-  // optional settings
-  // var animOptions = {
-  //  alpha: "Bounce",
-  //  delay: 5,
-  //  duration: 20
-  // };
-  v8::HandleScope handleScope( isolate );
-
-  if( options->IsObject() )
-  {
-    v8::Local<v8::Object> obj = options->ToObject();
-    v8::Local<v8::Value> alphaValue = obj->Get( v8::String::NewFromUtf8( isolate, "alpha" ) );
-    if( alphaValue->IsUint32() )
-    {
-      animParams.optionsFound = true;
-      animParams.alphaFunction = static_cast<AlphaFunction::BuiltinFunction>(alphaValue->ToUint32()->Value());
-    }
-
-    v8::Local<v8::Value> delayValue = obj->Get( v8::String::NewFromUtf8( isolate, "delay" ) );
-    if( delayValue->IsNumber() )
-    {
-      animParams.optionsFound = true;
-      v8::Local<v8::Number> num = delayValue->ToNumber();
-      animParams.delay = num->Value();
-    }
-
-    v8::Local<v8::Value> durationValue = obj->Get( v8::String::NewFromUtf8( isolate, "duration" ) );
-    if( durationValue->IsNumber() )
-    {
-      animParams.optionsFound = true;
-      v8::Local<v8::Number> num = durationValue->ToNumber();
-      animParams.duration = num->Value();
-    }
-
-  }
-}
-KeyFrames GetKeyFrames( v8::Isolate* isolate, v8::Local<v8::Value > keyFrameArray )
-{
-  // keyframe object is an array of
-  // {
-  //   float: progress
-  //   value: property value ( position/ rotation etc)
-  //   alpha: function
-  //
-  v8::HandleScope handleScope( isolate );
-
-  if( !keyFrameArray->IsObject() || !keyFrameArray->IsArray() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing keyframe array" );
-    return KeyFrames();
-  }
-
-  KeyFrames keyframes = KeyFrames::New();
-
-  v8::Local<v8::Array> array = v8::Local<v8::Array>::Cast( keyFrameArray );
-  for( uint32_t i=0; i < array->Length() ; ++i)
-  {
-    v8::Handle<v8::Value> arrayItem =  array->Get( i );
-
-    if(!arrayItem->IsObject() )
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "missing keyframe object" );
-      return KeyFrames();
-    }
-    v8::Handle<v8::Object> keyFrameObject = arrayItem->ToObject();
-
-    // get keyframe.progress
-    v8::Handle<v8::Value> progress = keyFrameObject->Get(v8::String::NewFromUtf8( isolate, "progress"));
-    if( !progress->IsNumber() )
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "keyframe missing progress property" );
-      return keyframes;
-    }
-
-    // get keyframe.value
-    bool found(false);
-    v8::Handle<v8::Value> propertyValue = keyFrameObject->Get(v8::String::NewFromUtf8( isolate, "value"));
-    Property::Value value =  V8Utils::GetPropertyValueFromObject( found, isolate, propertyValue );
-    if( !found )
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "keyframe missing value property" );
-      return keyframes;
-    }
-
-    // get keyframe.alpha
-    v8::Handle<v8::Value> alphaValue = keyFrameObject->Get(v8::String::NewFromUtf8( isolate, "alpha"));
-    if( alphaValue->IsUint32() )
-    {
-      AlphaFunction alphaFunction = static_cast<AlphaFunction::BuiltinFunction>(alphaValue->ToUint32()->Value());
-      keyframes.Add( progress->NumberValue(), value, alphaFunction );
-    }
-    else
-    {
-      keyframes.Add( progress->NumberValue(), value );
-    }
-
-  }
-  return keyframes;
-
-}
-bool GetAnimationParameters(  v8::Isolate* isolate,
-                              const v8::FunctionCallbackInfo< v8::Value >& args,
-                              AnimationParameters& animParams,
-                              AnimationApi::AnimationParameterType type)
-{
-  // used for things like anim.AnimateBy(  myImageView, property-name,  property-value (or Javascript number array));
-  // 1 extract property handle from param1.
-  // 2 extract property name from param2  ( in the format "uColor" )
-  // 3 extract PropertyValue from param3
-  // 4 extract animation options ( delay, duration, alpha func)
-
-  // 1 extract HANDLE
-  bool foundHandle;
-  animParams.target = V8Utils::GetHandleParameter( PARAMETER_0, foundHandle, isolate, args );
-  if( !foundHandle )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter 0 (Handle)" );
-    return false;
-  }
-
-  // 2 extract property name
-  bool foundPropName;
-  std::string propertyName = V8Utils::GetStringParameter( PARAMETER_1, foundPropName, isolate, args );
-  if( !foundPropName )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter 1 ( PropertyName )" );
-    return false;
-  }
-  // try both properties with dashes and without
-  Property::Index index = animParams.target.GetPropertyIndex( propertyName );
-
-  if( index == Property::INVALID_INDEX )
-  {
-    index = animParams.target.GetPropertyIndex( propertyName );
-  }
-
-  animParams.propertyIndex = index;
-
-  if( type == AnimationApi::PROPERTY_VALUE )
-  {
-    // 3 extract property value
-    bool foundPropValue( false );
-    animParams.value = V8Utils::GetPropertyValueParameter( PARAMETER_2, foundPropValue, isolate, args );
-    if( !foundPropValue )
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "bad parameter 2 ( value )" );
-      return false;
-    }
-  }
-  else  // type == KEYFRAMES
-  {
-    animParams.keyFrames = GetKeyFrames(isolate, args[2]);
-  }
-  // 4 extract animation options
-  GetAnimationOptions( isolate, args[3], animParams );
-
-  return true;
-}
-
-Animation GetAnimation( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField( 0 ) );
-  void* ptr = field->Value();
-
-  AnimationWrapper* wrapper = static_cast<AnimationWrapper *>( ptr );
-  return wrapper->GetAnimation();
-}
-
-
-} // un-named namespace
-
-/**
- * Constructor
- *
- * @constructor
- * @for Animation
- * @method Animation
- * @param {float} duration
- *
- */
-Animation AnimationApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  bool found( false );
-  float value = V8Utils::GetFloatParameter( PARAMETER_0, found, isolate, args, 1.f /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-    return Animation();
-  }
-  // get the duration
-  return Animation::New( value );
-}
-
-/**
- * Set the animation duration.
- * @method setDuration
- * @for Animation
- * @param {float} duration in seconds
- *
- */
-void AnimationApi::SetDuration( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  bool found( false );
-  float value = V8Utils::GetFloatParameter( PARAMETER_0, found, isolate, args, 1.f /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-    return;
-  }
-  anim.SetDuration( value );
-}
-/**
- * Get the animation duration.
- * @method getDuration
- * @for Animation
- * @return {float} duration in seconds
- *
- */
-void AnimationApi::GetDuration( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  args.GetReturnValue().Set( v8::Number::New( isolate, anim.GetDuration() ) );
-
-}
-/**
- * Set whether the animation will loop.
- * @method setLooping
- * @for Animation
- * @param {bool} looping enabled
- *
- */
-void AnimationApi::SetLooping( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  bool found( false );
-  bool value = V8Utils::GetBooleanParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-  }
-  else
-  {
-    anim.SetLooping( value );
-  }
-
-}
-/**
- * Query whether the animation will loop.
- * @method isLooping
- * @for Animation
- * @return {bool} looping enabled
- *
- */
-void AnimationApi::IsLooping( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  args.GetReturnValue().Set( v8::Boolean::New( isolate, anim.IsLooping() ) );
-}
-
-/**
- * Set the end action of the animation.
- *
- * This action is performed when the animation ends.
- * Default end action is bake
- * @method setEndAction
- * @for Animation
- * @param {integer} bake mode
- * @example
- *       anim.setEndAction( dali.ANIMATION_BAKE ); // When the animation ends, the animated property values are saved.
- *       anim.setEndAction( dali.ANIMATION_DISCARD ); //  When the animation ends, the animated property values are forgotten.
- *       anim.setEndAction( dali.ANIMATION_BAKE_FINAL ); // If the animation is stopped, the animated property values are saved as if the animation had run to completion, otherwise behaves like Bake.
- */
-void AnimationApi::SetEndAction( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  bool found( false );
-  int value = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-  }
-  else
-  {
-    anim.SetEndAction( static_cast<Animation::EndAction>( value ) );
-  }
-}
-
-/**
- * Returns the end action of the animation.
-
- * @method getEndAction
- * @for Animation
- * @return {integer} bake mode
- *
- * There are 3 different bake modes
- * @example
- *     dali.ANIMATION_BAKE  // When the animation ends, the animated property values are saved.
- *     dali.ANIMATION_DISCARD // When the animation ends, the animated property values are forgotten.
- *     dali.ANIMATION_BAKE_FINAL  // If the animation is stopped, the animated property values are saved as if the animation had run to completion, otherwise behaves like Bake.
- */
-void AnimationApi::GetEndAction( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, anim.GetEndAction() ) );
-}
-
-/**
- * Set the disconnect action of the animation.
- * If any of the animated property owners are disconnected from the stage, this action is performed.
- * Default disconnection action is BakeFinal.
- * @method setDisconnectAction
- * @for Animation
- * @param {integer} end mode
- *
- * There are 3 different end modes
- * @example
- *     dali.ANIMATION_BAKE  // When the animation is destroyed, the animated property values are saved.
- *     dali.ANIMATION_DISCARD // When the animation is destroyed, the animated property values are forgotten.
- *     dali.ANIMATION_BAKE_FINAL  // When the animation is destroyed, the animated property values are saved as if the animation had run to completion, otherwise behaves like Bake.
- */
-void AnimationApi::SetDisconnectAction( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  bool found( false );
-  int value = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-  }
-  else
-  {
-    anim.SetDisconnectAction( static_cast<Animation::EndAction>( value ) );
-  }
-}
-
-/**
- * Returns the disconnect action of the animation.
- * @method getDisconnectAction
- * @for Animation
- * @return {integer} end mode
- */
-void AnimationApi::GetDisconnectAction( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, anim.GetDisconnectAction() ) );
-}
-/**
- * Set the default alpha function for an animation.
- * @method setDefaultAlphaFunction
- * @for Animation
- * @param {Integer} alpha function
- */
-void AnimationApi::SetDefaultAlphaFunction( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  bool found( false );
-  int alphaFunc = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-  }
-  else
-  {
-    AlphaFunction func = static_cast<AlphaFunction::BuiltinFunction>(alphaFunc);
-    anim.SetDefaultAlphaFunction( func );
-  }
-}
-/**
- * Get the default alpha function for an animation.
- * @method getDefaultAlphaFunction
- * @for Animation
- * @return {Integer} alpha function
- */
-void AnimationApi::GetDefaultAlphaFunction( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  AlphaFunction alphaFunc = anim.GetDefaultAlphaFunction();
-
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, alphaFunc.GetBuiltinFunction() ) );
-}
-
-/**
- * Get the current progress of the animation.
- * @method getCurrentProgress
- * @for Animation
- * @return {float} The current progress as a normalized value between [0..1].
- *
- */
-void AnimationApi::GetCurrentProgress( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  args.GetReturnValue().Set( v8::Number::New( isolate, anim.GetCurrentProgress() ) );
-}
-
-/**
- * Specifies an speed factor for the animation.
- *
- * The speed factor is a multiplier of the normal velocity of the animation. Values between [0,1] will
- * slow down the animation and values above one will speed up the animation. It is also possible to specify a negative multiplier
- * to play the animation in reverse.
- *
- * @method setSpeedFactor
- * @for Animation
- * @param {float}  value which will multiply the velocity.
- * @example
- *     anim.setSpeedFactor(2);
- *     anim.play();             // plays the animation twice as fast
- *
- *
- *     anim.setSpeedFactor(0.5);
- *     anim.play();             // plays the animation half speed
- *
- */
-void AnimationApi::SetSpeedFactor( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  bool found( false );
-  float speedFactor = V8Utils::GetFloatParameter( PARAMETER_0, found, isolate, args, 0.f );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "float parameter missing" );
-  }
-  else
-  {
-    anim.SetSpeedFactor( speedFactor );
-  }
-
-}
-
-/**
- * Retrieve the speed factor of the animation
- *
- *
- * @method getSpeedFactor
- * @for Animation
- * @return {float} speed factor
- */
-void AnimationApi::GetSpeedFactor( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  args.GetReturnValue().Set( v8::Number::New( isolate, anim.GetSpeedFactor() ) );
-}
-
-/**
- * Set the playing range.
- * Animation will play between the values specified.
- * Both values ( range.x and range.y ) should be between 0-1,
- * otherwise they will be ignored.
- * If the range provided is not in proper order ( minimum,maximum), it will be reordered.
- * @method setPlayRange
- * @for Animation
- * @param {Object} Range
- * @param {Float} Range.start
- * @param {Float} Range.end
- * @example
- *     var range = {  start:0.1, end:0.6 };
- *     anim.setPlayRange( range );
- */
-void AnimationApi::SetPlayRange( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-  Vector2 range(0,0);
-
-  if( args.Length() != 1 )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing / invalid parameters" );
-    return;
-  }
-  v8::Local<v8::Value > rangeValue = args[0];
-  if( !rangeValue->IsObject() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid parameters" );
-    return;
-  }
-  v8::Local<v8::Object> obj = rangeValue->ToObject();
-  v8::Local<v8::Value> startValue = obj->Get( v8::String::NewFromUtf8( isolate, "start" ) );
-  v8::Local<v8::Value> endValue = obj->Get( v8::String::NewFromUtf8( isolate, "end" ) );
-
-  if( startValue->IsNumber() &&  endValue->IsNumber())
-  {
-        range.x= startValue->ToNumber()->Value();
-        range.y = endValue->ToNumber()->Value();
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing start/end value" );
-    return;
-  }
-
-  anim.SetPlayRange( range );
-
-}
-
-/**
- * Get the playing range.
- * @method getPlayRange
- * @for Animation
- * @return {Object} Range with { start: ,  end: } properties.
- */
-void AnimationApi::GetPlayRange( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::EscapableHandleScope handleScope( isolate );
-  Animation anim = GetAnimation( isolate, args );
-
-
-  v8::Local<v8::Object> rangeObject = v8::Object::New( isolate );
-
-  Vector2 range = anim.GetPlayRange();
-
- // set device id
-  rangeObject->Set( v8::String::NewFromUtf8( isolate, "start"), v8::Number::New( isolate,range.x ));
-
-   // set state
-  rangeObject->Set( v8::String::NewFromUtf8( isolate, "end"), v8::Number::New( isolate,range.y ));
-
-  args.GetReturnValue().Set( rangeObject );
-}
-
-
-/**
- * Sets the progress of the animation.
- * The animation will play (or continue playing) from this point. The progress
- * must be in the 0-1 interval or in the play range interval if defined ( See SetPlayRange ),
- * otherwise, it will be ignored.
- *
- * @method setCurrentProgress
- * @for Animation
- * @param {float}  progress The new progress as a normalized value between [0,1] or between the
- * play range if specified.
- */
-void AnimationApi::SetCurrentProgress( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  bool found( false );
-
-  float progress = V8Utils::GetFloatParameter( PARAMETER_0, found, isolate, args, 0.f );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "float parameter missing" );
-    return;
-  }
-  anim.SetCurrentProgress( progress );
-
-}
-
-/**
- *
- *  Play the animation from a given point.
- * The progress must be in the 0-1 interval or in the play range interval if defined ( See SetPlayRange ),
- * otherwise, it will be ignored.
- * @method playFrom
- * @for Animation
- * @param {float} progress A value between [0,1], or between the play range if specified, form where the animation should start playing
- */
-void AnimationApi::PlayFrom( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-
-  bool found( false );
-
-  float progress = V8Utils::GetFloatParameter( PARAMETER_0, found, isolate, args, 0.f );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "float parameter missing" );
-    return;
-  }
-  anim.PlayFrom( progress );
-
-}
-
-/**
- * Play the animation
- * @method play
- * @for Animation
- */
-void AnimationApi::Play( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-  anim.Play();
-}
-/**
- * Pause the animation
- * @method pause
- * @for Animation
- */
-void AnimationApi::Pause( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-  anim.Pause();
-}
-/**
- * Stop the animation
- * @method stop
- * @for Animation
- */
-void AnimationApi::Stop( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-  anim.Stop();
-}
-/**
- * Clear the animation
- * This disconnects any objects that were being animated, effectively stopping the animation.
- * @method clear
- * @for Animation
- */
-void AnimationApi::Clear( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-  anim.Clear();
-}
-
-
-void AnimationApi::Animate( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-  AnimationParameters animParams( anim );
-  bool found(false);
-
-  //Get actor
-  Dali::Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Missing actor parameter");
-    return;
-  }
-
-  //Get path
-  Dali::Path path;
-  BaseWrappedObject* wrapper = V8Utils::GetWrappedDaliObjectParameter( PARAMETER_1, BaseWrappedObject::PATH, isolate, args);
-  PathWrapper* pathWrapper = static_cast< PathWrapper*>( wrapper );
-  if( !pathWrapper )
-  {
-    return;
-  }
-  path = pathWrapper->GetPath();
-
-  //Get forward vector
-  bool bFound(false);
-  Vector3 forward = V8Utils::GetVector3Parameter( PARAMETER_2, bFound, isolate, args );
-  if( !bFound )
-  {
-    return;
-  }
-
-  //Get animation options
-  GetAnimationOptions( isolate, args[3], animParams );
-  if( animParams.optionsFound )
-  {
-    anim.Animate( actor, path, forward, animParams.alphaFunction, TimePeriod( animParams.delay, animParams.duration) );
-  }
-  else
-  {
-    anim.Animate( actor, path, forward );
-  }
-}
-
-/**
- *
- * Animate a property value by a relative amount.
- *
- * The effect will start & end when the animation begins & ends.
- * @method animateBy
- * @for Animation
- * @param {Object} target object that contains a property to be animated (e.g. myActor )
- * @param {String} property name (e.g. "position" )
- * @param {Object} relativeValue The property value will change by this amount.
- * @param {Object} [options] Animation options.
- * @param {Float} [options.delay] amount to delay the start of the animation in seconds
- * @param {Float} [options.duration] duration of the animation
- * @param {String} [options.alpha] Animation alpha function (e.g. "linear")
- *
- * @example
- *
- *     // animation x position
- *     var anim = new dali.Animation( 1 );
- *     anim.animateBy( actor,"positionX", 30 );
- *     anim.play();
- *
- *     // animate x,y,z position with the optional animation options
- *     var options = {
- *        delay: 3,     // 3 second delay before starting
- *        duration: 5,  // 5 second duration
- *        alpha:"easeInOutSine"   // Speeds up and slows to a gradual stop
- *     }
- *
- *     anim.animateBy( actor,"position", [100,200,0], options );
- *
- */
-void AnimationApi::AnimateBy( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-  AnimationParameters animParams( anim );
-
-  // grab all the parameters
-  bool ok = GetAnimationParameters( isolate, args, animParams, AnimationApi::PROPERTY_VALUE);
-  if( !ok )
-  {
-    // GetAnimationParameters will log
-    return;
-  }
-
-  if( animParams.optionsFound )
-  {
-    anim.AnimateBy( Property( animParams.target, animParams.propertyIndex ),
-                              animParams.value,
-                              animParams.alphaFunction,
-                              TimePeriod( animParams.delay, animParams.duration) );
-  }
-  else
-  {
-    anim.AnimateBy( Property( animParams.target, animParams.propertyIndex ), animParams.value );
-  }
-
-}
-
-/**
- *
- * Animate a property to a destination value.
- *
- * The effect will start & end when the animation begins & ends.
- * @method animateTo
- * @for Animation
- * @param {Object} target object that contains a property to be animated (e.g. myActor )
- * @param {String} property name (e.g. "position" )
- * @param {Object} destinationValue The property value will changed to this value
- * @param {Object} [options] Animation options.
- * @param {Float} [options.delay] amount to delay the start of the animation in seconds
- * @param {Float} [options.duration] duration of the animation
- * @param {String} [options.alpha] Animation alpha function (e.g. "linear")
- *
- * @example
- *
- *     var anim = new dali.Animation( 1 );
- *     anim.animateTo( actor,"positionX", 30 );
- *     anim.play();
- *
- *
- *     // with the optional animation options object
- *     var options = {
- *        delay: 3,     // 3 second delay before starting
- *        duration: 5,  // 5 second duration
- *        alpha:"easeInOutSine"   // Speeds up and slows to a gradual stop
- *     }
- *
- *     anim.animateTo( actor,"position", [100,200,0], options );
- *
- */
-void AnimationApi::AnimateTo( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-  AnimationParameters animParams( anim );
-
-  // grab all the parameters
-  bool ok = GetAnimationParameters( isolate, args, animParams, AnimationApi::PROPERTY_VALUE );
-  if( !ok )
-  {
-    // GetAnimationParameters will log
-    return;
-  }
-
-  if( animParams.optionsFound )
-  {
-
-    anim.AnimateTo( Property( animParams.target,animParams.propertyIndex ),
-                                  animParams.value,
-                                  animParams.alphaFunction,
-                                  TimePeriod( animParams.delay, animParams.duration) );
-  }
-  else
-  {
-    anim.AnimateTo( Property( animParams.target, animParams.propertyIndex ), animParams.value );
-  }
-}
-
-/**
- *
- * Animate a property between keyframes.
- *
- * The effect will start & end when the animation begins & ends.
- * @method animateBetween
- * @for Animation
- * @param {Object} target object that contains a property to be animated (e.g. myActor )
- * @param {String} property name (e.g. "position" )
- * @param {Object} keyframes array of keyframe objects
- * @param {Object} [options] Animation options.
- * @param {Float} [options.delay] amount to delay the start of the animation in seconds
- * @param {Float} [options.duration] duration of the animation
- * @param {String} [options.alpha] Animation alpha function (e.g. "linear")
- *
- *
- * @example
- *
- *  create some keyframes to move an actor around a square, and return to the start
- * </br >
- *  <img src="../assets/img/animation/keyframe-animation.png">
- *
- *
- *     var keyframes = [
- *     {
- *       progress:0.0,
- *       value: [0,0,0]
- *     },
- *     {
- *       progress:0.25,
- *       value: [500,0,0]
- *     },
- *
- *     {
- *       progress:0.5,
- *       value: [500,500,0]
- *     },
- *     {
- *       progress:0.75,
- *       value: [0,500,0]
- *     },
- *     {
- *       progress:1.0,
- *       value: [0,0,0]
- *     } ];
- *
- *
- *     anim.animateBetween( actor,"position", keyframes );
- *
- */
-void AnimationApi::AnimateBetween( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Animation anim = GetAnimation( isolate, args );
-  AnimationParameters animParams( anim );
-
-  // grab all the parameters
-  bool ok = GetAnimationParameters( isolate, args, animParams, AnimationApi::KEYFRAMES );
-  if( !ok )
-  {
-    // GetAnimationParameters will log
-    return;
-  }
-
-  // if animation options exist...
-  if( animParams.optionsFound )
-  {
-
-    anim.AnimateBetween( Property( animParams.target,animParams.propertyIndex ),
-                                  animParams.keyFrames,
-                                  animParams.alphaFunction,
-                                  TimePeriod( animParams.delay, animParams.duration) );
-  }
-  else
-  {
-    anim.AnimateBetween( Property( animParams.target, animParams.propertyIndex ), animParams.keyFrames );
-  }
-}
-
-/**
- * show an actor during the animation.
- *
- * This is a helper, which simulates animating the visibility property of an actor
- * with zero duration ( it is just a boolean).
- * e.g. it performs  anim.AnimateTo( actor,"visible",true, { delay:delay: duration:0 } );
- * @method show
- * @for Animation
- * @param {Object} Actor
- * @param {float} delay until the actor is shown
- */
-void AnimationApi::Show( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Animation anim = GetAnimation( isolate, args );
-  bool found( false );
-
-  Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( !found)
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter 0 actor" );
-    return;
-  }
-  // get the duration
-  float delay = V8Utils::GetFloatParameter( PARAMETER_1, found, isolate, args, 1.f /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter 1 delay" );
-    return;
-  }
-  anim.Show( actor, delay );
-
-}
-
-/**
- * hide an actor during the animation.
- *
- * This is a helper, which simulates animating the visibility property of an actor
- * with zero duration ( it is just a boolean).
- * e.g. it performs  anim.AnimateTo( actor,"visible",false, { delay:delay: duration:0 } );
- * @method hide
- * @for Animation
- * @param {Object} Actor
- * @param {float} delay until the actor is hidden
- */
-void AnimationApi::Hide( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Animation anim = GetAnimation( isolate, args );
-  bool found( false );
-  Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter 0 actor" );
-    return;
-  }
-
-  // get the duration
-  float delay = V8Utils::GetFloatParameter( PARAMETER_1, found, isolate, args, 1.f /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter 1 delay" );
-    return;
-  }
-  anim.Hide( actor, delay );
-}
-
-
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/animation/animation-api.h b/plugins/dali-script-v8/src/animation/animation-api.h
deleted file mode 100644 (file)
index b903818..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-#ifndef DALI_V8PLUGIN_ANIMATION_API_H
-#define DALI_V8PLUGIN_ANIMATION_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/animation/animation.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace AnimationApi
-{
-  /**
-   * Constructor
-   */
-  Animation New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-
-  /**
-   * Animation API see animation.h for a description
-   */
-  void SetDuration( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetDuration( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetLooping( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void IsLooping( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetEndAction( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetEndAction( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetDisconnectAction( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetDisconnectAction( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetDefaultAlphaFunction( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetDefaultAlphaFunction( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetCurrentProgress( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetSpeedFactor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetSpeedFactor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetPlayRange( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetPlayRange( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetCurrentProgress( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void PlayFrom( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Play( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Pause( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Stop( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Clear( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Animate( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void AnimateBy( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void AnimateTo( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void AnimateBetween( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Show( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Hide( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  enum AnimationParameterType
-  {
-    PROPERTY_VALUE,
-    KEYFRAMES
-  };
-
-}; // namespace AnimationApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_ANIMATION_API_H
diff --git a/plugins/dali-script-v8/src/animation/animation-wrapper.cpp b/plugins/dali-script-v8/src/animation/animation-wrapper.cpp
deleted file mode 100644 (file)
index d962522..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "animation-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-#include <animation/animation-api.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-
-namespace Dali
-{
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> AnimationWrapper::mAnimationTemplate;
-
-namespace
-{
-
-/**
- * Contains a list of all functions that can be called
- */
-const ApiFunction AnimationFunctionTable[]=
-{
-    /**************************************
-    * Animation API (in order of animation.h)
-    **************************************/
-
-    { "SetDuration"             , AnimationApi::SetDuration               },
-    { "GetDuration"             , AnimationApi::GetDuration               },
-    { "SetLooping"              , AnimationApi::SetLooping                },
-    { "IsLooping"               , AnimationApi::IsLooping                 },
-    { "SetEndAction"            , AnimationApi::SetEndAction              },
-    { "GetEndAction"            , AnimationApi::GetEndAction              },
-    { "SetDisconnectAction"     , AnimationApi::SetDisconnectAction       },
-    { "GetDisconnectAction"     , AnimationApi::GetDisconnectAction       },
-    { "SetDefaultAlphaFunction" , AnimationApi::SetDefaultAlphaFunction   },
-    { "GetDefaultAlphaFunction" , AnimationApi::GetDefaultAlphaFunction   },
-    { "GetCurrentProgress"      , AnimationApi::GetCurrentProgress        },
-    { "SetSpeedFactor"          , AnimationApi::SetSpeedFactor            },
-    { "GetSpeedFactor"          , AnimationApi::GetSpeedFactor            },
-    { "SetPlayRange"            , AnimationApi::SetPlayRange              },
-    { "GetPlayRange"            , AnimationApi::GetPlayRange              },
-    { "SetCurrentProgress"      , AnimationApi::SetCurrentProgress        },
-    { "Play"                    , AnimationApi::Play                      },
-    { "PlayFrom"                , AnimationApi::PlayFrom                  },
-    { "Pause"                   , AnimationApi::Pause                     },
-    { "Stop"                    , AnimationApi::Stop                      },
-    { "Clear"                   , AnimationApi::Clear                     },
-    { "Animate"                 , AnimationApi::Animate                   },
-    { "AnimateBy"               , AnimationApi::AnimateBy                 },
-    { "AnimateTo"               , AnimationApi::AnimateTo                 },
-    { "AnimateBetween"          , AnimationApi::AnimateBetween            },
-    { "Show"                    , AnimationApi::Show                      },
-    { "Hide"                    , AnimationApi::Hide                      },
-
-};
-
-const unsigned int AnimationFunctionTableCount = sizeof(AnimationFunctionTable)/sizeof(AnimationFunctionTable[0]);
-} //un-named space
-
-
-AnimationWrapper::AnimationWrapper( const Dali::Animation& animation, GarbageCollectorInterface& gc )
-: BaseWrappedObject( BaseWrappedObject::ANIMATION , gc )
-{
-    mAnimation = animation;
-}
-
-AnimationWrapper::~AnimationWrapper()
-{
-
-}
-
-v8::Handle<v8::Object> AnimationWrapper::WrapAnimation(v8::Isolate* isolate, const Dali::Animation& animation )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetAnimationTemplate( isolate);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the Animation wrapper
-  AnimationWrapper* pointer =  new AnimationWrapper( animation, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> AnimationWrapper::GetAnimationTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( mAnimationTemplate.IsEmpty() )
-  {
-    objectTemplate = MakeAnimationTemplate( isolate );
-    mAnimationTemplate.Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, mAnimationTemplate );
-  }
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> AnimationWrapper::MakeAnimationTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  // add intercepts for Signals, we can't use HandleWrapper::AddIntercepts because Animation doesn't inherit
-  // from Handle ( just baseHandle)
-  ObjectTemplateHelper::AddSignalConnectAndDisconnect( isolate, objTemplate );
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, AnimationFunctionTable, AnimationFunctionTableCount );
-
-  return handleScope.Escape( objTemplate );
-}
-
-void AnimationWrapper::NewAnimation( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate);
-
-  if( !args.IsConstructCall() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Animation constructor called without 'new'" );
-    return;
-  }
-
-  Dali::Animation animation = AnimationApi::New( args );
-  v8::Local<v8::Object> localObject = WrapAnimation( isolate, animation );
-  args.GetReturnValue().Set( localObject );
-}
-
-
-Animation AnimationWrapper::GetAnimation()
-{
-  return mAnimation;
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/animation/animation-wrapper.h b/plugins/dali-script-v8/src/animation/animation-wrapper.h
deleted file mode 100644 (file)
index 2fcc541..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-#ifndef DALI_V8PLUGIN_ANIMATION_WRAPPER_H
-#define DALI_V8PLUGIN_ANIMATION_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/animation/animation.h>
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-#include <signals/signal-manager.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * Animation  wrapper.
- * Provides access to Animation specific functionality
- */
-class AnimationWrapper : public BaseWrappedObject
-{
-
-public:
-
-  AnimationWrapper( const Animation& animation,
-                GarbageCollectorInterface& gc );
-
-  virtual ~AnimationWrapper();
-
-  /**
-   * @brief Creates a new Animation wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewAnimation( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps an animation
-   */
-  static v8::Handle<v8::Object> WrapAnimation(v8::Isolate* isolate, const Dali::Animation& );
-
-
-  // The AnimationAttribute ObjectTemplate, we cache templates so we don't have
-  // keep generating them everytime we want to create an Animation
-  static v8::Persistent<v8::ObjectTemplate> mAnimationTemplate;
-
-  Animation GetAnimation();
-  virtual SignalManager* GetSignalManager() { return &mSignalManager;}
-
-private:
-
-  Animation mAnimation;           ///< animation object
-  SignalManager mSignalManager;   ///< signal manager
-
-  static v8::Handle<v8::ObjectTemplate> MakeAnimationTemplate( v8::Isolate* isolate );
-  static v8::Local<v8::ObjectTemplate> GetAnimationTemplate( v8::Isolate* isolate );
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_ANIMATION_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/animation/constrainer-api.cpp b/plugins/dali-script-v8/src/animation/constrainer-api.cpp
deleted file mode 100644 (file)
index d15097a..0000000
+++ /dev/null
@@ -1,280 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "constrainer-api.h"
-
-//EXTERNAL INCLUDES
-#include <cfloat> //For FLT_MAX
-
-// INTERNAL INCLUDES
-#include <animation/linear-constrainer-wrapper.h>
-#include <animation/path-constrainer-wrapper.h>
-#include <object/property-value-wrapper.h>
-#include <v8-utils.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace // un named namespace
-{
-
-PathConstrainer GetPathConstrainer( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField( 0 ) );
-  void* ptr = field->Value();
-
-  PathConstrainerWrapper* wrapper = static_cast<PathConstrainerWrapper *>( ptr );
-  return wrapper->GetPathConstrainer();
-}
-
-LinearConstrainer GetLinearConstrainer( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField( 0 ) );
-  void* ptr = field->Value();
-
-  LinearConstrainerWrapper* wrapper = static_cast<LinearConstrainerWrapper *>( ptr );
-  return wrapper->GetLinearConstrainer();
-}
-
-bool GetApplyParameters( const v8::FunctionCallbackInfo< v8::Value >& args, Actor& targetActor, Property::Index& targetPropertyIndex,
-                         Actor& sourceActor, Property::Index& sourcePropertyIndex, Vector2& range, Vector2& wrap )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  if( args[0]->IsObject() )
-  {
-    bool found(false);
-
-    v8::Local<v8::Object> obj = args[0]->ToObject();
-    v8::Local<v8::Value> member = obj->Get( v8::String::NewFromUtf8( isolate, "target" ) );
-
-    //Get target actor
-    if( member->IsObject() )
-    {
-      v8::Local<v8::Object> targetActorObject = member->ToObject();
-      targetActor = V8Utils::GetActorFromObject( isolate, found, targetActorObject );
-      if( !targetActor )
-      {
-        DALI_SCRIPT_EXCEPTION( isolate, "Target actor not found" );
-        return false;
-      }
-    }
-    else
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "Target actor not specified" );
-      return false;
-    }
-
-    //Get source actor
-    member = obj->Get( v8::String::NewFromUtf8( isolate, "source" ) );
-    if( member->IsObject() )
-    {
-      v8::Local<v8::Object> sourceActorObject = member->ToObject();
-      sourceActor = V8Utils::GetActorFromObject( isolate, found, sourceActorObject );
-      if( !sourceActor )
-      {
-        DALI_SCRIPT_EXCEPTION( isolate, "Source actor not found" );
-        return false;
-      }
-    }
-    else
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "Source actor not specified" );
-      return false;
-    }
-
-    //Get target property
-    member = obj->Get( v8::String::NewFromUtf8( isolate, "targetProperty" ) );
-    if( member->IsString() )
-    {
-      std::string propertyName = V8Utils::v8StringToStdString( member );
-      targetPropertyIndex = targetActor.GetPropertyIndex( propertyName );
-      if( targetPropertyIndex == Property::INVALID_INDEX )
-      {
-        DALI_SCRIPT_EXCEPTION( isolate, "Target property not found" );
-        return false;
-      }
-    }
-    else
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "Target property not specified" );
-      return false;
-    }
-
-    //Get source property
-    member = obj->Get( v8::String::NewFromUtf8( isolate, "sourceProperty" ) );
-    if( member->IsString() )
-    {
-      std::string propertyName = V8Utils::v8StringToStdString( member );
-      sourcePropertyIndex = targetActor.GetPropertyIndex( propertyName );
-      if( sourcePropertyIndex == Property::INVALID_INDEX )
-      {
-        DALI_SCRIPT_EXCEPTION( isolate, "Source property not found" );
-        return false;
-        }
-    }
-    else
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "Source property not specified" );
-      return false;
-    }
-
-    //Get range
-    member = obj->Get( v8::String::NewFromUtf8( isolate, "range" ) );
-    if( member->IsObject() )
-    {
-      v8::Local<v8::Object> rangeObject = member->ToObject();
-      Property::Value value = V8Utils::GetPropertyValueFromObject( found, isolate, rangeObject );
-      value.Get( range );
-    }
-    else
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "Range not specified" );
-      return false;
-    }
-
-    //Get wrap range
-    member = obj->Get( v8::String::NewFromUtf8( isolate, "wrap" ) );
-    if( member->IsObject() )
-    {
-      v8::Local<v8::Object> wrapObject = member->ToObject();
-      Property::Value value = V8Utils::GetPropertyValueFromObject( found, isolate, wrapObject );
-      value.Get( wrap );
-    }
-    else
-    {
-      wrap =  Vector2(-FLT_MAX, FLT_MAX);
-    }
-
-    return true;
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Bad parameter (Object)" );
-    return false;
-  }
-}
-
-} // un-named namespace
-
-/**
- * Apply the constraint
- * @method applyConstraint
- * @for PathConstrainer and LinearConstrainer
- * @param {Object}  Constraint
- * @param {Object}  Constraint.targetActor
- * @param {String}  Constraint.targetProperty
- * @param {String}  Constraint.sourceProperty
- * @param {Vector2} Constraint.range
- * @param {Vector2} Constraint.wrap
- *
- * @example
- *
- *        var constraintPosition = {  "target":targetActor,
- *                                    "targetProperty":"position",
- *                                    "source":sourceActor,
- *                                    "sourceProperty":"colorAlpha",
- *                                    "range":range
- *                                    "wrap":wrap
- *                                 };
- *        pathConstrainer.applyConstraint( constraintPosition );
- */
-void ConstrainerApi::Apply( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Actor target, source;
-  Property::Index targetPropertyIndex = Property::INVALID_INDEX;
-  Property::Index sourcePropertyIndex = Property::INVALID_INDEX;
-
-  Vector2 range, wrap;
-  if( GetApplyParameters(args, target, targetPropertyIndex, source,  sourcePropertyIndex, range, wrap ) )
-  {
-
-    PathConstrainer pathConstrainer = GetPathConstrainer( isolate, args );
-    if( pathConstrainer )
-    {
-      pathConstrainer.Apply( Property(target, targetPropertyIndex),
-                             Property(source, sourcePropertyIndex),
-                             range, wrap );
-    }
-    else
-    {
-      LinearConstrainer linearConstrainer = GetLinearConstrainer( isolate, args );
-      if( linearConstrainer )
-      {
-        linearConstrainer.Apply( Property(target, targetPropertyIndex),
-                                 Property(source, sourcePropertyIndex),
-                                 range, wrap );
-      }
-    }
-  }
-}
-
-/**
- * Remove the constraint
- * @method remove
- * @for PathConstrainer
- * @param {Object} Actor
- * @example
- *        pathConstrainer.remove( targetActor );
- */
-void ConstrainerApi::Remove( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  //Get target actor
-  bool found( false );
-  Actor targetActor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter 0 (Actor)" );
-    return;
-  }
-
-
-  PathConstrainer pathConstrainer = GetPathConstrainer( isolate, args );
-  if( pathConstrainer )
-  {
-    pathConstrainer.Remove(targetActor);
-  }
-  else
-  {
-    LinearConstrainer linearConstrainer = GetLinearConstrainer( isolate, args );
-    if( linearConstrainer )
-    {
-      linearConstrainer.Remove(targetActor);
-    }
-  }
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/animation/constrainer-api.h b/plugins/dali-script-v8/src/animation/constrainer-api.h
deleted file mode 100644 (file)
index bbd5729..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-#ifndef DALI_V8PLUGIN_CONSTRAINER_API_H
-#define DALI_V8PLUGIN_CONSTRAINER_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace ConstrainerApi
-{
-  /**
-   * Constrainer API see constrainer.h for a description
-   */
-  void Apply( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Remove( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace ConstrainerApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_PATH_CONSTRAINER_API_H
diff --git a/plugins/dali-script-v8/src/animation/linear-constrainer-wrapper.cpp b/plugins/dali-script-v8/src/animation/linear-constrainer-wrapper.cpp
deleted file mode 100644 (file)
index 02d009c..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "linear-constrainer-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <animation/constrainer-api.h>
-#include <dali-wrapper.h>
-#include <shared/object-template-helper.h>
-#include <v8-utils.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace
-{
-
-const ApiFunction ConstrainerFunctions[]=
-{
- { "ApplyConstraint",  ConstrainerApi::Apply },
- { "RemoveConstraint", ConstrainerApi::Remove }
-};
-const unsigned int ConstrainerFunctionTableCount = sizeof(ConstrainerFunctions)/sizeof(ConstrainerFunctions[0]);
-
-} //un-named space
-
-LinearConstrainerWrapper::LinearConstrainerWrapper( LinearConstrainer linearConstrainer, GarbageCollectorInterface& gc )
-:HandleWrapper( BaseWrappedObject::LINEAR_CONSTRAINER, linearConstrainer, gc ),
- mLinearConstrainer( linearConstrainer )
-{
-}
-
-v8::Handle<v8::ObjectTemplate> LinearConstrainerWrapper::MakeLinearConstrainerTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, ConstrainerFunctions, ConstrainerFunctionTableCount );
-
-  // property handle intercepts property getters and setters and signals
-  HandleWrapper::AddInterceptsToTemplate( isolate, objTemplate );
-
-  return handleScope.Escape( objTemplate );
-}
-
-v8::Handle<v8::Object> LinearConstrainerWrapper::WrapLinearConstrainer( v8::Isolate* isolate, LinearConstrainer linearConstrainer )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = MakeLinearConstrainerTemplate( isolate );
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the pathconstrainer object
-  LinearConstrainerWrapper* pointer = new LinearConstrainerWrapper( linearConstrainer, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  // This also stores Dali object, in an internal field inside the JavaScript object.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-LinearConstrainer LinearConstrainerWrapper::GetLinearConstrainer()
-{
-  return mLinearConstrainer;
-}
-
-/**
- * Create an initialized PathConstrainer handle.
- * @constructor
- * @for PathConstrainer
- * @method PathConstrainer
- */
-void LinearConstrainerWrapper::NewLinearConstrainer( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  if( !args.IsConstructCall() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "constructor called without 'new" );
-    return;
-  }
-
-  LinearConstrainer linearConstrainer = LinearConstrainer::New();
-  v8::Local<v8::Object> localObject = WrapLinearConstrainer( isolate, linearConstrainer );
-  args.GetReturnValue().Set( localObject );
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/animation/linear-constrainer-wrapper.h b/plugins/dali-script-v8/src/animation/linear-constrainer-wrapper.h
deleted file mode 100644 (file)
index 426a65c..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-#ifndef DALI_V8PLUGIN_LINEAR_CONSTRAINER_WRAPPER_H
-#define DALI_V8PLUGIN_LINEAR_CONSTRAINER_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/animation/linear-constrainer.h>
-#include <v8.h>
-
-// INTERNAL INCLUDES
-#include <object/handle-wrapper.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * Wraps a LinearConstrainer.
- */
-class LinearConstrainerWrapper : public HandleWrapper
-{
-
-public:
-
-  /**
-   * Constructor
-   */
-  LinearConstrainerWrapper( LinearConstrainer linearConstrainer, GarbageCollectorInterface& gc );
-
-  /**
-   * Virtual destructor
-   */
-  virtual ~LinearConstrainerWrapper(){};
-
-  /**
-   * Creates a new PathConstrainer wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewLinearConstrainer( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps a PathConstrainer inside a Javascript object
-   */
-  static v8::Handle<v8::Object> WrapLinearConstrainer(v8::Isolate* isolate, LinearConstrainer pathConstrainer );
-
-  /*
-   * Get the wrapped PathConstrainer
-   */
-  LinearConstrainer GetLinearConstrainer();
-
-private:
-
-  /**
-   * Create a v8 object template for the PathConstrainer
-   */
-  static v8::Handle<v8::ObjectTemplate> MakeLinearConstrainerTemplate( v8::Isolate* isolate );
-
-  Dali::LinearConstrainer mLinearConstrainer;
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_LINEAR_CONSTRAINER_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/animation/path-api.cpp b/plugins/dali-script-v8/src/animation/path-api.cpp
deleted file mode 100644 (file)
index 95dba63..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "path-api.h"
-
-// INTERNAL INCLUDES
-#include <animation/path-wrapper.h>
-#include <object/property-value-wrapper.h>
-#include <v8-utils.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace // un named namespace
-{
-
-Path GetPath( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField( 0 ) );
-  void* ptr = field->Value();
-
-  PathWrapper* wrapper = static_cast<PathWrapper *>( ptr );
-  return wrapper->GetPath();
-}
-
-} // un-named namespace
-
-
-/**
- * Automatic generation of control points. Generated control points which result in a smooth join between the splines of each segment.
- *
- * The generating algorithm is as follows:
- * For a given knot point K[N], find the vector that bisects K[N-1],[N] and [N],[N+1].
- * Calculate the tangent vector by taking the normal of this bisector.
- * The in control point is the length of the preceding segment back along this bisector multiplied by the curvature
- * The out control point is the length of the succeeding segment forward along this bisector multiplied by the curvature
- *
- * @method generateControlPoints
- * @for Path
- * @param {float} curvature curvature The curvature of the spline. 0 gives straight lines between the knots,
- * negative values means the spline contains loops, positive values up to
- * 0.5 result in a smooth curve, positive values between 0.5 and 1 result
- * in looped curves where the loops are not distinct (i.e. the curve appears
- * to be non-continuous), positive values higher than 1 result in looped curves.
- */
-void PathApi::GenerateControlPoints( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  bool found( false );
-  float curvature = V8Utils::GetFloatParameter( PARAMETER_0, found, isolate, args, 1.0f /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-    return;
-  }
-
-  Path path = GetPath( isolate, args );
-  path.GenerateControlPoints( curvature );
-}
-
-
-/**
- * Add a interpolation point.
- * @method addPoint
- * @for Path
- * @param {Vector3} interpolationPoint The new interpolation point to be added
- * @example
- *        path.addPoint([ 10,40,0] );
- */
-void PathApi::AddPoint( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  bool found( false );
-  Vector3 value = V8Utils::GetVector3Parameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-    return;
-  }
-
-  Path path = GetPath( isolate, args );
-  path.AddPoint( value );
-}
-
-
-/**
- * Add a control point.
- * @method addControlPoint
- * @for Path
- * @param {Vector3} controlPoint The new control point to be added
- * @example
- *        path.addControlPoint([ 10,40,0] );
- */
-void PathApi::AddControlPoint( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  bool found( false );
-  Vector3 value = V8Utils::GetVector3Parameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-    return;
-  }
-
-  Path path = GetPath( isolate, args );
-  path.AddControlPoint( value );
-}
-
-/**
- * Sample path at a given progress. Calculates position and tangent at that point of the curve
- * @method sample
- * @for Path
- * @param {float} Progress  A floating point value between 0.0 and 1.0.
- * @return {Object} { position: Vector3, tangent:Vector3 }
- */
-void PathApi::Sample( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  bool found( false );
-  float progress = V8Utils::GetFloatParameter( PARAMETER_0, found, isolate, args, 0.0f /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-    return;
-  }
-
-  //Sample the path
-  Path path = GetPath( isolate, args );
-  Vector3 position, tangent;
-  path.Sample( progress, position, tangent );
-
-  //Create v8 object with the result
-  v8::Local<v8::Object> sampleObject = v8::Object::New( isolate );
-
-  Dali::Property::Value valuePosition( position );
-  sampleObject->Set( v8::String::NewFromUtf8( isolate, "position"), PropertyValueWrapper::WrapDaliProperty( isolate, valuePosition));
-
-  Dali::Property::Value valueTangent( tangent );
-  sampleObject->Set( v8::String::NewFromUtf8( isolate, "tangent"), PropertyValueWrapper::WrapDaliProperty( isolate, valueTangent));
-
-  args.GetReturnValue().Set( sampleObject );
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/animation/path-api.h b/plugins/dali-script-v8/src/animation/path-api.h
deleted file mode 100644 (file)
index a144110..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-#ifndef DALI_V8PLUGIN_PATH_API_H
-#define DALI_V8PLUGIN_PATH_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/animation/path.h>
-
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace PathApi
-{
-  /**
-   * Path API see path.h for a description
-   */
-  void GenerateControlPoints( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void AddPoint( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void AddControlPoint( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Sample( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace PathApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_PATH_API_H
diff --git a/plugins/dali-script-v8/src/animation/path-constrainer-wrapper.cpp b/plugins/dali-script-v8/src/animation/path-constrainer-wrapper.cpp
deleted file mode 100644 (file)
index 4060533..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "path-constrainer-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <animation/constrainer-api.h>
-#include <dali-wrapper.h>
-#include <shared/object-template-helper.h>
-#include <v8-utils.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace
-{
-
-const ApiFunction ConstrainerFunctions[]=
-{
- { "ApplyConstraint",  ConstrainerApi::Apply },
- { "RemoveConstraint", ConstrainerApi::Remove }
-};
-const unsigned int ConstrainerFunctionTableCount = sizeof(ConstrainerFunctions)/sizeof(ConstrainerFunctions[0]);
-
-} //un-named space
-
-PathConstrainerWrapper::PathConstrainerWrapper( PathConstrainer pathConstrainer, GarbageCollectorInterface& gc )
-:HandleWrapper( BaseWrappedObject::PATH_CONSTRAINER, pathConstrainer, gc ),
- mPathConstrainer( pathConstrainer )
-{
-}
-
-v8::Handle<v8::ObjectTemplate> PathConstrainerWrapper::MakePathConstrainerTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, ConstrainerFunctions, ConstrainerFunctionTableCount );
-
-  // property handle intercepts property getters and setters and signals
-  HandleWrapper::AddInterceptsToTemplate( isolate, objTemplate );
-
-  return handleScope.Escape( objTemplate );
-}
-
-v8::Handle<v8::Object> PathConstrainerWrapper::WrapPathConstrainer( v8::Isolate* isolate, PathConstrainer pathConstrainer )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = MakePathConstrainerTemplate( isolate );
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the pathconstrainer object
-  PathConstrainerWrapper* pointer = new PathConstrainerWrapper( pathConstrainer, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  // This also stores Dali object, in an internal field inside the JavaScript object.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-PathConstrainer PathConstrainerWrapper::GetPathConstrainer()
-{
-  return mPathConstrainer;
-}
-
-/**
- * Create an initialized PathConstrainer handle.
- * @constructor
- * @for PathConstrainer
- * @method PathConstrainer
- */
-void PathConstrainerWrapper::NewPathConstrainer( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  if( !args.IsConstructCall() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "constructor called without 'new" );
-    return;
-  }
-
-  PathConstrainer pathConstrainer = PathConstrainer::New();
-  v8::Local<v8::Object> localObject = WrapPathConstrainer( isolate, pathConstrainer );
-  args.GetReturnValue().Set( localObject );
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/animation/path-constrainer-wrapper.h b/plugins/dali-script-v8/src/animation/path-constrainer-wrapper.h
deleted file mode 100644 (file)
index c7fab39..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-#ifndef DALI_V8PLUGIN_PATH_CONSTRAINER_WRAPPER_H
-#define DALI_V8PLUGIN_PATH_CONSTRAINER_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <dali/devel-api/animation/path-constrainer.h>
-#include <v8.h>
-
-// INTERNAL INCLUDES
-#include <object/handle-wrapper.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * Wraps a PathConstrainer.
- */
-class PathConstrainerWrapper : public HandleWrapper
-{
-
-public:
-
-  /**
-   * Constructor
-   */
-  PathConstrainerWrapper( PathConstrainer pathConstrainer, GarbageCollectorInterface& gc );
-
-  /**
-   * Virtual destructor
-   */
-  virtual ~PathConstrainerWrapper(){};
-
-  /**
-   * Creates a new PathConstrainer wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewPathConstrainer( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps a PathConstrainer inside a Javascript object
-   */
-  static v8::Handle<v8::Object> WrapPathConstrainer(v8::Isolate* isolate, PathConstrainer pathConstrainer );
-
-  /*
-   * Get the wrapped PathConstrainer
-   */
-  PathConstrainer GetPathConstrainer();
-
-private:
-
-  /**
-   * Create a v8 object template for the PathConstrainer
-   */
-  static v8::Handle<v8::ObjectTemplate> MakePathConstrainerTemplate( v8::Isolate* isolate );
-
-  Dali::PathConstrainer mPathConstrainer;
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_PATH_CONSTRAINER_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/animation/path-wrapper.cpp b/plugins/dali-script-v8/src/animation/path-wrapper.cpp
deleted file mode 100644 (file)
index b89179f..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "path-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <animation/path-api.h>
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-#include <shared/object-template-helper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace
-{
-
-const ApiFunction PathFunctions[]=
-{
- { "GenerateControlPoints",  PathApi::GenerateControlPoints },
- { "AddPoint",               PathApi::AddPoint },
- { "AddControlPoint",        PathApi::AddControlPoint },
- { "Sample",                 PathApi::Sample }
-};
-
-const unsigned int PathFunctionTableCount = sizeof(PathFunctions)/sizeof(PathFunctions[0]);
-} //un-named space
-
-
-PathWrapper::PathWrapper( Path path, GarbageCollectorInterface& gc )
-:HandleWrapper( BaseWrappedObject::PATH, path, gc ),
- mPath( path )
-{
-}
-
-v8::Handle<v8::ObjectTemplate> PathWrapper::MakePathTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, PathFunctions, PathFunctionTableCount );
-
-  // property handle intercepts property getters and setters and signals
-  HandleWrapper::AddInterceptsToTemplate( isolate, objTemplate );
-
-  return handleScope.Escape( objTemplate );
-}
-
-v8::Handle<v8::Object> PathWrapper::WrapPath( v8::Isolate* isolate, Path path )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = MakePathTemplate( isolate );
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create teh actor object
-  PathWrapper* pointer = new PathWrapper( path, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  // This also stores Dali object, in an internal field inside the JavaScript object.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-Path PathWrapper::GetPath()
-{
-  return mPath;
-}
-
-/**
- * Create an initialized Path handle.
- * @constructor
- * @for Path
- * @method Path
- */
-void PathWrapper::NewPath( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  if( !args.IsConstructCall() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "constructor called without 'new" );
-    return;
-  }
-
-  // Create a new path
-  Path path = Path::New();
-  v8::Local<v8::Object> localObject = WrapPath( isolate, path );
-  args.GetReturnValue().Set( localObject );
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/animation/path-wrapper.h b/plugins/dali-script-v8/src/animation/path-wrapper.h
deleted file mode 100644 (file)
index 1736bda..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-#ifndef DALI_V8PLUGIN_PATH_WRAPPER_H
-#define DALI_V8PLUGIN_PATH_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/animation/path.h>
-
-// INTERNAL INCLUDES
-#include <object/handle-wrapper.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * Wraps a Path.
- */
-class PathWrapper : public HandleWrapper
-{
-
-public:
-
-  /**
-   * Constructor
-   */
-  PathWrapper( Path path, GarbageCollectorInterface& gc );
-
-  /**
-   * Virtual destructor
-   */
-  virtual ~PathWrapper(){};
-
-  /**
-   * Creates a new Path wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewPath( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps a path inside a Javascript object
-   */
-  static v8::Handle<v8::Object> WrapPath(v8::Isolate* isolate, Path path );
-
-  /*
-   * Get the wrapped path
-   */
-  Path GetPath();
-
-private:
-
-  /**
-   * Create a v8 object template for the path
-   */
-  static v8::Handle<v8::ObjectTemplate> MakePathTemplate( v8::Isolate* isolate );
-
-  Path mPath;
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_PATH_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/constants/constants-wrapper.cpp b/plugins/dali-script-v8/src/constants/constants-wrapper.cpp
deleted file mode 100644 (file)
index 355b207..0000000
+++ /dev/null
@@ -1,322 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "constants-wrapper.h"
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/common/constants.h>
-#include <dali/public-api/math/vector3.h>
-#include <dali/public-api/animation/animation.h>
-#include <dali/public-api/images/pixel.h>
-#include <dali/public-api/images/image.h>
-#include <dali/public-api/images/resource-image.h>
-#include <dali/public-api/actors/actor-enumerations.h>
-#include <dali/public-api/actors/draw-mode.h>
-#include <dali/public-api/actors/camera-actor.h>
-#include <dali/public-api/actors/sampling.h>
-#include <dali/public-api/render-tasks/render-task.h>
-#include <dali/public-api/common/loading-state.h>
-#include <dali/public-api/rendering/geometry.h>
-#include <dali/public-api/rendering/renderer.h>
-#include <dali-toolkit/public-api/controls/scrollable/item-view/default-item-layout.h>
-#include <dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace
-{
-
-struct Vector3Pair
-{
-  const char* name;
-  const Vector3& value;
-};
-
-struct Vector4Pair
-{
-  const char* name;
-  const Vector4& value;
-};
-
-struct IntegerPair
-{
-  const char* name;
-  const int value;
-};
-
-
-const Vector3Pair Vector3Table[] =
-{
-    { "TOP_LEFT"            , ParentOrigin::TOP_LEFT          },
-    { "TOP_CENTER"          , ParentOrigin::TOP_CENTER        },
-    { "TOP_RIGHT"           , ParentOrigin::TOP_RIGHT         },
-    { "CENTER_LEFT"         , ParentOrigin::CENTER_LEFT       },
-    { "CENTER"              , ParentOrigin::CENTER            },
-    { "CENTER_RIGHT"        , ParentOrigin::CENTER_RIGHT      },
-    { "BOTTOM_LEFT"         , ParentOrigin::BOTTOM_LEFT       },
-    { "BOTTOM_CENTER"       , ParentOrigin::BOTTOM_CENTER     },
-    { "BOTTOM_RIGHT"        , ParentOrigin::BOTTOM_RIGHT      },
-
-    { "VECTOR3_ONE"                  ,      Vector3::ONE                        },
-    { "VECTOR3_XAXIS"                ,      Vector3::XAXIS                      },
-    { "VECTOR3_YAXIS"                ,      Vector3::YAXIS                      },
-    { "VECTOR3_ZAXIS"                ,      Vector3::ZAXIS                      },
-    { "VECTOR3_NEGATIVE_XAXIS"       ,      Vector3::NEGATIVE_XAXIS             },
-    { "VECTOR3_NEGATIVE_YAXIS"       ,      Vector3::NEGATIVE_YAXIS             },
-    { "VECTOR3_NEGATIVE_ZAXIS"       ,      Vector3::NEGATIVE_ZAXIS             },
-    { "VECTOR3_ZERO"                 ,      Vector3::ZERO                       }
-
-
-};
-
-const unsigned int Vector3TableCount = sizeof(Vector3Table)/sizeof(Vector3Table[0]);
-
-const Vector4Pair Vector4Table[] =
-{
-    { "COLOR_BLACK"                  , Color::BLACK       },
-    { "COLOR_WHITE"                  , Color::WHITE       },
-    { "COLOR_RED"                    , Color::RED         },
-    { "COLOR_GREEN"                  , Color::GREEN       },
-    { "COLOR_BLUE"                   , Color::BLUE        },
-    { "COLOR_YELLOW"                 , Color::YELLOW      },
-    { "COLOR_MAGENTA"                , Color::MAGENTA     },
-    { "COLOR_CYAN"                   , Color::CYAN        },
-    { "COLOR_TRANSPARENT"            , Color::TRANSPARENT }
-
-};
-
-const unsigned int Vector4TableCount = sizeof(Vector4Table)/sizeof(Vector4Table[0]);
-
-const IntegerPair EnumTable[] =
-{
-
-    { "ANIMATION_BAKE",                                       Animation::Bake                    },
-    { "ANIMATION_DISCARD",                                    Animation::Discard                 },
-    { "ANIMATION_BAKE_FINAL",                                 Animation::BakeFinal               },
-    { "REFRESH_ONCE",                                         RenderTask::REFRESH_ONCE           },
-    { "REFRESH_ALWAYS",                                       RenderTask::REFRESH_ALWAYS         },
-
-    { "PIXEL_FORMAT_A8",                                       Pixel::A8,                        },
-    { "PIXEL_FORMAT_L8",                                       Pixel::L8,                        },
-    { "PIXEL_FORMAT_LA88",                                     Pixel::LA88,                      },
-    { "PIXEL_FORMAT_RGB565",                                   Pixel::RGB565,                    },
-    { "PIXEL_FORMAT_BGR565",                                   Pixel::BGR565,                    },
-    { "PIXEL_FORMAT_RGBA4444",                                 Pixel::RGBA4444,                  },
-    { "PIXEL_FORMAT_BGRA4444",                                 Pixel::BGRA4444,                  },
-    { "PIXEL_FORMAT_RGBA5551",                                 Pixel::RGBA5551,                   },
-    { "PIXEL_FORMAT_BGRA5551",                                 Pixel::BGRA5551,                  },
-    { "PIXEL_FORMAT_RGB888",                                   Pixel::RGB888,                    },
-    { "PIXEL_FORMAT_RGB8888",                                  Pixel::RGB8888,                   },
-    { "PIXEL_FORMAT_BGR8888",                                  Pixel::BGR8888,                   },
-    { "PIXEL_FORMAT_RGBA8888",                                 Pixel::RGBA8888,                  },
-    { "PIXEL_FORMAT_BGRA8888",                                 Pixel::BGRA8888,                  },
-
-    { "PIXEL_FORMAT_COMPRESSED_R11_EAC",                       Pixel::COMPRESSED_R11_EAC,        },
-    { "PIXEL_FORMAT_COMPRESSED_SIGNED_R11_EAC",                Pixel::COMPRESSED_SIGNED_R11_EAC,                },
-    { "PIXEL_FORMAT_COMPRESSED_RG11_EAC",                      Pixel::COMPRESSED_RG11_EAC,                      },
-    { "PIXEL_FORMAT_COMPRESSED_SIGNED_RG11_EAC",               Pixel::COMPRESSED_SIGNED_RG11_EAC,               },
-    { "PIXEL_FORMAT_COMPRESSED_RGB8_ETC2",                     Pixel::COMPRESSED_RGB8_ETC2,                     },
-    { "PIXEL_FORMAT_COMPRESSED_SRGB8_ETC2",                    Pixel::COMPRESSED_SRGB8_ETC2,                    },
-    { "PIXEL_FORMAT_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2", Pixel::COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2, },
-    { "PIXEL_FORMAT_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2",Pixel::COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2},
-    { "PIXEL_FORMAT_COMPRESSED_RGBA8_ETC2_EAC",                Pixel::COMPRESSED_RGBA8_ETC2_EAC,                },
-    { "PIXEL_FORMAT_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC",         Pixel::COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,         },
-    { "PIXEL_FORMAT_COMPRESSED_RGB8_ETC1",                     Pixel::COMPRESSED_RGB8_ETC1,                     },
-    { "PIXEL_FORMAT_COMPRESSED_RGB_PVRTC_4BPPV1",              Pixel::COMPRESSED_RGB_PVRTC_4BPPV1               },
-
-
-    { "COLOR_MODE_USE_OWN_COLOR",                              USE_OWN_COLOR                    },
-    { "COLOR_MODE_USE_PARENT_COLOR",                           USE_PARENT_COLOR                 },
-    { "COLOR_MODE_USE_OWN_MULTIPLY_PARENT_COLOR",              USE_OWN_MULTIPLY_PARENT_COLOR    },
-    { "COLOR_MODE_USE_OWN_MULTIPLY_PARENT_ALPHA",              USE_OWN_MULTIPLY_PARENT_ALPHA    },
-
-
-    { "DRAW_MODE_NORMAL",                                   DrawMode::NORMAL     },
-    { "DRAW_MODE_OVERLAY_2D",                               DrawMode::OVERLAY_2D },
-
-    { "RESOURCE_LOADING",                                   Dali::ResourceLoading },
-    { "RESOURCE_LOADING_SUCCEEDED",                         Dali::ResourceLoadingSucceeded  },
-    { "RESOURCE_LOADING_FAILED",                            Dali::ResourceLoadingFailed  },
-
-    { "FITTING_MODE_SHRINK_TO_FIT",     FittingMode::SHRINK_TO_FIT },
-    { "FITTING_MODE_SCALE_TO_FILL",     FittingMode::SCALE_TO_FILL },
-    { "FITTING_MODE_FIT_WIDTH",         FittingMode::FIT_WIDTH },
-    { "FITTING_MODE_FIT_HEIGHT",        FittingMode::FIT_HEIGHT },
-
-    { "SAMPLING_MODE_BOX",              SamplingMode::BOX },
-    { "SAMPLING_MODE_NEAREST",          SamplingMode::NEAREST },
-    { "SAMPLING_MODE_LINEAR",           SamplingMode::LINEAR },
-    { "SAMPLING_MODE_BOX_THEN_NEAREST", SamplingMode::BOX_THEN_NEAREST },
-    { "SAMPLING_MODE_BOX_THEN_LINEAR",  SamplingMode::BOX_THEN_LINEAR },
-    { "SAMPLING_MODE_NO_FILTER",        SamplingMode::NO_FILTER },
-    { "SAMPLING_MODE_DONT_CARE",        SamplingMode::DONT_CARE },
-
-    { "BLEND_FACTOR_ZERO",                                  BlendFactor::ZERO                    },
-    { "BLEND_FACTOR_ONE",                                   BlendFactor::ONE                     },
-    { "BLEND_FACTOR_SRC_COLOR",                             BlendFactor::SRC_COLOR               },
-    { "BLEND_FACTOR_ONE_MINUS_SRC_COLOR",                   BlendFactor::ONE_MINUS_SRC_COLOR     },
-    { "BLEND_FACTOR_SRC_ALPHA",                             BlendFactor::SRC_ALPHA               },
-    { "BLEND_FACTOR_ONE_MINUS_SRC_ALPHA",                   BlendFactor::ONE_MINUS_SRC_ALPHA     },
-    { "BLEND_FACTOR_DST_ALPHA",                             BlendFactor::DST_ALPHA                },
-    { "BLEND_FACTOR_ONE_MINUS_DST_ALPHA",                   BlendFactor::ONE_MINUS_DST_ALPHA      },
-    { "BLEND_FACTOR_DST_COLOR",                             BlendFactor::DST_COLOR                },
-    { "BLEND_FACTOR_ONE_MINUS_DST_COLOR",                   BlendFactor::ONE_MINUS_DST_COLOR      },
-    { "BLEND_FACTOR_SRC_ALPHA_SATURATE",                    BlendFactor::SRC_ALPHA_SATURATE       },
-    { "BLEND_FACTOR_CONSTANT_COLOR",                        BlendFactor::CONSTANT_COLOR           },
-    { "BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR",              BlendFactor::ONE_MINUS_CONSTANT_COLOR },
-    { "BLEND_FACTOR_CONSTANT_ALPHA" ,                       BlendFactor::CONSTANT_ALPHA           },
-    { "BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA",              BlendFactor::ONE_MINUS_CONSTANT_ALPHA },
-
-    { "BLEND_MODE_OFF",                                      BlendMode::OFF             },
-    { "BLEND_MODE_AUTO",                                     BlendMode::AUTO            },
-    { "BLEND_MODE_ON",                                       BlendMode::ON              },
-
-    { "BLEND_EQUATION_ADD",                                BlendEquation::ADD              },
-    { "BLEND_EQUATION_SUBTRACT",                           BlendEquation::SUBTRACT         },
-    { "BLEND_EQUATION_REVERSE_SUBTRACT",                   BlendEquation::REVERSE_SUBTRACT },
-
-    { "CAMERA_FREE_LOOK"             ,      Camera::FREE_LOOK                   },
-    { "CAMERA_LOOK_AT_TARGET"        ,      Camera::LOOK_AT_TARGET              },
-    { "CAMERA_PERSPECTIVE_PROJECTION" ,     Camera::PERSPECTIVE_PROJECTION      },
-    { "CAMERA_ORTHOGRAPHIC_PROJECTION",     Camera::ORTHOGRAPHIC_PROJECTION     },
-
-    { "FILTER_MODE_NONE",                     FilterMode::NONE           },
-    { "FILTER_MODE_DEFAULT",                  FilterMode::DEFAULT        },
-    { "FILTER_MODE_NEAREST",                  FilterMode::NEAREST        },
-    { "FILTER_MODE_LINEAR",                   FilterMode::LINEAR         },
-
-    { "WRAP_MODE_DEFAULT",                    WrapMode::DEFAULT          },
-    { "WRAP_MODE_CLAMP_TO_EDGE",              WrapMode::CLAMP_TO_EDGE    },
-    { "WRAP_MODE_REPEAT",                     WrapMode::REPEAT           },
-    { "WRAP_MODE_MIRRORED_REPEAT",            WrapMode::MIRRORED_REPEAT  },
-
-    { "FACE_CULLING_NONE",                    FaceCullingMode::NONE           },
-    { "FACE_CULLING_BACK",                    FaceCullingMode::BACK           },
-    { "FACE_CULLING_FRONT",                   FaceCullingMode::FRONT          },
-    { "FACE_CULLING_FRONT_AND_BACK",          FaceCullingMode::FRONT_AND_BACK },
-
-    { "DEPTH_WRITE_OFF",                      DepthWriteMode::OFF   },
-    { "DEPTH_WRITE_AUTO",                     DepthWriteMode::AUTO  },
-    { "DEPTH_WRITE_ON",                       DepthWriteMode::ON    },
-
-    { "GEOMETRY_POINTS",                      Geometry::POINTS          },
-    { "GEOMETRY_LINES",                       Geometry::LINES           },
-    { "GEOMETRY_LINE_LOOP",                   Geometry::LINE_LOOP       },
-    { "GEOMETRY_LINE_STRIP",                  Geometry::LINE_STRIP      },
-    { "GEOMETRY_TRIANGLES",                   Geometry::TRIANGLES       },
-    { "GEOMETRY_TRIANGLE_FAN",                Geometry::TRIANGLE_FAN    },
-    { "GEOMETRY_TRIANGLE_STRIP",              Geometry::TRIANGLE_STRIP  },
-
-    { "PROPERTY_NONE",                        Property::NONE           },
-    { "PROPERTY_BOOLEAN",                     Property::BOOLEAN        },
-    { "PROPERTY_FLOAT",                       Property::FLOAT          },
-    { "PROPERTY_INTEGER",                     Property::INTEGER        },
-    { "PROPERTY_VECTOR2",                     Property::VECTOR2        },
-    { "PROPERTY_VECTOR3",                     Property::VECTOR3        },
-    { "PROPERTY_VECTOR4",                     Property::VECTOR4        },
-    { "PROPERTY_MATRIX3",                     Property::MATRIX3        },
-    { "PROPERTY_MATRIX",                      Property::MATRIX         },
-    { "PROPERTY_RECTANGLE",                   Property::RECTANGLE      },
-    { "PROPERTY_ROTATION",                    Property::ROTATION       },
-    { "PROPERTY_STRING",                      Property::STRING         },
-    { "PROPERTY_ARRAY",                       Property::ARRAY          },
-    { "PROPERTY_MAP",                         Property::MAP            },
-    { "PROPERTY_INVALID_INDEX",               Property::INVALID_INDEX  },
-    { "PROPERTY_READ_ONLY",                   Property::READ_ONLY      },
-    { "PROPERTY_READ_WRITE",                  Property::READ_WRITE     },
-    { "PROPERTY_ANIMATABLE",                  Property::ANIMATABLE     },
-
-    { "DIMENSION_WIDTH",                      Dimension::WIDTH   },
-    { "DIMENSION_HEIGHT",                     Dimension::HEIGHT  },
-
-    { "ITEM_LAYOUT_LIST",                     Toolkit::DefaultItemLayout::LIST     },
-    { "ITEM_LAYOUT_GRID",                     Toolkit::DefaultItemLayout::GRID     },
-
-    { "DIRECTION_BIAS_NONE",                  Toolkit::DirectionBiasNone   },
-    { "DIRECTION_BIAS_LEFT",                  Toolkit::DirectionBiasLeft   },
-    { "DIRECTION_BIAS_RIGHT",                 Toolkit::DirectionBiasRight  },
-
-    { "ALPHA_FUNCTION_DEFAULT",               AlphaFunction::DEFAULT              },
-    { "ALPHA_FUNCTION_LINEAR",                AlphaFunction::LINEAR               },
-    { "ALPHA_FUNCTION_REVERSE",               AlphaFunction::REVERSE              },
-    { "ALPHA_FUNCTION_EASE_IN_SQUARE",        AlphaFunction::EASE_IN_SQUARE       },
-    { "ALPHA_FUNCTION_EASE_OUT_SQUARE",       AlphaFunction::EASE_OUT_SQUARE      },
-    { "ALPHA_FUNCTION_EASE_IN",               AlphaFunction::EASE_IN              },
-    { "ALPHA_FUNCTION_EASE_OUT",              AlphaFunction::EASE_OUT             },
-    { "ALPHA_FUNCTION_EASE_IN_OUT",           AlphaFunction::EASE_IN_OUT          },
-    { "ALPHA_FUNCTION_EASE_IN_SINE",          AlphaFunction::EASE_IN_SINE         },
-    { "ALPHA_FUNCTION_EASE_OUT_SINE",         AlphaFunction::EASE_OUT_SINE        },
-    { "ALPHA_FUNCTION_EASE_IN_OUT_SINE",      AlphaFunction::EASE_IN_OUT_SINE     },
-    { "ALPHA_FUNCTION_BOUNCE",                AlphaFunction::BOUNCE               },
-    { "ALPHA_FUNCTION_SIN",                   AlphaFunction::SIN                  },
-    { "ALPHA_FUNCTION_EASE_OUT_BACK",         AlphaFunction::EASE_OUT_BACK        },
-
-    { "CLIPPING_MODE_DISABLED",                     ClippingMode::DISABLED                     },
-    { "CLIPPING_MODE_CLIP_CHILDREN",                ClippingMode::CLIP_CHILDREN                },
-};
-const unsigned int EnumTableCount = sizeof(EnumTable)/sizeof(EnumTable[0]);
-
-} // un-named name space
-
-
-void ConstantsWrapper::AddDaliConstants( v8::Isolate* isolate, v8::Local<v8::Object >& obj  )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-
-  for( unsigned int i = 0; i < EnumTableCount; ++i )
-  {
-    obj->Set( v8::String::NewFromUtf8( isolate, EnumTable[i].name ),
-                      v8::Integer::New(isolate, EnumTable[i].value ) );
-  }
-
-  for( unsigned int i = 0; i < Vector3TableCount; ++i )
-  {
-    // create a JavaScript array object with 3 entries.
-    v8::Local<v8::Array> array = v8::Array::New( isolate ,3 );
-    array->Set( 0 , v8::Number::New(isolate, Vector3Table[i].value.x ));
-    array->Set( 1 , v8::Number::New(isolate, Vector3Table[i].value.y ));
-    array->Set( 2 , v8::Number::New(isolate, Vector3Table[i].value.z ));
-
-    obj->Set( v8::String::NewFromUtf8( isolate, Vector3Table[i].name),
-              array);
-  }
-
-
-  for( unsigned int i = 0; i < Vector4TableCount; ++i )
-  {
-    // create a JavaScript array object with 3 entries.
-    v8::Local<v8::Array> array = v8::Array::New( isolate ,4 );
-    array->Set( 0 , v8::Number::New(isolate, Vector4Table[i].value.x ));
-    array->Set( 1 , v8::Number::New(isolate, Vector4Table[i].value.y ));
-    array->Set( 2 , v8::Number::New(isolate, Vector4Table[i].value.z ));
-    array->Set( 3 , v8::Number::New(isolate, Vector4Table[i].value.w ));
-
-    obj->Set( v8::String::NewFromUtf8( isolate, Vector4Table[i].name),
-              array);
-  }
-
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/constants/constants-wrapper.h b/plugins/dali-script-v8/src/constants/constants-wrapper.h
deleted file mode 100644 (file)
index c4ed4f3..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-#ifndef DALI_V8PLUGIN_DALI_CONSTANTS_WRAPPER
-#define DALI_V8PLUGIN_DALI_CONSTANTS_WRAPPER
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace  ConstantsWrapper
-{
-
-void AddDaliConstants( v8::Isolate* isolate, v8::Local<v8::Object >& obj  );
-} // namespace ConstantsWrapper
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_DALI_CONSTANTS_WRAPPER
diff --git a/plugins/dali-script-v8/src/controls/control-wrapper.cpp b/plugins/dali-script-v8/src/controls/control-wrapper.cpp
deleted file mode 100644 (file)
index b3cc3dc..0000000
+++ /dev/null
@@ -1,358 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include <actors/actor-wrapper.h>
-#include "control-wrapper.h"
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/object/type-registry.h>
-
-// INTERNAL INCLUDES
-#include <controls/item-view-api.h>
-#include <controls/scroll-view-api.h>
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> ControlWrapper::mControlTemplate;
-v8::Persistent<v8::ObjectTemplate> ControlWrapper::mItemViewTemplate;
-v8::Persistent<v8::ObjectTemplate> ControlWrapper::mScrollViewTemplate;
-
-Vector< void* > ControlWrapper::mControlGarbageContainer;
-
-namespace
-{
-
-
-/**
- * pointer to a persistent template handle
- */
-struct ControlTemplate
-{
-  v8::Persistent<v8::ObjectTemplate>* controlTemplate;
-};
-
-/**
- * array of templates for each type of control
- */
-const ControlTemplate ControlTemplateLookup[]=
-{
-    { &ControlWrapper::mControlTemplate },        // CONTROL
-    { &ControlWrapper::mItemViewTemplate },       // ITEMVIEW
-    { &ControlWrapper::mScrollViewTemplate }      // SCROLLVIEW
-};
-
-/**
- * Bitmask of API's that an control can support
- */
-enum ControlApiBitMask
-{
-  CONTROL_API             = 1 << 0,
-  ITEMVIEW_API            = 1 << 1,
-  SCROLLVIEW_API          = 1 << 2
-};
-
-/**
- * structure used for the ControlApiLookup.
- */
-struct ControlApiStruct
-{
-  const char* controlName;
-  ControlWrapper::ControlType controlType;
-  Toolkit::Control (*constructor)( const v8::FunctionCallbackInfo< v8::Value >& args);
-  int supportApis;
-};
-
-/**
- * Lookup table to match a control type with a constructor and supported API's.
- * ControlWrapper::ControlType is used to index this table
- */
-const ControlApiStruct ControlApiLookup[]=
-{
-  {"Control",      ControlWrapper::CONTROL,      NULL,                 CONTROL_API },
-  {"ItemView",     ControlWrapper::ITEMVIEW,     ItemViewApi::New,     CONTROL_API | ITEMVIEW_API },
-  {"ScrollView",   ControlWrapper::SCROLLVIEW,   ScrollViewApi::New,   CONTROL_API | SCROLLVIEW_API }
-};
-
-const unsigned int ControlApiLookupCount = sizeof(ControlApiLookup)/sizeof(ControlApiLookup[0]);
-
-
-/**
- * Creates a control given a type name
- * Uses the type registry to create an control of the correct type
- */
-Toolkit::Control CreateControl( const v8::FunctionCallbackInfo< v8::Value >& args,
-                        const std::string& typeName )
-{
-  Toolkit::Control control;
-
-  ControlWrapper::ControlType controlType = ControlWrapper::GetControlType( typeName );
-
-  // if we don't currently have specific binding for the given control type,
-  // try to use type registry to create it
-  if( controlType == ControlWrapper::UNKNOWN_CONTROL )
-  {
-    Dali::TypeInfo typeInfo = Dali::TypeRegistry::Get().GetTypeInfo( typeName );
-    if( typeInfo )
-    {
-      Dali::BaseHandle handle = typeInfo.CreateInstance();
-      if( handle )
-      {
-        control = Toolkit::Control::DownCast( handle );
-        if( !control )
-        {
-          DALI_SCRIPT_EXCEPTION( args.GetIsolate(), "Unknown control type" );
-          return Toolkit::Control();
-        }
-      }
-    }
-  }
-  else
-  {
-    // run the constructor for this type of control so it can pull out custom parameters
-    control = (ControlApiLookup[controlType].constructor)( args );
-  }
-
-  return control;
-}
-
-/**
- * given a control type return what api's it supports
- */
-int GetControlSupportedApis( ControlWrapper::ControlType type )
-{
-  return ControlApiLookup[type].supportApis;
-}
-
-/**
- * Used for the ControlFunctionTable to map function names to functions
- * with for a specific API
- */
-struct ControlFunctions
-{
-  const char* name;               ///< function name
-  void (*function)( const v8::FunctionCallbackInfo< v8::Value >& args);
-  ControlApiBitMask api;
-};
-
-/**
- * Contains a list of all functions that can be called in
- * ItemView
- */
-const ControlFunctions ControlFunctionTable[]=
-{
-
-    /**************************************
-     * ItemView  API
-     **************************************/
-    { "GetLayoutCount",                  ItemViewApi::GetLayoutCount,                   ITEMVIEW_API  },
-    { "AddLayout",                       ItemViewApi::AddLayout,                        ITEMVIEW_API  },
-    { "RemoveLayout",                    ItemViewApi::RemoveLayout,                     ITEMVIEW_API  },
-    { "ActivateLayout",                  ItemViewApi::ActivateLayout,                   ITEMVIEW_API  },
-    { "GetItemSize",                     ItemViewApi::GetItemSize,                      ITEMVIEW_API  },
-    { "SetItemSize",                     ItemViewApi::SetItemSize,                      ITEMVIEW_API  },
-    { "ScrollToItem",                    ItemViewApi::ScrollToItem,                     ITEMVIEW_API  },
-    { "GetItem",                         ItemViewApi::GetItem,                          ITEMVIEW_API  },
-    { "GetItemId",                       ItemViewApi::GetItemId,                        ITEMVIEW_API  },
-    { "GetItemsRange",                   ItemViewApi::GetItemsRange,                    ITEMVIEW_API  },
-
-    /**************************************
-     * ScrollView  API
-     **************************************/
-    { "SetScrollMode",                   ScrollViewApi::SetScrollMode,                  SCROLLVIEW_API },
-    { "GetCurrentPage",                  ScrollViewApi::GetCurrentPage,                 SCROLLVIEW_API },
-    { "ScrollToPosition",                ScrollViewApi::ScrollToPosition,               SCROLLVIEW_API },
-    { "ScrollToPage",                    ScrollViewApi::ScrollToPage,                   SCROLLVIEW_API },
-    { "ScrollToActor",                   ScrollViewApi::ScrollToActor,                  SCROLLVIEW_API },
-    { "ScrollToSnapInterval",            ScrollViewApi::ScrollToSnapInterval,           SCROLLVIEW_API },
-    { "SetScrollFlickAlphaFunction",     ScrollViewApi::SetScrollFlickAlphaFunction,    SCROLLVIEW_API },
-    { "SetScrollSnapAlphaFunction",      ScrollViewApi::SetScrollSnapAlphaFunction,     SCROLLVIEW_API },
-    { "SetSnapOvershootAlphaFunction",   ScrollViewApi::SetSnapOvershootAlphaFunction,  SCROLLVIEW_API },
-
-};
-
-const unsigned int ControlFunctionTableCount = sizeof(ControlFunctionTable)/sizeof(ControlFunctionTable[0]);
-} //un-named space
-
-
-ControlWrapper::ControlWrapper( Toolkit::Control control,
-              GarbageCollectorInterface& gc )
-: ActorWrapper( control, gc ),
-  mControl( control )
-
-{
-}
-
-ControlWrapper::~ControlWrapper()
-{
-  mControlGarbageContainer.Release();
-}
-
-v8::Handle<v8::Object> ControlWrapper::WrapControl(v8::Isolate* isolate, Toolkit::Control control )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  // Check whether the control is a Control
-  ControlWrapper::ControlType controlType = GetControlType( control.GetTypeName() );
-
-  if( controlType == ControlWrapper::UNKNOWN_CONTROL && Toolkit::Control::DownCast(control) )
-  {
-    controlType = ControlWrapper::CONTROL;
-  }
-
-  v8::Local<v8::Object> object = WrapControl( isolate, control, controlType );
-
-  return handleScope.Escape( object );
-}
-
-Toolkit::Control ControlWrapper::GetControl()
-{
-  return mControl;
-}
-
-v8::Handle<v8::Object> ControlWrapper::WrapControl( v8::Isolate* isolate, Toolkit::Control control, ControlType controlType )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetControlTemplate( isolate, controlType );
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the control object
-  ControlWrapper* pointer = new ControlWrapper( control, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  // This also stores Dali object, in an internal field inside the JavaScript object.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> ControlWrapper::GetControlTemplate( v8::Isolate* isolate, ControlWrapper::ControlType type )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( ControlTemplateLookup[type].controlTemplate->IsEmpty() )
-  {
-    objectTemplate = MakeDaliControlTemplate( isolate, type );
-    ControlTemplateLookup[type].controlTemplate->Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, *ControlTemplateLookup[type].controlTemplate );
-  }
-
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> ControlWrapper::MakeDaliControlTemplate( v8::Isolate* isolate, ControlType controlType )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  // all the controls support actor APIs
-  v8::Local<v8::ObjectTemplate> objTemplate = ActorWrapper::MakeDaliActorTemplate( isolate, ActorWrapper::ACTOR );
-
-  // find out what API's this control supports
-  int supportApis = GetControlSupportedApis( controlType );
-
-  // add our function properties
-  for( unsigned int i = 0; i < ControlFunctionTableCount; ++i )
-  {
-    const ControlFunctions property =  ControlFunctionTable[i];
-
-    // check to see if the control supports a certain type of API
-    // e.g. ItemView will support CONTROL_API and ITEMVIEW_API
-    if( supportApis &  property.api )
-    {
-      std::string funcName = V8Utils::GetJavaScriptFunctionName( property.name);
-
-      objTemplate->Set( v8::String::NewFromUtf8( isolate, funcName.c_str() ),
-                      v8::FunctionTemplate::New( isolate, property.function ) );
-    }
-  }
-
-  return handleScope.Escape( objTemplate );
-}
-
-void ControlWrapper::NewControl( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  if( !args.IsConstructCall() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "constructor called without 'new" );
-    return;
-  }
-
-  bool found( false );
-  std::string controlName = V8Utils::GetStringParameter( PARAMETER_0, found, isolate,  args );
-
-  Toolkit::Control control;
-  if( found && controlName != ControlApiLookup[0].controlName )
-  {
-    control = CreateControl( args, controlName ); // create the control with the given type
-  }
-  else
-  {
-    control = Toolkit::Control::New(); // no given type, so create the base type of control
-  }
-
-  if( control )
-  {
-    v8::Local<v8::Object> localObject = WrapControl( isolate, control );
-    args.GetReturnValue().Set( localObject );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "unsupported control type" );
-  }
-}
-
-/**
- * Given a control type name, e.g. ItemView returns the type, e.g. ControlWrapper::ITEMVIEW
- */
-ControlWrapper::ControlType ControlWrapper::GetControlType( const std::string& name )
-{
-  for( unsigned int i = 0 ; i < ControlApiLookupCount ; i++ )
-  {
-    if( ControlApiLookup[i].controlName == name )
-    {
-      return ControlApiLookup[i].controlType;
-    }
-  }
-  return ControlWrapper::UNKNOWN_CONTROL;
-}
-
-void ControlWrapper::RegisterGarbage(void* garbage)
-{
-  mControlGarbageContainer.PushBack(garbage);
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/controls/control-wrapper.h b/plugins/dali-script-v8/src/controls/control-wrapper.h
deleted file mode 100644 (file)
index 7e4e843..0000000
+++ /dev/null
@@ -1,128 +0,0 @@
-#ifndef DALI_V8PLUGIN_CONTROL_WRAPPER_H
-#define DALI_V8PLUGIN_CONTROL_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/common/dali-vector.h>
-#include <dali-toolkit/public-api/controls/control.h>
-
-// INTERNAL INCLUDES
-#include <actors/actor-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * Wraps a Dali Control.
- */
-class ControlWrapper : public ActorWrapper
-{
-
-public:
-
-  /**
-   * Control type used an index.
-   * These enums are used to index the ControlApiLookup table in control-wrapper.cpp.
-   * Any changes made must be reflected in the ControlApiLookup otherwise it may segfault when creating a control
-   */
-  enum ControlType
-  {
-    UNKNOWN_CONTROL = -1,
-    CONTROL         = 0,
-    ITEMVIEW        = 1,
-    SCROLLVIEW      = 2
-  };
-
-  /**
-   * Constructor
-   * @param control DALi control
-   * @param gc garbage collection interface
-   */
-  ControlWrapper( Toolkit::Control control,
-                GarbageCollectorInterface& gc );
-
-  /**
-   * destructor
-   */
-  virtual ~ControlWrapper();
-
-  /**
-   * @brief Creates a new Control wrapped inside a Javascript Object.
-   * @note: the control type is passed as a parameter e.g. 'ItemView'
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewControl( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * @brief Wraps a control of a given type
-   */
-  static v8::Handle<v8::Object> WrapControl(v8::Isolate* isolate, Toolkit::Control control, ControlType controlType);
-
-  /**
-   * @brief Wraps a control, the type is looked up from the control
-   */
-  static v8::Handle<v8::Object> WrapControl(v8::Isolate* isolate, Toolkit::Control control );
-
-  // The Control ObjectTemplates.
-  static v8::Persistent<v8::ObjectTemplate> mControlTemplate;
-  static v8::Persistent<v8::ObjectTemplate> mItemViewTemplate;
-  static v8::Persistent<v8::ObjectTemplate> mScrollViewTemplate;
-
-  /**
-   * @return the wrapped control
-   */
-  Toolkit::Control GetControl();
-
-  /**
-   * @return the control type
-   */
-  static ControlWrapper::ControlType GetControlType( const std::string& name );
-
-  /**
-   * @brief Register the garbage to be released when the wrapped control is deleted.
-   */
-  static void RegisterGarbage(void* garbage);
-
-private:
-
-  /**
-   * Helper to make the control template
-   */
-  static v8::Handle<v8::ObjectTemplate> MakeDaliControlTemplate( v8::Isolate* isolate, ControlType controlType );
-
-  /**
-   * Helper, get a control template given a control type
-   */
-  static v8::Local<v8::ObjectTemplate> GetControlTemplate( v8::Isolate* isolate, ControlType type );
-
-  Toolkit::Control mControl;
-  static Vector< void* > mControlGarbageContainer;
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_CONTROL_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/controls/item-factory-wrapper.cpp b/plugins/dali-script-v8/src/controls/item-factory-wrapper.cpp
deleted file mode 100644 (file)
index 6085cf2..0000000
+++ /dev/null
@@ -1,467 +0,0 @@
-/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "item-factory-wrapper.h"
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/common/vector-wrapper.h>
-#include <dali/public-api/object/weak-handle.h>
-#include <dali-toolkit/devel-api/builder/builder.h>
-#include <dali-toolkit/public-api/controls/scrollable/item-view/item-view.h>
-#include <dali-toolkit/public-api/controls/scrollable/item-view/item-layout.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> ItemFactoryWrapper::mItemFactoryTemplate;
-
-namespace
-{
-
-typedef std::vector< Property::Map > ItemDataContainer;
-
-// Implementation of ItemFactory for providing actors to ItemView
-class ItemFactory : public Toolkit::ItemFactory
-{
-public:
-
-  /**
-   * Constructor
-   * @param application class, stored as reference
-   */
-  ItemFactory()
-  : mJsonFileLoaded(false),
-    mNumberOfItems(0)
-  {
-    mBuilder = Toolkit::Builder::New();
-  }
-
-  /**
-   * Set the name of the JSON file which defines the templates of items.
-   * @param jsonFile The JSON file
-   */
-  void SetJsonTemplateFile(std::string jsonFile)
-  {
-    if(mJsonFile != jsonFile)
-    {
-      mJsonFile = jsonFile;
-      LoadJsonFile(mJsonFile);
-
-      // Check whether any layout activated in ItemView
-      Toolkit::ItemView itemView = mItemView.GetHandle();
-      if(itemView && itemView.GetActiveLayout() != NULL)
-      {
-        // Refresh ItemView if item templates are changed
-        itemView.Refresh();
-      }
-    }
-  }
-
-  /**
-   * Returns the name of the JSON file.
-   * @return The JSON file name
-   */
-  std::string GetJsonTemplate()
-  {
-    return mJsonFile;
-  }
-
-  /**
-   * Set the data to be used to create new items.
-   *
-   * If ItemView is already created, this will immediately update ItemView with the
-   * new data.
-   *
-   * The data is an array of property maps in which each map contains the data for
-   * each item, including the template to be used to build the actor and the pairs
-   * of key/value to be used to replace the constants defined in the template.
-   * The order of property maps in the array represents the actual order of items
-   * in ItemView.
-   *
-   * @param data The array of property maps
-   */
-  void SetData(ItemDataContainer data)
-  {
-    ItemDataContainer currentData = mData;
-    mData = data;
-    mNumberOfItems = mData.size();
-
-    // Check whether any layout activated in ItemView
-    Toolkit::ItemView itemView = mItemView.GetHandle();
-    if(itemView && itemView.GetActiveLayout() != NULL)
-    {
-      unsigned int currentNumberOfItems = currentData.size();
-      unsigned int newNumberOfItems = data.size();
-
-      // Check whether any items added or deleted from the data
-      // which requires ItemView to be refreshed with the new data
-      if(currentNumberOfItems != newNumberOfItems)
-      {
-        itemView.Refresh();
-      }
-      else
-      {
-        for( unsigned int itemId = 0; itemId < newNumberOfItems; itemId++)
-        {
-          // Check whether the item is already built in ItemView
-          Actor itemActor = itemView.GetItem(itemId);
-          if(itemActor)
-          {
-            // Check if the item needs to be rebuilt
-            if( !V8Utils::IsPropertyMapIdentical(currentData[itemId], data[itemId]) )
-            {
-              // Rebuild the item with the new data
-              Actor newItemActor = NewItem(itemId);
-
-              // Replace the old item with the new one
-              itemView.ReplaceItem( Toolkit::Item( itemId, newItemActor ), 0.0f );
-            }
-          }
-        }
-      }
-    }
-  }
-
-  /**
-   * Retrieve the data.
-   * @return the data.
-   */
-  ItemDataContainer GetData()
-  {
-    return mData;
-  }
-
-  /**
-   * Store a weak handle of ItemView in order to access ItemView APIs
-   * from this ItemFactory implementation
-   * @return the data.
-   */
-  void SetItemView(Toolkit::ItemView itemView)
-  {
-    mItemView = itemView;
-  }
-
-public: // From Toolkit::ItemFactory
-
-  /**
-   * Query the number of items available from the factory.
-   * The maximum available item has an ID of GetNumberOfItems() - 1.
-   */
-  virtual unsigned int GetNumberOfItems()
-  {
-    return mJsonFileLoaded ? mNumberOfItems : 0;
-  }
-
-  /**
-   * Create an Actor to represent a visible item.
-   * @param itemId
-   * @return the created actor.
-   */
-  virtual Actor NewItem(unsigned int itemId)
-  {
-    std::string itemTemplate;
-
-    Property::Map constantsMap = mData[itemId];
-    for ( unsigned int i = 0, count = constantsMap.Count(); i < count; ++i )
-    {
-      Property::Value& constantValue = constantsMap.GetValue(i);
-      if(constantsMap.GetKey(i) == "template")
-      {
-        constantValue.Get(itemTemplate);
-      }
-      else
-      {
-        mBuilder.AddConstant( constantsMap.GetKey(i), constantValue );
-      }
-    }
-
-    Actor item = Actor::DownCast( mBuilder.Create(itemTemplate) );
-    return item;
-  }
-
-private:
-
-  /**
-   * Load the JSON file.
-   * @param The JSON file name
-   */
-  void LoadJsonFile(std::string jsonFile)
-  {
-    try
-    {
-      std::string data;
-      V8Utils::GetFileContents(jsonFile, data);
-
-      mBuilder.LoadFromString(data);
-
-      mJsonFileLoaded = true;
-    }
-    catch(...)
-    {
-//      printf("invalid JSON data\n");
-      mJsonFileLoaded = false;
-    }
-  }
-
-private:
-
-  std::string mJsonFile;
-  bool mJsonFileLoaded;
-  Toolkit::Builder mBuilder;
-  unsigned int mNumberOfItems;
-  ItemDataContainer mData;
-  WeakHandle< Toolkit::ItemView > mItemView;
-};
-
-} //un-named space
-
-ItemFactoryWrapper::ItemFactoryWrapper( Toolkit::ItemFactory& factory, GarbageCollectorInterface& gc )
-: BaseWrappedObject( BaseWrappedObject::ITEMFACTORY , gc ),
-  mItemFactory( factory )
-{
-}
-
-ItemFactoryWrapper::~ItemFactoryWrapper()
-{
-}
-
-v8::Handle<v8::Object> ItemFactoryWrapper::WrapItemFactory(v8::Isolate* isolate, Toolkit::ItemFactory& factory )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetItemFactoryTemplate( isolate );
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the ItemFactory wrapper
-  ItemFactoryWrapper* pointer =  new ItemFactoryWrapper( factory, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> ItemFactoryWrapper::GetItemFactoryTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( mItemFactoryTemplate.IsEmpty() )
-  {
-    objectTemplate = MakeItemFactoryTemplate( isolate );
-    mItemFactoryTemplate.Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, mItemFactoryTemplate );
-  }
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> ItemFactoryWrapper::MakeItemFactoryTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // set property setter and getter
-  objTemplate->SetNamedPropertyHandler( ItemFactoryWrapper::PropertyGet, ItemFactoryWrapper::PropertySet);
-
-  return handleScope.Escape( objTemplate );
-}
-
-void ItemFactoryWrapper::NewItemFactory( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate);
-
-  if( !args.IsConstructCall() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "ItemFactory constructor called without 'new'" );
-    return;
-  }
-
-  Toolkit::ItemFactory* factory = new ItemFactory();
-
-  v8::Local<v8::Object> localObject = WrapItemFactory( isolate, *factory );
-  args.GetReturnValue().Set( localObject );
-}
-
-Toolkit::ItemFactory& ItemFactoryWrapper::GetItemFactoryFromParams( int paramIndex,
-                                             bool& found,
-                                             v8::Isolate* isolate,
-                                             const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  found = false;
-
-  v8::HandleScope handleScope( isolate );
-  BaseWrappedObject* wrappedObject = V8Utils::GetWrappedDaliObjectParameter( paramIndex, BaseWrappedObject::ITEMFACTORY, isolate, args );
-  if( wrappedObject )
-  {
-    found = true;
-    ItemFactoryWrapper* wrapper = static_cast< ItemFactoryWrapper *>(wrappedObject);
-    return wrapper->GetItemFactory();
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "no valid ItemFactory parameter" );
-    Toolkit::ItemFactory* dummyFactory = new ItemFactory();
-    return *dummyFactory; // avoid build error
-  }
-}
-
-ItemFactoryWrapper* ItemFactoryWrapper::Unwrap( v8::Isolate* isolate, v8::Handle< v8::Object> obj)
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( obj->GetInternalField(0) );
-  void* ptr = field->Value();
-  return static_cast< ItemFactoryWrapper *>(ptr);
-}
-
-void ItemFactoryWrapper::PropertyGet( v8::Local<v8::String> propertyName,
-                                        const v8::PropertyCallbackInfo<v8::Value>& info)
-{
-  v8::Isolate* isolate = info.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  // get the property name
-  std::string name = V8Utils::v8StringToStdString( propertyName );
-
-  if( std::isupper( name[0] ))
-  {
-    return;
-  }
-
-  // unwrap the object
-  ItemFactoryWrapper* itemFactoryWrapper = Unwrap( isolate, info.This() );
-  if( !itemFactoryWrapper )
-  {
-    return;
-  }
-
-  ItemFactory& factory = static_cast<ItemFactory&>( itemFactoryWrapper->GetItemFactory() );
-
-  if( name == "jsonTemplateFile" )
-  {
-    std::string jsonTemplateFile = factory.GetJsonTemplate();
-    info.GetReturnValue().Set(v8::String::NewFromUtf8(isolate, jsonTemplateFile.c_str()));
-  }
-  else if( name == "data" )
-  {
-    ItemDataContainer data = factory.GetData();
-    unsigned int itemCount = data.size();
-
-    v8::Local<v8::Array> array= v8::Array::New( isolate, itemCount );
-    for( unsigned int i = 0; i < itemCount; i++)
-    {
-      v8::Local<v8::Object> mapObject = v8::Object::New( isolate );
-      V8Utils::CreatePropertyMap( isolate, data[i], mapObject );
-
-      array->Set( i, mapObject);
-    }
-
-    info.GetReturnValue().Set(array);
-  }
-  else
-  {
-    std::string error="Invalid property Get for "+name + "\n";
-    DALI_SCRIPT_EXCEPTION( isolate, error );
-  }
-}
-
-void ItemFactoryWrapper::PropertySet( v8::Local<v8::String> propertyName,
-                  v8::Local<v8::Value> javaScriptValue,
-                  const v8::PropertyCallbackInfo<v8::Value>& info)
-{
-
-  v8::Isolate* isolate = info.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  // get the property name
-  std::string name = V8Utils::v8StringToStdString( propertyName );
-
-  // unwrap the object
-  ItemFactoryWrapper* itemFactoryWrapper = Unwrap( isolate, info.This() );
-  if( !itemFactoryWrapper )
-  {
-    return;
-  }
-
-  ItemFactory& factory = static_cast<ItemFactory&>( itemFactoryWrapper->GetItemFactory() );
-
-  if( name == "jsonTemplateFile" && javaScriptValue->IsString() )
-  {
-    std::string jsonTemplateFile = V8Utils::v8StringToStdString( javaScriptValue );
-    factory.SetJsonTemplateFile(jsonTemplateFile);
-  }
-  else if( name == "data" && javaScriptValue->IsArray() )
-  {
-    v8::Local<v8::Array> array = v8::Local<v8::Array>::Cast(javaScriptValue);
-
-    ItemDataContainer data;
-
-    for( unsigned int i = 0; i < array->Length(); ++i )
-    {
-      v8::Local<v8::Value> itemData = array->Get(i);
-
-      if( itemData->IsObject() )
-      {
-        Dali::Property::Map map = V8Utils::GetPropertyMapFromObject( isolate, itemData->ToObject() );
-        data.push_back(map);
-      }
-    }
-
-    factory.SetData(data);
-  }
-  else
-  {
-    std::string error = "Invalid property Set for " + name + "\n";
-    DALI_SCRIPT_EXCEPTION( isolate, error );
-  }
-}
-
-Toolkit::ItemFactory& ItemFactoryWrapper::GetItemFactory()
-{
-  return mItemFactory;
-}
-
-void ItemFactoryWrapper::SetItemView(Toolkit::ItemFactory& itemFactory, Toolkit::ItemView itemView)
-{
-  ItemFactory& factory = static_cast<ItemFactory&>( itemFactory );
-  factory.SetItemView(itemView);
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/controls/item-factory-wrapper.h b/plugins/dali-script-v8/src/controls/item-factory-wrapper.h
deleted file mode 100644 (file)
index 44b9baf..0000000
+++ /dev/null
@@ -1,146 +0,0 @@
-#ifndef DALI_V8PLUGIN_ITEM_FACTORY_WRAPPER_H
-#define DALI_V8PLUGIN_ITEM_FACTORY_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/common/dali-vector.h>
-#include <dali-toolkit/public-api/controls/scrollable/item-view/item-factory.h>
-#include <dali-toolkit/public-api/controls/scrollable/item-view/item-view.h>
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * Wraps a Dali ItemFactory.
- */
-class ItemFactoryWrapper : public BaseWrappedObject
-{
-
-public:
-
-  /**
-   * Constructor
-   * @param factory DALi ItemFactory
-   * @param gc garbage collection interface
-   */
-  ItemFactoryWrapper( Toolkit::ItemFactory& factory,
-                GarbageCollectorInterface& gc );
-
-  /**
-   * destructor
-   */
-  virtual ~ItemFactoryWrapper();
-
-  /**
-   * @brief Creates a new ItemFactory wrapped inside a Javascript Object.
-   * @note: the item template and data are passed as a parameter e.g. 'template'
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewItemFactory( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * @brief Wraps an ItemFactory
-   */
-  static v8::Handle<v8::Object> WrapItemFactory(v8::Isolate* isolate, Toolkit::ItemFactory& factory );
-
-  // The ItemFactory ObjectTemplates.
-  static v8::Persistent<v8::ObjectTemplate> mItemFactoryTemplate;
-
-  /**
-   * @brief Helper to get ItemFactory from the JavaScript object held in the given function argument
-   * @param[in] paramIndex Argument index the object is held in
-   * @param[in] found Whether ItemFactory is found in the given function parameter
-   * @param[in] isolate v8 isolated instance
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static Toolkit::ItemFactory& GetItemFactoryFromParams( int paramIndex,
-                                                             bool& found,
-                                                             v8::Isolate* isolate,
-                                                             const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * @brief Helper to store a weak handle of ItemView in the given ItemFactory
-   * @param[in] itemFactory The item factory used to provide items to the given item view
-   * @param[in] itemView The ItemView which uses the given item factory to create items
-   */
-  static void SetItemView(Toolkit::ItemFactory& itemFactory, Toolkit::ItemView itemView);
-
-  /**
-   * @return the wrapped item factory
-   */
-  Toolkit::ItemFactory& GetItemFactory();
-
-private:
-
-  /**
-   * Helper to make the item factory template
-   */
-  static v8::Handle<v8::ObjectTemplate> MakeItemFactoryTemplate( v8::Isolate* isolate );
-
-  /**
-   * Helper, get a item factory template
-   */
-  static v8::Local<v8::ObjectTemplate> GetItemFactoryTemplate( v8::Isolate* isolate );
-
-  /**
-   * @brief get the value for a property for JavaScript object than contains a Dali ItemFactory.
-   * E.g. Get( "data", JavaScript object that wraps a Dali ItemFactory )
-   * @param[in] propertyName property name
-   * @param[in] info reference to PropertyCallbackInfo structure (contains the Javascript
-   * object and the return value).
-   */
-  static void PropertyGet( v8::Local<v8::String> propertyName,
-                              const v8::PropertyCallbackInfo<v8::Value>& info);
-
-  /**
-   * @brief Set the value for a property for JavaScript object than contains a Dali ItemFactory.
-   * E.g. Set( "data", itemData, JavaScript object that wraps a Dali ItemFactory)
-   * @param[in] propertyName property name
-   * @param[in] javaScriptValue javascript value to set, this is typically a number
-   * @param[in] info reference to PropertyCallbackInfo structure (contains the Javascript
-   * object).
-   */
-  static void PropertySet( v8::Local<v8::String> propertyName,
-                              v8::Local<v8::Value> javaScriptValue,
-                              const v8::PropertyCallbackInfo<v8::Value>& info);
-
-
-  /**
-   * @brief Extract a item factory wrapper from a javascript object
-   * @return item factory wrapper
-   */
-  static ItemFactoryWrapper* Unwrap( v8::Isolate* isolate, v8::Handle< v8::Object> obj);
-
-  Toolkit::ItemFactory& mItemFactory;
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_ITEM_FACTORY_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/controls/item-view-api.cpp b/plugins/dali-script-v8/src/controls/item-view-api.cpp
deleted file mode 100644 (file)
index 4852a61..0000000
+++ /dev/null
@@ -1,412 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "item-view-api.h"
-
-// EXTERNAL INCLUDES
-#include <fstream>
-#include <dali-toolkit/public-api/controls/scrollable/item-view/item-layout.h>
-#include <dali-toolkit/public-api/controls/scrollable/item-view/item-factory.h>
-#include <dali-toolkit/public-api/controls/scrollable/item-view/default-item-layout.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <actors/actor-wrapper.h>
-#include <controls/control-wrapper.h>
-#include <controls/item-factory-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace  // unanmed namespace
-{
-
-Toolkit::ItemView GetItemView( v8::Isolate* isolate, const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  HandleWrapper* handleWrapper = HandleWrapper::Unwrap( isolate, args.This() );
-  return Toolkit::ItemView::DownCast( handleWrapper->mHandle );
-}
-
-} //unanmed namespace
-
-/***************************************
- * ITEMVIEW API FUNCTIONS
- ***************************************/
-
-/**
- * Constructor
- *
- * @for ItemView
- * @constructor
- * @method ItemView
- * @return {Object} itemView
- */
-Toolkit::Control ItemViewApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  bool found( false );
-  Toolkit::ItemFactory& factory = ItemFactoryWrapper::GetItemFactoryFromParams( 1, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid ItemFactory parameter" );
-    return Toolkit::Control();
-  }
-  else
-  {
-    Toolkit::ItemView itemView = Toolkit::ItemView::New(factory);
-    ItemFactoryWrapper::SetItemView(factory, itemView);
-    return itemView;
-  }
-}
-
-/**
- * Query the number of layouts.
- *
- * @for ItemView
- * @method getLayoutCount
- * @return {Integer} The number of layouts.
- */
-void ItemViewApi::GetLayoutCount( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ItemView itemView = GetItemView( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, itemView.GetLayoutCount() ) );
-}
-
-/**
- * Add a layout
- *
- * @for ItemView
- * @method addLayout
- * @param {Integer} layout The layout to be added
- * @example
- *      // layout is one of the following
- *      dali.ITEM_LAYOUT_LIST
- *      dali.ITEM_LAYOUT_GRID
- *
- *      itemView.addLayout( dali.ITEM_LAYOUT_LIST );
- */
-void ItemViewApi::AddLayout( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ItemView itemView = GetItemView( isolate, args );
-
-  bool found( false );
-  int layout = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid layout parameter" );
-    return;
-  }
-
-  Toolkit::ItemLayoutPtr layoutPtr = Toolkit::DefaultItemLayout::New( static_cast<Toolkit::DefaultItemLayout::Type>(layout) );
-  itemView.AddLayout( *layoutPtr );
-}
-
-/**
- * Remove a layout.
- *
- * @for ItemView
- * @method removeLayout
- * @param {Integer} layoutIndex The index of the ItemView layouts which must be less than getLayoutCount().
- */
-void ItemViewApi::RemoveLayout( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ItemView itemView = GetItemView( isolate, args );
-
-  bool found( false );
-  int layoutIndex = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid index parameter" );
-    return;
-  }
-
-  itemView.RemoveLayout( layoutIndex );
-}
-
-/**
- * Activate one of the layouts. This will resize the ItemView and relayout actors within the ItemView.
- *
- * @for ItemView
- * @method activateLayout
- * @param {Integer} layoutIndex The index of the ItemView layout which must be less than getLayoutCount().
- * @param {Object} targetSize An array of 3 numbers for the target ItemView and layout size.
- * @param {Float} [durationSeconds] The time taken to relayout in seconds (0 by default for immediate).
- */
-void ItemViewApi::ActivateLayout( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ItemView itemView = GetItemView( isolate, args );
-
-  bool found( false );
-  int layoutIndex = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid layout index parameter" );
-    return;
-  }
-
-  found = false;
-  Vector3 targetSize = V8Utils::GetVector3Parameter( PARAMETER_1, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Vector3 targetSize size parameter missing" );
-    return;
-  }
-
-  found = false;
-  float durationSeconds = V8Utils::GetFloatParameter( PARAMETER_2, found, isolate, args, 0.0f ); // 0 by default for immediate activation
-
-  itemView.ActivateLayout( layoutIndex, targetSize, durationSeconds );
-}
-
-/**
- * Retrieve the target size of an item in the given layout.
- * This will return the default size for the layout unless overridden by calling setLayoutItemSize().
- *
- * @for ItemView
- * @method getItemSize
- * @param {Integer} layoutIndex The index of the ItemView layout which must be less than getLayoutCount().
- * @param {Integer} itemId The ID of an item in the layout.
- * @param {Object} targetLayoutSize An array of 3 numbers for the target ItemView and layout size.
- * @return {Object} The target size of the item {x, y, z}.
- */
-void ItemViewApi::GetItemSize( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ItemView itemView = GetItemView( isolate, args );
-
-  bool found( false );
-  int layoutIndex = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid layout index parameter" );
-    return;
-  }
-
-  found = false;
-  int itemId = V8Utils::GetIntegerParameter( PARAMETER_1, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid item ID parameter" );
-    return;
-  }
-
-  found = false;
-  Vector3 targetLayoutSize = V8Utils::GetVector3Parameter( PARAMETER_2, found, isolate, args );
-  if( found )
-  {
-    Toolkit::ItemLayoutPtr layoutPtr = itemView.GetLayout(layoutIndex);
-    Vector3 itemSize;
-    layoutPtr->GetItemSize( itemId, targetLayoutSize, itemSize );
-
-    v8::Local<v8::Object> itemSizeObject = v8::Object::New( isolate );
-
-    itemSizeObject->Set( v8::String::NewFromUtf8( isolate, "x" ), v8::Integer::New( isolate, itemSize.width ) );
-    itemSizeObject->Set( v8::String::NewFromUtf8( isolate, "y" ), v8::Integer::New( isolate, itemSize.height ) );
-    itemSizeObject->Set( v8::String::NewFromUtf8( isolate, "z" ), v8::Integer::New( isolate, itemSize.depth ) );
-
-    args.GetReturnValue().Set( itemSizeObject );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid Vector3 target size parameter" );
-  }
-}
-
-/**
- * Set the size of the item for the given layout which overrides the default item size for the layout.
- *
- * @for ItemView
- * @method setItemSize
- * @param {Integer} layoutIndex The index of the ItemView layout which must be less than getLayoutCount().
- * @param {Object} itemSize An array of 3 numbers for the size of the item.
- * @example
- *      itemView.setLayoutItemSize( 0, [100.0, 50.0, 0.0] );
- */
-void ItemViewApi::SetItemSize( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ItemView itemView = GetItemView( isolate, args );
-
-  bool found( false );
-  int layoutIndex = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid layout index parameter" );
-    return;
-  }
-
-  found = false;
-  Vector3 itemSize = V8Utils::GetVector3Parameter( PARAMETER_1, found, isolate, args );
-  if( found )
-  {
-    Toolkit::ItemLayoutPtr layoutPtr = itemView.GetLayout(layoutIndex);
-    layoutPtr->SetItemSize( itemSize );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid item size parameter" );
-  }
-}
-
-/**
- * Scroll the current layout to a particular item.
- * If calling this with zero second of duration immediately after calling activateLayout(),
- * it will not work unless the duration of relayout animation for activateLayout is also
- * set to zero.
- *
- * @for ItemView
- * @method scrollToItem
- * @param {Integer} itemId The ID of an item in the layout.
- * @param {Float} [durationSeconds] How long the scrolling takes in seconds (0 by default for instant scrolling to the particular item).
- */
-void ItemViewApi::ScrollToItem( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ItemView itemView = GetItemView( isolate, args );
-
-  bool found( false );
-  int itemId = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid item Id parameter" );
-    return;
-  }
-
-  found = false;
-  float durationSeconds = V8Utils::GetFloatParameter( PARAMETER_1, found, isolate, args, 0.0f ); // 0 by default for instant scrolling
-
-  itemView.ScrollToItem( itemId, durationSeconds );
-}
-
-/**
- * Given the Item ID, this returns the accompanying actor.
- *
- * @for ItemView
- * @method getItem
- * @param {Integer} itemId The Item ID of the actor required.
- * @return {Object} The Actor corresponding to the Item ID.
- */
-void ItemViewApi::GetItem( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ItemView itemView = GetItemView( isolate, args );
-
-  bool found( false );
-  int itemId = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 /* default */);
-  if( found )
-  {
-    found = false;
-    Actor actor = itemView.GetItem( itemId );
-    if( actor )
-    {
-      found = true;
-      // wrap the actor
-      v8::Handle < v8::Object > wrappedActor = ActorWrapper::WrapActor( isolate, actor );
-      args.GetReturnValue().Set( wrappedActor );
-    }
-  }
-
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid item ID" );
-    return;
-  }
-}
-
-/**
- * Returns the Item ID of the specified actor. The actor must be an item of ItemView.
- *
- * @for ItemView
- * @method getItemId
- * @param {Object} actor The actor whose Item ID is required.
- * @return {Integer} The Item ID of the item.
- */
-void ItemViewApi::GetItemId( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ItemView itemView = GetItemView( isolate, args );
-
-  bool found( false );
-  Actor actor = V8Utils::GetActorParameter( 0, found, isolate, args );
-  if( found )
-  {
-    args.GetReturnValue().Set( itemView.GetItemId(actor) );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid item actor parameter" );
-    return;
-  }
-}
-
-/**
- * Get the range of items that are currently in ItemView.
- *
- * @for ItemView
- * @method getItemsRange
- * @return {Object} The range of items in the item ID {begin, end}.
- */
-void ItemViewApi::GetItemsRange( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ItemView itemView = GetItemView( isolate, args );
-
-  Toolkit::ItemRange range(0, 0);
-  itemView.GetItemsRange(range);
-
-  v8::Local<v8::Object> itemRangeObject = v8::Object::New( isolate );
-
-  itemRangeObject->Set( v8::String::NewFromUtf8( isolate, "begin" ), v8::Integer::New( isolate, range.begin ) );
-  itemRangeObject->Set( v8::String::NewFromUtf8( isolate, "end" ), v8::Integer::New( isolate, range.end ) );
-
-  args.GetReturnValue().Set( itemRangeObject );
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/controls/item-view-api.h b/plugins/dali-script-v8/src/controls/item-view-api.h
deleted file mode 100644 (file)
index a3349fa..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-#ifndef DALI_V8PLUGIN_ITEM_VIEW_API_H
-#define DALI_V8PLUGIN_ITEM_VIEW_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali-toolkit/public-api/controls/scrollable/item-view/item-view.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace ItemViewApi
-{
-
-  /**
-   * constructor
-   */
-  Toolkit::Control New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * ItemView API. See item-view.h for description of functions
-   */
-  void GetLayoutCount( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void AddLayout( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void RemoveLayout( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void ActivateLayout( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void GetItemSize( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void SetItemSize( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void ScrollToItem( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void GetItem( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void GetItemId( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void GetItemsRange( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-}; // namespace ItemViewApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_ITEM_VIEW_API_H
diff --git a/plugins/dali-script-v8/src/controls/scroll-view-api.cpp b/plugins/dali-script-v8/src/controls/scroll-view-api.cpp
deleted file mode 100644 (file)
index 969fbf7..0000000
+++ /dev/null
@@ -1,477 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "scroll-view-api.h"
-
-// EXTERNAL INCLUDES
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <actors/actor-wrapper.h>
-#include <controls/control-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace  // unanmed namespace
-{
-
-Toolkit::ScrollView GetScrollView( v8::Isolate* isolate, const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  HandleWrapper* handleWrapper = HandleWrapper::Unwrap( isolate, args.This() );
-  return Toolkit::ScrollView::DownCast( handleWrapper->mHandle );
-}
-
-} //unanmed namespace
-
-/***************************************
- * SCROLLVIEW API FUNCTIONS
- ***************************************/
-
-/**
- * Constructor
- *
- * @for ScrollView
- * @constructor
- * @method ScrollView
- * @return {Object} scrollView
- */
-Toolkit::Control ScrollViewApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ScrollView scrollView = Toolkit::ScrollView::New();
-  return scrollView;
-}
-
-/**
- * Set the scroll mode of ScrollView.
- *
- * This defines whether scrolling is enabled horizontally or vertically, how
- * scrolling is snapped, and the boundary in which the scroll view can pan.
- *
- * When no specific scroll mode is set, scroll view can scroll to any position
- * both horizontally and vertically and no snapping is enabled.
- *
- * Example of setting the scroll boundary of scroll view in the X axis to
- * three pages (page size equals to the width of scroll view) and allowing
- * snapping between pages, and disabling scrolling in the Y axis.
- *
- * ```
- *  var scrollMode = {
- *                     xAxisScrollEnabled  : true,
- *                     xAxisSnapToInterval : scrollView.sizeWidth,
- *                     xAxisScrollBoundary : scrollView.sizeWidth * 3,
- *                     yAxisScrollEnabled  : false
- *                   }
- *
- *  scrollView.setScrollMode(scrollMode);
- * ```
- *
- * @for ScrollView
- * @method setScrollMode
- * @param {Object} scrollMode
- * @param {Boolean} scrollMode.xAxisScrollEnabled True if the content can be scrolled in X axis or false if not.
- * @param {Float} [scrollMode.xAxisSnapToInterval] When set, causes scroll view to snap to multiples of the value of the interval in the X axis while flicking. (by default no snapping)
- * @param {Float} [scrollMode.xAxisScrollBoundary] When set, causes scroll view unable to scroll beyond the value of the boundary in the X axis (by default no boundary)
- * @param {Boolean} scrollMode.yAxisScrollEnabled True if the content can be scrolled in Y axis or false if not.
- * @param {Float} [scrollMode.yAxisSnapToInterval] When set, causes scroll view to snap to multiples of the value of the interval in the Y axis while flicking. (by default no snapping)
- * @param {Float} [scrollMode.yAxisScrollBoundary] When set, causes scroll view unable to scroll beyond the value of the boundary in the Y axis (by default no boundary)
- */
-void ScrollViewApi::SetScrollMode( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ScrollView scrollView = GetScrollView( isolate, args );
-
-  v8::Local<v8::Value> scrollMode( args[0] );
-  if( !scrollMode->IsObject() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid scroll mode parameter" );
-    return;
-  }
-
-  v8::Local<v8::Object> scrollModeObj = scrollMode->ToObject();
-
-  Toolkit::RulerPtr rulerX, rulerY;
-
-  // Check the scroll mode in the X axis
-  bool xAxisScrollEnabled = true;
-  v8::Local<v8::Value> xAxisScrollEnabledValue= scrollModeObj->Get( v8::String::NewFromUtf8( isolate, "xAxisScrollEnabled" ) );
-  if( xAxisScrollEnabledValue->IsBoolean() )
-  {
-    xAxisScrollEnabled = xAxisScrollEnabledValue->ToBoolean()->Value();
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Missing xAxisScrollEnabled");
-    return;
-  }
-
-  if(!xAxisScrollEnabled)
-  {
-    // Default ruler and disabled
-    rulerX = new Toolkit::DefaultRuler();
-    rulerX->Disable();
-  }
-  else
-  {
-    v8::Local<v8::Value> xAxisSnapToIntervalValue= scrollModeObj->Get( v8::String::NewFromUtf8( isolate, "xAxisSnapToInterval" ) );
-    if( xAxisSnapToIntervalValue->IsNumber() )
-    {
-      // Fixed ruler and enabled
-      float xAxisSnapToInterval = xAxisSnapToIntervalValue->ToNumber()->Value();
-      rulerX = new Toolkit::FixedRuler(xAxisSnapToInterval);
-    }
-    else
-    {
-      // Default ruler and enabled
-      rulerX = new Toolkit::DefaultRuler();
-    }
-
-    v8::Local<v8::Value> xAxisScrollBoundaryValue= scrollModeObj->Get( v8::String::NewFromUtf8( isolate, "xAxisScrollBoundary" ) );
-    if( xAxisScrollBoundaryValue->IsNumber() )
-    {
-      // By default ruler domain is disabled unless set
-      float xAxisScrollBoundary = xAxisScrollBoundaryValue->ToNumber()->Value();
-      rulerX->SetDomain( Toolkit::RulerDomain( 0, xAxisScrollBoundary, true ) );
-    }
-  }
-
-  // Check the scroll mode in the Y axis
-  bool yAxisScrollEnabled = true;
-  v8::Local<v8::Value> yAxisScrollEnabledValue= scrollModeObj->Get( v8::String::NewFromUtf8( isolate, "yAxisScrollEnabled" ) );
-  if( yAxisScrollEnabledValue->IsBoolean() )
-  {
-    yAxisScrollEnabled = yAxisScrollEnabledValue->ToBoolean()->Value();
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Missing yAxisScrollEnabled");
-    return;
-  }
-
-  if(!yAxisScrollEnabled)
-  {
-    // Default ruler and disabled
-    rulerY = new Toolkit::DefaultRuler();
-    rulerY->Disable();
-  }
-  else
-  {
-    v8::Local<v8::Value> yAxisSnapToIntervalValue= scrollModeObj->Get( v8::String::NewFromUtf8( isolate, "yAxisSnapToInterval" ) );
-    if( yAxisSnapToIntervalValue->IsNumber() )
-    {
-      // Fixed ruler and enabled
-      float yAxisSnapToInterval = yAxisSnapToIntervalValue->ToNumber()->Value();
-      rulerY = new Toolkit::FixedRuler(yAxisSnapToInterval);
-    }
-    else
-    {
-      // Default ruler and enabled
-      rulerY = new Toolkit::DefaultRuler();
-    }
-
-    v8::Local<v8::Value> yAxisScrollBoundaryValue= scrollModeObj->Get( v8::String::NewFromUtf8( isolate, "yAxisScrollBoundary" ) );
-    if( yAxisScrollBoundaryValue->IsNumber() )
-    {
-      // By default ruler domain is disabled unless set
-      float yAxisScrollBoundary = yAxisScrollBoundaryValue->ToNumber()->Value();
-      rulerY->SetDomain( Toolkit::RulerDomain( 0, yAxisScrollBoundary, true ) );
-    }
-  }
-
-  scrollView.SetRulerX(rulerX);
-  scrollView.SetRulerY(rulerY);
-}
-
-/**
- * Retrieves current scroll page based on the defined snap interval being the
- * size of one page, and all pages laid out in a grid fashion, increasing from
- * left to right until the end of the scroll boundary. Pages start from 0 as the
- * first page.
- *
- * If no snap interval is defined, this API will return undefined value.
- *
- * @for ScrollView
- * @method getCurrentPage
- * @return {Integer} The index of current page in scroll view
- */
-void ScrollViewApi::GetCurrentPage( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ScrollView scrollView = GetScrollView( isolate, args );
-  args.GetReturnValue().Set( v8::Integer::New( isolate, scrollView.GetCurrentPage() ) );
-}
-
-/**
- * Scrolls the contents to the given position.
- *
- * Position 0,0 is the origin. Increasing X scrolls contents left, while
- * increasing Y scrolls contents up. If Rulers have been applied to the axes,
- * then the contents will scroll until reaching the scroll boundary.
- * Contents will not snap.
- *
- * The biasing parameters are provided such that in scenarios with 2 or 2x2 pages
- * in wrap mode, the application developer can decide whether to scroll left or
- * right to get to the target page.
- *
- * @for ScrollView
- * @method scrollToPosition
- * @param {Array} position The position to scroll to.
- * @param {Float} [durationSeconds] The duration of the scroll animation in seconds (default value is scrollView.scrollSnapDuration)
- * @param {Integer} [alphaFunction] The alpha function to use.
- * @param {Integer} [horizontalBias] Whether to bias scrolling to left or right (by default no bias).
- * @param {Integer} [verticalBias] Whether to bias scrolling to top or bottom (by default no bias).
- * @example
- *      // scroll direction bias is one of the following
- *      dali.DIRECTION_BIAS_NONE           // Don't bias scroll snap
- *      dali.DIRECTION_BIAS_LEFT           // Bias scroll snap to Left
- *      dali.DIRECTION_BIAS_RIGHT          // Bias scroll snap to Right
- *
- *      scrollView.scrollToPosition( [150.0, 100.0], 0.5, dali.ALPHA_FUNCTION_EASE_IN_OUT, dali.DIRECTION_BIAS_LEFT, dali.DIRECTION_BIAS_NONE );
- */
-void ScrollViewApi::ScrollToPosition( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ScrollView scrollView = GetScrollView( isolate, args );
-
-  bool found( false );
-  Vector2 position = V8Utils::GetVector2Parameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad position parameter" );
-    return;
-  }
-
-  float durationSeconds = V8Utils::GetFloatParameter( PARAMETER_1, found, isolate, args, scrollView.GetScrollSnapDuration() );
-
-  AlphaFunction alphaFunction = scrollView.GetScrollSnapAlphaFunction();
-
-  found = false;
-  int alpha = V8Utils::GetIntegerParameter( PARAMETER_2, found, isolate,  args, 0 );
-  if(found)
-  {
-    alphaFunction = static_cast<AlphaFunction::BuiltinFunction>(alpha);
-  }
-
-  Toolkit::DirectionBias horizontalBias = static_cast<Toolkit::DirectionBias>( V8Utils::GetIntegerParameter( PARAMETER_3, found, isolate, args, Toolkit::DirectionBiasNone ) );
-  Toolkit::DirectionBias verticalBias = static_cast<Toolkit::DirectionBias>( V8Utils::GetIntegerParameter( PARAMETER_4, found, isolate, args, Toolkit::DirectionBiasNone ) );
-
-  scrollView.ScrollTo( position, durationSeconds, alphaFunction, horizontalBias, verticalBias );
-}
-
-/**
- * Scrolls the contents to the page with the given index.
- *
- * This is based on assumption that the page index starts from 0 and the
- * position of each page is: [pageIndex * snapToInterval, 0].
- *
- * If no snap interval is defined, calling this API will cause unexpected
- * behaviour.
- *
- * The biasing parameter is provided such that in scenarios with 2 pages
- * in wrap mode, the application developer can decide whether to scroll
- * left or right to get to the target page.
- *
- * @for ScrollView
- * @method scrollToPage
- * @param {Integer} pageIndex The index of the page to scroll to.
- * @param {Float} [durationSeconds] The duration of the scroll animation in seconds (default value is scrollView.scrollSnapDuration)
- * @param {Integer} [bias] Whether to bias scrolling to left or right (by default no bias).
- * @example
- *      // scroll direction bias is one of the following
- *      dali.DIRECTION_BIAS_NONE           // Don't bias scroll snap
- *      dali.DIRECTION_BIAS_LEFT           // Bias scroll snap to Left
- *      dali.DIRECTION_BIAS_RIGHT          // Bias scroll snap to Right
- *
- *      scrollView.scrollToPage( 1, 0.5, dali.DIRECTION_BIAS_RIGHT );
- */
-void ScrollViewApi::ScrollToPage( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ScrollView scrollView = GetScrollView( isolate, args );
-
-  bool found( false );
-  int pageIndex = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad page index parameter" );
-    return;
-  }
-
-  float durationSeconds = V8Utils::GetFloatParameter( PARAMETER_1, found, isolate, args, scrollView.GetScrollSnapDuration() );
-  Toolkit::DirectionBias bias = static_cast<Toolkit::DirectionBias>( V8Utils::GetIntegerParameter( PARAMETER_2, found, isolate, args, Toolkit::DirectionBiasNone ) );
-
-  scrollView.ScrollTo( pageIndex, durationSeconds, bias );
-}
-
-/**
- * Scrolls the contents such that the given actor appears in the center of
- * the scroll view.
- *
- * The actor must be a direct child of scroll view.
- *
- * @for ScrollView
- * @method scrollToActor
- * @param {Object} actor The actor to scroll to.
- * @param {Float} [durationSeconds] The duration of the scroll animation in seconds (default value is scrollView.scrollSnapDuration)
- * @example
- *      scrollView.scrollToActor( childActor, 0.5 );
- */
-void ScrollViewApi::ScrollToActor( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ScrollView scrollView = GetScrollView( isolate, args );
-
-  bool found( false );
-  Actor actor = V8Utils::GetActorParameter( 0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid actor parameter" );
-    return;
-  }
-
-  float durationSeconds = V8Utils::GetFloatParameter( PARAMETER_1, found, isolate, args, scrollView.GetScrollSnapDuration() );
-
-  scrollView.ScrollTo( actor, durationSeconds );
-}
-
-/**
- * Scrolls the content to the nearest snap point as specified by the snap interval.
- * If already at snap points, it will not scroll.
- *
- * @for ScrollView
- * @method scrollToSnapInterval
- * @return {Boolean} True if snapping is needed or false if already at snap points
- * @example
- *      var success = scrollView.scrollToSnapInterval();
- */
-void ScrollViewApi::ScrollToSnapInterval( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ScrollView scrollView = GetScrollView( isolate, args );
-
-  args.GetReturnValue().Set( v8::Boolean::New( isolate, scrollView.ScrollToSnapPoint() ) );
-}
-
-/**
- * Set the alpha function of flick animation.
- *
- * @for ScrollView
- * @method setScrollFlickAlphaFunction
- * @param {Integer} alphaFunction The alpha function to use.
- * @example
- *      scrollView.setScrollFlickAlphaFunction( dali.ALPHA_FUNCTION_EASE_IN_OUT );
- */
-void ScrollViewApi::SetScrollFlickAlphaFunction( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ScrollView scrollView = GetScrollView( isolate, args );
-
-  bool found( false );
-  int alphaFunction = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate,  args, 0 );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid alpha function parameter" );
-    return;
-  }
-  else
-  {
-    scrollView.SetScrollFlickAlphaFunction( static_cast<AlphaFunction::BuiltinFunction>(alphaFunction) );
-  }
-}
-
-/**
- * Set the alpha function of snap animation.
- *
- * @for ScrollView
- * @method setScrollSnapAlphaFunction
- * @param {String} alphaFunction The alpha function to use.
- * @example
- *      scrollView.setScrollSnapAlphaFunction( dali.ALPHA_FUNCTION_EASE_IN_OUT );
- */
-void ScrollViewApi::SetScrollSnapAlphaFunction( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ScrollView scrollView = GetScrollView( isolate, args );
-
-  bool found( false );
-  int alphaFunction = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate,  args, 0 );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid alpha function parameter" );
-    return;
-  }
-  else
-  {
-    scrollView.SetScrollSnapAlphaFunction( static_cast<AlphaFunction::BuiltinFunction>(alphaFunction) );
-  }
-}
-
-/**
- * Set the alpha function of overshoot snap animation.
- *
- * @for ScrollView
- * @method setSnapOvershootAlphaFunction
- * @param {String} alphaFunction The alpha function to use.
- * @example
- *      scrollView.setSnapOvershootAlphaFunction( dali.ALPHA_FUNCTION_EASE_IN_OUT );
- */
-void ScrollViewApi::SetSnapOvershootAlphaFunction( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Toolkit::ScrollView scrollView = GetScrollView( isolate, args );
-
-  bool found( false );
-  int alphaFunction = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate,  args, 0 );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid alpha function parameter" );
-    return;
-  }
-  else
-  {
-    scrollView.SetSnapOvershootAlphaFunction( static_cast<AlphaFunction::BuiltinFunction>(alphaFunction) );
-  }
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/controls/scroll-view-api.h b/plugins/dali-script-v8/src/controls/scroll-view-api.h
deleted file mode 100644 (file)
index c3e0e50..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-#ifndef DALI_V8PLUGIN_SCROLL_VIEW_API_H
-#define DALI_V8PLUGIN_SCROLL_VIEW_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace ScrollViewApi
-{
-
-  /**
-   * constructor
-   */
-  Toolkit::Control New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * ScrollView API. See scroll-view.h for description of functions
-   */
-  void SetScrollMode( const v8::FunctionCallbackInfo< v8::Value >& args);
-  void GetCurrentPage( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void ScrollToPosition( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void ScrollToPage( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void ScrollToActor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void ScrollToSnapInterval( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetScrollFlickAlphaFunction( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetScrollSnapAlphaFunction( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetSnapOvershootAlphaFunction( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace ScrollViewApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_SCROLL_VIEW_API_H
diff --git a/plugins/dali-script-v8/src/dali-script-v8.cpp b/plugins/dali-script-v8/src/dali-script-v8.cpp
deleted file mode 100644 (file)
index b93b605..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-#include "dali-script-v8.h"
-
-// EXTERNAL INCLUDES
-#include <iostream>
-#include <fstream>
-#include <dali/integration-api/debug.h>
-
-// INTERNAL INCLUDES
-#include <dali-script-v8.h>
-#include <dali-wrapper.h>
-#include <utils/v8-utils.h>
-
-// The plugin factories
-extern "C" DALI_TOOLKIT_API Dali::Toolkit::ScriptPlugin* CreateScriptPlugin(void)
-{
-  return new Dali::V8Plugin::DaliScriptV8;
-}
-
-extern "C" DALI_TOOLKIT_API void DestroyScriptPlugin(Dali::Toolkit::ScriptPlugin* plugin)
-{
-  delete plugin;
-}
-
-namespace Dali
-{
-namespace V8Plugin
-{
-
-DaliScriptV8::DaliScriptV8()
-{
-}
-
-DaliScriptV8::~DaliScriptV8()
-{
-  DaliWrapper::Get().Shutdown();
-}
-
-void DaliScriptV8::SetFlags(const std::string& s)
-{
-  DaliWrapper::Get().SetFlagsFromString(s);
-}
-
-bool DaliScriptV8::ExecuteBuffer(const std::string& buffer, const std::string& filename)
-{
-  return DaliWrapper::Get().ExecuteBuffer(buffer, filename);
-}
-
-bool DaliScriptV8::ExecuteFile(const std::string& filename)
-{
-  return DaliWrapper::Get().ExecuteFile( filename );
-}
-
-}  // namespace V8Plugin
-
-}  // namespace Dali
-
diff --git a/plugins/dali-script-v8/src/dali-script-v8.h b/plugins/dali-script-v8/src/dali-script-v8.h
deleted file mode 100644 (file)
index 1a9d773..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-#ifndef DALI_V8PLUGIN_SCRIPT_H
-#define DALI_V8PLUGIN_SCRIPT_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <dali-toolkit/devel-api/scripting/script-plugin.h>
-#include <dali-toolkit/public-api/dali-toolkit-common.h>
-
-namespace Dali DALI_TOOLKIT_API
-{
-
-namespace V8Plugin
-{
-
-/**
- * Executes JavaScript V8 scripts
- */
-class  DaliScriptV8 : public Dali::Toolkit::ScriptPlugin
-{
-public: // Construction & Destruction
-
-  /**
-   * Constructor
-   */
-  DaliScriptV8();
-
-  /**
-   * Destructor
-   */
-  virtual ~DaliScriptV8();
-
-public: // ScriptV8Plugin overrides
-
-  /**
-   * @copydoc Dali::Toolkit::ScriptPlugin::SetFlags()
-   */
-  virtual void SetFlags(const std::string& s);
-
-  /**
-   * @copydoc Dali::Toolkit::ScriptPlugin::ExecuteBuffer()
-   */
-  virtual bool ExecuteBuffer(const std::string& buffer, const std::string& filename);
-
-  /**
-   * @copydoc Dali::Toolkit::ScriptPlugin::ExecuteFile()
-   */
-  virtual bool ExecuteFile(const std::string& fileName);
-};
-
-}  // namespace V8Plugin
-
-}  // namespace Dali
-
-#endif // DALI_V8PLUGIN_SCRIPT_H
diff --git a/plugins/dali-script-v8/src/dali-wrapper.cpp b/plugins/dali-script-v8/src/dali-wrapper.cpp
deleted file mode 100644 (file)
index ef9d285..0000000
+++ /dev/null
@@ -1,319 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "dali-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <object/property-value-wrapper.h>
-#include <dali/integration-api/debug.h>
-#include <actors/actor-wrapper.h>
-#include <controls/control-wrapper.h>
-#include <stage/stage-wrapper.h>
-#include <image/image-wrapper.h>
-#include <animation/linear-constrainer-wrapper.h>
-#include <animation/path-constrainer-wrapper.h>
-#include <animation/path-wrapper.h>
-#include <animation/animation-wrapper.h>
-#include <controls/item-factory-wrapper.h>
-#include <events/pan-gesture-detector-wrapper.h>
-#include <object/property-buffer-wrapper.h>
-#include <rendering/geometry-wrapper.h>
-#include <rendering/texture-set-wrapper.h>
-#include <rendering/renderer-wrapper.h>
-#include <rendering/shader-wrapper.h>
-#include <rendering/sampler-wrapper.h>
-#include <shared/object-template-helper.h>
-#include <constants/constants-wrapper.h>
-#include <toolkit/builder/builder-wrapper.h>
-#include <toolkit/focus-manager/keyboard-focus-manager-wrapper.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace
-{
-/**
- * This string defines how the global DALi object/namespace is used from JavaScript
- * E.g. new dali.Image or dali.stage.add( )
- */
-const char* const DALI_API_NAME = "dali";
-
-/**
- * lookup table for setting up function calls for creating Dali objects
- * e.g.  new dali.TextActor()
- */
-const ApiFunction ConstructorFunctionTable[]=
-{
-    { "Rotation",           PropertyValueWrapper::NewRotation},
-    { "Matrix",             PropertyValueWrapper::NewMatrix},
-    { "Path",               PathWrapper::NewPath },
-    { "PathConstrainer",    PathConstrainerWrapper::NewPathConstrainer},
-    { "LinearConstrainer",  LinearConstrainerWrapper::NewLinearConstrainer},
-    { "Actor",              ActorWrapper::NewActor },
-    { "CameraActor",        ActorWrapper::NewActor },
-    { "Layer",              ActorWrapper::NewActor },
-    { "Control",            ControlWrapper::NewControl },
-    { "ResourceImage",      ImageWrapper::NewImage },
-    { "BufferImage",        ImageWrapper::NewImage },
-    { "FrameBufferImage",   ImageWrapper::NewImage },
-    { "Animation",          AnimationWrapper::NewAnimation},
-    { "ItemFactory",        ItemFactoryWrapper::NewItemFactory},
-    { "Shader",             ShaderWrapper::NewShader},
-    { "Sampler",            SamplerWrapper::NewSampler},
-    { "TextureSet",         TextureSetWrapper::NewTextureSet},
-    { "Geometry",           GeometryWrapper::NewGeometry},
-    { "Renderer",           RendererWrapper::NewRenderer},
-    { "PropertyBuffer",     PropertyBufferWrapper::NewPropertyBuffer},
-    { "Builder",            BuilderWrapper::NewBuilder},
-    { "PanGestureDetector", PanGestureDetectorWrapper::NewPanGestureDetector},
-
-};
-
-const unsigned int PropertyFunctionTableCount = sizeof(ConstructorFunctionTable)/sizeof(ConstructorFunctionTable[0]);
-
-void FatalErrorCallback(const char* location, const char* message)
-{
-  DALI_LOG_ERROR("%s, %s \n",location,message);
-  DALI_ASSERT_ALWAYS( 0 && "V8 fatal error");
-}
-
-#if defined(DEBUG_ENABLED)
-// default to verbose logging
-Integration::Log::Filter* gLogExecuteFilter( Integration::Log::Filter::New(Debug::Verbose, false, "EXECUTE_JAVASCRIPT") );
-#endif
-} // un-named name space
-
-
-
-bool DaliWrapper::mInstanceCreated = false;
-DaliWrapper* DaliWrapper::mWrapper = NULL;
-
-DaliWrapper::DaliWrapper( RunMode runMode, v8::Isolate* isolate )
-:mIsolate( isolate ),
- mRunMode(runMode)
-{
-}
-
-DaliWrapper::~DaliWrapper()
-{
-  mInstanceCreated = false;
-}
-
-DaliWrapper& DaliWrapper::Get()
-{
-  if( !mInstanceCreated )
-  {
-    mWrapper = new DaliWrapper( RUNNING_STANDALONE, NULL );
-
-    mInstanceCreated = true;
-
-    mWrapper->InitializeStandAlone();
-
-  }
-  return *mWrapper;
-}
-
-v8::Local<v8::Object> DaliWrapper::CreateWrapperForNodeJS( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate);
-
-  mInstanceCreated = true;
-
-  mWrapper = new DaliWrapper( RUNNING_IN_NODE_JS, isolate );
-
-  v8::Local<v8::Object> dali = mWrapper->CreateDaliObject();
-
-  // As we running inside node, we already have an isolate and context
-  return handleScope.Escape( dali );
-}
-
-v8::Local<v8::Object>  DaliWrapper::CreateDaliObject()
-{
-  v8::EscapableHandleScope handleScope( mIsolate  );
-
-  // Create dali object used for creating objects, and accessing constant values
-  // e.g. var x =  new dali.Actor(), or var col = dali.COLOR_RED;
-
-  v8::Local<v8::ObjectTemplate> daliObjectTemplate = NewDaliObjectTemplate( mIsolate );
-
-  // add dali.staqe
-  v8::Local<v8::Object> stageObject = StageWrapper::WrapStage( mIsolate, Stage::GetCurrent() );
-  daliObjectTemplate->Set( v8::String::NewFromUtf8( mIsolate, "stage") , stageObject );
-
-  v8::Local<v8::Object> keyboardObject = KeyboardFocusManagerWrapper::WrapKeyboardFocusManager( mIsolate,Toolkit::KeyboardFocusManager::Get() );
-  daliObjectTemplate->Set( v8::String::NewFromUtf8( mIsolate, "keyboardFocusManager") , keyboardObject );
-
-
-  //create an instance of the template
-  v8::Local<v8::Object> daliObject = daliObjectTemplate->NewInstance();
-
-  ConstantsWrapper::AddDaliConstants( mIsolate, daliObject);
-
-  daliObject->Set( v8::String::NewFromUtf8( mIsolate,  "V8_VERSION") ,v8::String::NewFromUtf8( mIsolate, v8::V8::GetVersion() ));
-
-  return handleScope.Escape( daliObject  );
-}
-
-
-void DaliWrapper::SetFlagsFromString(const std::string &flags)
-{
-  v8::V8::SetFlagsFromString(flags.c_str(), flags.size());
-}
-
-void DaliWrapper::Shutdown()
-{
-  // if we're running inside node then we don't have ownership of the context
-  if( mRunMode == RUNNING_IN_NODE_JS )
-  {
-    return;
-  }
-
-  DALI_LOG_WARNING("Destroying V8 DALi context\n");
-
-  if( !mContext.IsEmpty())
-  {
-    v8::HandleScope handleScope( mIsolate );
-    v8::Local<v8::Context> context = v8::Local<v8::Context>::New(mIsolate, mContext);
-    context->Exit();   // exit the context
-    mContext.Reset();  // destroys the context
-  }
-}
-
-bool DaliWrapper::ExecuteBuffer(const std::string &sourceCode, const std::string &sourceFileName)
-{
-  return mModuleLoader.ExecuteScript( mIsolate,  sourceCode, sourceFileName );
-}
-
-bool DaliWrapper::ExecuteFile( const std::string& sourceFileName )
-{
-  DALI_LOG_INFO( gLogExecuteFilter, Debug::Verbose, "Executing source file %s \n",sourceFileName.c_str() );
-
-  return mModuleLoader.ExecuteScriptFromFile( mIsolate,  sourceFileName );
-}
-
-GarbageCollectorInterface& DaliWrapper::GetDaliGarbageCollector()
-{
-  return mGarbageCollector;
-}
-
-void DaliWrapper::ApplyGlobalObjectsToContext( v8::Local<v8::Context> context )
-{
-  v8::HandleScope handleScope( mIsolate );
-
-  // Add global objects ( functions/ values ) e.g. log function
-  // create a console.log and console.error functions
-  v8::Local<v8::ObjectTemplate> consoleObjectTemplate = v8::ObjectTemplate::New( mIsolate );
-  consoleObjectTemplate->Set( v8::String::NewFromUtf8( mIsolate, "log"),   v8::FunctionTemplate::New( mIsolate, V8Utils::Log));
-  consoleObjectTemplate->Set( v8::String::NewFromUtf8( mIsolate, "error"), v8::FunctionTemplate::New( mIsolate, V8Utils::LogError));
-
-  context->Global()->Set( v8::String::NewFromUtf8( mIsolate, "console"), consoleObjectTemplate->NewInstance() );
-
-  // add require functionality
-  context->Global()->Set( v8::String::NewFromUtf8( mIsolate, "require"), v8::FunctionTemplate::New( mIsolate, DaliWrapper::Require)->GetFunction());
-
-  // Create the Dali object
-  // @todo consider forcing developers to perform require('dali') if we want to avoid polluting the global namespace
-  v8::Local<v8::Object> daliObject = CreateDaliObject();
-
-  // allow developers to require('dali'); // this is to maintain compatibility with node.js where dali is not part of the global namespace
-  mModuleLoader.StorePreBuiltModule( mIsolate, daliObject, DALI_API_NAME );
-
-  context->Global()->Set( v8::String::NewFromUtf8( mIsolate, DALI_API_NAME),daliObject );
-
-}
-
-void DaliWrapper::InitializeStandAlone()
-{
-  if( !mIsolate )
-  {
-    v8::V8::InitializeICU();
-
-    v8::V8::Initialize();
-
-    // default isolate removed from V8 version 3.27.1 and beyond.
-    mIsolate = v8::Isolate::New();
-
-    mIsolate->Enter();
-
-    v8::V8::SetFatalErrorHandler( FatalErrorCallback );
-  }
-
-  // if context is null, create it and add dali object to the global object.
-  if( mContext.IsEmpty())
-  {
-     v8::HandleScope handleScope( mIsolate );
-
-     // create a new context.
-     // Isolate = isolated copy of the V8 including a heap manager, a garbage collector
-     // Only 1 thread can access a single Isolate at a given time. However, multiple Isolates can be run in parallel.
-     // Context = multiple contexts can exist in a given Isolate, and share data between contexts
-     v8::Local<v8::Context> context  = v8::Context::New( mIsolate );
-
-     context->Enter();
-
-     // Apply global objects like dali and console to the context
-     ApplyGlobalObjectsToContext(context);
-
-     mContext.Reset( mIsolate, context);
-  }
-
-  DALI_LOG_INFO( gLogExecuteFilter, Debug::Verbose, "V8 Library %s loaded \n", v8::V8::GetVersion() );
-}
-
-
-v8::Handle<v8::ObjectTemplate> DaliWrapper::NewDaliObjectTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  // create the template
-  v8::Local< v8::ObjectTemplate > objTemplate = v8::ObjectTemplate::New( isolate );
-
-  // Add some value properties ( a property can be a primitive value, an object or a function).
-  objTemplate->Set( v8::String::NewFromUtf8( isolate, "BUILD"),
-                    v8::String::NewFromUtf8( isolate, "Dali binary built on:" __DATE__ ", at " __TIME__));
-
-#ifdef DALI_DATA_READ_ONLY_DIR
-  // add the data data directory,
-  objTemplate->Set( v8::String::NewFromUtf8( isolate, "DALI_DATA_DIRECTORY"),
-                    v8::String::NewFromUtf8( isolate, DALI_DATA_READ_ONLY_DIR));
-#endif
-  // add our constructor functions
-  ObjectTemplateHelper::InstallFunctions( isolate,
-                                          objTemplate,
-                                          ConstructorFunctionTable,
-                                          PropertyFunctionTableCount,
-                                          ObjectTemplateHelper::CONSTRUCTOR_FUNCTIONS);
-
-  return handleScope.Escape( objTemplate );
-}
-
-void DaliWrapper::Require(const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  DaliWrapper& wrapper( DaliWrapper::Get() );
-  wrapper.mModuleLoader.Require( args );
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/dali-wrapper.h b/plugins/dali-script-v8/src/dali-wrapper.h
deleted file mode 100644 (file)
index e3e5e91..0000000
+++ /dev/null
@@ -1,189 +0,0 @@
-#ifndef DALI_V8PLUGIN_DALI_WRAP_H
-#define DALI_V8PLUGIN_DALI_WRAP_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-
-// INTERNAL INCLUDES
-#include <dali-toolkit/public-api/dali-toolkit-common.h>
-#include <garbage-collector/garbage-collector.h>
-
-#include <module-loader/module-loader.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * Sets up JavaScript context and environment and allows execution of JavaScript in the context
- *
- *
- * Exceptions
- * ----------
- *
- * Execptions can be raised by calling DALI_SCRIPT_EXCEPTION()
- *
- * Expections break JavaScript execution with a printout but do not cause a c++ exception.
- * So always return from the calling function before attempting to run any further V8 code.
- *
- * Coding Style
- * ------------
- *
- *  Uses Tizen Web API coding style, which appears to be the same as this:
- *
- *  https://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml
- *
- * "In general, use
- *
- * functionNamesLikeThis,
- * variableNamesLikeThis,
- * ClassNamesLikeThis,
- * ConstructorsLikeThis,
- * EnumNamesLikeThis,
- * methodNamesLikeThis,
- * CONSTANT_VALUES_LIKE_THIS,
- * foo.namespaceNamesLikeThis.bar,
- * filenameslikethis.js. "
- */
-class DALI_INTERNAL DaliWrapper
-{
-
-public:
-
-  /**
-   * @brief whether the wrapper is running in standalone using V8,
-   * or inside Node.JS using V8
-   */
-  enum RunMode
-  {
-    RUNNING_STANDALONE,
-    RUNNING_IN_NODE_JS
-  };
-
-  /**
-   * @brief Constructor
-   * @param[in] runMode whether the wrapper is running standalone or inside Node.JS
-   * @param[in] isolate v8 isolate ( can be null if running standalone )
-   */
-  DaliWrapper( RunMode runMode, v8::Isolate* isolate );
-
-  /**
-   * non virtual destructor, not intended as a base class
-   */
-  ~DaliWrapper();
-
-  /**
-   * Gets the DaliWrapper singleton.
-   *
-   * @return the wrapper
-   */
-  static DaliWrapper& Get();
-
-  /**
-   * Intialize DaliWrapper for running inside NodeJS
-   */
-  static v8::Local<v8::Object> CreateWrapperForNodeJS( v8::Isolate* isolate);
-
-
-  /**
-   * Set V8 engine configuration flags
-   *
-   * @param[in] flags Configruation flags (See v8 documentation)
-   */
-  void SetFlagsFromString(const std::string& flags);
-
-  /**
-   * Delete the current V8 context
-   */
-  void Shutdown();
-
-  /**
-   * Excute the buffer in the v8 context
-   *
-   * @param[in] sourceCode The buffer containing javascript to execute
-   * @param[in] sourceFileName Filename associated with the buffer (for error tracing)
-   * @return true on success, false on failure
-   */
-  bool ExecuteBuffer(const std::string &sourceCode, const std::string &sourceFileName);
-
-
-  /**
-   * Excute the buffer in the v8 context
-   *
-   * @param[in] sourceFileName Filename associated with the buffer (for error tracing)
-   * @return true on success, false on failure
-   */
-  bool ExecuteFile( const std::string& sourceFileName);
-
-
-  /**
-   * Get DALi's own garbage collector
-   * @return garbage collector interface
-   */
-  GarbageCollectorInterface& GetDaliGarbageCollector();
-
-private:
-
-  /**
-   * @brief Apply global objects like console.log and require() to the context
-   */
-  void ApplyGlobalObjectsToContext( v8::Local<v8::Context> context );
-
-  /**
-   * @brief Initialize DaliWrapper for running standalone
-   * Creates a new isolate
-   *
-   */
-  void InitializeStandAlone();
-
-  /**
-   * @brief create dali namespace/object
-   */
-  v8::Local<v8::Object> CreateDaliObject();
-
-  /**
-   * Create Dali ObjectTemplate
-   * @return the Dali ObjectTemplate
-   */
-  static v8::Handle<v8::ObjectTemplate> NewDaliObjectTemplate( v8::Isolate* isolate );
-
-  /**
-   * Called when require keyword is found in a script
-   */
-  static void Require(const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  static bool mInstanceCreated;                                 ///< whether an instance has been created
-  static DaliWrapper* mWrapper;                                 ///< static pointer to the wrapper
-
-  GarbageCollector mGarbageCollector;                           ///< DALi garbage collector
-  ModuleLoader mModuleLoader;                                   ///< Module loader
-  v8::Persistent<v8::Context> mContext;                         ///< A sandboxed execution context with its own set of built-in objects and functions.
-  v8::Isolate* mIsolate;                                        ///< represents an isolated instance of the V8 engine.
-  RunMode mRunMode;
-};
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_DALI_WRAP_H
diff --git a/plugins/dali-script-v8/src/events/event-object-generator.cpp b/plugins/dali-script-v8/src/events/event-object-generator.cpp
deleted file mode 100644 (file)
index e9d8955..0000000
+++ /dev/null
@@ -1,489 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "event-object-generator.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <actors/actor-wrapper.h>
-#include <object/property-value-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace
-{
-
-struct TouchDataPointState
-{
-  PointState::Type state;
-  const char* name;
-};
-
-const TouchDataPointState TouchDataPointStateLookup[]=
-{
-    { PointState::DOWN,         "DOWN"        },
-    { PointState::UP,           "UP"          },
-    { PointState::MOTION,       "MOTION"      },
-    { PointState::LEAVE,        "LEAVE"       },
-    { PointState::STATIONARY,   "STATIONARY"  },
-    { PointState::INTERRUPTED,  "INTERRUPT"   },
-    { PointState::STARTED,      "STARTED"     },
-    { PointState::FINISHED,     "FINISHED"    },
-};
-
-const unsigned int TouchDataPointStateLookupCount = sizeof(TouchDataPointStateLookup)/sizeof(TouchDataPointStateLookup[0]);
-
-struct TouchPointState
-{
-  TouchPoint::State state;
-  const char* name;
-};
-
-const TouchPointState PointStateLookup[]=
-{
-    { TouchPoint::Down,         "down"        },       /**< Screen touched */
-    { TouchPoint::Up,           "up"          },       /**< Touch stopped */
-    { TouchPoint::Motion,       "motion"      },       /**< Touch stopped */
-    { TouchPoint::Leave,        "leave"       },       /**< Touch stopped */
-    { TouchPoint::Stationary,   "stationary"  },       /**< Touch stopped */
-    { TouchPoint::Interrupted,  "interrupt"   },       /**< Touch stopped */
-    { TouchPoint::Started,      "started"     },       /**< Touch or hover started */
-    { TouchPoint::Finished,     "finished"    },       /**< Touch or hover finished */
-};
-
-const unsigned int PointStateLookupCount = sizeof(PointStateLookup)/sizeof(PointStateLookup[0]);
-
-struct GestureState
-{
-  Gesture::State state;
-  const char* name;
-};
-
-const GestureState GestureStateLookup[]=
-{
-    { Gesture::Clear,      "clear"        },       /**< No state associated */
-    { Gesture::Started,    "started"      },       /**< Gesture started */
-    { Gesture::Continuing, "continuing"   },       /**< Gesture continuing */
-    { Gesture::Finished,   "finished"     },       /**< Gesture finished */
-    { Gesture::Cancelled,  "cancelled"    },       /**< Gesture cancelled */
-    { Gesture::Possible,   "possible"     },       /**< Gesture is possible */
-};
-
-const unsigned int GestureStateLookupCount = sizeof(GestureStateLookup)/sizeof(GestureStateLookup[0]);
-
-const char* GetTouchDataPointStateName( PointState::Type state )
-{
-  // could use the enum as index, but dali-core may change, so for now just do a lookup
-  for( unsigned int i = 0; i < TouchDataPointStateLookupCount; i++ )
-  {
-    if( TouchDataPointStateLookup[i].state == state )
-    {
-      return TouchDataPointStateLookup[i].name;
-    }
-  }
-  return "error point state not found";
-}
-
-const char* GetTouchPointStateName( TouchPoint::State state )
-{
-  // could use the enum as index, but dali-core may change, so for now just do a lookup
-  for( unsigned int i = 0; i < PointStateLookupCount; i++ )
-  {
-    if( PointStateLookup[i].state == state )
-    {
-      return PointStateLookup[i].name;
-    }
-  }
-  return "error point state not found";
-}
-
-const char* GetGestureStateName( Gesture::State state )
-{
-  // could use the enum as index, but dali-core may change, so for now just do a lookup
-  for( unsigned int i = 0; i < GestureStateLookupCount; i++ )
-  {
-    if( GestureStateLookup[i].state == state )
-    {
-      return GestureStateLookup[i].name;
-    }
-  }
-  return "error gesture state not found";
-}
-
-// create a point object, x,y
-v8::Local<v8::Object> CreateTouchPoint( v8::Isolate* isolate, const TouchPoint& touchPoint )
-{
-  /*
-   * touch point object
-   *
-   *   { "deviceId",  int }  Each touch point has a unique device ID
-   *   { "state",   string } touch state ="Down,Up,Motion,Leave,Stationary, Interrupted }
-   *   { "hitActor", actor } actor that was hit ( wrapped dali object)
-   *   { "local",  {x,y} } co-ordinates of top left of hit actor
-   *   { "screen", {x,y} } co-ordinates of top left of hit actor
-   */
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> pointObject = v8::Object::New( isolate );
-
-  // set device id
-  pointObject->Set( v8::String::NewFromUtf8( isolate, "deviceId"), v8::Integer::New( isolate, touchPoint.deviceId ));
-
-  // set state
-  pointObject->Set( v8::String::NewFromUtf8( isolate, "state"), v8::String::NewFromUtf8( isolate, GetTouchPointStateName(touchPoint.state)));
-
-  if(touchPoint.hitActor)
-  {
-    // set the hit actor
-    pointObject->Set( v8::String::NewFromUtf8( isolate, "hitActor"), ActorWrapper::WrapActor(isolate, touchPoint.hitActor ));
-  }
-
-  // Think about changing these Vector 2 from wrapped objects to JavaScript objects...
-
-  // Set the local co-ordinates
-  v8::Local<v8::Object> localPointObject = v8::Object::New( isolate );
-  localPointObject->Set( v8::String::NewFromUtf8( isolate, "x"),v8::Integer::New( isolate, touchPoint.local.x) );
-  localPointObject->Set( v8::String::NewFromUtf8( isolate, "y"),v8::Integer::New( isolate, touchPoint.local.y) );
-  pointObject->Set( v8::String::NewFromUtf8( isolate, "local"),  localPointObject);
-
-
-  // set the screen co-ordinates
-  v8::Local<v8::Object> screenPointObject = v8::Object::New( isolate );
-  screenPointObject->Set( v8::String::NewFromUtf8( isolate, "x"),v8::Integer::New( isolate, touchPoint.screen.x) );
-  screenPointObject->Set( v8::String::NewFromUtf8( isolate, "y"),v8::Integer::New( isolate, touchPoint.screen.y) );
-  pointObject->Set( v8::String::NewFromUtf8( isolate, "screen"), screenPointObject );
-
-
-  return handleScope.Escape( pointObject );
-}
-
-} // un-named namespace
-
-
-v8::Handle<v8::Object> EventObjectGenerator::CreateTouchData( v8::Isolate* isolate, const TouchData& touch )
-{
-  // we are creating a touch event object that looks like this
-  //
-  //  event.pointCount = points touched
-  //  event.time       = The time (in ms) that the touch event occurred.
-  //  event.point[]    = array of Points
-  //
-  // A Point =
-  //   { "deviceId",  int }  Each touch point has a unique device ID
-  //   { "state",   string } touch state ="Down,Up,Motion,Leave,Stationary, Interrupted }
-  //   { "sourceActor", actor }  the actor that is emitting the callback (the actor that is hit maybe a child of it)
-  //   { "hitActor", actor } actor that was hit
-  //   { "local",  {x,y} } co-ordinates of top left of hit actor
-  //   { "screen", {x,y} } co-ordinates of top left of hit actor
-  //   { "radius", float } radius of the press point (average of both the horizontal & vertical radii)
-  //   { "ellipseRadius", {x,y} } both the horizontal and the vertical radii of the press point
-  //   { "pressure", float } the touch pressure
-  //   { "angle", float } angle of the press point relative to the Y-Axis
-  //
-
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> touchObject = v8::Object::New( isolate );
-
-  // Set the pointCount
-  touchObject->Set( v8::String::NewFromUtf8( isolate, "pointCount" ), v8::Integer::New( isolate, touch.GetPointCount() ) );
-
-  // Set the time
-  touchObject->Set( v8::String::NewFromUtf8( isolate, "time" ), v8::Number::New( isolate, touch.GetTime() ) );
-
-  // Set the emitting actor
-  // touchObject->Set( v8::String::NewFromUtf8( isolate, "sourceActor" ), ActorWrapper::WrapActor(isolate, emittingActor));
-
-  // Create the array of touch points
-  v8::Local < v8::Array > pointArrayObject = v8::Array::New( isolate, touch.GetPointCount() );
-  for( unsigned int i = 0 ; i < touch.GetPointCount() ; ++i )
-  {
-    v8::Local<v8::Object> pointObject = v8::Object::New( isolate );
-
-    // set device id
-    pointObject->Set( v8::String::NewFromUtf8( isolate, "deviceId" ), v8::Integer::New( isolate, touch.GetDeviceId( i ) ) );
-
-    // set state
-    pointObject->Set( v8::String::NewFromUtf8( isolate, "state" ), v8::String::NewFromUtf8( isolate, GetTouchDataPointStateName( touch.GetState( i ) ) ) );
-
-    Actor hitActor = touch.GetHitActor( i );
-    if( hitActor )
-    {
-      // set the hit actor
-      pointObject->Set( v8::String::NewFromUtf8( isolate, "hitActor" ), ActorWrapper::WrapActor( isolate, hitActor ) );
-    }
-
-    // set the local co-ordinates
-    const Vector2& local = touch.GetLocalPosition( i );
-    v8::Local<v8::Object> localPointObject = v8::Object::New( isolate );
-    localPointObject->Set( v8::String::NewFromUtf8( isolate, "x" ), v8::Integer::New( isolate, local.x ) );
-    localPointObject->Set( v8::String::NewFromUtf8( isolate, "y" ), v8::Integer::New( isolate, local.y ) );
-    pointObject->Set( v8::String::NewFromUtf8( isolate, "local" ),  localPointObject );
-
-    // set the screen co-ordinates
-    const Vector2& screen = touch.GetScreenPosition( i );
-    v8::Local<v8::Object> screenPointObject = v8::Object::New( isolate );
-    screenPointObject->Set( v8::String::NewFromUtf8( isolate, "x" ), v8::Integer::New( isolate, screen.x ) );
-    screenPointObject->Set( v8::String::NewFromUtf8( isolate, "y" ), v8::Integer::New( isolate, screen.y ) );
-    pointObject->Set( v8::String::NewFromUtf8( isolate, "screen" ), screenPointObject );
-
-    // set the radius
-    pointObject->Set( v8::String::NewFromUtf8( isolate, "radius" ), v8::Integer::New( isolate, touch.GetRadius( i ) ) );
-
-    // set the ellipse Radius
-    const Vector2& ellipse = touch.GetEllipseRadius( i );
-    v8::Local<v8::Object> ellipseObject = v8::Object::New( isolate );
-    ellipseObject->Set( v8::String::NewFromUtf8( isolate, "x" ), v8::Integer::New( isolate, ellipse.x ) );
-    ellipseObject->Set( v8::String::NewFromUtf8( isolate, "y" ), v8::Integer::New( isolate, ellipse.y ) );
-    pointObject->Set( v8::String::NewFromUtf8( isolate, "ellipseRadius" ),  ellipseObject );
-
-    // set the pressure
-    pointObject->Set( v8::String::NewFromUtf8( isolate, "pressure" ), v8::Integer::New( isolate, touch.GetPressure( i ) ) );
-
-    // set the angle
-    pointObject->Set( v8::String::NewFromUtf8( isolate, "angle" ), v8::Integer::New( isolate, touch.GetAngle( i ).degree ) );
-
-    // add the point
-    pointArrayObject->Set( v8::Number::New( isolate, i ), pointObject  );
-  }
-
-  // set the array
-  touchObject->Set( v8::String::NewFromUtf8( isolate, "points" ), pointArrayObject );
-
-  return handleScope.Escape( touchObject );
-}
-
-v8::Handle<v8::Object> EventObjectGenerator::CreateHoverEvent( v8::Isolate* isolate, const HoverEvent& hoverEvent)
-{
-  // we are creating a hover event object that looks like this
-  //
-  //  event.pointCount = points hovered
-  //  event.time       = The time (in ms) that the hover event occurred.
-  //  event.point[]    = array of TouchPoints
-  //
-  // A TouchPoint =
-  //   { "deviceId",  int }  Each touch point has a unique device ID
-  //   { "state",   string } touch state ="Down,Up,Motion,Leave,Stationary, Interrupted }
-  //   { "sourceActor", actor }  the actor that is emitting the callback (the actor that is hit maybe a child of it)
-  //   { "hitActor", actor } actor that was hit
-  //   { "local",  {x,y} } co-ordinates of top left of hit actor
-  //   { "screen", {x,y} } co-ordinates of top left of hit actor
-  //
-
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> hoverObject = v8::Object::New( isolate );
-
-  // Set the pointCount
-  hoverObject->Set( v8::String::NewFromUtf8( isolate, "pointCount" ), v8::Integer::New( isolate, hoverEvent.GetPointCount() ) );
-
-  // Set the time
-  hoverObject->Set( v8::String::NewFromUtf8( isolate, "time" ), v8::Number::New( isolate, hoverEvent.time ) );
-
-  // Set the emitting actor
-  // hoverObject->Set( v8::String::NewFromUtf8( isolate, "sourceActor" ), ActorWrapper::WrapActor(isolate, emittingActor));
-
-  // Create the array of touch points
-  v8::Local < v8::Array > pointArrayObject = v8::Array::New( isolate, hoverEvent.GetPointCount() );
-  for( unsigned int i = 0 ; i < hoverEvent.GetPointCount() ; ++i )
-  {
-    v8::Local < v8::Object > pointObject = CreateTouchPoint( isolate, hoverEvent.points[i] );
-    pointArrayObject->Set( v8::Number::New( isolate, i ), pointObject  );
-  }
-
-  // set the array
-  hoverObject->Set( v8::String::NewFromUtf8( isolate, "points" ), pointArrayObject );
-
-  return handleScope.Escape( hoverObject );
-}
-
-v8::Handle<v8::Object> EventObjectGenerator::CreateWheelEvent( v8::Isolate* isolate, const WheelEvent& wheelEvent)
-{
-  //  we are creating a wheel event object that looks like this
-  //
-  //  event.type = "mouseWheel" or "customWheel" type of the wheel event
-  //  event.direction = "vertical" or "horizontal" direction the wheel is being rolled
-  //  event.shiftPressed       = boolean, shift key is held
-  //  event.ctrlPressed        = boolean, ctrl key is held
-  //  event.altPressed     = boolean, alt key is held
-  //  event.keyModifiers = bitmask of keys pressed
-  //  event.point {x,y}    = The co-ordinates of the mouse cursor relative to the top-left of the screen when the wheel is being rolled.
-  //  event.rolled          = offset of wheel rolling, positive = rolling down or clockwise, negative = rolling up or counter-clockwise
-  //  event.timestamp    = The time (in ms) that the touch event occurred
-
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> wheelObject = v8::Object::New( isolate );
-
-  // Set the type
-  std::string type = wheelEvent.type ? "mouseWheel" : "customWheel";
-  wheelObject->Set( v8::String::NewFromUtf8( isolate, "type" ), v8::String::NewFromUtf8( isolate, type.c_str() ) );
-
-  // Set the direction
-  std::string direction = wheelEvent.direction ? "vertical" : "horizontal";
-  wheelObject->Set( v8::String::NewFromUtf8( isolate, "direction" ), v8::String::NewFromUtf8( isolate, direction.c_str() ) );
-
-  // set shift / ctrl/ alt keys
-  wheelObject->Set( v8::String::NewFromUtf8( isolate, "shiftPressed" ), v8::Boolean::New( isolate, wheelEvent.IsShiftModifier()) );
-  wheelObject->Set( v8::String::NewFromUtf8( isolate, "ctrlPressed" ),  v8::Boolean::New( isolate, wheelEvent.IsCtrlModifier()) );
-  wheelObject->Set( v8::String::NewFromUtf8( isolate, "altPressed" ),   v8::Boolean::New( isolate, wheelEvent.IsAltModifier()) );
-
-  // set keyModifiers
-  wheelObject->Set( v8::String::NewFromUtf8( isolate, "keyModifiers" ),  v8::Integer::New( isolate, wheelEvent.modifiers) );
-
-  // set Point
-  v8::Local<v8::Object> wheelPointObject = v8::Object::New( isolate );
-  wheelPointObject->Set( v8::String::NewFromUtf8( isolate, "x"),v8::Integer::New( isolate, wheelEvent.point.x ) );
-  wheelPointObject->Set( v8::String::NewFromUtf8( isolate, "y"),v8::Integer::New( isolate, wheelEvent.point.y ) );
-  wheelObject->Set( v8::String::NewFromUtf8( isolate, "point"), wheelPointObject );
-
-  // set rolledAmout
-  wheelObject->Set( v8::String::NewFromUtf8( isolate, "rolled" ),  v8::Integer::New( isolate, wheelEvent.z) );
-
-  // set timestamp
-  wheelObject->Set( v8::String::NewFromUtf8( isolate, "timestamp" ),  v8::Integer::New( isolate, wheelEvent.timeStamp) );
-
-  return handleScope.Escape( wheelObject );
-
-}
-
-v8::Handle<v8::Object> EventObjectGenerator::CreateKeyEvent( v8::Isolate* isolate, const KeyEvent& keyEvent)
-{
-  // keyCode
-  // keyModifier
-  // event.keyCode       = key code
-  // event.key           = key presssed
-  // event.keyDescription = key description, e.g. BackSpace
-  // event.state = "down" or "up" key state
-  // event.shiftPressed  = boolean, shift key is held
-  // event.ctrlPressed   = boolean, ctrl key is held
-  // event.altPressed    = boolean, alt key is held
-  // event.keyModifiers  = key modifiers
-  // event.timestamp     = Time stamp
-
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> keyObject = v8::Object::New( isolate );
-
-  // Set the direction
-  std::string state ("up");
-  if ( keyEvent.state == KeyEvent::Down)
-  {
-    state = "down";
-  }
-
-  keyObject->Set( v8::String::NewFromUtf8( isolate, "state" ), v8::String::NewFromUtf8( isolate, state.c_str() ) );
-
-  // set keyCode
-   keyObject->Set( v8::String::NewFromUtf8( isolate, "keyCode" ),  v8::Integer::New( isolate, keyEvent.keyCode) );
-
-  // set keyModifiers
-  keyObject->Set( v8::String::NewFromUtf8( isolate, "keyModifier" ),  v8::Integer::New( isolate, keyEvent.keyModifier) );
-
-  // set Key pressed name
-  keyObject->Set( v8::String::NewFromUtf8( isolate, "keyDescription" ),  v8::String::NewFromUtf8( isolate, keyEvent.keyPressedName.c_str() )  );
-
-  // set Key pressed
-  keyObject->Set( v8::String::NewFromUtf8( isolate, "key" ),  v8::String::NewFromUtf8( isolate, keyEvent.keyPressed.c_str() )  );
-
-  // set time stamp
-  keyObject->Set( v8::String::NewFromUtf8( isolate, "timestamp" ),  v8::Integer::New( isolate, keyEvent.time) );
-
-  // set shift / ctrl/ alt keys
-  keyObject->Set( v8::String::NewFromUtf8( isolate, "shiftPressed" ), v8::Boolean::New( isolate, keyEvent.IsShiftModifier()) );
-  keyObject->Set( v8::String::NewFromUtf8( isolate, "ctrlPressed" ),  v8::Boolean::New( isolate, keyEvent.IsCtrlModifier()) );
-  keyObject->Set( v8::String::NewFromUtf8( isolate, "altPressed" ),   v8::Boolean::New( isolate, keyEvent.IsAltModifier()) );
-
-  return handleScope.Escape( keyObject );
-
-}
-
-v8::Handle<v8::Object> EventObjectGenerator::CreatePanGesture( v8::Isolate* isolate, const PanGesture& panGesture)
-{
-  // gesture.numberOfTouches     = total number of fingers touching the screen
-  // gesture.state               = pan state {Clear, Started, Continuing, Finished, Cancelled, Possible}
-  // gesture.time                = Time stamp
-  // gesture.velocity            = pan velocity in actor coordinates
-  // gesture.displacement        = pan displacement in actor coordinates
-  // gesture.position            = pan position in actor coordinates
-  // gesture.screenVelocity      = pan velocity in screen coordinates
-  // gesture.screenDisplacement  = pan displacement in screen coordinates
-  // gesture.screenPosition      = pan position in screen coordinates
-
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> panObject = v8::Object::New( isolate );
-
-  // Set the numberOfTouches
-  panObject->Set( v8::String::NewFromUtf8( isolate, "numberOfTouches" ), v8::Integer::New( isolate, panGesture.numberOfTouches ) );
-
-  // Set the state
-  panObject->Set( v8::String::NewFromUtf8( isolate, "state"), v8::String::NewFromUtf8( isolate, GetGestureStateName(panGesture.state)));
-
-  // Set the time
-  panObject->Set( v8::String::NewFromUtf8( isolate, "time" ), v8::Number::New( isolate, panGesture.time ) );
-
-  // Set the local velocity
-  v8::Local<v8::Object> velocityObject = v8::Object::New( isolate );
-  velocityObject->Set( v8::String::NewFromUtf8( isolate, "x"),v8::Number::New( isolate, panGesture.velocity.x) );
-  velocityObject->Set( v8::String::NewFromUtf8( isolate, "y"),v8::Number::New( isolate, panGesture.velocity.y) );
-  panObject->Set( v8::String::NewFromUtf8( isolate, "velocity"),  velocityObject);
-
-  // Set the local displacement
-  v8::Local<v8::Object> displacementObject = v8::Object::New( isolate );
-  displacementObject->Set( v8::String::NewFromUtf8( isolate, "x"),v8::Number::New( isolate, panGesture.displacement.x) );
-  displacementObject->Set( v8::String::NewFromUtf8( isolate, "y"),v8::Number::New( isolate, panGesture.displacement.y) );
-  panObject->Set( v8::String::NewFromUtf8( isolate, "displacement"),  displacementObject);
-
-  // Set the local position
-  v8::Local<v8::Object> positionObject = v8::Object::New( isolate );
-  positionObject->Set( v8::String::NewFromUtf8( isolate, "x"),v8::Number::New( isolate, panGesture.position.x) );
-  positionObject->Set( v8::String::NewFromUtf8( isolate, "y"),v8::Number::New( isolate, panGesture.position.y) );
-  panObject->Set( v8::String::NewFromUtf8( isolate, "position"),  positionObject);
-
-  // Set the screen velocity
-  v8::Local<v8::Object> screenVelocityObject = v8::Object::New( isolate );
-  screenVelocityObject->Set( v8::String::NewFromUtf8( isolate, "x"),v8::Number::New( isolate, panGesture.screenVelocity.x) );
-  screenVelocityObject->Set( v8::String::NewFromUtf8( isolate, "y"),v8::Number::New( isolate, panGesture.screenVelocity.y) );
-  panObject->Set( v8::String::NewFromUtf8( isolate, "screenVelocity"),  screenVelocityObject);
-
-  // Set the screen displacement
-  v8::Local<v8::Object> screenDisplacementObject = v8::Object::New( isolate );
-  screenDisplacementObject->Set( v8::String::NewFromUtf8( isolate, "x"),v8::Number::New( isolate, panGesture.screenDisplacement.x) );
-  screenDisplacementObject->Set( v8::String::NewFromUtf8( isolate, "y"),v8::Number::New( isolate, panGesture.screenDisplacement.y) );
-  panObject->Set( v8::String::NewFromUtf8( isolate, "screenDisplacement"),  screenDisplacementObject);
-
-  // Set the screen position
-  v8::Local<v8::Object> screenPositionObject = v8::Object::New( isolate );
-  screenPositionObject->Set( v8::String::NewFromUtf8( isolate, "x"),v8::Number::New( isolate, panGesture.screenPosition.x) );
-  screenPositionObject->Set( v8::String::NewFromUtf8( isolate, "y"),v8::Number::New( isolate, panGesture.screenPosition.y) );
-  panObject->Set( v8::String::NewFromUtf8( isolate, "screenPosition"),  screenPositionObject);
-
-  return handleScope.Escape( panObject );
-
-}
-
-
-
-} // V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/events/event-object-generator.h b/plugins/dali-script-v8/src/events/event-object-generator.h
deleted file mode 100644 (file)
index 897a3c2..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-#ifndef DALI_V8PLUGIN_EVENT_OBJECT_GENERATOR_H
-#define DALI_V8PLUGIN_EVENT_OBJECT_GENERATOR_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/events/touch-data.h>
-#include <dali/public-api/events/hover-event.h>
-#include <dali/public-api/events/wheel-event.h>
-#include <dali/public-api/events/key-event.h>
-#include <dali/public-api/events/pan-gesture.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * Used to convert Dali event objects into pure JavaScript objects.
- * The objects created are not wrappers around a Dali object,
- * however TouchPoint.Actor is a wrapped actor
- */
-namespace EventObjectGenerator
-{
-
-  v8::Handle<v8::Object> CreateTouchData( v8::Isolate* isolate, const TouchData& touch );
-  v8::Handle<v8::Object> CreateHoverEvent( v8::Isolate* isolate, const HoverEvent& hoverEvent);
-  v8::Handle<v8::Object> CreateWheelEvent( v8::Isolate* isolate, const WheelEvent& wheelEvent);
-  v8::Handle<v8::Object> CreateKeyEvent( v8::Isolate* isolate, const KeyEvent& keyEvent);
-  v8::Handle<v8::Object> CreatePanGesture( v8::Isolate* isolate, const PanGesture& panGesture);
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_EVENT_OBJECT_GENERATOR_H
diff --git a/plugins/dali-script-v8/src/events/pan-gesture-detector-api.cpp b/plugins/dali-script-v8/src/events/pan-gesture-detector-api.cpp
deleted file mode 100644 (file)
index 18cb0a8..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "pan-gesture-detector-api.h"
-
-// INTERNAL INCLUDES
-#include <events/pan-gesture-detector-wrapper.h>
-#include <object/property-value-wrapper.h>
-#include <v8-utils.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace // unnamed namespace
-{
-
-PanGestureDetector GetPanGestureDetector( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField( 0 ) );
-  void* ptr = field->Value();
-
-  PanGestureDetectorWrapper* wrapper = static_cast<PanGestureDetectorWrapper *>( ptr );
-  return wrapper->GetPanGestureDetector();
-}
-
-} // unnamed namespace
-
-/**
- * Constructor
- *
- * @constructor
- * @for PanGestureDetector
- * @method PanGestureDetector
- */
-PanGestureDetector PanGestureDetectorApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  return PanGestureDetector::New();
-}
-
-/**
- * Attaches an actor to the pan gesture.
- *
- * The panDetected signal will be dispatched when the pan gesture occurs on
- * the attached actor. You can attach several actors to a pan gesture detector.
- * @method attach
- * @for PanGestureDetector
- * @param {Actor} actor The actor to attach to the pan gesture detector
- * @example
- *        panGestureDetector.attach(actor);
- */
-void PanGestureDetectorApi::Attach( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  bool found( false );
-  //Get actor
-  Dali::Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( found )
-  {
-    PanGestureDetector panGestureDetector = GetPanGestureDetector( isolate, args );
-    panGestureDetector.Attach( actor );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-  }
-}
-
-
-/**
- * Detaches the attached actor from the pan gesture detector.
- *
- * The specified actor should have been attached to the pan gesture detector
- * @method detach
- * @for PanGestureDetector
- * @param {Actor} actor The actor to detach from the pan gesture detector
- * @example
- *        panGestureDetector.detach(actor);
- */
-void PanGestureDetectorApi::Detach( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  bool found( false );
-  //Get actor
-  Dali::Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( found )
-  {
-    PanGestureDetector panGestureDetector = GetPanGestureDetector( isolate, args );
-    panGestureDetector.Detach( actor );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad parameter" );
-  }
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/events/pan-gesture-detector-api.h b/plugins/dali-script-v8/src/events/pan-gesture-detector-api.h
deleted file mode 100644 (file)
index 0f6fc54..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-#ifndef DALI_V8PLUGIN_PAN_GESTURE_DETECTOR_API_H
-#define DALI_V8PLUGIN_PAN_GESTURE_DETECTOR_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/events/pan-gesture-detector.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace PanGestureDetectorApi
-{
-  /**
-   * Constructor
-   */
-  PanGestureDetector New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * PanGestureDetector API see gesture-detector.h for a description
-   */
-  void Attach( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Detach( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace PanGestureDetectorApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_PAN_GESTURE_DETECTOR_API_H
diff --git a/plugins/dali-script-v8/src/events/pan-gesture-detector-wrapper.cpp b/plugins/dali-script-v8/src/events/pan-gesture-detector-wrapper.cpp
deleted file mode 100644 (file)
index e6ac829..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "pan-gesture-detector-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <events/pan-gesture-detector-api.h>
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-#include <shared/object-template-helper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace
-{
-
-const ApiFunction PanGestureDetectorFunctions[]=
-{
- { "Attach",  PanGestureDetectorApi::Attach },
- { "Detach",  PanGestureDetectorApi::Detach }
-};
-
-const unsigned int PanGestureDetectorFunctionTableCount = sizeof(PanGestureDetectorFunctions)/sizeof(PanGestureDetectorFunctions[0]);
-} //un-named space
-
-
-PanGestureDetectorWrapper::PanGestureDetectorWrapper( PanGestureDetector panGestureDetector, GarbageCollectorInterface& gc )
-:HandleWrapper( BaseWrappedObject::PAN_GESTURE_DETECTOR, panGestureDetector, gc ),
- mPanGestureDetector( panGestureDetector )
-{
-}
-
-v8::Handle<v8::ObjectTemplate> PanGestureDetectorWrapper::MakePanGestureDetectorTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, PanGestureDetectorFunctions, PanGestureDetectorFunctionTableCount );
-
-  // property handle intercepts property getters and setters and signals
-  HandleWrapper::AddInterceptsToTemplate( isolate, objTemplate );
-
-  return handleScope.Escape( objTemplate );
-}
-
-v8::Handle<v8::Object> PanGestureDetectorWrapper::WrapPanGestureDetector( v8::Isolate* isolate, PanGestureDetector panGestureDetector )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = MakePanGestureDetectorTemplate( isolate );
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the Dali object
-  PanGestureDetectorWrapper* pointer = new PanGestureDetectorWrapper( panGestureDetector, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  // This also stores Dali object, in an internal field inside the JavaScript object.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-PanGestureDetector PanGestureDetectorWrapper::GetPanGestureDetector()
-{
-  return mPanGestureDetector;
-}
-
-/**
- * Create an initialized PanGestureDetector handle.
- * @constructor
- * @for PanGestureDetector
- * @method PanGestureDetector
- */
-void PanGestureDetectorWrapper::NewPanGestureDetector( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  if( !args.IsConstructCall() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "constructor called without 'new" );
-    return;
-  }
-
-  // Create a new path
-  PanGestureDetector panGestureDetector = PanGestureDetector::New();
-  v8::Local<v8::Object> localObject = WrapPanGestureDetector( isolate, panGestureDetector );
-  args.GetReturnValue().Set( localObject );
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/events/pan-gesture-detector-wrapper.h b/plugins/dali-script-v8/src/events/pan-gesture-detector-wrapper.h
deleted file mode 100644 (file)
index 16d28e5..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-#ifndef DALI_V8PLUGIN_PAN_GESTURE_DETECTOR_WRAPPER_H
-#define DALI_V8PLUGIN_PAN_GESTURE_DETECTOR_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/events/pan-gesture-detector.h>
-
-// INTERNAL INCLUDES
-#include <object/handle-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * Wraps a PanGestureDetector.
- */
-class PanGestureDetectorWrapper : public HandleWrapper
-{
-
-public:
-
-  /**
-   * Constructor
-   */
-  PanGestureDetectorWrapper( PanGestureDetector panGestureDetector, GarbageCollectorInterface& gc );
-
-  /**
-   * Virtual destructor
-   */
-  virtual ~PanGestureDetectorWrapper(){};
-
-  /**
-   * Creates a new PanGestureDetector wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewPanGestureDetector( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps a PanGestureDetector inside a Javascript object
-   */
-  static v8::Handle<v8::Object> WrapPanGestureDetector(v8::Isolate* isolate, PanGestureDetector panGestureDetector );
-
-  /*
-   * Get the wrapped PanGestureDetector
-   */
-  PanGestureDetector GetPanGestureDetector();
-
-private:
-
-  /**
-   * Create a v8 object template for the PanGestureDetector
-   */
-  static v8::Handle<v8::ObjectTemplate> MakePanGestureDetectorTemplate( v8::Isolate* isolate );
-
-  PanGestureDetector mPanGestureDetector;
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_PAN_GESTURE_DETECTOR_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/garbage-collector/garbage-collector.cpp b/plugins/dali-script-v8/src/garbage-collector/garbage-collector.cpp
deleted file mode 100644 (file)
index cc7988d..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "garbage-collector.h"
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-GarbageCollector::GarbageCollector()
-{
-
-}
-GarbageCollector::~GarbageCollector()
-{
-  GarbageCollect();
-}
-
-void GarbageCollector::Register( BaseWrappedObject* object )
-{
-  mObjectMap.PushBack( object );
-};
-
-
-void GarbageCollector::UnRegister( BaseWrappedObject* object )
-{
-  for( ObjectMap::Iterator iter = mObjectMap.Begin(); iter != mObjectMap.End(); ++iter )
-  {
-    if( *iter == object )
-    {
-      mObjectMap.Erase( iter );
-      return;
-    }
-  }
-}
-
-
-void GarbageCollector::GarbageCollect()
-{
-  for( ObjectMap::Iterator iter = mObjectMap.Begin(); iter != mObjectMap.End(); ++iter )
-  {
-    BaseWrappedObject* object = *iter;
-    delete object; // object will call GarbageCollector.UnRegister
-  }
-  mObjectMap.Clear();
-}
-
-} // V8Plugin
-
-} // Dali
diff --git a/plugins/dali-script-v8/src/garbage-collector/garbage-collector.h b/plugins/dali-script-v8/src/garbage-collector/garbage-collector.h
deleted file mode 100644 (file)
index dd48698..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-#ifndef DALI_V8PLUGIN_GARBAGE_COLLECTOR_H
-#define DALI_V8PLUGIN_GARBAGE_COLLECTOR_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/common/dali-vector.h>
-
-// INTERNAL INCLUDES
-#include <interfaces/garbage-collector-interface.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * @brief concrete interface of Dali's garbage collector interface.
- */
-class GarbageCollector : public GarbageCollectorInterface
-{
-
-public:
-
-  /**
-   * Constructor
-   */
-  GarbageCollector();
-
-  /**
-   * Destructor
-   */
-  ~GarbageCollector();
-
-  /**
-   * @copydoc GarbageCollectorInterface::Register()
-   */
-  virtual void Register( BaseWrappedObject* object );
-
-  /**
-   * @copydoc GarbageCollectorInterface::UnRegister()
-   */
-  virtual void UnRegister( BaseWrappedObject* object );
-
-  /**
-   * @copydoc GarbageCollectorInterface::GarbageCollect()
-   */
-  virtual void GarbageCollect();
-
-private:
-
-  /**
-   * Map between dali wrapped object (void *)
-   */
-  typedef Dali::Vector< BaseWrappedObject* > ObjectMap;
-  ObjectMap mObjectMap;   ///< lookup
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_GARBAGE_COLLECTOR_H
diff --git a/plugins/dali-script-v8/src/image/buffer-image-api.cpp b/plugins/dali-script-v8/src/image/buffer-image-api.cpp
deleted file mode 100644 (file)
index 86d6cc1..0000000
+++ /dev/null
@@ -1,259 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "buffer-image-api.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <image/image-wrapper.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * ## BufferImage
- * Bitmap represents an image resource as a pixel data buffer.
- * Its pixel buffer data is provided by the application developer.
- *
- * If the pixel format of the pixel buffer contains an alpha channel,
- * then the image is considered to be have transparent pixels without
- * regard for the actual content of the channel, and will be blended.
- * @class BufferImage
- * @extends Image
- */
-BufferImage BufferImageApi::GetBufferImage( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField(0) );
-  void* ptr = field->Value();
-
-  ImageWrapper* wrapper = static_cast< ImageWrapper *>(ptr);
-  return BufferImage::DownCast( wrapper->GetImage() );
-}
-
-/**
- * Create a new buffer image object using an external data source.
- *
- * For better performance and portability use power of two dimensions.
- * The maximum size of the image is limited by GL_MAX_TEXTURE_SIZE.
- *
- * Example of creating a buffer image from a pixel buffer
- * ```
- *  var pixelBufferData = [255, 0, 0, 255,   // red
- *                         0, 255, 0, 255,   // green
- *                         0, 0, 255, 255,   // blue
- *                         255, 0, 0, 255];  // red
- *
- *  var pixelBuffer = new Uint8Array(pixelBufferData.length);
- *  pixelBuffer.set(pixelBufferData, 0);
- *
- *  var option = {
- *                 width       : 2,
- *                 height      : 2,
- *                 pixelFormat : dali.PIXEL_FORMAT_RGBA888,  // optional
- *                 stride      : 2                           // optional
- *               }
- *
- *  var bufferImage = new dali.BufferImage(pixelBuffer, option);
- * ```
- * @constructor
- * @method BufferImage
- * @for BufferImage
- * @param {Uint8Array} pixelBuffer Array of RGBA pixel data
- * @param {Object} options
- * @param {Integer} options.width image width
- * @param {Integer} options.height image height
- * @param {Integer} [options.pixelFormat] pixel format (see dali constants, the default value is dali.PIXEL_FORMAT_RGBA8888)
- * @param {Integer} [options.stride] the internal stride of the pixelbuffer in pixels (the default value is the image width)
- * @return {Object} Image
- */
-Image BufferImageApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  bool found( false );
-
-  PixelBuffer* pixelBuffer = static_cast<PixelBuffer*>(V8Utils::GetArrayBufferViewParameter( PARAMETER_0, found, isolate, args));
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid pixelBuffer parameter" );
-    return BufferImage();
-  }
-
-  v8::Local<v8::Value> options( args[1] );
-  if( !options->IsObject() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid option parameters" );
-    return BufferImage();
-  }
-
-  v8::Local<v8::Object> obj = options->ToObject();
-
-  v8::Local<v8::Value> widthValue = obj->Get( v8::String::NewFromUtf8( isolate, "width" ) );
-  v8::Local<v8::Value> heightValue= obj->Get( v8::String::NewFromUtf8( isolate, "height" ) );
-
-  unsigned int width = 0;
-  unsigned int height = 0;
-
-  if( widthValue->IsUint32() && heightValue->IsUint32() )
-  {
-    width = widthValue->ToUint32()->Value();
-    height = heightValue->ToUint32()->Value();
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Missing valid width and height params");
-    return BufferImage();
-  }
-
-  Pixel::Format  pixelFormat = Pixel::RGBA8888;
-  v8::Local<v8::Value> pixelFormatValue = obj->Get( v8::String::NewFromUtf8( isolate, "pixelFormat" ) );
-  if( pixelFormatValue->IsUint32() )
-  {
-     pixelFormat = static_cast<Pixel::Format>( pixelFormatValue->ToUint32()->Value() );
-  }
-
-  unsigned int stride = width;
-  v8::Local<v8::Value> strideValue = obj->Get( v8::String::NewFromUtf8( isolate, "stride" ) );
-  if( strideValue->IsUint32() )
-  {
-    stride = strideValue->ToUint32()->Value();
-  }
-
-  return BufferImage::New( pixelBuffer, width, height, pixelFormat, stride);
-}
-/**
- * Returns the pixel buffer of the Image
- * The application can write to the buffer to modify its contents.
- *
- * @method getBuffer
- * @for BufferImage
- * @return {Object} The pixel buffer
- */
-void BufferImageApi::GetBuffer( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  BufferImage image = GetBufferImage( isolate, args );
-
-  args.GetReturnValue().Set( v8::ArrayBuffer::New( isolate, static_cast<void*>( image.GetBuffer() ), image.GetBufferSize() ) );
-}
-
-/**
- * Returns buffer size in bytes.
- * @method getBufferSize
- * @for BufferImage
- * @return {Integer} buffer size
- */
-void BufferImageApi::GetBufferSize( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  BufferImage image = GetBufferImage( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, image.GetBufferSize() ) );
-}
-
-/**
- * Returns buffer stride in bytes.
- * @method getBufferStride
- * @for BufferImage
- * @return {Object}
- */
-void BufferImageApi::GetBufferStride( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  BufferImage image = GetBufferImage( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, image.GetBufferStride() ) );
-}
-
-/**
- * Returns pixel format
- * @method getPixelFormat
- * @for BufferImage
- * @return {Integer} pixel format
- */
-void BufferImageApi::GetPixelFormat( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  BufferImage image = GetBufferImage( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, image.GetPixelFormat() ) );
-}
-
-/**
- * Inform Dali that the contents of the buffer have changed
- *
- * Example of updating the pixel buffer in the buffer image
- * ```
- *  var newPixelBufferData = [0, 255, 0, 255,   // green
- *                            255, 0, 0, 255,   // red
- *                            255, 0, 0, 255,   // red
- *                            0, 0, 255, 255];  // blue
- *
- *  var pixelBuffer = bufferImage.getBuffer();
- *  var pixelBufferDataArray = new Uint8Array(pixelBuffer);
- *  pixelBufferDataArray.set(newPixelBufferData, 0);
- *
- *  bufferImage.update();
- * ```
- * @method update
- * @for BufferImage
- */
-void BufferImageApi::Update( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  BufferImage image = GetBufferImage( isolate, args );
-
-  image.Update();
-}
-
-/**
- * Return whether BufferImage uses external data source or not.
- * @method isDataExternal
- * @for BufferImage
- * @return {Boolean} true if data is external
- */
-void BufferImageApi::IsDataExternal( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  BufferImage image = GetBufferImage( isolate, args );
-
-  args.GetReturnValue().Set( v8::Boolean::New( isolate, image.IsDataExternal() ) );
-}
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/image/buffer-image-api.h b/plugins/dali-script-v8/src/image/buffer-image-api.h
deleted file mode 100644 (file)
index 667cef3..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-#ifndef DALI_V8PLUGIN_RESOURCE_BUFFER_IMAGE_API_H
-#define DALI_V8PLUGIN_RESOURCE_BUFFER_IMAGE_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/images/buffer-image.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace BufferImageApi
-{
-  /**
-   * Helper to get buffer-image from args.This()
-   */
-  BufferImage GetBufferImage( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-
-  /**
-   * Constructor
-   */
-  Image New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-
-  /**
-   * Buffer Image API see buffer-image.h for a description
-   */
-  void GetBuffer( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetBufferSize( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetBufferStride( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetPixelFormat( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Update( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void IsDataExternal( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace BufferImageApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_RESOURCE_BUFFER_IMAGE_API_H
diff --git a/plugins/dali-script-v8/src/image/frame-buffer-image-api.cpp b/plugins/dali-script-v8/src/image/frame-buffer-image-api.cpp
deleted file mode 100644 (file)
index 49e59f3..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "frame-buffer-image-api.h"
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/images/frame-buffer-image.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <image/image-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace FrameBufferImageApi
-{
-
-/**
- * FrameBufferImage represents a GLES Frame Buffer Object and contains the result
- * of an 'off screen' render pass of a RenderTask.
- * The FrameBufferImage can then be used with a Material (with optional shader
- * effects) and rendered to the screen.
- * @class FrameBufferImage
- * @extends Image
- */
-
-/**
- * @constructor
- * @method FrameBufferImage
- * @for FrameBufferImage
- * @param {Object} options
- * @param {Uint32Array} options.pixelBuffer Array of RGBA pixel data
- * @param {Integer} options.width image width
- * @param {Integer} options.height image height
- * @param {Object } [options.nativeImage] ** currently not supported **
- * @param {Integer} [options.pixelFormat] pixel format ( see dali constants, e.g. dali.PIXEL_FORMAT_RGB8888)
- * @return {Object} Image
- */
-Image New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Value> options( args[0] );
-  if( !options->IsObject() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Missing param");
-    return FrameBufferImage();
-  }
-
-  v8::Local<v8::Object> obj = options->ToObject();
-
-  v8::Local<v8::Value> widthValue = obj->Get( v8::String::NewFromUtf8( isolate, "width" ) );
-  v8::Local<v8::Value> heightValue= obj->Get( v8::String::NewFromUtf8( isolate, "height" ) );
-
-  unsigned int width = 0;
-  unsigned int height = 0;
-
-  if( widthValue->IsUint32() && heightValue->IsUint32() )
-  {
-    width = widthValue->ToUint32()->Value();
-    height = heightValue->ToUint32()->Value();
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Missing valid width and height params");
-    return FrameBufferImage();
-  }
-
-  Pixel::Format  pixelFormat = Pixel::RGB8888;
-  v8::Local<v8::Value> pixelFormatValue = obj->Get( v8::String::NewFromUtf8( isolate, "pixelFormat" ) );
-  if( pixelFormatValue->IsUint32() )
-  {
-     pixelFormat = static_cast<Pixel::Format>( pixelFormatValue->ToUint32()->Value() );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Pixel format not specified");
-    return FrameBufferImage();
-  }
-
-  return FrameBufferImage::New( width, height, pixelFormat );
-}
-
-} // FrameBufferImageApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/image/frame-buffer-image-api.h b/plugins/dali-script-v8/src/image/frame-buffer-image-api.h
deleted file mode 100644 (file)
index 9d2b2cf..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-#ifndef DALI_V8PLUGIN_FRAME_BUFFER_IMAGE_API_H
-#define DALI_V8PLUGIN_FRAME_BUFFER_IMAGE_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/images/image.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace FrameBufferImageApi
-{
-
-  /**
-   * Constructor
-   */
-  Image New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-
-}; // namespace FrameBufferImageApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_FRAME_BUFFER_IMAGE_API_H
diff --git a/plugins/dali-script-v8/src/image/image-api.cpp b/plugins/dali-script-v8/src/image/image-api.cpp
deleted file mode 100644 (file)
index 04b60a0..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "image-api.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <image/image-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-Image ImageApi::GetImage( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField(0) );
-  void* ptr = field->Value();
-
-  ImageWrapper* wrapper = static_cast< ImageWrapper *>(ptr);
-  return wrapper->GetImage();
-}
-
-/**
- * @constructor Image
- * @method Image
- * @for Image
- * @return {Object} Image
- */
-Image ImageApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  DALI_SCRIPT_EXCEPTION( isolate, "Image base class can not be constructed, try new dali.ResourceImage()");
-  return Image();
-}
-
-/**
- * Return the image width in pixels
- * @method getWidth
- * @for Image
- */
-void ImageApi::GetWidth( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Image image = GetImage( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, image.GetWidth() ) );
-}
-/**
- * Return the image height in pixels
- * @method getHeight
- * @for Image
- */
-void ImageApi::GetHeight( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Image image = GetImage( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, image.GetHeight() ) );
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/image/image-api.h b/plugins/dali-script-v8/src/image/image-api.h
deleted file mode 100644 (file)
index 923fe70..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-#ifndef DALI_V8PLUGIN_IMAGE_API_H
-#define DALI_V8PLUGIN_IMAGE_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/images/image.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace ImageApi
-{
-
-  /**
-   * Helper to get image from args.This()
-   */
-  Image GetImage( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-
-  /**
-   * Constructor
-   */
-  Image New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * Image API see image.h for a description
-   */
-  void GetWidth( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetHeight( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace ImageApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_IMAGE_API_H
diff --git a/plugins/dali-script-v8/src/image/image-wrapper.cpp b/plugins/dali-script-v8/src/image/image-wrapper.cpp
deleted file mode 100644 (file)
index 2ada2c7..0000000
+++ /dev/null
@@ -1,306 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "image-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-#include <image/image-api.h>
-#include <image/frame-buffer-image-api.h>
-#include <image/resource-image-api.h>
-#include <image/buffer-image-api.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> ImageWrapper::mImageTemplate;
-v8::Persistent<v8::ObjectTemplate> ImageWrapper::mResourceImageTemplate;
-v8::Persistent<v8::ObjectTemplate> ImageWrapper::mBufferImageTemplate;
-v8::Persistent<v8::ObjectTemplate> ImageWrapper::mFrameBufferImageTemplate;
-
-/**
- * pointer to a persistent template handle
- */
-struct ImageTemplate
-{
-  v8::Persistent<v8::ObjectTemplate>* imageTemplate;
-};
-
-/**
- * array of templates for each type of image
- */
-const ImageTemplate ImageTemplateLookup[]=
-{
-    { &ImageWrapper::mImageTemplate },              // IMAGE
-    { &ImageWrapper::mResourceImageTemplate },      // RESOURCE_IMAGE
-    { &ImageWrapper::mBufferImageTemplate  },       // BITMAP_IMAGE
-    { &ImageWrapper::mFrameBufferImageTemplate },   // FRAME_BUFFER_IMAGE
-
-};
-
-
-namespace // un-named name space
-{
-
-/**
- * Bitmask of API's that an image can support
- */
-enum ImageApiBitMask
-{
-  IMAGE_API              = 1 << 0,
-  BITMAP_IMAGE_API       = 1 << 1,
-  RESOURCE_IMAGE_API     = 1 << 2,
-  FRAME_BUFFER_IMAGE_API = 1 << 3,
-
-};
-
-/**
- * structure used for the ImageApiLookup.
- */
-struct ImageApiStruct
-{
-  const char* imageName;                  ///< name of the image, used to find out what type of image to construct
-  ImageWrapper::ImageType imageType;      ///< image type
-  Image (*constructor)( const v8::FunctionCallbackInfo< v8::Value >& args); ///< constructor
-  int supportApis;                        ///< supported API's
-};
-
-/**
- * Lookup table to match a image type with a constructor and supported API's.
- */
-const ImageApiStruct ImageApiLookup[]=
-{
-  {"Image",           ImageWrapper::IMAGE,              ImageApi::New,            IMAGE_API },
-  {"ResourceImage",   ImageWrapper::RESOURCE_IMAGE,     ResourceImageApi::New,    IMAGE_API | RESOURCE_IMAGE_API },
-  {"BufferImage",     ImageWrapper::BITMAP_IMAGE,       BufferImageApi::New,      IMAGE_API | BITMAP_IMAGE_API },
-  {"FrameBufferImage",ImageWrapper::FRAME_BUFFER_IMAGE, FrameBufferImageApi::New, IMAGE_API | FRAME_BUFFER_IMAGE_API },
-};
-
-const unsigned int ImageApiLookupCount = sizeof(ImageApiLookup)/sizeof(ImageApiLookup[0]);
-
-
-/**
- * given an image type return what api's it supports
- */
-int GetImageSupportedApis( ImageWrapper::ImageType type )
-{
-  return ImageApiLookup[ type].supportApis;
-}
-
-/**
- * Used for the ImageFunctionTable to map function names to functions
- * with for a specific API
- */
-struct ImageFunctions
-{
-  const char* name;               ///< function name
-  void (*function)( const v8::FunctionCallbackInfo< v8::Value >& args);
-  ImageApiBitMask api;
-};
-
-/**
- * Contains a list of all functions that can be called
- */
-const ImageFunctions ImageFunctionTable[]=
-{
-    /**************************************
-    * Image API (in order of image.h)
-    **************************************/
-    { "GetWidth",                ImageApi::GetWidth , IMAGE_API },
-    { "GetHeight",               ImageApi::GetHeight, IMAGE_API },
-
-    // resource-image API
-    { "GetLoadingState",         ResourceImageApi::GetLoadingState,     RESOURCE_IMAGE_API },
-    { "GetUrl",                  ResourceImageApi::GetUrl,              RESOURCE_IMAGE_API },
-    { "Reload",                  ResourceImageApi::Reload,              RESOURCE_IMAGE_API },
-
-    // buffer image API
-    { "GetBuffer",              BufferImageApi::GetBuffer,           BITMAP_IMAGE_API },
-    { "GetBufferSize",          BufferImageApi::GetBufferSize,       BITMAP_IMAGE_API },
-    { "GetBufferStride",        BufferImageApi::GetBufferStride,     BITMAP_IMAGE_API },
-    { "GetPixelFormat",         BufferImageApi::GetPixelFormat,      BITMAP_IMAGE_API },
-    { "Update",                 BufferImageApi::Update,              BITMAP_IMAGE_API },
-    { "IsDataExternal",         BufferImageApi::IsDataExternal,      BITMAP_IMAGE_API },
-
-    // Frame buffer image has no API
-    // Native image has no API
-
-};
-
-const unsigned int ImageFunctionTableCount = sizeof(ImageFunctionTable)/sizeof(ImageFunctionTable[0]);
-} //un-named space
-
-
-ImageWrapper::ImageWrapper( const Dali::Image& image, GarbageCollectorInterface& gc )
-: BaseWrappedObject( BaseWrappedObject::IMAGE , gc )
-{
-    mImage = image;
-}
-
-v8::Handle<v8::Object> ImageWrapper::WrapImage(v8::Isolate* isolate, const Dali::Image& image )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = WrapImage( isolate, image, GetImageType( image.GetTypeName() ) );
-
-  return handleScope.Escape( object );
-}
-v8::Handle<v8::Object> ImageWrapper::WrapImage(v8::Isolate* isolate, const Dali::Image& image, ImageType imageType )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetImageTemplate( isolate, imageType);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the Image wrapper
-  ImageWrapper* pointer =  new ImageWrapper( image, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  // This also stores the Image object, in an internal field inside the JavaScript object.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> ImageWrapper::GetImageTemplate( v8::Isolate* isolate, ImageType imageType )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( ImageTemplateLookup[ imageType ].imageTemplate->IsEmpty() )
-  {
-    objectTemplate = MakeImageTemplate( isolate, imageType );
-    ImageTemplateLookup[ imageType ].imageTemplate->Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, *ImageTemplateLookup[ imageType ].imageTemplate );
-  }
-
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> ImageWrapper::MakeImageTemplate( v8::Isolate* isolate, ImageType imageType )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add intercepts for Signals on ResourceImage, we can't use HandleWrapper::AddIntercepts because Image doesn't inherit
-  // from Handle ( just baseHandle)
-  if ( imageType == RESOURCE_IMAGE )
-  {
-     ObjectTemplateHelper::AddSignalConnectAndDisconnect( isolate, objTemplate );
-  }
-
-  // find out what API's this image supports
-  int supportApis = GetImageSupportedApis( imageType );
-
-  // add our function properties
-  for( unsigned int i = 0; i < ImageFunctionTableCount; ++i )
-  {
-    const ImageFunctions property =  ImageFunctionTable[i];
-
-    // check to see if the image supports a certain type of API
-    // e.g. Bitmap will support IMAGE_API and BITMAP_IMAGE_API
-    if( supportApis &  property.api )
-    {
-      std::string funcName = V8Utils::GetJavaScriptFunctionName( property.name);
-
-      objTemplate->Set( v8::String::NewFromUtf8(   isolate, funcName.c_str() ),
-                      v8::FunctionTemplate::New( isolate, property.function ) );
-    }
-  }
-
-  return handleScope.Escape( objTemplate );
-}
-
-
-void ImageWrapper::NewImage( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate);
-
-  if(!args.IsConstructCall())
-  {
-      DALI_SCRIPT_EXCEPTION( isolate, "Image constructor called without 'new'");
-      return;
-  }
-
-  // find out the callee function name...e.g. BufferImage, ResourceImage
-  v8::Local<v8::Function> callee = args.Callee();
-  v8::Local<v8::Value> v8String = callee->GetName();
-  std::string typeName = V8Utils::v8StringToStdString( v8String );
-
-  ImageType imageType = GetImageType( typeName );
-
-  if( imageType == UNKNOWN_IMAGE_TYPE )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "unknown image type");
-    return;
-  }
-  Image image = (ImageApiLookup[imageType].constructor)( args );
-
-  if( ! image )
-  {
-    // a v8 exception will have been thrown by the constructor
-    return;
-  }
-
-  v8::Local<v8::Object> localObject = WrapImage( isolate, image, imageType );
-
-  args.GetReturnValue().Set( localObject );
-}
-
-Image ImageWrapper::GetImage()
-{
-  return mImage;
-}
-
-/**
- * given an image type name, e.g. returns the type, e.g. ImageWrapper::BITMAP_IMAGE
- */
-ImageWrapper::ImageType ImageWrapper::GetImageType( const std::string& name )
-{
-  for( unsigned int i = 0 ; i < ImageApiLookupCount ; i++ )
-  {
-    if( strncmp( ImageApiLookup[i].imageName, name.c_str(), name.length() ) == 0 )
-    {
-      return ImageApiLookup[i].imageType;
-    }
-  }
-  return ImageWrapper::UNKNOWN_IMAGE_TYPE;
-}
-
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/image/image-wrapper.h b/plugins/dali-script-v8/src/image/image-wrapper.h
deleted file mode 100644 (file)
index 948e706..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-#ifndef DALI_V8PLUGIN_IMAGE_WRAPPER_H
-#define DALI_V8PLUGIN_IMAGE_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/images/image.h>
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-#include <signals/signal-manager.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * An Image  wrapper.
- * Provides access to Image specific functionality and V8 memory handling.
- */
-class ImageWrapper : public BaseWrappedObject
-{
-
-public:
-
-  /**
-   * Image type used an index,
-   * please update the table in ImageApiLookup if this list changes ( the enum is used as an index)
-   */
-  enum ImageType
-  {
-    UNKNOWN_IMAGE_TYPE = -1,
-    IMAGE               = 0,
-    RESOURCE_IMAGE      = 1,
-    BITMAP_IMAGE        = 2,
-    FRAME_BUFFER_IMAGE  = 3
-   };
-
-  /**
-   * Constructor
-   */
-  ImageWrapper( const Image& image,
-                GarbageCollectorInterface& gc );
-
-  /**
-   * Destructor
-   */
-  virtual ~ImageWrapper()
-  {
-  };
-
-  /**
-   * @brief Creates a new Image wrapped inside a Javascript Object.
-   * @note: the actor type ie 'ImageImage' is expected to be the name of the callee function.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewImage( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps an image of a given type
-   */
-  static v8::Handle<v8::Object> WrapImage(v8::Isolate* isolate, const Dali::Image& image, ImageType imageType );
-
-  /**
-   * Wraps an image, the type is looked up from the image
-   */
-  static v8::Handle<v8::Object> WrapImage(v8::Isolate* isolate, const Dali::Image& image );
-
-  /**
-   * @return Image
-   */
-  Image GetImage();
-
-  /**
-   * @return signal manager pointer
-   */
-  virtual SignalManager* GetSignalManager() { return &mSignalManager;}
-
-  // The Image ObjectTemplate, we cache templates so we don't have
-  // keep generating them everytime we want to create an Image
-  static v8::Persistent<v8::ObjectTemplate> mImageTemplate;
-  static v8::Persistent<v8::ObjectTemplate> mResourceImageTemplate;
-  static v8::Persistent<v8::ObjectTemplate> mBufferImageTemplate;
-  static v8::Persistent<v8::ObjectTemplate> mFrameBufferImageTemplate;
-
-private:
-
-  /**
-   * Helper
-   */
-  static ImageType GetImageType( const std::string& name );
-
-  static v8::Handle<v8::ObjectTemplate> MakeImageTemplate( v8::Isolate* isolate, ImageType imageType );
-  static v8::Local<v8::ObjectTemplate> GetImageTemplate( v8::Isolate* isolate , ImageType imageType );
-
-
-  Image mImage;                     ///< Image handle
-  SignalManager mSignalManager;     ///< Signal Manager
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_IMAGE_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/image/resource-image-api.cpp b/plugins/dali-script-v8/src/image/resource-image-api.cpp
deleted file mode 100644 (file)
index c119b53..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "resource-image-api.h"
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/images/image-operations.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <image/image-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-ResourceImage ResourceImageApi::GetResourceImage( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField(0) );
-  void* ptr = field->Value();
-
-  ImageWrapper* wrapper = static_cast< ImageWrapper *>(ptr);
-  return ResourceImage::DownCast( wrapper->GetImage() );
-}
-
-/**
- * Create a new resource image object.
- *
- * @constructor
- * @method ResourceImage
- * @for ResourceImage
- * @param {Object} options
- * @param {String} options.url The URL of the image file to use.
- * @param {Float} options.width The width to fit the loaded image to
- * @param {Float} options.height The height to fit the loaded image to
- * @return {Object} Image
- */
-Image ResourceImageApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  std::string url;
-  ImageDimensions dimensions;
-  v8::Local<v8::Value> options( args[0] );
-
-  if( !options->IsObject() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Missing params" );
-    return Image();
-  }
-
-  v8::Local<v8::Object> optionsObject = options->ToObject();
-
-  v8::Local<v8::Value> urlValue = optionsObject->Get( v8::String::NewFromUtf8( isolate, "url" ) );
-  if( urlValue->IsString() )
-  {
-    url = V8Utils::v8StringToStdString( urlValue );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Missing url");
-    return Image();
-  }
-
-  v8::Local<v8::Value> widthValue = optionsObject->Get( v8::String::NewFromUtf8( isolate, "width" ) );
-  if( widthValue->IsUint32() )
-  {
-    const uint32_t width = widthValue->ToUint32()->Value();
-    dimensions = ImageDimensions( width, dimensions.GetHeight() );
-  }
-
-  v8::Local<v8::Value> heightValue = optionsObject->Get( v8::String::NewFromUtf8( isolate, "height" ) );
-  if( heightValue->IsUint32() )
-  {
-    const uint32_t height = heightValue->ToUint32()->Value();
-    dimensions = ImageDimensions( dimensions.GetWidth(), height );
-  }
-
-  return ResourceImage::New( url, dimensions );
-}
-
-/**
- * Query whether the image data has loaded.
- *
- * The asynchronous loading begins when the Image object is created.
- * After the Image object is discarded, the image data will be released from memory
- * this will occur when the object is garbage collected.
- * @method getLoadPolicy
- * @for ResourceImage
- * @return {Integer} loading state either dali.RESOURCE_LOADING, dali.RESOURCE_LOADING_SUCCEEDED or dali.RESOUCE_LOADING_FAILED
- */
-void ResourceImageApi::GetLoadingState( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  ResourceImage image = GetResourceImage( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, image.GetLoadingState() ) );
-}
-
-/**
- * Return the image url
- *
- * @method getUrl
- * @for ResourceImage
- * @return {String} filename
- */
-void ResourceImageApi::GetUrl( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  ResourceImage image = GetResourceImage( isolate, args );
-
-  v8::Local<v8::String> v8String = v8::String::NewFromUtf8( isolate, image.GetUrl().c_str() );
-  args.GetReturnValue().Set( v8String  );
-}
-
-
-/**
- * Reload the image
- * @note if Image is offstage and OnDemand policy is set, reload request is ignored.
- * @method reload
- * @for ResourceImage
- */
-void ResourceImageApi::Reload( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  ResourceImage image = GetResourceImage( isolate, args );
-  image.Reload();
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/image/resource-image-api.h b/plugins/dali-script-v8/src/image/resource-image-api.h
deleted file mode 100644 (file)
index fb052fb..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-#ifndef DALI_V8PLUGIN_RESOURCE_IMAGE_API_H
-#define DALI_V8PLUGIN_RESOURCE_IMAGE_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/images/resource-image.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace ResourceImageApi
-{
-  /**
-   * Helper
-   */
-  ResourceImage GetResourceImage( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * Constructor
-   */
-  Image New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-
-  /**
-   * Resource Image API see resource-image.h for a description
-   */
-  void GetLoadingState( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetUrl( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Reload( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace ResourceImageApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_RESOURCE_IMAGE_API_H
diff --git a/plugins/dali-script-v8/src/interfaces/garbage-collector-interface.h b/plugins/dali-script-v8/src/interfaces/garbage-collector-interface.h
deleted file mode 100644 (file)
index 1bf4957..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-#ifndef DALI_V8PLUGIN_GARBAGE_COLLECTOR_INTERFACE_H
-#define DALI_V8PLUGIN_GARBAGE_COLLECTOR_INTERFACE_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-class BaseWrappedObject;
-
-/**
- * @brief Tracks all Dali-wrapped objects that are used by v8.
- * Required to delete any wrapped objects that are not cleaned up after V8 has shut down.
- *
- * Unfortunately the v8 garbage collection may never run while executing a script,
- * and currently doesn't run on shutdown (for performance reasons with Chrome browser).
- *
- * This means we have to manually keep track of all objects, and perform our
- * own garbage collection on shut down.
- *
- * For every object created:
- * - Store a weak handle to it
- * - Register a callback to be informed if v8 garbage collector decides it's no longer required.
- * -- Call back is done using v8 SetWeak(), which states:
- *    "There is no guarantee as to *when* or even *if* the callback is invoked."
- *
- */
-class GarbageCollectorInterface
-{
-
-public:
-
-  /**
-   * Register an object with Dali's garbage collector
-   * @param object a wrapped object
-   */
-  virtual void Register( BaseWrappedObject* object ) = 0;
-
-  /**
-   * Un-register an object with Dali's garbage collector
-   * @param object a wrapped object
-   */
-  virtual void UnRegister( BaseWrappedObject* object )  = 0;
-
-  /**
-   * Delete all
-   */
-  virtual void GarbageCollect() = 0;
-
-protected:
-
-  /**
-   * Constructor
-   */
-  GarbageCollectorInterface()
-  {
-  }
-
-  /**
-   * virtual destructor
-   */
-  virtual ~GarbageCollectorInterface()
-  {
-  }
-
-  // Undefined copy constructor.
-  GarbageCollectorInterface( const GarbageCollectorInterface& );
-
-  // Undefined assignment operator.
-  GarbageCollectorInterface& operator=( const GarbageCollectorInterface& );
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_GARBAGE_COLLECTOR_INTERFACE_H
diff --git a/plugins/dali-script-v8/src/module-loader/module-loader.cpp b/plugins/dali-script-v8/src/module-loader/module-loader.cpp
deleted file mode 100644 (file)
index de6cd01..0000000
+++ /dev/null
@@ -1,438 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "module-loader.h"
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/common/vector-wrapper.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-ModuleLoader::ModuleLoader()
-{
-}
-
-ModuleLoader::~ModuleLoader()
-{
-  VectorBase::SizeType count =  mModules.Count();
-  for( VectorBase::SizeType  i = 0; i < count ; ++i)
-  {
-    Module* module = mModules[i];
-    delete module;
-  }
-  mModules.Clear();
-}
-
-bool ModuleLoader::CompileAndRun(v8::Isolate* isolate,
-    const std::string& sourceCode,
-    const std::string& sourceFileName )
-{
-
-  v8::HandleScope handleScope( isolate );
-  v8::TryCatch tryCatch;
-
-  // convert from string to v8 string
-  v8::Local<v8::String> source = v8::String::NewFromUtf8( isolate, sourceCode.c_str());
-  v8::Local<v8::String> file = v8::String::NewFromUtf8( isolate, sourceFileName.c_str());
-  v8::ScriptOrigin origin(file);
-
-  // Compile the script
-  v8::Local<v8::Script> script = v8::Script::Compile( source, &origin);
-
-  // See if an exception has been thrown
-  if( tryCatch.HasCaught() || script.IsEmpty() )
-  {
-    // Print errors that happened during compilation.
-    V8Utils::ReportException( isolate, &tryCatch );
-    return false;
-  }
-
-  // Run the script
-  v8::Local<v8::Value> result = script->Run();
-
-  // in V8 test code ( they check for an exception and empty return object )
-  if( tryCatch.HasCaught() || result.IsEmpty() )
-  {
-    // Print errors that happened during execution.
-    V8Utils::ReportException( isolate, &tryCatch);
-    return false;
-  }
-
-  return true;
-}
-
-bool ModuleLoader::ExecuteScript( v8::Isolate* isolate,
-                                  const std::string& sourceCode,
-                                  const std::string& sourceFileName )
-{
-  StoreScriptInfo(  sourceFileName );
-
-  return CompileAndRun(isolate, sourceCode, sourceFileName );
-}
-
-bool ModuleLoader::ExecuteScriptFromFile( v8::Isolate* isolate,
-                                          const std::string& fileName  )
-{
-  std::string contents;
-
-  V8Utils::GetFileContents( fileName, contents );
-
-  if( contents.empty() )
-  {
-    return false;
-  }
-
-  return ExecuteScript( isolate, contents, fileName );
-}
-
-/**
- * ### var module = require("moduleName");
- *
- *
- * There is no standard for modules or the 'require' keyword in JavaScript.<br />
- * However CommonJS have this: http://wiki.commonjs.org/wiki/Modules/1.1.1  ( used by Node.js).
- * <br /> <br />
- *
- * The concept behind 'require' keyword is simple, it allows you to include another
- * JavaScript file, which exports an API / function / constructor / singleton.
- *
- *
- *     // example_module.js
- *     exports.hello = function() { return "hello world" }
- *
- * <br />
- *
- *     // main.js
- *     var example = require( "example_module.js");
- *
- *     log( example.hello() );
- *
- *
-
- * ### Module writers guide:
- *
- *
- * #### Exporting as a namespace
- *
- * Example of using a namespace to export functions / objects.
- *
- *     // filesystem-helper.js
- *     exports.version = "FileSystem helper 1.0";
- *     exports.open = function() { }
- *     exports.close = function() { }
- *     exports.read = function() { }
- *     exports.write = function() { ... }
- *     exports.fileSize = function() {...}
- *
- * <br />
- *
- *     // main.js
- *     var fs = require( "filesystem-helper.js");
- *
- *     log( fs.version );
- *
- *     var file = fs.open("myfile.txt");
- *     var data = fs.read( file );
- *
- *
- *
- * #### Exporting as a function
- *
- * In this example we are using module.exports directly to change it
- * from an object literal with name-value pairs (exports object) to a function.
- *
- *     // my_first_module.js
- *     module.exports = function() {  log("helloWorld"); }
- *
- * <br />
- *
- *     // main.js
- *     var func = require("my_first_module.js");
- *     func();      // prints out hello-world
- *
- *
- * #### Exporting as a constructor
- *
- *
- *     // ImageView.js
- *     function ImageView( position, orientation, image, name )
- *     {
- *         this = new dali.Control("ImageView");
- *         this.image = image;
- *         this.position = position;
- *         this.orientation = orientation;
- *         this.name = name;
- *     }
- *     module.exports = ImageView;
- *
- * <br />
- *
- *     // main.js
- *
- *     var ImageView = require(" ImageView.js");
- *
- *     var imageView = new ImageView( position, orientation, image, "my first image view");
- *
- * #### Exporting as a singleton
- *
- * By exporting a singleton you have an object which has shared state between
- * any modules using it.
- *
- * example:
- *
- *     // image-database.js
- *
- *     function ImageDatabase( )
- *     {
- *       this.addImage  = function() {  ... };
- *       this.removeImage = function() { ... };
- *       this.getImage = function()  { ...};
- *       this.getImageCount = function() { ... };
- *     }
- *
- *     module.exports = new ImageDatabase();
- *
- *
- * <br />
- *
- *     // main.js
- *
- *     var database = require('image-database.js');
- *
- *     database.addImage( myImage );
- *
- * <br />
- *
- *     // another-module.js
- *     var database = require('image-database.js');
- *
- *     // gets the same database object as main.js
- *
- *
- * The first call to require('image-database.js') will create the image database.
- * Further calls, will return the same instance, because require caches module.exports.
- * Otherwise it would have to recompile and run the module every time require is called.
- *
- * ## Notes
- *
- * #### Automatic wrapping of a module by DALi:
- *
- * The module is automatically wrapped in a function by DALi before being executed ( similar technique to Node.js). </br>
- * This is to prevent any functions / variables declared by the module entering the global namespace. </br>
- * Currently the module will have access to all DALi global functions, like log, require and the DALi API ( actors / stage etc).</br>
- *
- *
- *     // Parameters passed to the internally generated function
- *     // module = reference to current module
- *     // module.exports = defines what the module exports
- *     // exports = reference to module.exports
- *     // __filename = module filename
- *     // __dirname = module directory
- *
- *     function createModuleXYZ( exports ( === module.exports), module, __filename, __dirname )
- *     {
- *       //
- *       // Module code automatically inserted here.
- *       //
- *       log(" my first module ");
- *       var version = "1.3";      // this won't pollute global namespace
- *       exports.version = version;
- *       exports.logActorPosition = function( actorName )
- *       {
- *         var actor = dali.stage.getRootLayer().findChildByName(actorName );
- *         log( actor.x + "," + actor.y + "," + actor.z );
- *        }
- *       //
- *       // End module code
- *       //
- *
- *       return module.exports;
- *     }
-
- *
- * Initially module.exports is an object literal with name-value pairs ( exports object).
- * However it can be re-assigned to a constructor / function / singleton object as shown
- * in the examples above.
- *
- *
- *  ### Circular dependencies:
- *
- *  DALi JS supports circular dependencies as required by the CommonJS specification.
- *
- *  #### a.js
- *
- *
- *     export.version = "1.3"
- *     export.loaded = false;
- *     var bModule = require('b.js')
- *     export.loaded = true;
- *
- *  #### b.js
- *
- *     var aModule = require('a.js')
- *     log( "aModule version = " + aModule.version + ", aModule loaded = " + aModule.loaded );
- *
- *     //prints  aModule = 1.3, aModule loaded = false
- *
- *  #### main.js
- *
- *      var aModule = require("a.js");
- *
- *
- *  When b.js requires a.js, it is given everything that is exported from a.js, up to the point
- *  b.js is required by a.js.
- *
- * ### 'require' background
- *
- * There is alternative to module spec in CommonJS called RequireJs ( http://requirejs.org/docs/node.html) <br />
- * DALi JS tries to follows the CommonJS  specification (used by Node.js) as it
- * is supposed to be better suited to server side development. <br /><br />
- *
- * @method require
- * @for ModuleLoader
- *
- */
-void ModuleLoader::Require(const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  bool found( false );
-  std::string fileName = V8Utils::GetStringParameter( PARAMETER_0, found, isolate , args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "require missing module name");
-    return;
-  }
-
-  // strip off any path / .js
-  std::string moduleName;
-  V8Utils::GetModuleName( fileName, moduleName );
-
-  // see if the module already exists
-  const Module* existingModule = FindModule( moduleName );
-  if( existingModule )
-  {
-    // printf(" using existing module %s \n",moduleName.c_str() );
-    args.GetReturnValue().Set( existingModule->mExportsObject );
-    return;
-  }
-
-  std::string path = mCurrentScriptPath;  // path of top level script being executed
-  std::string contents;
-  V8Utils::GetFileContents(path + fileName, contents);
-
-  // wrap the module in a function to protect global namespace.
-  // the create function itself is global so we make it unique for each module
-  // For reference nodeJs does this as an anonymous function, but we're calling it from native side
-  // so need to pass parameters  / get a name for it.
-  std::string functionName ="__createModule" +  moduleName;
-  std::string source = "function " + functionName + "( exports, module, __filename, __directory)  { ";
-  source+= contents;
-  source+=" \n };";  // close the function
-
-  CompileAndRun( isolate, source, fileName );
-
-  // We need to create module object, so that the module can read / write properties to it
-
-  v8::Local<v8::Object> moduleObject = v8::Object::New( isolate );
-  v8::Local<v8::Object> exportsObject = v8::Object::New( isolate );
-  moduleObject->Set( v8::String::NewFromUtf8( isolate, "exports"),  exportsObject );
-  moduleObject->Set( v8::String::NewFromUtf8( isolate, "id"), v8::String::NewFromUtf8( isolate ,moduleName.c_str() ) );
-
-  // store the module exports object now, this is to allow for circular dependencies.
-  // If this-module requires another module, which then requires this module ( creating a circle), it will be given an export object
-  // which contains everything exported so far.
-  Module* module = StoreModule( path, fileName, moduleName, isolate, exportsObject );
-
-  v8::Local<v8::Context> currentContext =  isolate->GetCurrentContext();
-
-  // get the CreateModule function
-  v8::Local<v8::Function> createModule = v8::Local<v8::Function>::Cast(currentContext->Global()->Get(v8::String::NewFromUtf8( isolate, functionName.c_str() )));
-
-  // add the arguments
-  std::vector< v8::Local<v8::Value> > arguments;
-  arguments.push_back( exportsObject );
-  arguments.push_back( moduleObject );
-  arguments.push_back( v8::String::NewFromUtf8( isolate, fileName.c_str() ));
-  arguments.push_back( v8::String::NewFromUtf8( isolate, path.c_str() ));
-
-
-  // call the CreateModule function
-  createModule->Call( createModule, arguments.size(), &arguments[0]); //[0]
-
-  // get the module.export object, the module writer may have re-assinged module.exports, so the exports object
-  // no longer references it.
-  v8::Local<v8::Value> moduleExportsValue = moduleObject->Get( v8::String::NewFromUtf8( isolate, "exports"));
-  v8::Local<v8::Object>  moduleExports = moduleExportsValue->ToObject();
-
-  // Re-store the export ( possible nothing happens, because exports hasn't been re-assigned).
-  module->mExportsObject.Reset( isolate, moduleExports);
-
-  args.GetReturnValue().Set( moduleExports );
-
-}
-
-void ModuleLoader::StorePreBuiltModule( v8::Isolate* isolate, v8::Local<v8::Object>& exportObject, const std::string& name )
-{
-  StoreModule( "", name, name, isolate, exportObject );
-}
-
-void ModuleLoader::StoreScriptInfo( const std::string& sourceFileName )
-{
-  V8Utils::GetFileDirectory( sourceFileName, mCurrentScriptPath);
-}
-
-Module* ModuleLoader::StoreModule( const std::string& path,
-                                const std::string& fileName,
-                                const std::string& moduleName,
-
-                                v8::Isolate* isolate,
-                                v8::Local<v8::Object>& moduleExportsObject )
-{
-  Module* module = new Module( path, fileName, moduleName, isolate, moduleExportsObject );
-  mModules.PushBack( module );
-  return module;
-
-}
-
-const Module* ModuleLoader::FindModule( const std::string& moduleName )
-{
-  VectorBase::SizeType count =  mModules.Count();
-  for( VectorBase::SizeType  i = 0; i < count ; ++i)
-  {
-    const Module* module = mModules[i];
-    if (module->mModuleName == moduleName )
-    {
-      return module;
-    }
-  }
-  return NULL;
-}
-
-
-} // V8Plugin
-
-} // Dali
diff --git a/plugins/dali-script-v8/src/module-loader/module-loader.h b/plugins/dali-script-v8/src/module-loader/module-loader.h
deleted file mode 100644 (file)
index 1ef3692..0000000
+++ /dev/null
@@ -1,164 +0,0 @@
-#ifndef DALI_V8PLUGIN_MODULE_LOADER_H
-#define DALI_V8PLUGIN_MODULE_LOADER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <string.h>
-#include <dali/public-api/common/dali-vector.h>
-
-// INTERNAL INCLUDES
-#include <module-loader/module.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- *
- * Responsible for executing JavaScript source code.
- * This includes loading other JavaScript files that may be referenced
- * inside JavaScript using the 'require' keyword.
- *
- * Notes:
- *
- * A module named with a forward slash is loaded as an absolute path:
- * E.g. require "/usr/apps/scripts/my_module.js"
- *
- * A module pre-fixed with a dot slash ( current directory) then the path is relative
- * to the calling scripts path. E.g.
- *
- * -- my_first.js --
- * require "./circle.js";   // load circle.js from same directory as my_first.js
- *
- * @TODO
- * ----------
- * Without a leading '/' or './' the module is loaded from the DALi modules directory or
- * the applications user defined module directory.
- * E.g. require "dali-spline.js"    // search dali-module directory first, then any user
- * defined module locations.
- * ------------
- *
- *
- */
-class ModuleLoader
-{
-public:
-
-  /**
-   * @brief Constructor
-   * @param[in] isolate v8 isolate
-   * @param[in] daliObject dali exports object, used when developer does require('dali');
-   */
-  ModuleLoader();
-
-  /**
-   * @brief non virtual destructor, not intended as a base class
-   */
-  ~ModuleLoader();
-
-
-  /**
-   * @brief Execute a script from a file
-   * @param[in] isolate v8 isolate
-   * @param[in] fileName file name
-   * @return true on success, false on failure
-   *
-   */
-  bool ExecuteScriptFromFile( v8::Isolate* isolate, const std::string& fileName );
-
-
-  /**
-   * @brief Execute a script
-   * @param[in] isolate v8 isolate
-   * @param[in] sourceCode source code to run
-   * @param[in] sourceFileName source file name
-   * @return true on success, false on failure
-   */
-  bool ExecuteScript( v8::Isolate* isolate,
-                      const std::string& sourceCode,
-                      const std::string& sourceFileName );
-
-
-  /**
-   * @brief Implements JavaScript Require functionality
-   * @param[in] args arguments passed to require. The return value is set using   args.GetReturnValue().Set(
-   */
-  void Require( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * @brief
-   * Stores a pre compiled object as a module.
-   * Currently used for storing the Dali object, so the developer can
-   * perform  var dali = require('dali');
-   * @param[in] isolate v8 isolate
-   * @param[in] exportObject export object
-   * @param[in] name module name, used for the require('name') lookup
-   */
-  void StorePreBuiltModule( v8::Isolate* isolate, v8::Local<v8::Object>& exportObject, const std::string& name );
-
-private:
-
-  /**
-   * Compile and run the JavaScript code
-   * @param[in] sourceCode source code to run
-   * @param[in] sourceFileName source file name
-   */
-  bool CompileAndRun(v8::Isolate* isolate,
-                     const std::string& sourceCode,
-                     const std::string& sourceFileName );
-
-  /**
-   * @brief Store information about the current script
-   * @param[in] sourceFileName source file name
-   */
-  void StoreScriptInfo( const std::string& sourceFileName );
-
-  /**
-   * @brief Store module information
-   * @param[in] sourceFileName source file name
-   * @return module object
-   */
-  Module* StoreModule( const std::string& path,
-                    const std::string& fileName,
-                    const std::string& moduleName,
-                    v8::Isolate* isolate,
-                    v8::Local<v8::Object>& moduleExportsObject );
-
-  /**
-   * @brief Find a module
-   * @param[in] moduleName module name
-   * @return module
-   */
-  const Module* FindModule( const std::string& moduleName );
-
-private:
-
-  Dali::Vector< Module*> mModules; ///< vector of modules
-  std::string mCurrentScriptPath;  ///< path of the current script being executed (via ExecuteScript).
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_MODULE_LOADER_H
diff --git a/plugins/dali-script-v8/src/module-loader/module.cpp b/plugins/dali-script-v8/src/module-loader/module.cpp
deleted file mode 100644 (file)
index 1e095ee..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-#include "module.h"
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-Module::Module()
-{
-
-}
-
-Module::Module( const std::string& path,
-              const std::string& fileName,
-              const std::string& moduleName,
-
-              v8::Isolate* isolate,
-              v8::Local<v8::Object>& exportsObject)
-:mFileName( fileName ),
- mPath( path),
- mModuleName(moduleName)
-
-{
-  mExportsObject.Reset( isolate, exportsObject);
-}
-
-Module::~Module()
-{
-
-}
-
-
-
-} // V8Plugin
-
-} // Dali
diff --git a/plugins/dali-script-v8/src/module-loader/module.h b/plugins/dali-script-v8/src/module-loader/module.h
deleted file mode 100644 (file)
index fe92675..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-#ifndef DALI_V8PLUGIN_MODULE_H
-#define DALI_V8PLUGIN_MODULE_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <string>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- *
- * Module class,
- * contains
- *
- */
-class Module
-{
-public:
-
-    Module(const std::string& path,
-          const std::string& fileName,
-          const std::string& moduleName,
-
-        v8::Isolate* isolate,
-        v8::Local<v8::Object>& exportsObject);
-
-    ~Module();
-
-    std::string mFileName;
-    std::string mPath;
-    std::string mModuleName;
-
-
-    /**
-     *  holds the exports object
-     *  e.g.  exports.hello = function() {" hello world"}
-     */
-    v8::Persistent<v8::Object> mExportsObject;
-
-    /*
-     * Currently we allow the modules context to be released after it has been
-     * compiled and run ( so we don't need to store it).
-     * Data is shared between contexts which suggests
-     * the module exports object can be kept alive if the context it was created in is deleted.
-     * If this is not the case, then start to store the context.
-     */
-    // v8::Persistent<v8::Context> mContext.
-
-private:
-
-    Module();
-
-    Module( const Module& );            ///< undefined copy constructor
-    Module& operator=( const Module& ); ///< undefined assignment operator
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_MODULE_H
diff --git a/plugins/dali-script-v8/src/object/handle-wrapper.cpp b/plugins/dali-script-v8/src/object/handle-wrapper.cpp
deleted file mode 100644 (file)
index fed77ce..0000000
+++ /dev/null
@@ -1,332 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "handle-wrapper.h"
-
-// EXTERNAL INCLUDES
-#include <sstream>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <shared/base-wrapped-object.h>
-#include <shared/object-template-helper.h>
-#include <object/property-value-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace // un-named name space
-{
-
-/**
- * Contains a list of all functions that can be called
- */
-const ApiFunction HandleFunctionTable[]=
-{
-  { "RegisterAnimatableProperty",            HandleWrapper::RegisterAnimatableProperty },
-  { "RegisterCustomProperty",                HandleWrapper::RegisterCustomProperty     },
-};
-
-const unsigned int HandleFunctionTableCount = sizeof(HandleFunctionTable)/sizeof(HandleFunctionTable[0]);
-} //un-named space
-
-/**
- * @class Handle
- */
-
-HandleWrapper::HandleWrapper( BaseWrappedObject::Type type,
-    Handle handle,
-    GarbageCollectorInterface& gc ) :
- BaseWrappedObject( type, gc ),
- mHandle( handle )
-{
-}
-
-HandleWrapper::~HandleWrapper()
-{
-
-}
-HandleWrapper*  HandleWrapper::Unwrap( v8::Isolate* isolate, v8::Handle< v8::Object> obj)
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( obj->GetInternalField(0) );
-  void* ptr = field->Value();
-  return static_cast< HandleWrapper *>(ptr);
-}
-
-// may have to do this IsUpper to intercept function calls or as function?
-void HandleWrapper::PropertyGet( v8::Local<v8::String> propertyName,
-                                        const v8::PropertyCallbackInfo<v8::Value>& info)
-{
-  v8::Isolate* isolate = info.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  // get the property name
-  std::string name = V8Utils::v8StringToStdString( propertyName );
-
-  if( std::isupper( name[0] ))
-  {
-    return;
-  }
-
-  // unwrap the object
-  HandleWrapper* handleWrapper = Unwrap( isolate, info.This() );
-  Handle handle =  handleWrapper->mHandle;
-
-  // get the property index
-  Dali::Property::Index index = handle.GetPropertyIndex( name );
-
-  if(index != Dali::Property::INVALID_INDEX)
-  {
-    Dali::Property::Value value = handle.GetProperty(index);
-
-    // Simple Dali properties (ints, strings, bools etc) are stored as JavaScript primitives (v8::Boolean ...)
-    // more complex properties (Vectors, Rectangles...) are wrapped by a JavaScript object
-    v8::Local<v8::Object> ret = PropertyValueWrapper::WrapDaliProperty( isolate, value );
-
-    info.GetReturnValue().Set( ret );
-  }
-  else
-  {
-    //  std::string error="Invalid property Get for "+name + "\n";
-    // DALI_SCRIPT_EXCEPTION( isolate, error );
-  }
-
-}
-void HandleWrapper::PropertySet( v8::Local<v8::String> propertyName,
-                  v8::Local<v8::Value> javaScriptValue,
-                  const v8::PropertyCallbackInfo<v8::Value>& info)
-{
-
-  v8::Isolate* isolate = info.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  // get the property name
-  std::string name = V8Utils::v8StringToStdString( propertyName );
-
-  // try to filter out function calls before going to the property system
-  // @todo use installed functions to generate a map
-  if( ( name.compare(0,2,"is") == 0 )  ||
-      ( name.compare(0,3,"get") == 0 ) ||
-      ( name.compare(0,3,"add") == 0 ) ||
-      ( name.compare(0,3,"set") == 0 ) ||
-      ( name.compare(0,3,"get") == 0 ) ||
-      ( name.compare(0,4,"find") == 0 ) ||
-      ( name.compare(0,6,"remove") == 0 )
-     )
-  {
-    //
-    return;
-  }
-  // unwrap the object
-  HandleWrapper* handleWrapper = Unwrap( isolate, info.This() );
-  if( !handleWrapper )
-  {
-    // printf("setting property name %s \n", name.c_str());
-    return;
-  }
-
- // DALI_ASSERT_DEBUG( handleWrapper && "not a dali object");
-  Handle handle =  handleWrapper->mHandle;
-
-  Dali::Property::Index index = handle.GetPropertyIndex( name );
-
-  if(index != Dali::Property::INVALID_INDEX)
-  {
-    Dali::Property::Type type = handle.GetPropertyType(index);
-
-    // we know the type we want to set ( int, vector, etc..)
-    // try and convert the javascript value in to the type we want.
-    Dali::Property::Value value = PropertyValueWrapper::ExtractPropertyValue( isolate, javaScriptValue, type);
-
-    if( Dali::Property::NONE == value.GetType() )
-      {
-        std::stringstream msg;
-        msg << "Invalid property Set: '";
-        msg << name;
-        msg << "(Index = ";
-        msg << index;
-        msg << ")";
-        msg << "' Cannot convert value to correct type: (";
-        msg << type;
-        msg << ")";
-        msg << Dali::PropertyTypes::GetName(type);
-        DALI_SCRIPT_EXCEPTION( isolate, msg.str().c_str());
-      }
-      else
-      {
-        handle.SetProperty( index, value );
-      }
-  }
-  else
-  {
-    // Trying to set the value for a property that is not registered yet.
-    std::stringstream msg;
-    msg << "Trying to set the value of an unregistered property: ";
-    msg << name;
-    DALI_SCRIPT_WARNING( msg.str().c_str() );
-
-    // Register the custom property automatically.
-    handle.RegisterProperty( name, PropertyValueWrapper::ExtractPropertyValue( isolate, javaScriptValue), Property::READ_WRITE );
-  }
-}
-
-void HandleWrapper::AddInterceptsToTemplate( v8::Isolate* isolate, v8::Local<v8::ObjectTemplate>& objTemplate )
-{
-  v8::HandleScope handleScope( isolate );
-
-  objTemplate->SetNamedPropertyHandler( HandleWrapper::PropertyGet, HandleWrapper::PropertySet);
-
-  // add function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, HandleFunctionTable, HandleFunctionTableCount );
-
-  ObjectTemplateHelper::AddSignalConnectAndDisconnect( isolate, objTemplate );
-
-}
-
-/**
- * Register a new animatable property.
- *
- * The object should support dynamic properties.
- * Property names are expected to be unique, but this is not enforced.
- * Property indices are unique to each registered custom property in a given object.
- * returns dali.PROPERTY_INVALID_INDEX if registration failed. This can happen if you try
- * to register animatable property on an object that does not have scene graph object.
- *
- * @method registerAnimatableProperty
- * @for Handle
- * @param {string} name The name of the property.
- * @param {Object} propertyValue The new value of the property.
- * @return {integer} The index of the property or dali.PROPERTY_INVALID_INDEX if registration failed
- * @example
- *
- *     var morphPropertyIndex = actor.registerAnimatableProperty("uMorphAmount", 0.0f);
- *     var fadeColorPropertyIndex = handle.registerAnimatableProperty("uFadeColor", [1.0, 0.0, 0.0, 1.0]);
- *
- */
-void HandleWrapper::RegisterAnimatableProperty( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  // unwrap the object
-  HandleWrapper* handleWrapper = Unwrap( isolate, args.This() );
-  if( !handleWrapper )
-  {
-    return;
-  }
-
-  Handle handle =  handleWrapper->mHandle;
-
-  bool found( false );
-  std::string propertyName = V8Utils::GetStringParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad property name parameter" );
-    return;
-  }
-
-  found = false;
-  Dali::Property::Value daliPropertyValue = V8Utils::GetPropertyValueParameter(PARAMETER_1, found, isolate, args );
-  if( !found || Dali::Property::NONE == daliPropertyValue.GetType() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad property value parameter" );
-    return;
-  }
-  else
-  {
-    args.GetReturnValue().Set( v8::Integer::New( isolate, handle.RegisterProperty(propertyName, daliPropertyValue) ) );
-  }
-}
-
-/**
- * Register a new custom property.
- *
- * The object should support dynamic properties.
- * Property names must be unused.
- * Property indices are unique to each registered custom property in a given object.
- * Properties can be set as non animatable using property attributes.
- * returns dali.PROPERTY_INVALID_INDEX if registration failed.
- *
- * @method registerCustomProperty
- * @for Handle
- * @param {string} name The name of the property.
- * @param {Object} propertyValue The new value of the property.
- * @param {integer} accessMode The property access mode (writable, animatable etc).
- * @return {integer} The index of the property or dali.PROPERTY_INVALID_INDEX if registration failed
- * @example
- *
- *     // access mode is one of the following
- *     dali.PROPERTY_READ_ONLY
- *     dali.PROPERTY_READ_WRITE
- *     dali.PROPERTY_ANIMATABLE
- *
- *     var cellIndexPropertyIndex = actor.registerCustomProperty("cellIndex", 2, dali.PROPERTY_READ_WRITE);
- *     var myCustomPropertyIndex = handle.registerCustomProperty("myCustomProperty", [10.0, 25.0, 0.0], dali.PROPERTY_READ_ONLY);
- *
- */
-void HandleWrapper::RegisterCustomProperty( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  // unwrap the object
-  HandleWrapper* handleWrapper = Unwrap( isolate, args.This() );
-  if( !handleWrapper )
-  {
-    return;
-  }
-
-  Handle handle =  handleWrapper->mHandle;
-
-  bool found( false );
-  std::string propertyName = V8Utils::GetStringParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad property name parameter" );
-    return;
-  }
-
-  found = false;
-  Dali::Property::Value daliPropertyValue = V8Utils::GetPropertyValueParameter(PARAMETER_1, found, isolate, args );
-  if( !found || Dali::Property::NONE == daliPropertyValue.GetType() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "bad property value parameter" );
-    return;
-  }
-
-  found = false;
-  int accessMode = V8Utils::GetIntegerParameter( PARAMETER_2, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid access mode parameter" );
-    return;
-  }
-  else
-  {
-    args.GetReturnValue().Set( v8::Integer::New( isolate, handle.RegisterProperty( propertyName, daliPropertyValue, static_cast<Property::AccessMode>(accessMode) ) ) );
-  }
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/object/handle-wrapper.h b/plugins/dali-script-v8/src/object/handle-wrapper.h
deleted file mode 100644 (file)
index 98f9c22..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-#ifndef DALI_V8PLUGIN_HANDLE_WRAPPER_H
-#define DALI_V8PLUGIN_HANDLE_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/object/handle.h>
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-#include <signals/signal-manager.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-class BaseCallBack;
-
-class HandleWrapper : public BaseWrappedObject
-{
-public:
-  HandleWrapper( BaseWrappedObject::Type type,
-                Handle handle,
-                GarbageCollectorInterface& gc );
-
-  virtual ~HandleWrapper();
-
-  /**
-   * @brief get the value for a property for JavaScript object than contains a Dali Handle.
-   * E.g. Get( "x", JavaScript object that wraps a Dali Handle )
-   * @param[in] propertyName property name
-   * @param[in] info reference to PropertyCallbackInfo structure (contains the Javascript
-   * object and the return value).
-   */
-  static void PropertyGet( v8::Local<v8::String> propertyName,
-                                          const v8::PropertyCallbackInfo<v8::Value>& info);
-
-  /**
-   * @brief Set the value for a property for JavaScript object than contains a Dali Handle.
-   * E.g. Set( "x", 103, JavaScript object that wraps a Dali Handle)
-   * @param[in] propertyName property name
-   * @param[in] javaScriptValue javascript value to set, this is typically a number
-   * @param[in] info reference to PropertyCallbackInfo structure (contains the Javascript
-   * object).
-   */
-  static void PropertySet( v8::Local<v8::String> propertyName,
-                    v8::Local<v8::Value> javaScriptValue,
-                    const v8::PropertyCallbackInfo<v8::Value>& info);
-
-  static HandleWrapper* Unwrap( v8::Isolate* isolate, v8::Handle< v8::Object> obj);
-
-  /**
-   * Should be called by an class that inherits from HandleWrapper to add
-   * property get / set functionality to the javascript object
-   * along with Signal connect / disconnect
-   */
-  static void AddInterceptsToTemplate( v8::Isolate* isolate, v8::Local<v8::ObjectTemplate>& objTemplate );
-
-  /**
-   * @brief Register an animatable property for a JavaScript object that
-   * contains a Dali Handle.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void RegisterAnimatableProperty( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * @brief Register a custom property for a JavaScript object that
-   * contains a Dali Handle.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void RegisterCustomProperty( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  Handle GetHandle() { return mHandle; }
-  Handle mHandle;
-  ConnectionTracker mConnectionTracker;
-
-
-  virtual SignalManager* GetSignalManager() { return &mSignalManager;}
-
-private:
-
-  SignalManager mSignalManager;
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_HANDLE_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/object/property-buffer-api.cpp b/plugins/dali-script-v8/src/object/property-buffer-api.cpp
deleted file mode 100644 (file)
index 46de3b3..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "property-buffer-api.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <object/property-buffer-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace // unnamed namespace
-{
-
-struct PropertyBufferParameters
-{
-  PropertyBufferParameters()
-  {
-  }
-
-  PropertyBuffer NewPropertyBuffer()
-  {
-    return PropertyBuffer::New( mBufferFormat );
-  }
-
-  Property::Map mBufferFormat;
-};
-
-} // unnamed space
-
-/**
- * ## PropertyBuffer API
- *
- * PropertyBuffer is a handle to an object that contains a buffer of structured properties.
- * It can be used to provide data to Geometry objects.
- *
- * ### Simple example
- *
- *```
- *    var vertexFormat ={ "aPosition" : dali.PROPERTY_VECTOR2 };
- *    var vertexData = [    0,     1,
- *                      -0.95,  0.31,
- *                      -0.59, -0.81,
- *                       0.59, -0.81,
- *                       0.95,  0.31];
- *
- *    var vertexDataArray = new Float32Array(vertexData.length);
- *    vertexDataArray.set(vertexData, 0);
- *    var vertices = new dali.PropertyBuffer(vertexFormat, 5);
- *    vertices.setData(vertexDataArray);
- *
- *    var geometry = new dali.Geometry();
- *    geometry.addVertexBuffer( vertices );
- *```
- * @class PropertyBuffer
- */
-
-PropertyBuffer PropertyBufferApi::GetPropertyBuffer( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField(0) );
-  void* ptr = field->Value();
-
-  PropertyBufferWrapper* wrapper = static_cast< PropertyBufferWrapper *>(ptr);
-  return wrapper->GetPropertyBuffer();
-}
-
-PropertyBuffer PropertyBufferApi::GetPropertyBufferFromParams( int paramIndex,
-                          bool& found,
-                          v8::Isolate* isolate,
-                          const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  found = false;
-
-  v8::HandleScope handleScope( isolate );
-  BaseWrappedObject* wrappedObject = V8Utils::GetWrappedDaliObjectParameter( paramIndex, BaseWrappedObject::PROPERTY_BUFFER, isolate, args );
-  if( wrappedObject )
-  {
-    found = true;
-    PropertyBufferWrapper* wrapper = static_cast< PropertyBufferWrapper *>(wrappedObject);
-    return wrapper->GetPropertyBuffer();
-  }
-  else
-  {
-    return PropertyBuffer();
-  }
-}
-
-/**
- * Create a new PropertyBuffer
- *
- * PropertyBuffers contains a buffer of structured properties and can be
- * used to provide data to Geometry objects.
- *
- * @constructor
- * @for PropertyBuffer
- * @method PropertyBuffer
- * @param {Object} bufferFormat Map of names and types that describes the components of the buffer
- * @param {integer} size The number of elements in the property buffer
- * @return {Object} PropertyBuffer
- * @example
- *```
- *    var bufferFormat = {
- *                         "aPosition" : dali.PROPERTY_VECTOR2,
- *                         "aTexCoord" : dali.PROPERTY_VECTOR2,
- *                         "aHue"      : dali.PROPERTY_FLOAT,
- *                       };
- *
- *    var buffer = new dali.PropertyBuffer(bufferFormat, 5);
- *```
- */
-PropertyBuffer PropertyBufferApi::New( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  bool found( false );
-  Dali::Property::Map bufferFormat = V8Utils::GetPropertyMapParameter( PARAMETER_0, found, isolate, args);
-  if( !found || bufferFormat.Empty() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid property map parameter" );
-    return PropertyBuffer();
-  }
-
-  return PropertyBuffer::New( bufferFormat );
-}
-
-/**
- * Update the whole buffer information
- *
- * This function expects an array of data with the same format that was given
- * in the construction, and the number of elements to be the same as the size
- * of the buffer.
- *
- * @method setData
- * @for PropertyBuffer
- * @param {Float32Array} data The data that will be copied to the buffer.
- * @example
- *```
- *   var vertexData = [    0,     1,
- *                     -0.95,  0.31,
- *                     -0.59, -0.81,
- *                      0.59, -0.81,
- *                      0.95,  0.31];
- *
- *   var vertexDataArray = new Float32Array(vertexData.length);
- *   vertexDataArray.set(vertexData, 0);
- *
- *   propertyBuffer.setData( vertexDataArray, vertexData.length );
- *```
- */
-void PropertyBufferApi::SetData( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  PropertyBuffer buffer = GetPropertyBuffer( isolate, args );
-
-  bool found( false );
-  void* data = V8Utils::GetArrayBufferViewParameter( PARAMETER_0, found, isolate, args);
-
-  if( ! found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid data parameter" );
-  }
-  else
-  {
-    int size = V8Utils::GetIntegerParameter( PARAMETER_1, found, isolate, args, 0);
-    if( !found )
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "missing buffer size from param 1" );
-    }
-    else
-    {
-      buffer.SetData( data, size );
-    }
-  }
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/object/property-buffer-api.h b/plugins/dali-script-v8/src/object/property-buffer-api.h
deleted file mode 100644 (file)
index c76607c..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-#ifndef DALI_V8PLUGIN_PROPERTY_BUFFER_API_H
-#define DALI_V8PLUGIN_PROPERTY_BUFFER_API_H
-
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/rendering/property-buffer.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace PropertyBufferApi
-{
-
-  /**
-   * @brief Helper to get property buffer from args.This()
-   * @param[in] isolate v8 isolated instance
-   * @param[in] args v8 function call arguments interpreted
-   */
-  PropertyBuffer GetPropertyBuffer( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * @brief Helper to get property buffer from the JavaScript object held in the given function argument
-   * @param[in] paramIndex Argument index the object is held in
-   * @param[in] found Whether property buffer is found in the given function parameter
-   * @param[in] isolate v8 isolated instance
-   * @param[in] args v8 function call arguments interpreted
-   */
-  PropertyBuffer GetPropertyBufferFromParams( int paramIndex,
-                                                  bool& found,
-                                                  v8::Isolate* isolate,
-                                                  const v8::FunctionCallbackInfo< v8::Value >& args );
-
- /**
-  * Constructor
-  */
-  PropertyBuffer New( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * PropertyBuffer API see property-buffer.h for a description
-   */
-  void SetData( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-} // namespace PropertyBufferApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_PROPERTY_BUFFER_API_H
diff --git a/plugins/dali-script-v8/src/object/property-buffer-wrapper.cpp b/plugins/dali-script-v8/src/object/property-buffer-wrapper.cpp
deleted file mode 100644 (file)
index b3a1894..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "property-buffer-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <object/property-buffer-api.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-#include <dali-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> PropertyBufferWrapper::mPropertyBufferTemplate;
-
-namespace // un-named name space
-{
-
-/**
- * Contains a list of all functions that can be called
- */
-const ApiFunction PropertyBufferFunctionTable[]=
-{
-    /**************************************
-    * PropertyBuffer API (in order of property-buffer.h)
-    **************************************/
-
-   { "SetData"             , PropertyBufferApi::SetData },
-};
-
-const unsigned int PropertyBufferFunctionTableCount = sizeof(PropertyBufferFunctionTable)/sizeof(PropertyBufferFunctionTable[0]);
-} //un-named space
-
-
-PropertyBufferWrapper::PropertyBufferWrapper( const Dali::PropertyBuffer& buffer, GarbageCollectorInterface& gc )
-:  BaseWrappedObject(  BaseWrappedObject::PROPERTY_BUFFER , gc )
-{
-    mPropertyBuffer = buffer;
-}
-
-v8::Handle<v8::Object> PropertyBufferWrapper::WrapPropertyBuffer(v8::Isolate* isolate, const Dali::PropertyBuffer& buffer )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetPropertyBufferTemplate( isolate);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the PropertyBuffer wrapper
-  PropertyBufferWrapper* pointer =  new PropertyBufferWrapper( buffer, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> PropertyBufferWrapper::GetPropertyBufferTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( mPropertyBufferTemplate.IsEmpty() )
-  {
-    objectTemplate = MakePropertyBufferTemplate( isolate );
-    mPropertyBufferTemplate.Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, mPropertyBufferTemplate );
-  }
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> PropertyBufferWrapper::MakePropertyBufferTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, PropertyBufferFunctionTable, PropertyBufferFunctionTableCount );
-
-  return handleScope.Escape( objTemplate );
-}
-
-void PropertyBufferWrapper::NewPropertyBuffer( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate);
-
-  if(!args.IsConstructCall())
-  {
-      DALI_SCRIPT_EXCEPTION( isolate, "PropertyBuffer constructor called without 'new'");
-      return;
-  }
-  Dali::PropertyBuffer buffer = PropertyBufferApi::New( isolate, args );
-
-  if(buffer)
-  {
-    v8::Local<v8::Object> localObject = WrapPropertyBuffer( isolate, buffer );
-    args.GetReturnValue().Set( localObject );
-  }
-}
-
-
-PropertyBuffer PropertyBufferWrapper::GetPropertyBuffer()
-{
-  return mPropertyBuffer;
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/object/property-buffer-wrapper.h b/plugins/dali-script-v8/src/object/property-buffer-wrapper.h
deleted file mode 100644 (file)
index 914b9a9..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-#ifndef DALI_V8PLUGIN_PROPERTY_BUFFER_WRAPPER_H
-#define DALI_V8PLUGIN_PROPERTY_BUFFER_WRAPPER_H
-
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/rendering/property-buffer.h>
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * A PropertyBuffer wrapper.
- * Provides access to PropertyBuffer specific functionality and V8 memory handling.
- */
-class PropertyBufferWrapper : public BaseWrappedObject
-{
-
-public:
-
-  /**
-   * @brief Constructor
-   * @param[in] propertyBuffer DALi property buffer
-   * @param[in] gc garbage collection interface
-   */
-  PropertyBufferWrapper( const PropertyBuffer& propertyBuffer,
-                GarbageCollectorInterface& gc );
-
-  /**
-   * @brief Destructor
-   */
-  virtual ~PropertyBufferWrapper()
-  {
-  }
-
-  /**
-   * @brief Creates a new PropertyBuffer wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewPropertyBuffer( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps a property buffer
-   */
-  static v8::Handle<v8::Object> WrapPropertyBuffer(v8::Isolate* isolate, const Dali::PropertyBuffer& );
-
-
-  // The PropertyBufferAttribute ObjectTemplate, we cache templates so we don't have
-  // keep generating them everytime we want to create a PropertyBuffer
-  static v8::Persistent<v8::ObjectTemplate> mPropertyBufferTemplate;
-
-  /**
-   * @brief Gets the handle of property buffer
-   */
-  PropertyBuffer GetPropertyBuffer();
-
-
-private:
-
-  // PropertyBuffer
-  PropertyBuffer mPropertyBuffer;
-
-  static v8::Handle<v8::ObjectTemplate> MakePropertyBufferTemplate( v8::Isolate* isolate );
-  static v8::Local<v8::ObjectTemplate> GetPropertyBufferTemplate( v8::Isolate* isolate );
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_PROPERTY_BUFFER_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/object/property-value-wrapper.cpp b/plugins/dali-script-v8/src/object/property-value-wrapper.cpp
deleted file mode 100644 (file)
index f1fad65..0000000
+++ /dev/null
@@ -1,1036 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-// CLASS HEADER
-#include "property-value-wrapper.h"
-
-// EXTERNAL INCLUDES
-#include <dali/integration-api/debug.h>
-#include <dali/public-api/object/property-array.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace
-{
-
-struct WrapTypeInfo
-{
-  Dali::Property::Type propertyType;
-  BaseWrappedObject::Type wrappedType;
-};
-/**
- * lookup table to convert between dali property types and wrapped types
- * Wrapped types includes actors / timers / render tasks, hence we can't just
- * use the dali property types to encode what a wrapped pointer contains
- */
-const WrapTypeInfo WrapTypeInfoLookup[]=
-{
-  { Dali::Property::VECTOR2,    BaseWrappedObject::VECTOR2 },
-  { Dali::Property::VECTOR3,    BaseWrappedObject::VECTOR3 },
-  { Dali::Property::VECTOR4,    BaseWrappedObject::VECTOR4 },
-  { Dali::Property::RECTANGLE,  BaseWrappedObject::RECTANGLE  },
-  { Dali::Property::ROTATION,   BaseWrappedObject::ROTATION   },
-  { Dali::Property::MATRIX,     BaseWrappedObject::MATRIX     },
-  { Dali::Property::MATRIX3,    BaseWrappedObject::MATRIX3    },
-
-
-};
-const unsigned int WrapTypeLookupCount = sizeof( WrapTypeInfoLookup ) / sizeof( WrapTypeInfo );
-
-BaseWrappedObject::Type GetWrappedType( Dali::Property::Type type )
-{
-  for( unsigned int i = 0; i < WrapTypeLookupCount; ++i)
-  {
-    if( WrapTypeInfoLookup[ i ].propertyType == type )
-    {
-      return WrapTypeInfoLookup[ i ].wrappedType;
-    }
-  }
-  DALI_LOG_ERROR("GetWrappedType failed \n");
-  return BaseWrappedObject::UNKNOWN;
-}
-
-// Templates for setting members on propertys, like, x,y,z on a vector
-template <typename T, typename S>
-void SetX( Dali::Property::Value &value, S& v)
-{
-  // to set a property value, we need to read into a temporary
-  // then assign it back.
-  // E.g.   Vector2 temp = value.Get<Vector2>();
-  //        temp.x = 10;
-  //        value = temp;
-  T tmp( value.Get<T>() );
-  tmp.x = v;
-  value = tmp;
-}
-
-template <typename T, typename S>
-void SetY( Dali::Property::Value &value, S& v)
-{
-  T tmp = value.Get<T>();
-  tmp.y = v;
-  value = tmp;
-}
-
-template <typename T, typename S>
-void SetZ( Dali::Property::Value &value, S& v)
-{
-  T tmp = value.Get<T>();
-  tmp.z = v;
-  value = tmp;
-}
-
-template <typename T, typename S>
-void SetW( Dali::Property::Value &value, S& v)
-{
-  T tmp = value.Get<T>();
-  tmp.w = v;
-  value = tmp;
-}
-template <typename T, typename S>
-void SetWidth( Dali::Property::Value &value, S& v)
-{
-  T tmp = value.Get<T>();
-  tmp.width = v;
-  value = tmp;
-}
-
-template <typename T, typename S>
-void SetHeight( Dali::Property::Value &value, S& v)
-{
-  T tmp = value.Get<T>();
-  tmp.height = v;
-  value = tmp;
-}
-
-v8::Handle< v8::Value > GetV8ValueFrom( v8::Isolate* isolate,
-                                        const Dali::Property::Value& value,
-                                        const std::string& field)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::Value> ret;
-
-  Dali::Property::Type type = value.GetType();
-  std::string objectType="Unknown type";
-
-  // simple property values are handled by the actor wrapper so we just handle property values with sub fields
-  switch(type)
-  {
-    case Dali::Property::VECTOR2:
-    {
-      objectType = "Vector2";
-
-      if( field == "x" || field == "width" )
-      {
-        Dali::Vector2 v2 = value.Get<Dali::Vector2>();
-        ret = v8::Number::New( isolate, v2.x);
-      }
-      else if(field == "y" || field == "height")
-      {
-        Dali::Vector2 v2 = value.Get<Dali::Vector2>();
-        ret = v8::Number::New( isolate, v2.y);
-      }
-
-      break;
-    }
-    case Dali::Property::VECTOR3:
-    {
-      objectType = "Vector3";
-
-      if(field == "x" || field == "width" || field == "r")
-      {
-        Dali::Vector3 v3 = value.Get<Dali::Vector3>();
-        ret = v8::Number::New( isolate, v3.x);
-      }
-      else if(field == "y" || field == "height" || field == "g")
-      {
-        Dali::Vector3 v3 = value.Get<Dali::Vector3>();
-        ret = v8::Number::New( isolate, v3.y);
-      }
-      else if(field == "z" || field == "depth" || field == "b")
-      {
-        Dali::Vector3 v3 = value.Get<Dali::Vector3>();
-        ret = v8::Number::New( isolate, v3.z);
-      }
-      break;
-    }
-    case Dali::Property::VECTOR4:
-    {
-      objectType = "vector4";
-
-      if(field == "x" || field == "s" || field == "r")
-      {
-        Dali::Vector4 v4 = value.Get<Dali::Vector4>();
-        ret = v8::Number::New( isolate, v4.x);
-      }
-      else if(field == "y" || field == "g" || field == "t")
-      {
-        Dali::Vector4 v4 = value.Get<Dali::Vector4>();
-        ret = v8::Number::New( isolate, v4.y);
-      }
-      else if(field == "z" || field == "r" || field == "b")
-      {
-        Dali::Vector4 v4 = value.Get<Dali::Vector4>();
-        ret = v8::Number::New( isolate, v4.z);
-      }
-      else if(field == "w" || field == "a" || field == "q")
-      {
-        Dali::Vector4 v4 = value.Get<Dali::Vector4>();
-        ret = v8::Number::New( isolate, v4.w);
-      }
-
-      break;
-    }
-    case Dali::Property::ROTATION:
-    {
-      objectType = "rotation";
-
-      if(field == "roll")
-      {
-        Dali::Vector4 v4 = value.Get<Dali::Quaternion>().EulerAngles();
-        ret = v8::Number::New( isolate, v4.z);
-      }
-      else if(field == "pitch")
-      {
-        Dali::Vector4 v4 = value.Get<Dali::Quaternion>().EulerAngles();
-        ret = v8::Number::New( isolate, v4.x);
-      }
-      else if(field == "yaw")
-      {
-        Dali::Vector4 v4 = value.Get<Dali::Quaternion>().EulerAngles();
-        ret = v8::Number::New( isolate, v4.y);
-      }
-
-       else if(field == "axis")
-      {
-        Dali::Vector3 axis;
-        Radian angle;
-        value.Get<Dali::Quaternion>().ToAxisAngle(axis, angle);
-        ret = PropertyValueWrapper::WrapDaliProperty( isolate , Dali::Property::Value( axis ) );
-      }
-      else if(field == "angle")
-      {
-        Dali::Vector3 axis;
-        Radian angle;
-        value.Get<Dali::Quaternion>().ToAxisAngle(axis, angle);
-        ret = PropertyValueWrapper::WrapDaliProperty( isolate , Dali::Property::Value( angle ) );
-      }
-      break;
-    }
-    case Dali::Property::RECTANGLE:
-    {
-      objectType = "rectangle";
-
-      if(field == "x")
-      {
-        Dali::Rect<int> r = value.Get<Dali::Rect<int> >();
-        ret = v8::Number::New( isolate, r.x);
-      }
-      else if(field == "y")
-      {
-        Dali::Rect<int> r = value.Get<Dali::Rect<int> >();
-        ret = v8::Number::New( isolate, r.y);
-      }
-      else if(field == "width")
-      {
-        Dali::Rect<int> r = value.Get<Dali::Rect<int> >();
-        ret = v8::Number::New( isolate, r.width);
-      }
-      else if(field == "height")
-      {
-        Dali::Rect<int> r = value.Get<Dali::Rect<int> >();
-        ret = v8::Number::New( isolate, r.height);
-      }
-      break;
-    }
-
-    default:
-    {
-      // will trigger a type error as ret.IsEmpty() == true
-      break;
-    }
-
-  } // switch type
-
-  if ( ret.IsEmpty() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Cannot get property with field " + objectType+ ":" + field );
-  }
-  return handleScope.Escape(ret);
-}
-
-
-/*
- * Setting a field on a property,  e.g.  Position.x = 5 or Rect.Width = 100
- * The only property field that supports a struct is  rotation.axis
- */
-void SetFromV8Value(v8::Isolate* isolate,
-                     Dali::Property::Value& value,
-                     const std::string& field,
-                     v8::Local<v8::Value> v8Value )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  Dali::Property::Type type = value.GetType();
-
-  float asFloat = 0.f;
-  int asInt = 0;
-
-  // all are numbers at the moment
-  if( v8Value->IsNumber() )
-  {
-    asFloat = static_cast<float>(v8Value->NumberValue());
-    asInt   = static_cast<int>(asFloat);
-  }
-  else
-  {
-    // if the v8 value isn't a number, then then only Dali object we support is a Vector3 part of a rotation
-    if( ! (type == Dali::Property::ROTATION && field == "axis") )
-    {
-      DALI_SCRIPT_EXCEPTION(isolate,std::string("Cannot set property with field (value is not a number):") + field);
-      return;
-    }
-  }
-
-  // simple property values are handled by the actor wrapper so we just handle property values with sub fields
-  switch(type)
-  {
-    case Dali::Property::VECTOR2:
-    {
-      if(field == "x" || field == "width")
-      {
-        SetX<Dali::Vector2>(value, asFloat);
-      }
-      else if(field == "y" || field == "height")
-      {
-        SetY<Dali::Vector2>(value, asFloat);
-      }
-      else
-      {
-        DALI_SCRIPT_EXCEPTION(isolate, std::string("Cannot set property with field (unknown type):") + field);
-        return;
-      }
-      break;
-    }
-    case Dali::Property::VECTOR3:
-    {
-      if(field == "x" || field == "width" || field == "r")
-      {
-        SetX<Dali::Vector3>(value, asFloat);
-      }
-      else if(field == "y" || field == "height" || field == "g")
-      {
-        SetY<Dali::Vector3>(value, asFloat);
-      }
-      else if(field == "z" || field == "depth" || field == "b")
-      {
-        SetZ<Dali::Vector3>(value, asFloat);
-      }
-      else
-      {
-        DALI_SCRIPT_EXCEPTION(isolate, std::string("Cannot set property with field (unknown type):") + field);
-        return;
-      }
-      break;
-    }
-    case Dali::Property::VECTOR4:
-    {
-      if(field == "x" || field == "s" || field == "r")
-      {
-        SetX<Dali::Vector4>(value, asFloat);
-      }
-      else if(field == "y" || field == "g" || field == "t")
-      {
-        SetY<Dali::Vector4>(value, asFloat);
-      }
-      else if(field == "z" || field == "r" || field == "b")
-      {
-        SetZ<Dali::Vector4>(value, asFloat);
-      }
-      else if(field == "w" || field == "a" || field == "q")
-      {
-        SetW<Dali::Vector4>(value, asFloat);
-      }
-      else
-      {
-        DALI_SCRIPT_EXCEPTION( isolate, std::string("Cannot set property with field (unknown type):") + field);
-        return;
-      }
-      break;
-    }
-    case Dali::Property::ROTATION:
-    {
-      if(field == "roll")
-      {
-        Dali::Vector4 v4 = value.Get<Dali::Quaternion>().EulerAngles();
-        v4.z = asFloat;
-        value = Dali::Quaternion( Radian(Degree(v4.x)), Radian(Degree(v4.y)), Radian(Degree(v4.z)) );
-      }
-      else if(field == "pitch")
-      {
-        Dali::Vector4 v4 = value.Get<Dali::Quaternion>().EulerAngles();
-        v4.x = asFloat;
-        value = Dali::Quaternion( Radian(Degree(v4.x)), Radian(Degree(v4.y)), Radian(Degree(v4.z)) );
-      }
-      else if(field == "yaw")
-      {
-        Dali::Vector4 v4 = value.Get<Dali::Quaternion>().EulerAngles();
-        v4.y = asFloat;
-        value = Dali::Quaternion( Radian(Degree(v4.x)), Radian(Degree(v4.y)), Radian(Degree(v4.z)) );
-      }
-      else if(field == "axis")
-      {
-        Dali::Vector3 axis;
-        Radian angle;
-        value.Get<Dali::Quaternion>().ToAxisAngle(axis, angle);
-
-        if( v8Value->IsObject() )
-        {
-          v8::Local<v8::Object> object = v8::Local<v8::Object>::Cast( v8Value );
-
-          PropertyValueWrapper* wrapper = PropertyValueWrapper::Unwrap( isolate, object );
-          Dali::Property::Value v3 = wrapper->GetValue();
-
-          if(v3.GetType() == Dali::Property::VECTOR3)
-          {
-            value = Dali::Quaternion(angle, v3.Get<Dali::Vector3>());
-          }
-          else
-          {
-            DALI_SCRIPT_EXCEPTION( isolate, "Axis expects a Vector3:");
-            return;
-          }
-
-        }
-      }
-      else if(field == "angle")
-      {
-        Dali::Vector3 axis;
-        Radian angle;
-        value.Get<Dali::Quaternion>().ToAxisAngle( axis, angle );
-        value = Dali::Quaternion( Degree( asFloat ), axis );
-      }
-      else
-      {
-        DALI_SCRIPT_EXCEPTION(  isolate, std::string("Cannot set property with field (unknown type):") + field);
-        return;
-      }
-      break;
-    }
-    case Dali::Property::RECTANGLE:
-    {
-      if(field == "x")
-      {
-        SetX<Dali::Rect<int> >(value, asInt);
-      }
-      else if(field == "y")
-      {
-        SetY<Dali::Rect<int> >(value, asInt);
-      }
-      else if(field == "width")
-      {
-        SetWidth<Dali::Rect<int> >(value, asInt);
-      }
-      else if(field == "height")
-      {
-        SetHeight<Dali::Rect<int> >(value, asInt);
-      }
-      else
-      {
-        DALI_SCRIPT_EXCEPTION( isolate, std::string("Cannot set property with field (unknown type):") + field);
-        return;
-      }
-      break;
-    }
-    default:
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, std::string("Cannot set property with field (unknown type):") + field);
-      return;
-      break;
-    }
-
-  } // switch type
-
-} // SetFromV8Value
-
-
-bool IsPrimitive( const Dali::Property::Value &value )
-{
-  switch( value.GetType() )
-  {
-    case Dali::Property::BOOLEAN:
-    case Dali::Property::INTEGER:
-    case Dali::Property::STRING:
-    case Dali::Property::FLOAT:
-    {
-      return true;
-    }
-    default:
-    {
-      return false;
-    }
-  }
-}
-v8::Local<v8::Object> CreateJavaScriptPrimitive( v8::Isolate* isolate, const Dali::Property::Value &value )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::Value> v8Value;
-
-  switch( value.GetType() )
-   {
-     case Dali::Property::FLOAT:
-     {
-       v8Value = v8::Number::New( isolate, value.Get<float>()  );
-       break;
-     }
-     case Dali::Property::BOOLEAN:
-     {
-       v8Value = v8::Boolean::New(  isolate, value.Get<bool>());
-       break;
-     }
-     case Dali::Property::INTEGER:
-     {
-       v8Value = v8::Integer::New( isolate, value.Get<int>());
-       break;
-     }
-     case Dali::Property::STRING:
-     {
-       std::string string = value.Get< std::string >();
-       v8Value = v8::String::NewFromUtf8( isolate,  string.c_str());
-       break;
-     }
-     default:
-     {
-       DALI_LOG_ERROR("Primitive mismatch \n");
-       break;
-     }
-   }
-
-  v8::Local<v8::Object> ret;
-
-  if( v8Value->IsObject() )
-  {
-    ret = v8Value->ToObject();
-  }
-
-  return handleScope.Escape( ret );
-}
-
-
-} // un-named namespace
-
-
-
-Dali::Property::Value PropertyValueWrapper::VectorOrMatrixFromV8Array( v8::Isolate* isolate, const v8::Local<v8::Value>& v8Value)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  Dali::Property::Value ret;
-
-  if( !v8Value->IsArray() )
-  {
-    return ret;
-  }
-  v8::Local<v8::Array> array = v8::Local<v8::Array>::Cast( v8Value );//v8::Array::Cast(  *v8Value);
-  uint32_t len = array->Length();
-  float out[16] = {0.f, 0.f, 0.f, 0.f,0.f, 0.f, 0.f, 0.f,0.f, 0.f, 0.f, 0.f,0.f, 0.f, 0.f, 0.f};
-  const unsigned int size = sizeof(out) / sizeof(float);
-  for( uint32_t i=0; i < (len > size? size:len); ++i)
-  {
-    v8::Handle<v8::Value> entry = array->Get( i);// v8::Integer::New( isolate, i));
-    if( V8Utils::IsNumberPrimitiveOrObject( entry ) )
-    {
-      out[i] = V8Utils::GetNumberValue( isolate, entry );
-      //printf("entry is a number %d , entry is a int %f \n",(int)i , out[i]  );
-    }
-  }
-  if(16 == len )
-  {
-    ret = Dali::Matrix( out );
-  }
-  else if ( 9 == len )
-  {
-    ret = Dali::Matrix3( out[0],out[1],out[2],out[3],out[4],out[5],out[6],out[7],out[8] );
-  }
-  else if(4 == len)
-  {
-    ret = Dali::Vector4(out[0], out[1], out[2], out[3]);
-  }
-  else if(3 == len)
-  {
-    ret = Dali::Vector3(out[0], out[1], out[2]);
-  }
-  else if(2 == len)
-  {
-    ret = Dali::Vector2(out[0], out[1]);
-  }
-  else if(1 == len)
-  {
-    ret = out[0];
-  }
-
-  return ret;
-}
-
-Dali::Property::Value PropertyValueWrapper::ArrayFromV8Array( v8::Isolate* isolate, const v8::Local<v8::Value>& v8Value)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  if( !v8Value->IsArray() )
-  {
-    return Dali::Property::Value();
-  }
-
-  //Cast v8::Value to v8::Array
-  v8::Local<v8::Array> v8Array = v8::Local<v8::Array>::Cast( v8Value );
-  uint32_t elementCount = v8Array->Length();
-  Dali::Property::Array data;
-  data.Reserve( elementCount );
-  bool bFound(false);
-  for( uint32_t i(0); i<elementCount; ++i )
-  {
-    //Get Property::Value for each element in the array
-    data.PushBack( V8Utils::GetPropertyValueFromObject( bFound, isolate, v8Array->Get(i) ) );
-  }
-
-  //return the Property::Value
-  return Dali::Property::Value( data );
-}
-
-v8::Persistent<v8::ObjectTemplate> PropertyValueWrapper::mTemplatePrimitive;
-
-
-PropertyValueWrapper::~PropertyValueWrapper()
-{
-
-}
-
-PropertyValueWrapper::PropertyValueWrapper( const Dali::Property::Value& value, GarbageCollectorInterface& gc )
-  : BaseWrappedObject(  GetWrappedType( value.GetType() ), gc ),
-    mValue(value)
-{
-}
-
-Dali::Property::Value PropertyValueWrapper::ExtractPropertyValue( v8::Isolate* isolate, v8::Local< v8::Value> v8Value, Dali::Property::Type type)
-{
-  v8::HandleScope handleScope( isolate);
-
-  Dali::Property::Value daliPropertyValue;
-
-  // check if it's a dali object (vector, rect etc)
-  if( v8Value->IsObject() )
-  {
-    v8::Local<v8::Object> object = v8::Handle<v8::Object>::Cast(v8Value);
-    if( object->InternalFieldCount() == BaseWrappedObject::FIELD_COUNT )
-    {
-      if( BaseWrappedObject::IsWrappedType( isolate, object, GetWrappedType(type) ) )
-      {
-        PropertyValueWrapper* propertyWrapper = Unwrap( isolate, object );
-        return propertyWrapper->GetValue();
-      }
-    }
-  }
-
-  // check if it's a javascript Array
-  Dali::Property::Value array = VectorOrMatrixFromV8Array( isolate, v8Value );
-
-  switch(type)
-  {
-    case Dali::Property::BOOLEAN:
-    {
-      if( V8Utils::IsBooleanPrimitiveOrObject( v8Value ) )
-      {
-        daliPropertyValue = Dali::Property::Value( V8Utils::GetBooleanValue( isolate, v8Value));
-      }
-      break;
-    }
-    case Dali::Property::FLOAT:
-    {
-      if( V8Utils::IsNumberPrimitiveOrObject( v8Value )  )
-      {
-        daliPropertyValue = Dali::Property::Value( V8Utils::GetNumberValue( isolate, v8Value) );
-      }
-
-      break;
-    }
-    case Dali::Property::INTEGER: // todo is it wise to distinguish int from float in javascript?!
-    {
-      if( v8Value->IsInt32() )
-      {
-        daliPropertyValue = Dali::Property::Value(  v8Value->Int32Value()  ) ;//static_cast<int>( V8Utils::GetNumberValue( isolate, v8Value) ));
-      }
-      else if( V8Utils::IsStringPrimitiveOrObject( v8Value) ) // Take string as value for properties that internally convert the string to an enum
-      {
-        daliPropertyValue = Dali::Property::Value( V8Utils::GetStringValue( isolate, v8Value) );
-      }
-      break;
-    }
-    case Dali::Property::STRING:
-    {
-      if( V8Utils::IsStringPrimitiveOrObject( v8Value) )
-      {
-        daliPropertyValue = Dali::Property::Value( V8Utils::GetStringValue( isolate, v8Value) );
-      }
-
-
-      break;
-    }
-    case Dali::Property::VECTOR2:
-    {
-      if( array.GetType() == Dali::Property::VECTOR2 )
-      {
-          daliPropertyValue = array;
-      }
-      break;
-    }
-    case Dali::Property::VECTOR3:
-    {
-      if( array.GetType() == Dali::Property::VECTOR3)
-      {
-        daliPropertyValue = array;
-      }
-      break;
-    }
-    case Dali::Property::VECTOR4:
-    {
-
-      if( array.GetType() == Dali::Property::VECTOR4)
-      {
-        daliPropertyValue = array;
-      }
-      break;
-    }
-    case Dali::Property::RECTANGLE:
-    {
-      if( array.GetType() == Dali::Property::VECTOR4)
-      {
-        Vector4 vec4( array.Get<Vector4>());
-        daliPropertyValue = Property::Value(Rect<int>( vec4.x,vec4.y, vec4.z, vec4.w ));
-      }
-      break;
-    }
-    case Dali::Property::ROTATION:
-    {
-      if( array.GetType() == Dali::Property::VECTOR4)
-      {
-        // v4 treated as axis angle
-        Dali::Vector4 v = array.Get<Dali::Vector4>();
-        daliPropertyValue = Dali::AngleAxis(Dali::Degree(v[0]), Dali::Vector3(v[1], v[2], v[3]));
-      }
-      else if(array.GetType() == Dali::Property::VECTOR3)
-      {
-        // v3 treated as euler in degrees
-        Dali::Vector3 v = array.Get<Dali::Vector3>();
-        daliPropertyValue = Dali::Quaternion( Radian(Degree(v[0])), Radian(Degree(v[1])), Radian(Degree(v[2])) );
-      }
-      break;
-    }
-    case Dali::Property::MATRIX:
-    {
-      Dali::Matrix mat = array.Get<Dali::Matrix>();
-      daliPropertyValue = mat;
-      break;
-    }
-    case Dali::Property::MATRIX3:
-    {
-      Dali::Matrix3 mat = array.Get<Dali::Matrix3>();
-      daliPropertyValue = mat;
-      break;
-    }
-    case Dali::Property::ARRAY:
-    {
-      daliPropertyValue = ArrayFromV8Array( isolate, v8Value );
-      break;
-    }
-    case Dali::Property::MAP:
-    {
-      if( v8Value->IsObject() )
-      {
-        v8::Local<v8::Object> object = v8::Handle<v8::Object>::Cast(v8Value);
-        Dali::Property::Map propertyMap = V8Utils::GetPropertyMapFromObject(isolate, object);
-        daliPropertyValue = Dali::Property::Value( propertyMap );
-      }
-      else if( V8Utils::IsStringPrimitiveOrObject( v8Value) )
-      {
-        // There are special cases where a property with property map type can accept a string value,
-        // so we do the additional check here.
-        daliPropertyValue = Dali::Property::Value( V8Utils::GetStringValue( isolate, v8Value) );
-      }
-
-      break;
-    }
-    case Dali::Property::NONE:
-    default:
-    {
-      break;
-    }
-  } // switch type
-
-  return daliPropertyValue;
-}
-
-Dali::Property::Value PropertyValueWrapper::ExtractPropertyValue( v8::Isolate* isolate, v8::Local< v8::Value> v8Value)
-{
-  v8::HandleScope handleScope( isolate);
-
-  Dali::Property::Value daliPropertyValue;
-
-  // Check if it's a javascript Array
-  Dali::Property::Value array = VectorOrMatrixFromV8Array( isolate, v8Value );
-
-  if( V8Utils::IsBooleanPrimitiveOrObject( v8Value ) )
-  {
-    daliPropertyValue = Dali::Property::Value( V8Utils::GetBooleanValue( isolate, v8Value));
-  }
-  else if( V8Utils::IsNumberPrimitiveOrObject( v8Value )  )
-  {
-    daliPropertyValue = Dali::Property::Value( V8Utils::GetNumberValue( isolate, v8Value) );
-  }
-  else if( v8Value->IsInt32() )
-  {
-    daliPropertyValue = Dali::Property::Value(  v8Value->Int32Value()  ) ;
-  }
-  else if( V8Utils::IsStringPrimitiveOrObject( v8Value) )
-  {
-    daliPropertyValue = Dali::Property::Value( V8Utils::GetStringValue( isolate, v8Value) );
-  }
-  else if( array.GetType() == Dali::Property::VECTOR2
-         || array.GetType() == Dali::Property::VECTOR3
-         || array.GetType() == Dali::Property::VECTOR4 )
-  {
-    daliPropertyValue = array;
-  }
-  else if( array.GetType() == Dali::Property::MATRIX )
-  {
-    Dali::Matrix mat = array.Get<Dali::Matrix>();
-    daliPropertyValue = mat;
-  }
-  else if( array.GetType() == Dali::Property::MATRIX3 )
-  {
-    Dali::Matrix3 mat = array.Get<Dali::Matrix3>();
-    daliPropertyValue = mat;
-  }
-  else if( array.GetType() == Dali::Property::ARRAY )
-  {
-    daliPropertyValue = ArrayFromV8Array( isolate, v8Value );
-  }
-  else if( v8Value->IsObject() )
-  {
-    // Assume this is a property map
-    v8::Local<v8::Object> object = v8::Handle<v8::Object>::Cast(v8Value);
-    Dali::Property::Map propertyMap = V8Utils::GetPropertyMapFromObject(isolate, object);
-    daliPropertyValue = Dali::Property::Value( propertyMap );
-  }
-
-  return daliPropertyValue;
-}
-
-void PropertyValueWrapper::NewRotation( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate);
-
-  if(!args.IsConstructCall())
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Rotation constructor called without 'new'");
-    return;
-  }
-  v8::Local<v8::Object > object;
-
-  float v[4] = {0.f,0.f,0.f,0.f};
-
-  bool foundAllArguments(false);
-  V8Utils::ReadFloatArguments( foundAllArguments, v, 4, args, 0.f );
-
-  int length = args.Length();
-
-  // if length = 4 create AngleAxis, else create Quaternion
-
-  if( length > 3 )
-  {
-    const Dali::AngleAxis axis(  Degree( v[0] ), Vector3(v[1], v[2], v[3]) );
-    object = WrapDaliProperty( isolate, Dali::Property::Value( axis ) );
-  }
-  else if( length > 2 )
-  {
-    object = WrapDaliProperty( isolate, Dali::Quaternion( Degree(v[0]), Degree(v[1]), Degree(v[2]) ) );
-  }
-  else
-  {
-    const Dali::Quaternion quaternion( Dali::Quaternion( Dali::ANGLE_0, Dali::Vector3::YAXIS));
-    object = WrapDaliProperty( isolate, quaternion );
-  }
-
-  args.GetReturnValue().Set( object );
-}
-
-//
-void PropertyValueWrapper::NewMatrix( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate);
-
-  if(!args.IsConstructCall())
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Rotation constructor called without 'new'");
-    return;
-  }
-  v8::Local<v8::Object > object;
-
-  // we're constructing either a 4x4 Dali::Matrix or a 3x3 Dali::Matrix
-  // we're expecting an array of floats
-  // 4x4 = m00, m01, m02, m03,  m10, m11, m12, m13, m20, m21, m22, m23, m30, m31, m32, m33
-  // 3x3 or m00, m01, m02, m10, m11, m12,m20, m21, m22, m30, m31, m32,
-  bool foundAllArguments( false );
-
-  if( args.Length() == 16 )
-  {
-    float v[16];
-    V8Utils::ReadFloatArguments( foundAllArguments, v, 16, args, 0.f );
-    if(! foundAllArguments )
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "invalid Matrix parameters");
-      return;
-    }
-    Dali::Matrix matrix( v[0] );
-    object = WrapDaliProperty( isolate ,  Dali::Property::Value( matrix ) );
-  }
-  else if ( args.Length() == 9 )
-  {
-    float v[9];
-    V8Utils::ReadFloatArguments( foundAllArguments, v, 9, args, 0.f );
-    if(! foundAllArguments )
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "invalid Matrix parameters");
-      return;
-    }
-    Dali::Matrix3 matrix( v[0], v[1],v[2],v[3],v[4],v[5],v[6],v[7],v[8] );
-    object = WrapDaliProperty( isolate ,  Dali::Property::Value( matrix ) );
-  }
-  args.GetReturnValue().Set( object );
-
-
-}
-
-v8::Handle<v8::ObjectTemplate> PropertyValueWrapper::MakeDaliPropertyTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // property handle intercepts property getters and setters
-  objTemplate->SetNamedPropertyHandler( PropertyGet, PropertySet);
-
-  return handleScope.Escape( objTemplate );
-
-}
-
-v8::Handle<v8::Object> PropertyValueWrapper::WrapDaliProperty(v8::Isolate* isolate, const Dali::Property::Value &value)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  // Simple Dali properties (ints, strings, bools etc) are stored as JavaScript primitives (v8::Boolean ...)
-  // more complex properties (Vectors, Rectangles...) are wrapped by a JavaScript object
-  if( IsPrimitive( value ))
-  {
-    return handleScope.Escape( CreateJavaScriptPrimitive( isolate, value) );
-  }
-
-  // This will wrap a Dali structure (Vector, Rect, Matrix etc) inside a JavaScript object.
-
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if(PropertyValueWrapper::mTemplatePrimitive.IsEmpty() )
-  {
-    objectTemplate = MakeDaliPropertyTemplate( isolate );
-    PropertyValueWrapper::mTemplatePrimitive.Reset( isolate, objectTemplate);
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, PropertyValueWrapper::mTemplatePrimitive );
-  }
-
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  PropertyValueWrapper* pointer =  new PropertyValueWrapper( value, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-   // assign the JavaScript object to the wrapper.
-  // This also stores Dali object, in an internal field inside the JavaScript object.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-
-}
-
-// Utility function that extracts the C++ map pointer from a wrapper
-// object.
-
-PropertyValueWrapper*  PropertyValueWrapper::Unwrap( v8::Isolate* isolate, v8::Handle< v8::Object> obj)
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( obj->GetInternalField(0) );
-  void* ptr = field->Value();
-  return static_cast< PropertyValueWrapper *>(ptr);
-}
-
-void PropertyValueWrapper::PropertyGet( v8::Local<v8::String> propertyName,
-                                        const v8::PropertyCallbackInfo<v8::Value>& info)
-{
-  v8::Isolate* isolate = info.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  std::string name = V8Utils::v8StringToStdString( propertyName );
-
-  // unwrap the object
-  PropertyValueWrapper* propWrapper = Unwrap( isolate, info.This() );
-
-  v8::Local<v8::Value> value = GetV8ValueFrom( isolate, propWrapper->mValue, name );
-
-  info.GetReturnValue().Set( value );
-}
-
-void PropertyValueWrapper::PropertySet( v8::Local<v8::String> propertyName,
-                  v8::Local<v8::Value> javaScriptValue,
-                  const v8::PropertyCallbackInfo<v8::Value>& info)
-{
-  v8::Isolate* isolate = info.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  std::string name =  V8Utils::v8StringToStdString( propertyName );
-
-  PropertyValueWrapper* propWrapper = Unwrap( isolate, info.This() );
-
-  SetFromV8Value( isolate, propWrapper->mValue, name, javaScriptValue );
-
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/object/property-value-wrapper.h b/plugins/dali-script-v8/src/object/property-value-wrapper.h
deleted file mode 100644 (file)
index 6a4bbf6..0000000
+++ /dev/null
@@ -1,166 +0,0 @@
-#ifndef DALI_V8PLUGIN_PROPERTYVALUE_WRAPPER_H
-#define DALI_V8PLUGIN_PROPERTYVALUE_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/object/property-value.h>
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * An PropertyValue wrapper.
- * Provides access to Property Value specific functionality and V8 memory handling.
- *
- * Only wraps complex types.
- * Native JavaScript Property Value types such as float, bool string etc are handled by the actor wrapper.
- * This supports sub property access for maps and vector.x etc and math functionality not easily mapped
- * to JavaScript objects.
- *
- */
-class PropertyValueWrapper : public BaseWrappedObject
-{
-public:
-
-  /**
-   * @brief Constructor
-   * @param[in] value property value to wrap
-   * @param[in] gc Dali garbage collector interface
-   */
-  explicit PropertyValueWrapper( const Dali::Property::Value& value, GarbageCollectorInterface& gc );
-
-  /**
-   * @brief Destructor
-   */
-  virtual ~PropertyValueWrapper();
-
-  /**
-   * @brief Creates a new Rotation wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted as (x=0,y=0)
-   */
-  static void NewRotation( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * @brief Creates a new Matrix wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments can be a 4 x 4 matrix or a 3 x 3 matrix
-   */
-  static void NewMatrix( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * @brief Wraps a dali property value inside a JavaScript object
-   * @return JavaScript object
-   */
-  static v8::Handle<v8::Object> WrapDaliProperty(v8::Isolate* isolate, const Dali::Property::Value &value);
-
-  /**
-   * @brief Extract a property value wrapper from a javascript object
-   * @return property value wrapper
-   */
-  static PropertyValueWrapper*  Unwrap( v8::Isolate* isolate, v8::Handle< v8::Object> obj);
-
-  /**
-   * Extract a property value from a javascript object, of a given type
-   * @return property value
-   */
-  static Dali::Property::Value ExtractPropertyValue( v8::Isolate* isolate, v8::Local< v8::Value> v8Value, Dali::Property::Type type);
-
-  /**
-   * Extract a property value from a javascript object
-   * @return property value
-   */
-  static Dali::Property::Value ExtractPropertyValue( v8::Isolate* isolate, v8::Local< v8::Value> v8Value);
-
-  /**
-   * @brief Extract a vector or a matrix from a JavaScript array
-   * @return property value ( vector or matrix)
-   */
-  static Dali::Property::Value VectorOrMatrixFromV8Array( v8::Isolate* isolate, const v8::Local<v8::Value>& v8Value);
-
-  /**
-   * @brief Extract a Dali Property::Array from a JavaScript array
-   * @return array property value ( vector or matrix)
-   */
-  static Dali::Property::Value ArrayFromV8Array( v8::Isolate* isolate, const v8::Local<v8::Value>& v8Value);
-
-  /**
-   * @return property value
-   */
-   Dali::Property::Value GetValue()
-   {
-     return mValue;
-   }
-
-private:
-
-
-   /**
-    * @brief get the value for a property for JavaScript object than contains a Dali object.
-    * E.g. Get( "x", JavaScript object that wraps a Dali Vector2 )
-    * @param[in] propertyName property name
-    * @param[in] info reference to PropertyCallbackInfo structure (contains the Javascript
-    * object and the return value).
-    */
-   static void PropertyGet( v8::Local<v8::String> propertyName,
-                             const v8::PropertyCallbackInfo<v8::Value>& info);
-
-
-   /**
-    * @brief Set the value for a property for JavaScript object than contains a Dali object.
-    * E.g. Set( "x", 103, JavaScript object that wraps a Dali Vector2 )
-    * @param[in] propertyName property name
-    * @param[in] javaScriptValue javascript value to set, this is typically a number
-    * @param[in] info reference to PropertyCallbackInfo structure (contains the Javascript
-    * object).
-    */
-   static void PropertySet( v8::Local<v8::String> propertyName,
-                     v8::Local<v8::Value> javaScriptValue,
-                     const v8::PropertyCallbackInfo<v8::Value>& info);
-
-
-
-
-  // The Property Value ObjectTemplates
-  static v8::Persistent<v8::ObjectTemplate> mTemplatePrimitive;
-
-  /**
-   * @brief used to make Vectors, rotation and rect template
-   * Just produces an object template with 2 internal fields
-   * A type and a pointer to the dali object
-   */
-  static v8::Handle<v8::ObjectTemplate> MakeDaliPropertyTemplate( v8::Isolate* isolate );
-
-private:
-
-  Dali::Property::Value mValue;     ///< property value
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_PROPERTYVALUE_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/render-tasks/render-task-api.cpp b/plugins/dali-script-v8/src/render-tasks/render-task-api.cpp
deleted file mode 100644 (file)
index b87c123..0000000
+++ /dev/null
@@ -1,526 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// CLASS HEADER
-#include "render-task-api.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <render-tasks/render-task-wrapper.h>
-#include <image/image-wrapper.h>
-#include <actors/actor-wrapper.h>
-#include <dali/public-api/render-tasks/render-task.h>
-#include <dali/public-api/actors/camera-actor.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace // un named namespace
-{
-
-
-RenderTask GetRenderTask( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField(0) );
-  void* ptr = field->Value();
-
-  RenderTaskWrapper* wrapper = static_cast< RenderTaskWrapper *>(ptr);
-  return wrapper->GetRenderTask();
-}
-
-}
-
-/**
- * Set the actors to be rendered
- * @method setSourceActor
- * @for RenderTask
- * @param {Object} actor This actor and its children will be rendered.
- */
-void RenderTaskApi::SetSourceActor( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-  bool found( false );
-  Actor sourceActor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-
-  if( found )
-  {
-    renderTask.SetSourceActor( sourceActor );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "source actor not found" );
-  }
-
-}
-/**
- * Get the actor to be rendered
- * @method getSourceActor
- * @for RenderTask
- * @param {Object} actor source actor
- */
-void RenderTaskApi::GetSourceActor(const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  Actor source = renderTask.GetSourceActor();
-
-  v8::Handle < v8::Object > wrappedActor = ActorWrapper::WrapActor( isolate, source );
-  args.GetReturnValue().Set( wrappedActor );
-}
-
-/**
- * Set whether the RenderTask has exclusive access to the source actors; the default is false.
- * @method setExclusive
- * @for RenderTask
- * @param {Boolean} exclusive True if the source actors will only be rendered by this render-task.
- */
-void RenderTaskApi::SetExclusive( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  bool found( false );
-  bool exclusive = V8Utils::GetBooleanParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "boolean parameter missing" );
-    return;
-  }
-  renderTask.SetExclusive( exclusive );
-
-}
-
-/**
- * Query whether the RenderTask has exclusive access to the source actors.
- * @method isExclusive
- * @for RenderTask
- * @return {Boolean} exclusive True if the source actors will only be rendered by this render-task.
- */
-void RenderTaskApi::IsExclusive( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  args.GetReturnValue().Set( v8::Boolean::New( isolate, renderTask.IsExclusive() ) );
-
-}
-
-/**
- * Set whether the render-task should be considered for input handling; the default is true.
- *
- * The task used for input handling will be last task in the RenderTaskList which has input enabled,
- * and has a valid source & camera actor.
- * A RenderTask targetting a frame-buffer can still be hit-tested, provided that the screen->frame-buffer
- * coordinate conversion is successful; see also SetScreenToFrameBufferFunction().
- * @method setInputEnabled
- * @for RenderTask
- * @param {Boolean} enabled True if the render-task should be considered for input handling.
- */
-void RenderTaskApi::SetInputEnabled( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  bool found( false );
-  bool inputEnabled = V8Utils::GetBooleanParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "boolean parameter missing" );
-    return;
-  }
-  renderTask.SetInputEnabled( inputEnabled );
-
-}
-
-/**
- * Query whether the render-task should be considered for input handling.
- * @method getInputEnabled
- * @for RenderTask
- * @return {Boolean} enabled True if the render-task should be considered for input handling.
- */
-void RenderTaskApi::GetInputEnabled( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  args.GetReturnValue().Set( v8::Boolean::New( isolate, renderTask.GetInputEnabled() ) );
-
-
-}
-
-/**
- * Set the actor from which the scene is viewed.
- * @method setCameraActor
- * @for RenderTask
- * @param {Object} cameraActor The scene is viewed from the perspective of this actor.
- */
-void RenderTaskApi::SetCameraActor( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-  bool found (false );
-  CameraActor cameraActor;
-  Actor actor =  V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( found )
-  {
-    cameraActor = CameraActor::DownCast( actor );
-  }
-
-  if( cameraActor )
-  {
-     renderTask.SetCameraActor( cameraActor );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "source actor not found" );
-  }
-
-}
-
-/**
- * Retrieve the actor from which the scene is viewed..
- * @method getCameraActor
- * @for RenderTask
- * @return {Object} cameraActor The scene is viewed from the perspective of this actor.
- */
-void RenderTaskApi::GetCameraActor( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  Actor cameraActor = renderTask.GetSourceActor();
-
-  v8::Handle < v8::Object > wrappedActor = ActorWrapper::WrapActor( isolate, cameraActor );
-  args.GetReturnValue().Set( wrappedActor );
-
-}
-
-/**
- * Set the frame-buffer used as a render target.
- * @method setTargetFrameBuffer
- * @for RenderTask
- * @param {Object}  frameBuffer A valid frame-buffer handle to enable off-screen rendering, or an uninitialized handle to disable.
- */
-void RenderTaskApi::SetTargetFrameBuffer(const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  bool found( false );
-  // @TODO Test this, may need to implement a Framebuffer image.?
-  Image image = V8Utils::GetImageParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-     DALI_SCRIPT_EXCEPTION( isolate, "bad parameters" );
-     return;
-  }
-
-  FrameBufferImage frameBufferImage = FrameBufferImage::DownCast(image);
-
-  renderTask.SetTargetFrameBuffer( frameBufferImage );
-
-}
-
-
-/**
- * Get the frame-buffer used as a render target.
- * @method getTargetFrameBuffer
- * @for RenderTask
- * @return {Object}  frameBuffer A valid frame-buffer handle to enable off-screen rendering, or an uninitialized handle to disable.
- */
-void RenderTaskApi::GetTargetFrameBuffer( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  // wrap the image
-  // @TODO Test this, may need to implement a Framebuffer image wrapper.?
-  v8::Local<v8::Object> localObject = ImageWrapper::WrapImage( isolate, renderTask.GetTargetFrameBuffer(),ImageWrapper::FRAME_BUFFER_IMAGE );
-  args.GetReturnValue().Set( localObject );
-}
-
-
-/**
- * Set the actor used to convert screen coordinates to frame-buffer coordinates.
- *
- * The local coordinates of the actor are mapped as frame-buffer coordinates.
- * This is useful for hit-testing actors which are rendered off-screen.
- * Note: The mapping actor needs to be rendered by the default render task to make the mapping work properly.
- * @method setScreenToFrameBufferMappingActor
- * @for RenderTask
- * @param {Object}  mappingActor The actor used for conversion.
- */
-void RenderTaskApi::SetScreenToFrameBufferMappingActor( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-  bool found( false );
-  Actor sourceActor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-
-  if( found )
-  {
-    renderTask.SetScreenToFrameBufferMappingActor( sourceActor );
-  }
-  else
-  {
-      DALI_SCRIPT_EXCEPTION( isolate, "source actor not found" );
-  }
-}
-
-/**
- * Retrieve the actor used to convert screen coordinates to frame-buffer coordinates.
- *
- * @method getScreenToFrameBufferMappingActor
- * @for RenderTask
- * @return {Object} actor used for conversion.
- */
-void RenderTaskApi::GetScreenToFrameBufferMappingActor( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  Actor source = renderTask.GetScreenToFrameBufferMappingActor();
-
-  v8::Handle < v8::Object > wrappedActor = ActorWrapper::WrapActor( isolate, source );
-  args.GetReturnValue().Set( wrappedActor );
-}
-
-/**
- * Retrieve the GL viewport used when rendering.
- *
- * @method getViewport
- * @for RenderTask
- * @return {Object} object with the properties { x,y,width,height }
- */
-void RenderTaskApi::GetViewport( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  v8::Local<v8::Object> viewportObject = v8::Object::New( isolate );
-
-  Viewport viewPort = renderTask.GetViewport();
-
-  viewportObject->Set( v8::String::NewFromUtf8( isolate, "x"), v8::Number::New( isolate,viewPort.x ));
-  viewportObject->Set( v8::String::NewFromUtf8( isolate, "y"), v8::Number::New( isolate,viewPort.y ));
-  viewportObject->Set( v8::String::NewFromUtf8( isolate, "width"), v8::Number::New( isolate,viewPort.width ));
-  viewportObject->Set( v8::String::NewFromUtf8( isolate, "height"), v8::Number::New( isolate,viewPort.height ));
-
-  args.GetReturnValue().Set( viewportObject );
-
-}
-
-/**
- * Set the GL viewport used when rendering.
- * This specifies the transformation between normalized device coordinates and target window (or frame-buffer) coordinates.
- * By default this will match the target window or frame-buffer size.
- * Unlike the glViewport method, the x & y coordinates refer to the top-left of the viewport rectangle.
- * @method setViewport
- * @for RenderTask
- * @param {Object} object with the properties { x,y,width,height }
- */
-void RenderTaskApi::SetViewport( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  if( args.Length() != 1 )
-  {
-     DALI_SCRIPT_EXCEPTION( isolate, "missing / invalid parameters" );
-     return;
-  }
-  v8::Local<v8::Value > viewportValue = args[0];
-  if( !viewportValue->IsObject() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid parameters" );
-    return;
-  }
-  v8::Local<v8::Object> obj = viewportValue->ToObject();
-  v8::Local<v8::Value> xValue = obj->Get( v8::String::NewFromUtf8( isolate, "x" ) );
-  v8::Local<v8::Value> yValue = obj->Get( v8::String::NewFromUtf8( isolate, "y" ) );
-  v8::Local<v8::Value> widthValue = obj->Get( v8::String::NewFromUtf8( isolate, "width" ) );
-  v8::Local<v8::Value> heightValue = obj->Get( v8::String::NewFromUtf8( isolate, "height" ) );
-
-  if( xValue->IsNumber() &&  yValue->IsNumber() &&   widthValue->IsNumber() &&  heightValue->IsNumber())
-  {
-    Viewport viewPort;
-    viewPort.x= xValue->ToNumber()->Value();
-    viewPort.y = yValue->ToNumber()->Value();
-    viewPort.width = widthValue->ToNumber()->Value();
-    viewPort.height = heightValue->ToNumber()->Value();
-    renderTask.SetViewport( viewPort );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing x,y,width,height property" );
-    return;
-  }
-}
-
-/**
- * Set whether the render-task will clear the results of previous render-tasks.
- *
- * The default is false.
- *
- * The default GL surface is cleared automatically at the
- * beginning of each frame; this setting is only useful when 2+
- * render-tasks are used, and the result of the first task needs to
- * be (partially) cleared before rendering the second. * @method setViewport
- * @for RenderTask
- * @method setClearEnabled
- * @param {Boolean} enabled True if the render-task should clear
- */
-void RenderTaskApi::SetClearEnabled( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  bool found( false );
-  bool clearEnabled = V8Utils::GetBooleanParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "boolean parameter missing" );
-    return;
-  }
-  renderTask.SetClearEnabled( clearEnabled );
-
-}
-
-/**
- * Query whether the render-task will clear the results of previous render-tasks.
- *
- * @for RenderTask
- * @method getClearEnabled
- * @return {Boolean} True if the render-task should clear.
- */
-void RenderTaskApi::GetClearEnabled( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  args.GetReturnValue().Set( v8::Boolean::New( isolate, renderTask.GetClearEnabled() ) );
-}
-
-/**
- * Set whether the render task will cull the actors to the camera's view frustum.
- * Note that this will only affect image actors that use the default vertex shader.
- * The default mode is to cull actors.
- * @for RenderTask
- * @method setCullMode
- * @param {Boolean}  cullMode True if the renderers should be culled.
- */
-void RenderTaskApi::SetCullMode ( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  bool found( false );
-  bool cullMode = V8Utils::GetBooleanParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "boolean parameter missing" );
-    return;
-  }
-  renderTask.SetCullMode( cullMode );
-}
-
-/**
- * Get the cull mode
- * @for RenderTask
- * @method getCullMode
- * @return {Boolean}  cullMode True if the renderers should be culled.
- */
-void RenderTaskApi::GetCullMode( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  args.GetReturnValue().Set( v8::Boolean::New( isolate, renderTask.GetCullMode() ) );
-}
-
-/**
- * Set the refresh-rate of the RenderTask.
- *
- * The default is dali.REFRESH_ALWAYS (1), meaning that the RenderTask will be processed every frame.
- * It may be desirable to process less frequently e.g. SetRefreshRate(3) will process once every 3 frames.
- * The dali.REFRESH_ONCE value means that the RenderTask will be processed once only, to take a snap-shot of the scene.
- * Repeatedly calling setRefreshRate(dali.REFRESH_ONCE) will cause more snap-shots to be taken.
- * @method setRefreshRate
- * @param {Integer} refresh rate  (0 =  dali.REFRESH_ONCE, 1= dali.REFRESH_ALWAYS)
- */
-void RenderTaskApi::SetRefreshRate( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  bool found( false );
-  int rate = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 );
-  if( !found )
-  {
-     DALI_SCRIPT_EXCEPTION( isolate, "Integer parameter missing" );
-     return;
-  }
-  renderTask.SetRefreshRate( rate );
-}
-
-/**
- *  Query the refresh-rate of the RenderTask.
- * @method getRefreshRate
- * @return {Integer} refresh rate  (0 =  dali.REFRESH_ONCE, 1= dali.REFRESH_ALWAYS)
- */
-void RenderTaskApi::GetRefreshRate( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTask renderTask = GetRenderTask( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, renderTask.GetRefreshRate() ) );
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/render-tasks/render-task-api.h b/plugins/dali-script-v8/src/render-tasks/render-task-api.h
deleted file mode 100644 (file)
index 622f9bc..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-#ifndef DALI_V8PLUGIN_RENDER_TASK_API_H
-#define DALI_V8PLUGIN_RENDER_TASK_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace RenderTaskApi
-{
-
-
-  /**
-   * RenderTask API see render-task.h for a description
-   */
-  void SetSourceActor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetSourceActor(const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetExclusive( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void IsExclusive( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetInputEnabled( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetInputEnabled( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetCameraActor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetCameraActor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetTargetFrameBuffer(const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetTargetFrameBuffer( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetScreenToFrameBufferMappingActor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetScreenToFrameBufferMappingActor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetViewport( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetViewport( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetClearEnabled( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetClearEnabled( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetCullMode ( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetCullMode( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetRefreshRate( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetRefreshRate( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace RenderTaskApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_RENDER_TASK_API_H
diff --git a/plugins/dali-script-v8/src/render-tasks/render-task-list-api.cpp b/plugins/dali-script-v8/src/render-tasks/render-task-list-api.cpp
deleted file mode 100644 (file)
index 311bedb..0000000
+++ /dev/null
@@ -1,155 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "render-task-list-api.h"
-
-// EXTERNAL INCLUDES
-#include <dali/integration-api/debug.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <render-tasks/render-task-list-wrapper.h>
-#include <render-tasks/render-task-wrapper.h>
-#include <render-tasks/render-task-api.h>
-#include <object/property-value-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace // un named namespace
-{
-
-/**
- *
-## RenderTaskList API
-
-
-An ordered list of Dali::RenderTasks
-
-These tasks describe how the Dali scene should be rendered;
-See {{#crossLink "RenderTask"}}{{/crossLink}}
-
- @class RenderTaskList
-*/
-
-
-RenderTaskList GetRenderTaskList( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField( 0 ) );
-  void* ptr = field->Value();
-
-  RenderTaskListWrapper* wrapper = static_cast<RenderTaskListWrapper *>( ptr );
-  return wrapper->GetRenderTaskList();
-}
-
-
-} // un-named namespace
-
-/**
- * Create a new RenderTask.
- * This will be appended to the list of render-tasks.
- * @method createTask
- * @for RenderTaskList
- * @return {Object} RenderTask
- */
-void RenderTaskListApi::CreateTask( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTaskList taskList = GetRenderTaskList( isolate, args);
-
-  RenderTask renderTask = taskList.CreateTask();
-
-  v8::Handle<v8::Object> wrappedTask = RenderTaskWrapper::WrapRenderTask(isolate, renderTask);
-  args.GetReturnValue().Set( wrappedTask  );
-
-}
-
-/**
- * Remove a RenderTask from the list of render-tasks.
- * @method removeTask
- * @for RenderTaskList
- * @param{Object} RenderTask to remove
- */
-void RenderTaskListApi::RemoveTask( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTaskList taskList = GetRenderTaskList( isolate, args );
-
-  bool found( false );
-  RenderTask renderTask = V8Utils::GetRenderTaskParameter( PARAMETER_0, found, isolate, args );
-  if(! found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "render-task parameter missing" );
-    return;
-  }
-  taskList.RemoveTask( renderTask );
-}
-/**
- * Query the number of render-tasks in the list.
- * This is ordered i.e. the task with index 0 is the first to be processed each frame.
- * @method getTaskCount
- * @for RenderTaskList
- * @return {Number}  The number of render-tasks.
- */
-void RenderTaskListApi::GetTaskCount( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTaskList taskList = GetRenderTaskList( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, taskList.GetTaskCount() ) );
-
-}
-/**
- * Retrieve a render-task.
- * index should be in range i.e. less than GetTaskCount().
- * @method getTask
- * @for RenderTaskList
- * @param {Number} index The index of the render task to retrieve
- * @return {Object}  The render-task
- */
-void RenderTaskListApi::GetTask( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  RenderTaskList taskList = GetRenderTaskList( isolate, args );
-
-  bool found( false );
-  int index = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 );
-  if( !found )
-  {
-     DALI_SCRIPT_EXCEPTION( isolate, "Integer parameter missing" );
-     return;
-  }
-  RenderTask renderTask = taskList.GetTask( index );
-
-  v8::Handle<v8::Object> wrappedTask = RenderTaskWrapper::WrapRenderTask(isolate, renderTask);
-  args.GetReturnValue().Set( wrappedTask  );
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/render-tasks/render-task-list-api.h b/plugins/dali-script-v8/src/render-tasks/render-task-list-api.h
deleted file mode 100644 (file)
index 1d8a6b6..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-#ifndef DALI_V8PLUGIN_RENDER_TASK_LIST_API_H
-#define DALI_V8PLUGIN_RENDER_TASK_LIST_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/render-tasks/render-task-list.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace RenderTaskListApi
-{
-  /**
-   * Constructor
-   */
-  RenderTaskList New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-
-  /**
-   * RenderTaskList API see render-task-list.h for a description
-   */
-  void CreateTask( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void RemoveTask( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetTaskCount( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetTask( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace RenderTaskListApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_RENDER_TASK_LIST_API_H
diff --git a/plugins/dali-script-v8/src/render-tasks/render-task-list-wrapper.cpp b/plugins/dali-script-v8/src/render-tasks/render-task-list-wrapper.cpp
deleted file mode 100644 (file)
index 03e4dfb..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "render-task-list-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-#include <render-tasks/render-task-list-api.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-
-namespace Dali
-{
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> RenderTaskListWrapper::mRenderTaskListTemplate;
-
-namespace
-{
-
-/**
- * Contains a list of all functions that can be called
- */
-const ApiFunction RenderTaskListFunctionTable[]=
-{
-    /**************************************
-    * RenderTaskList API (in order of renderTaskList.h)
-    **************************************/
-
-    { "CreateTask"             , RenderTaskListApi::CreateTask     },
-    { "RemoveTask"             , RenderTaskListApi::RemoveTask     },
-    { "GetTaskCount"           , RenderTaskListApi::GetTaskCount   },
-    { "GetTask"                , RenderTaskListApi::GetTask        },
-
-
-};
-
-const unsigned int RenderTaskListFunctionTableCount = sizeof(RenderTaskListFunctionTable)/sizeof(RenderTaskListFunctionTable[0]);
-} //un-named space
-
-
-RenderTaskListWrapper::RenderTaskListWrapper( const Dali::RenderTaskList& renderTaskList, GarbageCollectorInterface& gc )
-: BaseWrappedObject( BaseWrappedObject::RENDER_TASK_LIST , gc )
-{
-    mRenderTaskList = renderTaskList;
-}
-
-RenderTaskListWrapper::~RenderTaskListWrapper()
-{
-
-}
-
-v8::Handle<v8::Object> RenderTaskListWrapper::WrapRenderTaskList(v8::Isolate* isolate, const Dali::RenderTaskList& renderTaskList )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetRenderTaskListTemplate( isolate);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the RenderTaskList wrapper
-  RenderTaskListWrapper* pointer =  new RenderTaskListWrapper( renderTaskList, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> RenderTaskListWrapper::GetRenderTaskListTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( mRenderTaskListTemplate.IsEmpty() )
-  {
-    objectTemplate = MakeRenderTaskListTemplate( isolate );
-    mRenderTaskListTemplate.Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, mRenderTaskListTemplate );
-  }
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> RenderTaskListWrapper::MakeRenderTaskListTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  // add intercepts for Signals, we can't use HandleWrapper::AddIntercepts because RenderTaskList doesn't inherit
-  // from Handle ( just baseHandle)
-  ObjectTemplateHelper::AddSignalConnectAndDisconnect( isolate, objTemplate );
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, RenderTaskListFunctionTable, RenderTaskListFunctionTableCount );
-
-  return handleScope.Escape( objTemplate );
-}
-
-//  v8::Local<v8::Object> localObject = WrapRenderTaskList( isolate, renderTaskList );
- // args.GetReturnValue().Set( localObject );
-
-
-
-RenderTaskList RenderTaskListWrapper::GetRenderTaskList()
-{
-  return mRenderTaskList;
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/render-tasks/render-task-list-wrapper.h b/plugins/dali-script-v8/src/render-tasks/render-task-list-wrapper.h
deleted file mode 100644 (file)
index c074007..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-#ifndef DALI_V8PLUGIN_RENDER_TASK_LIST_WRAPPER_H
-#define DALI_V8PLUGIN_RENDER_TASK_LIST_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/render-tasks/render-task-list.h>
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * RenderTaskList  wrapper.
- * Provides access to RenderTaskList specific functionality
- */
-class RenderTaskListWrapper : public BaseWrappedObject
-{
-
-public:
-
-  RenderTaskListWrapper( const RenderTaskList& renderTaskList,
-                GarbageCollectorInterface& gc );
-
-  virtual ~RenderTaskListWrapper();
-
-  /**
-   * Wraps an renderTaskList
-   */
-  static v8::Handle<v8::Object> WrapRenderTaskList(v8::Isolate* isolate, const Dali::RenderTaskList& );
-
-
-  // The RenderTaskListAttribute ObjectTemplate, we cache templates so we don't have
-  // keep generating them everytime we want to create an RenderTaskList
-  static v8::Persistent<v8::ObjectTemplate> mRenderTaskListTemplate;
-
-  RenderTaskList GetRenderTaskList();
-
-
-private:
-
-  RenderTaskList mRenderTaskList;  ///< renderTaskList object
-
-  static v8::Handle<v8::ObjectTemplate> MakeRenderTaskListTemplate( v8::Isolate* isolate );
-  static v8::Local<v8::ObjectTemplate> GetRenderTaskListTemplate( v8::Isolate* isolate );
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_RENDER_TASK_LIST_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/render-tasks/render-task-wrapper.cpp b/plugins/dali-script-v8/src/render-tasks/render-task-wrapper.cpp
deleted file mode 100644 (file)
index 6d48d80..0000000
+++ /dev/null
@@ -1,155 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "render-task-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <render-tasks/render-task-api.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-#include <signals/signal-manager.h>
-#include <dali-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> RenderTaskWrapper::mRenderTaskTemplate;
-
-namespace // un-named name space
-{
-
-/**
- * Contains a list of all functions that can be called
- */
-const ApiFunction RenderTaskFunctionTable[]=
-{
-    /**************************************
-    * RenderTask API (in order of renderTask.h)
-    **************************************/
-
-   { "SetSourceActor"             , RenderTaskApi::SetSourceActor },
-   { "GetSourceActor"             , RenderTaskApi::GetSourceActor },
-   { "SetExclusive"               , RenderTaskApi::SetExclusive },
-   { "IsExclusive"                , RenderTaskApi::IsExclusive },
-   { "SetInputEnabled"            , RenderTaskApi::SetInputEnabled },
-   { "GetInputEnabled"            , RenderTaskApi::GetInputEnabled },
-   { "SetCameraActor"             , RenderTaskApi::SetCameraActor },
-   { "GetCameraActor"             , RenderTaskApi::GetCameraActor },
-   { "SetTargetFrameBuffer"       , RenderTaskApi::SetTargetFrameBuffer },
-   { "GetTargetFrameBuffer"        , RenderTaskApi::GetTargetFrameBuffer },
-   { "SetScreenToFrameBufferMappingActor" , RenderTaskApi::SetScreenToFrameBufferMappingActor },
-   { "GetScreenToFrameBufferMappingActor" , RenderTaskApi::GetScreenToFrameBufferMappingActor },
-
-   // USE viewportPosition property "SetViewportPosition" , RenderTaskApi::SetViewportPosition },
-   // USE viewportPosition property{ "GetCurrentViewportPosition" , RenderTaskApi::GetCurrentViewportPosition },
-   // USE viewportSize property { "SetViewportSize" ,       RenderTaskApi::SetViewportSize },
-   // USE viewportSize property { "SetViewportSize" ,       RenderTaskApi::SetViewportSize },
-
-   { "GetViewport" ,                RenderTaskApi::GetViewport },
-   { "SetViewport" ,                RenderTaskApi::SetViewport },
-
-   // USE clearColor property, { "SetClearColor" ,        RenderTaskApi::SetClearColor },
-   // USE clearColor property, // { "GetClearColor" ,     RenderTaskApi::GetClearColor },
-
-   { "SetClearEnabled" ,            RenderTaskApi::SetClearEnabled },
-   { "GetClearEnabled" ,            RenderTaskApi::GetClearEnabled },
-   { "SetCullMode" ,                RenderTaskApi::SetCullMode },
-   { "GetCullMode" ,                RenderTaskApi::GetCullMode },
-   { "SetRefreshRate" ,             RenderTaskApi::SetRefreshRate },
-   { "GetRefreshRate" ,             RenderTaskApi::GetRefreshRate },
-
-};
-
-const unsigned int RenderTaskFunctionTableCount = sizeof(RenderTaskFunctionTable)/sizeof(RenderTaskFunctionTable[0]);
-} //un-named space
-
-
-RenderTaskWrapper::RenderTaskWrapper( const Dali::RenderTask& renderTask, GarbageCollectorInterface& gc )
-:  HandleWrapper(  BaseWrappedObject::RENDER_TASK , renderTask, gc )
-{
-    mRenderTask = renderTask;
-}
-
-v8::Handle<v8::Object> RenderTaskWrapper::WrapRenderTask(v8::Isolate* isolate, const Dali::RenderTask& renderTask )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetRenderTaskTemplate( isolate);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the RenderTask wrapper
-  RenderTaskWrapper* pointer =  new RenderTaskWrapper( renderTask, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> RenderTaskWrapper::GetRenderTaskTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( mRenderTaskTemplate.IsEmpty() )
-  {
-    objectTemplate = MakeRenderTaskTemplate( isolate );
-    mRenderTaskTemplate.Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, mRenderTaskTemplate );
-  }
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> RenderTaskWrapper::MakeRenderTaskTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  // property handle intercepts property getters and setters and signals
-  HandleWrapper::AddInterceptsToTemplate( isolate, objTemplate );
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, RenderTaskFunctionTable, RenderTaskFunctionTableCount );
-
-  return handleScope.Escape( objTemplate );
-}
-
-
-RenderTask RenderTaskWrapper::GetRenderTask()
-{
-  return mRenderTask;
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/render-tasks/render-task-wrapper.h b/plugins/dali-script-v8/src/render-tasks/render-task-wrapper.h
deleted file mode 100644 (file)
index e992e42..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-#ifndef DALI_V8PLUGIN_SHADER_EFFECT_WRAPPER_H
-#define DALI_V8PLUGIN_SHADER_EFFECT_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/render-tasks/render-task.h>
-
-// INTERNAL INCLUDES
-#include <object/handle-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * An RenderTask  wrapper.
- * Provides access to RenderTask specific functionality and V8 memory handling.
- */
-class RenderTaskWrapper : public HandleWrapper
-{
-
-public:
-
-  RenderTaskWrapper( const RenderTask& shaderEffect,
-                GarbageCollectorInterface& gc );
-
-  virtual ~RenderTaskWrapper() {}
-
-
-  /**
-   * Wraps a render task
-   */
-  static v8::Handle<v8::Object> WrapRenderTask(v8::Isolate* isolate, const Dali::RenderTask& );
-
-
-  // The RenderTaskAttribute ObjectTemplate, we cache templates so we don't have
-  // keep generating them everytime we want to create an RenderTask
-  static v8::Persistent<v8::ObjectTemplate> mRenderTaskTemplate;
-
-  RenderTask GetRenderTask();
-
-
-private:
-
-  // RenderTask
-  RenderTask mRenderTask;
-
-  static v8::Handle<v8::ObjectTemplate> MakeRenderTaskTemplate( v8::Isolate* isolate );
-  static v8::Local<v8::ObjectTemplate> GetRenderTaskTemplate( v8::Isolate* isolate );
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_SHADER_EFFECT_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/rendering/geometry-api.cpp b/plugins/dali-script-v8/src/rendering/geometry-api.cpp
deleted file mode 100644 (file)
index 7011c20..0000000
+++ /dev/null
@@ -1,301 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// CLASS HEADER
-#include "geometry-api.h"
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/object/type-registry.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <rendering/geometry-wrapper.h>
-#include <object/property-buffer-api.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * ## Geometry API
- *
- * Geometry is handle to an object that can be used to define a geometric elements.
- *
- * @class Geometry
- * @extends Handle
- */
-
-Geometry GeometryApi::GetGeometry( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField(0) );
-  void* ptr = field->Value();
-
-  GeometryWrapper* wrapper = static_cast< GeometryWrapper *>(ptr);
-  return wrapper->GetGeometry();
-}
-
-Geometry GeometryApi::GetGeometryFromParams( int paramIndex,
-                                             bool& found,
-                                             v8::Isolate* isolate,
-                                             const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  found = false;
-
-  v8::HandleScope handleScope( isolate );
-  BaseWrappedObject* wrappedObject = V8Utils::GetWrappedDaliObjectParameter( paramIndex, BaseWrappedObject::GEOMETRY, isolate, args );
-  if( wrappedObject )
-  {
-    found = true;
-    GeometryWrapper* wrapper = static_cast< GeometryWrapper *>(wrappedObject);
-    return wrapper->GetGeometry();
-  }
-  else
-  {
-    return Geometry();
-  }
-}
-
-/**
- * Create a new geometry object.
- *
- * @constructor
- * @method Geometry
- * @for Geometry
- * @return {Object} Geometry
- */
-Geometry GeometryApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  return Geometry::New();
-}
-
-/**
- * Add a PropertyBuffer to be used as source of geometry vertices
- *
- * @method addVertexBuffer
- * @for Geometry
- * @param {Object} vertexBuffer PropertyBuffer to be used as source of geometry vertices
- * @return {interger} Index of the newly added buffer, can be used with RemoveVertexBuffer
- *                    to remove this buffer if no longer required
- * @example
- *```
- *    var vertexFormat ={ "aPosition" : dali.PROPERTY_VECTOR2 };
- *    var vertexData = [    0,     1,
- *                      -0.95,  0.31,
- *                      -0.59, -0.81,
- *                       0.59, -0.81,
- *                       0.95,  0.31];
- *
- *    var vertexDataArray = new Float32Array(vertexData.length);
- *    vertexDataArray.set(vertexData, 0);
- *    var vertices = new dali.PropertyBuffer(vertexFormat, 5);
- *    vertices.setData(vertexDataArray);
- *
- *    var geometry = new dali.Geometry();
- *    geometry.addVertexBuffer( vertices );
- *```
- */
-void GeometryApi::AddVertexBuffer( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Geometry geometry = GetGeometry( isolate, args );
-
-  bool found( false );
-  PropertyBuffer vertexBuffer = PropertyBufferApi::GetPropertyBufferFromParams( 0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid property buffer parameter" );
-  }
-  else
-  {
-    args.GetReturnValue().Set( v8::Integer::New( isolate, geometry.AddVertexBuffer(vertexBuffer) ) );
-  }
-}
-
-/**
- * Retrieve the number of vertex buffers that have been added to this geometry
- *
- * @method getNumberOfVertexBuffers
- * @for Geometry
- * @return {integer} Number of vertex buffers that have been added to this geometry
- */
-void GeometryApi::GetNumberOfVertexBuffers( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Geometry geometry = GetGeometry( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, geometry.GetNumberOfVertexBuffers() ) );
-}
-
-/**
- * Remove a vertex buffer
- *
- * @method removeVertexBuffer
- * @for Geometry
- * @param {integer} index Index to the vertex buffer to remove,
- *                  which must be between 0 and getNumberOfVertexBuffers()
- */
-void GeometryApi::RemoveVertexBuffer( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Geometry geometry = GetGeometry( isolate, args );
-
-  bool found( false );
-  int index = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing index from param 0" );
-  }
-  else
-  {
-    geometry.RemoveVertexBuffer(static_cast<std::size_t>(index));
-  }
-}
-
-/**
- * Set a PropertyBuffer to be used as a source of indices for the geometry
- *
- * This buffer is required to have exactly one component and it must be of the
- * type dali.PROPERTY_INTEGER
- *
- * By setting this buffer it will cause the geometry to be rendered using indices.
- * To unset call SetIndexBuffer with an empty handle.
- *
- * @method setIndexBuffer
- * @for Geometry
- * @param {Uint32Array} data The data that will be copied to the buffer
- *
- * @example
- * var indexData = [0, 1, 1, 2, 2, 3, 3, 4, 4, 0];
- * var indexDataArray = new Uint32Array(indexData.length);
- * indexDataArray.set(indexData, 0);
- *
- * geometry.SetIndexBuffer( indexDataArray, indexDataArray.length );
- *```
- */
-void GeometryApi::SetIndexBuffer( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Geometry geometry = GetGeometry( isolate, args );
-
-  bool found( false );
-  void* data = V8Utils::GetArrayBufferViewParameter( PARAMETER_0, found, isolate, args);
-
-  if( ! found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid data parameter" );
-  }
-  else
-  {
-    unsigned int size = V8Utils::GetIntegerParameter( PARAMETER_1, found, isolate, args, 0);
-    if( !found )
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "missing buffer size from param 1" );
-    }
-    else
-    {
-      Dali::Vector<unsigned short> indices;
-      indices.Resize( size );
-      unsigned int* indexData = static_cast<unsigned int*>(data);
-      for( size_t i(0); i<size; ++i )
-      {
-        indices[i] = indexData[i];
-      }
-      geometry.SetIndexBuffer( &indices[0], size );
-    }
-  }
-}
-
-/**
- * Set the type of primitives this geometry contains
- *
- * @method setType
- * @for Geometry
- * @param {integer} geometryType Type of primitives this geometry contains
- * @example
- *      // geometry type is one of the following
- *      dali.GEOMETRY_POINTS
- *      dali.GEOMETRY_LINES
- *      dali.GEOMETRY_LINE_LOOP
- *      dali.GEOMETRY_LINE_STRIP
- *      dali.GEOMETRY_TRIANGLES
- *      dali.GEOMETRY_TRIANGLE_FAN
- *      dali.GEOMETRY_TRIANGLE_STRIP
- *
- *      geometry.SetType( dali.GEOMETRY_LINES );
- */
-void GeometryApi::SetType( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Geometry geometry = GetGeometry( isolate, args );
-
-  bool found( false );
-  int geometryType = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing geometryType from param 0" );
-  }
-  else
-  {
-    geometry.SetType(static_cast<Geometry::Type>(geometryType));
-  }
-}
-
-/**
- * Get the type of primitives this geometry contains
- *
- * @method getType
- * @for Geometry
- * @return {integer} Type of primitives this geometry contains
- * @example
- *      // returns one of the following
- *      dali.GEOMETRY_POINTS
- *      dali.GEOMETRY_LINES
- *      dali.GEOMETRY_LINE_LOOP
- *      dali.GEOMETRY_LINE_STRIP
- *      dali.GEOMETRY_TRIANGLES
- *      dali.GEOMETRY_TRIANGLE_FAN
- *      dali.GEOMETRY_TRIANGLE_STRIP
- */
-void GeometryApi::GetType( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Geometry geometry = GetGeometry( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, geometry.GetType() ) );
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/rendering/geometry-api.h b/plugins/dali-script-v8/src/rendering/geometry-api.h
deleted file mode 100644 (file)
index a495942..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-#ifndef DALI_V8PLUGIN_GEOMETRY_API_H
-#define DALI_V8PLUGIN_GEOMETRY_API_H
-
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/rendering/geometry.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace GeometryApi
-{
-
-  /**
-   * Helper to get geometry from args.This()
-   */
-  Geometry GetGeometry( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * @brief Helper to get geometry from the JavaScript object held in the given function argument
-   * @param[in] paramIndex Argument index the object is held in
-   * @param[in] found Whether geometry is found in the given function parameter
-   * @param[in] isolate v8 isolated instance
-   * @param[in] args v8 function call arguments interpreted
-   */
-  Geometry GetGeometryFromParams( int paramIndex,
-                                     bool& found,
-                                     v8::Isolate* isolate,
-                                     const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * Constructor
-   */
-   Geometry New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-   /**
-    * Geometry API see geometry.h for a description
-    */
-   void AddVertexBuffer( const v8::FunctionCallbackInfo< v8::Value >& args );
-   void GetNumberOfVertexBuffers( const v8::FunctionCallbackInfo< v8::Value >& args );
-   void RemoveVertexBuffer( const v8::FunctionCallbackInfo< v8::Value >& args );
-   void SetIndexBuffer( const v8::FunctionCallbackInfo< v8::Value >& args );
-   void SetType( const v8::FunctionCallbackInfo< v8::Value >& args );
-   void GetType( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace GeometryApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_GEOMETRY_API_H
diff --git a/plugins/dali-script-v8/src/rendering/geometry-wrapper.cpp b/plugins/dali-script-v8/src/rendering/geometry-wrapper.cpp
deleted file mode 100644 (file)
index 2a6c67c..0000000
+++ /dev/null
@@ -1,145 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "geometry-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <rendering/geometry-api.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-#include <dali-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> GeometryWrapper::mGeometryTemplate;
-
-namespace // un-named name space
-{
-
-/**
- * Contains a list of all functions that can be called
- */
-const ApiFunction GeometryFunctionTable[]=
-{
-    /**************************************
-    * Geometry API (in order of Geometry.h)
-    **************************************/
-
-   { "AddVertexBuffer"             , GeometryApi::AddVertexBuffer },
-   { "GetNumberOfVertexBuffers"    , GeometryApi::GetNumberOfVertexBuffers },
-   { "RemoveVertexBuffer"          , GeometryApi::RemoveVertexBuffer },
-   { "SetIndexBuffer"              , GeometryApi::SetIndexBuffer },
-   { "SetType"                     , GeometryApi::SetType },
-   { "GetType"                     , GeometryApi::GetType },
-};
-
-const unsigned int GeometryFunctionTableCount = sizeof(GeometryFunctionTable)/sizeof(GeometryFunctionTable[0]);
-} //un-named space
-
-
-GeometryWrapper::GeometryWrapper( const Dali::Geometry& geometry, GarbageCollectorInterface& gc )
-:  BaseWrappedObject(  BaseWrappedObject::GEOMETRY, gc )
-{
-    mGeometry = geometry;
-}
-
-v8::Handle<v8::Object> GeometryWrapper::WrapGeometry(v8::Isolate* isolate, const Dali::Geometry& geometry )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetGeometryTemplate( isolate);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the Geometry wrapper
-  GeometryWrapper* pointer =  new GeometryWrapper( geometry, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> GeometryWrapper::GetGeometryTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( mGeometryTemplate.IsEmpty() )
-  {
-    objectTemplate = MakeGeometryTemplate( isolate );
-    mGeometryTemplate.Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, mGeometryTemplate );
-  }
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> GeometryWrapper::MakeGeometryTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, GeometryFunctionTable, GeometryFunctionTableCount );
-
-  return handleScope.Escape( objTemplate );
-}
-
-void GeometryWrapper::NewGeometry( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate);
-
-  if(!args.IsConstructCall())
-  {
-      DALI_SCRIPT_EXCEPTION( isolate, "Geometry constructor called without 'new'");
-      return;
-  }
-  Dali::Geometry geometry = GeometryApi::New( args );
-
-  if(geometry)
-  {
-    v8::Local<v8::Object> localObject = WrapGeometry( isolate, geometry );
-    args.GetReturnValue().Set( localObject );
-  }
-}
-
-
-Geometry GeometryWrapper::GetGeometry()
-{
-  return mGeometry;
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/rendering/geometry-wrapper.h b/plugins/dali-script-v8/src/rendering/geometry-wrapper.h
deleted file mode 100644 (file)
index 8608d92..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-#ifndef DALI_V8PLUGIN_GEOMETRY_WRAPPER_H
-#define DALI_V8PLUGIN_GEOMETRY_WRAPPER_H
-
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/rendering/geometry.h>
-
-// INTERNAL INCLUDES
-#include <object/handle-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * A Geometry wrapper.
- * Provides access to Geometry specific functionality and V8 memory handling.
- */
-class GeometryWrapper : public BaseWrappedObject
-{
-
-public:
-
-  /**
-   * @brief Constructor
-   * @param[in] propertyBuffer DALi geometry
-   * @param[in] gc garbage collection interface
-   */
-  GeometryWrapper( const Geometry& geometry,
-                GarbageCollectorInterface& gc );
-
-  /**
-   * @brief Destructor
-   */
-  virtual ~GeometryWrapper()
-  {
-  };
-
-  /**
-   * @brief Creates a new Geometry wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewGeometry( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps a geometry
-   */
-  static v8::Handle<v8::Object> WrapGeometry(v8::Isolate* isolate, const Dali::Geometry& );
-
-
-  // The GeometryAttribute ObjectTemplate, we cache templates so we don't have
-  // keep generating them everytime we want to create a Geometry
-  static v8::Persistent<v8::ObjectTemplate> mGeometryTemplate;
-
-  /**
-   * @brief Gets the handle of geometry
-   * @return the handle of geometry
-   */
-  Geometry GetGeometry();
-
-
-private:
-
-  // Geometry
-  Geometry mGeometry;
-
-  /**
-   * @brief Creates the object template that used to create geometry at runtime
-   * @param[in] isolate v8 isolated instance
-   * @return the object template
-   */
-  static v8::Handle<v8::ObjectTemplate> MakeGeometryTemplate( v8::Isolate* isolate );
-
-  /**
-   * @brief Gets the object template that used to create geometry at runtime
-   * @param[in] isolate v8 isolated instance
-   * @return the object template
-   */
-  static v8::Local<v8::ObjectTemplate> GetGeometryTemplate( v8::Isolate* isolate );
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_GEOMETRY_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/rendering/renderer-api.cpp b/plugins/dali-script-v8/src/rendering/renderer-api.cpp
deleted file mode 100644 (file)
index 8834c35..0000000
+++ /dev/null
@@ -1,210 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// CLASS HEADER
-#include "renderer-api.h"
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/object/type-registry.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <rendering/renderer-wrapper.h>
-#include <rendering/geometry-api.h>
-#include <rendering/geometry-wrapper.h>
-#include <rendering/texture-set-api.h>
-#include <rendering/texture-set-wrapper.h>
-#include <rendering/shader-api.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * ## Renderer API
- *
- * Renderer is a handle to an object that can be used to provide an image to a material.
- *
- * @class Renderer
- * @extends Handle
- */
-
-Renderer RendererApi::GetRenderer( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField(0) );
-  void* ptr = field->Value();
-
-  RendererWrapper* wrapper = static_cast< RendererWrapper *>(ptr);
-  return wrapper->GetRenderer();
-}
-
-Renderer RendererApi::GetRendererFromParams( int paramIndex,
-                                             bool& found,
-                                             v8::Isolate* isolate,
-                                             const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  found = false;
-
-  v8::HandleScope handleScope( isolate );
-  BaseWrappedObject* wrappedObject = V8Utils::GetWrappedDaliObjectParameter( paramIndex, BaseWrappedObject::RENDERER, isolate, args );
-  if( wrappedObject )
-  {
-    found = true;
-    RendererWrapper* wrapper = static_cast< RendererWrapper *>(wrappedObject);
-    return wrapper->GetRenderer();
-  }
-  else
-  {
-    return Renderer();
-  }
-}
-
-/**
- * Create a new renderer object.
- *
- * @constructor
- * @method Renderer
- * @for Renderer
- * @param {Object} geometry The geometry to be used by this renderer
- * @param {Object} shader The shader to be used by this renderer
- * @return {Object} Renderer
- */
-Renderer RendererApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  bool found( false );
-  Geometry geometry = GeometryApi::GetGeometryFromParams( 0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing geometry from param 0" );
-    return Renderer();
-  }
-
-  found = false;
-  Shader shader = ShaderApi::GetShaderFromParams( 1, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing shader from param 0" );
-    return Renderer();
-  }
-
-  return Renderer::New(geometry, shader);
-}
-
-/**
- * Sets the geometry to be used by this renderer
- *
- * @method setGeometry
- * @for Renderer
- * @param {Object} geometry The geometry to be used by this renderer
- */
-void RendererApi::SetGeometry( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Renderer renderer = GetRenderer( isolate, args );
-
-  bool found( false );
-  Geometry geometry = GeometryApi::GetGeometryFromParams( 0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing geometry from param 0" );
-  }
-  else
-  {
-    renderer.SetGeometry(geometry);
-  }
-}
-
-/**
- * Gets the geometry used by this renderer
- *
- * @method getGeometry
- * @for Renderer
- * @return {Object} The geometry used by this renderer
- */
-void RendererApi::GetGeometry( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Renderer renderer = GetRenderer( isolate, args );
-  Geometry geometry = renderer.GetGeometry();
-
-  // Wrap the geometry
-  v8::Local<v8::Object> localObject = GeometryWrapper::WrapGeometry( isolate, geometry );
-  args.GetReturnValue().Set( localObject );
-}
-
-/**
- * Sets the texture set to be used by this renderer
- *
- * @method setTextures
- * @for Renderer
- * @param {Object} textureSet The TextureSet to be used by this renderer
- */
-void RendererApi::SetTextures( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Renderer renderer = GetRenderer( isolate, args );
-
-  bool found( false );
-  TextureSet textureSet = TextureSetApi::GetTextureSetFromParams( 0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing texture set from param 0" );
-  }
-  else
-  {
-    renderer.SetTextures(textureSet);
-  }
-}
-
-/**
- * Gets the texture set used by this renderer
- *
- * @method getTextures
- * @for Renderer
- * @return {Object} The texture set used by this renderer
- */
-void RendererApi::GetTextures( const v8::FunctionCallbackInfo<v8::Value>& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Renderer renderer = GetRenderer( isolate, args );
-  TextureSet textureSet = renderer.GetTextures();
-
-  // Wrap the textureset
-  v8::Local<v8::Object> localObject = TextureSetWrapper::WrapTextureSet( isolate, textureSet );
-  args.GetReturnValue().Set( localObject );
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/rendering/renderer-api.h b/plugins/dali-script-v8/src/rendering/renderer-api.h
deleted file mode 100644 (file)
index e65d3d8..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-#ifndef DALI_V8PLUGIN_RENDERER_API_H
-#define DALI_V8PLUGIN_RENDERER_API_H
-
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/rendering/renderer.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace RendererApi
-{
-
-  /**
-   * Helper to get renderer from args.This()
-   */
-  Renderer GetRenderer( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * @brief Helper to get renderer from the JavaScript object held in the given function argument
-   * @param[in] paramIndex Argument index the object is held in
-   * @param[in] found Whether renderer is found in the given function parameter
-   * @param[in] isolate v8 isolated instance
-   * @param[in] args v8 function call arguments interpreted
-   */
-  Renderer GetRendererFromParams( int paramIndex,
-                                     bool& found,
-                                     v8::Isolate* isolate,
-                                     const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * Constructor
-   */
-   Renderer New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-   /**
-    * Renderer API see renderer.h for a description
-    */
-   void SetGeometry( const v8::FunctionCallbackInfo< v8::Value >& args );
-   void GetGeometry( const v8::FunctionCallbackInfo< v8::Value >& args );
-   void SetTextures( const v8::FunctionCallbackInfo< v8::Value >& args );
-   void GetTextures( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace RendererApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_RENDERER_API_H
diff --git a/plugins/dali-script-v8/src/rendering/renderer-wrapper.cpp b/plugins/dali-script-v8/src/rendering/renderer-wrapper.cpp
deleted file mode 100644 (file)
index 1f1ca19..0000000
+++ /dev/null
@@ -1,146 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "renderer-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <rendering/renderer-api.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-#include <dali-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> RendererWrapper::mRendererTemplate;
-
-namespace // un-named name space
-{
-
-/**
- * Contains a list of all functions that can be called
- */
-const ApiFunction RendererFunctionTable[]=
-{
-    /**************************************
-    * Renderer API (in order of Renderer.h)
-    **************************************/
-
-   { "SetGeometry"             , RendererApi::SetGeometry },
-   { "GetGeometry"             , RendererApi::GetGeometry },
-   { "SetTextures"             , RendererApi::SetTextures },
-   { "GetTextures"             , RendererApi::GetTextures },
-};
-
-const unsigned int RendererFunctionTableCount = sizeof(RendererFunctionTable)/sizeof(RendererFunctionTable[0]);
-} //un-named space
-
-
-RendererWrapper::RendererWrapper( const Dali::Renderer& renderer, GarbageCollectorInterface& gc )
-:  HandleWrapper(  BaseWrappedObject::RENDERER , renderer, gc )
-{
-    mRenderer = renderer;
-}
-
-v8::Handle<v8::Object> RendererWrapper::WrapRenderer(v8::Isolate* isolate, const Dali::Renderer& renderer )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetRendererTemplate( isolate);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the Renderer wrapper
-  RendererWrapper* pointer =  new RendererWrapper( renderer, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> RendererWrapper::GetRendererTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( mRendererTemplate.IsEmpty() )
-  {
-    objectTemplate = MakeRendererTemplate( isolate );
-    mRendererTemplate.Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, mRendererTemplate );
-  }
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> RendererWrapper::MakeRendererTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  // property handle intercepts property getters and setters and signals
-  HandleWrapper::AddInterceptsToTemplate( isolate, objTemplate );
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, RendererFunctionTable, RendererFunctionTableCount );
-
-  return handleScope.Escape( objTemplate );
-}
-
-void RendererWrapper::NewRenderer( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate);
-
-  if(!args.IsConstructCall())
-  {
-      DALI_SCRIPT_EXCEPTION( isolate, "Renderer constructor called without 'new'");
-      return;
-  }
-  Dali::Renderer renderer = RendererApi::New( args );
-
-  if(renderer)
-  {
-    v8::Local<v8::Object> localObject = WrapRenderer( isolate, renderer );
-    args.GetReturnValue().Set( localObject );
-  }
-}
-
-
-Renderer RendererWrapper::GetRenderer()
-{
-  return mRenderer;
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/rendering/renderer-wrapper.h b/plugins/dali-script-v8/src/rendering/renderer-wrapper.h
deleted file mode 100644 (file)
index c5e676a..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-#ifndef DALI_V8PLUGIN_RENDERER_WRAPPER_H
-#define DALI_V8PLUGIN_RENDERER_WRAPPER_H
-
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/rendering/renderer.h>
-
-// INTERNAL INCLUDES
-#include <object/handle-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * A Renderer wrapper.
- * Provides access to Renderer specific functionality and V8 memory handling.
- */
-class RendererWrapper : public HandleWrapper
-{
-
-public:
-
-  /**
-   * @brief Constructor
-   * @param[in] renderer DALi renderer
-   * @param[in] gc garbage collection interface
-   */
-  RendererWrapper( const Renderer& renderer,
-                GarbageCollectorInterface& gc );
-
-  /**
-   * @brief Destructor
-   */
- virtual ~RendererWrapper()
-  {
-  };
-
-  /**
-   * @brief Creates a new Renderer wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewRenderer( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps a renderer
-   */
-  static v8::Handle<v8::Object> WrapRenderer(v8::Isolate* isolate, const Dali::Renderer& );
-
-
-  // The RendererAttribute ObjectTemplate, we cache templates so we don't have
-  // keep generating them everytime we want to create a Renderer
-  static v8::Persistent<v8::ObjectTemplate> mRendererTemplate;
-
-  /**
-   * @brief Gets the handle of renderer
-   * @return the handle of renderer
-   */
-  Renderer GetRenderer();
-
-
-private:
-
-  // Renderer
-  Renderer mRenderer;
-
-  /**
-   * @brief Creates the object template that used to create renderer at runtime
-   * @param[in] isolate v8 isolated instance
-   * @return the object template
-   */
-  static v8::Handle<v8::ObjectTemplate> MakeRendererTemplate( v8::Isolate* isolate );
-
-  /**
-   * @brief Gets the object template that used to create renderer at runtime
-   * @param[in] isolate v8 isolated instance
-   * @return the object template
-   */
-  static v8::Local<v8::ObjectTemplate> GetRendererTemplate( v8::Isolate* isolate );
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_RENDERER_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/rendering/sampler-api.cpp b/plugins/dali-script-v8/src/rendering/sampler-api.cpp
deleted file mode 100644 (file)
index 2f2edce..0000000
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "sampler-api.h"
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/object/type-registry.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <rendering/sampler-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * ## Sampler API
- *
- * Sampler is a handle to an object that can be used to provide the sampling parameters to sample textures
- *
- * @class Sampler
- */
-
-Sampler SamplerApi::GetSampler( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField(0) );
-  void* ptr = field->Value();
-
-  SamplerWrapper* wrapper = static_cast< SamplerWrapper *>(ptr);
-  return wrapper->GetSampler();
-}
-
-Sampler SamplerApi::GetSamplerFromParams( int paramIndex,
-                                             bool& found,
-                                             v8::Isolate* isolate,
-                                             const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  found = false;
-
-  v8::HandleScope handleScope( isolate );
-  BaseWrappedObject* wrappedObject = V8Utils::GetWrappedDaliObjectParameter( paramIndex, BaseWrappedObject::SAMPLER, isolate, args );
-  if( wrappedObject )
-  {
-    found = true;
-    SamplerWrapper* wrapper = static_cast< SamplerWrapper *>(wrappedObject);
-    return wrapper->GetSampler();
-  }
-  else
-  {
-    return Sampler();
-  }
-}
-
-/**
- * Create a new sampler object.
- *
- * @constructor
- * @method Sampler
- * @for Sampler
- * @return {Object} Sampler
- */
-Sampler SamplerApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  return Sampler::New();
-}
-
-/**
- * Set the filter modes for this sampler
- * @method setFilterMode
- * @for Sampler
- * @param {integer} minFilter The minification filter that will be used
- * @param {integer} magFilter The magnification filter that will be used
- * @example
- *      // filter mode is one of the following
- *      dali.FILTER_MODE_NONE             // Use GL system defaults (minification NEAREST_MIPMAP_LINEAR, magnification LINEAR)
- *      dali.FILTER_MODE_DEFAULT          // Use dali defaults (minification LINEAR, magnification LINEAR)
- *      dali.FILTER_MODE_NEAREST          // Filter nearest
- *      dali.FILTER_MODE_LINEAR           // Filter linear
- *
- *      sampler.setFilterMode( dali.FILTER_MODE_DEFAULT, dali.FILTER_MODE_LINEAR );
- */
-void SamplerApi::SetFilterMode( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Sampler sampler = GetSampler( isolate, args );
-
-  bool found( false );
-  int minFilter = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing minification filter from param 0" );
-    return;
-  }
-
-  found = false;
-  int magFilter = V8Utils::GetIntegerParameter( PARAMETER_1, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing magnification filter from param 1" );
-  }
-  else
-  {
-    sampler.SetFilterMode(static_cast<FilterMode::Type>(minFilter), static_cast<FilterMode::Type>(magFilter));
-  }
-}
-
-/**
- * Set the wrap modes for this sampler
- * @method setWrapMode
- * @for Sampler
- * @param {integer} uWrap Wrap mode for u coordinates
- * @param {integer} vWrap Wrap mode for v coordinates
- * @example
- *      // wrap mode is one of the following
- *      dali.WRAP_MODE_DEFAULT
- *      dali.WRAP_MODE_CLAMP_TO_EDGE
- *      dali.WRAP_MODE_REPEAT
- *      dali.WRAP_MODE_MIRRORED_REPEAT
- *
- *      sampler.setWrapMode( dali.WRAP_MODE_CLAMP_TO_EDGE, dali.WRAP_MODE_REPEAT );
- */
-void SamplerApi::SetWrapMode( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Sampler sampler = GetSampler( isolate, args );
-
-  bool found( false );
-  int uWrap = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing wrap mode for u coordinates from param 0" );
-    return;
-  }
-
-  found = false;
-  int vWrap = V8Utils::GetIntegerParameter( PARAMETER_1, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing wrap mode for v coordinates from param 1" );
-  }
-  else
-  {
-    sampler.SetWrapMode(static_cast<WrapMode::Type>(uWrap), static_cast<WrapMode::Type>(vWrap));
-  }
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/rendering/sampler-api.h b/plugins/dali-script-v8/src/rendering/sampler-api.h
deleted file mode 100644 (file)
index 8cb5aa9..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-#ifndef DALI_V8PLUGIN_SAMPLER_API_H
-#define DALI_V8PLUGIN_SAMPLER_API_H
-
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/rendering/sampler.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace SamplerApi
-{
-  /**
-   * Helper to get sampler from args.This()
-   */
-  Sampler GetSampler( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * @brief Helper to get sampler from the JavaScript object held in the given function argument
-   * @param[in] paramIndex Argument index the object is held in
-   * @param[in] found Whether sampler is found in the given function parameter
-   * @param[in] isolate v8 isolated instance
-   * @param[in] args v8 function call arguments interpreted
-   */
-  Sampler GetSamplerFromParams( int paramIndex,
-                                   bool& found,
-                                   v8::Isolate* isolate,
-                                   const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * Constructor
-   */
-  Sampler New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * Sampler API see sampler.h for a description
-   */
-  void SetFilterMode( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetWrapMode( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace SamplerApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_SAMPLER_API_H
diff --git a/plugins/dali-script-v8/src/rendering/sampler-wrapper.cpp b/plugins/dali-script-v8/src/rendering/sampler-wrapper.cpp
deleted file mode 100644 (file)
index 17b9396..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "sampler-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-#include <rendering/sampler-api.h>
-
-namespace Dali
-{
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> SamplerWrapper::mSamplerTemplate;
-
-namespace
-{
-
-/**
- * Contains a list of all functions that can be called
- */
-const ApiFunction SamplerFunctionTable[]=
-{
-    /**************************************
-    * Sampler API (in order of sampler.h)
-    **************************************/
-
-    { "SetFilterMode",           SamplerApi::SetFilterMode },
-    { "SetWrapMode",             SamplerApi::SetWrapMode   },
-};
-
-const unsigned int SamplerFunctionTableCount = sizeof(SamplerFunctionTable)/sizeof(SamplerFunctionTable[0]);
-} //un-named space
-
-
-SamplerWrapper::SamplerWrapper( const Sampler& sampler, GarbageCollectorInterface& gc )
-: BaseWrappedObject( BaseWrappedObject::SAMPLER , gc )
-{
-    mSampler = sampler;
-}
-
-v8::Handle<v8::Object> SamplerWrapper::WrapSampler(v8::Isolate* isolate, const Sampler& sampler )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetSamplerTemplate( isolate);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the Sampler wrapper
-  SamplerWrapper* pointer =  new SamplerWrapper( sampler, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> SamplerWrapper::GetSamplerTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( mSamplerTemplate.IsEmpty() )
-  {
-    objectTemplate = MakeSamplerTemplate( isolate );
-    mSamplerTemplate.Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, mSamplerTemplate );
-  }
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> SamplerWrapper::MakeSamplerTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, SamplerFunctionTable, SamplerFunctionTableCount );
-
-  return handleScope.Escape( objTemplate );
-}
-
-void SamplerWrapper::NewSampler( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate);
-
-  if(!args.IsConstructCall())
-  {
-      DALI_SCRIPT_EXCEPTION( isolate, "Sampler constructor called without 'new'");
-      return;
-  }
-  Dali::Sampler sampler = SamplerApi::New( args );
-
-  if(sampler)
-  {
-    v8::Local<v8::Object> localObject = WrapSampler( isolate, sampler );
-    args.GetReturnValue().Set( localObject );
-  }
-}
-
-Sampler SamplerWrapper::GetSampler()
-{
-  return mSampler;
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/rendering/sampler-wrapper.h b/plugins/dali-script-v8/src/rendering/sampler-wrapper.h
deleted file mode 100644 (file)
index 42c6300..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-#ifndef DALI_V8PLUGIN_SAMPLER_WRAPPER_H
-#define DALI_V8PLUGIN_SAMPLER_WRAPPER_H
-
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/rendering/sampler.h>
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * A Sampler wrapper.
- * Provides access to Sampler specific functionality and V8 memory handling.
- */
-class SamplerWrapper : public BaseWrappedObject
-{
-
-public:
-
-  /**
-   * @brief Constructor
-   * @param[in] sampler DALi sampler
-   * @param[in] gc garbage collection interface
-   */
-  SamplerWrapper( const Sampler& sampler,
-                GarbageCollectorInterface& gc );
-
-  /**
-   * @brief Destructor
-   */
-  virtual ~SamplerWrapper()
-  {
-  };
-
-  /**
-   * @brief Creates a new Sampler wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewSampler( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps a sampler
-   */
-  static v8::Handle<v8::Object> WrapSampler(v8::Isolate* isolate, const Sampler& );
-
-  // The SamplerAttribute ObjectTemplate, we cache templates so we don't have
-  // keep generating them everytime we want to create a Sampler
-  static v8::Persistent<v8::ObjectTemplate> mSamplerTemplate;
-
-  /**
-   * @brief Gets the handle of sampler
-   * @return the handle of sampler
-   */
-  Sampler GetSampler();
-
-private:
-
-  // Sampler
-  Sampler mSampler;
-
-  /**
-   * @brief Creates the object template that used to create sampler at runtime
-   * @param[in] isolate v8 isolated instance
-   * @return the object template
-   */
-  static v8::Handle<v8::ObjectTemplate> MakeSamplerTemplate( v8::Isolate* isolate );
-
-  /**
-   * @brief Gets the object template that used to create sampler at runtime
-   * @param[in] isolate v8 isolated instance
-   * @return the object template
-   */
-  static v8::Local<v8::ObjectTemplate> GetSamplerTemplate( v8::Isolate* isolate );
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_SAMPLER_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/rendering/shader-api.cpp b/plugins/dali-script-v8/src/rendering/shader-api.cpp
deleted file mode 100644 (file)
index 38ba059..0000000
+++ /dev/null
@@ -1,222 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// CLASS HEADER
-#include "shader-api.h"
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/object/type-registry.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <rendering/shader-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * ## Shader API
- *
- * Shaders allows custom vertex and color transformations in the GPU
- *
- * ### Simple example
- *
- *```
- *    // this will match the default shaders for image
- *    var vertexShader = " void main() \
- *    { \
- *      gl_Position = uProjection * uModelView * vec4(aPosition, 1.0); \
- *      vTexCoord = aTexCoord; \
- *    }; "
- *   var fragShader = " void main() \
- *    { \
- *     gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor;\
- *    }; "
- *    var shaderOptions = {
- *          vertexShader: vertexShader,
- *          fragmentShader: fragShader
- *    };
- *
- *    var shader = new dali.Shader(shaderOptions);
- *```
- * @class Shader
- * @extends Handle
- */
-
-namespace // unnamed namespace
-{
-
-typedef  std::vector< std::string > HintsArray;
-
-struct ShaderHintPair
-{
-  const char* name;
-  Shader::Hint::Value hint;
-};
-
-const ShaderHintPair ShaderHintTable[]=
-{
-    {"outputIsTransparent",    Shader::Hint::OUTPUT_IS_TRANSPARENT },
-    {"modifiesGeometry",       Shader::Hint::MODIFIES_GEOMETRY },
-};
-
-const unsigned int ShaderHintTableCount = sizeof(ShaderHintTable)/sizeof(ShaderHintTable[0]);
-
-struct ShaderParameters
-{
-  ShaderParameters()
-      : mHints( Shader::Hint::NONE )
-  {
-  }
-
-  Shader::Hint::Value GetShaderHint( const std::string& hint )
-  {
-    for( unsigned int i = 0 ; i < ShaderHintTableCount; ++i )
-    {
-      if( hint == ShaderHintTable[i].name )
-      {
-        return ShaderHintTable[i].hint;
-      }
-    }
-    return Shader::Hint::NONE;
-  }
-
-  void ProcessHintsArray( const HintsArray& hintsArray )
-  {
-    for( HintsArray::const_iterator iter  = hintsArray.begin(); iter != hintsArray.end() ; ++iter )
-    {
-      mHints= static_cast<Shader::Hint::Value>( mHints | GetShaderHint( *iter ) );
-    }
-  }
-
-  Shader NewShader()
-  {
-    return Shader::New( mVertex,
-                         mFragment,
-                         mHints);
-  }
-
-  std::string mVertex;
-  std::string mFragment;
-  Shader::Hint::Value mHints;
-};
-
-} // unnamed space
-
-/**
- * Create a new Shader
- * @constructor
- * @for Shader
- * @method Shader
- * @param {Object} shaderOptions
- * @param {String} [shaderOptions.vertexShader] VertexShader code for the shader. If not defined, the default version will be used
- * @param {String} [shaderOptions.fragmentShader] FragmentShader code for the shader. If not defined, the default version will be used
- * @param {Array}  [shaderOptions.shaderHints] Hints for rendering/subdividing geometry, e.g.  [ "requiresSelfDepthTest", "outputIsTransparent", "outputIsOpaque","modifiesGeometry" ]
- * @return {Object} Shader
- * @example
-
-      // this will match the default shaders for image
-      var vertexShader = " void main() \
-      { \
-        gl_Position = uProjection * uModelView * vec4(aPosition, 1.0); \
-        vTexCoord = aTexCoord; \
-      }; "
-
-      var fragShader = " void main() \
-      { \
-       gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor;\
-      }; "
-
-      var shaderOptions = {
-            vertexShader: vertexShader,
-            fragmentShader: fragShader
-      };
-
-      var shader = new dali.Shader(shaderOptions);
- *
- */
-Shader ShaderApi::New(  v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  ShaderParameters shaderParams;
-
-  if( args[0]->IsObject() )
-  {
-    v8::Local<v8::Object > obj = args[0]->ToObject();
-
-    v8::Local<v8::Value> vertexValue = obj->Get(v8::String::NewFromUtf8( isolate, "vertexShader"));
-    if( vertexValue->IsString() )
-    {
-      shaderParams.mVertex = V8Utils::v8StringToStdString( vertexValue );
-    }
-
-    v8::Local<v8::Value> fragmentValue = obj->Get(v8::String::NewFromUtf8( isolate, "fragmentShader"));
-    if( fragmentValue->IsString() )
-    {
-      shaderParams.mFragment = V8Utils::v8StringToStdString( fragmentValue );
-    }
-    // Get any hints
-    v8::Local<v8::Value> hints = obj->Get(v8::String::NewFromUtf8( isolate, "shaderHints"));
-    if( hints->IsArray() )
-    {
-      HintsArray hintsArray;
-      v8::Local<v8::Array> array = v8::Local<v8::Array>::Cast( hints );
-      for( uint32_t i=0; i <  array->Length(); ++i)
-      {
-        v8::Handle<v8::Value> entry = array->Get(  v8::Integer::New( isolate, i) );
-        if( entry->IsString() )
-        {
-          std::string entryString = V8Utils::v8StringToStdString( entry );
-          hintsArray.push_back( entryString );
-        }
-      }
-      shaderParams.ProcessHintsArray( hintsArray );
-    }
-  }
-
-  return shaderParams.NewShader();
-}
-
-Shader ShaderApi::GetShaderFromParams( int paramIndex,
-                          bool& found,
-                          v8::Isolate* isolate,
-                          const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  found = false;
-
-  v8::HandleScope handleScope( isolate );
-  BaseWrappedObject* wrappedObject = V8Utils::GetWrappedDaliObjectParameter( paramIndex, BaseWrappedObject::SHADER, isolate, args );
-  if( wrappedObject )
-  {
-    found = true;
-    ShaderWrapper* wrapper = static_cast< ShaderWrapper *>(wrappedObject);
-    return wrapper->GetShader();
-  }
-  else
-  {
-    return Shader();
-  }
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/rendering/shader-api.h b/plugins/dali-script-v8/src/rendering/shader-api.h
deleted file mode 100644 (file)
index 230e789..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-#ifndef DALI_V8PLUGIN_SHADER_API_H
-#define DALI_V8PLUGIN_SHADER_API_H
-
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/rendering/shader.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace ShaderApi
-{
-
-  /**
-   * Constructor
-   */
-   Shader New( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-   /**
-    * @brief Helper to get shader from the JavaScript object held in the given function argument
-    * @param[in] paramIndex Argument index the object is held in
-    * @param[in] found Whether shader is found in the given function parameter
-    * @param[in] isolate v8 isolated instance
-    * @param[in] args v8 function call arguments interpreted
-    */
-   Shader GetShaderFromParams( int paramIndex,
-                             bool& found,
-                             v8::Isolate* isolate,
-                             const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace ShaderApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_SHADER_API_H
diff --git a/plugins/dali-script-v8/src/rendering/shader-wrapper.cpp b/plugins/dali-script-v8/src/rendering/shader-wrapper.cpp
deleted file mode 100644 (file)
index f3aff6c..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "shader-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <rendering/shader-api.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-#include <dali-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> ShaderWrapper::mShaderTemplate;
-
-ShaderWrapper::ShaderWrapper( const Dali::Shader& shader, GarbageCollectorInterface& gc )
-:  HandleWrapper(  BaseWrappedObject::SHADER , shader, gc )
-{
-    mShader = shader;
-}
-
-v8::Handle<v8::Object> ShaderWrapper::WrapShader(v8::Isolate* isolate, const Dali::Shader& shader )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetShaderTemplate( isolate);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the Shader wrapper
-  ShaderWrapper* pointer =  new ShaderWrapper( shader, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> ShaderWrapper::GetShaderTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( mShaderTemplate.IsEmpty() )
-  {
-    objectTemplate = MakeShaderTemplate( isolate );
-    mShaderTemplate.Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, mShaderTemplate );
-  }
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> ShaderWrapper::MakeShaderTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  // property handle intercepts property getters and setters and signals
-  HandleWrapper::AddInterceptsToTemplate( isolate, objTemplate );
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  return handleScope.Escape( objTemplate );
-}
-
-void ShaderWrapper::NewShader( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate);
-
-  if(!args.IsConstructCall())
-  {
-      DALI_SCRIPT_EXCEPTION( isolate, "Shader constructor called without 'new'");
-      return;
-  }
-  Dali::Shader shader = ShaderApi::New( isolate, args );
-
-  if(shader)
-  {
-    v8::Local<v8::Object> localObject = WrapShader( isolate, shader );
-    args.GetReturnValue().Set( localObject );
-  }
-}
-
-
-Shader ShaderWrapper::GetShader()
-{
-  return mShader;
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/rendering/shader-wrapper.h b/plugins/dali-script-v8/src/rendering/shader-wrapper.h
deleted file mode 100644 (file)
index 7840a3d..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-#ifndef DALI_V8PLUGIN_SHADER_WRAPPER_H
-#define DALI_V8PLUGIN_SHADER_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/rendering/shader.h>
-
-// INTERNAL INCLUDES
-#include <object/handle-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * A Shader wrapper.
- * Provides access to Shader specific functionality and V8 memory handling.
- */
-class ShaderWrapper : public HandleWrapper
-{
-
-public:
-
-  /**
-   * @brief Constructor
-   * @param[in] shader DALi shader
-   * @param[in] gc garbage collection interface
-   */
-  ShaderWrapper( const Shader& shader,
-                GarbageCollectorInterface& gc );
-
-  /**
-   * @brief Destructor
-   */
-  virtual ~ShaderWrapper()
-  {
-  };
-
-  /**
-   * @brief Creates a new Shader wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewShader( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps a shader
-   */
-  static v8::Handle<v8::Object> WrapShader(v8::Isolate* isolate, const Dali::Shader& );
-
-
-  // The ShaderAttribute ObjectTemplate, we cache templates so we don't have
-  // keep generating them everytime we want to create a Shader
-  static v8::Persistent<v8::ObjectTemplate> mShaderTemplate;
-
-  /**
-   * @brief Gets the handle of shader
-   * @return the handle of shader
-   */
-  Shader GetShader();
-
-
-private:
-
-  // Shader
-  Shader mShader;
-
-  /**
-   * @brief Creates the object template that used to create shader at runtime
-   * @param[in] isolate v8 isolated instance
-   * @return the object template
-   */
-  static v8::Handle<v8::ObjectTemplate> MakeShaderTemplate( v8::Isolate* isolate );
-
-  /**
-   * @brief Gets the object template that used to create shader at runtime
-   * @param[in] isolate v8 isolated instance
-   * @return the object template
-   */
-  static v8::Local<v8::ObjectTemplate> GetShaderTemplate( v8::Isolate* isolate );
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_SHADER_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/rendering/texture-set-api.cpp b/plugins/dali-script-v8/src/rendering/texture-set-api.cpp
deleted file mode 100644 (file)
index d89807f..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// CLASS HEADER
-#include "texture-set-api.h"
-
-// EXTERNAL INCLUDES
-#include <dali/public-api/object/type-registry.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <rendering/texture-set-wrapper.h>
-#include <rendering/shader-wrapper.h>
-#include <rendering/shader-api.h>
-#include <rendering/sampler-wrapper.h>
-#include <rendering/sampler-api.h>
-#include <image/image-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * ## TextureSet API
- *
- * TextureSet is a handle to an object that contains the textures used by a renderer
- *
- * @class TextureSet
- * @extends Handle
- */
-
-TextureSet TextureSetApi::GetTextureSet( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField(0) );
-  void* ptr = field->Value();
-
-  TextureSetWrapper* wrapper = static_cast< TextureSetWrapper *>(ptr);
-  return wrapper->GetTextureSet();
-}
-
-TextureSet TextureSetApi::GetTextureSetFromParams( int paramIndex,
-                                               bool& found,
-                                               v8::Isolate* isolate,
-                                               const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  found = false;
-
-  v8::HandleScope handleScope( isolate );
-  BaseWrappedObject* wrappedObject = V8Utils::GetWrappedDaliObjectParameter( paramIndex, BaseWrappedObject::TEXTURE_SET, isolate, args );
-  if( wrappedObject )
-  {
-    found = true;
-    TextureSetWrapper* wrapper = static_cast< TextureSetWrapper *>(wrappedObject);
-    return wrapper->GetTextureSet();
-  }
-  else
-  {
-    return TextureSet();
-  }
-}
-
-/**
- * Create a new texture set object.
- *
- * @constructor
- * @method TextureSet
- * @for TextureSet
- * @return {Object} TextureSet
- */
-TextureSet TextureSetApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  return TextureSet::New();
-}
-
-/**
- * Set the sampler used by a given texture
- * @method setSampler
- * @for TextureSet
- * @param {integer} index The index of the texture in the array of textures
- * @param {Object} sampler The new sampler
- */
-void TextureSetApi::SetSampler( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  TextureSet textureSet = GetTextureSet( isolate, args );
-
-  bool found( false );
-  int index = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 /* default */);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "invalid index parameter" );
-    return;
-  }
-
-  found = false;
-  Sampler sampler = SamplerApi::GetSamplerFromParams( PARAMETER_1, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing sampler from param 1" );
-  }
-  else
-  {
-    textureSet.SetSampler(index, sampler);
-  }
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/rendering/texture-set-api.h b/plugins/dali-script-v8/src/rendering/texture-set-api.h
deleted file mode 100644 (file)
index a834d86..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-#ifndef DALI_V8PLUGIN_TEXURE_SET_API_H
-#define DALI_V8PLUGIN_TEXURE_SET_API_H
-
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/rendering/texture-set.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace TextureSetApi
-{
-
-  /**
-   * Helper to get TextureSet from args.This()
-   */
-  TextureSet GetTextureSet( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * @brief Helper to get texture set from the JavaScript object held in the given function argument
-   * @param[in] paramIndex Argument index the object is held in
-   * @param[in] found Whether texture set is found in the given function parameter
-   * @param[in] isolate v8 isolated instance
-   * @param[in] args v8 function call arguments interpreted
-   */
-  TextureSet GetTextureSetFromParams( int paramIndex,
-                                     bool& found,
-                                     v8::Isolate* isolate,
-                                     const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * Constructor
-   */
-  TextureSet New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-   /**
-    * TextureSet API see texture-set.h for a description
-    */
-   void SetSampler( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace TextureSetApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_TEXURE_SET_API_H
diff --git a/plugins/dali-script-v8/src/rendering/texture-set-wrapper.cpp b/plugins/dali-script-v8/src/rendering/texture-set-wrapper.cpp
deleted file mode 100644 (file)
index 5f503ec..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "texture-set-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <rendering/texture-set-api.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-#include <dali-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-v8::Persistent<v8::ObjectTemplate> TextureSetWrapper::mTextureSetTemplate;
-
-namespace // un-named name space
-{
-
-/**
- * Contains a list of all functions that can be called
- */
-const ApiFunction TextureSetFunctionTable[]=
-{
-    /**************************************
-    * TextureSet API (in order of texture-set.h)
-    **************************************/
-
-   { "SetSampler"                      , TextureSetApi::SetSampler },
-};
-
-const unsigned int TextureSetFunctionTableCount = sizeof(TextureSetFunctionTable)/sizeof(TextureSetFunctionTable[0]);
-} //un-named space
-
-
-TextureSetWrapper::TextureSetWrapper( const Dali::TextureSet& textureSet, GarbageCollectorInterface& gc )
-:  BaseWrappedObject(  BaseWrappedObject::TEXTURE_SET, gc )
-{
-    mTextureSet = textureSet;
-}
-
-v8::Handle<v8::Object> TextureSetWrapper::WrapTextureSet(v8::Isolate* isolate, const Dali::TextureSet& textureSet )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetTextureSetTemplate( isolate);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the texture set wrapper
-  TextureSetWrapper* pointer =  new TextureSetWrapper( textureSet, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> TextureSetWrapper::GetTextureSetTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  if( mTextureSetTemplate.IsEmpty() )
-  {
-    objectTemplate = MakeTextureSetTemplate( isolate );
-    mTextureSetTemplate.Reset( isolate, objectTemplate );
-  }
-  else
-  {
-    // get the object template
-    objectTemplate = v8::Local<v8::ObjectTemplate>::New( isolate, mTextureSetTemplate );
-  }
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> TextureSetWrapper::MakeTextureSetTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, TextureSetFunctionTable, TextureSetFunctionTableCount );
-
-  return handleScope.Escape( objTemplate );
-}
-
-void TextureSetWrapper::NewTextureSet( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate);
-
-  if(!args.IsConstructCall())
-  {
-      DALI_SCRIPT_EXCEPTION( isolate, "TextureSet constructor called without 'new'");
-      return;
-  }
-  Dali::TextureSet textureSet = TextureSetApi::New( args );
-
-  if(textureSet)
-  {
-    v8::Local<v8::Object> localObject = WrapTextureSet( isolate, textureSet );
-    args.GetReturnValue().Set( localObject );
-  }
-}
-
-
-TextureSet TextureSetWrapper::GetTextureSet()
-{
-  return mTextureSet;
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/rendering/texture-set-wrapper.h b/plugins/dali-script-v8/src/rendering/texture-set-wrapper.h
deleted file mode 100644 (file)
index aaf8ecc..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-#ifndef DALI_V8PLUGIN_TEXTURE_SET_WRAPPER_H
-#define DALI_V8PLUGIN_TEXTURE_SET_WRAPPER_H
-
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/rendering/texture-set.h>
-
-// INTERNAL INCLUDES
-#include <object/handle-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * A TextureSet wrapper.
- * Provides access to TextureSet specific functionality and V8 memory handling.
- */
-class TextureSetWrapper : public BaseWrappedObject
-{
-
-public:
-
-  /**
-   * @brief Constructor
-   * @param[in] textureSet DALi TextureSet
-   * @param[in] gc garbage collection interface
-   */
-  TextureSetWrapper( const TextureSet& textureSet,
-                GarbageCollectorInterface& gc );
-
-  /**
-   * @brief Destructor
-   */
-  virtual ~TextureSetWrapper()
-  {
-  };
-
-  /**
-   * @brief Creates a new TextureSet wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewTextureSet( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps a TextureSet
-   */
-  static v8::Handle<v8::Object> WrapTextureSet(v8::Isolate* isolate, const Dali::TextureSet& );
-
-
-  // The TextureSetAttribute ObjectTemplate, we cache templates so we don't have
-  // keep generating them everytime we want to create a TextureSet
-  static v8::Persistent<v8::ObjectTemplate> mTextureSetTemplate;
-
-  /**
-   * @brief Gets the handle of TextureSet
-   * @return the handle of the TextureSet
-   */
-  TextureSet GetTextureSet();
-
-
-private:
-
-  // TextureSet
-  TextureSet mTextureSet;
-
-  /**
-   * @brief Creates the object template that used to create TextureSets at runtime
-   * @param[in] isolate v8 isolated instance
-   * @return the object template
-   */
-  static v8::Handle<v8::ObjectTemplate> MakeTextureSetTemplate( v8::Isolate* isolate );
-
-  /**
-   * @brief Gets the object template that used to create TextureSets at runtime
-   * @param[in] isolate v8 isolated instance
-   * @return the object template
-   */
-  static v8::Local<v8::ObjectTemplate> GetTextureSetTemplate( v8::Isolate* isolate );
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_TEXTURE_SET_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/shared/api-function.h b/plugins/dali-script-v8/src/shared/api-function.h
deleted file mode 100644 (file)
index d57ace3..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-#ifndef DALI_V8PLUGIN_API_FUNCTION_H
-#define DALI_V8PLUGIN_API_FUNCTION_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * @brief Used for mapping a string to a static function, for defining functions that are exposed to JavaScript.
- * E.g.
- * @code
- * const ApiFunction AnimationFunctionTable[]=
- * {
- *  { "setDuration"             , AnimationApi::SetDuration  },
- *  { "getDuration"             , AnimationApi::GetDuration  },
- *  { "setLooping"              , AnimationApi::SetLooping   },
- * }
- * @endcode
- */
-struct ApiFunction
-{
-  const char* const name;      ///< function name
-  void (*function)( const v8::FunctionCallbackInfo< v8::Value >& args);
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_API_FUNCTION_H
diff --git a/plugins/dali-script-v8/src/shared/base-wrapped-object.cpp b/plugins/dali-script-v8/src/shared/base-wrapped-object.cpp
deleted file mode 100644 (file)
index 0963ea3..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "base-wrapped-object.h"
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-BaseWrappedObject::BaseWrappedObject( Type type, GarbageCollectorInterface& gc )
-: mWrappedType( type ),
-  mGarbageCollector( gc  )
-{
-  mGarbageCollector.Register( this );
-}
-
-BaseWrappedObject::~BaseWrappedObject()
-{
-  mGarbageCollector.UnRegister( this );
-}
-
-bool BaseWrappedObject::IsReferenced()
-{
-  if( mWeakPersistentHandle.IsEmpty() )
-  {
-    return false;
-  }
-  if( mWeakPersistentHandle.IsNearDeath() )
-  {
-    return false;
-  }
-  return true;
-}
-void BaseWrappedObject::WeakCallback( const v8::WeakCallbackData<v8::Object,BaseWrappedObject >& data)
-{
-  BaseWrappedObject* wrappedObject = data.GetParameter();
-  wrappedObject->mWeakPersistentHandle.Reset();  // moved from destructor due to crash on shutdown
-  delete wrappedObject;
-}
-
-void BaseWrappedObject::SetJavascriptObject( v8::Isolate* isolate, v8::Local<v8::Object>& object )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Handle<v8::External> ptr = v8::External::New( isolate, this );
-  object->SetInternalField( FIELD_POINTER, ptr );
-
-  v8::Local<v8::Value> theType = v8::Integer::New( isolate ,mWrappedType );
-  object->SetInternalField( FIELD_TYPE, theType );
-
-  // reset sets the the handle
-  mWeakPersistentHandle.Reset( isolate, object );
-
-  // set the weak call back which is triggered when nothing else is referencing the object
-  // note, this may never called.
-  mWeakPersistentHandle.SetWeak( this, &WeakCallback );
-}
-
-bool BaseWrappedObject::IsWrappedType(v8::Isolate* isolate, const v8::Local<v8::Object>& object,  BaseWrappedObject::Type type)
-{
-  v8::HandleScope handleScope( isolate );
-
-  // we've been passed a javascript object, it could be anything!
-  // so we safely check the internal field count matches the number of fields
-  // in BaseWrappedObject. Then check if the second field is an integer value
-  // possibly alternative v8 functions we could use
-  // GetConstructorName
-  // GetIdentityHash
-  if( object->InternalFieldCount() == BaseWrappedObject::FIELD_COUNT )
-  {
-    v8::Handle<v8::Value> value = object->GetInternalField(BaseWrappedObject::FIELD_TYPE);
-
-    if( value->IsInt32() )
-    {
-      BaseWrappedObject::Type objectType = static_cast<BaseWrappedObject::Type>( value->ToInt32()->Value());
-      return (type == objectType);
-    }
-  }
-  return false;
-}
-
-bool BaseWrappedObject::IsWrappedTypeAPropertyValue(const v8::Local<v8::Object>& object)
-{
-
-   if( object->InternalFieldCount() == BaseWrappedObject::FIELD_COUNT )
-   {
-     v8::Handle<v8::Value> value = object->GetInternalField(BaseWrappedObject::FIELD_TYPE);
-
-     if( value->IsInt32() )
-     {
-       BaseWrappedObject::Type objectType = static_cast<BaseWrappedObject::Type>( value->ToInt32()->Value());
-       return ( (objectType > PROPERTY_VALUE_START_RANGE) && ( objectType < PROPERTY_VALUE_END_RANGE) );
-     }
-   }
-   return false;
-}
-
-BaseWrappedObject* BaseWrappedObject::UnWrap( v8::Isolate* isolate, const v8::Local<v8::Object>& object)
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField(BaseWrappedObject::FIELD_POINTER) );
-  void* ptr = field->Value();
-  return static_cast< BaseWrappedObject *>(ptr);
-}
-
-BaseWrappedObject::Type BaseWrappedObject::GetType()
-{
-  return  mWrappedType;
-}
-
-SignalManager* BaseWrappedObject::GetSignalManager()
-{
-  return NULL;
-}
-} // V8Plugin
-
-} // Dali
-
diff --git a/plugins/dali-script-v8/src/shared/base-wrapped-object.h b/plugins/dali-script-v8/src/shared/base-wrapped-object.h
deleted file mode 100644 (file)
index 4f06f4c..0000000
+++ /dev/null
@@ -1,196 +0,0 @@
-#ifndef DALI_V8PLUGIN_BASE_WRAPPED_OBJECT_H
-#define DALI_V8PLUGIN_BASE_WRAPPED_OBJECT_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-
-// INTERNAL INCLUDES
-#include <interfaces/garbage-collector-interface.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-class SignalManager;
-
-/**
- * @brief Used as a base class for all wrapped objects.
- *
- *  Dali JavaScript objects look like this
- *
- * \code
- *  _______________________________________         ________________________________________
- * | JavaScript Object                     |       |  C++ WrappedObject  (e.g. ImageWrapper)|
- * |---------------------------------------|       |----------------------------------------|
- * | Hidden internal fields                |       | Handle to a Dali::Image object         |
- * | *Pointer to a BaseWrappedObject       | ----> |________________________________________|
- * | Type of wrapped object (e.g. Image)   |
- * -----------------------------------------
- *
- * \endcode
- *
- * Whenever we want to access functions / properties of that wrapped object, we unwrap it
- * to get access to the Dali object.
- *
- * Each wrapped object registers with Dali garbage collector so they can be deleted
- * when Dali shuts down
- */
-class BaseWrappedObject
-{
-
-public:
-
-  /*
-   * A type enum for the wrapped object
-   */
-  enum Type
-    {
-      UNKNOWN              = -1,
-      HANDLE               = 0 ,
-      HANDLE_SIGNAL,
-      CONNECTION,
-      ANIMATION,
-      PATH,
-      PATH_CONSTRAINER,
-      LINEAR_CONSTRAINER,
-      BUILDER,
-      STAGE,
-      FONT,
-      IMAGE,
-      IMAGE_ATTRIBUTES,
-      ACTOR,
-      ACTOR_PROPERTY,
-      ITEMVIEW,
-      ITEMFACTORY,
-      SCROLLVIEW,
-      RENDER_TASK,
-      RENDER_TASK_LIST,
-      TIMER,
-      SHADER,
-      SAMPLER,
-      TEXTURE_SET,
-      GEOMETRY,
-      RENDERER,
-      PROPERTY_BUFFER,
-      TAP_GESTURE,
-      SHADER_EFFECT,
-      PAN_GESTURE,
-      LONGPRESS_GESTURE,
-      PINCH_GESTURE,
-      KEYBOARD_FOCUS_MANAGER,
-      PAN_GESTURE_DETECTOR,
-      ////////////////////////////////////////////////////////
-      PROPERTY_VALUE_START_RANGE,  // start of property values
-      VECTOR2,
-      VECTOR3,
-      VECTOR4,
-      MATRIX,
-      MATRIX3,
-      RECTANGLE,
-      ROTATION,
-      PROPERTY_VALUE_END_RANGE,  // end of property values
-      ///////////////////////////////////////////////////////
-    };
-
-  /*
-   * A type enum for the wrapped object internal field
-   */
-  enum Field
-    {
-      FIELD_POINTER   = 0,
-      FIELD_TYPE      = 1,
-      FIELD_COUNT     = 2 // increase if more fields are added
-    };
-
-   /**
-   * @brief virtual destructor
-   */
-  virtual ~BaseWrappedObject();
-
-  /**
-   * @return true if nothing else is referencing this object
-   */
-  bool IsReferenced();
-
-  /**
-   * @brief Called when the v8 garbage collector decides the JavaScript object (which contains the Dali wrapped object)
-   * is no longer used / reachable.
-   */
-  static void WeakCallback( const v8::WeakCallbackData<v8::Object,BaseWrappedObject >& data);
-
-  /**
-   * @brief create and set the internal fields of a JavaScript object.
-   * Currently has 2 internal fields, 1 is a pointer to dali wrapped object, 2nd is the type.
-   */
-  void SetJavascriptObject( v8::Isolate* isolate, v8::Local<v8::Object>& object );
-
-  /**
-   * @return true if the object is of a certain wrapped type (e.g. Animation )
-   */
-  static bool IsWrappedType( v8::Isolate* isolate, const v8::Local<v8::Object>& object,  BaseWrappedObject::Type type);
-
-  /**
-   * @return true if the object is a wrapped property value
-   */
-  static bool IsWrappedTypeAPropertyValue(const v8::Local<v8::Object>& object);
-
-  /**
-   * @brief Extracts the Dali wrapped object from the javascript object
-   */
-  static BaseWrappedObject* UnWrap( v8::Isolate* isolate, const v8::Local<v8::Object>& object);
-
-  /**
-   * @return the wrapped type
-   */
-  Type GetType();
-
-  virtual SignalManager* GetSignalManager();
-
-protected:
-
-  /**
-   * Constructor
-   * @param type wrapped type
-   * @param gc garbage collector interface
-   */
-  BaseWrappedObject( Type type, GarbageCollectorInterface& gc );
-
-private:
-
-  BaseWrappedObject();
-
-  /**
-   * We store a  persistent handle to the JavaScript object and then set it to weak.
-   * This means we be notified when v8 decides it's no longer required and we can delete
-   * the associated Dali object
-   */
-  v8::Persistent<v8::Object > mWeakPersistentHandle;
-  Type mWrappedType;                                    ///< wrapped type
-  GarbageCollectorInterface& mGarbageCollector;         ///< Dali garbage collector
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_BASE_WRAPPED_OBJECT_H
diff --git a/plugins/dali-script-v8/src/shared/object-template-helper.cpp b/plugins/dali-script-v8/src/shared/object-template-helper.cpp
deleted file mode 100644 (file)
index 34a97e4..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// HEADER
-#include "object-template-helper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <signals/signal-manager.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace ObjectTemplateHelper
-{
-
-void AddSignalConnectAndDisconnect( v8::Isolate* isolate,  v8::Local<v8::ObjectTemplate>& objTemplate )
-{
-  objTemplate->Set( v8::String::NewFromUtf8( isolate, "on"),
-                     v8::FunctionTemplate::New( isolate, SignalManager::SignalConnect) );
-
-
-
-  objTemplate->Set( v8::String::NewFromUtf8( isolate, "off"),
-                     v8::FunctionTemplate::New( isolate, SignalManager::SignalDisconnect) );
-}
-
-
-
-
-void InstallFunctions( v8::Isolate* isolate,
-                              v8::Local<v8::ObjectTemplate>& objTemplate,
-                              const ApiFunction* functionTable,
-                              unsigned int tableCount,
-                              FunctionType type )
-{
-  // add our function properties
-   for( unsigned int i = 0; i < tableCount; ++i )
-   {
-     const ApiFunction property =  functionTable[i];
-
-     std::string funcName;
-
-     if( type == NORMAL_FUNCTIONS )
-     {
-       funcName = V8Utils::GetJavaScriptFunctionName( property.name);
-     }
-     else
-     {
-
-       funcName = property.name;
-     }
-    // printf("Installing function %s \n",      funcName.c_str()     );
-     objTemplate->Set( v8::String::NewFromUtf8(   isolate, funcName.c_str() ),
-                      v8::FunctionTemplate::New( isolate, property.function ) );
-   }
-}
-
-} // ObjectTemplateHelper
-
-} // V8Plugin
-
-} // Dali
diff --git a/plugins/dali-script-v8/src/shared/object-template-helper.h b/plugins/dali-script-v8/src/shared/object-template-helper.h
deleted file mode 100644 (file)
index cbe02c8..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-#ifndef DALI_V8PLUGIN_OBJECT_TEMPLATE_HELPER_H
-#define DALI_V8PLUGIN_OBJECT_TEMPLATE_HELPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-
-// INTERNAL INCLUDES
-#include <shared/api-function.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace ObjectTemplateHelper
-{
-
-
-
-/**
- * @brief Used for adding signal connect / disconnect functionality to an object template
- * E.g.
- */
-void AddSignalConnectAndDisconnect( v8::Isolate* isolate,  v8::Local<v8::ObjectTemplate>& objTemplate );
-
-enum FunctionType
-{
-  NORMAL_FUNCTIONS = 0,
-  CONSTRUCTOR_FUNCTIONS = 1
-};
-
-/**
- * Installs a list of functions on to an object template (e.g. actor.add, actor.setDrawMode() )
- */
-void InstallFunctions( v8::Isolate* isolate,
-                              v8::Local<v8::ObjectTemplate>& objTemplate,
-                              const ApiFunction* functionTable,
-                              unsigned int tableCount,
-                              FunctionType type = NORMAL_FUNCTIONS);
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_OBJECT_TEMPLATE_HELPER_H
diff --git a/plugins/dali-script-v8/src/signals/dali-any-javascript-converter.cpp b/plugins/dali-script-v8/src/signals/dali-any-javascript-converter.cpp
deleted file mode 100644 (file)
index b675779..0000000
+++ /dev/null
@@ -1,205 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "dali-any-javascript-converter.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <object/property-value-wrapper.h>
-#include <actors/actor-wrapper.h>
-#include <events/event-object-generator.h>
-#include <animation/animation-wrapper.h>
-#include <image/image-wrapper.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-v8::Local<v8::Value> DaliAnyConverter::ConvertToJavaScriptObject(v8::Isolate* isolate, Dali::Any& value )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::Value> returnValue;
-
-  const std::type_info& typeInfo( value.GetType());
-
-  // check the type of the Any and convert it to a JavaScript object
-  // if we wanted to speed this up, it would be possible to hash the typeInfo.name() field.
-
-  if( typeInfo == typeid( Dali::Actor ))
-  {
-    Actor actor =  value.Get<Actor>();
-    if( actor )
-    {
-      returnValue = ActorWrapper::WrapActor( isolate, actor );
-    }
-    else
-    {
-      returnValue = v8::Undefined( isolate );
-    }
-  }
-  else if(  typeInfo == typeid( std::string ) )
-  {
-
-    std::string string = value.Get< std::string >();
-    //printf(" converting %s to a javascript object \n", string.c_str());
-    returnValue =  v8::String::NewFromUtf8( isolate, string.c_str());
-  }
-  else if(  typeInfo == typeid( Dali::Vector3 ) )
-  {
-    returnValue = PropertyValueWrapper::WrapDaliProperty( isolate, value.Get<Vector3>() );
-  }
-  else if(  typeInfo == typeid( Dali::TouchData ) )
-  {
-    returnValue = EventObjectGenerator::CreateTouchData( isolate, value.Get<TouchData>() );
-  }
-  else if(  typeInfo == typeid( Dali::HoverEvent ) )
-  {
-    returnValue = EventObjectGenerator::CreateHoverEvent( isolate, value.Get<HoverEvent>() );
-  }
-  else if(  typeInfo == typeid( Dali::WheelEvent ) )
-  {
-    returnValue = EventObjectGenerator::CreateWheelEvent( isolate, value.Get<WheelEvent>() );
-  }
-  else if(  typeInfo == typeid( Dali::KeyEvent ) )
-  {
-    returnValue = EventObjectGenerator::CreateKeyEvent( isolate, value.Get<KeyEvent>() );
-  }
-  else if(  typeInfo == typeid( Dali::PanGesture ) )
-  {
-    returnValue = EventObjectGenerator::CreatePanGesture( isolate, value.Get<PanGesture>() );
-  }
-  else if(  typeInfo == typeid( Dali::Animation ) )
-  {
-    returnValue = AnimationWrapper::WrapAnimation( isolate, value.Get<Animation>() );
-  }
-  else if(  typeInfo == typeid( Dali::Image ) )
-  {
-    returnValue = ImageWrapper::WrapImage( isolate, value.Get<Image>() );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, " Failed to find Dali::Any to JavaScript converter \n" );
-  }
-
-  return handleScope.Escape( returnValue );
-}
-
-Dali::Any DaliAnyConverter::ConvertToDaliAny( v8::Isolate* isolate, v8::Local<v8::Value> value, const Dali::Any& requestedType)
-{
-  v8::HandleScope handleScope( isolate );
-
-  if( value.IsEmpty() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Callback missing a return value \n");
-    return Dali::Any();
-  }
-  // try to match the return value types
-  if( requestedType.GetType() == typeid( bool ))
-  {
-    if( value->IsBoolean() )
-    {
-      return value->ToBoolean()->Value();
-    }
-    else
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "Invalid return type from callback, wanted a bool \n");
-    }
-  }
-  else if( requestedType.GetType() == typeid( unsigned int ) )
-  {
-    if( value->IsUint32() )
-    {
-      return value->ToUint32()->Value();
-    }
-    else
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "Invalid return type from callback, wanted an unsigned int\n");
-    }
-  }
-  // allow positive and negative numbers for int,@todo test how v8 behaves with numbers returned
-  else if( requestedType.GetType() == typeid( int ))
-  {
-    if( value->IsInt32() )
-    {
-      return value->ToInt32()->Value();
-    }
-    else if( value->IsUint32() )
-    {
-      return static_cast<int>( value->ToUint32()->Value());
-    }
-    else
-    {
-      DALI_SCRIPT_EXCEPTION(isolate, "Invalid return type from callback, wanted an int\n");
-    }
-  }
-  else if( requestedType.GetType() == typeid( float ))
-  {
-    if( value->IsNumber() )
-    {
-      return value->ToNumber()->Value();
-    }
-    else if( value->IsInt32() )
-    {
-      return static_cast<float>(value->ToInt32()->Value());
-    }
-    else if( value->IsUint32() )
-    {
-      return static_cast<float>( value->ToUint32()->Value() );
-    }
-    else
-    {
-      DALI_SCRIPT_EXCEPTION(isolate, "Invalid return type from callback, wanted a float\n");
-    }
-  }
-  else if( requestedType.GetType() == typeid( Actor ))
-  {
-    if( value->IsObject()  )
-    {
-      HandleWrapper* handleWrapper = HandleWrapper::Unwrap( isolate, value->ToObject() );
-      if( handleWrapper )
-      {
-        return Actor::DownCast( handleWrapper->mHandle );
-      }
-      else
-      {
-        DALI_SCRIPT_EXCEPTION(isolate, "Invalid return type from callback, wanted an Actor \n");
-      }
-    }
-    else
-    {
-      // undefined is used to describe an empty actor handle
-      if (value->IsUndefined())
-      {
-        return Actor();
-      }
-      else
-      {
-        DALI_SCRIPT_EXCEPTION(isolate, "missing return type, wanted an Actor \n");
-      }
-    }
-
-  }
-  return Dali::Any(); // empty any
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/signals/dali-any-javascript-converter.h b/plugins/dali-script-v8/src/signals/dali-any-javascript-converter.h
deleted file mode 100644 (file)
index 3a72d55..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-#ifndef DALI_V8PLUGIN_DALI_ANY_JAVASCRIPT_CONVERTER_H
-#define DALI_V8PLUGIN_DALI_ANY_JAVASCRIPT_CONVERTER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/object/any.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace DaliAnyConverter
-{
-
-
-/**
- * Converts a Dali::Any object to a JavaScript object based on it's type
- */
-v8::Local<v8::Value> ConvertToJavaScriptObject( v8::Isolate* isolate, Dali::Any& value );
-
-
-/**
- * Converts from a JavaScript object back into a Dali::Any object
- * Used for return values from JavaScript callbacks
- * E.g. to convert from a JavaScript bool object to a C++ bool
- */
-
-Dali::Any ConvertToDaliAny( v8::Isolate* isolate, v8::Local<v8::Value>, const Dali::Any& requestedType);
-
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_DALI_ANY_JAVASCRIPT_CONVERTER_H
diff --git a/plugins/dali-script-v8/src/signals/emit-notification-interface.h b/plugins/dali-script-v8/src/signals/emit-notification-interface.h
deleted file mode 100644 (file)
index 12b030c..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-#ifndef DALI_V8PLUGIN_EMIT_NOTIFICATION_INTERFACE_H
-#define DALI_V8PLUGIN_EMIT_NOTIFICATION_INTERFACE_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * abstract interface to allow the signal manager know if
- * a JavaScript disconnect/ connect has been called, while inside a callback
- */
-class EmitNotificationInterface
-{
-
-  public:
-
-  /**
-   * Constructor
-   */
-  EmitNotificationInterface() {}
-
-  /**
-   * Virtual destructor
-   */
-  virtual ~EmitNotificationInterface() {}
-
-  /**
-   * Call back has been entered.
-   * E.g. Actor on touch has called a JavaScript function
-   */
-   virtual void CallbackEnter() =0 ;
-
-   /**
-    * Call back has been entered.
-    * E.g. Actor on touch has called a JavaScript function
-    */
-   virtual void CallbackExit() =0 ;
-
-};
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_EMIT_NOTIFICATION_INTERFACE_H
diff --git a/plugins/dali-script-v8/src/signals/signal-manager.cpp b/plugins/dali-script-v8/src/signals/signal-manager.cpp
deleted file mode 100644 (file)
index 15648b2..0000000
+++ /dev/null
@@ -1,780 +0,0 @@
-/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "signal-manager.h"
-
-// EXTERNAL INCLUDES
-#include <cstring> // for strcmp
-#include <dali/public-api/images/resource-image.h>
-#include <dali/public-api/object/any.h>
-#include <dali/public-api/events/pan-gesture-detector.h>
-#include <dali/public-api/object/any.h>
-#include <dali/public-api/images/image.h>
-#include <dali/public-api/events/touch-data.h>
-#include <dali/public-api/events/hover-event.h>
-#include <dali/public-api/events/wheel-event.h>
-#include <dali/public-api/events/key-event.h>
-#include <dali/public-api/events/pan-gesture.h>
-#include <dali/public-api/object/weak-handle.h>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <object/handle-wrapper.h>
-#include <object/property-value-wrapper.h>
-#include <actors/actor-wrapper.h>
-#include <image/image-wrapper.h>
-#include <animation/animation-wrapper.h>
-#include <stage/stage-wrapper.h>
-#include <events/pan-gesture-detector-wrapper.h>
-#include <toolkit/focus-manager/keyboard-focus-manager-wrapper.h>
-#include <signals/dali-any-javascript-converter.h>
-
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace // un-named namespace
-{
-const char* const SIGNAL_TOUCH = "touch";
-const char* const SIGNAL_HOVERED = "hovered";
-const char* const SIGNAL_WHEEL_EVENT = "wheelEvent";
-const char* const SIGNAL_ON_STAGE = "onStage";
-const char* const SIGNAL_OFF_STAGE = "offStage";
-const char* const ANIMATION_SIGNAL_FINISHED = "finished";
-const char* const SIGNAL_PAN_DETECTED = "panDetected";
-
-const char* const STAGE_SIGNAL_KEY_EVENT = "keyEvent";
-const char* const STAGE_SIGNAL_EVENT_PROCESSING_FINISHED = "eventProcessingFinished";
-const char* const STAGE_SIGNAL_TOUCH = "touch";
-const char* const SIGNAL_IMAGE_LOADING_FINISHED = "imageLoadingFinished";
-const char* const SIGNAL_IMAGE_UPLOADED = "uploaded";
-
-const char* const KEYBOARD_FOCUS_MANAGER_SIGNAL_PRE_FOCUS_CHANGE = "keyboardPreFocusChange";
-const char* const KEYBOARD_FOCUS_MANAGER_SIGNAL_FOCUS_CHANGED = "keyboardFocusChanged";
-const char* const KEYBOARD_FOCUS_MANAGER_SIGNAL_FOCUS_GROUP_CHANGED = "keyboardFocusGroupChanged";
-const char* const KEYBOARD_FOCUS_MANAGER_SIGNAL_FOCUSED_ACTOR_ENTER_KEY = "keyboardFocusedActorEnterKey";
-const unsigned int MAX_SIGNAL_NAME_LENGTH = 64;
-
-} // un-named name space
-
-class BaseJavaScriptCallback
-{
-public:
-
-  BaseJavaScriptCallback(  v8::Isolate* isolate,  const v8::Local<v8::Function>& callback )
-  :mIsolate( isolate ),mEmitInterface( NULL )
-  {
-    mCallback.Reset( isolate, callback);
-  }
-  ~BaseJavaScriptCallback()
-  {
-    mCallback.Reset();
-  };
-
-  bool IsFunction( const v8::Local<v8::Function>& function)
-  {
-    v8::HandleScope handleScope( mIsolate );
-    v8::Local<v8::Function> localCallback =  v8::Local<v8::Function>::New( mIsolate, mCallback );
-    return ( localCallback == function );
-  }
-
-  void Call( Dali::Any& returnValue, std::vector< Dali::Any >& data )
-  {
-    mEmitInterface->CallbackEnter();
-
-    v8::HandleScope handleScope( mIsolate );
-    v8::TryCatch tryCatch;
-
-    // create a vector of JavaScript arguments to pass to the JavaScript function
-    std::vector< v8::Local<v8::Value> > arguments;
-
-    for( unsigned int i = 0; i < data.size(); ++i )
-    {
-      // convert each Dali::Any object into a JavaScript object based on it's type
-      arguments.push_back( DaliAnyConverter::ConvertToJavaScriptObject( mIsolate, data[i]));
-    }
-
-    // call the javascript function
-    v8::Local<v8::Function> localCallback =  v8::Local<v8::Function>::New( mIsolate, mCallback );
-    v8::Local<v8::Value>  javaScriptReturnVal = v8::Local<v8::Value>::Cast( localCallback->Call( localCallback, arguments.size(), &arguments[0] ));
-
-    // Print errors that happened during execution.
-    if( tryCatch.HasCaught() )
-    {
-      V8Utils::ReportException( mIsolate, &tryCatch);
-      DALI_ASSERT_ALWAYS( 0 && "Script error \n");
-    }
-
-    // convert will log an error, if the return type we want isn't found
-    returnValue = DaliAnyConverter::ConvertToDaliAny( mIsolate,  javaScriptReturnVal, returnValue );
-
-    mEmitInterface->CallbackExit();
-
-  }
-
-  void SetEmitInterface( EmitNotificationInterface* interface)
-  {
-    mEmitInterface = interface;
-  }
-protected:
-  v8::Isolate*                 mIsolate;
-  v8::Persistent<v8::Function> mCallback;
-  EmitNotificationInterface*   mEmitInterface;
-
-};
-/**
- * base class for callback
- */
-class BaseCallBack : public ConnectionTracker
-{
-public:
-    BaseCallBack( v8::Isolate* isolate,  const v8::Local<v8::Function>& callback, const std::string& signalName )
-    :mSignalName( signalName ),
-     mJavaFunctor( isolate, callback)
-    {
-
-    }
-    void CallJavaScript(  Dali::Any& returnValue, std::vector< Dali::Any >& data )
-    {
-      mJavaFunctor.Call( returnValue, data);
-    }
-
-    bool IsFunction( const v8::Local<v8::Function>& function)
-    {
-      return mJavaFunctor.IsFunction(function);
-    }
-
-    void SetEmitInterface( EmitNotificationInterface* interface)
-    {
-      mJavaFunctor.SetEmitInterface( interface );
-    }
-    virtual ~BaseCallBack() {}
-
-    std::string mSignalName;
-    BaseJavaScriptCallback mJavaFunctor;
-};
-
-namespace
-{
-
-class ActorCallback :  public BaseCallBack
-{
-public:
-
-  ActorCallback(v8::Isolate* isolate,  const v8::Local<v8::Function>& callback ,const std::string& signalName, Actor actor )
-  : BaseCallBack( isolate, callback, signalName ),
-    mActor(actor)
-  {
-  }
-  bool OnTouch( Actor actor, const TouchData& touch )
-  {
-    std::vector< Dali::Any > arguments;  // Dali::Vector considers Dali::Any to be a non trivial type so won't compile
-    Dali::Any returnValue(false);
-    arguments.push_back( actor );
-    arguments.push_back( touch );
-    CallJavaScript( returnValue, arguments );
-    bool ret;
-    returnValue.Get(ret);
-    return ret;
-  }
-  bool OnHover( Actor actor, const HoverEvent& event)
-  {
-    std::vector< Dali::Any > arguments;  // Dali::Vector considers Dali::Any to be a non trivial type so won't compile
-    Dali::Any returnValue(false);
-    arguments.push_back( actor );
-    arguments.push_back( event );
-    CallJavaScript( returnValue, arguments );
-    bool ret;
-    returnValue.Get(ret);
-    return ret;
-  }
-  bool OnWheel( Actor actor, const WheelEvent& event)
-  {
-    std::vector< Dali::Any > arguments;
-    Dali::Any returnValue(false);
-    arguments.push_back( actor );
-    arguments.push_back( event );
-    CallJavaScript( returnValue, arguments );
-    bool ret;
-    returnValue.Get(ret);
-    return ret;
-  }
-  void OnStage( Actor actor)
-  {
-    std::vector< Dali::Any > arguments;
-    Dali::Any returnValue;          //no return
-    arguments.push_back( actor );
-    CallJavaScript( returnValue, arguments );
-  }
-  void OffStage( Actor actor)
-  {
-    std::vector< Dali::Any > arguments;
-    Dali::Any returnValue;          //no return
-    arguments.push_back( actor );
-    CallJavaScript( returnValue, arguments );
-  }
-
-  WeakHandle< Actor > mActor;
-
-};
-
-struct ActorGenericCallbackFunctor
-{
-  ActorGenericCallbackFunctor(ActorCallback& callback) : callback(callback) { }
-  void operator()()
-  {
-    std::vector< Dali::Any > arguments;
-    Dali::Any returnValue;          //no return
-    arguments.push_back(callback.mActor.GetHandle()); //pass the actor handle as the parameter
-    callback.CallJavaScript( returnValue, arguments );
-  }
-
-  ActorCallback& callback;
-};
-
-
-class AnimationCallback :  public BaseCallBack
-{
-public:
-
-  AnimationCallback(v8::Isolate* isolate,  const v8::Local<v8::Function>& callback ,const std::string& signalName )
-  : BaseCallBack( isolate, callback, signalName )
-  {
-  }
-  void Finished( Animation& animation)
-  {
-    std::vector< Dali::Any > arguments;  // Dali::Vector considers Dali::Any to be a non trivial type so won't compile
-    Dali::Any returnValue;    //no return
-    arguments.push_back( animation );
-    CallJavaScript( returnValue, arguments );
-  }
-};
-
-
-class ImageCallback :  public BaseCallBack
-{
-public:
-
-  ImageCallback(v8::Isolate* isolate,  const v8::Local<v8::Function>& callback ,const std::string& signalName )
-  : BaseCallBack( isolate, callback, signalName )
-  {
-  }
-  void LoadingFinished( ResourceImage image)
-  {
-    std::vector< Dali::Any > arguments;  // Dali::Vector considers Dali::Any to be a non trivial type so won't compile
-    Dali::Any returnValue;  //no return
-    arguments.push_back( image );
-    CallJavaScript( returnValue, arguments );
-  }
-};
-class StageCallback :  public BaseCallBack
-{
-public:
-
-  StageCallback(v8::Isolate* isolate,  const v8::Local<v8::Function>& callback ,const std::string& signalName )
-  : BaseCallBack( isolate, callback, signalName )
-  {
-  }
-
-  void KeyEventSignal( const KeyEvent& keyEvent )
-  {
-    std::vector< Dali::Any > arguments;
-    Dali::Any returnValue;  //no return
-    arguments.push_back( keyEvent );
-    CallJavaScript( returnValue, arguments );
-  }
-  void EventProcessingFinishedSignal()
-  {
-    std::vector< Dali::Any > arguments;
-    Dali::Any returnValue;  //no return
-    CallJavaScript( returnValue, arguments );
-  }
-  void TouchSignal( const TouchData& touch )
-  {
-    std::vector< Dali::Any > arguments;
-    Dali::Any returnValue;   //no return
-    arguments.push_back( touch );
-    CallJavaScript( returnValue, arguments );
-  }
-};
-
-class KeyboardFocusCallback :  public BaseCallBack
-{
-public:
-
-  KeyboardFocusCallback(v8::Isolate* isolate,  const v8::Local<v8::Function>& callback ,const std::string& signalName )
-  : BaseCallBack( isolate, callback, signalName )
-  {
-  }
-
-  Actor PreFocusChangeSignal(Actor currentFocusedActor,
-                             Actor proposedActorToFocus,
-                             Toolkit::Control::KeyboardFocus::Direction direction  )
-  {
-    std::vector< Dali::Any > arguments;
-    Dali::Any returnValue = Actor();  // we want an actor as a return value
-
-    arguments.push_back( currentFocusedActor );
-    arguments.push_back( proposedActorToFocus );
-
-    std::string name = KeyboardFocusManagerWrapper::GetDirectionName( direction );
-    arguments.push_back( name );
-
-    CallJavaScript( returnValue, arguments );
-
-    Actor ret;
-    returnValue.Get(ret);
-    return ret;
-  }
-  void FocusChangedSignal(Actor originalFocusedActor, Actor currentFocusedActor)
-  {
-    std::vector< Dali::Any > arguments;
-    Dali::Any returnValue;  //no return
-    arguments.push_back( originalFocusedActor );
-    arguments.push_back( currentFocusedActor );
-    CallJavaScript( returnValue, arguments );
-  }
-  void FocusGroupSignal( Actor currentFocusedActor, bool forward )
-  {
-    std::vector< Dali::Any > arguments;
-    Dali::Any returnValue;   //no return
-    arguments.push_back( currentFocusedActor );
-    arguments.push_back( forward );
-    CallJavaScript( returnValue, arguments );
-  }
-  void EnterKeyPressedActorSignal( Actor enterKeyPressedActor )
-  {
-    std::vector< Dali::Any > arguments;
-    Dali::Any returnValue;   //no return
-    arguments.push_back( enterKeyPressedActor );
-    CallJavaScript( returnValue, arguments );
-  }
-};
-
-class PanGestureDetectorCallback :  public BaseCallBack
-{
-public:
-
-  PanGestureDetectorCallback(v8::Isolate* isolate,  const v8::Local<v8::Function>& callback ,const std::string& signalName )
-  : BaseCallBack( isolate, callback, signalName )
-  {
-  }
-  void OnPan( Actor actor, const PanGesture& panGesture)
-  {
-    std::vector< Dali::Any > arguments;
-    Dali::Any returnValue;    //no return
-    arguments.push_back( actor );
-    arguments.push_back( panGesture );
-    CallJavaScript( returnValue, arguments );
-  }
-};
-
-void ActorConnection( v8::Isolate* isolate,
-                                     v8::Local<v8::Function> javaScriptCallback,
-                                     ActorWrapper* actorWrapper,
-                                     const std::string& signalName,
-                                     Actor actor )
-{
-  bool connected(true);
-
-  ActorCallback* callback =new ActorCallback( isolate, javaScriptCallback, signalName, actor );
-
-  if( strcmp( signalName.c_str(), SIGNAL_TOUCH ) == 0 )
-  {
-    actor.TouchSignal().Connect( callback, &ActorCallback::OnTouch );
-  }
-  else if( strcmp( signalName.c_str(), SIGNAL_HOVERED ) == 0 )
-  {
-    actor.HoveredSignal().Connect( callback, &ActorCallback::OnHover );
-  }
-  else if ( strcmp( signalName.c_str(), SIGNAL_WHEEL_EVENT ) == 0 )
-  {
-    actor.WheelEventSignal().Connect( callback, &ActorCallback::OnWheel );
-  }
-  else if ( strcmp( signalName.c_str(), SIGNAL_ON_STAGE ) == 0 )
-  {
-    actor.OnStageSignal().Connect( callback, &ActorCallback::OnStage);
-  }
-  else if ( strcmp( signalName.c_str(), SIGNAL_OFF_STAGE ) == 0 )
-  {
-    actor.OffStageSignal().Connect( callback, &ActorCallback::OffStage);
-  }
-  else
-  {
-    connected = actor.ConnectSignal( callback, signalName, ActorGenericCallbackFunctor(*callback) );
-  }
-
-  if( connected )
-  {
-    actorWrapper->GetSignalManager()->AddCallback( static_cast<BaseCallBack*>(callback) );
-  }
-  else
-  {
-    delete callback;
-    DALI_SCRIPT_EXCEPTION( isolate, "the signal is not available in this object.");
-  }
-}
-
-void AnimationConnection( v8::Isolate* isolate,
-                                     v8::Local<v8::Function> javaScriptCallback,
-                                     AnimationWrapper* animWrapper,
-                                     const std::string& signalName,
-                                     Animation anim )
-{
-  if( signalName ==  ANIMATION_SIGNAL_FINISHED)
-  {
-    AnimationCallback* callback =new AnimationCallback( isolate, javaScriptCallback, signalName );
-    anim.FinishedSignal().Connect( callback, &AnimationCallback::Finished );
-    animWrapper->GetSignalManager()->AddCallback( static_cast<BaseCallBack*>(callback) );
-  }
-}
-
-void ImageConnection( v8::Isolate* isolate,
-                                     v8::Local<v8::Function> javaScriptCallback,
-                                     ImageWrapper* imageWrapper,
-                                     const std::string& signalName,
-                                     Image image)
-{
-  // Nine patch will downcast to ResourceImage
-  ResourceImage resourceImage( ResourceImage::DownCast( image ) );
-  if( !resourceImage )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "can only connect to Resource / NinePatch Images");
-    return;
-  }
-
-  if( strcmp( signalName.c_str(), SIGNAL_IMAGE_LOADING_FINISHED ) == 0 )
-  {
-    ImageCallback* callback =new ImageCallback( isolate, javaScriptCallback, signalName );
-
-    resourceImage.LoadingFinishedSignal().Connect( callback, &ImageCallback::LoadingFinished );
-    imageWrapper->GetSignalManager()->AddCallback( static_cast<BaseCallBack*>(callback) );
-  }
-  else if ( strcmp( signalName.c_str() , SIGNAL_IMAGE_UPLOADED ) == 0 )
-  {
-    ImageCallback* callback =new ImageCallback( isolate, javaScriptCallback, signalName );
-    resourceImage.LoadingFinishedSignal().Connect( callback, &ImageCallback::LoadingFinished );
-    imageWrapper->GetSignalManager()->AddCallback( static_cast<BaseCallBack*>(callback) );
-  }
-}
-
-void StageConnection( v8::Isolate* isolate,
-                                     v8::Local<v8::Function> javaScriptCallback,
-                                     StageWrapper* stageWrapper,
-                                     const std::string& signalName,
-                                     Stage stage)
-{
-  bool connected( true );
-  StageCallback* callback =new StageCallback( isolate, javaScriptCallback, signalName );
-
-  if( strcmp( signalName.c_str() ,STAGE_SIGNAL_KEY_EVENT) == 0 )
-  {
-    stage.KeyEventSignal().Connect( callback, &StageCallback::KeyEventSignal );
-   }
-  else if ( strcmp( signalName.c_str(),  STAGE_SIGNAL_EVENT_PROCESSING_FINISHED ) == 0)
-  {
-    stage.EventProcessingFinishedSignal().Connect( callback, &StageCallback::EventProcessingFinishedSignal );
-  }
-  else if (strcmp( signalName.c_str(), STAGE_SIGNAL_TOUCH ) == 0 )
-  {
-    stage.TouchSignal().Connect( callback, &StageCallback::TouchSignal );
-  }
-  else
-  {
-    connected = false;
-  }
-
-  if( connected )
-  {
-    stageWrapper->GetSignalManager()->AddCallback( static_cast<BaseCallBack*>(callback) );
-  }
-  else
-  {
-    delete  callback;
-  }
-}
-
-void KeyboardFocusManagerConnection( v8::Isolate* isolate,
-      v8::Local<v8::Function> javaScriptCallback,
-      KeyboardFocusManagerWrapper* keyboardFocusWrapper,
-      const std::string& signalName,
-      Toolkit::KeyboardFocusManager keyboardFocusManager)
-{
-  bool connected( true );
-  KeyboardFocusCallback* callback =new KeyboardFocusCallback( isolate, javaScriptCallback, signalName );
-
-  if( strcmp( signalName.c_str(), KEYBOARD_FOCUS_MANAGER_SIGNAL_PRE_FOCUS_CHANGE ) == 0 )
-  {
-    keyboardFocusManager.PreFocusChangeSignal().Connect( callback, &KeyboardFocusCallback::PreFocusChangeSignal );
-  }
-  else if ( strcmp( signalName.c_str(),  KEYBOARD_FOCUS_MANAGER_SIGNAL_FOCUS_CHANGED ) == 0 )
-  {
-    keyboardFocusManager.FocusChangedSignal().Connect( callback, &KeyboardFocusCallback::FocusChangedSignal );
-  }
-  else if ( strcmp( signalName.c_str(), KEYBOARD_FOCUS_MANAGER_SIGNAL_FOCUS_GROUP_CHANGED ) == 0 )
-  {
-    keyboardFocusManager.FocusGroupChangedSignal().Connect( callback, &KeyboardFocusCallback::FocusGroupSignal );
-  }
-  else if ( strcmp( signalName.c_str(), KEYBOARD_FOCUS_MANAGER_SIGNAL_FOCUSED_ACTOR_ENTER_KEY ) == 0 )
-  {
-    keyboardFocusManager.FocusedActorEnterKeySignal().Connect( callback, &KeyboardFocusCallback::EnterKeyPressedActorSignal );
-  }
-  else
-  {
-    connected = false;
-  }
-
-  if( connected )
-  {
-    keyboardFocusWrapper->GetSignalManager()->AddCallback( static_cast<BaseCallBack*>(callback) );
-  }
-  else
-  {
-    delete  callback;
-  }
-}
-
-void PanGestureDetectorConnection( v8::Isolate* isolate,
-                                     v8::Local<v8::Function> javaScriptCallback,
-                                     PanGestureDetectorWrapper* panGestureDetectorWrapper,
-                                     const std::string& signalName,
-                                     PanGestureDetector panGestureDetector )
-{
-  if( strcmp( signalName.c_str() , SIGNAL_PAN_DETECTED ) == 0 )
-  {
-    PanGestureDetectorCallback* callback =new PanGestureDetectorCallback( isolate, javaScriptCallback, signalName );
-    panGestureDetector.DetectedSignal().Connect( callback, &PanGestureDetectorCallback::OnPan );
-    panGestureDetectorWrapper->GetSignalManager()->AddCallback( static_cast<BaseCallBack*>(callback) );
-  }
-}
-
-} // un-named namespace
-
-
-SignalManager::SignalManager()
-:mInsideCallback(false)
-{
-
-}
-SignalManager::~SignalManager()
-{
-  // the object owning the signal manager ( e.g. an actor wrapper ) has been deleted
-  // delete the callbacks objects
-  for( CallBackContainer::Iterator iter = mCallbacks.Begin(); iter != mCallbacks.End(); ++iter )
-  {
-      BaseCallBack* callback = (*iter);
-      delete callback;
-  }
-  for( CallBackContainer::Iterator iter = mDisconnectedCallbacks.Begin(); iter != mDisconnectedCallbacks.End(); ++iter )
-  {
-    BaseCallBack* callback = (*iter);
-    delete callback;
-  }
-}
-
-
-void SignalManager::SignalConnect( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  // format is
-  // first paramter =  signal to connect to
-  // Second parameter = function ( to run )
-  // args.This() = myActor
-  // e.g. myActor.Connect("touch", myJavaScriptActorTouched );
-
-  // Inside Callback on myJavaScriptActorTouched
-  // myActor.Disconnect("touch", myJavaScriptActorTouched );
-
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  if( !args[1]->IsFunction() )
-  {
-    DALI_SCRIPT_EXCEPTION(isolate, "function parameter not found ");
-    return;
-  }
-
-  // get the function
-  v8::Local<v8::Function> func =v8::Handle<v8::Function>::Cast(args[1]);
-
-  // get the handle wrapper
-  BaseWrappedObject* baseObject = BaseWrappedObject::UnWrap( isolate, args.This() );
-
-  // First paramter = signal name as a string
-  bool found( false );
-  std::string signal = V8Utils::GetStringParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION(isolate, "signal name parameter not found ");
-    return;
-  }
-
-  if( signal.empty() || ( signal.length() > MAX_SIGNAL_NAME_LENGTH ) )
-  {
-    DALI_SCRIPT_EXCEPTION(isolate, "signal name length out of range");
-    return;
-  }
-  // We need to determine what type of function needs to be hooked
-  // see if we're connecting to an Actor
-  switch( baseObject->GetType() )
-  {
-    case BaseWrappedObject::ACTOR:
-    {
-      ActorWrapper* actorWrapper = static_cast< ActorWrapper*>( baseObject );
-      ActorConnection( isolate, func, actorWrapper, signal,  actorWrapper->GetActor() );
-      break;
-    }
-    case BaseWrappedObject::ANIMATION:
-    {
-      AnimationWrapper* animWrapper = static_cast< AnimationWrapper*>( baseObject );
-      AnimationConnection( isolate, func, animWrapper, signal, animWrapper->GetAnimation() );
-      break;
-    }
-    case BaseWrappedObject::IMAGE:
-    {
-      ImageWrapper* imageWrapper = static_cast< ImageWrapper*>( baseObject );
-      ImageConnection( isolate, func, imageWrapper, signal, imageWrapper->GetImage() );
-      break;
-    }
-    case BaseWrappedObject::STAGE:
-    {
-      StageWrapper* stageWrapper = static_cast< StageWrapper*>( baseObject );
-      StageConnection( isolate, func, stageWrapper, signal, stageWrapper->GetStage() );
-      break;
-    }
-    case BaseWrappedObject::KEYBOARD_FOCUS_MANAGER:
-    {
-      KeyboardFocusManagerWrapper* keyboardFocusWrapper = static_cast< KeyboardFocusManagerWrapper*>( baseObject );
-      KeyboardFocusManagerConnection( isolate, func, keyboardFocusWrapper, signal, keyboardFocusWrapper->GetKeyboardFocusManager() );
-      break;
-    }
-    case BaseWrappedObject::PAN_GESTURE_DETECTOR:
-    {
-      PanGestureDetectorWrapper* panGestureDetectorWrapper = static_cast< PanGestureDetectorWrapper*>( baseObject );
-      PanGestureDetectorConnection( isolate, func, panGestureDetectorWrapper, signal, panGestureDetectorWrapper->GetPanGestureDetector() );
-      break;
-    }
-    default:
-    {
-      DALI_SCRIPT_EXCEPTION( isolate, "object does not support connections");
-      break;
-    }
-  }
-
-}
-
-void SignalManager::SignalDisconnect( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  // we can get the function name.... use that to disconnect from the object
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  if( !args[1]->IsFunction() )
-  {
-    DALI_SCRIPT_EXCEPTION(isolate, "function parameter not found ");
-    return;
-  }
-
-  // get the function
-  v8::Local<v8::Function> func =v8::Handle<v8::Function>::Cast(args[1]);
-
-  // get the handle wrapper
-  BaseWrappedObject* baseObject = BaseWrappedObject::UnWrap( isolate, args.This() );
-
-  // First parameter = signal name as a string
-  bool found( false );
-  std::string signal = V8Utils::GetStringParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION(isolate, "signal name parameter not found ");
-    return;
-  }
-
-  SignalManager* signalManager = baseObject->GetSignalManager();
-  if(signalManager )
-  {
-    signalManager->RemoveCallback( isolate, signal, func);
-  }
-
-
-}
-void SignalManager::AddCallback( BaseCallBack* callback )
-{
-  // used by the callback to inform signal manager when it is being triggered.
-   callback->SetEmitInterface( this );
-
-   mCallbacks.PushBack( callback );
-}
-void SignalManager::RemoveCallback( v8::Isolate* isolate, const std::string& signalName, const v8::Local<v8::Function>& function )
-{
-  // lets disconnect
-  for( CallBackContainer::Iterator iter = mCallbacks.Begin(); iter != mCallbacks.End(); ++iter )
-  {
-    BaseCallBack* callback = (*iter);
-    if( ( callback->mSignalName == signalName ) &&
-        ( callback->IsFunction(  function  )  )  )
-    {
-      mCallbacks.Erase( iter );
-
-      // if we're inside a callback::Call function, then deleting it will cause a seg fault
-      if( mInsideCallback )
-      {
-        callback->DisconnectAll();
-        mDisconnectedCallbacks.PushBack( callback );
-      }
-      else
-      {
-        delete callback;
-      }
-      return;
-    }
-  }
-}
-
-void SignalManager::CallbackEnter()
-{
-  mInsideCallback = true;
-}
-
-void SignalManager::CallbackExit()
-{
-  // this gets called when we've finished calling into JavaScript, e.g. as a result of animation finishing
-  // which is being listened to by a javascript function.
-
-  // it possible that inside the JavaScript call, it tries to disconnect.
-  // If this happens the callback is added to the mDisconnectedCallbacks list.
-  // We then delay deleting of the callback object until the JavaScript call has finished in this function.
-
-  mInsideCallback = false;
-
-  // lets delete any call backs that were disconnect during the JavaScript call
-  for( CallBackContainer::Iterator iter = mDisconnectedCallbacks.Begin(); iter != mDisconnectedCallbacks.End(); ++iter )
-  {
-    BaseCallBack* callback = (*iter);
-    delete callback;
-  }
-  mDisconnectedCallbacks.Clear();
-
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/signals/signal-manager.h b/plugins/dali-script-v8/src/signals/signal-manager.h
deleted file mode 100644 (file)
index 1fc5e44..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-#ifndef DALI_V8PLUGIN_SIGNAL_MANAGER_H
-#define DALI_V8PLUGIN_SIGNAL_MANAGER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <string>
-#include <dali/public-api/common/dali-vector.h>
-
-// INTERNAL INCLUDES
-#include <signals/emit-notification-interface.h>
-
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-class BaseCallBack;
-class HandleWrapper;
-
-/**
- * Manages signal connection / disconnection.
- *
- * How it works...
- * 1) SignalConnect, SignalDisconnect is installed on to a dali-wrapped object template. E.g.
- *
- *   objTemplate->Set( v8::String::NewFromUtf8( isolate, "Connect"),
-                     v8::FunctionTemplate::New( isolate, SignalManager::SignalConnect) );
- *
- * 2) When the  actor.Connect(...) is called, v8 runs SignalManager::SignalConnect( args )
- *
- * args.This() == Dali object ( e.g. Actor / Animation / Image ).
- * args[ 0 ] == Signal name, e.g. "touched"
- * args[ 1 ] ==  JavaScript function to run when the signal is fired.
- *
- * 3) SignalManager uses the signal name, to decide what type of Dali Signal is required.
- * It then creates a C++ object which can be connected to the Signal.
- * That object also holds a pointer to the JavaScript callback function
- *
- * 4) When the signal is fired, it triggers the signal in the C++ object, which then fires
- * the JavaScript function. See ActorCallback::OnTouch
- *
- *  When the object that holds SignalManager dies (e.g. an ActorWrapper), the signal manager for that
- *  object is destroyed, which automatically disconnects any signal connections.
- *
- *  @TODO
- *  Currently DALi Core supports 'DoConnectSignal' which passes in no parameters and expects no return value.
- *  If we could extend this, so DoConnect supports a generic function such as
- *  Dali::Any (*CallbackFunction) (Dali::Vector< Dali::Any > parameters );
- *  then we should be able to remove most of the code in this file.
- *  As this is how BaseJavaScriptCallback::Call() in SignalManager.cpp works.
- *
- *
- *
- */
-class SignalManager : public EmitNotificationInterface
-{
-public:
-
-  /**
-   * Constructor
-   */
-  SignalManager();
-
-  /**
-   * Destructor
-   */
-  virtual ~SignalManager();
-
-  /**
-   * signal connect function, installed on dali-wrapped object
-   */
-  static void SignalConnect( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * signal disconnect function, installed on dali-wrapped object
-   */
-  static void SignalDisconnect( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * Add a callback
-   * @param[in] callback
-   */
-  void AddCallback( BaseCallBack* callback );
-
-  /**
-   * Remove a callback
-   * @param[in] signalName name
-   * @param[in] function to remove
-   */
-  void RemoveCallback( v8::Isolate* isolate, const std::string& signalName, const v8::Local<v8::Function>& function );
-
-private:
-
-public:
-
-  /**
-   * @copydoc EmitNotificationInterface::CallbackEnter()
-   */
-  virtual void CallbackEnter();
-
-  /**
-   * @copydoc EmitNotificationInterface::CallbackExit()
-   */
-  virtual void CallbackExit();
-
-
-  // typically an object will only have 1 callback, so a vector is ok, e.g.
-  // there's no point in storing a map of callbacks for an actor that will only have 1 connection
-  // for OnTouch.
-  typedef Dali::Vector< BaseCallBack* > CallBackContainer;
-
-  CallBackContainer mCallbacks;               ///< List of callbacks
-  CallBackContainer mDisconnectedCallbacks;   ///< List of disconnected callbacks
-  bool mInsideCallback;                       ///< To prevent recursive loops
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_SIGNAL_MANAGER_H
diff --git a/plugins/dali-script-v8/src/stage/stage-api.cpp b/plugins/dali-script-v8/src/stage/stage-api.cpp
deleted file mode 100644 (file)
index cdeb06b..0000000
+++ /dev/null
@@ -1,266 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "stage-api.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <object/property-value-wrapper.h>
-#include <actors/actor-wrapper.h>
-#include <actors/actor-api.h>
-#include <render-tasks/render-task-list-wrapper.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/***************************************
- * STAGE FUNCTIONS
- *
- ****************************************/
-Dali::Stage StageApi::GetStage(v8::Isolate* isolate, const v8::FunctionCallbackInfo<v8::Value>& args)
-{
-  // the stage object should be in args, but for now just use GetCurrent
-  return Stage::GetCurrent();
-}
-
-/**
- * Adds a child Actor to the Stage.
- * @method add
- * @for Stage
- * @param {Object} Actor
- */
-void StageApi::Add( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Stage stage = GetStage( isolate, args );
-  bool found( false );
-  Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( found )
-  {
-    stage.Add( actor );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing actor parameter");
-  }
-}
-
-/**
- * Removes a child Actor to the Stage.
- * @method remove
- * @for Stage
- * @param {Object} Actor
- */
-void StageApi::Remove( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Stage stage = GetStage( isolate, args );
-  bool found( false );
-
-  Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( found )
-  {
-    stage.Remove( actor );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "missing actor parameter");
-  }
-}
-/**
- * Get the size of the stage
- * @method getSize
- * @for Stage
- * @return {Object} size with properties { x: , y: }
- */
-void StageApi::GetSize( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Stage stage = GetStage( isolate, args );
-  Vector2 size( stage.GetSize() );
-
-  v8::Local<v8::Object> sizeObject = v8::Object::New( isolate );
-  sizeObject->Set( v8::String::NewFromUtf8( isolate, "x"), v8::Number::New( isolate,size.width ));
-  sizeObject->Set( v8::String::NewFromUtf8( isolate, "y"), v8::Number::New( isolate,size.height ));
-
-  // set return value
-  args.GetReturnValue().Set( sizeObject );
-
-}
-/**
- * Retrieve the list of render-tasks.
- * @method getRenderTaskList
- * @for Stage
- * @return {Object} render task list
- */
-void StageApi::GetRenderTaskList( const v8::FunctionCallbackInfo< v8::Value >& args  )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Stage stage = GetStage( isolate, args );
-
-  RenderTaskList taskList = stage.GetRenderTaskList();
-
-  v8::Local <v8::Object> object = RenderTaskListWrapper::WrapRenderTaskList( isolate, taskList );
-
-  args.GetReturnValue().Set(  object );
-}
-/**
- * Query the number of on-stage layers.
- * Note that a default layer is always provided (count >= 1).
- * @method getLayerCount
- * @for Stage
- * @return {Number} number of layers
- */
-void StageApi::GetLayerCount( const v8::FunctionCallbackInfo<v8::Value>& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Stage stage = GetStage( isolate, args );
-
-  args.GetReturnValue().Set( v8::Integer::New( isolate, stage.GetLayerCount() ) );
-
-}
-/**
- * Retrieve the list of render-tasks.
- * @method getLayer
- * @for Stage
- * @param {Integer} depth
- * @return {Object} layer
- */
-void StageApi::GetLayer( const v8::FunctionCallbackInfo< v8::Value >& args  )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Stage stage = GetStage( isolate, args );
-
-  bool found( false );
-  unsigned int depth = V8Utils::GetIntegerParameter( PARAMETER_0, found, isolate, args, 0 );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Integer parameter missing" );
-    return;
-  }
-  Layer rootLayer = stage.GetLayer( depth );
-
-  v8::Handle < v8::Object > wrappedLayer = ActorWrapper::WrapActor( isolate, rootLayer );
-  args.GetReturnValue().Set( wrappedLayer );
-}
-/**
- * Returns the Stage's Root Layer.
- * @method getRootLayer
- * @for Stage
- * @return {Object} root layer
- */
-void StageApi::GetRootLayer( const v8::FunctionCallbackInfo<v8::Value>& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Stage stage = GetStage( isolate, args );
-
-  Layer rootLayer = stage.GetRootLayer();
-
-  v8::Handle < v8::Object > wrappedLayer = ActorWrapper::WrapActor( isolate, rootLayer );
-  args.GetReturnValue().Set( wrappedLayer );
-}
-
-/**
- * Set the background color of the stage
- * @method setBackgroundColor
- * @for Stage
- * @param {Object} Array of [Red,Green,Blue,Alpha], e.g. dali.COLOR_RED, or [1,0,0,1] (full red and alpha);
- * @example
- *     dali.stage.setBackgroundColor( dali.COLOR_RED );
- *
- *     dali.stage.setBackgroundColor( [0.5,0.5,0.5,1 ] ); // set the background to grey
- */
-void StageApi::SetBackgroundColor( const v8::FunctionCallbackInfo<v8::Value>& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Stage stage = GetStage( isolate, args );
-  bool found( false );
-
-  Vector4 backgroundColor = V8Utils::GetVector4Parameter( PARAMETER_0, found, isolate, args);
-  if (!found)
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "no parameter not found" );
-    return;
-  }
-  stage.SetBackgroundColor( backgroundColor );
-}
-/**
- * Get the background color of the stage
- * @method getBackgroundColor
- * @for Stage
- * @return {Object} object that contains the properties [red:,green:,blue,alpha:]
- */
-void StageApi::GetBackgroundColor( const v8::FunctionCallbackInfo<v8::Value>& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Stage stage = GetStage( isolate, args );
-
-  Vector4 color = stage.GetBackgroundColor();
-
-  v8::Local<v8::Object> colorObject = v8::Object::New( isolate );
-
-  colorObject->Set( v8::String::NewFromUtf8( isolate, "red"),   v8::Number::New( isolate,color.r));
-  colorObject->Set( v8::String::NewFromUtf8( isolate, "green"), v8::Number::New( isolate,color.g));
-  colorObject->Set( v8::String::NewFromUtf8( isolate, "blue"),  v8::Number::New( isolate,color.b));
-  colorObject->Set( v8::String::NewFromUtf8( isolate, "alpha"), v8::Number::New( isolate,color.a));
-
-  // set return value
-  args.GetReturnValue().Set( colorObject );
-
-
-}
-/**
- * Retrieve the DPI of the display device to which the stage is connected.
- * @method getDpi
- * @for Stage
- * @return {Object} object that contains the properties [x:,y:]
- */
-void StageApi::GetDpi( const v8::FunctionCallbackInfo<v8::Value>& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Stage stage = GetStage( isolate, args );
-
-  Vector2 dpi( stage.GetDpi() );
-
-  v8::Local<v8::Object> dpiObject = v8::Object::New( isolate );
-  dpiObject->Set( v8::String::NewFromUtf8( isolate, "x"),   v8::Number::New( isolate,dpi.x));
-  dpiObject->Set( v8::String::NewFromUtf8( isolate, "y"), v8::Number::New( isolate,dpi.y));
-
-
-  args.GetReturnValue().Set(  dpiObject );
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/stage/stage-api.h b/plugins/dali-script-v8/src/stage/stage-api.h
deleted file mode 100644 (file)
index 5010209..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-#ifndef DALI_V8PLUGIN_STAGE_API_H
-#define DALI_V8PLUGIN_STAGE_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/common/stage.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace StageApi
-{
-
-  /**
-   * helper
-   */
-  Dali::Stage GetStage( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * StageApi API see stage.h for a description
-    */
-  void Add( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void Remove( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetSize( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetRenderTaskList( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetLayer( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetLayerCount( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetRootLayer( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void SetBackgroundColor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetBackgroundColor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetDpi( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace StageApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_STAGE_API_H
diff --git a/plugins/dali-script-v8/src/stage/stage-wrapper.cpp b/plugins/dali-script-v8/src/stage/stage-wrapper.cpp
deleted file mode 100644 (file)
index b9005c8..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "stage-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-#include <stage/stage-api.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace
-{
-
-/**
- * Contains a list of all functions that can be called on the stage
- */
-const ApiFunction StageFunctionTable[]=
-{
-    /**************************************
-    * Stage API (in order of stage.h)
-    * Any properties that have accessor functions are ignored to avoid duplication
-    **************************************/
-    { "Add",                  StageApi::Add       },
-    { "Remove",               StageApi::Remove    },
-    { "GetSize",              StageApi::GetSize   },
-    { "GetRenderTaskList",    StageApi::GetRenderTaskList   },
-    { "GetLayerCount",        StageApi::GetLayerCount   },
-    { "GetLayer",             StageApi::GetLayer        },
-    { "GetRootLayer",         StageApi::GetRootLayer   },
-    { "SetBackgroundColor",   StageApi::SetBackgroundColor   },
-    { "GetBackgroundColor",   StageApi::GetBackgroundColor   },
-    { "GetDpi",               StageApi::GetDpi       },
-};
-
-const unsigned int StageFunctionTableCount = sizeof(StageFunctionTable)/sizeof(StageFunctionTable[0]);
-} //un-named space
-
-
-StageWrapper::StageWrapper( const Dali::Stage& stage, GarbageCollectorInterface& gc )
-: BaseWrappedObject( BaseWrappedObject::STAGE , gc )
-{
-    mStage = stage;
-}
-
-v8::Handle<v8::Object> StageWrapper::WrapStage(v8::Isolate* isolate, const Dali::Stage& stage )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetStageTemplate( isolate);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the Stage wrapper
-  StageWrapper* pointer =  new StageWrapper( stage, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> StageWrapper::GetStageTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-  objectTemplate = MakeStageTemplate( isolate );
-  return handleScope.Escape( objectTemplate );
-}
-
-v8::Handle<v8::ObjectTemplate> StageWrapper::MakeStageTemplate( v8::Isolate* isolate )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  // add intercepts for Signals, we can't use HandleWrapper::AddIntercepts because Stage doesn't inherit
-  // from Handle ( just baseHandle)
-  ObjectTemplateHelper::AddSignalConnectAndDisconnect( isolate, objTemplate );
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, StageFunctionTable, StageFunctionTableCount );
-
-  return handleScope.Escape( objTemplate );
-}
-
-Stage StageWrapper::GetStage()
-{
-  return mStage;
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/stage/stage-wrapper.h b/plugins/dali-script-v8/src/stage/stage-wrapper.h
deleted file mode 100644 (file)
index 2187f36..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-#ifndef DALI_V8PLUGIN_STAGE_WRAPPER_H
-#define DALI_V8PLUGIN_STAGE_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali/public-api/common/stage.h>
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-#include <signals/signal-manager.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-
-/**
- * An Stage  wrapper.
- * Provides access to Stage specific functionality and V8 memory handling.
- */
-class DALI_INTERNAL StageWrapper : public BaseWrappedObject
-{
-
-public:
-
-  StageWrapper( const Stage& stage,
-                GarbageCollectorInterface& gc );
-
-  virtual ~StageWrapper() {};
-
-  /**
-   * Wraps a stage
-   */
-  static v8::Handle<v8::Object> WrapStage(v8::Isolate* isolate, const Dali::Stage& );
-
-  Stage GetStage();
-
-  virtual SignalManager* GetSignalManager() { return &mSignalManager;}
-
-
-private:
-
-  // Stage
-  Stage mStage;
-  SignalManager mSignalManager;
-
-  static v8::Handle<v8::ObjectTemplate> MakeStageTemplate( v8::Isolate* isolate );
-  static v8::Local<v8::ObjectTemplate> GetStageTemplate( v8::Isolate* isolate );
-
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_STAGE_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/toolkit/builder/builder-api.cpp b/plugins/dali-script-v8/src/toolkit/builder/builder-api.cpp
deleted file mode 100644 (file)
index c5154ba..0000000
+++ /dev/null
@@ -1,447 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "builder-api.h"
-
-// EXTERNAL INCLUDES
-#include <dali/integration-api/debug.h>
-#include <string>
-#include <fstream>
-#include <streambuf>
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <object/property-value-wrapper.h>
-#include <object/handle-wrapper.h>
-#include <toolkit/builder/builder-wrapper.h>
-#include <actors/actor-wrapper.h>
-#include <image/image-wrapper.h>
-#include <animation/animation-wrapper.h>
-#include <rendering/shader-wrapper.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace // un named namespace
-{
-
-
-Dali::Toolkit::Builder GetBuilder( v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::Local<v8::Object> object = args.This();
-  v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField( 0 ) );
-  void* ptr = field->Value();
-
-  BuilderWrapper* wrapper = static_cast<BuilderWrapper *>( ptr );
-  return wrapper->GetBuilder();
-}
-
-
-void GetMapAndString( v8::Isolate* isolate,
-                      std::string stringKey,
-                      std::string& stringValue,
-                      std::string mapKey,
-                      Dali::Property::Map& map,
-                      v8::Local<v8::Object> object)
-{
-    v8::Local<v8::Value> stringNameValue = object->Get( v8::String::NewFromUtf8( isolate, stringKey.c_str() ) );
-    if( !stringNameValue->IsString() )
-    {
-      std::string message = "missing field :"+stringKey;
-      DALI_SCRIPT_EXCEPTION( isolate,  message);
-      return;
-    }
-    stringValue = V8Utils::v8StringToStdString( stringNameValue );
-
-    // constants is optional
-
-    v8::Local<v8::Value> constants = object->Get( v8::String::NewFromUtf8( isolate, mapKey.c_str() ) );
-    if( constants->IsObject() )
-    {
-      map = V8Utils::GetPropertyMapFromObject( isolate, constants->ToObject() );
-    }
-}
-
-
-} // un-named namespace
-
-
-Dali::Toolkit::Builder BuilderApi::New( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  return Dali::Toolkit::Builder::New();
-}
-
-void BuilderApi::LoadFromString( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Dali::Toolkit::Builder builder = GetBuilder( isolate, args );
-
-  bool found(false);
-  std::string str = V8Utils::GetStringParameter( 0, found, isolate, args );
-  if( found )
-  {
-    builder.LoadFromString( str );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "missing string parameter");
-  }
-}
-
-void BuilderApi::LoadFromFile( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Dali::Toolkit::Builder builder = GetBuilder( isolate, args );
-
-  bool found(false);
-  std::string fileName= V8Utils::GetStringParameter( 0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "missing string parameter");
-    return;
-  }
-
-  std::ifstream fileStream( fileName.c_str() );
-  if( !fileStream.is_open() )
-  {
-    std::string message = "failed to open JSON file" + fileName;
-    DALI_SCRIPT_EXCEPTION( isolate,  message );
-    return;
-  }
-
-  //single-pass input iterator that reads successive characters from the input stream
-  std::string json = std::string( (std::istreambuf_iterator< char >( fileStream )), std::istreambuf_iterator< char >() );
-
-  builder.LoadFromString( json );
-
-}
-
-void BuilderApi::AddConstants( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Dali::Toolkit::Builder builder = GetBuilder( isolate, args );
-
-  bool found(false);
-  Dali::Property::Map map = V8Utils::GetPropertyMapParameter( 0,found, isolate, args );
-
-  if( found )
-  {
-    builder.AddConstants( map );
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "no constants found" );
-  }
-
-}
-
-void BuilderApi::GetConstants( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Dali::Toolkit::Builder builder = GetBuilder( isolate, args );
-
-  const Dali::Property::Map& map  = builder.GetConstants();
-
-  v8::Local<v8::Object> object = v8::Object::New( isolate );
-
-  V8Utils::CreatePropertyMap( isolate, map, object );
-
-  args.GetReturnValue().Set( object );
-
-}
-void BuilderApi::CreateAnimation( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  // options =
-  // {
-  //    animation: ..
-  //    constants:
-  //    actor:
-  // }
-  //
-
-  Dali::Toolkit::Builder builder = GetBuilder( isolate, args );
-
-  if( !args[0]->IsObject() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "invalid property map, expecting { animation: x, constants: y, actor: z}" );
-    return;
-  }
-  v8::Local<v8::Object> object = args[0]->ToObject();
-
-  std::string animationName;
-  Dali::Property::Map map;
-
-  //  get the animation name and constant map
-
-  GetMapAndString( isolate,
-                   "animation",
-                   animationName,
-                   "constants",
-                   map,
-                   object );
-
-  // actor is optional
-  Actor actor;
-  v8::Local<v8::Value> actorValue = object->Get( v8::String::NewFromUtf8( isolate, "actor" ) );
-  if( actorValue->IsObject() )
-  {
-    HandleWrapper* handleWrapper = HandleWrapper::Unwrap( isolate, actorValue->ToObject() );
-    if( handleWrapper )
-    {
-      actor = Actor::DownCast( handleWrapper->mHandle );
-    }
-  }
-  Animation anim;
-  if( actor )
-  {
-    //  Animation CreateAnimation( const std::string& animationName, const Dali::Property::Map& map, Dali::Actor sourceActor );
-    anim = builder.CreateAnimation( animationName, map, actor );
-  }
-  else
-  {
-    anim = builder.CreateAnimation( animationName, map);
-  }
-  v8::Local<v8::Object> localObject = AnimationWrapper::WrapAnimation( isolate, anim );
-  args.GetReturnValue().Set( localObject );
-}
-
-void BuilderApi::Create( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  Dali::Toolkit::Builder builder = GetBuilder( isolate, args );
-
-  if( !args[0]->IsObject() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "invalid param");
-    return;
-  }
-  v8::Local<v8::Object> object = args[0]->ToObject();
-
-  // options =
-  // {
-  //    template: "myTemplate",
-  //    constants: {  IMAGE_DIR: "/usr/apps" ,  SHADER_DIR: "/usr/apps/.."}
-  // }
-  //
-  std::string templateName;
-  Dali::Property::Map map;
-
-  GetMapAndString( isolate,
-                   "template",
-                   templateName,
-                   "constants",
-                   map,
-                   object );
-
-  BaseHandle handle = builder.Create( templateName, map );
-  std::string typeName = handle.GetTypeName();
-  ActorWrapper::ActorType actorType = ActorWrapper::GetActorType( typeName );
-
-  if( actorType != ActorWrapper::UNKNOWN_ACTOR )
-  {
-    v8::Local<v8::Object> actorObject =  ActorWrapper::WrapActor(isolate, Actor::DownCast(handle),actorType);
-    args.GetReturnValue().Set( actorObject );
-    return;
-  }
-
-  if( typeName == "Animation")
-  {
-    v8::Local<v8::Object> animation = AnimationWrapper::WrapAnimation(isolate, Animation::DownCast(handle) );
-    args.GetReturnValue().Set( animation );
-  }
-
-  if( typeName == "Image")
-  {
-    v8::Local<v8::Object> image = ImageWrapper::WrapImage(isolate, Image::DownCast(handle) );
-    args.GetReturnValue().Set( image );
-  }
-  if( typeName == "Shader")
-  {
-    v8::Local<v8::Object> shader = ShaderWrapper::WrapShader(isolate, Shader::DownCast( handle ));
-    args.GetReturnValue().Set( shader );
-  }
-}
-void BuilderApi::ApplyStyle( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Dali::Toolkit::Builder builder = GetBuilder( isolate, args );
-
-  // bool ApplyStyle( const std::string& styleName, Handle& handle );
-
-  bool found(false);
-  std::string styleName = V8Utils::GetStringParameter( PARAMETER_0, found, isolate, args);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "missing style name" );
-    return;
-  }
-
-  Dali::Handle handle = V8Utils::GetHandleParameter( PARAMETER_1, found, isolate, args  );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "missing handle parameter" );
-    return;
-  }
-
-  builder.ApplyStyle( styleName, handle );
-
-}
-
-void BuilderApi::ApplyFromJson( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Dali::Toolkit::Builder builder = GetBuilder( isolate, args );
-
-  bool found;
-
-  Dali::Handle handle = V8Utils::GetHandleParameter( PARAMETER_0, found, isolate, args  );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "missing handle parameter" );
-    return;
-  }
-  std::string jsonString = V8Utils::GetStringParameter( PARAMETER_1, found, isolate, args);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "missing JSON string" );
-    return;
-  }
-  builder.ApplyFromJson( handle, jsonString );
-}
-
-void BuilderApi::AddActors( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Dali::Toolkit::Builder builder = GetBuilder( isolate, args );
-
-  //{
-  //  actor:actor
-  //  section: name
-  //}
-
-  Actor actor;
-
-  if( !args[0]->IsObject() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "invalid param");
-    return;
-  }
-  v8::Local<v8::Object> object = args[0]->ToObject();
-
-  v8::Local<v8::Value> actorValue = object->Get( v8::String::NewFromUtf8( isolate, "actor" ) );
-  if( actorValue->IsObject() )
-  {
-    HandleWrapper* handleWrapper = HandleWrapper::Unwrap( isolate, actorValue->ToObject() );
-    if( handleWrapper )
-    {
-      actor = Actor::DownCast( handleWrapper->mHandle );
-    }
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "actor field not found in param");
-    return;
-  }
-
-  v8::Local<v8::Value> stringNameValue = object->Get( v8::String::NewFromUtf8( isolate, "section" ) );
-  if( !stringNameValue->IsString() )
-  {
-    std::string message = "missing field: section";
-    DALI_SCRIPT_EXCEPTION( isolate,  message);
-    return;
-  }
-  std::string sectionName = V8Utils::v8StringToStdString( stringNameValue );
-  if( !sectionName.empty() )
-  {
-    builder.AddActors( sectionName, actor );
-  }
-  else
-  {
-    builder.AddActors(  actor );
-  }
-
-}
-
-void BuilderApi::CreateRenderTask( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  Dali::Toolkit::Builder builder = GetBuilder( isolate, args );
-  bool found(false);
-  std::string str = V8Utils::GetStringParameter( 0, found, isolate, args );
-
-  if( found )
-  {
-    builder.CreateRenderTask( str );
-  }
-  else
-  {
-     DALI_SCRIPT_EXCEPTION( isolate, "render task name");
-  }
-}
-
-void BuilderApi::GetFrameBufferImage( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-   v8::HandleScope handleScope( isolate );
-   Dali::Toolkit::Builder builder = GetBuilder( isolate, args );
-
-   bool found(false);
-   std::string str = V8Utils::GetStringParameter( 0, found, isolate, args );
-   if( found )
-   {
-     // wrap the image
-     // @TODO Test this, may need to implement a Framebuffer image wrapper.?
-     v8::Local<v8::Object> localObject = ImageWrapper::WrapImage( isolate, builder.GetFrameBufferImage(str)  );
-     args.GetReturnValue().Set( localObject );
-   }
-   else
-   {
-     DALI_SCRIPT_EXCEPTION( isolate,  "frame buffer name");
-   }
-
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/toolkit/builder/builder-api.h b/plugins/dali-script-v8/src/toolkit/builder/builder-api.h
deleted file mode 100644 (file)
index 5c5f7e8..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-#ifndef DALI_V8PLUGIN_BUILDER_API_H
-#define DALI_V8PLUGIN_BUILDER_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali-toolkit/devel-api/builder/builder.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace BuilderApi
-{
-  /**
-   * Constructor
-   */
-  Dali::Toolkit::Builder New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * Builder API see animation.h for a description
-   */
-  void SetDuration( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void LoadFromString( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void LoadFromFile( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void AddConstants( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetConstants( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void CreateAnimation( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  void Create( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void ApplyStyle( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void ApplyFromJson(const v8::FunctionCallbackInfo< v8::Value >& args);
-  void AddActors( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void CreateRenderTask( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetFrameBufferImage( const v8::FunctionCallbackInfo< v8::Value >& args );
-}; // namespace BuilderApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_BUILDER_API_H
diff --git a/plugins/dali-script-v8/src/toolkit/builder/builder-wrapper.cpp b/plugins/dali-script-v8/src/toolkit/builder/builder-wrapper.cpp
deleted file mode 100644 (file)
index d8c0f7f..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "builder-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-#include <toolkit/builder/builder-api.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-
-namespace Dali
-{
-namespace V8Plugin
-{
-namespace
-{
-
-/**
- * Contains a list of all functions that can be called
- */
-const ApiFunction BuilderFunctionTable[]=
-{
-    /**************************************
-    * Builder API (in order of builder.h)
-    **************************************/
-
-    { "LoadFromString"          , BuilderApi::LoadFromString           },
-    { "LoadFromFile"            , BuilderApi::LoadFromFile             },
-    { "AddConstants"            , BuilderApi::AddConstants             },
-    { "GetConstants"            , BuilderApi::GetConstants             },
-    { "CreateAnimation"         , BuilderApi::CreateAnimation          },
-    { "Create"                  , BuilderApi::Create                   },
-    { "ApplyStyle"              , BuilderApi::ApplyStyle               },
-    { "ApplyFromJson"           , BuilderApi::ApplyFromJson            },
-    { "AddActors"               , BuilderApi::AddActors                },
-    { "CreateRenderTask"        , BuilderApi::CreateRenderTask         },
-    { "GetFrameBufferImage"     , BuilderApi::GetFrameBufferImage      }
-};
-
-const unsigned int BuilderFunctionTableCount = sizeof(BuilderFunctionTable)/sizeof(BuilderFunctionTable[0]);
-} //un-named space
-
-
-BuilderWrapper::BuilderWrapper( const Dali::Toolkit::Builder& builder, GarbageCollectorInterface& gc )
-: BaseWrappedObject( BaseWrappedObject::BUILDER , gc )
-{
-    mBuilder = builder;
-}
-
-BuilderWrapper::~BuilderWrapper()
-{
-
-}
-
-v8::Handle<v8::Object> BuilderWrapper::WrapBuilder(v8::Isolate* isolate, const Dali::Toolkit::Builder& builder )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetBuilderTemplate( isolate);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the Builder wrapper
-  BuilderWrapper* pointer =  new BuilderWrapper( builder, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> BuilderWrapper::GetBuilderTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, BuilderFunctionTable, BuilderFunctionTableCount );
-
-  return handleScope.Escape( objTemplate );
-
-}
-
-void BuilderWrapper::NewBuilder( const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate);
-
-  if( !args.IsConstructCall() )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Builder constructor called without 'new'" );
-    return;
-  }
-
-  Dali::Toolkit::Builder builder = BuilderApi::New( args );
-  v8::Local<v8::Object> localObject = WrapBuilder( isolate, builder );
-  args.GetReturnValue().Set( localObject );
-}
-
-
-Dali::Toolkit::Builder BuilderWrapper::GetBuilder()
-{
-  return mBuilder;
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/toolkit/builder/builder-wrapper.h b/plugins/dali-script-v8/src/toolkit/builder/builder-wrapper.h
deleted file mode 100644 (file)
index 5046b76..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-#ifndef DALI_V8PLUGIN_BUILDER_WRAPPER_H
-#define DALI_V8PLUGIN_BUILDER_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali-toolkit/devel-api/builder/builder.h>
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * Builder  wrapper.
- * Provides access to Builder specific functionality
- */
-class BuilderWrapper : public BaseWrappedObject
-{
-
-public:
-
-  BuilderWrapper( const Dali::Toolkit::Builder& builder,
-                GarbageCollectorInterface& gc );
-
-  virtual ~BuilderWrapper();
-
-  /**
-   * @brief Creates a new Builder wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-   */
-  static void NewBuilder( const v8::FunctionCallbackInfo< v8::Value >& args);
-
-  /**
-   * Wraps a builder
-   */
-  static v8::Handle<v8::Object> WrapBuilder(v8::Isolate* isolate, const Dali::Toolkit::Builder& );
-
-
-  Dali::Toolkit::Builder GetBuilder();
-
-
-private:
-
-  static v8::Local<v8::ObjectTemplate> GetBuilderTemplate( v8::Isolate* isolate );
-  Dali::Toolkit::Builder mBuilder;
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_BUILDER_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/toolkit/focus-manager/keyboard-focus-manager-api.cpp b/plugins/dali-script-v8/src/toolkit/focus-manager/keyboard-focus-manager-api.cpp
deleted file mode 100644 (file)
index b43e703..0000000
+++ /dev/null
@@ -1,305 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "keyboard-focus-manager-api.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <dali/integration-api/debug.h>
-#include <dali-toolkit/dali-toolkit.h>
-#include <actors/actor-wrapper.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace // un named namespace
-{
-
-
-Toolkit::Control::KeyboardFocus::Direction  GetDirection( std::string name,  v8::Isolate* isolate )
-{
-  if( name == "left")
-  {
-    return Dali::Toolkit::Control::KeyboardFocus::LEFT;
-  }
-  if( name == "right")
-  {
-    return  Dali::Toolkit::Control::KeyboardFocus::RIGHT;
-  }
-  if( name == "up")
-  {
-    return  Dali::Toolkit::Control::KeyboardFocus::UP;
-  }
-  if( name == "down")
-  {
-    return  Dali::Toolkit::Control::KeyboardFocus::DOWN;
-  }
-
-  DALI_SCRIPT_EXCEPTION( isolate,  "direction not found ( wanted left,right,up,down)" );
-
-
-  return Dali::Toolkit::Control::KeyboardFocus::UP;
-
-}
-}; //un-named namespace
-
-/**
- * Move the keyboard focus to the given actor.
- * Only one actor can be focused at the same time.  The actor must
- * be in the stage already and be keyboard focusable.
- *
- * @method setCurrentFocusActor
- * @for KeyboardFocusManager
- * @param {Object} Actor
- */
-void KeyboardFocusManagerApi::SetCurrentFocusActor( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  bool found( false );
-  Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( ! found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "no actor found" );
-    return;
-  }
-
-  Toolkit::KeyboardFocusManager::Get().SetCurrentFocusActor( actor );
-}
-
-/**
- * Get the current focused actor.
- *
- * @method getCurrentFocusActor
- * @for KeyboardFocusManager
- * @return {Object} Actor
- */
-void KeyboardFocusManagerApi::GetCurrentFocusActor( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  v8::Handle < v8::Object > wrappedActor = ActorWrapper::WrapActor( isolate, Toolkit::KeyboardFocusManager::Get().GetCurrentFocusActor() );
-  args.GetReturnValue().Set( wrappedActor );
-}
-
-/**
- * Move the focus to the next focusable actor in the focus
- * chain in the given direction (according to the focus traversal
- * order).
- *
- * @method moveFocus
- * @for KeyboardFocusManager
- * @param {String} direction The direction of focus movement ( left, right, up, down)
- */
-void KeyboardFocusManagerApi::MoveFocus( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  bool found(false);
-  std::string direction = V8Utils::GetStringParameter( PARAMETER_0, found,isolate, args);
-
-  if( ! found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "no direction found" );
-    return;
-  }
-
-  Toolkit::Control::KeyboardFocus::Direction dir = GetDirection( direction, isolate );
-
-  Toolkit::KeyboardFocusManager::Get().MoveFocus( dir );
-}
-/**
- * Clear the focus from the current focused actor if any, so
- * that no actor is focused in the focus chain.
- * It will emit focus changed signal without current focused actor
- * @method clearFocus
- * @for KeyboardFocusManager
- */
-void KeyboardFocusManagerApi::ClearFocus( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  Toolkit::KeyboardFocusManager::Get().ClearFocus();
-}
-
-/**
- * Set whether an actor is a focus group that can limit the
- * scope of focus movement to its child actors in the focus chain.
- *
- * @method setAsFocusGroup
- * @param {Boolean} enabled Whether the focus movement should be looped
- * @for KeyboardFocusManager
- */
-void KeyboardFocusManagerApi::SetAsFocusGroup( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  //  void SetAsFocusGroup(Actor actor, bool isFocusGroup);
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  bool found( false );
-
-  Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "missing actor param" );
-    return;
-  }
-
-  bool isFocusGroup = V8Utils::GetBooleanParameter( PARAMETER_1, found,isolate, args);
-  if( ! found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "boolean param missing" );
-    return;
-  }
-
-  Toolkit::KeyboardFocusManager::Get().SetAsFocusGroup( actor,isFocusGroup );
-
-}
-/**
- * Check whether the actor is set as a focus group or not.
- * @method isFocusGroup
- * @param {Object} Actor  The actor to be checked.
- * @for KeyboardFocusManager
- */
-void KeyboardFocusManagerApi::IsFocusGroup( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  bool found( false );
-  Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Missing actor parameter");
-    return;
-  }
-  args.GetReturnValue().Set( v8::Boolean::New( isolate,   Toolkit::KeyboardFocusManager::Get().IsFocusGroup(actor) ) );
-}
-
-/**
- * Returns the closest ancestor of the given actor that is a focus group.
- * @method getFocusGroup
- * @param {Object} Actor  The actor to be checked.
- * @for KeyboardFocusManager
- */
-void KeyboardFocusManagerApi::GetFocusGroup( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  bool found( false );
-
-  Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Missing actor parameter");
-    return;
-  }
-  Actor retActor  = Toolkit::KeyboardFocusManager::Get().GetFocusGroup( actor );
-  v8::Handle < v8::Object > wrappedActor = ActorWrapper::WrapActor( isolate, retActor );
-  args.GetReturnValue().Set( wrappedActor );
-
-}
-
-/**
- * Get whether the focus movement should be looped within the same focus group.
- * @method setFocusGroupLoop
- * @param {Object} Actor  he actor to be set as a focus group.
- * @param {Boolean} isFocusGroup  Whether to set the actor as a focus group or not.
- * @for KeyboardFocusManager
- */
-void KeyboardFocusManagerApi::SetFocusGroupLoop( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  bool found(false);
-  bool enable = V8Utils::GetBooleanParameter( PARAMETER_0, found,isolate, args);
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate,  "boolean param missing" );
-    return;
-  }
-  Toolkit::KeyboardFocusManager::Get().SetFocusGroupLoop( enable );
-}
-
-/**
- * Get whether the focus movement should be looped within the same focus group.
- * @method getFocusGroupLoop
- * @return  {Boolean} Whether the focus movement should be looped
- * @for KeyboardFocusManager
- */
-void KeyboardFocusManagerApi::GetFocusGroupLoop( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  args.GetReturnValue().Set( v8::Boolean::New( isolate,   Toolkit::KeyboardFocusManager::Get().GetFocusGroupLoop()) );
-}
-
-/**
- * Set the focus indicator actor.
- *
- * This will replace the default focus indicator actor in
- * KeyboardFocusManager and will be added to the focused actor as a
- * highlight.
- * @method setFocusIndicatorActor
- * @param {Object} Actor The indicator actor to be added
- * @for KeyboardFocusManager
- */
-void KeyboardFocusManagerApi::SetFocusIndicatorActor( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-  bool found(false);
-
-  Actor actor = V8Utils::GetActorParameter( PARAMETER_0, found, isolate, args );
-
-  if( !found )
-  {
-    DALI_SCRIPT_EXCEPTION( isolate, "Missing actor parameter");
-    return;
-  }
-
-  // the actor may be an empty handle
-  Toolkit::KeyboardFocusManager::Get().SetFocusIndicatorActor( actor );
-}
-
-
-/**
- *  Get the focus indicator actor.
- *
- * @method getFocusIndicatorActor
- * @param {Object} Actor The indicator actor to be added
- * @for KeyboardFocusManager
- */
-void KeyboardFocusManagerApi::GetFocusIndicatorActor( const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::Isolate* isolate = args.GetIsolate();
-  v8::HandleScope handleScope( isolate );
-
-  v8::Handle < v8::Object > wrappedActor = ActorWrapper::WrapActor( isolate, Toolkit::KeyboardFocusManager::Get().GetFocusIndicatorActor() );
-  args.GetReturnValue().Set( wrappedActor );
-
-}
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/toolkit/focus-manager/keyboard-focus-manager-api.h b/plugins/dali-script-v8/src/toolkit/focus-manager/keyboard-focus-manager-api.h
deleted file mode 100644 (file)
index 57ba93c..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-#ifndef DALI_V8PLUGIN_KEYBOARD_FOCUS_MANAGER_API_H
-#define DALI_V8PLUGIN_KEYBOARD_FOCUS_MANAGER_API_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali-toolkit/public-api/focus-manager/keyboard-focus-manager.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace KeyboardFocusManagerApi
-{
-  /**
-   * Constructor
-   */
-  Dali::Toolkit::KeyboardFocusManager New( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  /**
-   * KeyboardFocusManager API see keyboard-focus-manager.h for a description
-   */
-  void SetCurrentFocusActor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetCurrentFocusActor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void MoveFocus( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void ClearFocus( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  void SetAsFocusGroup( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void IsFocusGroup( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetFocusGroup( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  void SetFocusGroupLoop( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetFocusGroupLoop( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-  void SetFocusIndicatorActor( const v8::FunctionCallbackInfo< v8::Value >& args );
-  void GetFocusIndicatorActor( const v8::FunctionCallbackInfo< v8::Value >& args );
-
-}; // namespace KeyboardFocusManagerApi
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_KEYBOARD_FOCUS_MANAGER_API_H
diff --git a/plugins/dali-script-v8/src/toolkit/focus-manager/keyboard-focus-manager-wrapper.cpp b/plugins/dali-script-v8/src/toolkit/focus-manager/keyboard-focus-manager-wrapper.cpp
deleted file mode 100644 (file)
index 7d9695f..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "keyboard-focus-manager-wrapper.h"
-
-// INTERNAL INCLUDES
-#include <v8-utils.h>
-#include <dali-wrapper.h>
-#include <shared/api-function.h>
-#include <shared/object-template-helper.h>
-#include <toolkit/focus-manager/keyboard-focus-manager-api.h>
-
-namespace Dali
-{
-namespace V8Plugin
-{
-namespace
-{
-
-/**
- * Contains a list of all functions that can be called
- */
-const ApiFunction KeyboardFocusManagerFunctionTable[]=
-{
-    /**************************************
-    * KeyboardFocusManager API (in order of keyboard-focus-manager.h)
-    **************************************/
-
-    { "SetCurrentFocusActor"    , KeyboardFocusManagerApi::SetCurrentFocusActor   },
-    { "GetCurrentFocusActor"    , KeyboardFocusManagerApi::GetCurrentFocusActor   },
-    { "MoveFocus"               , KeyboardFocusManagerApi::MoveFocus              },
-    { "ClearFocus"              , KeyboardFocusManagerApi::ClearFocus             },
-    { "SetAsFocusGroup"         , KeyboardFocusManagerApi::SetAsFocusGroup        },
-    { "IsFocusGroup"            , KeyboardFocusManagerApi::IsFocusGroup           },
-    { "GetFocusGroup"           , KeyboardFocusManagerApi::GetFocusGroup          },
-    { "SetFocusGroupLoop"       , KeyboardFocusManagerApi::SetFocusGroupLoop      },
-    { "GetFocusGroupLoop"       , KeyboardFocusManagerApi::GetFocusGroupLoop      },
-    { "SetFocusIndicatorActor"  , KeyboardFocusManagerApi::SetFocusIndicatorActor },
-    { "GetFocusIndicatorActor"  , KeyboardFocusManagerApi::GetFocusIndicatorActor },
-};
-
-const unsigned int KeyboardFocusManagerFunctionTableCount = sizeof(KeyboardFocusManagerFunctionTable)/sizeof(KeyboardFocusManagerFunctionTable[0]);
-} //un-named space
-
-
-KeyboardFocusManagerWrapper::KeyboardFocusManagerWrapper( const Dali::Toolkit::KeyboardFocusManager& keyboardFocusManager, GarbageCollectorInterface& gc )
-: BaseWrappedObject( BaseWrappedObject::KEYBOARD_FOCUS_MANAGER , gc )
-{
-    mKeyboardFocusManager = keyboardFocusManager;
-}
-
-KeyboardFocusManagerWrapper::~KeyboardFocusManagerWrapper()
-{
-
-}
-
-v8::Handle<v8::Object> KeyboardFocusManagerWrapper::WrapKeyboardFocusManager(v8::Isolate* isolate, const Dali::Toolkit::KeyboardFocusManager& keyboardFocusManager )
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  objectTemplate = GetKeyboardFocusManagerTemplate( isolate);
-
-  // create an instance of the template
-  v8::Local<v8::Object> localObject = objectTemplate->NewInstance();
-
-  // create the KeyboardFocusManager wrapper
-  KeyboardFocusManagerWrapper* pointer =  new KeyboardFocusManagerWrapper( keyboardFocusManager, Dali::V8Plugin::DaliWrapper::Get().GetDaliGarbageCollector() );
-
-  // assign the JavaScript object to the wrapper.
-  pointer->SetJavascriptObject( isolate, localObject );
-
-  return handleScope.Escape( localObject );
-}
-
-v8::Local<v8::ObjectTemplate> KeyboardFocusManagerWrapper::GetKeyboardFocusManagerTemplate( v8::Isolate* isolate)
-{
-  v8::EscapableHandleScope handleScope( isolate );
-  v8::Local<v8::ObjectTemplate> objectTemplate;
-
-  v8::Local<v8::ObjectTemplate> objTemplate = v8::ObjectTemplate::New();
-
-  objTemplate->SetInternalFieldCount( BaseWrappedObject::FIELD_COUNT );
-
-  // add intercepts for Signals, we can't use HandleWrapper::AddIntercepts because KeyboardFocusManager doesn't inherit
-  // from Handle ( just baseHandle)
-  ObjectTemplateHelper::AddSignalConnectAndDisconnect( isolate, objTemplate );
-
-  // add our function properties
-  ObjectTemplateHelper::InstallFunctions( isolate, objTemplate, KeyboardFocusManagerFunctionTable, KeyboardFocusManagerFunctionTableCount );
-
-  return handleScope.Escape( objTemplate );
-
-}
-
-
-std::string KeyboardFocusManagerWrapper::GetDirectionName(  Toolkit::Control::KeyboardFocus::Direction dir )
-{
-  switch( dir )
-  {
-    case Dali::Toolkit::Control::KeyboardFocus::LEFT:
-    {
-      return "left";
-      break;
-    }
-    case Dali::Toolkit::Control::KeyboardFocus::RIGHT:
-    {
-      return "right";
-      break;
-    }
-    case Dali::Toolkit::Control::KeyboardFocus::UP:
-    {
-      return "up";
-      break;
-    }
-    case Dali::Toolkit::Control::KeyboardFocus::DOWN:
-    {
-      return "down";
-      break;
-    }
-    case Dali::Toolkit::Control::KeyboardFocus::PAGE_UP:
-    {
-      return "pageUp";
-      break;
-    }
-    case Dali::Toolkit::Control::KeyboardFocus::PAGE_DOWN:
-    {
-      return "pageDown";
-      break;
-    }
-  }
-  return "unknown direction";
-}
-
-
-Dali::Toolkit::KeyboardFocusManager KeyboardFocusManagerWrapper::GetKeyboardFocusManager()
-{
-  return mKeyboardFocusManager;
-}
-
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/toolkit/focus-manager/keyboard-focus-manager-wrapper.h b/plugins/dali-script-v8/src/toolkit/focus-manager/keyboard-focus-manager-wrapper.h
deleted file mode 100644 (file)
index 679f802..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-#ifndef DALI_V8PLUGIN_KEYBOARD_FOCUS_MANAGER_WRAPPER_H
-#define DALI_V8PLUGIN_KEYBOARD_FOCUS_MANAGER_WRAPPER_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// EXTERNAL INCLUDES
-#include <v8.h>
-#include <dali-toolkit/public-api/focus-manager/keyboard-focus-manager.h>
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-#include <signals/signal-manager.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-/**
- * KeyboardFocusManager  wrapper.
- * Provides access to KeyboardFocusManager specific functionality
- */
-class KeyboardFocusManagerWrapper : public BaseWrappedObject
-{
-
-public:
-
-  KeyboardFocusManagerWrapper( const Dali::Toolkit::KeyboardFocusManager& keyboardFocusManager,
-                GarbageCollectorInterface& gc );
-
-  virtual ~KeyboardFocusManagerWrapper();
-
-/*
-  *
-   * @brief Creates a new KeyboardFocusManager wrapped inside a Javascript Object.
-   * @param[in] args v8 function call arguments interpreted
-
-  static void NewKeyboardFocusManager( const v8::FunctionCallbackInfo< v8::Value >& args);
-*/
-
-  /**
-   * Wraps a keyboardFocusManager
-   */
-  static v8::Handle<v8::Object> WrapKeyboardFocusManager(v8::Isolate* isolate, const Dali::Toolkit::KeyboardFocusManager& );
-
-
-  Dali::Toolkit::KeyboardFocusManager GetKeyboardFocusManager();
-
-
-  virtual SignalManager* GetSignalManager() { return &mSignalManager;}
-
-  static std::string GetDirectionName(  Toolkit::Control::KeyboardFocus::Direction dir );
-
-private:
-
-
-  static v8::Local<v8::ObjectTemplate> GetKeyboardFocusManagerTemplate( v8::Isolate* isolate );
-  Dali::Toolkit::KeyboardFocusManager mKeyboardFocusManager;
-  SignalManager mSignalManager;
-};
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-#endif // DALI_V8PLUGIN_KEYBOARD_FOCUS_MANAGER_WRAPPER_H
diff --git a/plugins/dali-script-v8/src/utils/v8-utils.cpp b/plugins/dali-script-v8/src/utils/v8-utils.cpp
deleted file mode 100644 (file)
index ce656c0..0000000
+++ /dev/null
@@ -1,1144 +0,0 @@
-/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// HEADER
-#include "v8-utils.h"
-
-// EXTERNAL INCLUDES
-#include <iostream>
-#include <fstream>
-#include <sstream>
-#include <dali/integration-api/debug.h>
-
-// INTERNAL INCLUDES
-#include <object/property-value-wrapper.h>
-#include <actors/actor-wrapper.h>
-#include <object/handle-wrapper.h>
-#include <image/image-wrapper.h>
-#include <render-tasks/render-task-wrapper.h>
-#include <object/property-value-wrapper.h>
-
-
-/**
- * Similar to DALI_LOG_ERROR except the PRETTY_FUNCTION
- * is removed because it makes no sense for scripting errors.
- */
-#define DALI_LOG_SCRIPT_ERROR(format, args...) Dali::Integration::Log::LogMessage(Dali::Integration::Log::DebugError, format, ## args)
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-namespace V8Utils
-{
-
-void Log(const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::HandleScope handleScope( args.GetIsolate());
-
-  bool first = true;
-  for (int i = 0; i < args.Length(); i++)
-  {
-    if (first)
-    {
-      first = false;
-    }
-    else
-    {
-      std::cout << " ";
-    }
-    v8::String::Utf8Value utf8_value( args[i] );
-    std::cout << *utf8_value << "\n";
-  }
-}
-
-void LogError(const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::HandleScope handleScope( args.GetIsolate());
-  std::string output;
-  bool first = true;
-  for (int i = 0; i < args.Length(); i++)
-  {
-    if (first)
-    {
-      first = false;
-    }
-    else
-    {
-      output +=" ";
-    }
-    v8::String::Utf8Value utf8_value( args[i] );
-    output += *utf8_value;
-    output +="\n";
-  }
-  DALI_LOG_ERROR_NOFN( "JavaScript: %s\n",output.c_str() );
-}
-
-void GetFileContents(const std::string &fileName, std::string& contents)
-{
-   std::ifstream t(fileName.c_str());
-   contents = std::string((std::istreambuf_iterator<char>(t)), std::istreambuf_iterator<char>());
-};
-
-void GetFileDirectory( const std::string& fileName, std::string& directory )
-{
-  directory = "";
-
-  // get the position of the last slash
-  size_t pos = fileName.find_last_of("\\/");
-
-  // if it doesn't exist, return nothing
-  if( (std::string::npos == pos ) )
-  {
-    return;
-  }
-  else
-  {
-    // check an edge case where the string ends in a forward slash "mydir/"
-    if( (pos+1) < fileName.length() )
-    {
-      directory = fileName.substr(0, pos+1);
-      return;
-    }
-  }
-}
-
-void GetFileName( const std::string& fullPathName, std::string& fileName )
-{
-  // look for last slash
-  size_t pos = fullPathName.find_last_of("\\/");
-
-  if( std::string::npos == pos )
-  {
-    fileName = fullPathName;
-  }
-  else
-  {
-    fileName = fullPathName.substr(pos,fileName.length());
-  }
-}
-
-void GetModuleName( const std::string& fileName, std::string& moduleName )
-{
-  std::string fileNameNoPath;
-   GetFileName( fileName , fileNameNoPath );
-  size_t pos = fileNameNoPath.find_last_of(".");
-  if( std::string::npos == pos )
-  {
-    moduleName = fileNameNoPath;
-  }
-  else
-  {
-    moduleName = fileName.substr(0, pos );
-  }
-}
-
-bool IsPropertyMapIdentical(Property::Map map1, Property::Map map2)
-{
-  bool dirty = false;
-
-  // Compare number of properties
-  if ( map1.Count() != map2.Count() )
-  {
-    dirty = true;
-  }
-  else
-  {
-    for ( unsigned int i = 0, count = map1.Count(); i < count; ++i )
-    {
-      // Compare the key first
-      if(map1.GetKey(i) != map2.GetKey(i))
-      {
-        dirty = true;
-      }
-      else
-      {
-        Property::Value& value = map1.GetValue(i);
-        Property::Value& newValue = map2.GetValue(i);
-
-        // Compare the value type
-        if(value.GetType() != newValue.GetType())
-        {
-          dirty = true;
-        }
-        else
-        {
-          // Compare the value
-          switch( value.GetType() )
-          {
-            case Property::BOOLEAN:
-            {
-              dirty = ( value.Get<bool>() != newValue.Get<bool>() );
-              break;
-            }
-            case Property::FLOAT:
-            {
-              dirty = ( value.Get<float>() != newValue.Get<float>() );
-              break;
-            }
-            case Property::INTEGER:
-            {
-              dirty = ( value.Get<int>() != newValue.Get<int>() );
-              break;
-            }
-            case Property::RECTANGLE:
-            {
-              dirty = ( value.Get< Rect<int> >() != newValue.Get< Rect<int> >() );
-              break;
-            }
-            case Property::VECTOR2:
-            {
-              dirty = ( value.Get<Vector2>() != newValue.Get<Vector2>() );
-              break;
-            }
-            case Property::VECTOR3:
-            {
-              dirty = ( value.Get<Vector3>() != newValue.Get<Vector3>() );
-              break;
-            }
-            case Property::VECTOR4:
-            {
-              dirty = ( value.Get<Vector4>() != newValue.Get<Vector4>() );
-              break;
-            }
-            case Property::MATRIX3:
-            {
-              dirty = ( value.Get<Matrix3>() != newValue.Get<Matrix3>() );
-              break;
-            }
-            case Property::MATRIX:
-            {
-              dirty = ( value.Get<Matrix>() != newValue.Get<Matrix>() );
-              break;
-            }
-            case Property::ROTATION:
-            {
-              dirty = ( value.Get<Quaternion>() != newValue.Get<Quaternion>() );
-              break;
-            }
-            case Property::STRING:
-            {
-              dirty = ( value.Get<std::string>() != newValue.Get<std::string>() );
-              break;
-            }
-            case Property::MAP:
-            {
-              dirty = ( !IsPropertyMapIdentical( value.Get<Property::Map>(), newValue.Get<Property::Map>() ) );
-              break;
-            }
-            default:
-            {
-              break;
-            }
-          }
-        }
-      }
-
-      if(dirty)
-      {
-        // Different already, no need any further comparison
-        break;
-      }
-    }
-  }
-
-  return !dirty;
-}
-
-void ReportException(  v8::Isolate* isolate, v8::TryCatch* tryCatch)
-{
-  v8::HandleScope handleScope( isolate );
-
-  v8::String::Utf8Value exception(tryCatch->Exception());
-  v8::Handle<v8::Message> message   = tryCatch->Message();
-
-  if (message.IsEmpty())
-  {
-    // V8 didn't provide any extra information about this error; just
-    // print the exception.
-    DALI_LOG_SCRIPT_ERROR("%s\n", *exception);
-  }
-  else
-  {
-
-    // Print (filename):(line number): (message).
-    v8::String::Utf8Value filename(message->GetScriptResourceName());
-
-    DALI_LOG_SCRIPT_ERROR("\n\n====== Error found in JavaScript: ========= \n");
-
-
-    int linenum = message->GetLineNumber();
-    DALI_LOG_SCRIPT_ERROR("File: %s\n", *filename, linenum, *exception);
-
-     DALI_LOG_SCRIPT_ERROR("Error: :%s\n", *exception );
-     DALI_LOG_SCRIPT_ERROR("Line: :%i\n",  linenum );
-
-    // Print line of source code.
-    v8::String::Utf8Value sourceline(message->GetSourceLine());
-
-    DALI_LOG_SCRIPT_ERROR("Source: %s\n", *sourceline);
-
-    // Print wavy underline (GetUnderline is deprecated).
-
-    std::stringstream msg;
-
-    int start = message->GetStartColumn();
-    for (int i = 0; i < start; i++)
-    {
-      msg << " ";
-    }
-    int end = message->GetEndColumn();
-    for (int i = start; i < end; i++)
-    {
-      msg << "↑";
-    }
-
-    DALI_LOG_SCRIPT_ERROR("        %s\n", msg.str().c_str());
-
-    v8::String::Utf8Value stack_trace(tryCatch->StackTrace());
-    if (stack_trace.length() > 0)
-    {
-      DALI_LOG_SCRIPT_ERROR("%s\n", *stack_trace);
-    }
-    DALI_LOG_SCRIPT_ERROR("\n=========================================== \n");
-
-  }
-}
-
-std::string GetJavaScriptFunctionName( const char* functionName  )
-{
-  // @todo if we are 100% decided on lower case, go through
-  // every api and manually change the function names to lower case first character
-  std::string name( functionName );
-  name[0]=tolower( functionName[0] );
-  return name;
-}
-
-void Version(const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::HandleScope handleScope( args.GetIsolate());
-
-  v8::Handle<v8::String>  ver = v8::String::NewFromUtf8(args.GetIsolate(), v8::V8::GetVersion());
-
-  args.GetReturnValue().Set(ver);
-}
-
-
-std::string v8StringToStdString( const v8::Handle<v8::Value>& value )
-{
-  v8::String::Utf8Value utf8(value);
-  return std::string(*utf8);
-}
-
-
-std::string PropertyNameToJavaScriptName(const std::string& hyphenatedName)
-{
-  std::string ret;
-
-  ret.reserve(hyphenatedName.size());
-
-  bool capitlizeNext = false ;
-  for(unsigned int i = 0; i < hyphenatedName.size(); ++i)
-  {
-    char c = hyphenatedName[i];
-    if(c == '-')
-    {
-      capitlizeNext = true;
-    }
-    else
-    {
-      if(capitlizeNext)
-      {
-        ret.push_back(std::toupper(c));
-        capitlizeNext = false;
-      }
-      else
-      {
-        ret.push_back(c);
-      }
-    }
-  }
-
-  return ret;
-}
-
-void ScriptError( const char* function, v8::Isolate* isolate, std::string errorString )
-{
-  v8::EscapableHandleScope scope( isolate);
-  std::string errorMsg = std::string(function) + std::string("(), ") + errorString;
-
-  // log out to DALI_LOG_ERROR first, so we know something has gone wrong
-  DALI_LOG_ERROR("%s \n", errorMsg.c_str() );
-
-  // throw a V8 exception, DALi will keep running but we will get a print out
-  // of where the error occured in the JavaScript source
-  isolate->ThrowException( v8::String::NewFromUtf8( isolate, errorMsg.c_str()) );
-}
-
-void ScriptWarning( const char* function, std::string warningString )
-{
-  std::string warningMsg = std::string(function) + std::string("(), ") + warningString;
-  DALI_LOG_WARNING("%s \n", warningMsg.c_str() );
-}
-
-bool IsBooleanPrimitiveOrObject( const v8::Local<v8::Value>& value )
-{
-  return ( value->IsBoolean() || value->IsBooleanObject());
-}
-
-bool GetBooleanValue( v8::Isolate* isolate, const v8::Local<v8::Value>& value )
-{
-  v8::EscapableHandleScope scope( isolate); // may not be required.
-
-  if( value->IsBoolean() )
-  {
-    return value->ToBoolean()->Value();
-  }
-  else if (value->IsBooleanObject() )
-  {
-    const v8::Local<v8::BooleanObject> object = v8::Local<v8::BooleanObject>::Cast(value);
-    return object->BooleanValue();
-  }
-  DALI_SCRIPT_EXCEPTION(isolate, "no bool found");
-  return false;
-}
-
-bool IsNumberPrimitiveOrObject( const v8::Local<v8::Value>& value )
-{
-  return ( value->IsNumber() || value->IsNumberObject());
-}
-
-float GetNumberValue( v8::Isolate* isolate, const v8::Local<v8::Value>& value )
-{
-  v8::EscapableHandleScope scope( isolate); // may not be required.
-
-  if( value->IsNumber() )
-  {
-    return value->ToNumber()->Value();
-  }
-  else if (value->IsNumberObject() )
-  {
-    const v8::Local<v8::NumberObject> object = v8::Local<v8::NumberObject>::Cast(value);
-    return object->ValueOf();
-  }
-
-  DALI_SCRIPT_EXCEPTION(isolate, "no number found?");
-  return 0.f;
-}
-
-bool IsStringPrimitiveOrObject( const v8::Local<v8::Value>& value )
-{
-  return ( value->IsString() || value->IsStringObject());
-}
-
-std::string GetStringValue( v8::Isolate* isolate, const v8::Local<v8::Value>& value )
-{
-  v8::EscapableHandleScope scope( isolate); // may not be required.
-
-  if( value->IsString() )
-  {
-    return V8Utils::v8StringToStdString(value);
-  }
-  else if (value->IsStringObject() )
-  {
-    const v8::Local<v8::StringObject> object = v8::Local<v8::StringObject>::Cast(value);
-    return V8Utils::v8StringToStdString( object->ValueOf() );
-  }
-
-  DALI_SCRIPT_EXCEPTION(isolate, "no string found?");
-  return "";
-}
-
-
-Property::Value GetPropertyValueFromObject( bool& found, v8::Isolate* isolate, const   v8::Local<v8::Value >& value  )
-{
-  v8::HandleScope handleScope( isolate);
-
-  Property::Value  daliPropertyValue;// creates a property with Property::NONE
-
-  found = false;
-
-  if( value->IsObject() )
-  {
-    v8::Local<v8::Object> object = v8::Handle<v8::Object>::Cast( value );
-
-    if( BaseWrappedObject::IsWrappedTypeAPropertyValue( object ) )
-    {
-      found = true;
-      PropertyValueWrapper* propertyWrapper = PropertyValueWrapper::Unwrap( isolate, object );
-      return propertyWrapper->GetValue();
-    }
-    else if( value->IsArray() )
-    {
-      found = true;
-      return PropertyValueWrapper::VectorOrMatrixFromV8Array( isolate, object);//todo check for V8 array / map?
-    }
-  }
-  else if( value->IsBoolean() )
-  {
-    found = true;
-    v8::Local<v8::Boolean> v = value->ToBoolean();
-    return Dali::Property::Value(v->Value());
-  }
-  else if( value->IsNumber() )
-  {
-    found = true;
-    v8::Local<v8::Number> v = value->ToNumber();
-    return Dali::Property::Value(static_cast<float>(v->Value()));
-  }
-  else if( value->IsInt32() || value->IsUint32() )
-  {
-    found = true;
-    v8::Local<v8::Int32> v = value->ToInt32();
-    return Dali::Property::Value(static_cast<int>(v->Value()));
-  }
-  else if( value->IsString() )
-  {
-    found = true;
-    std::string valueString = V8Utils::v8StringToStdString( value );
-    return Dali::Property::Value(valueString);
-  }
-
-  return daliPropertyValue;
-
-}
-
-Property::Map GetPropertyMapFromObject( v8::Isolate* isolate, const v8::Local<v8::Object>& object)
-{
-  v8::Local<v8::Array> properties = object->GetPropertyNames();
-  Property::Map propertyMap;    // empty map
-
-  for(  unsigned int i = 0; i <  properties->Length(); ++i)
-  {
-    // Get the key
-    v8::Local<v8::Value> key = properties->Get( i );
-    std::string keyString = v8StringToStdString( key );
-
-    // Get the value
-    v8::Local<v8::Value> value = object->Get( key );
-
-    if( value->IsBoolean() )
-    {
-      v8::Local<v8::Boolean> v = value->ToBoolean();
-      propertyMap[ keyString ] = v->Value();
-    }
-    else if( value->IsNumber() )
-    {
-      v8::Local<v8::Number> v = value->ToNumber();
-      propertyMap[ keyString ] = static_cast<float>(v->Value());
-    }
-    else if( value->IsInt32() || value->IsUint32() )
-    {
-      v8::Local<v8::Int32> v = value->ToInt32();
-      propertyMap[ keyString ] = static_cast<int>(v->Value());
-    }
-    else if( value->IsString() )
-    {
-      std::string valueString = V8Utils::v8StringToStdString( value );
-      propertyMap[ keyString ] = valueString.c_str();
-    }
-    else if( value->IsArray() )
-    {
-      propertyMap[ keyString ] = PropertyValueWrapper::VectorOrMatrixFromV8Array( isolate, value);
-    }
-    else if( value->IsObject() )
-    {
-      Dali::Property::Map map = V8Utils::GetPropertyMapFromObject(isolate, value->ToObject());
-      if( !map.Empty() )
-      {
-        propertyMap[ keyString ] = Dali::Property::Value( map );
-      }
-    }
-  }
-
-  return propertyMap;
-}
-
-Actor GetActorFromObject( v8::Isolate* isolate, bool& found, v8::Local<v8::Object>& object)
-{
-  v8::HandleScope handleScope( isolate);
-  found = false;
-
-  if( BaseWrappedObject::IsWrappedType ( isolate, object, BaseWrappedObject::ACTOR ))
-  {
-    HandleWrapper* handleWrapper = HandleWrapper::Unwrap( isolate, object );
-    return Actor::DownCast( handleWrapper->mHandle );
-  }
-  return Actor();
-}
-
-
-int GetIntegerParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args, int defaultValue  )
-{
-  found = false;
-  unsigned int length = args.Length();
-  if( index >= length )
-  {
-    return defaultValue;
-  }
-  if( args[ index ]->IsInt32() )
-  {
-    found = true;
-    return args[ index ]->Int32Value();
-  }
-  else
-  {
-    return defaultValue;
-  }
-}
-
-float GetFloatParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args, float defaultValue  )
-{
-  found = false;
-  unsigned int length = args.Length();
-  if( index >= length )
-  {
-    return defaultValue;
-  }
-  if( args[ index ]->IsNumber() )
-  {
-    found = true;
-    return args[ index ]->NumberValue();
-  }
-  else
-  {
-    return defaultValue;
-  }
-}
-
-std::string GetStringParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  found = false;
-  unsigned int length = args.Length();
-
-  if( index >= length )
-  {
-    return std::string();
-  }
-  if( args[ index ]->IsString() )
-  {
-    found = true;
-    return v8StringToStdString( args[ index ]);
-  }
-  else
-  {
-    return std::string();
-  }
-}
-
-bool GetBooleanParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate);
-
-  found = false;
-  unsigned int length = args.Length();
-  if( index >= length )
-  {
-    return false;
-  }
-  if( args[ index ]->IsBoolean() )
-  {
-    found = true;
-    v8::Local<v8::Boolean> v = args[ index ]->ToBoolean();
-    return v->Value();
-  }
-  else
-  {
-    return false;
-  }
-}
-
-void* GetArrayBufferViewParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args  )
-{
-  found = false;
-  unsigned int length = args.Length();
-  if( index < length && args[index]->IsArrayBufferView() )
-  {
-    found = true;
-    v8::ArrayBufferView* bufferView = v8::ArrayBufferView::Cast(*(args[index]));
-    v8::Handle<v8::ArrayBuffer> buffer = bufferView->Buffer();
-    v8::ArrayBuffer::Contents contents = buffer->Externalize();
-    return contents.Data();
-  }
-  else
-  {
-    return NULL;
-  }
-}
-
-Handle GetHandleParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate);
-
-  found = false;
-  unsigned int length = args.Length();
-  if( index >= length )
-  {
-    return Handle();
-  }
-
-  if( args[ index ]->IsObject() )
-  {
-    v8::Local<v8::Object> object = args[ index ]->ToObject();
-    v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField(0) );
-    void* ptr = field->Value();
-    if( ptr )
-    {
-        found = true;
-        HandleWrapper* wrapper = static_cast< HandleWrapper *>(ptr);
-        return wrapper->GetHandle();
-    }
-  }
-  return Handle();
-}
-
-Vector2 GetVector2Parameter( unsigned int index,  bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate);
-  unsigned int length =  args.Length();
-  Vector2 ret;
-  found = false;
-
-  if( index < length )
-  {
-    if( args[ index ]->IsObject() )
-    {
-      Dali::Property::Value value;
-      value = PropertyValueWrapper::ExtractPropertyValue( isolate, args[index], Dali::Property::VECTOR2 );
-      if( value.GetType() == Dali::Property::VECTOR2)
-      {
-        found = true;
-        value.Get(ret);
-      }
-      else
-      {
-        DALI_SCRIPT_EXCEPTION(isolate, "Missing Vector2 parameter");
-      }
-    }
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION(isolate, "Missing Vector2 parameter");
-  }
-
-  return ret;
-}
-
-Vector2 GetVector2ParameterFrom2Float( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  Vector2 ret(0.0f,0.0f);
-  bool bFound(false);
-  unsigned int argCount( args.Length() );
-
-  if( index+2 >= argCount )
-  {
-    DALI_SCRIPT_EXCEPTION(isolate, "Missing parameter");
-  }
-
-  found = true;
-  ret.x = V8Utils::GetFloatParameter( index, bFound, isolate, args, 0.0f );
-  found = found && bFound;
-  ret.y = V8Utils::GetFloatParameter( index+1, bFound, isolate, args, 0.0f );
-  found = found && bFound;
-
-  return ret;
-}
-
-Vector3 GetVector3Parameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::HandleScope handleScope( isolate);
-  unsigned int argCount( args.Length() );
-  Vector3 ret;
-  found = false;
-  if( index < argCount )
-  {
-    if( args[ index ]->IsObject() )
-    {
-      Dali::Property::Value value;
-      value = PropertyValueWrapper::ExtractPropertyValue( isolate, args[index], Dali::Property::VECTOR3 );
-      if( value.GetType() == Dali::Property::VECTOR3)
-      {
-        found = true;
-        value.Get(ret);
-      }
-      else
-      {
-        DALI_SCRIPT_EXCEPTION(isolate, "Missing Vector3 parameter");
-      }
-    }
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION(isolate, "Missing Vector3 parameter");
-
-  }
-
-  return ret;
-}
-
-Vector4 GetVector4Parameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args)
-{
-  v8::HandleScope handleScope( isolate);
-  unsigned int argCount( args.Length() );
-  Vector4 ret;
-  found = false;
-
-  if( index < argCount )
-  {
-    if( args[ index ]->IsObject() )
-    {
-      Dali::Property::Value value;
-      value = PropertyValueWrapper::ExtractPropertyValue( isolate, args[index], Dali::Property::VECTOR4 );
-      if( value.GetType() == Dali::Property::VECTOR4)
-      {
-        found = true;
-        value.Get(ret);
-      }
-      else
-      {
-        DALI_SCRIPT_EXCEPTION(isolate, "Missing Vector4 parameter");
-      }
-    }
-  }
-  else
-  {
-    DALI_SCRIPT_EXCEPTION(isolate, "Missing Vector4 parameter");
-  }
-
-  return ret;
-}
-
-
-Rect<int> GetRectIntParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate);
-
-   found = false;
-   int length = args.Length() - index;
-
-   // if it's an array read the 2 numbers into a vector2
-   if( length == 4 )
-   {
-     if( args[ 0 + index ]->IsInt32() &&
-         args[ 1 + index ]->IsInt32() &&
-         args[ 2 + index ]->IsInt32() &&
-         args[ 3 + index ]->IsInt32() )
-     {
-       found = true;
-       Rect<int> rect( args[ 0 + index ]->Int32Value(),
-                       args[ 1 + index ]->Int32Value(),
-                       args[ 2 + index ]->Int32Value(),
-                       args[ 3 + index ]->Int32Value() );
-       return rect;
-     }
-   }
-   // this will extract a Vector4, if it is a Vector4 or a Javascript array object
-   if( args[ index ]->IsObject() )
-   {
-     Dali::Property::Value value;
-     value = PropertyValueWrapper::ExtractPropertyValue( isolate, args[index], Dali::Property::RECTANGLE );
-     if( value.GetType() == Dali::Property::RECTANGLE)
-     {
-       found = true;
-       Rect<int> rect;
-       value.Get(rect);
-       return rect;
-     }
-
-     // @todo support vector4 as well?
-   }
-   return Rect<int>();
-}
-
-Actor GetActorParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  BaseWrappedObject* wrapper = GetWrappedDaliObjectParameter( index, BaseWrappedObject::ACTOR, isolate, args);
-  ActorWrapper* actorWrapper = static_cast< ActorWrapper*>( wrapper );
-  if( actorWrapper )
-  {
-    found = true;
-    return actorWrapper->GetActor();
-  }
-  else
-  {
-    return Actor();
-  }
-}
-
-Layer GetLayerParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  Actor actor = GetActorParameter( index, found, isolate, args );
-  return Layer::DownCast( actor );
-}
-
-Image GetImageParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  BaseWrappedObject* wrappedObject = V8Utils::GetWrappedDaliObjectParameter( index, BaseWrappedObject::IMAGE, isolate, args );
-  if( wrappedObject )
-  {
-    found = true;
-    ImageWrapper* wrapper = static_cast< ImageWrapper *>(wrappedObject);
-    return wrapper->GetImage();
-  }
-  else
-  {
-    return Image();
-  }
-
-}
-
-RenderTask GetRenderTaskParameter( unsigned int paramIndex, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  found = false;
-  BaseWrappedObject* wrappedObject = V8Utils::GetWrappedDaliObjectParameter( paramIndex, BaseWrappedObject::RENDER_TASK, isolate, args );
-  if( wrappedObject )
-  {
-    found = true;
-    RenderTaskWrapper* wrapper = static_cast< RenderTaskWrapper *>(wrappedObject);
-    return wrapper->GetRenderTask();
-  }
-  else
-  {
-    return RenderTask(); // empty handle
-  }
-}
-
-BaseWrappedObject* GetWrappedDaliObjectParameter( unsigned int index,  BaseWrappedObject::Type type,  v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate);
-  unsigned int length = args.Length();
-
-  if( index >= length )
-  {
-    return NULL;
-  }
-
-  if( !args[ index ]->IsObject() )
-  {
-    return NULL;
-  }
-
-  v8::Local<v8::Object> object = args[ index ]->ToObject();
-
-  if( BaseWrappedObject::IsWrappedType ( isolate, object, type ))
-  {
-    v8::Local<v8::External> field = v8::Local<v8::External>::Cast( object->GetInternalField(0) );
-    void* ptr = field->Value();
-    BaseWrappedObject* wrapper = static_cast< BaseWrappedObject *>(ptr);
-    return wrapper;
-  }
-  return NULL;
-}
-
-
-Property::Value GetPropertyValueParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate);
-
-  Property::Value  daliPropertyValue;// creates a property with Property::INVALID
-
-  found = false;
-  unsigned int length = args.Length();
-
-  if( index >= length )
-  {
-    return daliPropertyValue;
-  }
-  v8::Local<v8::Value > value = args[ index ];
-
-  return GetPropertyValueFromObject( found, isolate, value);
-}
-
-Property::Map GetPropertyMapParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args )
-{
-  v8::HandleScope handleScope( isolate);
-
-  Property::Map propertyMap;    // empty map
-
-  found = false;
-  unsigned int length = args.Length();
-
-  if( index >= length )
-  {
-    return propertyMap;
-  }
-
-  if( !args[ index ]->IsObject() )
-  {
-    return propertyMap;
-  }
-  found = true;
-
-  // go through each key value pair
-  v8::Local<v8::Object> obj = args[ index ]->ToObject();
-
-  return GetPropertyMapFromObject( isolate, obj );
-
-}
-
-void CreatePropertyMap( v8::Isolate* isolate, const Property::Map& map, v8::Local<v8::Object>& object )
-{
-  v8::HandleScope handleScope( isolate);
-
-  // we're converting a dali property map in to a JavaScript property map
-  if( map.Count() == 0 )
-  {
-    return;
-  }
-
-  for( unsigned int index = 0; index < map.Count(); ++index )
-  {
-    const std::string& key = map.GetKey( index );
-    Property::Value& value = map.GetValue( index );
-    v8::Local<v8::Value> v8Value;
-
-    switch( value.GetType() )
-    {
-      case Dali::Property::FLOAT:
-      {
-        v8Value = v8::Number::New( isolate, value.Get<float>()  );
-        break;
-      }
-      case Dali::Property::BOOLEAN:
-      {
-        v8Value = v8::Boolean::New(  isolate, value.Get<bool>());
-        break;
-      }
-      case Dali::Property::INTEGER:
-      {
-        v8Value = v8::Integer::New( isolate, value.Get<int>());
-        break;
-      }
-      case Dali::Property::STRING:
-      {
-        std::string string = value.Get< std::string >();
-        v8Value = v8::String::NewFromUtf8( isolate,  string.c_str());
-        break;
-      }
-      case Dali::Property::VECTOR2:
-      {
-        // create a vector2
-        Vector2 vec = value.Get<Vector2>();
-        v8::Local<v8::Array> array= v8::Array::New( isolate, 2 );
-        array->Set( 0 , v8::Number::New(isolate, vec.x));
-        array->Set( 1 , v8::Number::New(isolate, vec.y));
-        v8Value = array;
-        break;
-      }
-      case Dali::Property::VECTOR3:
-      {
-        // create a vector 3
-        Vector3 vec = value.Get<Vector3>();
-        v8::Local<v8::Array> array= v8::Array::New( isolate, 3 );
-        array->Set( 0 , v8::Number::New(isolate, vec.x));
-        array->Set( 1 , v8::Number::New(isolate, vec.y));
-        array->Set( 2 , v8::Number::New(isolate, vec.z));
-        v8Value = array;
-        break;
-      }
-      case Dali::Property::VECTOR4:
-      {
-        // create a vector 4
-        Vector4 vec = value.Get<Vector4>();
-        v8::Local<v8::Array> array= v8::Array::New( isolate, 4 );
-        array->Set( 0 , v8::Number::New(isolate, vec.x));
-        array->Set( 1 , v8::Number::New(isolate, vec.y));
-        array->Set( 2 , v8::Number::New(isolate, vec.z));
-        array->Set( 3 , v8::Number::New(isolate, vec.w));
-        v8Value = array;
-        break;
-      }
-
-      default:
-      {
-        DALI_SCRIPT_EXCEPTION( isolate, "Primitive mismatch \n");
-        return;
-      }
-    }
-    object->Set( v8::String::NewFromUtf8( isolate, key.c_str() ), v8Value );
-  }
-}
-
-void ReadFloatArguments( bool& foundAllArguments, float* data, unsigned int dataSize, const v8::FunctionCallbackInfo< v8::Value >& args, float defaultValue )
-{
-  foundAllArguments = true;
-  unsigned int length = args.Length();
-
-  if( length < dataSize )
-  {
-    foundAllArguments = false;
-  }
-
-  for( unsigned int i = 0; i< dataSize ;i++ )
-  {
-    if( i < length )
-    {
-      if( args[ i ]->IsNumber()  )
-      {
-        data[i] = args[i]->NumberValue();
-      }
-      else
-      {
-        data[i] = defaultValue;
-        foundAllArguments = false;   // bad argument
-      }
-    }
-    else
-    {
-      data[i] = defaultValue; // not enough arguments
-    }
-  }
-
-}
-
-void ReadIntegerArguments( bool& foundAllArguments, int* data, int dataSize, const v8::FunctionCallbackInfo< v8::Value >& args, int defaultValue )
-{
-  foundAllArguments = true;
-  int length = args.Length();
-  if( length < dataSize )
-  {
-    foundAllArguments = false;
-  }
-
-  for( int i = 0; i< dataSize ;i++ )
-  {
-    if( i < length )
-    {
-      if( args[ i ]->IsInt32()  )
-      {
-        data[i] = args[i]->Int32Value();
-      }
-      else
-      {
-        data[i] = defaultValue;
-        foundAllArguments = false;   // bad argument
-      }
-    }
-    else
-    {
-      data[i] = defaultValue; // not enough arguments
-    }
-  }
-
-}
-} // namespace V8Utils
-
-} // namespace V8Plugin
-
-} // namespace Dali
diff --git a/plugins/dali-script-v8/src/utils/v8-utils.h b/plugins/dali-script-v8/src/utils/v8-utils.h
deleted file mode 100644 (file)
index 177360f..0000000
+++ /dev/null
@@ -1,387 +0,0 @@
-#ifndef DALI_V8PLUGIN_V8_UTILS_H
-#define DALI_V8PLUGIN_V8_UTILS_H
-
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// EXTERNAL INCLUDES
-#include <string>
-#include <v8.h>
-#include <dali/public-api/math/vector2.h>
-#include <dali/public-api/math/vector3.h>
-#include <dali/public-api/math/vector4.h>
-#include <dali/public-api/math/rect.h>
-#include <dali/public-api/actors/actor.h>
-#include <dali/public-api/actors/layer.h>
-#include <dali/public-api/render-tasks/render-task.h>
-#include <dali/public-api/object/property-value.h>
-#include <dali/public-api/object/property-map.h>
-
-// INTERNAL INCLUDES
-#include <shared/base-wrapped-object.h>
-
-namespace Dali
-{
-
-namespace V8Plugin
-{
-
-enum
-{
-  PARAMETER_0 = 0,   ///< first parameter of a function call
-  PARAMETER_1 = 1,   ///< second parameter of a function call
-  PARAMETER_2 = 2,   ///< third parameter of a function call
-  PARAMETER_3 = 3,   ///< forth parameter of a function call
-  PARAMETER_4 = 4,   ///< fifth parameter of a function call
-};
-
-#define DALI_SCRIPT_EXCEPTION( isolate, message ) V8Utils::ScriptError( __FUNCTION__ , isolate, message );
-#define DALI_SCRIPT_WARNING( message ) V8Utils::ScriptWarning( __FUNCTION__ , message );
-
-namespace V8Utils
-{
-/**
- * Print the list of arguments to std out
- * @param[in] args v8 function args interpreted as (string, string,...)
- */
-void Log(const v8::FunctionCallbackInfo< v8::Value >& args) ;
-
-/**
- * Print out using DALI_LOG_ERROR
- * @param[in] args v8 function args interpreted as (string, string,...)
- */
-void LogError(const v8::FunctionCallbackInfo< v8::Value >& args) ;
-
-/**
- * Read a files contents
- *
- * @param[in] filename The filename
- * @param[out] contents string contents of the file
- */
-void GetFileContents( const std::string &filename, std::string& contents );
-
-/**
- * Extract the directory path from a full path filename
- * @param fileName file name
- * @param directory directory name
- */
-void GetFileDirectory( const std::string& fileName, std::string& directory );
-
-/**
- * Extract file name from a full path + file name
- * @param[in] fullPathName full path + file name
- * @param[out] fileName file name
- */
-void GetFileName( const std::string& fullPathName, std::string& fileName);
-
-/**
- * Return the module name, e.g. if the module is
- * my_module.js it will get 'my_module'
- * @param[in] fileName full path module name
- * @param[out] moduleName module name
- */
-void GetModuleName( const std::string& fileName, std::string& moduleName );
-
-/**
- * Compare whether two DALi property maps are identical
- * @param[in] map1 The first property map to be compared
- * @param[in] map2 The second property map to be compared
- * @return true if the two specified property maps are identical or false if not.
- */
-bool IsPropertyMapIdentical(Property::Map map1, Property::Map map2);
-
-/**
- * Report an exception by writing as a warning to the Dali Log
- *
- * @param[in] try_catch The v8 TryCatch exception object
- */
-void ReportException(  v8::Isolate* isolate, v8::TryCatch* try_catch) ;
-
-/**
- * Depending on what coding standard used this can
- * convert the first character to lower case,
- * E.g.  GetId becomes getId
- */
-std::string GetJavaScriptFunctionName(  const char* functionName );
-
- /**
-  * Get V8 Version
-  *
-  * @param[in] args v8 function args ignored
-  * @return a version string
-  */
- void Version(const v8::FunctionCallbackInfo< v8::Value >& args) ;
-
-/**
- * Convert v8 string as a std::string
- * @param[in] value v8 function args interpreted as (v8_string)
- * @return std string
- */
- std::string v8StringToStdString( const v8::Handle<v8::Value>& value) ;
-
-/**
- * Convert hyphenated to camelCase (Dali property to wrapper property name)
- *
- * @param[in] hyphenatedName a hyphenated std::string to convert
- * @return a camelCase'd std::string
- */
- std::string PropertyNameToJavaScriptName(const std::string& hyphenatedName);
-
-/**
- * Script error, throws an exception
- */
-void ScriptError( const char* function, v8::Isolate* isolate, std::string errorString );
-
-/**
- * Script warning
- */
-void ScriptWarning( const char* function, std::string warningString );
-
-/**
- * @return in the value is a boolean primitive or a boolean object
- */
-bool IsBooleanPrimitiveOrObject( const v8::Local<v8::Value>& value );
-
-/**
- * @return the value of boolean primitive or boolean object value
- */
-bool GetBooleanValue( v8::Isolate* isolate, const v8::Local<v8::Value>& value );
-
-/**
- * @return true if the value is a number or a number object
- */
-bool IsNumberPrimitiveOrObject( const v8::Local<v8::Value>& value );
-
-/**
- * @return the number of a number primitive or number object value
- */
-float GetNumberValue( v8::Isolate* isolate, const v8::Local<v8::Value>& value );
-
-/**
- * @return if the value is a string primitve or a string object
- */
-bool IsStringPrimitiveOrObject( const v8::Local<v8::Value>& value );
-
-/**
- * @return true if the value is a string or a string object
- */
-bool IsStringPrimitiveOrObject( const v8::Local<v8::Value>& value );
-
-/**
- * @return the string from a string value or a string object
- */
-std::string GetStringValue( v8::Isolate* isolate, const v8::Local<v8::Value>& value );
-
-/******************************************
- *  Helper functions for extracting a DALi object from a JavaScript object
- *******************************************/
-
-/**
- * Given a JavaScript object, either extract the embedded DALi property value or
- * convert it to a property value
- * @param[out] found whether the property was found
- * @return property value
- */
-Property::Value GetPropertyValueFromObject( bool& found, v8::Isolate* isolate, const v8::Local<v8::Value >& value );
-
-/**
- * Given a JavaScript object with
- * @param [in] object JavaScrript object
- * @return DALi ProperyMap from the JavaScript object
- */
-Property::Map GetPropertyMapFromObject( v8::Isolate* isolate, const v8::Local<v8::Object>& object);
-
-/**
- * Extract a DALi wrapped object, from a JavaScript object held in a function argument
- * @param[in] index argument index the object is held in
- * @param[in] type type of wrapped object to extract
- */
-
-Actor GetActorFromObject( v8::Isolate* isolate, bool& found, v8::Local<v8::Object>& object);
-
-
-/******************************************
- *  Helper functions to extract a C++ native type (int,float,string) or a DALi object
- *  ( handle, vector, actor, layer, property value, property map ) from a
- *  JavaScript function argument.
- *  E.g.
- *  // JavaScript code
- *     myJavaScriptFunction( 23, 345, myActor );
- *
- *  // C++ code
- * bool found;
- *
- * Actor myActor = v8Utils::GetActorParameter( PARAMETER_2, found, JavaScript Args );
- ******************************************/
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return integer value from the JavaScript function arguments
- */
-int GetIntegerParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args, int defaultValue  );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return float value from the JavaScript function arguments
- */
-float GetFloatParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args, float defaultValue  );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return string value from the JavaScript function arguments
- */
-std::string GetStringParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return boolean value from the JavaScript function arguments
- */
-bool GetBooleanParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return ArrayBufferView from the JavaScript function arguments
- */
-void* GetArrayBufferViewParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args  );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return DALi Handle value from the JavaScript function arguments
- */
-Handle GetHandleParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args  );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return Vector2 from the JavaScript function arguments
- */
-Vector2 GetVector2Parameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return Vector3 from the JavaScript function arguments
- */
-Vector3 GetVector3Parameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args);
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return Vector4 from the JavaScript function arguments
- */
-Vector4 GetVector4Parameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args);
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return Rect<int> from the JavaScript function arguments
- */
-Rect<int> GetRectIntParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return Actor from the JavaScript function arguments
- */
-Actor GetActorParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return Layer from the JavaScript function arguments
- */
-Layer GetLayerParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return Image from the JavaScript function arguments
- */
-Image GetImageParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return RenderTask from the JavaScript function arguments
- */
-RenderTask GetRenderTaskParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-/**
- * Extract a DALi wrapped object, from a JavaScript object held in a function argument
- * @param[in] index argument index the object is held in
- * @param[in] type type of wrapped object to extract
- */
-BaseWrappedObject* GetWrappedDaliObjectParameter( unsigned int index, BaseWrappedObject::Type type, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return ProperyValue from the  JavaScript function arguments
- */
-Property::Value GetPropertyValueParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-/**
- * @param [in] index parameter index, e.g. callMyFunc( index0, index1, index2).
- * @param[out] found whether the parameter was found
- * @return ProperyMap from the  JavaScript function arguments
- */
-Property::Map GetPropertyMapParameter( unsigned int index, bool& found, v8::Isolate* isolate, const v8::FunctionCallbackInfo< v8::Value >& args );
-
-/**
- * Generate a JavaScript property map, from a DALi property map
- * @param [in] DALi map property map
- * @param [in] JavaScript property map
- */
-void CreatePropertyMap( v8::Isolate* isolate, const Property::Map& map, v8::Local<v8::Object>& object );
-
-
-/**
- * Read multiple float arguments from v8 args object
- * e.g. myJavaFunc( 3.4, 7.6, 8.5 );
- *
- * @param[out] foundAllArguments flag to say all arguments are found
- * @param[out] data pointer to a pre-allocated array of floats
- * @param[in] dataSize the nunber of floats in the data parameter
- * @param[in] defaultValue default value assigned to floats that don't exist in the arguments
- */
-void ReadFloatArguments( bool& foundAllArguments, float* data, unsigned int dataSize, const v8::FunctionCallbackInfo< v8::Value >& args, float defaultValue );
-
-/**
- * Read multiple integer arguments from v8 args object
- * e.g. myJavaFunc( 3, 7, 8 );
- *
- * @param[out] foundAllArguments flag to say all arguments are found
- * @param[out] data pointer to a pre-allocated array of integers
- * @param[in] dataSize the nunber of integers in the data parameter
- * @param[in] defaultValue default value assigned to integers that don't exist in the arguments
- */
-void ReadIntegerArguments( bool& foundAllArguments, int* data, int dataSize, const v8::FunctionCallbackInfo< v8::Value >& args, int defaultValue );
-
-} // namespace V8Utils
-
-} // namespace V8Plugin
-
-} // namespace Dali
-
-
-#endif // DALI_V8PLUGIN_V8_UTILS_H
-