sdb install org.tizen.coretbtwidgetapp-1.0.0-arm.tpk
sdb install org.tizen.tbt-ime-1.0.0-arm.tpk
sdb install org.tizen.operationpickviewapp-1.0.0-arm.tpk
+sdb install org.tizen.tbtcoreapp-dali-1.0.0-arm.tpk
sdb install org.tizen.tbtcoreapp-1.0.0-arm.tpk
sdb push dog_1024_960.gif /opt/home/owner/content/Images
sdb install org.tizen.coretbtwidgetapp-1.0.0-i386.tpk
sdb install org.tizen.tbt-ime-1.0.0-i386.tpk
sdb install org.tizen.operationpickviewapp-1.0.0-i386.tpk
+sdb install org.tizen.tbtcoreapp-dali-1.0.0-i386.tpk
sdb install org.tizen.tbtcoreapp-1.0.0-i386.tpk
sdb push dog_1024_960.gif /opt/home/owner/content/Images
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
+ <storageModule moduleId="org.eclipse.cdt.core.settings">
+ <cconfiguration id="org.tizen.nativecore.config.sbi.gcc45.app.debug.466175231">
+ <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="org.tizen.nativecore.config.sbi.gcc45.app.debug.466175231" moduleId="org.eclipse.cdt.core.settings" name="Debug">
+ <externalSettings/>
+ <extensions>
+ <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+ <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.tizen.nativecore.NativeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.MakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ </extensions>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <configuration artifactName="tbtcoreapp-dali" buildArtefactType="org.tizen.nativecore.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.tizen.nativecore.buildArtefactType.app" description="" errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;" id="org.tizen.nativecore.config.sbi.gcc45.app.debug.466175231" name="Debug" parent="org.tizen.nativecore.config.sbi.gcc45.app.debug">
+ <folderInfo id="org.tizen.nativecore.config.sbi.gcc45.app.debug.466175231." name="/" resourcePath="">
+ <toolChain id="org.tizen.nativecore.toolchain.sbi.gcc45.app.debug.1705847341" name="Tizen Native Toolchain" superClass="org.tizen.nativecore.toolchain.sbi.gcc45.app.debug">
+ <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="org.tizen.nativeide.target.sbi.gnu.platform.base.1056239826" osList="linux,win32" superClass="org.tizen.nativeide.target.sbi.gnu.platform.base"/>
+ <builder autoBuildTarget="all" buildPath="${workspace_loc:/tbtcoreapp-dali}/Debug" enableAutoBuild="true" id="org.tizen.nativecore.target.sbi.gnu.builder.1782503442" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Tizen Application Builder" superClass="org.tizen.nativecore.target.sbi.gnu.builder"/>
+ <tool id="org.tizen.nativecore.tool.sbi.gnu.archiver.1986189972" name="Archiver" superClass="org.tizen.nativecore.tool.sbi.gnu.archiver"/>
+ <tool command="clang++" id="org.tizen.nativecore.tool.sbi.gnu.cpp.compiler.1961059589" name="C++ Compiler" superClass="org.tizen.nativecore.tool.sbi.gnu.cpp.compiler">
+ <option id="gnu.cpp.compiler.option.optimization.level.967852503" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
+ <option defaultValue="gnu.cpp.compiler.debugging.level.max" id="sbi.gnu.cpp.compiler.option.debugging.level.core.1762926746" name="Debug level" superClass="sbi.gnu.cpp.compiler.option.debugging.level.core" valueType="enumerated"/>
+ <option defaultValue="false" id="sbi.gnu.cpp.compiler.option.misc.pic.core.1168575346" name="-fPIC option" superClass="sbi.gnu.cpp.compiler.option.misc.pic.core" valueType="boolean"/>
+ <option id="sbi.gnu.cpp.compiler.option.1119225031" name="Tizen-Target" superClass="sbi.gnu.cpp.compiler.option" valueType="userObjs">
+ <listOptionValue builtIn="false" value="mobile-3.0-device.core_llvm36.armel.core.app"/>
+ </option>
+ <option id="sbi.gnu.cpp.compiler.option.frameworks_inc.core.371309271" name="Tizen-Frameworks-Include-Path" superClass="sbi.gnu.cpp.compiler.option.frameworks_inc.core" valueType="includePath">
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/libxml2""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/appcore-agent""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/appfw""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/attach-panel""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/badge""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/base""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/cairo""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/calendar-service2""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/chromium-ewk""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ckm""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/contacts-svc""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/content""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/context-service""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/csr""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dali""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dali-toolkit""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dbus-1.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/device""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dlog""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-buffer-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-con-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-file-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-imf-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-imf-evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-input-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-input-evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-ipc-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ector-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/e_dbus-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/edje-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eet-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/efl-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/efl-extension""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/efreet-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eina-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eina-1/eina""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eio-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eldbus-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/elementary-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/embryo-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/emile-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eo-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eom""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ethumb-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ethumb-client-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/feedback""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/fontconfig""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/freetype2""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/geofence""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/gio-unix-2.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/glib-2.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/harfbuzz""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/iotcon""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/json-glib-1.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/location""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/maps""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/media""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/media-content""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/messaging""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/metadata-editor""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/minicontrol""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/minizip""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/network""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/notification""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/nsd/""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/phonenumber-utils""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/sensor""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/service-adaptor""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/shortcut""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/storage""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/system""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/telephony""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ui""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/web""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/widget_service""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/widget_viewer_evas""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/wifi-direct""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/lib/dbus-1.0/include""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/lib/glib-2.0/include""/>
+ </option>
+ <option id="sbi.gnu.cpp.compiler.option.frameworks_cflags.core.1086009861" name="Tizen-Frameworks-Other-Cflags" superClass="sbi.gnu.cpp.compiler.option.frameworks_cflags.core" valueType="stringList">
+ <listOptionValue builtIn="false" value="${TC_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value="${RS_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value=" -fPIE"/>
+ <listOptionValue builtIn="false" value="--sysroot="${SBI_SYSROOT}""/>
+ <listOptionValue builtIn="false" value="-mthumb"/>
+ </option>
+ <option id="gnu.cpp.compiler.option.include.paths.440162371" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
+ <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/inc}""/>
+ </option>
+ <option id="sbi.gnu.cpp.compiler.option.frameworks.core.35502381" name="Tizen-Frameworks" superClass="sbi.gnu.cpp.compiler.option.frameworks.core" valueType="userObjs">
+ <listOptionValue builtIn="false" value="Native_API"/>
+ </option>
+ <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1507899516" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
+ </tool>
+ <tool command="clang" id="org.tizen.nativecore.tool.sbi.gnu.c.compiler.217700942" name="C Compiler" superClass="org.tizen.nativecore.tool.sbi.gnu.c.compiler">
+ <option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.option.optimization.level.1295795106" name="Optimization Level" superClass="gnu.c.compiler.option.optimization.level" valueType="enumerated"/>
+ <option defaultValue="gnu.c.debugging.level.max" id="sbi.gnu.c.compiler.option.debugging.level.core.1355347812" name="Debug level" superClass="sbi.gnu.c.compiler.option.debugging.level.core" valueType="enumerated"/>
+ <option defaultValue="false" id="sbi.gnu.c.compiler.option.misc.pic.core.2031004492" name="-fPIC option" superClass="sbi.gnu.c.compiler.option.misc.pic.core" valueType="boolean"/>
+ <option id="sbi.gnu.c.compiler.option.128526133" name="Tizen-Target" superClass="sbi.gnu.c.compiler.option" valueType="userObjs">
+ <listOptionValue builtIn="false" value="mobile-3.0-device.core_llvm36.armel.core.app"/>
+ </option>
+ <option id="sbi.gnu.c.compiler.option.frameworks_inc.core.451609871" name="Tizen-Frameworks-Include-Path" superClass="sbi.gnu.c.compiler.option.frameworks_inc.core" valueType="includePath">
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/libxml2""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/appcore-agent""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/appfw""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/attach-panel""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/badge""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/base""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/cairo""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/calendar-service2""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/chromium-ewk""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ckm""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/contacts-svc""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/content""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/context-service""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/csr""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dali""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dali-toolkit""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dbus-1.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/device""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dlog""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-buffer-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-con-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-file-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-imf-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-imf-evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-input-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-input-evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-ipc-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ector-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/e_dbus-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/edje-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eet-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/efl-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/efl-extension""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/efreet-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eina-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eina-1/eina""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eio-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eldbus-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/elementary-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/embryo-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/emile-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eo-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eom""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ethumb-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ethumb-client-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/feedback""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/fontconfig""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/freetype2""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/geofence""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/gio-unix-2.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/glib-2.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/harfbuzz""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/iotcon""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/json-glib-1.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/location""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/maps""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/media""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/media-content""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/messaging""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/metadata-editor""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/minicontrol""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/minizip""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/network""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/notification""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/nsd/""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/phonenumber-utils""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/sensor""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/service-adaptor""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/shortcut""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/storage""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/system""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/telephony""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ui""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/web""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/widget_service""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/widget_viewer_evas""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/wifi-direct""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/lib/dbus-1.0/include""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/lib/glib-2.0/include""/>
+ </option>
+ <option id="sbi.gnu.c.compiler.option.frameworks_cflags.core.1171879598" name="Tizen-Frameworks-Other-Cflags" superClass="sbi.gnu.c.compiler.option.frameworks_cflags.core" valueType="stringList">
+ <listOptionValue builtIn="false" value="${TC_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value="${RS_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value=" -fPIE"/>
+ <listOptionValue builtIn="false" value="--sysroot="${SBI_SYSROOT}""/>
+ <listOptionValue builtIn="false" value="-mthumb"/>
+ </option>
+ <option id="gnu.c.compiler.option.include.paths.1251343410" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
+ <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/inc}""/>
+ </option>
+ <option id="sbi.gnu.c.compiler.option.frameworks.core.1288483037" name="Tizen-Frameworks" superClass="sbi.gnu.c.compiler.option.frameworks.core" valueType="userObjs">
+ <listOptionValue builtIn="false" value="Native_API"/>
+ </option>
+ <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1549053199" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
+ </tool>
+ <tool id="org.tizen.nativeide.tool.sbi.gnu.c.linker.base.1007840857" name="C Linker" superClass="org.tizen.nativeide.tool.sbi.gnu.c.linker.base"/>
+ <tool command="clang++" id="org.tizen.nativecore.tool.sbi.gnu.cpp.linker.1808263787" name="C++ Linker" superClass="org.tizen.nativecore.tool.sbi.gnu.cpp.linker">
+ <option defaultValue="false" id="sbi.gnu.cpp.linker.option.shared_flag.core.650900358" name="Linker.Shared" superClass="sbi.gnu.cpp.linker.option.shared_flag.core" valueType="boolean"/>
+ <option defaultValue="false" id="sbi.gnu.cpp.linker.option.noundefined.core.542612995" name="Report unresolved symbol references (-Wl,--no-undefined)" superClass="sbi.gnu.cpp.linker.option.noundefined.core" valueType="boolean"/>
+ <option id="sbi.gnu.cpp.linker.option.frameworks_lflags.core.2119809462" name="Tizen-Frameworks-Other-Lflags" superClass="sbi.gnu.cpp.linker.option.frameworks_lflags.core" valueType="stringList">
+ <listOptionValue builtIn="false" value="${TC_LINKER_MISC}"/>
+ <listOptionValue builtIn="false" value="${RS_LINKER_MISC}"/>
+ <listOptionValue builtIn="false" value="-pie -lpthread "/>
+ <listOptionValue builtIn="false" value="-Xlinker -rpath="/home/developer/sdk_tools/lib""/>
+ <listOptionValue builtIn="false" value="--sysroot="${SBI_SYSROOT}""/>
+ <listOptionValue builtIn="false" value="-Xlinker --version-script="${PROJ_PATH}/.exportMap""/>
+ <listOptionValue builtIn="false" value="-L"${SBI_SYSROOT}/usr/lib""/>
+ <listOptionValue builtIn="false" value="$(RS_LIBRARIES)"/>
+ </option>
+ <option id="gnu.cpp.link.option.paths.443360940" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
+ <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/lib}""/>
+ </option>
+ <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.558789031" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
+ <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
+ <additionalInput kind="additionalinput" paths="$(LIBS)"/>
+ </inputType>
+ </tool>
+ <tool command="arm-linux-gnueabi-as" id="org.tizen.nativeapp.tool.sbi.gnu.assembler.base.139055902" name="Assembler" superClass="org.tizen.nativeapp.tool.sbi.gnu.assembler.base">
+ <inputType id="cdt.managedbuild.tool.gnu.assembler.input.1630924688" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
+ </tool>
+ <tool id="org.tizen.nativecore.tool.fnmapgen.1840766683" name="C FN-Map Generator" superClass="org.tizen.nativecore.tool.fnmapgen"/>
+ <tool id="org.tizen.nativecore.tool.fnmapgen.cpp.836472195" name="C++ FN-Map Generator" superClass="org.tizen.nativecore.tool.fnmapgen.cpp"/>
+ <tool id="org.tizen.nativecore.tool.ast.333057573" name="C Static Analyzer" superClass="org.tizen.nativecore.tool.ast"/>
+ <tool id="org.tizen.nativecore.tool.ast.cpp.480886812" name="C++ Static Analyzer" superClass="org.tizen.nativecore.tool.ast.cpp"/>
+ <tool id="org.tizen.nativecore.tool.sbi.gnu.archiver.mergelib.1023996110" name="Archive Generator" superClass="org.tizen.nativecore.tool.sbi.gnu.archiver.mergelib"/>
+ <tool id="org.tizen.nativecore.tool.sbi.po.compiler.2121766448" name="PO Resource Compiler" superClass="org.tizen.nativecore.tool.sbi.po.compiler"/>
+ <tool id="org.tizen.nativecore.tool.sbi.edc.compiler.415255637" name="EDC Resource Compiler" superClass="org.tizen.nativecore.tool.sbi.edc.compiler"/>
+ </toolChain>
+ </folderInfo>
+ <sourceEntries>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="inc"/>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="res"/>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="shared"/>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/>
+ </sourceEntries>
+ </configuration>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+ </cconfiguration>
+ <cconfiguration id="org.tizen.nativecore.config.sbi.gcc45.app.release.738115821">
+ <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="org.tizen.nativecore.config.sbi.gcc45.app.release.738115821" moduleId="org.eclipse.cdt.core.settings" name="Release">
+ <externalSettings/>
+ <extensions>
+ <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+ <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.tizen.nativecore.NativeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.MakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ </extensions>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <configuration artifactName="org.tizen.tbtcoreapp-dali" buildArtefactType="org.tizen.nativecore.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.tizen.nativecore.buildArtefactType.app" description="" errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;" id="org.tizen.nativecore.config.sbi.gcc45.app.release.738115821" name="Release" parent="org.tizen.nativecore.config.sbi.gcc45.app.release">
+ <folderInfo id="org.tizen.nativecore.config.sbi.gcc45.app.release.738115821." name="/" resourcePath="">
+ <toolChain id="org.tizen.nativecore.toolchain.sbi.gcc45.app.release.1902710295" name="Tizen Native Toolchain" superClass="org.tizen.nativecore.toolchain.sbi.gcc45.app.release">
+ <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="org.tizen.nativeide.target.sbi.gnu.platform.base.634076986" osList="linux,win32" superClass="org.tizen.nativeide.target.sbi.gnu.platform.base"/>
+ <builder buildPath="${workspace_loc:/tbtcoreapp-dali}/Release" id="org.tizen.nativecore.target.sbi.gnu.builder.178180924" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Tizen Application Builder" superClass="org.tizen.nativecore.target.sbi.gnu.builder"/>
+ <tool id="org.tizen.nativecore.tool.sbi.gnu.archiver.823957443" name="Archiver" superClass="org.tizen.nativecore.tool.sbi.gnu.archiver"/>
+ <tool command="clang++" id="org.tizen.nativecore.tool.sbi.gnu.cpp.compiler.1573009239" name="C++ Compiler" superClass="org.tizen.nativecore.tool.sbi.gnu.cpp.compiler">
+ <option id="gnu.cpp.compiler.option.optimization.level.1130564057" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
+ <option defaultValue="gnu.cpp.compiler.debugging.level.default" id="sbi.gnu.cpp.compiler.option.debugging.level.core.1935109407" name="Debug level" superClass="sbi.gnu.cpp.compiler.option.debugging.level.core" valueType="enumerated"/>
+ <option defaultValue="false" id="sbi.gnu.cpp.compiler.option.misc.pic.core.499937330" name="-fPIC option" superClass="sbi.gnu.cpp.compiler.option.misc.pic.core" valueType="boolean"/>
+ <option id="sbi.gnu.cpp.compiler.option.1798476160" name="Tizen-Target" superClass="sbi.gnu.cpp.compiler.option" valueType="userObjs">
+ <listOptionValue builtIn="false" value="mobile-3.0-emulator.core_llvm36.i386.core.app"/>
+ </option>
+ <option id="sbi.gnu.cpp.compiler.option.frameworks_inc.core.1966404811" name="Tizen-Frameworks-Include-Path" superClass="sbi.gnu.cpp.compiler.option.frameworks_inc.core" valueType="includePath">
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/libxml2""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/appcore-agent""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/appfw""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/attach-panel""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/badge""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/base""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/cairo""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/calendar-service2""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/chromium-ewk""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ckm""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/contacts-svc""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/content""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/context-service""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/csr""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dali""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dali-toolkit""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dbus-1.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/device""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dlog""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-buffer-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-con-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-file-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-imf-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-imf-evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-input-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-input-evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-ipc-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ector-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/e_dbus-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/edje-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eet-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/efl-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/efl-extension""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/efreet-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eina-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eina-1/eina""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eio-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eldbus-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/elementary-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/embryo-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/emile-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eo-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eom""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ethumb-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ethumb-client-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/feedback""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/fontconfig""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/freetype2""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/geofence""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/gio-unix-2.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/glib-2.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/harfbuzz""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/iotcon""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/json-glib-1.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/location""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/maps""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/media""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/media-content""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/messaging""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/metadata-editor""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/minicontrol""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/minizip""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/network""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/notification""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/nsd/""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/phonenumber-utils""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/sensor""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/service-adaptor""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/shortcut""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/storage""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/system""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/telephony""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ui""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/web""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/widget_service""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/widget_viewer_evas""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/wifi-direct""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/lib/dbus-1.0/include""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/lib/glib-2.0/include""/>
+ </option>
+ <option id="sbi.gnu.cpp.compiler.option.frameworks_cflags.core.70344965" name="Tizen-Frameworks-Other-Cflags" superClass="sbi.gnu.cpp.compiler.option.frameworks_cflags.core" valueType="stringList">
+ <listOptionValue builtIn="false" value="${TC_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value="${RS_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value=" -fPIE"/>
+ <listOptionValue builtIn="false" value="--sysroot="${SBI_SYSROOT}""/>
+ </option>
+ <option id="gnu.cpp.compiler.option.include.paths.1196792875" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
+ <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/inc}""/>
+ </option>
+ <option id="sbi.gnu.cpp.compiler.option.frameworks.core.769745462" name="Tizen-Frameworks" superClass="sbi.gnu.cpp.compiler.option.frameworks.core" valueType="userObjs">
+ <listOptionValue builtIn="false" value="Native_API"/>
+ </option>
+ <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1819035212" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
+ </tool>
+ <tool command="clang" id="org.tizen.nativecore.tool.sbi.gnu.c.compiler.480289151" name="C Compiler" superClass="org.tizen.nativecore.tool.sbi.gnu.c.compiler">
+ <option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.option.optimization.level.1058494799" name="Optimization Level" superClass="gnu.c.compiler.option.optimization.level" valueType="enumerated"/>
+ <option defaultValue="gnu.c.debugging.level.default" id="sbi.gnu.c.compiler.option.debugging.level.core.1007334482" name="Debug level" superClass="sbi.gnu.c.compiler.option.debugging.level.core" valueType="enumerated"/>
+ <option defaultValue="false" id="sbi.gnu.c.compiler.option.misc.pic.core.810356393" name="-fPIC option" superClass="sbi.gnu.c.compiler.option.misc.pic.core" valueType="boolean"/>
+ <option id="sbi.gnu.c.compiler.option.2086732229" name="Tizen-Target" superClass="sbi.gnu.c.compiler.option" valueType="userObjs">
+ <listOptionValue builtIn="false" value="mobile-3.0-emulator.core_llvm36.i386.core.app"/>
+ </option>
+ <option id="sbi.gnu.c.compiler.option.frameworks_inc.core.627649823" name="Tizen-Frameworks-Include-Path" superClass="sbi.gnu.c.compiler.option.frameworks_inc.core" valueType="includePath">
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/libxml2""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/appcore-agent""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/appfw""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/attach-panel""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/badge""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/base""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/cairo""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/calendar-service2""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/chromium-ewk""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ckm""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/contacts-svc""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/content""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/context-service""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/csr""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dali""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dali-toolkit""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dbus-1.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/device""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/dlog""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-buffer-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-con-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-file-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-imf-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-imf-evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-input-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-input-evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ecore-ipc-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ector-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/e_dbus-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/edje-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eet-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/efl-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/efl-extension""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/efreet-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eina-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eina-1/eina""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eio-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eldbus-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/elementary-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/embryo-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/emile-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eo-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/eom""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ethumb-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ethumb-client-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/evas-1""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/feedback""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/fontconfig""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/freetype2""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/geofence""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/gio-unix-2.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/glib-2.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/harfbuzz""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/iotcon""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/json-glib-1.0""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/location""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/maps""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/media""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/media-content""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/messaging""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/metadata-editor""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/minicontrol""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/minizip""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/network""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/notification""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/nsd/""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/phonenumber-utils""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/sensor""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/service-adaptor""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/shortcut""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/storage""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/system""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/telephony""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/ui""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/web""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/widget_service""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/widget_viewer_evas""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/include/wifi-direct""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/lib/dbus-1.0/include""/>
+ <listOptionValue builtIn="false" value=""${SBI_SYSROOT}/usr/lib/glib-2.0/include""/>
+ </option>
+ <option id="sbi.gnu.c.compiler.option.frameworks_cflags.core.272693735" name="Tizen-Frameworks-Other-Cflags" superClass="sbi.gnu.c.compiler.option.frameworks_cflags.core" valueType="stringList">
+ <listOptionValue builtIn="false" value="${TC_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value="${RS_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value=" -fPIE"/>
+ <listOptionValue builtIn="false" value="--sysroot="${SBI_SYSROOT}""/>
+ </option>
+ <option id="gnu.c.compiler.option.include.paths.1975734298" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
+ <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/inc}""/>
+ </option>
+ <option id="sbi.gnu.c.compiler.option.frameworks.core.1288244684" name="Tizen-Frameworks" superClass="sbi.gnu.c.compiler.option.frameworks.core" valueType="userObjs">
+ <listOptionValue builtIn="false" value="Native_API"/>
+ </option>
+ <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1770808142" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
+ </tool>
+ <tool id="org.tizen.nativeide.tool.sbi.gnu.c.linker.base.802885151" name="C Linker" superClass="org.tizen.nativeide.tool.sbi.gnu.c.linker.base"/>
+ <tool command="clang++" id="org.tizen.nativecore.tool.sbi.gnu.cpp.linker.2126480004" name="C++ Linker" superClass="org.tizen.nativecore.tool.sbi.gnu.cpp.linker">
+ <option defaultValue="false" id="sbi.gnu.cpp.linker.option.shared_flag.core.2136861584" name="Linker.Shared" superClass="sbi.gnu.cpp.linker.option.shared_flag.core" valueType="boolean"/>
+ <option defaultValue="false" id="sbi.gnu.cpp.linker.option.noundefined.core.1812800252" name="Report unresolved symbol references (-Wl,--no-undefined)" superClass="sbi.gnu.cpp.linker.option.noundefined.core" valueType="boolean"/>
+ <option id="sbi.gnu.cpp.linker.option.frameworks_lflags.core.1430362804" name="Tizen-Frameworks-Other-Lflags" superClass="sbi.gnu.cpp.linker.option.frameworks_lflags.core" valueType="stringList">
+ <listOptionValue builtIn="false" value="${TC_LINKER_MISC}"/>
+ <listOptionValue builtIn="false" value="${RS_LINKER_MISC}"/>
+ <listOptionValue builtIn="false" value="-pie -lpthread "/>
+ <listOptionValue builtIn="false" value="-Xlinker -rpath="/home/developer/sdk_tools/lib""/>
+ <listOptionValue builtIn="false" value="--sysroot="${SBI_SYSROOT}""/>
+ <listOptionValue builtIn="false" value="-Xlinker --version-script="${PROJ_PATH}/.exportMap""/>
+ <listOptionValue builtIn="false" value="-L"${SBI_SYSROOT}/usr/lib""/>
+ <listOptionValue builtIn="false" value="$(RS_LIBRARIES)"/>
+ </option>
+ <option id="gnu.cpp.link.option.paths.1776324396" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
+ <listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/lib}""/>
+ </option>
+ <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.366525311" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
+ <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
+ <additionalInput kind="additionalinput" paths="$(LIBS)"/>
+ </inputType>
+ </tool>
+ <tool command="i386-linux-gnueabi-as" id="org.tizen.nativeapp.tool.sbi.gnu.assembler.base.195048157" name="Assembler" superClass="org.tizen.nativeapp.tool.sbi.gnu.assembler.base">
+ <inputType id="cdt.managedbuild.tool.gnu.assembler.input.272193741" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
+ </tool>
+ <tool id="org.tizen.nativecore.tool.fnmapgen.668183279" name="C FN-Map Generator" superClass="org.tizen.nativecore.tool.fnmapgen"/>
+ <tool id="org.tizen.nativecore.tool.fnmapgen.cpp.1611181380" name="C++ FN-Map Generator" superClass="org.tizen.nativecore.tool.fnmapgen.cpp"/>
+ <tool id="org.tizen.nativecore.tool.ast.1519210507" name="C Static Analyzer" superClass="org.tizen.nativecore.tool.ast"/>
+ <tool id="org.tizen.nativecore.tool.ast.cpp.1790822261" name="C++ Static Analyzer" superClass="org.tizen.nativecore.tool.ast.cpp"/>
+ <tool id="org.tizen.nativecore.tool.sbi.gnu.archiver.mergelib.68401441" name="Archive Generator" superClass="org.tizen.nativecore.tool.sbi.gnu.archiver.mergelib"/>
+ <tool id="org.tizen.nativecore.tool.sbi.po.compiler.2110483621" name="PO Resource Compiler" superClass="org.tizen.nativecore.tool.sbi.po.compiler"/>
+ <tool id="org.tizen.nativecore.tool.sbi.edc.compiler.1476042714" name="EDC Resource Compiler" superClass="org.tizen.nativecore.tool.sbi.edc.compiler"/>
+ </toolChain>
+ </folderInfo>
+ <sourceEntries>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="inc"/>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="res"/>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="shared"/>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/>
+ </sourceEntries>
+ </configuration>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+ </cconfiguration>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <project id="tbtcoreapp-dali.org.tizen.nativecore.target.sbi.gcc45.app.865154839" name="Tizen Native Application" projectType="org.tizen.nativecore.target.sbi.gcc45.app"/>
+ </storageModule>
+ <storageModule moduleId="scannerConfiguration">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+ <scannerConfigBuildInfo instanceId="org.tizen.nativecore.config.sbi.gcc45.app.debug.466175231">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+ </scannerConfigBuildInfo>
+ <scannerConfigBuildInfo instanceId="org.tizen.nativecore.config.sbi.gcc45.app.release.738115821">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+ </scannerConfigBuildInfo>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
+ <storageModule moduleId="refreshScope" versionNumber="2">
+ <configuration configurationName="Release">
+ <resource resourceType="PROJECT" workspacePath="/tbtcoreapp-dali"/>
+ </configuration>
+ <configuration configurationName="Debug">
+ <resource resourceType="PROJECT" workspacePath="/tbtcoreapp-dali"/>
+ </configuration>
+ </storageModule>
+</cproject>
--- /dev/null
+{
+ global: main;
+ local: *;
+};
--- /dev/null
+TPK
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>tbtcoreapp-dali</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
+ <triggers>full,incremental,</triggers>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.cdt.core.cnature</nature>
+ <nature>org.eclipse.cdt.core.ccnature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
+ </natures>
+ <filteredResources>
+ <filter>
+ <id>1465883060850</id>
+ <name></name>
+ <type>26</type>
+ <matcher>
+ <id>org.eclipse.ui.ide.multiFilter</id>
+ <arguments>1.0-projectRelativePath-matches-false-false-*/.tpk</arguments>
+ </matcher>
+ </filter>
+ <filter>
+ <id>1465883060852</id>
+ <name></name>
+ <type>6</type>
+ <matcher>
+ <id>org.eclipse.ui.ide.multiFilter</id>
+ <arguments>1.0-name-matches-false-false-project_def.prop</arguments>
+ </matcher>
+ </filter>
+ </filteredResources>
+</projectDescription>
--- /dev/null
+#delete
+#add
+#modify
+author-signature.xml
+signature1.xml
+bin/tbtcoreapp-dali
--- /dev/null
+bin/tbtcoreapp-dali__DEL__wkhOn6RMHAv/tOa6sOHAmW4qIHT7W+J5YX6UQu/T0Lk=
+res/images/Default_home.png__DEL__G5tVggT06pLAhU2qhwPAmVTMSNTBF3T5sqkIydsMt44=
+res/images/gallery-medium-1.jpg__DEL__7dleUp5WKUt0OJMqXojKT/IVBavHjV9f0mxhu3pSc9c=
+res/images/gallery-medium-10.jpg__DEL__qH3s0+E6NUWB71kIVH7g+7XN9zB8yiDkHs25BUSdcVE=
+res/images/gallery-medium-11.jpg__DEL__1pVoowD12oHFSP/pChB35fUoKFn+A8e/MQjsV5dN2Sk=
+res/images/gallery-medium-12.jpg__DEL__ZCR/x+xL2zR99Dzgaf/tqHoZfqhW+I+Y9nx21INjK+Y=
+res/images/gallery-medium-13.jpg__DEL__5I2pCpVtVjY7LVzbR1alg+jd3oh+VjtQdbpesd1Qpls=
+res/images/gallery-medium-14.jpg__DEL__AmNTQ2qb61OTeBpqrlV5nTurR+SKr0QrZsRJnkAAO08=
+res/images/gallery-medium-2.jpg__DEL__6yFCLcNmdeJOAV1/1mP7qJJymQe3znJFuX8MQyC37z4=
+res/images/gallery-medium-3.jpg__DEL__ZCR/x+xL2zR99Dzgaf/tqHoZfqhW+I+Y9nx21INjK+Y=
+res/images/gallery-medium-4.jpg__DEL__q9MR26b32TDYfFojN0R6WDpFueI9jgDwpv2rtAmOJvk=
+res/images/gallery-medium-5.jpg__DEL__Wl2GpmR6jYzKz2QKMmbt0z6pfm9JIt1d3Po5W6Yj5tk=
+res/images/gallery-medium-6.jpg__DEL__8yF/sif0ToURXN5N3lzq0ji1b9pG3jsc0AwWzPGinXI=
+res/images/gallery-medium-7.jpg__DEL__gNI6SHFx54CgGGAFtjq+GtGtjyMWEt5qoKjfcPOaToQ=
+res/images/gallery-medium-8.jpg__DEL__o/rU2msAJGacK+FqGF/pOR9/QK9m5YZ9kIaKRgC8OsU=
+res/images/gallery-medium-9.jpg__DEL__L2DUpdIZ/yaAsDTJsGEx87dETx/Om8CSRFwTt6IWe6A=
+res/images/text-field-bg.9.png__DEL__MB7LhGWONfE9F3kWbkkHJNgQ4SIfT3U+WND+9+siVpU=
+res/images/top-bar.png__DEL__gvQ+T+R9lVRmJmRoRaYoeIHhzxEwsXgRSr4wjnbEokM=
+shared/res/tbtcoreapp-dali.png__DEL__1d0oEZHqPn+QzNzGIHwj9ODby6x9ggFs9uOsav6jPNs=
+tizen-manifest.xml__DEL__jVCHDxVZ/eHQqLpBXF33+IyKIcQTWevk9pMnSecwrsE=
+author-signature.xml__DEL__Fpm9FhlqYK2Cda3P6YRbDLH9EUWur05uPu6A5AUK1Ic=
--- /dev/null
+<Signature xmlns="http://www.w3.org/2000/09/xmldsig#" Id="AuthorSignature">
+<SignedInfo>
+<CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"></CanonicalizationMethod>
+<SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"></SignatureMethod>
+<Reference URI="bin%2Ftbtcoreapp-dali">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>wkhOn6RMHAv/tOa6sOHAmW4qIHT7W+J5YX6UQu/T0Lk=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2FDefault_home.png">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>G5tVggT06pLAhU2qhwPAmVTMSNTBF3T5sqkIydsMt44=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-1.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>7dleUp5WKUt0OJMqXojKT/IVBavHjV9f0mxhu3pSc9c=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-10.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>qH3s0+E6NUWB71kIVH7g+7XN9zB8yiDkHs25BUSdcVE=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-11.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>1pVoowD12oHFSP/pChB35fUoKFn+A8e/MQjsV5dN2Sk=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-12.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>ZCR/x+xL2zR99Dzgaf/tqHoZfqhW+I+Y9nx21INjK+Y=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-13.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>5I2pCpVtVjY7LVzbR1alg+jd3oh+VjtQdbpesd1Qpls=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-14.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>AmNTQ2qb61OTeBpqrlV5nTurR+SKr0QrZsRJnkAAO08=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-2.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>6yFCLcNmdeJOAV1/1mP7qJJymQe3znJFuX8MQyC37z4=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-3.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>ZCR/x+xL2zR99Dzgaf/tqHoZfqhW+I+Y9nx21INjK+Y=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-4.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>q9MR26b32TDYfFojN0R6WDpFueI9jgDwpv2rtAmOJvk=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-5.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>Wl2GpmR6jYzKz2QKMmbt0z6pfm9JIt1d3Po5W6Yj5tk=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-6.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>8yF/sif0ToURXN5N3lzq0ji1b9pG3jsc0AwWzPGinXI=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-7.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>gNI6SHFx54CgGGAFtjq+GtGtjyMWEt5qoKjfcPOaToQ=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-8.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>o/rU2msAJGacK+FqGF/pOR9/QK9m5YZ9kIaKRgC8OsU=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-9.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>L2DUpdIZ/yaAsDTJsGEx87dETx/Om8CSRFwTt6IWe6A=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Ftext-field-bg.9.png">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>MB7LhGWONfE9F3kWbkkHJNgQ4SIfT3U+WND+9+siVpU=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Ftop-bar.png">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>gvQ+T+R9lVRmJmRoRaYoeIHhzxEwsXgRSr4wjnbEokM=</DigestValue>
+</Reference>
+<Reference URI="shared%2Fres%2Ftbtcoreapp-dali.png">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>1d0oEZHqPn+QzNzGIHwj9ODby6x9ggFs9uOsav6jPNs=</DigestValue>
+</Reference>
+<Reference URI="tizen-manifest.xml">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>jVCHDxVZ/eHQqLpBXF33+IyKIcQTWevk9pMnSecwrsE=</DigestValue>
+</Reference>
+<Reference URI="#prop">
+<Transforms>
+<Transform Algorithm="http://www.w3.org/2006/12/xml-c14n11"></Transform>
+</Transforms>
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>lpo8tUDs054eLlBQXiDPVDVKfw30ZZdtkRs1jd7H5K8=</DigestValue>
+</Reference>
+</SignedInfo>
+<SignatureValue>
+UvPoaU+CH0/QYAMUw05kxnGYL7khFJuF7/G/RKdxDczZEjxgVSCIcR8+lgfSiXlmyVIcnNuKL3AD
+L3VRZ8+4pFaWX7gyJFeOrvi3bWPwcGJ6VR+LINZNdjpoEOuXX0c97zFblW1eH8xbXyNMPcDhTsHK
+A6j0H0dmXYuvkPVJDuU=
+</SignatureValue>
+<KeyInfo>
+<X509Data>
+<X509Certificate>
+MIIClTCCAX2gAwIBAgIGAVXrmUisMA0GCSqGSIb3DQEBBQUAMFYxGjAYBgNVBAoMEVRpemVuIEFz
+c29jaWF0aW9uMRowGAYDVQQLDBFUaXplbiBBc3NvY2lhdGlvbjEcMBoGA1UEAwwTVGl6ZW4gRGV2
+ZWxvcGVycyBDQTAeFw0xMjExMDEwMDAwMDBaFw0xOTAxMDEwMDAwMDBaMBExDzANBgNVBAMMBmF1
+dGhvcjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAyoHkef9LjRgrl+wrQNXmYTP2FnWzyzrL
+y3J+hXNgmKWGRgAh/f/GEGKi8pG8QMXh099Zj4diHsBkk5eVXLi5iAU9QF5Uhqjyv20Wtb5pbEQC
+mzfN94iGamWkSjMe8lDsujd1jQZ4Wnsh3/zrjXzpjMqlM5h35gSjPPIxBhVgQoECAwEAAaMyMDAw
+DAYDVR0TAQH/BAIwADALBgNVHQ8EBAMCB4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwDQYJKoZIhvcN
+AQEFBQADggEBAAHOUFgpCEmxp1TOxJNJ+/z0v2aJj/GA4iIW0qjG1YxLQlgBhcEjE6Y9EqWw5taj
+QF6UWbEJI37Hhiv6j4Ib+/+fVEAkw8McUABcnqoTEGmQ/u9JsCLC1hAk0wATZb3E7cg0PSRf57Ix
+7zCPc7HdHBIzMtLI+pw4Ad5C1uPsN/dsyn0iey1sXhouGIGAwjqUaE7G9p9JPDuniV1H+Q6LuOYe
+ZV4cXLMvHsj2n15lHdxcJLjZ9cGSGWnGHaSlWbnYzbaiO1V0UKyv+3H2FQO5UwN5fQJSCfjpja4a
+txpEP0SiWF9o6fnCf5dYhKNH3kW5VOzNCmzPITvgvxmVdirMKxM=
+</X509Certificate>
+<X509Certificate>
+MIIDOTCCAiGgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMRowGAYDVQQKDBFUaXplbiBBc3NvY2lh
+dGlvbjEaMBgGA1UECwwRVGl6ZW4gQXNzb2NpYXRpb24xHjAcBgNVBAMMFVRpemVuIERldmVsb3Bl
+cnMgUm9vdDAeFw0xMjAxMDEwMDAwMDBaFw0yNzAxMDEwMDAwMDBaMFYxGjAYBgNVBAoMEVRpemVu
+IEFzc29jaWF0aW9uMRowGAYDVQQLDBFUaXplbiBBc3NvY2lhdGlvbjEcMBoGA1UEAwwTVGl6ZW4g
+RGV2ZWxvcGVycyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANVGhRGmMIUyBA7o
+PCz8Sxut6z6HNkF4oDIuzuKaMzRYPeWodwe9O0gmqAkToQHfwg2giRhE5GoPld0fq+OYMMwSasCu
+g8dwODx1eDeSYVuOLWRxpAmbTXOsSFi6VoWeyaPEm18JBHvZBsU5YQtgZ6Kp7MqzvQg3pXOxtajj
+vyHxiatJl+xXrHgcXC1wgyG3buty7u/Fi2mvKXJ0PRJcCjjK81dqe/Vr20sRUCrbk02zbm5ggFt/
+jIEhV8wbFRQpliobc7J4dSTKhFfrqGM8rdd54LYhD7gSI1CFSe16pUXfcVR7FhJztRaiGLnCrwBE
+dyTZ248+D4L/qR/D0axb3jcCAwEAAaMQMA4wDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOC
+AQEAnOXXQ/1O/QTDHyrmQDtFziqPY3xWlJBqJtEqXiT7Y+Ljpe66e+Ee/OjQMlZe8gu21/8cKklH
+95RxjopMWCVedXDUbWdvS2+CdyvVW/quT2E0tjqIzXDekUTYwwhlPWlGxvfj3VsxqSFq3p8Brl04
+1Gx5RKAGyKVsMfTLhbbwSWwApuBUxYfcNpKwLWGPXkysu+HctY03OKv4/xKBnVWiN8ex/Sgesi0M
++OBAOMdZMPK32uJBTeKFx1xZgTLIhk45V0hPOomPjZloiv0LSS11eyd451ufjW0iHRE7WlpR6EvI
+W6TFyZgMpQq+kg4hWl2SBTf3s2VI8Ygz7gj8TMlClg==
+</X509Certificate>
+</X509Data>
+</KeyInfo>
+<Object Id="prop"><SignatureProperties xmlns:dsp="http://www.w3.org/2009/xmldsig-properties"><SignatureProperty Id="profile" Target="#AuthorSignature"><dsp:Profile URI="http://www.w3.org/ns/widgets-digsig#profile"></dsp:Profile></SignatureProperty><SignatureProperty Id="role" Target="#AuthorSignature"><dsp:Role URI="http://www.w3.org/ns/widgets-digsig#role-author"></dsp:Role></SignatureProperty><SignatureProperty Id="identifier" Target="#AuthorSignature"><dsp:Identifier></dsp:Identifier></SignatureProperty></SignatureProperties></Object>
+</Signature>
\ No newline at end of file
--- /dev/null
+<Signature xmlns="http://www.w3.org/2000/09/xmldsig#" Id="DistributorSignature">
+<SignedInfo>
+<CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"></CanonicalizationMethod>
+<SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"></SignatureMethod>
+<Reference URI="author-signature.xml">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>Fpm9FhlqYK2Cda3P6YRbDLH9EUWur05uPu6A5AUK1Ic=</DigestValue>
+</Reference>
+<Reference URI="bin%2Ftbtcoreapp-dali">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>wkhOn6RMHAv/tOa6sOHAmW4qIHT7W+J5YX6UQu/T0Lk=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2FDefault_home.png">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>G5tVggT06pLAhU2qhwPAmVTMSNTBF3T5sqkIydsMt44=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-1.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>7dleUp5WKUt0OJMqXojKT/IVBavHjV9f0mxhu3pSc9c=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-10.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>qH3s0+E6NUWB71kIVH7g+7XN9zB8yiDkHs25BUSdcVE=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-11.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>1pVoowD12oHFSP/pChB35fUoKFn+A8e/MQjsV5dN2Sk=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-12.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>ZCR/x+xL2zR99Dzgaf/tqHoZfqhW+I+Y9nx21INjK+Y=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-13.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>5I2pCpVtVjY7LVzbR1alg+jd3oh+VjtQdbpesd1Qpls=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-14.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>AmNTQ2qb61OTeBpqrlV5nTurR+SKr0QrZsRJnkAAO08=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-2.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>6yFCLcNmdeJOAV1/1mP7qJJymQe3znJFuX8MQyC37z4=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-3.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>ZCR/x+xL2zR99Dzgaf/tqHoZfqhW+I+Y9nx21INjK+Y=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-4.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>q9MR26b32TDYfFojN0R6WDpFueI9jgDwpv2rtAmOJvk=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-5.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>Wl2GpmR6jYzKz2QKMmbt0z6pfm9JIt1d3Po5W6Yj5tk=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-6.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>8yF/sif0ToURXN5N3lzq0ji1b9pG3jsc0AwWzPGinXI=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-7.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>gNI6SHFx54CgGGAFtjq+GtGtjyMWEt5qoKjfcPOaToQ=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-8.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>o/rU2msAJGacK+FqGF/pOR9/QK9m5YZ9kIaKRgC8OsU=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Fgallery-medium-9.jpg">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>L2DUpdIZ/yaAsDTJsGEx87dETx/Om8CSRFwTt6IWe6A=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Ftext-field-bg.9.png">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>MB7LhGWONfE9F3kWbkkHJNgQ4SIfT3U+WND+9+siVpU=</DigestValue>
+</Reference>
+<Reference URI="res%2Fimages%2Ftop-bar.png">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>gvQ+T+R9lVRmJmRoRaYoeIHhzxEwsXgRSr4wjnbEokM=</DigestValue>
+</Reference>
+<Reference URI="shared%2Fres%2Ftbtcoreapp-dali.png">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>1d0oEZHqPn+QzNzGIHwj9ODby6x9ggFs9uOsav6jPNs=</DigestValue>
+</Reference>
+<Reference URI="tizen-manifest.xml">
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>jVCHDxVZ/eHQqLpBXF33+IyKIcQTWevk9pMnSecwrsE=</DigestValue>
+</Reference>
+<Reference URI="#prop">
+<Transforms>
+<Transform Algorithm="http://www.w3.org/2006/12/xml-c14n11"></Transform>
+</Transforms>
+<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
+<DigestValue>u/jU3U4Zm5ihTMSjKGlGYbWzDfRkGphPPHx3gJIYEJ4=</DigestValue>
+</Reference>
+</SignedInfo>
+<SignatureValue>
+VZwWJDuKjP/4l6TK0NEe//Af5D3cNHYFNsrpZltCPS4CKNi8E6/vrWd6kGXcoo1JHS8zzihxtQFM
+IqIIQfeT+seyXOyMpOpBbtl1Aa7P9JOxTijwy64o7ZoS5ZIEWlPS8kQfTzrx1nU8A7knA96350YJ
+exw6tibTyPgmNTpwfdw=
+</SignatureValue>
+<KeyInfo>
+<X509Data>
+<X509Certificate>
+MIICmzCCAgQCCQDXI7WLdVZwiTANBgkqhkiG9w0BAQUFADCBjzELMAkGA1UEBhMCS1IxDjAMBgNV
+BAgMBVN1d29uMQ4wDAYDVQQHDAVTdXdvbjEWMBQGA1UECgwNVGl6ZW4gVGVzdCBDQTEiMCAGA1UE
+CwwZVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTEkMCIGA1UEAwwbVGl6ZW4gUHVibGljIERpc3Ry
+aWJ1dG9yIENBMB4XDTEyMTAyOTEzMDMwNFoXDTIyMTAyNzEzMDMwNFowgZMxCzAJBgNVBAYTAktS
+MQ4wDAYDVQQIDAVTdXdvbjEOMAwGA1UEBwwFU3V3b24xFjAUBgNVBAoMDVRpemVuIFRlc3QgQ0Ex
+IjAgBgNVBAsMGVRpemVuIERpc3RyaWJ1dG9yIFRlc3QgQ0ExKDAmBgNVBAMMH1RpemVuIFB1Ymxp
+YyBEaXN0cmlidXRvciBTaWduZXIwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALtMvlc5hENK
+90ZdA+y66+Sy0enD1gpZDBh5T9RP0oRsptJv5jjNTseQbQi0SZOdOXb6J7iQdlBCtR343RpIEz8H
+mrBy7mSY7mgwoU4EPpp4CTSUeAuKcmvrNOngTp5Hv7Ngf02TTHOLK3hZLpGayaDviyNZB5PdqQdB
+hokKjzAzAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAvGp1gxxAIlFfhJH1efjb9BJK/rtRkbYn9+Ez
+GEbEULg1svsgnyWisFimI3uFvgI/swzr1eKVY3Sc8MQ3+Fdy3EkbDZ2+WAubhcEkorTWjzWz2fL1
+vKaYjeIsuEX6TVRUugHWudPzcEuQRLQf8ibZWjbQdBmpeQYBMg5x+xKLCJc=
+</X509Certificate>
+<X509Certificate>
+MIICtDCCAh2gAwIBAgIJAMDbehElPNKvMA0GCSqGSIb3DQEBBQUAMIGVMQswCQYDVQQGEwJLUjEO
+MAwGA1UECAwFU3V3b24xDjAMBgNVBAcMBVN1d29uMRYwFAYDVQQKDA1UaXplbiBUZXN0IENBMSMw
+IQYDVQQLDBpUVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTEpMCcGA1UEAwwgVGl6ZW4gUHVibGlj
+IERpc3RyaWJ1dG9yIFJvb3QgQ0EwHhcNMTIxMDI5MTMwMjUwWhcNMjIxMDI3MTMwMjUwWjCBjzEL
+MAkGA1UEBhMCS1IxDjAMBgNVBAgMBVN1d29uMQ4wDAYDVQQHDAVTdXdvbjEWMBQGA1UECgwNVGl6
+ZW4gVGVzdCBDQTEiMCAGA1UECwwZVGl6ZW4gRGlzdHJpYnV0b3IgVGVzdCBDQTEkMCIGA1UEAwwb
+VGl6ZW4gUHVibGljIERpc3RyaWJ1dG9yIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDe
+OTS/3nXvkDEmsFCJIvRlQ3RKDcxdWJJp625pFqHdmoJBdV+x6jl1raGK2Y1sp2Gdvpjc/z92yzAp
+bE/UVLPh/tRNZPeGhzU4ejDDm7kzdr2f7Ia0U98K+OoY12ucwg7TYNItj9is7Cj4blGfuMDzd2ah
+2AgnCGlwNwV/pv+uVQIDAQABoxAwDjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4GBACqJ
+KO33YdoGudwanZIxMdXuxnnD9R6u72ltKk1S4zPfMJJv482CRGCI4FK6djhlsI4i0Lt1SVIJEed+
+yc3qckGm19dW+4xdlkekon7pViEBWuyHw8OWv3RXtTum1+PGHjBJ2eYY4ZKIpz73U/1NC16sTB/0
+VhfnkHwPltmrpYVe
+</X509Certificate>
+</X509Data>
+</KeyInfo>
+<Object Id="prop"><SignatureProperties xmlns:dsp="http://www.w3.org/2009/xmldsig-properties"><SignatureProperty Id="profile" Target="#DistributorSignature"><dsp:Profile URI="http://www.w3.org/ns/widgets-digsig#profile"></dsp:Profile></SignatureProperty><SignatureProperty Id="role" Target="#DistributorSignature"><dsp:Role URI="http://www.w3.org/ns/widgets-digsig#role-distributor"></dsp:Role></SignatureProperty><SignatureProperty Id="identifier" Target="#DistributorSignature"><dsp:Identifier></dsp:Identifier></SignatureProperty></SignatureProperties></Object>
+</Signature>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<tproject xmlns="http://www.tizen.org/tproject">
+ <platforms>
+ <platform>
+ <name>mobile-3.0</name>
+ </platform>
+ </platforms>
+ <package>
+ <blacklist/>
+ <resFallback autoGen="true"/>
+ </package>
+</tproject>
--- /dev/null
+/*******************************************************************************
+ * 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.
+ *
+ *******************************************************************************/
+
+/**
+ * @file tbt-info.h
+ * @brief This file provides the basic structure of all modules.
+ * @since_tizen 2.3
+ * @author Amlan Chowdhury (amlan.c@samsung.com)
+ * @date October, 2014
+ * @bug
+ * @credit
+ */
+#ifndef __TBT_INFO_H__
+#define __TBT_INFO_H__
+
+#include <sensor.h>
+#include <app.h>
+
+typedef struct _tbt_info tbt_info;
+
+typedef enum{
+ TBT_INFO_RESULT_NOT_TESTED=0,
+ TBT_INFO_RESULT_PASS=1,
+ TBT_INFO_RESULT_FAIL=2,
+ TBT_INFO_RESULT_NOT_SUPPORTED=3
+} tbt_info_result;
+
+/**
+ * @brief main Item for tbt list
+ * @since_tizen 2.3
+ */
+typedef enum {
+ TBT_APP_CAMERA_CAPTURE = 0,
+ TBT_APP_CAMERA_RECORD,
+ TBT_APP_CAMERA_FACE_DETECT,
+ TBT_APP_CAMERA_HDR_CAPTURE,
+
+ TBT_APP_SOUND_AUDIO,
+ TBT_APP_SOUND_VOLUME,
+
+ TBT_APP_GPS_GPS,
+
+ TBT_APP_BT_CLIENT_PAIRED,
+ TBT_APP_BT_SERVER_PAIRED,
+ TBT_APP_BT_AUDIO_CONNECT,
+ TBT_APP_BT_AUDIO_CONNECT_HANDSFREE,
+ TBT_APP_BT_AUTHORIZATION,
+ TBT_APP_BT_OPP_CLIENT,
+ TBT_APP_BT_OPP_SERVER,
+ TBT_APP_BT_PROFILES,
+ TBT_APP_BT_SDP,
+ TBT_APP_BT_SERVER_SOCKET,
+ TBT_APP_BT_CLIENT_SOCKET,
+ TBT_APP_BT_HID_CONNECT,
+ TBT_APP_BT_OOB_PERIPHERAL,
+ TBT_APP_BT_OOB_DEVICE,
+ TBT_APP_BT_AVRCP,
+ TBT_APP_BT_AG,
+ TBT_APP_BT_HDP,
+
+ TBT_APP_BLE_GATT_CLIENT,
+
+ TBT_APP_BT_CALLBACK_CREATE_BOND_TEST,
+ TBT_APP_BT_CALLBACK_DESTROY_BOND_TEST,
+ TBT_APP_BT_CALLBACK_DISCOVER_DEVICES_TEST,
+ TBT_APP_BT_CALLBACK_GET_DEVICE_TEST,
+ TBT_APP_BT_CALLBACK_SET_NAME_TEST,
+ TBT_APP_BT_CALLBACK_ADD_ADVERTISING_SERVICE_UUID_TEST,
+
+
+ TBT_APP_WIFIDIRECT,
+ TBT_APP_WIFIDIRECT_CONNECTION_CANCEL,
+
+ TBT_APP_WIFI_WIFI,
+
+ TBT_APP_NFC_P2P,
+ TBT_APP_NFC_TAG,
+
+ TBT_APP_DISPLAY_DISPLAY,
+
+ TBT_APP_GRAPHICS_GRAPHICS,
+
+ TBT_APP_IDEV_NUM_KEYPAD,
+ TBT_APP_IDEV_PH_NUM_KEYPAD,
+ TBT_APP_IDEV_IP_KEYPAD,
+
+ TBT_APP_LOCAL_MPEG4,
+ TBT_APP_LOCAL_H263,
+ TBT_APP_LOCAL_H264,
+
+ TBT_APP_IMAGEVIEW_JPEG,
+ TBT_APP_IMAGEVIEW_BMP,
+ TBT_APP_IMAGEVIEW_GIF,
+ TBT_APP_IMAGEVIEW_PNG,
+
+ TBT_APP_DC_INSERT,
+ TBT_APP_DC_DELETE,
+ TBT_APP_DC_UPDATE,
+ TBT_APP_DC_SELECT,
+ TBT_APP_DC_CURSOR,
+ TBT_APP_DC_MAP,
+
+ TBT_APP_PICK_VIEW_APP,
+ TBT_APP_PICK_PICK_APP,
+
+ TBT_APP_PICK_VIEW_BR0WSER_APP,
+ TBT_APP_PICK_VIEW_IMAGE_APP,
+ TBT_APP_PICK_VIEW_SOUND_APP,
+ TBT_APP_PICK_VIEW_VIDEO_APP,
+ TBT_APP_PICK_PICK_ALL_APP,
+ TBT_APP_PICK_PICK_IMAGE_APP,
+ TBT_APP_PICK_PICK_VIDEO_APP,
+ TBT_APP_PICK_PICK_AUDIO_APP,
+
+ TBT_APP_SENSOR_ACCELEROMETER,
+ TBT_APP_SENSOR_GYROSCOPE,
+ TBT_APP_SENSOR_PROXIMITY,
+ TBT_APP_SENSOR_LIGHT,
+ TBT_APP_SENSOR_ULTRA_VIOLET,
+ TBT_APP_SENSOR_MAGNATOMETER,
+ TBT_APP_SENSOR_PRESSURE,
+
+
+ TBT_APP_ANIMATION_FADE,
+ TBT_APP_ANIMATION_POINT,
+ TBT_APP_ANIMATION_DIMENSION,
+ TBT_APP_ANIMATION_RECT,
+ TBT_APP_ANIMATION_ROTATE,
+
+ TBT_APP_UI_RESIZE,
+ TBT_APP_UI_SHAPE,
+ TBT_APP_UI_ROTATE,
+ TBT_APP_UI_FONT,
+ TBT_APP_UI_LINE,
+ TBT_APP_UI_ALPHA,
+
+ TBT_APP_SL_SCREENLOCK,
+
+ TBT_APP_TOUCH_TOUCH,
+
+ TBT_APP_MOCK,
+ TBT_APP_EVENT_VIEW,
+
+ TBT_APP_FEATURE_SUMMARY,
+
+ TBT_APP_RUNTIME_INFO,
+
+ TBT_APP_SCREEN_MIRROR_SINK,
+
+ TBT_APP_ATTACH_PANEL,
+
+ TBT_APP_OAUTH2,
+
+ TBT_APP_PUSH_SERVICE,
+
+ TBT_APP_MAX,
+
+ TBT_APP_EFL_CALLBACK,
+
+ TBT_APP_SHORTCUT,
+
+ TBT_APP_IME_ALPHABATIC,
+
+ TBT_APP_IME_NUMERIC,
+
+ TBT_APP_IME_EVENT,
+
+ TBT_APP_IME_CONTEXT_GET,
+
+ TBT_APP_WIDGET,
+
+ TBT_APP_MTP,
+
+ TBT_APP_NSD_DNS_SD_LOCAL,
+
+ TBT_APP_NSD_DNS_SD_REMOTE,
+
+ TBT_APP_NSD_SSDP_LOCAL,
+
+ TBT_APP_NSD_SSDP_REMOTE,
+
+ TBT_APP_STORAGE,
+
+ TBT_APP_RADIO,
+
+ TBT_APP_SOUND_MANAGER,
+
+ TBT_APP_SOUND_MANAGER_DEVICE,
+
+ TBT_APP_MEDIA_KEY,
+
+ TBT_APP_PACKAGE_MANAGER,
+
+ TBT_APP_NOTIFICATION_TEXT,
+
+ TBT_APP_NOTIFICATION_TIME,
+
+ TBT_APP_NOTIFICATION_TITLE,
+
+ TBT_APP_NOTIFICATION_IMAGE,
+
+ TBT_APP_CONNECTION,
+
+ TBT_APP_SYSTEM_SETTINGS,
+
+ TBT_APP_CONTACTS,
+
+ TBT_APP_DALI_DALI
+
+} tbt_app_type_e;
+
+
+/**
+ * @brief Measurement units for sensors
+ * @since_tizen 2.3
+ */
+typedef enum {
+ SENSOR_UNIT_METRE_PER_SECOND_SQUARED,
+ SENSOR_UNIT_MICRO_TESLA,
+ SENSOR_UNIT_DEGREE,
+ SENSOR_UNIT_LUX,
+ SENSOR_UNIT_CENTIMETER,
+ SENSOR_UNIT_DEGREE_PER_SECOND,
+ SENSOR_UNIT_HECTOPASCAL,
+ SENSOR_UNIT_MAX
+} sensor_unit_e;
+
+
+
+/**
+ * @brief Extra value getter function
+ * @since_tizen 2.3
+ * @param[in] info Sensor info
+ * @param[in] values Values received from the sensor
+ * @return Calculated value
+ */
+typedef float (*sensor_extra_value_get_cb)(const tbt_info *info, const float *values);
+
+/**
+ * @brief Extra value associated with the sensor
+ * @since_tizen 2.3
+ * @details Allows to add value which is not received from the sensor,
+ * but instead calculated based on sensor values
+ */
+typedef struct _sensor_extra_value
+{
+ const char *name; /**< Value name */
+ const char *format; /**< Value printf() format for text representation */
+ sensor_extra_value_get_cb value_get; /**< Value getter function */
+} sensor_extra_value;
+
+/**
+ * @brief Module metadata
+ * @since_tizen 2.3
+ */
+struct _tbt_info
+{
+
+ const char *name; //tbt display name
+ const char *parent; //tbt display name
+ tbt_app_type_e apptype; //Values measurement units
+ tbt_info_result result; //app status: pass or fail
+ const char *info; //Values measurement units string representation
+ const char *icon_name; //Values measurement units string representation
+ const char *file_name; //Values measurement units string representation
+ const char *extra_file_name;
+ const char *layout_file; //Values measurement units string representation
+ const char *layout_group; //Values measurement units string representation
+ sensor_h sensor; /**< Sensor handle */
+ sensor_type_e sensortype; /**< Sensor type, @see sensor_type_e */
+ sensor_unit_e units; /**< Values measurement units */
+ int sensor_response_interval;
+ const char **value_names; /**< Value names array of value_count size */
+ int value_count; /**< Values count */
+ float value_min; /**< Minimal value */
+ float value_max; /**< Maximal value */
+ float value_range; /**< Values range */
+ const char *units_str; /**< Values measurement units string representation */
+ const char *value_format; /**< Values printf() format for text representation */
+ int axes[3]; /**< Sensor axes directions relative to screen coordinate system */
+ sensor_extra_value *extra_values; /**< Sensor variable to retrieve the sensor extra values */
+ int extra_value_count; /**< The count of the extra values */
+ bool is_push_from_outside; /**< Checks if push data is received or not */
+ char* push_operation_id; /**< Operation id of push data */
+ app_control_h push_app_control; /**< App conrol handler*/
+ int required_features_count; /**< Number of features required */
+ int features_required[16]; /**< Index/indexs of features required */
+
+};
+
+/**
+ * @brief Feature List
+ * @since_tizen 2.3
+ */
+static char *feature_list[1024] =
+{
+ "tizen.org/feature/camera",
+ "tizen.org/feature/camera.back",
+ "tizen.org/feature/camera.back.flash",
+ "tizen.org/feature/camera.front",
+ "tizen.org/feature/camera.front.flash",
+ "tizen.org/feature/database.encryption",
+ "tizen.org/feature/fmradio",
+ "tizen.org/feature/graphics.acceleration",
+ "tizen.org/feature/input.keyboard",
+ "tizen.org/feature/input.keyboard.layout",
+ "tizen.org/feature/location",
+ "tizen.org/feature/location.gps",
+ "tizen.org/feature/location.wps",
+ "tizen.org/feature/microphone",
+ "tizen.org/feature/multi_point_touch.point_count",
+ "tizen.org/feature/multi_point_touch.pinch_zoom",
+ "tizen.org/feature/network.bluetooth",
+ "tizen.org/feature/network.nfc",
+ "tizen.org/feature/network.nfc.reserved_push",
+ "tizen.org/feature/network.push",
+ "tizen.org/feature/network.secure_element",
+ "tizen.org/feature/network.telephony",
+ "tizen.org/feature/network.telephony.mms",
+ "tizen.org/feature/network.telephony.sms.cbs",
+ "tizen.org/feature/network.wifi",
+ "tizen.org/feature/network.wifi.direct",
+ "tizen.org/feature/opengles.texture_format.3dc",
+ "tizen.org/feature/opengles.texture_format.atc",
+ "tizen.org/feature/opengles.texture_format.etc",
+ "tizen.org/feature/opengles.texture_format.ptc",
+ "tizen.org/feature/opengles.texture_format.pvrtc",
+ "tizen.org/feature/opengles.texture_format.utc",
+ "tizen.org/feature/opengles.version.1_1",
+ "tizen.org/feature/opengles.version.2_0",
+ "tizen.org/feature/platform.core.cpu.arch.armv7",
+ "tizen.org/feature/platform.core.fpu.arch.sse2",
+ "tizen.org/feature/platform.core.fpu.arch.sse3",
+ "tizen.org/feature/platform.core.fpu.arch.ssse3",
+ "tizen.org/feature/platform.core.fpu.arch.vfpv3",
+ "tizen.org/feature/platform.core.cpu.arch.x86",
+ "tizen.org/feature/platform.native.osp_compatible",
+ "tizen.org/feature/screen.auto_rotation",
+ "tizen.org/feature/sensor.accelerometer",
+ "tizen.org/feature/sensor.accelerometer.wakeup",
+ "tizen.org/feature/sensor.gyroscope",
+ "tizen.org/feature/sensor.gyroscope.wakeup",
+ "tizen.org/feature/sensor.magnetometer",
+ "tizen.org/feature/sensor.magnetometer.wakeup",
+ "tizen.org/feature/sensor.proximity",
+ "tizen.org/feature/sensor.proximity.wakeup",
+ "tizen.org/feature/sensor.tiltmeter",
+ "tizen.org/feature/sensor.tiltmeter.wakeup",
+ "tizen.org/feature/shell.appwidget",
+ "tizen.org/feature/network.bluetooth",
+ "tizen.org/feature/sip.voip",
+ "tizen.org/feature/speech.recognition",
+ "tizen.org/feature/speech.synthesis",
+ "tizen.org/feature/usb.accessory",
+ "tizen.org/feature/usb.host",
+ "tizen.org/feature/vision.face_recognition",
+ "tizen.org/feature/vision.image_recognition",
+ "tizen.org/feature/vision.qrcode_generation",
+ "tizen.org/feature/vision.qrcode_recognition",
+ "tizen.org/feature/bluetooth",
+ "tizen.org/feature/bluetooth.le",
+ "tizen.org/feature/network.bluetooth.le",
+ "tizen.org/feature/bluetooth.audio.media",
+ "tizen.org/feature/network.bluetooth.audio.media",
+ "tizen.org/feature/bluetooth.audio.call",
+ "tizen.org/feature/network.bluetooth.audio.call",
+ "tizen.org/feature/bluetooth.hdp",
+ "tizen.org/feature/network.bluetooth.hdp"
+ "tizen.org/feature/bluetooth.hid",
+ "tizen.org/feature/network.bluetooth.hid",
+ "tizen.org/feature/bluetooth.opp",
+ "tizen.org/feature/network.bluetooth.opp",
+ "tizen.org/feature/bluetooth.spp",
+ "tizen.org/feature/network.nfc.p2p",
+ "tizen.org/feature/network.nfc.tag",
+ "tizen.org/feature/network.wifi.direct.display",
+ "tizen.org/feature/network.internet",
+ "tizen.org/feature/notification"
+};
+
+#endif /* __TBT_INFO_H__ */
--- /dev/null
+/*******************************************************************************
+ * 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.
+ *
+ *******************************************************************************/
+
+/**
+ * @file tbt-list.h
+ * @brief This file Handles main List of Application.
+ * @since_tizen 2.3
+ * @author Amlan Chowdhury (amlan.c@samsung.com)
+ * @date October, 2014
+ * @bug
+ * @credit
+ */
+
+#ifndef __TBT_LIST_H__
+#define __TBT_LIST_H__
+
+#include "tbt-info.h"
+
+/**
+ * @brief Initialize sensor info list
+ * @since_tizen 2.3
+ */
+void tbt_list_init();
+
+/**
+ * Save xml report file for future use
+ * @since_tizen 2.3
+ */
+void tbt_save_report();
+
+/**
+ * @brief Get list of tbt list supported by application
+ * @since_tizen 2.3
+ * @param[out] count tbts list count
+ * @return Sensor list
+ */
+const tbt_info *tbt_list_get(unsigned *count);
+
+/**
+ * Returns total count of tbt_info;
+ * @since_tizen 2.3
+ */
+const int tbt_info_count();
+
+/**
+ * @brief Get list of tbt list supported by application
+ * @since_tizen 2.3
+ * @param[out] count tbts list count
+ * @return Sensor list
+ */
+tbt_info *tbt_list_item_get(int index);
+
+/**
+ * @brief Get list item index of tbt list supported by application
+ * @since_tizen 2.3
+ * @param[out] count tbts list count
+ * @return Sensor list
+ */
+const int tbt_list_item_index_get_by_app_type(int app_type);
+/**
+ * @brief Get list item count tbt list supported by application
+ * @since_tizen 2.3
+ * @param[out] count tbts list count
+ * @return Sensor list
+ */
+const int tbt_list_item_count(int index);
+
+#endif /* __TBT_LIST_H__ */
--- /dev/null
+#ifndef _EXCLUDE_LIST_H
+#define _EXCLUDE_LIST_H
+
+//#define TIZEN_2_3_1
+//#define TIZEN_2_4
+#define TIZEN_3_0
+
+#define DEVICE_TYPE_MOBILE
+//#define DEVICE_TYPE_WEARABLE
+
+#define TBT_MODULE_DALI
+#define TBT_MODULE_APP_DALI_TTS
+
+#endif
--- /dev/null
+/*******************************************************************************
+ * 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.
+ *
+ *******************************************************************************/
+
+/**
+ * @file config.h
+ * @brief This file Configures the Application.
+ * @since_tizen 2.3
+ * @author Kallol Kumar Pal(kallol.kumar@samsung.com) and Amlan Chowdhury(amlan.c@samsung.com)
+ * @date October, 2014
+ * @bug
+ * @credit
+ */
+#ifndef CONFIG_H_
+#define CONFIG_H_
+
+#include "utils/app_module_config.h"
+#include <app.h>
+#include <limits.h>
+#include <string.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include "utils/logger.h"
+#include <system_info.h>
+#include <storage.h>
+
+#define MAX_LENGTH_CONFIG 1024
+
+#define EDJPATH "edje"
+#define AUDIOPATH "sounds"
+#define VIDEOPATH "video"
+#define IMAGEPATH "images"
+
+extern bool __is_efl_test_running;
+
+//Push:
+#define PUSH_APP_ID "da58f09b7dcd898f"
+#define PUSH_APP_SECRET "E55A746761233098DDD1114F652AFE51"
+
+
+// *_X_POS, *_Y_POS, *_WIDTH, *_HEIGHT are virtual (relative) coords of grid widget
+#define MAX_WIDTH 100
+#define MAX_HEIGHT 100
+
+#define IMAGE_X_POS 0
+#define IMAGE_Y_POS 0
+#define IMAGE_WIDTH MAX_WIDTH
+#define IMAGE_HEIGHT 40
+
+#define LABEL_X_POS 0
+#define LABEL_Y_POS IMAGE_HEIGHT
+#define LABEL_WIDTH MAX_WIDTH
+#define LABEL_HEIGHT MAX_WIDTH-IMAGE_HEIGHT
+
+#define LABEL_MAX_LEN 500
+
+#define IMAGES_REL_FOLDER "images"
+#define IMAGE_REL_PATH_TEMPLATE "%s/%s"
+
+#define TOOLBAR_BUTTON_DATA_KEY "button_id"
+
+#define LABEL_REL_PATH "res/"IMAGES_REL_FOLDER"/"
+#define LABEL_TEMPLATE "%s%s<br/>Dimension = %u x %u<br/>Result:E_SUCCESS"
+
+#define TABLE_PADDING_VERTICAL 20
+#define TABLE_PADDING_HORIZONTAL 20
+
+#define NAVI_TOOLBAR_HEIGHT 150
+
+#ifdef TIZEN_2_3_1
+ #define WINDOW_PREFERED_ENGINE "opengl_x11"
+#else
+ #define WINDOW_PREFERED_ENGINE "3d"
+#endif
+
+
+#define PICK_VIEW_APP_PACKAGE_NAME "org.tizen.coretbt_uiapp";
+#define PICK_VIEW_SERVICEAPP_PACKAGE_NAME "org.tizen.coretbt_serviceapp";
+
+
+#define PICK_VIEW_URL_HTTP "http://www.tizen.org"
+#define PICK_VIEW_URL_HTTPS "https://www.tizen.org/"
+
+#define PICK_VIEW_IMAGE_BMP "images/zebra_1024_680.bmp"
+#define PICK_VIEW_IMAGE_JPG "images/giraffe_800_1179.jpg"
+#define PICK_VIEW_IMAGE_GIF "images/squee.gif"
+#define PICK_VIEW_IMAGE_PNG "images/plane_1024_768.png"
+
+#define PICK_VIEW_SOUND_AAC "sounds/SampleAAC.aac"
+#define PICK_VIEW_SOUND_AMR "sounds/SampleAMR.amr"
+#define PICK_VIEW_SOUND_MP3 "sounds/SampleMP3.mp3"
+#define PICK_VIEW_SOUND_WAV "sounds/SampleWAV.wav"
+
+#define PICK_VIEW_VIDEO_3GP "video/sampleH263.3gp"
+#define PICK_VIEW_VIDEO_MP4 "video/sampleMPEG4.mp4"
+
+
+
+
+#define WIDGET_VIEW_APPID "org.tizen.coretbtwidgetapp";
+#define VIEWER_VIEW_APP_PACKAGE_NAME "org.tizen.widget_viewer_sdk";
+
+#define DATA_CONTROL_PROVIDER_MAP_ID "MapRepository";
+#define DATA_CONTROL_PROVIDER_DATA_ID "provider";
+
+#define DATA_CONTROL_PROVIDER_ID "http://coretbt_dataprovider.com/datacontrol/provider/coretbt_dataprovider";
+#define DATA_CONTROL_MAP_PROVIDER_ID "http://coretbt_dataprovider.com/datacontrol/provider/coretbt_dataprovider_map";
+
+
+#define BLUETOOTH_SOCKET_UUID "00001101-0000-1000-8000-00805F9B34FB"
+
+#define DEFINED_WIDTH 480
+#define DEFINED_HEIGHT 800
+
+//char *TBT_LOGGING_DIR;
+//char *TBT_MEDIA_DIR;
+//char XML_REPORT_FILE_PATH[128];
+//char MEDIA_FILE_PATH[128];
+
+
+static inline const char *get_data_path(const char * file_path);
+static inline const char *get_resource_path(const char * file_path);
+static inline const char *get_shared_resource_path(const char *file_path);
+
+
+typedef enum {
+ DEVICE_WEARABLE,
+ DEVICE_MOBILE,
+ DEVICE_WEARABLE_360_X_480,
+ DEVICE_WEARABLE_320_X_320,
+ DEVICE_WEARABLE_CIRCLE,
+
+ DEVICE_NONE,
+ DEVICE_MAX
+}device_type_e;
+
+static inline device_type_e get_device_type();
+
+typedef enum
+{
+ CURSOR_NONE_PRESSED = -1,
+ CURSOR_START_PRESSED ,
+ CURSOR_FIRST_PRESSED ,
+ CURSOR_NEXT_PRESSED ,
+ CURSOR_PREVIOUS_PRESSED ,
+ CURSOR_LAST_PRESSED
+}_Data_Control_Cursor_State;
+
+static int _supportedStorageID;
+static bool _storage_device_supported_cb(int storage_id, storage_type_e type, storage_state_e state, const char *path, void *user_data)
+{
+ if(type == STORAGE_TYPE_INTERNAL)
+ {
+ // save storage id
+ _supportedStorageID=storage_id;
+ return false;
+ }
+ return true;
+}
+
+static void
+app_get_resource(const char *edj_file_in, char *edj_path_out, int edj_path_max)
+{
+ char *res_path = app_get_resource_path();
+ if (res_path) {
+ snprintf(edj_path_out, edj_path_max, "%s%s", res_path, edj_file_in);
+ }
+}
+
+static void
+app_get_shared_resource(const char *edj_file_in, char *edj_path_out, int edj_path_max)
+{
+ char *res_path = app_get_shared_resource_path();
+ if (res_path) {
+ snprintf(edj_path_out, edj_path_max, "%s%s", res_path, edj_file_in);
+ }
+}
+
+static inline const char *get_edje_path(const char *file_name)
+{
+char absolute_path[MAX_LENGTH_CONFIG] = {'\0'};
+char file_path[MAX_LENGTH_CONFIG] = {'\0'};
+#ifdef TIZEN_2_3_1
+ #ifdef DEVICE_TYPE_MOBILE
+ strncat(file_path, "edje/2.3.1/mobile/", sizeof("edje/2.3.1/mobile/"));
+ #endif
+ #ifdef DEVICE_TYPE_WEARABLE
+ if(get_device_type() == DEVICE_WEARABLE)
+ {
+ strncat(file_path, "edje/2.3.1/wearable/", sizeof("edje/2.3.1/wearable/"));
+ }
+ else if(get_device_type() == DEVICE_WEARABLE_360_X_480)
+ {
+ strncat(file_path, "edje/2.3.1/wearable_360_x_480/", sizeof("edje/2.3.1/wearable_360_x_480/"));
+ }
+ else if(get_device_type() == DEVICE_WEARABLE_320_X_320)
+ {
+ strncat(file_path, "edje/2.3.1/wearable_320_x_320/", sizeof("edje/2.3.1/wearable_320_x_320/"));
+ }
+ else if(get_device_type() == DEVICE_WEARABLE_CIRCLE)
+ {
+ strncat(file_path, "edje/2.3.1/wearable_circle/", sizeof("edje/2.3.1/wearable_circle/"));
+ }
+ #endif
+#endif
+
+
+
+#ifdef TIZEN_2_4
+ #ifdef DEVICE_TYPE_MOBILE
+ strncat(file_path, "edje/2.4/mobile/", sizeof("edje/2.4/mobile/"));
+ #endif
+ #ifdef DEVICE_TYPE_WEARABLE
+ if(get_device_type() == DEVICE_WEARABLE)
+ {
+ strncat(file_path, "edje/2.4/wearable/", sizeof("edje/2.4/wearable/"));
+ }
+ else if(get_device_type() == DEVICE_WEARABLE_360_X_480)
+ {
+ strncat(file_path, "edje/2.4/wearable_360_x_480/", sizeof("edje/2.4/wearable_360_x_480/"));
+ }
+ else if(get_device_type() == DEVICE_WEARABLE_320_X_320)
+ {
+ strncat(file_path, "edje/2.4/wearable_320_x_320/", sizeof("edje/2.4/wearable_320_x_320/"));
+ }
+ else if(get_device_type() == DEVICE_WEARABLE_CIRCLE)
+ {
+ strncat(file_path, "edje/2.4/wearable_circle/", sizeof("edje/2.4/wearable_circle/"));
+ }
+ #endif
+#endif
+
+
+
+#ifdef TIZEN_3_0
+ #ifdef DEVICE_TYPE_MOBILE
+ strncat(file_path, "edje/3.0/mobile/", sizeof("edje/3.0/mobile/"));
+ #endif
+ #ifdef DEVICE_TYPE_WEARABLE
+ if(get_device_type() == DEVICE_WEARABLE)
+ {
+ strncat(file_path, "edje/2.4/wearable/", sizeof("edje/2.4/wearable/"));
+ }
+ else if(get_device_type() == DEVICE_WEARABLE_360_X_480)
+ {
+ strncat(file_path, "edje/2.4/wearable_360_x_480/", sizeof("edje/2.4/wearable_360_x_480/"));
+ }
+ else if(get_device_type() == DEVICE_WEARABLE_320_X_320)
+ {
+ strncat(file_path, "edje/2.4/wearable_320_x_320/", sizeof("edje/2.4/wearable_320_x_320/"));
+ }
+ else if(get_device_type() == DEVICE_WEARABLE_CIRCLE)
+ {
+ strncat(file_path, "edje/2.4/wearable_circle/", sizeof("edje/2.4/wearable_circle/"));
+ }
+ #endif
+#endif
+
+ int num = strlen(file_name);
+ if(strlen(file_path)+strlen(file_name) <= MAX_LENGTH_CONFIG)
+ {
+ num = strlen(file_name);
+ }
+ else
+ {
+ num = MAX_LENGTH_CONFIG-strlen(file_path);
+ }
+
+ strncat(file_path,file_name, num);
+ app_get_resource(file_path, absolute_path, (int)MAX_LENGTH_CONFIG);
+ return strdup(absolute_path);
+
+}
+static inline const char *get_resource_path(const char *file_path)
+{
+ static char absolute_path[MAX_LENGTH_CONFIG] = {'\0'};
+ app_get_resource(file_path, absolute_path, (int)MAX_LENGTH_CONFIG);
+ return strdup(absolute_path);
+}
+
+static inline const char *get_shared_resource_path(const char *file_path)
+{
+ static char absolute_path[MAX_LENGTH_CONFIG] = {'\0'};
+ app_get_shared_resource(file_path, absolute_path, (int)MAX_LENGTH_CONFIG);
+ return strdup(absolute_path);
+}
+
+static inline const char *get_storage_image_dir_path()
+{
+ static char *absolute_path;
+ // lets set storage devices
+ storage_foreach_device_supported(_storage_device_supported_cb,NULL);
+ storage_get_directory(_supportedStorageID,STORAGE_DIRECTORY_IMAGES,&absolute_path);
+ DBG("Logging_Dir set = %s",absolute_path);
+
+ return strdup(absolute_path);
+}
+
+static inline const char *get_data_path(const char *file_path)
+{
+ static char* absolute_path = NULL;
+ static char result[MAX_LENGTH_CONFIG];
+ absolute_path = strdup(app_get_data_path());
+ strcpy(result, absolute_path);
+ strcat(result, "/");
+ strcat(result, file_path);
+ DBG("Data Path is %s", result);
+ return result;
+}
+
+static inline char *gen_data_path(const char *file_path)
+{
+ char path[128];
+ snprintf(path, sizeof(path), "%s%s",app_get_data_path(),file_path);
+
+ return strdup(path);
+}
+
+static inline char *format_string(const char *format, ...)
+{
+ va_list arg;
+ char* chTemp;
+ chTemp= (char*)malloc(1024 * sizeof(char));
+ RETVM_IF(!chTemp, NULL,"malloc failed.");
+ va_start(arg,format);
+ vsnprintf(chTemp,1024,format,arg);
+ va_end(arg);
+ return chTemp;
+}
+
+static inline device_type_e get_device_type()
+{
+ int width, height;
+ device_type_e device_type = DEVICE_NONE;
+ system_info_get_platform_int("tizen.org/feature/screen.width", &width);
+ system_info_get_platform_int("tizen.org/feature/screen.height", &height);
+
+ if(width == 360 && height == 360)
+ {
+ //circle
+ device_type = DEVICE_WEARABLE_CIRCLE;
+ }
+ else if(width == 360 && height == 480)
+ {
+ device_type = DEVICE_WEARABLE_360_X_480;
+ }
+ else if(width == 320 && height == 320)
+ {
+ device_type = DEVICE_WEARABLE_320_X_320;
+ }
+ else
+ {
+ device_type = DEVICE_MOBILE;
+ }
+
+return device_type;
+
+}
+
+
+#endif /* CONFIG_H_ */
--- /dev/null
+/*******************************************************************************
+ * 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.
+ *******************************************************************************/
+
+/**
+ * @file dali-ui-utils.h
+ * @brief This file provide necessary Util functions UI.
+ * @since_tizen 3.0
+ * @author Jahangir Alam (ja.alam@samsung.com)
+ * @date July, 2016
+ * @bug
+ * @credit
+ */
+
+#ifndef __DALI_UI_UTILS_H__
+#define __DALI_UI_UTILS_H__
+#include <system_info.h>
+
+void get_screen_height_width(const char *key, int *value);
+
+#endif /* __DALI_UI_UTILS_H__ */
--- /dev/null
+/*******************************************************************************
+ * 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.
+ *******************************************************************************/
+
+/**
+ * @file logger.h
+ * @brief This file provide necessary macro for logging information.
+ * @since_tizen 2.3
+ * @author Amlan Chowdhury (amlan.c@samsung.com)
+ * @date October, 2014
+ * @bug
+ * @credit
+ */
+#ifndef __LOGGER_H__
+#define __LOGGER_H__
+
+#include <dlog.h>
+
+#define LOG_TAG_CORE "[TBT_DALI_CORE]_"
+
+#define DLOG(prio, fmt, arg...) dlog_print(prio, LOG_TAG_CORE, "%s (Line: %d) > " fmt, __func__, __LINE__, ##arg)
+#define DBG(fmt, arg...) DLOG(DLOG_DEBUG, fmt, ##arg)
+#define ERR(fmt, arg...) DLOG(DLOG_ERROR, fmt, ##arg)
+
+#define RETM_IF(expr, fmt, arg...) \
+{ \
+ if (expr) \
+ { \
+ ERR(fmt, ##arg); \
+ return; \
+ } \
+}
+
+#define RETVM_IF(expr, val, fmt, arg...) \
+{ \
+ if (expr) \
+ { \
+ ERR(fmt, ##arg); \
+ return (val); \
+ } \
+}
+
+#define SAFE_DELETE(a) if( (a) != NULL ) free (a); (a) = NULL;
+
+#endif /* __LOGGER_H__ */
--- /dev/null
+/*******************************************************************************
+ * 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.
+ *******************************************************************************/
+
+/**
+ * @file type-cast.h
+ * @brief This file provide necessary Util functions UI.
+ * @since_tizen 3.0
+ * @author Jahangir Alam (ja.alam@samsung.com)
+ * @date July, 2016
+ * @bug
+ * @credit
+ */
+
+#ifndef __TYPE_CASE_H__
+#define __TYPE_CASE_H__
+#include <string>
+#include <sstream>
+#include <iostream>
+
+std::string IntToString ( int number );
+std::string FloatToString ( float number );
+std::string LongToString ( long number );
+
+#endif /* __TYPE_CASE_H__ */
--- /dev/null
+/*******************************************************************************
+ * 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.
+ *******************************************************************************/
+
+/**
+ * @file ui-utils.h
+ * @brief This file provide necessary Util functions UI.
+ * @since_tizen 2.3
+ * @author kallol kumar pal (kallol.kumar@samsung.com)
+ * @date October, 2014
+ * @bug
+ * @credit
+ */
+
+
+#ifndef __UI_UTILS_H__
+#define __UI_UTILS_H__
+
+#include "utils/app_module_config.h"
+
+#include <Evas.h>
+
+#ifdef TIZEN_3_0
+ #include <efl_extension.h>
+#endif
+#ifdef TIZEN_2_4
+ #include <efl_extension.h>
+#endif
+#ifdef TIZEN_2_3_1
+ #include "efl_extension_events.h"
+#endif
+#include <stdbool.h>
+
+
+enum
+{
+ TOOLBAR_ITEM_INDEX_PASS = 0,
+ TOOLBAR_ITEM_INDEX_FAIL,
+ TOOLBAR_ITEM_INDEX_INFO,
+ TOOLBAR_ITEM_INDEX_COUNT_MAX
+} TOOLBAR_ITEM_INDEXS;
+
+static const char *caption_ok = "OK";
+
+static const char *toolbar_item_names[TOOLBAR_ITEM_INDEX_COUNT_MAX] = { "Pass",
+ "Fail",
+ "Info"
+};
+
+static const int toolbar_item_ids[TOOLBAR_ITEM_INDEX_COUNT_MAX] = { TOOLBAR_ITEM_INDEX_PASS,
+ TOOLBAR_ITEM_INDEX_FAIL,
+ TOOLBAR_ITEM_INDEX_INFO
+};
+
+
+#endif /* __UI_UTILS_H__ */
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_ACCESSIBILITY_MANAGER
+#define __TBT_MODULE_APP_DALI_ACCESSIBILITY_MANAGER
+#include <dali.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+
+class TBTDaliAccessibilityManagerView: public CommonView {
+
+private:
+ AccessibilityManager mAccessibilityManager;
+ TableView mrootTable;
+ TextLabel lblActionActivate;
+ PushButton btn1;
+ PushButton btn2;
+
+public:
+ TBTDaliAccessibilityManagerView(Application& mApplication, app_control_h _control);
+
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+ TextLabel CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size );
+
+ bool OnClick(Button button);
+ bool OnAccessibilityActionSignalType( AccessibilityManager& manager );
+ bool OnActionNextSignal(AccessibilityManager& manager);
+};
+
+#endif // __TBT_MODULE_APP_DALI_KEY_BOARD_FOCUS_MANAGER
+
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_ACTOR
+#define __TBT_MODULE_APP_DALI_ACTOR
+#include <dali.h>
+
+#include <stdio.h>
+#include <stdlib.h>
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+
+
+
+class TBTDaliActorView: public CommonView {
+
+public:
+ TBTDaliActorView(Application& mApplication, app_control_h _control);
+
+ //signal
+ bool cbTouchedSignal(Actor actor, const TouchEvent& event);
+ bool cbTouchSignal(Actor actor, const TouchData& data);
+ bool cbHoveredSignal(Actor actor, const HoverEvent& event);
+ bool cbWheelEventSignal(Actor actor, const WheelEvent& event);
+ bool cbButtonClicked(Button button);
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+ TextLabel CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,Vector3 anchorPoint,
+ Vector3 position, std::string txt, Vector2 size );
+
+private:
+ TextLabel txtTouched;
+ TextLabel txtTouchEventData;
+ TextLabel txtTouch;
+ TextLabel txtTouchData;
+ TextLabel txtHovered;
+ TextLabel txtHoveredData;
+ TextLabel txtWheel;
+ PushButton btnButton;
+};
+
+#endif // __TBT_MODULE_APP_DALI_ACTOR
+
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_BUTTON
+#define __TBT_MODULE_APP_DALI_BUTTON
+#include <dali.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+
+class TBTDaliButtonView: public CommonView {
+
+private:
+ TableView mrootTable;
+ TextLabel txtClick;
+ TextLabel txtPress;
+ TextLabel txtRelease;
+ PushButton btnTest;
+
+public:
+ TBTDaliButtonView(Application& mApplication, app_control_h _control);
+
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+ TextLabel CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size );
+ bool onClicked(Button button);
+ bool onPressed(Button button);
+ bool onReleased(Button button);
+};
+
+#endif // __TBT_MODULE_APP_DALI_BUTTON
+
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_COMMON
+#define __TBT_MODULE_APP_DALI_COMMON
+
+#include <dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include "utils/logger.h"
+#include "utils/ui-utils.h"
+#include "utils/config.h"
+#include "utils/dali-ui-utils.h"
+#include "utils/type-cast.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+class CommonView: public ConnectionTracker {
+
+public:
+ Application mApplication;
+private:
+ PushButton passButton;
+ PushButton failButton;
+ PushButton infoButton;
+ float verdictTableHeight;
+ app_control_h _control;
+public:
+ CommonView(Application& mApplication, app_control_h _control);
+
+ virtual void Initialize();
+
+ float GetVerdictTableHeight();
+
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+
+ TextField CreateTextField(const Vector2& size, const std::string& text);
+
+ virtual bool OnPassButtonClicked(Button button);
+
+ virtual bool OnFailButtonClicked(Button button);
+
+ virtual bool OnInfoButtonClicked(Button button);
+
+ virtual bool OnTouch(Actor actor, const TouchEvent& event);
+
+ virtual void OnKeyEvent(const KeyEvent& event);
+
+ float GetScreenHeight();
+ float GetScreenWidth();
+};
+
+#endif //__TBT_MODULE_APP_DALI_COMMON
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_GESTURE_DETECTOR
+#define __TBT_MODULE_APP_DALI_GESTURE_DETECTOR
+#include <dali.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+
+class TBTDaliGestureDetectorView: public CommonView {
+
+private:
+ TableView mrootTable;
+ TextLabel lblLongPress;
+ TextLabel lblPinch;
+ TextLabel lblpan;
+
+ LongPressGestureDetector longpressgesture;
+ PinchGestureDetector pinchgesture;
+ PanGestureDetector panGesture;
+public:
+ TBTDaliGestureDetectorView(Application& mApplication, app_control_h _control);
+
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+ TextLabel CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size );
+
+ void OnLongPressGestureDetector(Actor actor, const LongPressGesture& gesture);
+ void OnPinchGestureDetector(Actor actor, const PinchGesture& gesture);
+ void OnPanGestureDetector(Actor actor, const PanGesture& gesture);
+
+};
+
+#endif // __TBT_MODULE_APP_DALI_GESTURE_DETECTOR
+
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_KEY_BOARD_FOCUS_MANAGER
+#define __TBT_MODULE_APP_DALI_KEY_BOARD_FOCUS_MANAGER
+#include <dali.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+
+class TBTDaliKeyBoardFocusManagerView: public CommonView {
+
+private:
+ KeyboardFocusManager mFocusManager;
+ ItemView mItemView;
+ TableView mrootTable;
+
+ TextLabel lblPreFocus;
+ TextLabel lblFocusChange;
+ TextLabel lblFocusGroup;
+ TextLabel lblFocusActor;
+
+ PushButton btnUp;
+ PushButton btnDown;
+
+ TextField txt1;
+ TextEditor txt2;
+
+public:
+ TBTDaliKeyBoardFocusManagerView(Application& mApplication, app_control_h _control);
+
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+ TextLabel CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size );
+
+ Actor OnPreFocusChange(Actor current, Actor proposed, Control::KeyboardFocus::Direction direction);
+ void OnFocusChanged(Actor current, Actor proposed);
+ void OnFocusGroupChanged(Actor actor, bool bValue);
+ void OnFocusedActorEnterKey(Actor actor);
+ bool OnUpClick(Button button);
+ bool OnDownClick(Button button);
+};
+
+#endif // __TBT_MODULE_APP_DALI_KEY_BOARD_FOCUS_MANAGER
+
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_SCROLL_BAR
+#define __TBT_MODULE_APP_DALI_SCROLL_BAR
+#include <dali.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+
+class TBTDaliScrollBarView: public CommonView {
+
+private:
+ TableView mrootTable;
+ TextLabel lblScrollBar;
+ ScrollBar scrollBar;
+ TextEditor txtEditor;
+public:
+ TBTDaliScrollBarView(Application& mApplication, app_control_h _control);
+
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+ TextLabel CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size );
+ void OnPanFinishedSignal();
+};
+
+#endif // __TBT_MODULE_APP_DALI_SCROLL_BAR
+
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_SCROLL
+#define __TBT_MODULE_APP_DALI_SCROLL
+#include <dali.h>
+
+#include <stdio.h>
+#include <stdlib.h>
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+
+class TBTDaliScrollView: public CommonView {
+
+private:
+ char* IMAGE_PATHS[14];
+ int NUM_IMAGES;
+ ScrollBar scrollBar;
+ TextLabel lblSnap;
+ TextLabel lblPan;
+
+public:
+ TBTDaliScrollView(Application& mApplication, app_control_h _control);
+
+ void updateViewControls();
+ void AddImage( ScrollView& scrollView, Size& stageSize, int index );
+ void SnapStartedSignalCallback(const ScrollView::SnapEvent& event);
+ void OnPanFinishedSignal();
+};
+
+#endif // __TBT_MODULE_APP_DALI_SCROLL
+
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_SLIDER
+#define __TBT_MODULE_APP_DALI_SLIDER
+#include <dali.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+
+class TBTDaliSliderView: public CommonView {
+
+private:
+ TableView mrootTable;
+ TextLabel txtValue;
+ TextLabel txtValueChanged;
+ TextLabel txtFinished;
+ TextLabel txtMarkReached;
+ Slider slider;
+
+public:
+ TBTDaliSliderView(Application& mApplication, app_control_h _control);
+
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+ TextLabel CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size );
+ bool onValueChanged(Slider slider,float value);
+ bool onSliningFinished(Slider slider,float value);
+ bool onMarkReached(Slider slider,int value);
+};
+
+#endif // __TBT_MODULE_APP_DALI_SLIDER
+
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_STAGE
+#define __TBT_MODULE_APP_DALI_STAGE
+#include <dali.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+
+class TBTDaliStageView: public CommonView {
+
+private:
+ TableView mrootTable;
+ TextLabel txtContext;
+ TextLabel txtContextRegain;
+ TextLabel txtEventProcessing;
+ TextLabel txtKeyEvent;
+ TextLabel txtSceneCreated;
+ TextLabel txtTouched;
+ TextLabel txtTouch;
+ TextLabel txtWheel;
+ PushButton btnTestButton;
+ PushButton textButton;
+ bool bCheck;
+// Atlas mAtlas;
+ Toolkit::ImageView imageView;
+
+public:
+ TBTDaliStageView(Application& mApplication, app_control_h _control,std::string msg);
+
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+ TextLabel CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size );
+
+ void onKeyEvent(const KeyEvent& keyevent);
+ void onEventProcessing();
+ void onTouchedEvent(const TouchEvent& touchevent);
+ void onTouchEvent(const TouchData& touchdata);
+ bool onWheelEvent(Actor actor, const WheelEvent& wheelevent);
+ void onContextLost();
+ void onContextRegain();
+ void onSceneCreated();
+ bool OnButtonClicked(Button button);
+// BufferImage TBTDaliStageView::CreateBufferImage( const Vector4& color, const unsigned int width, const unsigned int height );
+// PixelData TBTDaliStageView::CreatePixelData( const Vector3& color, const unsigned int width, const unsigned int height );
+ static void NewWindow(void);
+};
+
+#endif // __TBT_MODULE_APP_DALI_STAGE
+
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_STYLE_MANAGER
+#define __TBT_MODULE_APP_DALI_STYLE_MANAGER
+#include <dali.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+
+class TBTDaliStyleManagerView: public CommonView {
+
+private:
+ TableView mrootTable;
+ TextLabel lblStyleManager;
+ PushButton btnStyle;
+ StyleManager styleManager;
+public:
+ TBTDaliStyleManagerView(Application& mApplication, app_control_h _control);
+
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+ TextLabel CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size );
+ void OnStyleChange(StyleManager style,StyleChange::Type type);
+ bool OnClicked(Button button);
+};
+
+#endif // __TBT_MODULE_APP_DALI_STYLE_MANAGER
+
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_TEXT_CONTROL
+#define __TBT_MODULE_APP_DALI_TEXT_CONTROL
+#include <dali.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+
+class TBTDaliTextControlView: public CommonView {
+
+private:
+ TableView mrootTable;
+ TextLabel lblField;
+ TextLabel lblEditor;
+ TextLabel lblKeyEvent;
+
+ TextField txtField;
+ TextEditor txtEditor;
+
+public:
+ TBTDaliTextControlView(Application& mApplication, app_control_h _control);
+
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+ TextLabel CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size );
+ void onMaxLengthReached(TextField field);
+ void onTextChanged(TextEditor editor);
+ bool onKeyEventSignal(Control control, const KeyEvent& event);
+};
+
+#endif // __TBT_MODULE_APP_DALI_TEXT_CONTROL
+
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_TOUCH_DATA
+#define __TBT_MODULE_APP_DALI_TOUCH_DATA
+#include <dali.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+
+class TBTDaliTouchDataView: public CommonView {
+
+private:
+ TableView mrootTable;
+ TextLabel txtTouch;
+
+public:
+ TBTDaliTouchDataView(Application& mApplication, app_control_h _control);
+
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+ TextLabel CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size );
+
+ void onTouchEvent(const TouchData& touchdata);
+};
+
+#endif // __TBT_MODULE_APP_DALI_TOUCH_DATA
+
--- /dev/null
+#ifndef __TBT_MODULE_APP_DALI_TTS
+#define __TBT_MODULE_APP_DALI_TTS
+#include <dali.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-common-view.h"
+#include "view/tbt-dali-tts-view.h"
+
+class TBTTTSView: public CommonView {
+
+private:
+
+ PushButton playButton;
+ PushButton interruptButton;
+ PushButton stopButton;
+ TextField txt;
+ TtsPlayer tts;
+public:
+ TBTTTSView(Application& mApplication, app_control_h _control);
+
+ template<class X, typename Ret, typename Arg0>
+ PushButton CreateButton(TableView parent, TableView::CellPosition cellPosition, Vector3 anchorPoint,
+ Vector3 position, std::string label, X* obj, Ret (X::*onClickedCallback)(Arg0 arg0),
+ Vector4 selectedColor, Vector4 unselectedColor, Vector2 size);
+
+ void updateViewControls();
+
+ virtual bool OnPlayButtonClicked(Button button);
+
+ virtual bool OnInterruptButtonClicked(Button button);
+
+ virtual bool OnStopButtonClicked(Button button);
+
+};
+
+#endif // __TBT_MODULE_APP_DALI_TTS
+
--- /dev/null
+{
+ "styles":
+ {
+ "textlabel":
+ {
+ "fontStyle":"Italy",
+ "pointSize":18
+ },
+ "testbutton":
+ {
+ "backgroundColor":[1.0,0.0,0.0,1.0],
+ "foregroundColor":[0.0,1.0,1.0,1.0]
+ }
+ }
+}
--- /dev/null
+#include <app.h>
+#include <string.h>
+#include <dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+#include "utils/logger.h"
+#include "view/tbt-dali-common-view.h"
+#include "view/tbt-dali-actor-view.h"
+#include "view/tbt-dali-stage-view.h"
+#include "view/tbt-dali-tts-view.h"
+#include "view/tbt-dali-scroll-view.h"
+#include "view/tbt-dali-touch-data-view.h"
+#include "view/tbt-dali-button-view.h"
+#include "view/tbt-dali-slider-view.h"
+#include "view/tbt-dali-text-control-view.h"
+#include "view/tbt-dali-keyboard-focus-manager-view.h"
+#include "view/tbt-dali-accessibility-manager-view.h"
+#include "view/tbt-dali-gesture-detector-view.h"
+#include "view/tbt-dali-style-manager-view.h"
+//#include "view/tbt-dali-scroll-bar-view.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+// This example shows how to create and display Hello World using a simple TextLabel
+//
+class DaliTestController : public ConnectionTracker
+{
+public:
+
+ DaliTestController( Application& application ) : mApplication( application )
+ {
+ // Connect to the Application's init signal
+ DBG(">>>>>>In DaliTestController");
+ mApplication.InitSignal().Connect( this, &DaliTestController::Create );
+ mApplication.AppControlSignal().Connect(this, &DaliTestController::AppControl);
+ cView = NULL;
+ moduleName = NULL;
+ msg="";
+ }
+
+ ~DaliTestController()
+ {
+ // Nothing to do here
+ }
+
+ void Create( Application& application )
+ {
+ DBG(">>>>>>In Create");
+ // Get a handle to the stage
+ Stage stage = Stage::GetCurrent();
+// stage.GetRootLayer().TouchedSignal().Connect( this, &DaliTestController::OnTouch );
+ stage.KeyEventSignal().Connect( this, &DaliTestController::OnKeyEvent );
+ stage.SceneCreatedSignal().Connect( this, &DaliTestController::onSceneCreated );
+ }
+ void onSceneCreated()
+ {
+ DBG("In onSceneCreated");
+ msg="onSceneCreated";
+ }
+
+ bool OnTouch( Actor actor, const TouchEvent& event )
+ {
+ if(cView)
+ {
+ return cView->OnTouch(actor, event);
+ }
+ return true;
+ }
+
+ void OnKeyEvent( const KeyEvent& event )
+ {
+ if( event.state == KeyEvent::Down )
+ {
+ // Check if a key event is for a specific DALi key.
+ // Return true if the key is matched, or return false if not.
+ if( IsKey( event, DALI_KEY_ESCAPE ) || IsKey( event, DALI_KEY_BACK ) )
+ {
+ // Quit the application
+ mApplication.Quit();
+ }
+ }
+ }
+
+ void AppControl( Application& application, void* data )
+ {
+ DBG(">>>>>>In AppControl");
+ app_control_h app_control = (app_control_h)data;
+ char* category;
+ int result = app_control_get_operation(app_control,&category);
+ RETM_IF(APP_CONTROL_ERROR_NONE != result, "app_control_get_operation failed :%d", result);
+ app_control_clone (&_control, app_control);
+
+ if(!category)
+ {
+ return;
+ }
+ if(strcmp(category,APP_CONTROL_OPERATION_PICK)==0)
+ {
+ app_control_get_extra_data(app_control, "module_name", &moduleName);
+ if(strcmp(moduleName, "TBT_APP_DALI_TTS") == 0)
+ {
+ cView = new TBTTTSView(mApplication, _control);
+ }
+ else if(strcmp(moduleName, "TBT_APP_DALI_SCROLL") == 0)
+ {
+ cView = new TBTDaliScrollView(mApplication, _control);
+ }
+ else if(strcmp(moduleName, "TBT_APP_DALI_ACTOR") == 0)
+ {
+ cView = new TBTDaliActorView(mApplication, _control);
+ }
+ else if(strcmp(moduleName, "TBT_APP_DALI_STAGE") == 0)
+ {
+ cView = new TBTDaliStageView(mApplication, _control, msg);
+ }
+ else if(strcmp(moduleName, "TBT_APP_DALI_TOUCH_DATA") == 0)
+ {
+ cView = new TBTDaliTouchDataView(mApplication, _control);
+ }
+ else if(strcmp(moduleName, "TBT_APP_DALI_BUTTON") == 0)
+ {
+ cView = new TBTDaliButtonView(mApplication, _control);
+ }
+ else if(strcmp(moduleName, "TBT_APP_DALI_SLIDER") == 0)
+ {
+ cView = new TBTDaliSliderView(mApplication, _control);
+ }
+ else if(strcmp(moduleName, "TBT_APP_DALI_TEXT_CONTROL") == 0)
+ {
+ cView = new TBTDaliTextControlView(mApplication, _control);
+ }
+ else if(strcmp(moduleName, "TBT_APP_DALI_KEY_BOARD_FOCUS_MANAGER") == 0)
+ {
+ cView = new TBTDaliKeyBoardFocusManagerView(mApplication, _control);
+ }
+ else if(strcmp(moduleName, "TBT_APP_DALI_ACCESSIBILITY_MANAGER") == 0)
+ {
+ cView = new TBTDaliAccessibilityManagerView(mApplication, _control);
+ }
+ else if(strcmp(moduleName, "TBT_APP_DALI_GESTURE_DETECTOR") == 0)
+ {
+ cView = new TBTDaliGestureDetectorView(mApplication, _control);
+ }
+ else if(strcmp(moduleName, "TBT_APP_DALI_STYLE_MANAGER") == 0)
+ {
+ cView = new TBTDaliStyleManagerView(mApplication, _control);
+ }
+// else if(strcmp(moduleName, "TBT_APP_DALI_SCROLL_BAR") == 0)
+// {
+// cView = new TBTDaliScrollBarView(mApplication, _control);
+// }
+ }
+ }
+
+ private:
+ app_control_h _control;
+ Application& mApplication;
+ char* moduleName;
+ CommonView *cView;
+ std::string msg;
+};
+
+// Entry point for Tizen applications
+//
+int main( int argc, char **argv )
+{
+ Application application = Application::New( &argc, &argv );
+ DaliTestController test( application );
+ application.MainLoop(Configuration::APPLICATION_HANDLES_CONTEXT_LOSS);
+ return 0;
+}
--- /dev/null
+#include "utils/dali-ui-utils.h"
+#include "utils/logger.h"
+void get_screen_height_width(const char *key, int *value)
+{
+ int ret=system_info_get_platform_int (key, value);
+ if(ret!=SYSTEM_INFO_ERROR_NONE)
+ DBG("Unable to get screen size.");
+}
--- /dev/null
+#include "utils/type-cast.h"
+
+
+std::string IntToString ( int number )
+{
+ std::ostringstream oss;
+ // Works just like cout
+ oss<< number;
+ // Return the underlying string
+ return oss.str();
+}
+std::string FloatToString ( float number )
+{
+ std::ostringstream oss;
+ // Works just like cout
+ oss<< number;
+ // Return the underlying string
+ return oss.str();
+}
+std::string LongToString ( long number )
+{
+ std::ostringstream oss;
+ // Works just like cout
+ oss<< number;
+ // Return the underlying string
+ return oss.str();
+}
--- /dev/null
+#include "view/tbt-dali-accessibility-manager-view.h"
+
+TBTDaliAccessibilityManagerView::TBTDaliAccessibilityManagerView(Application& mApplication, app_control_h _control) :
+ CommonView(mApplication, _control) {
+
+ CommonView::Initialize();
+
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+
+ mAccessibilityManager = AccessibilityManager::Get();
+
+
+ mrootTable= TableView::New(9, 1);
+ mrootTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ mrootTable.SetSize(mStageSize.width, mStageSize.height - GetVerdictTableHeight());
+ mrootTable.SetPosition(0 , 0);
+ mrootTable.SetName("RootTable");
+ //mrootTable.SetKeyboardFocusable(true);
+ //mrootTable.SetFixedHeight(1, mStageSize.height - GetVerdictTableHeight());
+
+ mStage.Add(mrootTable);
+//
+// Dali::Toolkit::PushButton button = Dali::Toolkit::PushButton::New();
+// button.SetSize(480, 800);
+// Stage::GetCurrent().Add(button);
+// mAccessibilityManager.SetFocusOrder( button, 1 );
+// mAccessibilityManager.SetCurrentFocusActor( button );
+ mAccessibilityManager.ActionActivateSignal().Connect(this,&TBTDaliAccessibilityManagerView::OnAccessibilityActionSignalType);
+ mAccessibilityManager.ActionNextSignal().Connect(this, &TBTDaliAccessibilityManagerView::OnActionNextSignal);
+
+ Vector2 size(512,512);
+
+ lblActionActivate=CreateTextLabel(mrootTable,TableView::CellPosition(1,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"",size);
+ lblActionActivate.SetProperty(TextLabel::Property::TEXT,"Action activate signal not call");
+ lblActionActivate.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblActionActivate.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblActionActivate.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ //lblPreFocus.SetKeyboardFocusable(true);
+
+
+ btn1=PushButton::New();
+ btn1.SetLabelText("Up");
+ btn1.SetName("btnUp");
+ btn1.SetSize(mStageSize.width,100);
+ btn1.ClickedSignal().Connect(this,&TBTDaliAccessibilityManagerView::OnClick);
+ mrootTable.AddChild( btn1, TableView::CellPosition( 7, 0 ) );
+ mrootTable.SetCellAlignment( TableView::CellPosition( 7, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+ mAccessibilityManager.SetFocusOrder( btn1, 1 );
+ mAccessibilityManager.SetCurrentFocusActor( btn1 );
+
+ btn2=PushButton::New();
+ btn2.SetLabelText("Down");
+ btn2.SetName("btnDown");
+ btn2.SetSize(mStageSize.width,100);
+ //btn2.ClickedSignal().Connect(this,&TBTDaliAccessibilityManagerView::OnClick);
+ mrootTable.AddChild( btn2, TableView::CellPosition( 8, 0 ) );
+ mrootTable.SetCellAlignment( TableView::CellPosition( 8, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+ mAccessibilityManager.SetFocusOrder( btn2, 2 );
+ //mAccessibilityManager.SetCurrentFocusActor( btnActionActivate );
+
+}
+
+template<class X, typename Ret, typename Arg0>
+PushButton TBTDaliAccessibilityManagerView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+}
+TextLabel TBTDaliAccessibilityManagerView::CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size )
+{
+ TextLabel txtLabel=TextLabel::New(txt);
+ //txtLabel.SetSize(size);
+ //txtLabel.SetAnchorPoint(anchorPoint);
+ //txtLabel.SetPosition(position);
+ txtLabel.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT,"LEFT");
+ txtLabel.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT,"TOP");
+ txtLabel.SetProperty(TextLabel::Property::TEXT_COLOR, Color::RED);
+ txtLabel.SetProperty(TextLabel::Property::MULTI_LINE, true);
+ parent.AddChild(txtLabel,cellPosition);
+ return txtLabel;
+}
+
+bool TBTDaliAccessibilityManagerView::OnClick(Button button)
+{
+ DBG("In TBTDaliAccessibilityManagerView::OnClick");
+ mAccessibilityManager.MoveFocusForward();
+ mAccessibilityManager.SetCurrentFocusActor(btn2);
+ Actor actor=mAccessibilityManager.GetCurrentFocusActor();
+ std::string str=actor.GetName();
+
+// lblActionActivate.SetProperty(TextLabel::Property::TEXT,str);
+// lblActionActivate.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+ return true;
+}
+bool TBTDaliAccessibilityManagerView::OnAccessibilityActionSignalType( AccessibilityManager& manager )
+{
+ DBG("In TBTDaliAccessibilityManagerView::OnAccessibilityActionSignalType");
+ lblActionActivate.SetProperty(TextLabel::Property::TEXT,"Action activate signal called");
+ lblActionActivate.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+ return true;
+}
+bool TBTDaliAccessibilityManagerView::OnActionNextSignal(AccessibilityManager& manager)
+{
+ DBG("In TBTDaliAccessibilityManagerView::OnActionNextSignal");
+ return true;
+}
--- /dev/null
+#include "view/tbt-dali-actor-view.h"
+
+std::string GetState ( TouchPoint::State state )
+{
+ std::string ret="";
+ switch(state)
+ {
+ case TouchPoint::Started:
+ {
+ if(TouchPoint::Started==state)
+ ret="Started";
+ else
+ ret="Down";
+ }
+ break;
+
+ case TouchPoint::Finished:
+ {
+ if(TouchPoint::Finished==state)
+ ret="Finished";
+ else
+ ret="Up";
+ }
+ break;
+
+ case TouchPoint::Motion:
+ ret="Motion";
+ break;
+
+ case TouchPoint::Leave:
+ ret="Leave";
+ break;
+
+ case TouchPoint::Stationary:
+ ret="Stationary";
+ break;
+
+ case TouchPoint::Interrupted:
+ ret="Interrupted";
+ break;
+
+ case TouchPoint::Last:
+ ret="Last";
+ break;
+
+ default:
+ ret="None";
+ break;
+ }
+ return ret;
+}
+
+std::string GetPointState ( PointState::Type state )
+{
+ std::string str="";
+ switch(state)
+ {
+ case PointState::STARTED:
+ str="STARTED/DOWN";
+ break;
+ case PointState::FINISHED:
+ str="FINISHED/UP";
+ break;
+ case PointState::MOTION:
+ str="MOTION";
+ break;
+ case PointState::LEAVE:
+ str="LEAVE";
+ break;
+ case PointState::STATIONARY:
+ str="STATIONARY";
+ break;
+ case PointState::INTERRUPTED:
+ str="INTERRUPTED";
+ break;
+ default:
+ str="None";
+ break;
+ }
+ return str;
+}
+
+
+TBTDaliActorView::TBTDaliActorView(Application& mApplication, app_control_h _control) :
+ CommonView(mApplication, _control)
+{
+ DBG("In TBTDaliActorView");
+
+ CommonView::Initialize();
+ float height= Stage::GetCurrent().GetSize().height;
+ float width=Stage::GetCurrent().GetSize().width;
+
+ TableView rootTable = TableView::New(7, 1);
+ rootTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ rootTable.SetParentOrigin(ParentOrigin::TOP_LEFT);
+ rootTable.SetSize(width, height - GetVerdictTableHeight()-100);
+ rootTable.SetPosition(0.0f,0.0f);
+ Stage::GetCurrent().Add(rootTable);
+
+ Vector2 size(width, GetVerdictTableHeight());
+
+ txtTouched=CreateTextLabel(rootTable,TableView::CellPosition(1,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Touched signal not call",size);
+ txtTouchEventData=CreateTextLabel(rootTable,TableView::CellPosition(2,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Touched event data",size);
+ //txtTouch=CreateTextLabel(rootTable,TableView::CellPosition(3,0),AnchorPoint::CENTER_LEFT,AnchorPoint::BOTTOM_LEFT,"Touch signal not call",size);
+ //txtTouchData=CreateTextLabel(rootTable,TableView::CellPosition(4,0),AnchorPoint::CENTER_LEFT,AnchorPoint::BOTTOM_LEFT,"Touch data",size);
+ txtHovered=CreateTextLabel(rootTable,TableView::CellPosition(3,0),AnchorPoint::CENTER_LEFT,AnchorPoint::BOTTOM_LEFT,"Hover signal not call",size);
+ txtHoveredData=CreateTextLabel(rootTable,TableView::CellPosition(4,0),AnchorPoint::TOP_LEFT,AnchorPoint::TOP_LEFT,"Hover signal data",size);
+ txtWheel=CreateTextLabel(rootTable,TableView::CellPosition(5,0),AnchorPoint::CENTER_LEFT,AnchorPoint::BOTTOM_LEFT,"Wheel signal not call",size);
+
+ rootTable.SetCellAlignment(TableView::CellPosition(1,0),HorizontalAlignment::LEFT,VerticalAlignment::CENTER);
+ rootTable.SetCellAlignment(TableView::CellPosition(3,0),HorizontalAlignment::LEFT,VerticalAlignment::CENTER);
+ rootTable.SetCellAlignment(TableView::CellPosition(5,0),HorizontalAlignment::LEFT,VerticalAlignment::CENTER);
+
+ rootTable.SetCellAlignment(TableView::CellPosition(2,0),HorizontalAlignment::LEFT,VerticalAlignment::TOP);
+ rootTable.SetCellAlignment(TableView::CellPosition(4,0),HorizontalAlignment::LEFT,VerticalAlignment::TOP);
+
+ btnButton=CreateButton(rootTable, TableView::CellPosition(6, 0),
+ AnchorPoint::BOTTOM_LEFT, AnchorPoint::BOTTOM_LEFT, "Test Button",
+ this, &TBTDaliActorView::cbButtonClicked,
+ Vector4(0.55f, 0.8f, 0.9f, 1.0f), Vector4(0.8f, 0.9f, 0.9f, 1.0f),size);
+
+ btnButton.TouchedSignal().Connect(this, &TBTDaliActorView::cbTouchedSignal);
+ //btnButton.TouchSignal().Connect(this, &TBTDaliActorView::cbTouchSignal);
+ btnButton.HoveredSignal().Connect(this, &TBTDaliActorView::cbHoveredSignal);
+ btnButton.WheelEventSignal().Connect(this, &TBTDaliActorView::cbWheelEventSignal);
+ btnButton.ClickedSignal().Connect(this, &TBTDaliActorView::cbButtonClicked);
+}
+template<class X, typename Ret, typename Arg0>
+PushButton TBTDaliActorView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+}
+TextLabel TBTDaliActorView::CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size )
+{
+ TextLabel txtLabel=TextLabel::New(txt);
+ txtLabel.SetSize(size);
+ txtLabel.SetAnchorPoint(anchorPoint);
+ //txtLabel.SetPosition(position);
+ txtLabel.SetParentOrigin(ParentOrigin::TOP_LEFT);
+ txtLabel.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT,"LEFT");
+ txtLabel.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT,"TOP");
+ txtLabel.SetProperty(TextLabel::Property::TEXT_COLOR, Color::RED);
+ txtLabel.SetProperty(TextLabel::Property::MULTI_LINE, true);
+ parent.AddChild(txtLabel,cellPosition);
+ return txtLabel;
+}
+
+bool TBTDaliActorView::cbTouchedSignal(Actor actor, const TouchEvent& event)
+{
+ DBG("In cbTouchedSignal");
+ this->txtTouched.SetProperty( TextLabel::Property::TEXT, "Touched Signal is Called" );
+ this->txtTouched.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+
+ std::string txt="";
+ //point count
+ int pointcount=event.GetPointCount();
+ txt.append("Point count: ");
+ txt.append(IntToString(pointcount));
+
+ //getpoint by index
+ TouchPoint touchpoint=event.GetPoint(0);
+ //device id
+ int deviceId=touchpoint.deviceId;
+ txt.append(" DeviceId: ");
+ txt.append(IntToString(deviceId));
+ //touch point count
+ int touchcount=event.GetPointCount();
+ if(touchcount<1)
+ DBG("Unable to get GetPointCount");
+ txt.append(", Point count: ");
+ txt.append(IntToString(touchcount));
+
+ //
+ Actor hitActor=touchpoint.hitActor;
+ PushButton btn=PushButton::DownCast(hitActor);
+ txt.append(", Hit Actor: ");
+ txt.append(btn.GetLabelText());
+
+ //state
+ txt.append(", State: ");
+ txt.append(GetState(touchpoint.state));
+
+ //local point
+ Vector2 local=touchpoint.local;
+ txt.append(", Hit actor point: ");
+ txt.append("("+IntToString(local.x)+","+IntToString(local.y)+")");
+
+ //screen point
+ Vector2 screen=touchpoint.screen;
+ txt.append(", Screen point: ");
+ txt.append("("+IntToString(screen.x)+","+IntToString(screen.y)+")");
+
+ //time
+ unsigned long time=event.time/1000;
+ txt.append(", Touch time: ");
+ int hr=(time/3600)%24;
+ int sec=time%3600;
+ int min=sec/60;
+ sec=sec%60;
+ txt.append(LongToString(hr)+":"+LongToString(min)+":"+LongToString(sec));
+
+ //touch point container
+ TouchPointContainer touchcontainer=event.points;
+ txt.append(", Touch list count: ");
+ txt.append(IntToString(touchcontainer.size()));
+
+ this->txtTouchEventData.SetProperty( TextLabel::Property::TEXT, txt );
+ this->txtTouchEventData.SetProperty( TextLabel::Property::POINT_SIZE, 7.0f );
+ this->txtTouchEventData.SetProperty(TextLabel::Property::TEXT_COLOR,Color::CYAN);
+
+ return true;
+}
+bool TBTDaliActorView::cbTouchSignal(Actor actor, const TouchData& data)
+{
+ DBG("In cbTouchSignal");
+
+ this->txtTouch.SetProperty( TextLabel::Property::TEXT, "Touch Signal is Called" );
+ this->txtTouch.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+
+ std::string txt="";
+ //time
+ unsigned long time=data.GetTime()/1000;
+ txt.append("Touch time: ");
+ int hr=(time/3600)%24;
+ int sec=time%3600;
+ int min=sec/60;
+ sec=sec%60;
+ txt.append(LongToString(hr)+":"+LongToString(min)+":"+LongToString(sec));
+
+ //point count
+ int count=data.GetPointCount();
+ txt.append(", Point count: ");
+ txt.append(IntToString(count));
+
+ //
+ int id=data.GetDeviceId(data.GetPointCount());
+ txt.append(", DeviceId: ");
+ txt.append(IntToString(id));
+
+ //state
+ txt.append(", State: ");
+ txt.append(GetPointState(data.GetState(data.GetPointCount())));
+
+
+ this->txtTouchData.SetProperty( TextLabel::Property::TEXT, txt );
+ this->txtTouchData.SetProperty( TextLabel::Property::POINT_SIZE, 7.0f );
+ this->txtTouchData.SetProperty(TextLabel::Property::TEXT_COLOR,Color::CYAN);
+
+ return true;
+}
+
+bool TBTDaliActorView::cbHoveredSignal(Actor actor, const HoverEvent& event)
+{
+ DBG("In cbHoveredSignal");
+ this->txtHovered.SetProperty( TextLabel::Property::TEXT, "Hover Signal is Called" );
+ this->txtHovered.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+
+ TouchPoint touchpoint=event.GetPoint(0);
+ std::string txt="";
+
+ //device id
+ int deviceId=touchpoint.deviceId;
+ txt.append("DeviceId: ");
+ txt.append(IntToString(deviceId));
+ //touch point count
+ int touchcount=event.GetPointCount();
+ if(touchcount<1)
+ DBG("Unable to get GetPointCount");
+ txt.append(", Point count: ");
+ txt.append(IntToString(touchcount));
+
+ //
+ Actor hitActor=touchpoint.hitActor;
+ PushButton btn=PushButton::DownCast(hitActor);
+ txt.append(", Hit Actor: ");
+ txt.append(btn.GetLabelText());
+
+ //state
+ txt.append(", State: ");
+ txt.append(GetState(touchpoint.state));
+
+ //local point
+ Vector2 local=touchpoint.local;
+ txt.append(", Hit actor point: ");
+ txt.append("("+IntToString(local.x)+","+IntToString(local.y)+")");
+
+ //screen point
+ Vector2 screen=touchpoint.screen;
+ txt.append(", Screen point: ");
+ txt.append("("+IntToString(screen.x)+","+IntToString(screen.y)+")");
+
+ //time
+ unsigned long time=event.time/1000;
+ txt.append(", Touch time: ");
+ int hr=(time/3600)%24;
+ int sec=time%3600;
+ int min=sec/60;
+ sec=sec%60;
+ txt.append(LongToString(hr)+":"+LongToString(min)+":"+LongToString(sec));
+
+ //touch point container
+ TouchPointContainer touchcontainer=event.points;
+ txt.append(", Touch list count: ");
+ txt.append(IntToString(touchcontainer.size()));
+
+ this->txtHoveredData.SetProperty( TextLabel::Property::TEXT, txt );
+ this->txtHoveredData.SetProperty( TextLabel::Property::POINT_SIZE, 7.0f );
+ this->txtHoveredData.SetProperty(TextLabel::Property::TEXT_COLOR,Color::CYAN);
+
+ return true;
+}
+bool TBTDaliActorView::cbWheelEventSignal(Actor actor, const WheelEvent& event)
+{
+ DBG("In cbWheelEventSignal");
+ this->txtWheel.SetProperty( TextLabel::Property::TEXT, "Wheel Signal is Called" );
+ this->txtWheel.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+ return true;
+}
+bool TBTDaliActorView::cbButtonClicked(Button button)
+{
+ DBG("In cbButtonClicked");
+ return true;
+}
--- /dev/null
+#include "view/tbt-dali-button-view.h"
+
+TBTDaliButtonView::TBTDaliButtonView(Application& mApplication, app_control_h _control) :
+ CommonView(mApplication, _control) {
+
+ CommonView::Initialize();
+
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+
+ mrootTable= TableView::New(7, 1);
+ mrootTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ mrootTable.SetSize(mStageSize.width, mStageSize.height - GetVerdictTableHeight());
+ mrootTable.SetPosition(0 , 0);
+ mrootTable.SetName("RootTable");
+ //mrootTable.SetFixedHeight(1, mStageSize.height - GetVerdictTableHeight());
+ mStage.Add(mrootTable);
+
+ Vector2 size(512,512);
+
+ txtClick=CreateTextLabel(mrootTable,TableView::CellPosition(1,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Button click signal not call",size);
+ txtClick.SetProperty(TextLabel::Property::TEXT,"Button click event not call");
+ txtClick.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ txtClick.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ txtClick.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+
+ txtPress=CreateTextLabel(mrootTable,TableView::CellPosition(2,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Button press signal not call",size);
+ txtPress.SetProperty(TextLabel::Property::TEXT,"Button press event not call");
+ txtPress.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ txtPress.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ txtPress.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+
+ txtRelease=CreateTextLabel(mrootTable,TableView::CellPosition(3,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Button release signal not call",size);
+ txtRelease.SetProperty(TextLabel::Property::TEXT,"Button release event not call");
+ txtRelease.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ txtRelease.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ txtRelease.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+
+ btnTest=CreateButton(mrootTable, TableView::CellPosition(5, 0),
+ AnchorPoint::BOTTOM_LEFT, AnchorPoint::BOTTOM_LEFT, "Test Button",
+ this, &TBTDaliButtonView::onClicked,
+ Vector4(0.55f, 0.8f, 0.9f, 1.0f), Vector4(0.8f, 0.9f, 0.9f, 1.0f),Vector2(mStageSize.width,GetVerdictTableHeight()));
+
+ btnTest.ClickedSignal().Connect(this,&TBTDaliButtonView::onClicked);
+ btnTest.PressedSignal().Connect(this,&TBTDaliButtonView::onPressed);
+ btnTest.ReleasedSignal().Connect(this,&TBTDaliButtonView::onReleased);
+
+ mStage.Add( mrootTable );
+}
+
+template<class X, typename Ret, typename Arg0>
+PushButton TBTDaliButtonView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+}
+TextLabel TBTDaliButtonView::CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size )
+{
+ TextLabel txtLabel=TextLabel::New(txt);
+ //txtLabel.SetSize(size);
+ //txtLabel.SetAnchorPoint(anchorPoint);
+ //txtLabel.SetPosition(position);
+ txtLabel.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT,"LEFT");
+ txtLabel.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT,"TOP");
+ txtLabel.SetProperty(TextLabel::Property::TEXT_COLOR, Color::RED);
+ txtLabel.SetProperty(TextLabel::Property::MULTI_LINE, true);
+ parent.AddChild(txtLabel,cellPosition);
+ return txtLabel;
+}
+bool TBTDaliButtonView::onClicked(Button button)
+{
+ DBG("In TBTDaliButtonView::onClicked");
+ this->txtClick.SetProperty( TextLabel::Property::TEXT, "Button clicked signal called" );
+ this->txtClick.SetProperty( TextLabel::Property::POINT_SIZE, 8.0f );
+ this->txtClick.SetProperty( TextLabel::Property::TEXT_COLOR,Color::CYAN);
+ return true;
+}
+bool TBTDaliButtonView::onPressed(Button button)
+{
+ DBG("In TBTDaliButtonView::onPressed");
+ this->txtPress.SetProperty( TextLabel::Property::TEXT, "Button pressed signal called" );
+ this->txtPress.SetProperty( TextLabel::Property::POINT_SIZE, 8.0f );
+ this->txtPress.SetProperty( TextLabel::Property::TEXT_COLOR,Color::CYAN);
+ return true;
+}
+bool TBTDaliButtonView::onReleased(Button button)
+{
+ DBG("In TBTDaliButtonView::onReleased");
+ this->txtRelease.SetProperty( TextLabel::Property::TEXT, "Button released signal called" );
+ this->txtRelease.SetProperty( TextLabel::Property::POINT_SIZE, 8.0f );
+ this->txtRelease.SetProperty( TextLabel::Property::TEXT_COLOR,Color::CYAN);
+ return true;
+}
--- /dev/null
+#include "view/tbt-dali-common-view.h"
+
+using namespace Dali;
+using namespace Dali::Toolkit;
+
+CommonView::CommonView(Application& mApplication, app_control_h _control) {
+
+ DBG("In CommonView");
+ this->mApplication = mApplication;
+ this->_control = _control;
+ this->verdictTableHeight = 0;
+}
+
+void CommonView::Initialize() {
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+ mStage.SetBackgroundColor(Color::WHITE);
+ verdictTableHeight = mStageSize.height / 8;
+
+ TableView verdictTable = TableView::New(1, 3);
+ verdictTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ verdictTable.SetSize(mStageSize.width, verdictTableHeight);
+ verdictTable.SetPosition(0, mStageSize.height-verdictTableHeight);
+ mStage.Add(verdictTable);
+
+ Vector2 size(mStageSize.width / 3, verdictTableHeight);
+
+ passButton = CreateButton(verdictTable, TableView::CellPosition(0, 0), AnchorPoint::BOTTOM_LEFT, AnchorPoint::BOTTOM_LEFT, "Pass", this, &CommonView::OnPassButtonClicked, Vector4(0.55f, 0.8f, 0.9f, 1.0f), Vector4(0.8f, 0.9f, 0.9f, 1.0f),size);
+ failButton = CreateButton(verdictTable, TableView::CellPosition(0, 1), AnchorPoint::BOTTOM_LEFT, AnchorPoint::BOTTOM_LEFT, "Fail", this, &CommonView::OnFailButtonClicked, Vector4(0.55f, 0.8f, 0.9f, 1.0f), Vector4(0.8f, 0.9f, 0.9f, 1.0f),size);
+ infoButton = CreateButton(verdictTable, TableView::CellPosition(0, 2), AnchorPoint::BOTTOM_LEFT, AnchorPoint::BOTTOM_LEFT, "Info", this, &CommonView::OnInfoButtonClicked, Vector4(0.55f, 0.8f, 0.9f, 1.0f), Vector4(0.8f, 0.9f, 0.9f, 1.0f),size);
+
+}
+float CommonView::GetVerdictTableHeight() {
+ return verdictTableHeight;
+}
+
+template<class X, typename Ret, typename Arg0>
+PushButton CommonView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+
+}
+
+
+TextField CommonView::CreateTextField(const Vector2& size, const std::string& text) {
+ TextField field = TextField::New();
+ field.SetSize(size);
+ field.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ field.SetParentOrigin(ParentOrigin::TOP_LEFT);
+ field.SetProperty(TextField::Property::TEXT, text);
+ field.SetProperty(TextField::Property::TEXT_COLOR, Color::BLACK);
+ field.SetProperty(TextField::Property::PLACEHOLDER_TEXT,
+ "Edit text here");
+ field.SetProperty(TextField::Property::VERTICAL_ALIGNMENT, "CENTER");
+ field.SetProperty(TextField::Property::HORIZONTAL_ALIGNMENT, "CENTER");
+ field.SetProperty(TextField::Property::POINT_SIZE, 10.0f);
+ Image image = ResourceImage::New(
+ get_resource_path("/images/text-field-bg.9.png"));
+ field.SetBackgroundImage(image);
+
+ return field;
+}
+bool CommonView::OnPassButtonClicked(Button button) {
+ DBG("OnPassButtonClicked");
+
+ app_control_h reply;
+ int nStatus = app_control_create(&reply);
+
+ app_control_result_e res = APP_CONTROL_RESULT_SUCCEEDED;
+ nStatus = app_control_reply_to_launch_request(reply, _control, res);
+ DBG("app_control_reply_to_launch_request=%s", nStatus);
+
+ this->mApplication.Quit();
+ return true;
+}
+
+bool CommonView::OnFailButtonClicked(Button button) {
+ DBG("OnFailButtonClicked");
+
+ app_control_h reply;
+ int nStatus = app_control_create(&reply);
+
+ app_control_result_e res = APP_CONTROL_RESULT_FAILED;
+ nStatus = app_control_reply_to_launch_request(reply, _control, res);
+ DBG("app_control_reply_to_launch_request=%s", nStatus);
+ this->mApplication.Quit();
+ return true;
+}
+
+bool CommonView::OnInfoButtonClicked(Button button) {
+ DBG("OnInfoButtonClicked");
+ Evas_Object *popup = elm_popup_add(NULL);
+ RETVM_IF(NULL == popup, false, "popup is not created");
+ elm_object_part_text_set(popup, "title,text", "amlan");
+ evas_object_show(popup);
+ //eext_object_event_callback_add(popup, EEXT_CALLBACK_BACK, _eext_popup_back_cb, NULL);
+ return true;
+}
+
+bool CommonView::OnTouch(Actor actor, const TouchEvent& event) {
+ // Quit the application
+ //mApplication.Quit();
+ return true;
+}
+
+void CommonView::OnKeyEvent(const KeyEvent& event) {
+ if (event.state == KeyEvent::Down) {
+ if (IsKey(event, DALI_KEY_ESCAPE) || IsKey(event, DALI_KEY_BACK)) {
+ app_control_h reply;
+ int nStatus = app_control_create(&reply);
+
+ app_control_result_e res = APP_CONTROL_RESULT_CANCELED;
+ nStatus = app_control_reply_to_launch_request(reply, _control, res);
+ DBG("app_control_reply_to_launch_request=%s", nStatus);
+ this->mApplication.Quit();
+ }
+ }
+}
+float CommonView::GetScreenHeight()
+{
+ return Stage::GetCurrent().GetSize().height;
+}
+
+float CommonView::GetScreenWidth()
+{
+ return Stage::GetCurrent().GetSize().width;
+}
--- /dev/null
+#include "view/tbt-dali-gesture-detector-view.h"
+
+TBTDaliGestureDetectorView::TBTDaliGestureDetectorView(Application& mApplication, app_control_h _control) :
+ CommonView(mApplication, _control) {
+
+ CommonView::Initialize();
+
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+
+ mrootTable= TableView::New(9, 1);
+ mrootTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ mrootTable.SetSize(mStageSize.width, mStageSize.height - GetVerdictTableHeight());
+ mrootTable.SetPosition(0 , 0);
+ mrootTable.SetName("RootTable");
+ //mrootTable.SetKeyboardFocusable(true);
+ //mrootTable.SetFixedHeight(1, mStageSize.height - GetVerdictTableHeight());
+
+ mStage.Add(mrootTable);
+ Vector2 size(512,512);
+
+ lblLongPress=CreateTextLabel(mrootTable,TableView::CellPosition(1,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"",size);
+ lblLongPress.SetProperty(TextLabel::Property::TEXT,"Long press gesture detector signal not call");
+ lblLongPress.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblLongPress.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblLongPress.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ //lblPreFocus.SetKeyboardFocusable(true);
+
+ lblPinch=CreateTextLabel(mrootTable,TableView::CellPosition(2,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"",size);
+ lblPinch.SetProperty(TextLabel::Property::TEXT,"Pinch gesture detector signal not call");
+ lblPinch.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblPinch.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblPinch.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ //lblPreFocus.SetKeyboardFocusable(true);
+
+
+ lblpan=CreateTextLabel(mrootTable,TableView::CellPosition(3,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"",size);
+ lblpan.SetProperty(TextLabel::Property::TEXT,"Pan gesture detector signal not call");
+ lblpan.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblpan.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblpan.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ //lblPreFocus.SetKeyboardFocusable(true);
+
+ longpressgesture=LongPressGestureDetector::New();
+ longpressgesture.Attach(mrootTable);
+ longpressgesture.DetectedSignal().Connect(this, &TBTDaliGestureDetectorView::OnLongPressGestureDetector);
+
+ pinchgesture=PinchGestureDetector::New();
+ pinchgesture.Attach(mrootTable);
+ pinchgesture.DetectedSignal().Connect(this, &TBTDaliGestureDetectorView::OnPinchGestureDetector);
+
+ panGesture=PanGestureDetector::New();
+ panGesture.Attach(mrootTable);
+ panGesture.DetectedSignal().Connect(this, &TBTDaliGestureDetectorView::OnPanGestureDetector);
+}
+
+template<class X, typename Ret, typename Arg0>
+PushButton TBTDaliGestureDetectorView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+}
+TextLabel TBTDaliGestureDetectorView::CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size )
+{
+ TextLabel txtLabel=TextLabel::New(txt);
+ //txtLabel.SetSize(size);
+ //txtLabel.SetAnchorPoint(anchorPoint);
+ //txtLabel.SetPosition(position);
+ txtLabel.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT,"LEFT");
+ txtLabel.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT,"TOP");
+ txtLabel.SetProperty(TextLabel::Property::TEXT_COLOR, Color::RED);
+ txtLabel.SetProperty(TextLabel::Property::MULTI_LINE, true);
+ parent.AddChild(txtLabel,cellPosition);
+ return txtLabel;
+}
+void TBTDaliGestureDetectorView::OnLongPressGestureDetector(Actor actor, const LongPressGesture& gesture)
+{
+ DBG("In TBTDaliGestureDetectorView::OnLongPressGestureDetector");
+ lblLongPress.SetProperty(TextLabel::Property::TEXT,"Long press gesture detector signal called");
+ lblLongPress.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+void TBTDaliGestureDetectorView::OnPinchGestureDetector(Actor actor, const PinchGesture& gesture)
+{
+ DBG("In TBTDaliGestureDetectorView::OnPinchGestureDetector");
+ lblPinch.SetProperty(TextLabel::Property::TEXT,"Pinch gesture detector signal called");
+ lblPinch.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+
+void TBTDaliGestureDetectorView::OnPanGestureDetector(Actor actor, const PanGesture& gesture)
+{
+ DBG("In TBTDaliGestureDetectorView::OnPanGestureDetector");
+ lblpan.SetProperty(TextLabel::Property::TEXT,"Pan gesture detector signal called");
+ lblpan.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
--- /dev/null
+#include "view/tbt-dali-keyboard-focus-manager-view.h"
+
+TBTDaliKeyBoardFocusManagerView::TBTDaliKeyBoardFocusManagerView(Application& mApplication, app_control_h _control) :
+ CommonView(mApplication, _control) {
+
+ CommonView::Initialize();
+
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+
+ mFocusManager = KeyboardFocusManager::Get();
+
+ mrootTable= TableView::New(10, 1);
+ mrootTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ mrootTable.SetSize(mStageSize.width, mStageSize.height - GetVerdictTableHeight());
+ mrootTable.SetPosition(0 , 0);
+ mrootTable.SetName("RootTable");
+ mrootTable.SetKeyboardFocusable(true);
+ mFocusManager.SetAsFocusGroup(mrootTable,true);
+ //mrootTable.SetFixedHeight(1, mStageSize.height - GetVerdictTableHeight());
+ mStage.Add(mrootTable);
+
+ Vector2 size(512,512);
+
+ lblPreFocus=CreateTextLabel(mrootTable,TableView::CellPosition(1,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"",size);
+ lblPreFocus.SetProperty(TextLabel::Property::TEXT,"Prefocus signal not call");
+ lblPreFocus.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblPreFocus.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblPreFocus.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ //lblPreFocus.SetKeyboardFocusable(true);
+
+ lblFocusChange=CreateTextLabel(mrootTable,TableView::CellPosition(2,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"",size);
+ lblFocusChange.SetProperty(TextLabel::Property::TEXT,"Focus change signal not call");
+ lblFocusChange.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblFocusChange.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblFocusChange.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ //lblFocusChange.SetKeyboardFocusable(true);
+
+ lblFocusGroup=CreateTextLabel(mrootTable,TableView::CellPosition(3,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"",size);
+ lblFocusGroup.SetProperty(TextLabel::Property::TEXT,"Focus group signal not call");
+ lblFocusGroup.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblFocusGroup.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblFocusGroup.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ //lblFocusGroup.SetKeyboardFocusable(true);
+
+ lblFocusActor=CreateTextLabel(mrootTable,TableView::CellPosition(4,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"",size);
+ lblFocusActor.SetProperty(TextLabel::Property::TEXT,"Focus actor signal not call");
+ lblFocusActor.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblFocusActor.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblFocusActor.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ //lblFocusActor.SetKeyboardFocusable(true);
+
+ txt1=TextField::New();
+ txt1.SetProperty(TextField::Property::TEXT,"Type here..");
+ mrootTable.AddChild( txt1, TableView::CellPosition( 5, 0 ) );
+ mrootTable.SetCellAlignment( TableView::CellPosition( 5, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+ //txt1.SetKeyInputFocus();
+ txt1.SetKeyboardFocusable(true);
+ //mFocusManager.SetCurrentFocusActor(txt1);
+
+ txt2=TextEditor::New();
+ txt2.SetProperty(TextField::Property::TEXT,"Type here..");
+ mrootTable.AddChild( txt2, TableView::CellPosition( 6, 0 ) );
+ mrootTable.SetCellAlignment( TableView::CellPosition( 6, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+ //txt2.SetKeyInputFocus();
+ txt2.SetKeyboardFocusable(true);
+
+ btnUp=PushButton::New();
+ btnUp.SetLabelText("Up");
+ btnUp.SetName("btnUp");
+ btnUp.SetSize(mStageSize.width,100);
+ btnUp.ClickedSignal().Connect(this,&TBTDaliKeyBoardFocusManagerView::OnUpClick);
+ mrootTable.AddChild( btnUp, TableView::CellPosition( 8, 0 ) );
+ mrootTable.SetCellAlignment( TableView::CellPosition( 8, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+ btnDown=PushButton::New();
+ btnDown.SetLabelText("Down");
+ btnDown.SetName("btnUp");
+ btnDown.SetSize(mStageSize.width,100);
+ btnDown.ClickedSignal().Connect(this,&TBTDaliKeyBoardFocusManagerView::OnDownClick);
+ mrootTable.AddChild( btnDown, TableView::CellPosition( 9, 0 ) );
+ mrootTable.SetCellAlignment( TableView::CellPosition( 9, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+ mrootTable.SetKeyboardFocusable( true );
+ mFocusManager.PreFocusChangeSignal().Connect( this, &TBTDaliKeyBoardFocusManagerView::OnPreFocusChange );
+ mFocusManager.FocusChangedSignal().Connect( this, &TBTDaliKeyBoardFocusManagerView::OnFocusChanged );
+ mFocusManager.FocusGroupChangedSignal().Connect( this, &TBTDaliKeyBoardFocusManagerView::OnFocusGroupChanged );
+ mFocusManager.FocusedActorEnterKeySignal().Connect( this, &TBTDaliKeyBoardFocusManagerView::OnFocusedActorEnterKey );
+}
+
+template<class X, typename Ret, typename Arg0>
+PushButton TBTDaliKeyBoardFocusManagerView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+}
+TextLabel TBTDaliKeyBoardFocusManagerView::CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size )
+{
+ TextLabel txtLabel=TextLabel::New(txt);
+ //txtLabel.SetSize(size);
+ //txtLabel.SetAnchorPoint(anchorPoint);
+ //txtLabel.SetPosition(position);
+ txtLabel.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT,"LEFT");
+ txtLabel.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT,"TOP");
+ txtLabel.SetProperty(TextLabel::Property::TEXT_COLOR, Color::RED);
+ txtLabel.SetProperty(TextLabel::Property::MULTI_LINE, true);
+ parent.AddChild(txtLabel,cellPosition);
+ return txtLabel;
+}
+
+Actor TBTDaliKeyBoardFocusManagerView::OnPreFocusChange(Actor current, Actor proposed, Control::KeyboardFocus::Direction direction)
+{
+ DBG("In TBTDaliKeyBoardFocusManagerView::OnPreFocusChange");
+ lblPreFocus.SetProperty(TextLabel::Property::TEXT," Pre focus signal called");
+ lblPreFocus.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+
+// if ( !current && !proposed )
+// {
+// return mrootTable;
+// }
+
+ return proposed;
+}
+void TBTDaliKeyBoardFocusManagerView::OnFocusChanged(Actor current, Actor proposed)
+{
+ DBG("In TBTDaliKeyBoardFocusManagerView::OnFocusChanged");
+
+ lblFocusChange.SetProperty(TextLabel::Property::TEXT," Focus change signal called");
+ lblFocusChange.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+void TBTDaliKeyBoardFocusManagerView::OnFocusGroupChanged(Actor actor, bool bValue)
+{
+ DBG("In TBTDaliKeyBoardFocusManagerView::OnFocusGroupChanged");
+
+ lblFocusGroup.SetProperty(TextLabel::Property::TEXT," Focus group change signal called");
+ lblFocusGroup.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+void TBTDaliKeyBoardFocusManagerView::OnFocusedActorEnterKey(Actor actor)
+{
+ DBG("In TBTDaliKeyBoardFocusManagerView::OnFocusedActorEnterKey");
+
+ lblFocusActor.SetProperty(TextLabel::Property::TEXT," Focus actor key signal called");
+ lblFocusActor.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+bool TBTDaliKeyBoardFocusManagerView::OnUpClick(Button button)
+{
+ DBG("In TBTDaliKeyBoardFocusManagerView::OnUpClick");
+ //mFocusManager.MoveFocus(Control::KeyboardFocus::UP);
+ mFocusManager.SetCurrentFocusActor(txt1);
+ //txt1.SetKeyInputFocus();
+ //mFocusManager.SetCurrentFocusActor(mrootTable);
+ return true;
+}
+bool TBTDaliKeyBoardFocusManagerView::OnDownClick(Button button)
+{
+ DBG("In TBTDaliKeyBoardFocusManagerView::OnDownClick");
+ //mFocusManager.MoveFocus(Control::KeyboardFocus::DOWN);
+ mFocusManager.SetCurrentFocusActor(txt2);
+ //txt2.SetKeyInputFocus();
+ //mFocusManager.SetFocusIndicatorActor(txt2);
+ return true;
+}
+
--- /dev/null
+#include "view/tbt-dali-scroll-bar-view.h"
+
+TBTDaliScrollBarView::TBTDaliScrollBarView(Application& mApplication, app_control_h _control) :
+ CommonView(mApplication, _control) {
+
+ CommonView::Initialize();
+
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+
+ mrootTable= TableView::New(7, 1);
+ mrootTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ mrootTable.SetSize(mStageSize.width, mStageSize.height - GetVerdictTableHeight());
+ mrootTable.SetPosition(0 , 0);
+ mrootTable.SetName("RootTable");
+ //mrootTable.SetKeyboardFocusable(true);
+ //mrootTable.SetFixedHeight(1, mStageSize.height - GetVerdictTableHeight());
+
+ mStage.Add(mrootTable);
+ Vector2 size(512,512);
+
+ lblScrollBar=CreateTextLabel(mrootTable,TableView::CellPosition(2,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"",size);
+ lblScrollBar.SetProperty(TextLabel::Property::TEXT,"Pan finished signal not call");
+ lblScrollBar.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblScrollBar.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblScrollBar.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ //lblPreFocus.SetKeyboardFocusable(true);
+
+ std::string str="Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali..."
+ "Hello dali...";
+
+ txtEditor=TextEditor::New();
+ txtEditor.SetProperty(TextEditor::Property::TEXT,str);
+ txtEditor.SetSize(mStageSize.width,500.0f);
+ mrootTable.AddChild( txtEditor, TableView::CellPosition( 3, 0 ) );
+ mrootTable.SetCellAlignment( TableView::CellPosition( 3, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+
+ scrollBar = ScrollBar::New(Toolkit::ScrollBar::Vertical);
+ scrollBar.SetParentOrigin(ParentOrigin::TOP_RIGHT);
+ scrollBar.SetAnchorPoint(AnchorPoint::TOP_RIGHT);
+ scrollBar.SetResizePolicy(Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::HEIGHT);
+ scrollBar.SetIndicatorFixedHeight(150.0f);
+ scrollBar.SetResizePolicy(Dali::ResizePolicy::FIT_TO_CHILDREN, Dali::Dimension::WIDTH);
+ txtEditor.Add(scrollBar);
+ scrollBar.PanFinishedSignal().Connect(this, &TBTDaliScrollBarView::OnPanFinishedSignal);
+}
+
+template<class X, typename Ret, typename Arg0>
+PushButton TBTDaliScrollBarView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+}
+TextLabel TBTDaliScrollBarView::CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size )
+{
+ TextLabel txtLabel=TextLabel::New(txt);
+ //txtLabel.SetSize(size);
+ //txtLabel.SetAnchorPoint(anchorPoint);
+ //txtLabel.SetPosition(position);
+ txtLabel.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT,"LEFT");
+ txtLabel.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT,"TOP");
+ txtLabel.SetProperty(TextLabel::Property::TEXT_COLOR, Color::RED);
+ txtLabel.SetProperty(TextLabel::Property::MULTI_LINE, true);
+ parent.AddChild(txtLabel,cellPosition);
+ return txtLabel;
+}
+void TBTDaliScrollBarView::OnPanFinishedSignal()
+{
+ DBG("In TBTDaliScrollBarView::OnPanFinishedSignal");
+ this->lblScrollBar.SetProperty( TextLabel::Property::TEXT, "Pan finished signal called" );
+ //this->lblStyleManager.SetProperty( TextLabel::Property::POINT_SIZE, 8.0f );
+ this->lblScrollBar.SetProperty( TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+
--- /dev/null
+#include "view/tbt-dali-scroll-view.h"
+
+TBTDaliScrollView::TBTDaliScrollView(Application& mApplication, app_control_h _control) :
+ CommonView(mApplication, _control) {
+ CommonView::Initialize();
+
+ NUM_IMAGES = 14;
+
+ for(int i=0 ;i<NUM_IMAGES;i++)
+ {
+ char image_name[255];
+ snprintf(image_name, 255, "/images/gallery-medium-%d.jpg", i+1);
+ IMAGE_PATHS[i] = (char*)get_resource_path(image_name);
+ }
+ // Create a ScrollView instance
+ ScrollView scrollView = ScrollView::New();
+ scrollView.SetParentOrigin( ParentOrigin::CENTER );
+ Stage stage = Stage::GetCurrent();
+ stage.Add(scrollView);
+
+ // Set the size of scrollView; it covers the entire stage
+ Size size = stage.GetSize();
+ scrollView.SetSize(size.width, size.height - this->GetVerdictTableHeight());
+
+ // Add actors to the ScrollView
+ for( int i = 0; i < NUM_IMAGES; ++i )
+ {
+ AddImage( scrollView, size, i );
+ }
+
+ // The ScrollView contents are now draggable
+ // To enforce horizontal-only scrolling, the Y axis ruler can be disabled
+ RulerPtr rulerY = new DefaultRuler();
+ rulerY->Disable();
+ scrollView.SetRulerY( rulerY );
+
+ // A domain can be applied to rulers to prevent scrolling beyond this boundary
+ // In this case, to 4 times the width of the stage, allowing for 4 pages to be scrolled
+ RulerPtr rulerX2 = new FixedRuler( size.width );
+ rulerX2->SetDomain( RulerDomain( 0.0f, size.width*NUM_IMAGES ) );
+ scrollView.SetRulerX( rulerX2 );
+
+
+ scrollView.SnapStartedSignal().Connect(this, &TBTDaliScrollView::SnapStartedSignalCallback);
+ scrollView.SetScrollingDirection(Radian(0));
+
+ scrollView.SetSnapOvershootAlphaFunction(AlphaFunction());
+ scrollView.SetSnapOvershootDuration(1);
+
+ scrollView.SetMaxOvershoot(1, 1);
+ scrollView.SetAxisAutoLock(true);
+
+ scrollView.RemoveScrollingDirection( Radian(0));
+ if(scrollView.GetAxisAutoLock() == false)
+ {
+ DBG("Error");
+ }
+ scrollBar = ScrollBar::New(Toolkit::ScrollBar::Horizontal);
+ scrollBar.SetParentOrigin(ParentOrigin::TOP_RIGHT);
+ scrollBar.SetAnchorPoint(AnchorPoint::TOP_RIGHT);
+ scrollBar.SetResizePolicy(Dali::ResizePolicy::FILL_TO_PARENT, Dali::Dimension::HEIGHT);
+ //scrollBar.SetIndicatorFixedHeight(500.0f);
+ scrollBar.SetResizePolicy(Dali::ResizePolicy::FIT_TO_CHILDREN, Dali::Dimension::WIDTH);
+ scrollView.Add(scrollBar);
+ scrollBar.PanFinishedSignal().Connect(this, &TBTDaliScrollView::OnPanFinishedSignal);
+
+ lblSnap=TextLabel::New("");
+ lblSnap.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ lblPan=TextLabel::New("");
+ lblPan.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+
+}
+void TBTDaliScrollView::OnPanFinishedSignal()
+{
+ DBG("In TBTDaliScrollView::OnPanFinishedSignal");
+ lblPan.SetPosition(0,GetVerdictTableHeight());
+ this->lblPan.SetProperty( TextLabel::Property::TEXT, "Pan finished signal called" );
+ //this->lblStyleManager.SetProperty( TextLabel::Property::POINT_SIZE, 8.0f );
+ this->lblPan.SetProperty( TextLabel::Property::TEXT_COLOR,Color::GREEN);
+ Stage::GetCurrent().Add(lblPan);
+}
+void TBTDaliScrollView::SnapStartedSignalCallback(const ScrollView::SnapEvent& event)
+{
+ DBG("TBTDaliScrollView::SnapStartedSignalCallback");
+ lblSnap.SetPosition(0,2*GetVerdictTableHeight());
+ this->lblSnap.SetProperty( TextLabel::Property::TEXT, "Snap started signal called" );
+ //this->lblStyleManager.SetProperty( TextLabel::Property::POINT_SIZE, 8.0f );
+ this->lblSnap.SetProperty( TextLabel::Property::TEXT_COLOR,Color::GREEN);
+ Stage::GetCurrent().Add(lblSnap);
+}
+void TBTDaliScrollView::AddImage( ScrollView& scrollView, Size& stageSize, int index )
+{
+ Image image = ResourceImage::New( IMAGE_PATHS[index]);
+ ImageView imageViewTest = ImageView::New( image );
+
+ ImageView imageView = ImageView::New();
+ imageView.SetImage(imageViewTest.GetImage());
+ imageView.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS );
+ imageView.SetSizeScalePolicy( SizeScalePolicy::FIT_WITH_ASPECT_RATIO );
+
+ imageView.SetParentOrigin( ParentOrigin::CENTER );
+ imageView.SetAnchorPoint( AnchorPoint::CENTER );
+
+ imageView.SetPosition( index * stageSize.x, 0 );
+ scrollView.Add( imageView );
+}
+
+void TBTDaliScrollView::updateViewControls() {
+
+}
--- /dev/null
+#include "view/tbt-dali-slider-view.h"
+
+TBTDaliSliderView::TBTDaliSliderView(Application& mApplication, app_control_h _control) :
+ CommonView(mApplication, _control) {
+
+ CommonView::Initialize();
+
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+
+ mrootTable= TableView::New(7, 2);
+ mrootTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ mrootTable.SetSize(mStageSize.width, mStageSize.height - GetVerdictTableHeight());
+ mrootTable.SetPosition(0 , 0);
+ mrootTable.SetName("RootTable");
+ //mrootTable.SetFixedHeight(1, mStageSize.height - GetVerdictTableHeight());
+ mStage.Add(mrootTable);
+
+ Vector2 size(512,512);
+
+ txtValueChanged=CreateTextLabel(mrootTable,TableView::CellPosition(1,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Button click signal not call",size);
+ txtValueChanged.SetProperty(TextLabel::Property::TEXT,"Slider value changed signal not call");
+ txtValueChanged.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ txtValueChanged.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ txtValueChanged.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+
+ txtFinished=CreateTextLabel(mrootTable,TableView::CellPosition(2,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Button press signal not call",size);
+ txtFinished.SetProperty(TextLabel::Property::TEXT,"Slider finished signal not call");
+ txtFinished.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ txtFinished.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ txtFinished.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+
+ txtMarkReached=CreateTextLabel(mrootTable,TableView::CellPosition(3,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Button release signal not call",size);
+ txtMarkReached.SetProperty(TextLabel::Property::TEXT,"Slider mark reached signal not call");
+ txtMarkReached.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ txtMarkReached.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ txtMarkReached.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+
+ slider=Slider::New();
+ slider.SetParentOrigin( ParentOrigin::CENTER );
+ slider.SetAnchorPoint( AnchorPoint::CENTER );
+ slider.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::WIDTH );
+ slider.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::HEIGHT );
+ Property::Array array;
+ array.Reserve(3);
+ array.PushBack(0.4f);
+ array.PushBack(0.6f);
+ array.PushBack(0.8f);
+ slider.SetProperty(Slider::Property::MARKS,array);
+ slider.ValueChangedSignal().Connect( this, &TBTDaliSliderView::onValueChanged );
+ slider.SlidingFinishedSignal().Connect( this, &TBTDaliSliderView::onSliningFinished );
+ slider.MarkReachedSignal().Connect( this, &TBTDaliSliderView::onMarkReached );
+
+ //Setup slider cell properties
+ mrootTable.AddChild( slider, TableView::CellPosition( 5, 0 ) );
+ mrootTable.SetCellAlignment( TableView::CellPosition( 5, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+ txtValue = TextLabel::New();
+ txtValue.SetParentOrigin( ParentOrigin::CENTER );
+ txtValue.SetAnchorPoint( AnchorPoint::CENTER );
+ txtValue.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS );
+
+ //Setup slider-label cell properties
+ mrootTable.AddChild( txtValue, TableView::CellPosition( 5, 1 ) );
+ mrootTable.SetCellAlignment( TableView::CellPosition( 5, 1 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+ mStage.Add( mrootTable );
+}
+
+template<class X, typename Ret, typename Arg0>
+PushButton TBTDaliSliderView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+}
+TextLabel TBTDaliSliderView::CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size )
+{
+ TextLabel txtLabel=TextLabel::New(txt);
+ //txtLabel.SetSize(size);
+ //txtLabel.SetAnchorPoint(anchorPoint);
+ //txtLabel.SetPosition(position);
+ txtLabel.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT,"LEFT");
+ txtLabel.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT,"TOP");
+ txtLabel.SetProperty(TextLabel::Property::TEXT_COLOR, Color::RED);
+ txtLabel.SetProperty(TextLabel::Property::MULTI_LINE, true);
+ parent.AddChild(txtLabel,cellPosition);
+ return txtLabel;
+}
+bool TBTDaliSliderView::onValueChanged(Slider slider,float value)
+{
+ DBG("TBTDaliSliderView::onValueChanged");
+ txtValueChanged.SetProperty(TextLabel::Property::TEXT,"Slider value changed signal called");
+ txtValueChanged.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+
+ txtValue.SetProperty(TextLabel::Property::TEXT,FloatToString(value));
+ txtValue.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+
+ return true;
+}
+bool TBTDaliSliderView::onSliningFinished(Slider slider,float value)
+{
+ DBG("TBTDaliSliderView::onSliningFinished");
+ txtFinished.SetProperty(TextLabel::Property::TEXT,"Slider finished signal called");
+ txtFinished.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+ return true;
+}
+bool TBTDaliSliderView::onMarkReached(Slider slider,int value)
+{
+ DBG("TBTDaliSliderView::onMarkReached");
+ txtMarkReached.SetProperty(TextLabel::Property::TEXT,"Slider mark reached signal called");
+ txtMarkReached.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+ return true;
+}
--- /dev/null
+#include "view/tbt-dali-stage-view.h"
+
+Application gApplication;
+
+TBTDaliStageView::TBTDaliStageView(Application& mApplication, app_control_h _control, std::string msg) :
+ CommonView(mApplication, _control) {
+
+ gApplication=mApplication;
+ CommonView::Initialize();
+
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+ bCheck=false;
+
+ mrootTable= TableView::New(12, 1);
+ mrootTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ mrootTable.SetSize(mStageSize.width, mStageSize.height - GetVerdictTableHeight());
+ mrootTable.SetPosition(0 , 0);
+ mStage.Add(mrootTable);
+
+ Vector2 size(512,512);
+
+ txtContext=CreateTextLabel(mrootTable,TableView::CellPosition(1,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Context lost signal not call",size);
+ txtContextRegain=CreateTextLabel(mrootTable,TableView::CellPosition(2,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Context regain signal not call",size);
+ txtEventProcessing=CreateTextLabel(mrootTable,TableView::CellPosition(3,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Event Processing signal not call",size);
+ txtKeyEvent=CreateTextLabel(mrootTable,TableView::CellPosition(4,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Key Event signal not call",size);
+ txtSceneCreated=CreateTextLabel(mrootTable,TableView::CellPosition(5,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Scene created signal not call",size);
+ txtTouched=CreateTextLabel(mrootTable,TableView::CellPosition(6,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Touched signal not call",size);
+ txtTouch= CreateTextLabel(mrootTable,TableView::CellPosition(7,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Touch signal not call",size);
+ txtWheel=CreateTextLabel(mrootTable,TableView::CellPosition(8,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Wheel event signal not call",size);
+
+ Dali::Toolkit::TextEditor txtEditor=Dali::Toolkit::TextEditor::New();
+ txtEditor.SetProperty(TextEditor::Property::TEXT,"Please edit text here..");
+ mrootTable.AddChild(txtEditor,TableView::CellPosition(9,0));
+
+ btnTestButton = PushButton::New();
+ btnTestButton.SetProperty(Button::Property::LABEL_TEXT,"Mouse wheel & add/remove test button");
+ btnTestButton.SetSize(Vector2(mStage.GetSize().width,GetVerdictTableHeight()));
+ btnTestButton.SetBackgroundColor(Color::CYAN);
+ btnTestButton.SetColor(Color::CYAN);
+ btnTestButton.WheelEventSignal().Connect(this,&TBTDaliStageView::onWheelEvent);
+ btnTestButton.ClickedSignal().Connect(this,&TBTDaliStageView::OnButtonClicked);
+ mrootTable.AddChild(btnTestButton,TableView::CellPosition(10,0));
+
+ if(msg=="onSceneCreated")
+ {
+ txtSceneCreated.SetProperty(TextLabel::Property::TEXT,"Scene created event is called");
+ txtSceneCreated.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+ }
+
+ mStage.ContextLostSignal().Connect(this,&TBTDaliStageView::onContextLost);
+ mStage.ContextRegainedSignal().Connect(this,&TBTDaliStageView::onContextRegain);
+ mStage.EventProcessingFinishedSignal().Connect(this,&TBTDaliStageView::onEventProcessing);
+ mStage.KeyEventSignal().Connect(this,&TBTDaliStageView::onKeyEvent);
+ //mStage.SceneCreatedSignal().Connect(this,&TBTDaliStageView::onSceneCreated);
+ mStage.TouchedSignal().Connect(this,&TBTDaliStageView::onTouchedEvent);
+ mStage.TouchSignal().Connect(this,&TBTDaliStageView::onTouchEvent);
+ //mStage.WheelEventSignal().Connect(this,&TBTDaliStageView::onWheelEvent);
+
+ //Atlas
+// mAtlas = Atlas::New( 400,700, Pixel::RGBA8888);
+// mAtlas.Clear(Vector4(0.f,0.5f,0.5f,0.25f));
+// UploadBufferImages();
+// UploadPixelData();
+// imageView = Toolkit::ImageView::New( mAtlas );
+// mrootTable.AddChild(imageView,TableView::CellPosition(11,0));
+
+ mStage.Add( mrootTable );
+}
+//BufferImage TBTDaliStageView::CreateBufferImage( const Vector4& color, const unsigned int width, const unsigned int height )
+//{
+// BufferImage imageData = BufferImage::New( width, height, Pixel::RGBA8888 );
+// // Create the image
+// PixelBuffer* pixbuf = imageData.GetBuffer();
+// const unsigned int bitmapSize = width * height;
+// for( size_t i = 0; i < bitmapSize; ++i )
+// {
+// pixbuf[i*4+0] = 0xFF * color.r;
+// pixbuf[i*4+1] = 0xFF * color.g;
+// pixbuf[i*4+2] = 0xFF * color.b;
+// pixbuf[i*4+3] = 0xFF * color.a;
+// }
+// return imageData;
+//}
+//PixelData TBTDaliStageView::CreatePixelData( const Vector3& color, const unsigned int width, const unsigned int height )
+//{
+// unsigned int size = width*height;
+// unsigned int bufferSize = size * Pixel::GetBytesPerPixel(Pixel::RGB888);
+// unsigned char* pixels = new unsigned char [bufferSize];
+// for( unsigned int i = 0; i < size; i++ )
+// {
+// pixels[i*3u] = 0xFF * color.x;
+// pixels[i*3u+1u] = 0xFF * color.y;
+// pixels[i*3u+2u] = 0xFF * color.z;
+// }
+// return PixelData::New( pixels, bufferSize, width, height, Pixel::RGB888, PixelData::DELETE_ARRAY );
+//}
+
+void TBTDaliStageView::NewWindow(void)
+{
+ PositionSize posSize(100, 100, 720, 1280);
+ gApplication.ReplaceWindow(posSize, "NewWindow"); // Generates a new window
+}
+
+template<class X, typename Ret, typename Arg0>
+PushButton TBTDaliStageView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+}
+TextLabel TBTDaliStageView::CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size )
+{
+ TextLabel txtLabel=TextLabel::New(txt);
+ //txtLabel.SetSize(size);
+ txtLabel.SetAnchorPoint(anchorPoint);
+ //txtLabel.SetPosition(position);
+ txtLabel.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT,"LEFT");
+ txtLabel.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT,"TOP");
+ txtLabel.SetProperty(TextLabel::Property::TEXT_COLOR, Color::RED);
+ txtLabel.SetProperty(TextLabel::Property::MULTI_LINE, true);
+ parent.AddChild(txtLabel,cellPosition);
+ return txtLabel;
+}
+void TBTDaliStageView::onKeyEvent(const KeyEvent& keyevent)
+{
+ DBG("In TBTDaliStageView::onKeyEvent");
+ txtKeyEvent.SetProperty(TextLabel::Property::TEXT,"Key event is called");
+ txtKeyEvent.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+void TBTDaliStageView::onEventProcessing()
+{
+ DBG("In TBTDaliStageView::onEventProcessing");
+ txtEventProcessing.SetProperty(TextLabel::Property::TEXT,"Event processing signal is called");
+ txtEventProcessing.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+void TBTDaliStageView::onTouchedEvent(const TouchEvent& touchevent)
+{
+ DBG("In TBTDaliStageView::onTaouchedEvent");
+ txtTouched.SetProperty(TextLabel::Property::TEXT,"Touched event is called");
+ txtTouched.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+void TBTDaliStageView::onTouchEvent(const TouchData& touchdata)
+{
+ DBG("In TBTDaliStageView::onTouchEvrnt");
+ txtTouch.SetProperty(TextLabel::Property::TEXT,"Touch event is called");
+ txtTouch.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+bool TBTDaliStageView::onWheelEvent( Actor actor, const WheelEvent& wheelevent)
+{
+ DBG("In TBTDaliStageView::onWheelEvent");
+ txtWheel.SetProperty(TextLabel::Property::TEXT,"Wheel event is called");
+ txtWheel.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+ return true;
+}
+void TBTDaliStageView::onContextLost()
+{
+ DBG("In TBTDaliStageView::cbContextLost");
+ txtContext.SetProperty(TextLabel::Property::TEXT,"Context lost event is called");
+ txtContext.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+void TBTDaliStageView::onContextRegain()
+{
+ DBG("In TBTDaliStageView::onContextRegain");
+ txtContextRegain.SetProperty(TextLabel::Property::TEXT,"Context regain event is called");
+ txtContextRegain.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+void TBTDaliStageView::onSceneCreated()
+{
+ DBG("In TBTDaliStageView::onSceneCreated");
+ txtSceneCreated.SetProperty(TextLabel::Property::TEXT,"Scene created event is called");
+ txtSceneCreated.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+bool TBTDaliStageView::OnButtonClicked(Button button) {
+ DBG("OnButtonClicked");
+ if(!bCheck)
+ {
+ bCheck=true;
+ //mApplication.AddIdle( MakeCallback( TBTDaliStageView::NewWindow ) );
+
+// textButton=PushButton::New();
+// textButton.SetProperty(Button::Property::LABEL_TEXT,"Test Button");
+// mrootTable.AddChild(textButton,TableView::CellPosition(11,0));
+//
+// textButton.SetSelectedImage( "/images/gallery-medium-0.jpg" );
+
+ }
+ else
+ {
+ bCheck=false;
+ //gApplication.Reset();
+// textButton.SetUnselectedImage( "/images/gallery-medium-1.jpg" );
+// mrootTable.RemoveChildAt(TableView::CellPosition(11,0));
+ }
+ return true;
+}
--- /dev/null
+#include "view/tbt-dali-style-manager-view.h"
+
+TBTDaliStyleManagerView::TBTDaliStyleManagerView(Application& mApplication, app_control_h _control) :
+ CommonView(mApplication, _control) {
+
+ CommonView::Initialize();
+
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+
+ mrootTable= TableView::New(9, 1);
+ mrootTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ mrootTable.SetSize(mStageSize.width, mStageSize.height - GetVerdictTableHeight());
+ mrootTable.SetPosition(0 , 0);
+ mrootTable.SetName("RootTable");
+ //mrootTable.SetKeyboardFocusable(true);
+ //mrootTable.SetFixedHeight(1, mStageSize.height - GetVerdictTableHeight());
+
+ mStage.Add(mrootTable);
+ Vector2 size(512,512);
+
+ lblStyleManager=CreateTextLabel(mrootTable,TableView::CellPosition(1,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"",size);
+ lblStyleManager.SetProperty(TextLabel::Property::TEXT,"Style changed signal not call");
+ lblStyleManager.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblStyleManager.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblStyleManager.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ //lblPreFocus.SetKeyboardFocusable(true);
+
+ btnStyle=CreateButton(mrootTable, TableView::CellPosition(7, 0),
+ AnchorPoint::BOTTOM_LEFT, AnchorPoint::BOTTOM_LEFT, "Style Change",
+ this, &TBTDaliStyleManagerView::OnClicked,
+ Vector4(0.55f, 0.8f, 0.9f, 1.0f), Vector4(0.8f, 0.9f, 0.9f, 1.0f),Vector2(mStageSize.width,GetVerdictTableHeight()));
+
+ styleManager=StyleManager::Get();
+ styleManager.StyleChangedSignal().Connect(this, &TBTDaliStyleManagerView::OnStyleChange);
+
+}
+
+template<class X, typename Ret, typename Arg0>
+PushButton TBTDaliStyleManagerView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+}
+TextLabel TBTDaliStyleManagerView::CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size )
+{
+ TextLabel txtLabel=TextLabel::New(txt);
+ //txtLabel.SetSize(size);
+ //txtLabel.SetAnchorPoint(anchorPoint);
+ //txtLabel.SetPosition(position);
+ txtLabel.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT,"LEFT");
+ txtLabel.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT,"TOP");
+ txtLabel.SetProperty(TextLabel::Property::TEXT_COLOR, Color::RED);
+ txtLabel.SetProperty(TextLabel::Property::MULTI_LINE, true);
+ parent.AddChild(txtLabel,cellPosition);
+ return txtLabel;
+}
+bool TBTDaliStyleManagerView::OnClicked(Button button)
+{
+ DBG("In TBTDaliStyleManagerView::OnClicked");
+ char image_name[255];
+ snprintf(image_name, 255, "dali-toolkit-test-theme_720x1280.json");
+ char* IMAGE_PATH = (char*)get_resource_path(image_name);
+ styleManager.ApplyTheme(IMAGE_PATH);
+
+ styleManager.ApplyDefaultTheme();
+ styleManager.ApplyStyle( btnStyle, IMAGE_PATH, "testbutton" );
+ styleManager.ApplyStyle( lblStyleManager, IMAGE_PATH, "textlabel" );
+ return true;
+}
+void TBTDaliStyleManagerView::OnStyleChange(StyleManager style,StyleChange::Type type)
+{
+ DBG("In TBTDaliStyleManagerView::OnStyleChange");
+ this->lblStyleManager.SetProperty( TextLabel::Property::TEXT, "Style changed signal called" );
+ //this->lblStyleManager.SetProperty( TextLabel::Property::POINT_SIZE, 8.0f );
+ this->lblStyleManager.SetProperty( TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
--- /dev/null
+#include "view/tbt-dali-text-control-view.h"
+
+TBTDaliTextControlView::TBTDaliTextControlView(Application& mApplication, app_control_h _control) :
+ CommonView(mApplication, _control) {
+
+ CommonView::Initialize();
+
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+
+ mrootTable= TableView::New(8, 1);
+ mrootTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ mrootTable.SetSize(mStageSize.width, mStageSize.height - GetVerdictTableHeight());
+ mrootTable.SetPosition(0 , 0);
+ mrootTable.SetName("RootTable");
+ //mrootTable.SetFixedHeight(1, mStageSize.height - GetVerdictTableHeight());
+ mStage.Add(mrootTable);
+
+ Vector2 size(512,512);
+
+ lblField=CreateTextLabel(mrootTable,TableView::CellPosition(1,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"",size);
+ lblField.SetProperty(TextLabel::Property::TEXT,"Text field max length reached signal not call");
+ lblField.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblField.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblField.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+
+ lblEditor=CreateTextLabel(mrootTable,TableView::CellPosition(2,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Button press signal not call",size);
+ lblEditor.SetProperty(TextLabel::Property::TEXT,"Text editor text changed signal not call");
+ lblEditor.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblEditor.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblEditor.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+
+ lblKeyEvent=CreateTextLabel(mrootTable,TableView::CellPosition(3,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Button press signal not call",size);
+ lblKeyEvent.SetProperty(TextLabel::Property::TEXT,"Key Event signal not call");
+ lblKeyEvent.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ lblKeyEvent.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ lblKeyEvent.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+
+ txtField=TextField::New();
+ txtField.SetProperty(TextField::Property::TEXT,"Type here..");
+ txtField.SetProperty(TextField::Property::MAX_LENGTH,15);
+ txtField.MaxLengthReachedSignal().Connect(this,&TBTDaliTextControlView::onMaxLengthReached);
+ txtField.KeyEventSignal().Connect(this, &TBTDaliTextControlView::onKeyEventSignal);
+ mrootTable.AddChild( txtField, TableView::CellPosition( 4, 0 ) );
+ mrootTable.SetCellAlignment( TableView::CellPosition( 4, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+ txtEditor=TextEditor::New();
+ txtEditor.SetProperty(TextEditor::Property::TEXT,"Type here..");
+ txtEditor.TextChangedSignal().Connect(this,&TBTDaliTextControlView::onTextChanged);
+ mrootTable.AddChild( txtEditor, TableView::CellPosition( 5, 0 ) );
+ mrootTable.SetCellAlignment( TableView::CellPosition( 5, 0 ), HorizontalAlignment::LEFT, VerticalAlignment::CENTER );
+
+ mStage.Add( mrootTable );
+}
+
+template<class X, typename Ret, typename Arg0>
+PushButton TBTDaliTextControlView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+}
+TextLabel TBTDaliTextControlView::CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size )
+{
+ TextLabel txtLabel=TextLabel::New(txt);
+ //txtLabel.SetSize(size);
+ //txtLabel.SetAnchorPoint(anchorPoint);
+ //txtLabel.SetPosition(position);
+ txtLabel.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT,"LEFT");
+ txtLabel.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT,"TOP");
+ txtLabel.SetProperty(TextLabel::Property::TEXT_COLOR, Color::RED);
+ txtLabel.SetProperty(TextLabel::Property::MULTI_LINE, true);
+ parent.AddChild(txtLabel,cellPosition);
+ return txtLabel;
+}
+void TBTDaliTextControlView::onMaxLengthReached(TextField field)
+{
+ DBG("TBTDaliTextControlView::onMaxLengthReached");
+ lblField.SetProperty(TextLabel::Property::TEXT,"Text field max length reached signal called");
+ lblField.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+void TBTDaliTextControlView::onTextChanged(TextEditor editor)
+{
+ DBG("TBTDaliTextControlView::onTextChanged");
+ lblEditor.SetProperty(TextLabel::Property::TEXT,"Text editor text changed signal called");
+ lblEditor.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+}
+bool TBTDaliTextControlView::onKeyEventSignal(Control control, const KeyEvent& event)
+{
+ DBG("TBTDaliSliderView::onKeyEventSignal");
+ lblKeyEvent.SetProperty(TextLabel::Property::TEXT,"KeyEvent signal called");
+ lblKeyEvent.SetProperty(TextLabel::Property::TEXT_COLOR,Color::GREEN);
+ return true;
+}
+
--- /dev/null
+#include "view/tbt-dali-touch-data-view.h"
+std::string GetTouchDataState ( TouchPoint::State state )
+{
+ std::string ret="";
+ switch(state)
+ {
+ case TouchPoint::Started:
+ {
+ if(TouchPoint::Started==state)
+ ret="Started";
+ else
+ ret="Down";
+ }
+ break;
+
+ case TouchPoint::Finished:
+ {
+ if(TouchPoint::Finished==state)
+ ret="Finished";
+ else
+ ret="Up";
+ }
+ break;
+
+ case TouchPoint::Motion:
+ ret="Motion";
+ break;
+
+ case TouchPoint::Leave:
+ ret="Leave";
+ break;
+
+ case TouchPoint::Stationary:
+ ret="Stationary";
+ break;
+
+ case TouchPoint::Interrupted:
+ ret="Interrupted";
+ break;
+
+ case TouchPoint::Last:
+ ret="Last";
+ break;
+
+ default:
+ ret="None";
+ break;
+ }
+ return ret;
+}
+
+std::string GetTouchDataPointState ( PointState::Type state )
+{
+ std::string str="";
+ switch(state)
+ {
+ case PointState::STARTED:
+ str="STARTED/DOWN";
+ break;
+ case PointState::FINISHED:
+ str="FINISHED/UP";
+ break;
+ case PointState::MOTION:
+ str="MOTION";
+ break;
+ case PointState::LEAVE:
+ str="LEAVE";
+ break;
+ case PointState::STATIONARY:
+ str="STATIONARY";
+ break;
+ case PointState::INTERRUPTED:
+ str="INTERRUPTED";
+ break;
+ default:
+ str="None";
+ break;
+ }
+ return str;
+}
+TBTDaliTouchDataView::TBTDaliTouchDataView(Application& mApplication, app_control_h _control) :
+ CommonView(mApplication, _control) {
+
+ CommonView::Initialize();
+
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+
+ mrootTable= TableView::New(8, 1);
+ mrootTable.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ mrootTable.SetSize(mStageSize.width, mStageSize.height - GetVerdictTableHeight());
+ mrootTable.SetPosition(0 , 0);
+ mrootTable.SetName("RootTable");
+ //mrootTable.SetFixedHeight(1, mStageSize.height - GetVerdictTableHeight());
+ mStage.Add(mrootTable);
+
+ Vector2 size(512,512);
+
+ txtTouch=CreateTextLabel(mrootTable,TableView::CellPosition(1,0),AnchorPoint::TOP_LEFT,AnchorPoint::BOTTOM_LEFT,"Context lost signal not call",size);
+ txtTouch.SetProperty(TextLabel::Property::TEXT,"Touch event not call");
+ txtTouch.SetProperty(TextLabel::Property::TEXT_COLOR,Color::RED);
+ txtTouch.SetSize(mStageSize.width,mStageSize.height - GetVerdictTableHeight());
+ txtTouch.SetAnchorPoint(AnchorPoint::TOP_LEFT);
+ mStage.TouchSignal().Connect(this,&TBTDaliTouchDataView::onTouchEvent);
+
+ mStage.Add( mrootTable );
+}
+
+template<class X, typename Ret, typename Arg0>
+PushButton TBTDaliTouchDataView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+}
+TextLabel TBTDaliTouchDataView::CreateTextLabel(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string txt, Vector2 size )
+{
+ TextLabel txtLabel=TextLabel::New(txt);
+ //txtLabel.SetSize(size);
+ //txtLabel.SetAnchorPoint(anchorPoint);
+ //txtLabel.SetPosition(position);
+ txtLabel.SetProperty(TextLabel::Property::HORIZONTAL_ALIGNMENT,"LEFT");
+ txtLabel.SetProperty(TextLabel::Property::VERTICAL_ALIGNMENT,"TOP");
+ txtLabel.SetProperty(TextLabel::Property::TEXT_COLOR, Color::RED);
+ txtLabel.SetProperty(TextLabel::Property::MULTI_LINE, true);
+ parent.AddChild(txtLabel,cellPosition);
+ return txtLabel;
+}
+
+void TBTDaliTouchDataView::onTouchEvent(const TouchData& touchdata)
+{
+ DBG("In TBTDaliTouchDataView::onTouchEvrnt");
+
+ std::string txt="";
+ txt.append("**Touch event is called** ");
+ //time
+ unsigned long time=touchdata.GetTime()/1000;
+ txt.append("Touch time: ");
+ int hr=(time/3600)%24;
+ int sec=time%3600;
+ int min=sec/60;
+ sec=sec%60;
+ txt.append(LongToString(hr)+":"+LongToString(min)+":"+LongToString(sec));
+
+ //point count
+ int count=touchdata.GetPointCount();
+ txt.append(", Point count: ");
+ txt.append(IntToString(count));
+
+ //
+ int id=touchdata.GetDeviceId(touchdata.GetPointCount());
+ txt.append(", DeviceId: ");
+ txt.append(IntToString(id));
+
+ //state
+ txt.append(", State: ");
+ txt.append(GetTouchDataPointState(touchdata.GetState(touchdata.GetPointCount())));
+
+ //HitActor
+ Actor actor=touchdata.GetHitActor(0);
+// TableView table=TableView::DownCast(actor);
+ txt.append(", Hit Actor: ");
+ txt.append(typeid(touchdata.GetHitActor(0)).name());
+
+// txt.append(table.GetName());
+// txt.append(", Hit Actor child count: ");
+// txt.append(IntToString(table.GetChildCount()));
+
+ //local point
+ Vector2 vec=touchdata.GetLocalPosition(0);
+ txt.append(", Local Point: ");
+ txt.append("X:"+FloatToString(vec.x)+" Y:"+FloatToString(vec.y));
+ //screen point
+ Vector2 vec1=touchdata.GetScreenPosition(0);
+ txt.append(", Screen Point: ");
+ txt.append("X:"+FloatToString(vec1.x)+" Y:"+FloatToString(vec1.y));
+
+ //radius
+ int radius=touchdata.GetRadius(0);
+ txt.append(", Radius: ");
+ txt.append(IntToString(radius));
+
+
+ //
+ Vector2 vec2=touchdata.GetEllipseRadius(0);
+ txt.append(", Radii: ");
+ txt.append("horizontal:"+FloatToString(vec2.x)+" vertical:"+FloatToString(vec2.y));
+
+ //
+ float pressure=touchdata.GetPressure(0);
+ txt.append(", Pressure: ");
+ txt.append(FloatToString(pressure));
+
+ //
+ Degree deg= touchdata.GetAngle(0);
+ txt.append(", Degree: ");
+ txt.append(FloatToString(deg.degree));
+
+ this->txtTouch.SetProperty( TextLabel::Property::TEXT, txt );
+ this->txtTouch.SetProperty( TextLabel::Property::POINT_SIZE, 8.0f );
+ this->txtTouch.SetProperty( TextLabel::Property::TEXT_COLOR,Color::CYAN);
+
+}
--- /dev/null
+#include "view/tbt-dali-tts-view.h"
+
+TBTTTSView::TBTTTSView(Application& mApplication, app_control_h _control) :
+ CommonView(mApplication, _control) {
+ CommonView::Initialize();
+
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+
+ TableView controlTable = TableView::New(1, 3);
+ controlTable.SetAnchorPoint(AnchorPoint::BOTTOM_LEFT);
+ controlTable.SetSize(mStageSize.width, GetVerdictTableHeight());
+ controlTable.SetPosition(0, mStageSize.height - GetVerdictTableHeight());
+ mStage.Add(controlTable);
+
+ Vector2 size(mStageSize.width / 3, GetVerdictTableHeight());
+
+ playButton = CreateButton(controlTable, TableView::CellPosition(0, 0),
+ AnchorPoint::BOTTOM_LEFT, AnchorPoint::BOTTOM_LEFT, "Play",
+ this, &TBTTTSView::OnPlayButtonClicked,
+ Vector4(0.55f, 0.8f, 0.9f, 1.0f), Vector4(0.8f, 0.9f, 0.9f, 1.0f),size);
+ interruptButton = CreateButton(controlTable,
+ TableView::CellPosition(0, 1), AnchorPoint::BOTTOM_LEFT,
+ AnchorPoint::BOTTOM_LEFT, "Pause", this,
+ &TBTTTSView::OnInterruptButtonClicked,
+ Vector4(0.55f, 0.8f, 0.9f, 1.0f), Vector4(0.8f, 0.9f, 0.9f, 1.0f),size);
+ stopButton = CreateButton(controlTable,
+ TableView::CellPosition(0, 2), AnchorPoint::BOTTOM_LEFT,
+ AnchorPoint::BOTTOM_LEFT, "Stop", this,
+ &TBTTTSView::OnStopButtonClicked, Vector4(0.55f, 0.8f, 0.9f, 1.0f),
+ Vector4(0.8f, 0.9f, 0.9f, 1.0f),size);
+
+ txt = CreateTextField(
+ Vector2(mStageSize.width, GetVerdictTableHeight() * 2), "TBT");
+ mStage.Add(txt);
+
+ tts = TtsPlayer::Get();
+ updateViewControls();
+}
+
+template<class X, typename Ret, typename Arg0>
+PushButton TBTTTSView::CreateButton(TableView parent, TableView::CellPosition cellPosition,
+ Vector3 anchorPoint, Vector3 position, std::string label, X* obj,
+ Ret (X::*onClickedCallback)(Arg0 arg0), Vector4 selectedColor, Vector4 unselectedColor, Vector2 size)
+{
+ Stage mStage = Stage::GetCurrent();
+ Vector2 mStageSize = mStage.GetSize();
+
+ PushButton button = PushButton::New();
+ button.SetAnchorPoint(anchorPoint);
+ button.SetPosition(position);
+ button.SetSize(size);
+ button.SetLabelText(label);
+ button.SetProperty(Button::Property::UNSELECTED_COLOR, selectedColor);
+ button.SetProperty(Button::Property::SELECTED_COLOR, unselectedColor);
+ parent.AddChild(button, cellPosition);
+
+ button.ClickedSignal().Connect(obj, onClickedCallback);
+ return button;
+}
+
+void TBTTTSView::updateViewControls() {
+ if (tts.GetState() == TtsPlayer::PLAYING) {
+ playButton.SetDisabled(true);
+ interruptButton.SetDisabled(false);
+ interruptButton.SetLabelText("Pause");
+ stopButton.SetDisabled(false);
+ } else if (tts.GetState() == TtsPlayer::PAUSED) {
+ playButton.SetDisabled(true);
+ interruptButton.SetDisabled(false);
+ interruptButton.SetLabelText("Resume");
+ stopButton.SetDisabled(false);
+ } else {
+ playButton.SetDisabled(false);
+ interruptButton.SetDisabled(true);
+ stopButton.SetDisabled(true);
+ }
+
+}
+
+bool TBTTTSView::OnPlayButtonClicked(Button button) {
+ if (tts.GetState() == TtsPlayer::READY) {
+ std::string text;
+
+ txt.GetProperty(TextField::Property::TEXT).Get(text);
+ tts.Play(text);
+ }
+ updateViewControls();
+ return true;
+}
+
+bool TBTTTSView::OnInterruptButtonClicked(Button button) {
+
+ if (tts.GetState() == TtsPlayer::PLAYING) {
+ tts.Pause();
+ } else if (tts.GetState() == TtsPlayer::PAUSED) {
+ tts.Resume();
+ }
+ updateViewControls();
+ return true;
+}
+
+bool TBTTTSView::OnStopButtonClicked(Button button) {
+
+ if (tts.GetState() != TtsPlayer::UNAVAILABLE) {
+ tts.Stop();
+ }
+ updateViewControls();
+ return true;
+}
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<manifest xmlns="http://tizen.org/ns/packages" api-version="3.0" package="org.tizen.tbtcoreapp-dali" version="1.0.0">
+ <profile name="mobile"/>
+ <ui-application appid="org.tizen.tbtcoreapp-dali" exec="tbtcoreapp-dali" multiple="false" nodisplay="false" taskmanage="true" type="capp">
+ <label>tbtcoreapp-dali</label>
+ <icon>tbtcoreapp-dali.png</icon>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/pick"/>
+ <mime name="text/plain"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/view"/>
+ <mime name="image/png"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/view"/>
+ <mime name="image/jpeg (image/pjpeg)"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/view"/>
+ <mime name="image/gif"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/view"/>
+ <mime name="image/bmp (image/x-bmp)"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/view"/>
+ <mime name="audio/mp3"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/view"/>
+ <mime name="audio/aac"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/view"/>
+ <mime name="audio/amr"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/view"/>
+ <mime name="audio/wav"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/view"/>
+ <mime name="video/3gpp"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/view"/>
+ <mime name="video/mp4"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/pick"/>
+ <mime name="image/png"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/pick"/>
+ <mime name="image/jpeg (image/pjpeg)"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/pick"/>
+ <mime name="image/gif"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/pick"/>
+ <mime name="image/bmp (image/x-bmp)"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/pick"/>
+ <mime name="audio/mp3"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/pick"/>
+ <mime name="audio/aac"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/pick"/>
+ <mime name="audio/amr"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/pick"/>
+ <mime name="audio/wav"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/pick"/>
+ <mime name="video/3gpp"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/pick"/>
+ <mime name="video/mp4"/>
+ </app-control>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/view"/>
+ <mime name="text/html"/>
+ </app-control>
+ </ui-application>
+ <privileges>
+ <privilege>http://tizen.org/privilege/mediastorage</privilege>
+ <privilege>http://tizen.org/privilege/appmanager.launch</privilege>
+ <privilege>http://tizen.org/privilege/externalstorage</privilege>
+ </privileges>
+</manifest>
TBT_APP_STT,
- TBT_APP_STT_ERROR
+ TBT_APP_STT_ERROR,
+
+ TBT_APP_DALI_ACTOR, //DALi APP include here
+
+ TBT_APP_DALI_TTS,
+
+ TBT_APP_DALI_SCROLL,
+
+ TBT_APP_DALI_STAGE,
+
+ TBT_APP_DALI_TOUCH_DATA,
+
+ TBT_APP_DALI_BUTTON,
+
+ TBT_APP_DALI_SLIDER,
+
+ TBT_APP_DALI_TEXT_CONTROL,
+
+ TBT_APP_DALI_KEY_BOARD_FOCUS_MANAGER,
+
+ TBT_APP_DALI_ACCESSIBILITY_MANAGER,
+
+ TBT_APP_DALI_GESTURE_DETECTOR,
+
+ TBT_APP_DALI_STYLE_MANAGER
+
+ //TBT_APP_DALI_SCROLL_BAR
} tbt_app_type_e;
#define TBT_MODULE_APP_STT
#define TBT_MODULE_APP_STT_ERROR
+
+#define TBT_MODULE_DALI
+#define TBT_MODULE_APP_DALI_ACTOR
+#define TBT_MODULE_APP_DALI_STAGE
+#define TBT_MODULE_APP_DALI_TOUCH_DATA
+#define TBT_MODULE_APP_DALI_BUTTON
+#define TBT_MODULE_APP_DALI_SLIDER
+#define TBT_MODULE_APP_DALI_TEXT_CONTROL
+#define TBT_MODULE_APP_DALI_KEY_BOARD_FOCUS_MANAGER
+#define TBT_MODULE_APP_DALI_ACCESSIBILITY_MANAGER
+#define TBT_MODULE_APP_DALI_GESTURE_DETECTOR
+#define TBT_MODULE_APP_DALI_STYLE_MANAGER
+#define TBT_MODULE_APP_DALI_TTS
+#define TBT_MODULE_APP_DALI_SCROLL
+//#define TBT_MODULE_APP_DALI_SCROLL_BAR
+
+//#define TBT_MODULE_APP_DALI_HOVER_EVENT
+//#define TBT_MODULE_APP_DALI_KEY_EVENT
+//#define TBT_MODULE_APP_DALI_LONGPRESS_GESTURE_DETECTOR
+//#define TBT_MODULE_APP_DALI_TOUCH_EVENT
+//#define TBT_MODULE_APP_DALI_TOUCH_DATA
+//#define TBT_MODULE_APP_DALI_KEY_GRAB
+//#define TBT_MODULE_APP_DALI_ACCESSIBILITY_MANAGER
+//#define TBT_MODULE_APP_DALI_BUTTON
+//#define TBT_MODULE_APP_DALI_CONTROLL
+//#define TBT_MODULE_APP_DALI_SCROLL_BAR
+//#define TBT_MODULE_APP_DALI_SCROLL_VIEW
+//#define TBT_MODULE_APP_DALI_TEXT_FIELD
+//#define TBT_MODULE_APP_DALI_KEYBOARD_FOCUS_MANAGER
+//#define TBT_MODULE_APP_DALI_STYLE_MANAGER
+//#define TBT_MODULE_APP_DALI_TEXT_EDITOR
+//#define TBT_MODULE_APP_DALI_SLIDER
+
#endif
* @return common view data
*/
common_view *common_view_add(Evas_Object *navi, tbt_info *tbt_info, Elm_Object_Item *item, common_view *view, void (*_app_destroy_cb)(void*), void* app_view);
+common_view *common_view_without_layout_add(Evas_Object *navi, tbt_info *tbt_info, Elm_Object_Item *item, common_view *view, void* app_view);
void common_view_set_appdestroy_before_layout_destroy_cb(common_view *view,void (*_app_destroy_before_layout_destroy_cb)(void*));
#endif // __TBT_COMMON_VIEW_H__
--- /dev/null
+/*******************************************************************************
+ * 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.
+ *
+ *******************************************************************************/
+/**
+ * @file tbt-gps-view.h
+ * @brief covers location retrieval
+ * starts location service using gps method and continuously updates the current location
+ * @since_tizen 2.3
+ * @author golam kayes(g.kayes@samsung.com) and salman rahman(salman.ran)
+ * @date October, 2014
+ * @bug location manager does not start in device
+ * @credit
+ *
+ */
+
+#ifndef __TBT_dali_view_H__
+#define __TBT_dali_view_H__
+
+#include "utils/app_module_config.h"
+#ifdef TBT_MODULE_DALI
+
+#include <Evas.h>
+#include "model/tbt-list.h"
+
+
+/**
+ * @typedef dali_viewer_view
+ * @since_tizen 2.3
+ * @brief A gps viewer view handle.
+ */
+typedef struct _view_item view_item;
+typedef struct _dali_view dali_view;
+
+/**
+ * @brief Create gps camera view
+ * @since_tizen 2.3
+ * @param[in] navi Parent naviframe
+ * @param[in] custom structute to hold tbt application information
+ * @param[in] item of the main tbt menu
+ * @return Pointer of gps on success, otherwise NULL
+ */
+dali_view *dali_view_add(Evas_Object *navi, tbt_info *tbt_info, Elm_Object_Item *item, char *module_name);
+
+#endif
+#endif // __TBT_dali_view_H__
.icon_name = "dummy",
.info = "Speech to text <br/> Error callback check",
.result = 0
+ },
+ #endif
+#endif
+
+#ifdef TBT_MODULE_DALI
+ #ifdef TBT_MODULE_APP_DALI_ACTOR
+
+ //DALi Test
+ {
+ .name = "DALi Actor",
+ .parent = "DALi",
+ .apptype = TBT_APP_DALI_ACTOR,
+ .icon_name = "dummy",
+ .info = "DALi Actor Signals",
+ .result = 0
+ },
+ #endif
+ #ifdef TBT_MODULE_APP_DALI_STAGE
+
+ //DALi Test
+ {
+ .name = "DALi Stage",
+ .parent = "DALi",
+ .apptype = TBT_APP_DALI_STAGE,
+ .icon_name = "dummy",
+ .info = "DALi Stage Signals",
+ .result = 0
+ },
+ #endif
+ #ifdef TBT_MODULE_APP_DALI_TOUCH_DATA
+
+ //DALi Test
+ {
+ .name = "DALi Touch Data",
+ .parent = "DALi",
+ .apptype = TBT_APP_DALI_TOUCH_DATA,
+ .icon_name = "dummy",
+ .info = "DALi Controls Touch Signals",
+ .result = 0
+ },
+ #endif
+ #ifdef TBT_MODULE_APP_DALI_BUTTON
+
+ //DALi Test
+ {
+ .name = "DALi Button",
+ .parent = "DALi",
+ .apptype = TBT_APP_DALI_BUTTON,
+ .icon_name = "dummy",
+ .info = "DALi Button Signals",
+ .result = 0
+ },
+ #endif
+ #ifdef TBT_MODULE_APP_DALI_SLIDER
+
+ //DALi Test
+ {
+ .name = "DALi Slider",
+ .parent = "DALi",
+ .apptype = TBT_APP_DALI_SLIDER,
+ .icon_name = "dummy",
+ .info = "DALi Slider Signals",
+ .result = 0
+ },
+ #endif
+ #ifdef TBT_MODULE_APP_DALI_TEXT_CONTROL
+
+ //DALi Test
+ {
+ .name = "DALi Text Control",
+ .parent = "DALi",
+ .apptype = TBT_APP_DALI_TEXT_CONTROL,
+ .icon_name = "dummy",
+ .info = "DALi Text Control Signals",
+ .result = 0
+ },
+ #endif
+ #ifdef TBT_MODULE_APP_DALI_KEY_BOARD_FOCUS_MANAGER
+
+ //DALi Test
+ {
+ .name = "DALi Keyboard Focus Manager",
+ .parent = "DALi",
+ .apptype = TBT_APP_DALI_KEY_BOARD_FOCUS_MANAGER,
+ .icon_name = "dummy",
+ .info = "DALi Keyboard Focus Manager Signals",
+ .result = 0
+ },
+ #endif
+ #ifdef TBT_MODULE_APP_DALI_ACCESSIBILITY_MANAGER
+
+ //DALi Test
+ {
+ .name = "DALi Accessibility Manager",
+ .parent = "DALi",
+ .apptype = TBT_APP_DALI_ACCESSIBILITY_MANAGER,
+ .icon_name = "dummy",
+ .info = "DALi Accessibility Manager Signals",
+ .result = 0
+ },
+ #endif
+ #ifdef TBT_MODULE_APP_DALI_GESTURE_DETECTOR
+
+ //DALi Test
+ {
+ .name = "DALi Gesture Detector",
+ .parent = "DALi",
+ .apptype = TBT_APP_DALI_GESTURE_DETECTOR,
+ .icon_name = "dummy",
+ .info = "DALi Gesture Detector Signals",
+ .result = 0
+ },
+ #endif
+ #ifdef TBT_MODULE_APP_DALI_STYLE_MANAGER
+
+ //DALi Test
+ {
+ .name = "DALi Style Manager",
+ .parent = "DALi",
+ .apptype = TBT_APP_DALI_STYLE_MANAGER,
+ .icon_name = "dummy",
+ .info = "DALi Style Manager Signals",
+ .result = 0
+ },
+ #endif
+ #ifdef TBT_MODULE_APP_DALI_TTS
+
+ //DALi Test
+ {
+ .name = "DALi TTS",
+ .parent = "DALi",
+ .apptype = TBT_APP_DALI_TTS,
+ .icon_name = "dummy",
+ .info = "DALi TTS Functionality",
+ .result = 0,
+ .required_features_count = 1,
+ .features_required = {11}
+ },
+ #endif
+// #ifdef TBT_MODULE_APP_DALI_SCROLL_BAR
+//
+// //DALi Test
+// {
+// .name = "DALi Scroll Bar",
+// .parent = "DALi",
+// .apptype = TBT_APP_DALI_SCROLL_BAR,
+// .icon_name = "dummy",
+// .info = "DALi Scroll Bar Functionality",
+// .result = 0,
+// .required_features_count = 1,
+// .features_required = {11}
+// },
+// #endif
+ #ifdef TBT_MODULE_APP_DALI_SCROLL
+
+ //DALi Test
+ {
+ .name = "DALi Scroll View",
+ .parent = "DALi",
+ .apptype = TBT_APP_DALI_SCROLL,
+ .icon_name = "dummy",
+ .info = "DALi Scroll Functionality",
+ .result = 0,
+ .required_features_count = 1,
+ .features_required = {11}
}
#endif
#endif
+
};
#ifdef TBT_MODULE_SENSOR
return view;
}
+common_view *common_view_without_layout_add(Evas_Object *navi, tbt_info *tbt_info, Elm_Object_Item *item, common_view *view, void* app_view)
+{
+ RETVM_IF(NULL == navi, NULL, "navi is null");
+ RETVM_IF(NULL == view, NULL, "view is null");
+ RETVM_IF(NULL == tbt_info, NULL, "tbt_info is null");
+ RETVM_IF(NULL == item, NULL, "item is null");
+
+ view->navi = navi;
+ view->item = item;
+ view->app_view = app_view;
+ view->tbt_info = tbt_info;
+
+
+ view->navi_item = elm_naviframe_item_push(view->navi, view->tbt_info->name, NULL, NULL, view->layout, NULL);
+
+ return view;
+}
/**
* @function update_view_controls
--- /dev/null
+/*******************************************************************************
+ * 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.
+ *******************************************************************************/
+/**
+ * @file tbt-dali-view.c
+ * @brief covers dali module api's
+ *
+ * @author Jahangir Alam(ja.alam@samsung.com)
+ * @date July, 2016
+ * @bug NA
+ * @credit
+ *
+ */
+
+#include "utils/app_module_config.h"
+#ifdef TBT_MODULE_DALI
+
+#include <Elementary.h>
+#include <locations.h>
+
+#include "utils/logger.h"
+#include "utils/config.h"
+#include "utils/ui-utils.h"
+#include "view/tbt-dali-view.h"
+#include "view/tbt-common-view.h"
+
+struct _view_item
+{
+ char* uri;
+ char* mime;
+};
+
+struct _dali_view
+{
+ common_view* view;
+
+ app_control_h service;
+ char *module_name;
+ view_item* dali;
+};
+
+static void app_control_view_cb(app_control_h request, app_control_h reply, app_control_result_e result, void *data);
+
+
+/**
+ * @function get_app_control_error
+ * @since_tizen 3.0
+ * @description Get App Control Error
+ * @parameter int: Int
+ * @return static char*
+ */
+static char* get_app_control_error(int ret)
+{
+ char* error = NULL;
+
+ switch (ret) {
+ case APP_CONTROL_ERROR_NONE:
+ error = "APP_CONTROL_ERROR_NONE";
+ break;
+ case APP_CONTROL_ERROR_INVALID_PARAMETER:
+ error = "APP_CONTROL_ERROR_INVALID_PARAMETER";
+ break;
+ case APP_CONTROL_ERROR_OUT_OF_MEMORY:
+ error = "APP_CONTROL_ERROR_OUT_OF_MEMORY";
+ break;
+ case APP_CONTROL_ERROR_APP_NOT_FOUND:
+ error = "APP_CONTROL_ERROR_APP_NOT_FOUND";
+ break;
+ case APP_CONTROL_ERROR_KEY_NOT_FOUND:
+ error = "APP_CONTROL_ERROR_KEY_NOT_FOUND";
+ break;
+ case APP_CONTROL_ERROR_KEY_REJECTED:
+ error = "APP_CONTROL_ERROR_KEY_REJECTED";
+ break;
+ case APP_CONTROL_ERROR_INVALID_DATA_TYPE:
+ error = "APP_CONTROL_ERROR_INVALID_DATA_TYPE";
+ break;
+ case APP_CONTROL_ERROR_LAUNCH_REJECTED:
+ error = "APP_CONTROL_ERROR_LAUNCH_REJECTED";
+ break;
+ case APP_CONTROL_ERROR_PERMISSION_DENIED:
+ error = "APP_CONTROL_ERROR_PERMISSION_DENIED";
+ break;
+ case APP_CONTROL_ERROR_LAUNCH_FAILED:
+ error = "APP_CONTROL_ERROR_LAUNCH_FAILED";
+ break;
+ case APP_CONTROL_ERROR_TIMED_OUT:
+ error = "APP_CONTROL_ERROR_TIMED_OUT";
+ break;
+#ifdef TIZEN_3_0
+ case APP_CONTROL_ERROR_IO_ERROR:
+ error = "APP_CONTROL_ERROR_IO_ERROR";
+ break;
+#endif
+#ifdef TIZEN_2_4
+ case APP_CONTROL_ERROR_IO_ERROR:
+ error = "APP_CONTROL_ERROR_IO_ERROR";
+ break;
+#endif
+ default:
+ error = "Unknown Error";
+ break;
+ }
+ return error;
+}
+
+static void app_control_view_cb(app_control_h request, app_control_h reply, app_control_result_e result, void *data)
+{
+
+ RETM_IF(NULL == data, "data is NULL");
+
+ dali_view *view = NULL;
+ view = (dali_view*)data;
+ RETM_IF(NULL == view, "view is NULL");
+
+ if(result == APP_CONTROL_RESULT_SUCCEEDED)
+ {
+ view->view->tbt_info->result = TBT_INFO_RESULT_PASS;
+ elm_genlist_item_update(view->view->item);
+ elm_naviframe_item_pop(view->view->navi);
+ }
+ else if(result == APP_CONTROL_RESULT_FAILED)
+ {
+ view->view->tbt_info->result = TBT_INFO_RESULT_FAIL;
+ elm_genlist_item_update(view->view->item);
+ elm_naviframe_item_pop(view->view->navi);
+ }
+ else if(result == APP_CONTROL_RESULT_CANCELED)
+ {
+ elm_naviframe_item_pop(view->view->navi);
+ }
+
+}
+
+/**
+ * @function dali_view_add
+ * @since_tizen 3.0
+ * @description DALi View Add
+ * @parameter Evas_Object*: Evas Object Pointer, tbt_info*: Tbt Info Pointer, Elm_Object_Item*: Elm Object Item Pointer
+ * @return dali_view*
+ */
+dali_view *dali_view_add(Evas_Object *navi, tbt_info *tbt_info, Elm_Object_Item *item, char *module_name)
+{
+ RETVM_IF(NULL == navi, NULL, "navi is null");
+
+ dali_view *this = NULL;
+ this = calloc(1, sizeof(dali_view));
+ RETVM_IF(!this, NULL, "calloc failed");
+ this->view = calloc(1, sizeof(common_view));
+ RETVM_IF(!this->view, NULL, "calloc failed");
+
+ common_view_without_layout_add(navi, tbt_info, item, this->view, this);
+ RETVM_IF(NULL == this->view, NULL, "navi is null");
+
+ int ret = app_control_create(&this->service);
+ RETVM_IF(APP_CONTROL_ERROR_NONE != ret, NULL,"app_control_create failed :%s", get_app_control_error(ret));
+ RETVM_IF(NULL == this->service, NULL, "Service NULL! ");
+ ret = app_control_set_operation(this->service, APP_CONTROL_OPERATION_PICK);
+ RETVM_IF(APP_CONTROL_ERROR_NONE != ret, NULL, "app_control_set_operation failed :%s", get_app_control_error(ret));
+
+ this->dali = (view_item*)malloc(sizeof(view_item));
+ this->dali->uri = NULL;
+ this->dali->mime = "text/plain";
+ this->module_name = module_name;
+
+ ret = app_control_set_mime(this->service, this->dali->mime);
+ RETVM_IF(APP_CONTROL_ERROR_NONE != ret, NULL,"app_control_set_mime failed :%s", get_app_control_error(ret));
+
+ ret = app_control_add_extra_data(this->service, "module_name", this->module_name);
+ RETVM_IF(APP_CONTROL_ERROR_NONE != ret, NULL,"app_control_set_mime failed :%s", get_app_control_error(ret));
+
+ ret = app_control_send_launch_request(this->service , app_control_view_cb, this);
+ RETVM_IF(APP_CONTROL_ERROR_NONE != ret, NULL, "app_control_send_launch_request failed :%s", get_app_control_error(ret));
+
+ return this;
+}
+
+#endif
#include "view/tbt-d2d-view.h"
#include "view/tbt-tts-view.h"
#include "view/tbt-stt-view.h"
+#include "view/tbt-dali-view.h"
typedef struct
{
break;
#endif
+ #ifdef TBT_MODULE_DALI
+ case TBT_APP_DALI_ACTOR:
+ dali_view_add(view->navi, info, it, "TBT_APP_DALI_ACTOR");
+ break;
+ case TBT_APP_DALI_STAGE:
+ dali_view_add(view->navi, info, it, "TBT_APP_DALI_STAGE");
+ break;
+ case TBT_APP_DALI_TTS:
+ dali_view_add(view->navi, info, it, "TBT_APP_DALI_TTS");
+ break;
+ case TBT_APP_DALI_SCROLL:
+ dali_view_add(view->navi, info, it, "TBT_APP_DALI_SCROLL");
+ break;
+ case TBT_APP_DALI_TOUCH_DATA:
+ dali_view_add(view->navi, info, it, "TBT_APP_DALI_TOUCH_DATA");
+ break;
+ case TBT_APP_DALI_BUTTON:
+ dali_view_add(view->navi, info, it, "TBT_APP_DALI_BUTTON");
+ break;
+ case TBT_APP_DALI_SLIDER:
+ dali_view_add(view->navi, info, it, "TBT_APP_DALI_SLIDER");
+ break;
+ case TBT_APP_DALI_TEXT_CONTROL:
+ dali_view_add(view->navi, info, it, "TBT_APP_DALI_TEXT_CONTROL");
+ break;
+ case TBT_APP_DALI_KEY_BOARD_FOCUS_MANAGER:
+ dali_view_add(view->navi, info, it, "TBT_APP_DALI_KEY_BOARD_FOCUS_MANAGER");
+ break;
+ case TBT_APP_DALI_ACCESSIBILITY_MANAGER:
+ dali_view_add(view->navi, info, it, "TBT_APP_DALI_ACCESSIBILITY_MANAGER");
+ break;
+ case TBT_APP_DALI_GESTURE_DETECTOR:
+ dali_view_add(view->navi, info, it, "TBT_APP_DALI_GESTURE_DETECTOR");
+ break;
+ case TBT_APP_DALI_STYLE_MANAGER:
+ dali_view_add(view->navi, info, it, "TBT_APP_DALI_STYLE_MANAGER");
+ break;
+// case TBT_APP_DALI_SCROLL_BAR:
+// dali_view_add(view->navi, info, it, "TBT_APP_DALI_SCROLL_BAR");
+// break;
+ #endif
+
default:
assert(false);
break;