setting-profile-common library created 59/178559/1
authorMichal Skorupinski <m.skorupinsk@samsung.com>
Thu, 10 May 2018 10:38:35 +0000 (12:38 +0200)
committerMichal Skorupinski <m.skorupinsk@samsung.com>
Thu, 10 May 2018 10:38:35 +0000 (12:38 +0200)
Change-Id: If427934e213e1e7609e1d4446299ef1928dd4623
Signed-off-by: Michal Skorupinski <m.skorupinsk@samsung.com>
25 files changed:
setting-profile-common/.cproject [new file with mode: 0644]
setting-profile-common/.gitignore [new file with mode: 0644]
setting-profile-common/.project [new file with mode: 0644]
setting-profile-common/.tproject [new file with mode: 0644]
setting-profile-common/Build/appendix.mk [new file with mode: 0644]
setting-profile-common/Build/basedef.mk [new file with mode: 0644]
setting-profile-common/Build/build_c.mk [new file with mode: 0644]
setting-profile-common/Build/build_edc.mk [new file with mode: 0644]
setting-profile-common/Build/build_po.mk [new file with mode: 0644]
setting-profile-common/Build/flags.mk [new file with mode: 0644]
setting-profile-common/Build/funcs.mk [new file with mode: 0644]
setting-profile-common/Build/makefile [new file with mode: 0644]
setting-profile-common/Build/makefile.mk [new file with mode: 0644]
setting-profile-common/Build/platform.mk [new file with mode: 0644]
setting-profile-common/Build/tooldef.mk [new file with mode: 0644]
setting-profile-common/build_def.prop [new file with mode: 0644]
setting-profile-common/inc/setting-profile-common.h [new file with mode: 0644]
setting-profile-common/inc/setting-profile.h [new file with mode: 0644]
setting-profile-common/project_def.prop [new file with mode: 0644]
setting-profile-common/src/setting-profile-common.c [new file with mode: 0644]
setting-profile-common/src/setting-profile-sound-main.c [new file with mode: 0755]
setting-profile/inc/setting-profile.h [deleted file]
setting-profile/project_def.prop
setting-profile/src/setting-profile-common.c [deleted file]
setting-profile/src/setting-profile-sound-main.c [deleted file]

diff --git a/setting-profile-common/.cproject b/setting-profile-common/.cproject
new file mode 100644 (file)
index 0000000..7ab0754
--- /dev/null
@@ -0,0 +1,622 @@
+<?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.so.debug.464197902">
+                       <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="org.tizen.nativecore.config.sbi.gcc45.so.debug.464197902" 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.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                                       <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                                       <extension id="org.eclipse.cdt.core.GLDErrorParser" 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.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
+                                       <extension id="org.tizen.nativecore.NativeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                                       <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                               </extensions>
+                       </storageModule>
+                       <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+                               <configuration artifactExtension="so" artifactName="setting-profile-common" buildArtefactType="org.tizen.nativecore.buildArtefactType.sharedLib" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.tizen.nativecore.buildArtefactType.sharedLib,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" description="" errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;" id="org.tizen.nativecore.config.sbi.gcc45.so.debug.464197902" name="Debug" parent="org.tizen.nativecore.config.sbi.gcc45.so.debug">
+                                       <folderInfo id="org.tizen.nativecore.config.sbi.gcc45.so.debug.464197902." name="/" resourcePath="">
+                                               <toolChain id="org.tizen.nativecore.toolchain.sbi.gcc45.so.debug.1866721973" name="Tizen Native Toolchain" superClass="org.tizen.nativecore.toolchain.sbi.gcc45.so.debug">
+                                                       <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="org.tizen.nativeide.target.sbi.gnu.platform.base.18123900" osList="linux,win32" superClass="org.tizen.nativeide.target.sbi.gnu.platform.base"/>
+                                                       <builder autoBuildTarget="all" buildPath="${workspace_loc:/setting-profile-common}/Debug" enableAutoBuild="true" id="org.tizen.nativecore.target.sbi.gnu.builder.1413869503" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Tizen Application Builder" superClass="org.tizen.nativecore.target.sbi.gnu.builder"/>
+                                                       <tool command="i586-linux-gnueabi-ar" id="org.tizen.nativecore.tool.sbi.gnu.archiver.1901490582" name="Archiver" superClass="org.tizen.nativecore.tool.sbi.gnu.archiver"/>
+                                                       <tool command="clang++" id="org.tizen.nativecore.tool.sbi.gnu.cpp.compiler.1787561814" name="C++ Compiler" superClass="org.tizen.nativecore.tool.sbi.gnu.cpp.compiler">
+                                                               <option id="gnu.cpp.compiler.option.optimization.level.572462069" 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.1518761027" name="Debug level" superClass="sbi.gnu.cpp.compiler.option.debugging.level.core" valueType="enumerated"/>
+                                                               <option id="sbi.gnu.cpp.compiler.option.1095316228" name="Tizen-Target" superClass="sbi.gnu.cpp.compiler.option" valueType="userObjs">
+                                                                       <listOptionValue builtIn="false" value="mobile-4.0-emulator.core_llvm40.i386"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.cpp.compiler.option.frameworks_inc.core.2068441720" name="Tizen-Frameworks-Include-Path" superClass="sbi.gnu.cpp.compiler.option.frameworks_inc.core" valueType="includePath">
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/libxml2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appcore-agent&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appfw&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/asp/&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/attach-panel&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/badge&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/base&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/cairo&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/calendar-service2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/cbhm&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/chromium-ewk&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ckm&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/contacts-svc&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/content&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/context-service&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/csr&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali-toolkit&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dbus-1.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/device&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dlog&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-buffer-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-con-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-file-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-ipc-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ector-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/e_dbus-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/edje-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eet-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-extension&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efreet-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1/eina&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eio-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eldbus-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/elementary-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/embryo-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/emile-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eo-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eom&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-client-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/feedback&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/fontconfig&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/freetype2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/geofence&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/gio-unix-2.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/glib-2.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/harfbuzz&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/iotcon&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/json-glib-1.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/location&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/maps&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media-content&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/messaging&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/metadata-editor&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minicontrol&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minizip&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/network&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/notification&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/nsd/&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/phonenumber-utils&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/privacy-privilege-manager/&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/SDL2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/sensor&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/service-adaptor&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/shortcut&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/storage&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/system&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/tef&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/telephony&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/tzsh&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ui&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ui-viewmgr&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/vulkan&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/web&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_service&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_viewer_dali&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_viewer_evas&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/wifi-direct&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/yaca&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/dbus-1.0/include&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/glib-2.0/include&quot;"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.cpp.compiler.option.frameworks_cflags.core.501903655" 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="--sysroot=&quot;${SBI_SYSROOT}&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="-fvisibility=hidden"/>
+                                                               </option>
+                                                               <option id="gnu.cpp.compiler.option.include.paths.220864707" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/inc}&quot;"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.cpp.compiler.option.frameworks.core.803942012" name="Tizen-Frameworks" superClass="sbi.gnu.cpp.compiler.option.frameworks.core" valueType="userObjs">
+                                                                       <listOptionValue builtIn="false" value="Native_API"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.cpp.compiler.option.preprocessor.def.deprecation.439372058" name="Defined symbols (-D)" superClass="sbi.gnu.cpp.compiler.option.preprocessor.def.deprecation" valueType="definedSymbols">
+                                                                       <listOptionValue builtIn="false" value="TIZEN_DEPRECATION"/>
+                                                                       <listOptionValue builtIn="false" value="DEPRECATION_WARNING"/>
+                                                                       <listOptionValue builtIn="false" value="_DEBUG"/>
+                                                               </option>
+                                                               <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1843209315" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
+                                                       </tool>
+                                                       <tool command="clang" id="org.tizen.nativecore.tool.sbi.gnu.c.compiler.726134331" 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.536785439" 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.277854594" name="Debug level" superClass="sbi.gnu.c.compiler.option.debugging.level.core" valueType="enumerated"/>
+                                                               <option id="sbi.gnu.c.compiler.option.675917863" name="Tizen-Target" superClass="sbi.gnu.c.compiler.option" valueType="userObjs">
+                                                                       <listOptionValue builtIn="false" value="mobile-4.0-emulator.core_llvm40.i386"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.c.compiler.option.frameworks_inc.core.989719318" name="Tizen-Frameworks-Include-Path" superClass="sbi.gnu.c.compiler.option.frameworks_inc.core" valueType="includePath">
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/libxml2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appcore-agent&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appfw&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/asp/&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/attach-panel&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/badge&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/base&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/cairo&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/calendar-service2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/cbhm&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/chromium-ewk&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ckm&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/contacts-svc&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/content&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/context-service&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/csr&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali-toolkit&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dbus-1.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/device&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dlog&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-buffer-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-con-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-file-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-ipc-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ector-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/e_dbus-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/edje-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eet-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-extension&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efreet-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1/eina&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eio-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eldbus-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/elementary-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/embryo-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/emile-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eo-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eom&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-client-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/feedback&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/fontconfig&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/freetype2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/geofence&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/gio-unix-2.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/glib-2.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/harfbuzz&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/iotcon&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/json-glib-1.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/location&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/maps&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media-content&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/messaging&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/metadata-editor&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minicontrol&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minizip&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/network&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/notification&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/nsd/&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/phonenumber-utils&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/privacy-privilege-manager/&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/SDL2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/sensor&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/service-adaptor&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/shortcut&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/storage&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/system&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/tef&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/telephony&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/tzsh&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ui&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ui-viewmgr&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/vulkan&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/web&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_service&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_viewer_dali&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_viewer_evas&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/wifi-direct&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/yaca&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/dbus-1.0/include&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/glib-2.0/include&quot;"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.c.compiler.option.frameworks_cflags.core.1419369275" 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="--sysroot=&quot;${SBI_SYSROOT}&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="-fvisibility=hidden"/>
+                                                               </option>
+                                                               <option id="gnu.c.compiler.option.include.paths.110000376" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/inc}&quot;"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.c.compiler.option.frameworks.core.1580706592" name="Tizen-Frameworks" superClass="sbi.gnu.c.compiler.option.frameworks.core" valueType="userObjs">
+                                                                       <listOptionValue builtIn="false" value="Native_API"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.c.compiler.option.preprocessor.def.symbols.deprecation.1250707764" name="Defined symbols (-D)" superClass="sbi.gnu.c.compiler.option.preprocessor.def.symbols.deprecation" valueType="definedSymbols">
+                                                                       <listOptionValue builtIn="false" value="TIZEN_DEPRECATION"/>
+                                                                       <listOptionValue builtIn="false" value="DEPRECATION_WARNING"/>
+                                                                       <listOptionValue builtIn="false" value="_DEBUG"/>
+                                                                       <listOptionValue builtIn="false" value="_TZ_SYS_GLOBALUSER_DATA=TZ_SYS_GLOBALUSER_DATA"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;TZ_SYS_GLOBALUSER_DATA=\&quot;/opt/usr/data\&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="_TZ_SYS_RO_APP=TZ_SYS_RO_APP"/>
+                                                                       <listOptionValue builtIn="false" value="_TZ_SYS_MEDIA=TZ_SYS_MEDIA"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;TZ_SYS_RO_APP=\&quot;/usr/apps\&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;TZ_SYS_MEDIA=\&quot;/opt/media\&quot;"/>
+                                                               </option>
+                                                               <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.2110196211" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
+                                                       </tool>
+                                                       <tool id="org.tizen.nativeide.tool.sbi.gnu.c.linker.base.603675915" 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.157500216" name="C++ Linker" superClass="org.tizen.nativecore.tool.sbi.gnu.cpp.linker">
+                                                               <option defaultValue="false" id="sbi.gnu.cpp.link.option.strip.288436062" name="Omit all symbol information (-s)" superClass="sbi.gnu.cpp.link.option.strip" valueType="boolean"/>
+                                                               <option id="sbi.gnu.cpp.linker.option.frameworks_lflags.core.2110926329" 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="-lpthread "/>
+                                                                       <listOptionValue builtIn="false" value="--sysroot=&quot;${SBI_SYSROOT}&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="-L&quot;${SBI_SYSROOT}/usr/lib&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="$(RS_LIBRARIES)"/>
+                                                               </option>
+                                                               <option id="gnu.cpp.link.option.paths.2008833880" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/lib}&quot;"/>
+                                                               </option>
+                                                               <option id="gnu.cpp.link.option.libs.1954454689" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs">
+                                                                       <listOptionValue builtIn="false" srcPrefixMapping="" srcRootPath="" value="setting-common"/>
+                                                               </option>
+                                                               <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.1247410231" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
+                                                                       <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
+                                                                       <additionalInput kind="additionalinput" paths="$(LIBS)"/>
+                                                               </inputType>
+                                                       </tool>
+                                                       <tool command="#{PLATFORM_DEFAULT_GCC_PREFIX}as" id="org.tizen.nativeapp.tool.sbi.gnu.assembler.base.514428390" name="Assembler" superClass="org.tizen.nativeapp.tool.sbi.gnu.assembler.base">
+                                                               <inputType id="cdt.managedbuild.tool.gnu.assembler.input.156588631" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
+                                                       </tool>
+                                                       <tool id="org.tizen.nativecore.tool.fnmapgen.506702535" name="C FN-Map Generator" superClass="org.tizen.nativecore.tool.fnmapgen"/>
+                                                       <tool id="org.tizen.nativecore.tool.fnmapgen.cpp.1113730454" name="C++ FN-Map Generator" superClass="org.tizen.nativecore.tool.fnmapgen.cpp"/>
+                                                       <tool id="org.tizen.nativecore.tool.ast.770098327" name="C Static Analyzer" superClass="org.tizen.nativecore.tool.ast"/>
+                                                       <tool id="org.tizen.nativecore.tool.ast.cpp.111713214" name="C++ Static Analyzer" superClass="org.tizen.nativecore.tool.ast.cpp"/>
+                                                       <tool id="org.tizen.nativecore.tool.sbi.gnu.archiver.mergelib.1020605097" name="Archive Generator" superClass="org.tizen.nativecore.tool.sbi.gnu.archiver.mergelib"/>
+                                                       <tool id="org.tizen.nativecore.tool.sbi.po.compiler.1343831432" name="PO Resource Compiler" superClass="org.tizen.nativecore.tool.sbi.po.compiler"/>
+                                                       <tool id="org.tizen.nativecore.tool.sbi.edc.compiler.1405116007" 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.so.release.1786350098">
+                       <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="org.tizen.nativecore.config.sbi.gcc45.so.release.1786350098" 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.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                                       <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                                       <extension id="org.eclipse.cdt.core.GLDErrorParser" 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.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
+                                       <extension id="org.tizen.nativecore.NativeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                                       <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                               </extensions>
+                       </storageModule>
+                       <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+                               <configuration artifactExtension="so" artifactName="setting-profile-common" buildArtefactType="org.tizen.nativecore.buildArtefactType.sharedLib" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.tizen.nativecore.buildArtefactType.sharedLib,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release" description="" errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;" id="org.tizen.nativecore.config.sbi.gcc45.so.release.1786350098" name="Release" parent="org.tizen.nativecore.config.sbi.gcc45.so.release">
+                                       <folderInfo id="org.tizen.nativecore.config.sbi.gcc45.so.release.1786350098." name="/" resourcePath="">
+                                               <toolChain id="org.tizen.nativecore.toolchain.sbi.gcc45.so.release.1122838438" name="Tizen Native Toolchain" superClass="org.tizen.nativecore.toolchain.sbi.gcc45.so.release">
+                                                       <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="org.tizen.nativeide.target.sbi.gnu.platform.base.320031579" osList="linux,win32" superClass="org.tizen.nativeide.target.sbi.gnu.platform.base"/>
+                                                       <builder buildPath="${workspace_loc:/setting-profile-common}/Release" id="org.tizen.nativecore.target.sbi.gnu.builder.1708486407" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Tizen Application Builder" superClass="org.tizen.nativecore.target.sbi.gnu.builder"/>
+                                                       <tool command="i586-linux-gnueabi-ar" id="org.tizen.nativecore.tool.sbi.gnu.archiver.1567329888" name="Archiver" superClass="org.tizen.nativecore.tool.sbi.gnu.archiver"/>
+                                                       <tool command="clang++" id="org.tizen.nativecore.tool.sbi.gnu.cpp.compiler.1128419594" name="C++ Compiler" superClass="org.tizen.nativecore.tool.sbi.gnu.cpp.compiler">
+                                                               <option id="gnu.cpp.compiler.option.optimization.level.219739374" 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.none" id="sbi.gnu.cpp.compiler.option.debugging.level.core.1780880625" name="Debug level" superClass="sbi.gnu.cpp.compiler.option.debugging.level.core" valueType="enumerated"/>
+                                                               <option id="sbi.gnu.cpp.compiler.option.570392823" superClass="sbi.gnu.cpp.compiler.option" valueType="userObjs">
+                                                                       <listOptionValue builtIn="false" value="mobile-4.0-emulator.core_llvm40.i386"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.cpp.compiler.option.frameworks_inc.core.1030020664" superClass="sbi.gnu.cpp.compiler.option.frameworks_inc.core" valueType="includePath">
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/libxml2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appcore-agent&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appfw&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/asp/&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/attach-panel&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/badge&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/base&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/cairo&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/calendar-service2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/cbhm&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/chromium-ewk&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ckm&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/contacts-svc&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/content&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/context-service&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/csr&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali-toolkit&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dbus-1.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/device&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dlog&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-buffer-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-con-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-file-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-ipc-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ector-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/e_dbus-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/edje-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eet-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-extension&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efreet-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1/eina&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eio-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eldbus-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/elementary-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/embryo-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/emile-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eo-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eom&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-client-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/feedback&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/fontconfig&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/freetype2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/geofence&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/gio-unix-2.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/glib-2.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/harfbuzz&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/iotcon&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/json-glib-1.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/location&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/maps&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media-content&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/messaging&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/metadata-editor&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minicontrol&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minizip&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/network&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/notification&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/nsd/&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/phonenumber-utils&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/privacy-privilege-manager/&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/SDL2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/sensor&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/service-adaptor&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/shortcut&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/storage&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/system&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/tef&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/telephony&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/tzsh&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ui&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ui-viewmgr&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/vulkan&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/web&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_service&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_viewer_dali&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_viewer_evas&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/wifi-direct&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/yaca&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/dbus-1.0/include&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/glib-2.0/include&quot;"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.cpp.compiler.option.frameworks_cflags.core.1251926175" 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="--sysroot=&quot;${SBI_SYSROOT}&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="-fvisibility=hidden"/>
+                                                               </option>
+                                                               <option id="gnu.cpp.compiler.option.include.paths.978125357" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/inc}&quot;"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.cpp.compiler.option.frameworks.core.380560123" 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.1425583636" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
+                                                       </tool>
+                                                       <tool command="clang" id="org.tizen.nativecore.tool.sbi.gnu.c.compiler.1904446928" 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.954354122" name="Optimization Level" superClass="gnu.c.compiler.option.optimization.level" valueType="enumerated"/>
+                                                               <option defaultValue="gnu.c.debugging.level.none" id="sbi.gnu.c.compiler.option.debugging.level.core.718350115" name="Debug level" superClass="sbi.gnu.c.compiler.option.debugging.level.core" valueType="enumerated"/>
+                                                               <option id="sbi.gnu.c.compiler.option.576964103" superClass="sbi.gnu.c.compiler.option" valueType="userObjs">
+                                                                       <listOptionValue builtIn="false" value="mobile-4.0-emulator.core_llvm40.i386"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.c.compiler.option.frameworks_inc.core.2117908111" superClass="sbi.gnu.c.compiler.option.frameworks_inc.core" valueType="includePath">
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/libxml2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appcore-agent&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appfw&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/asp/&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/attach-panel&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/badge&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/base&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/cairo&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/calendar-service2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/cbhm&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/chromium-ewk&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ckm&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/contacts-svc&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/content&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/context-service&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/csr&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali-toolkit&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dbus-1.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/device&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dlog&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-buffer-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-con-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-file-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-ipc-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ector-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/e_dbus-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/edje-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eet-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-extension&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efreet-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1/eina&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eio-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eldbus-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/elementary-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/embryo-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/emile-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eo-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eom&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-client-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/evas-1&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/feedback&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/fontconfig&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/freetype2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/geofence&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/gio-unix-2.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/glib-2.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/harfbuzz&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/iotcon&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/json-glib-1.0&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/location&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/maps&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media-content&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/messaging&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/metadata-editor&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minicontrol&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minizip&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/network&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/notification&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/nsd/&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/phonenumber-utils&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/privacy-privilege-manager/&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/SDL2&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/sensor&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/service-adaptor&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/shortcut&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/storage&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/system&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/tef&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/telephony&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/tzsh&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ui&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ui-viewmgr&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/vulkan&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/web&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_service&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_viewer_dali&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_viewer_evas&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/wifi-direct&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/yaca&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/dbus-1.0/include&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/glib-2.0/include&quot;"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.c.compiler.option.frameworks_cflags.core.1407817417" 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="--sysroot=&quot;${SBI_SYSROOT}&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="-fvisibility=hidden"/>
+                                                               </option>
+                                                               <option id="gnu.c.compiler.option.include.paths.274494345" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/inc}&quot;"/>
+                                                               </option>
+                                                               <option id="sbi.gnu.c.compiler.option.frameworks.core.1920716407" 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.425349519" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
+                                                       </tool>
+                                                       <tool id="org.tizen.nativeide.tool.sbi.gnu.c.linker.base.1069059252" 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.621037936" name="C++ Linker" superClass="org.tizen.nativecore.tool.sbi.gnu.cpp.linker">
+                                                               <option defaultValue="true" id="sbi.gnu.cpp.link.option.strip.1105549297" name="Omit all symbol information (-s)" superClass="sbi.gnu.cpp.link.option.strip" valueType="boolean"/>
+                                                               <option id="sbi.gnu.cpp.linker.option.frameworks_lflags.core.39337005" 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="-lpthread "/>
+                                                                       <listOptionValue builtIn="false" value="--sysroot=&quot;${SBI_SYSROOT}&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="-L&quot;${SBI_SYSROOT}/usr/lib&quot;"/>
+                                                                       <listOptionValue builtIn="false" value="$(RS_LIBRARIES)"/>
+                                                               </option>
+                                                               <option id="gnu.cpp.link.option.paths.1830150638" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/lib}&quot;"/>
+                                                               </option>
+                                                               <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.1715232239" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
+                                                                       <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
+                                                                       <additionalInput kind="additionalinput" paths="$(LIBS)"/>
+                                                               </inputType>
+                                                       </tool>
+                                                       <tool command="#{PLATFORM_DEFAULT_GCC_PREFIX}as" id="org.tizen.nativeapp.tool.sbi.gnu.assembler.base.1676198758" name="Assembler" superClass="org.tizen.nativeapp.tool.sbi.gnu.assembler.base">
+                                                               <inputType id="cdt.managedbuild.tool.gnu.assembler.input.1591077912" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
+                                                       </tool>
+                                                       <tool id="org.tizen.nativecore.tool.fnmapgen.1443933101" name="C FN-Map Generator" superClass="org.tizen.nativecore.tool.fnmapgen"/>
+                                                       <tool id="org.tizen.nativecore.tool.fnmapgen.cpp.807374152" name="C++ FN-Map Generator" superClass="org.tizen.nativecore.tool.fnmapgen.cpp"/>
+                                                       <tool id="org.tizen.nativecore.tool.ast.722281076" name="C Static Analyzer" superClass="org.tizen.nativecore.tool.ast"/>
+                                                       <tool id="org.tizen.nativecore.tool.ast.cpp.1030650084" name="C++ Static Analyzer" superClass="org.tizen.nativecore.tool.ast.cpp"/>
+                                                       <tool id="org.tizen.nativecore.tool.sbi.gnu.archiver.mergelib.416178153" name="Archive Generator" superClass="org.tizen.nativecore.tool.sbi.gnu.archiver.mergelib"/>
+                                                       <tool id="org.tizen.nativecore.tool.sbi.po.compiler.1889272029" name="PO Resource Compiler" superClass="org.tizen.nativecore.tool.sbi.po.compiler"/>
+                                                       <tool id="org.tizen.nativecore.tool.sbi.edc.compiler.2115193844" 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="setting-profile-common.org.tizen.nativecore.target.sbi.gcc45.so.753416480" name="Tizen Native Shared Library" projectType="org.tizen.nativecore.target.sbi.gcc45.so"/>
+       </storageModule>
+       <storageModule moduleId="scannerConfiguration">
+               <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+               <scannerConfigBuildInfo instanceId="org.tizen.nativecore.config.sbi.gcc45.so.debug.464197902">
+                       <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+               </scannerConfigBuildInfo>
+               <scannerConfigBuildInfo instanceId="org.tizen.nativecore.config.sbi.gcc45.so.release.1786350098">
+                       <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+               </scannerConfigBuildInfo>
+       </storageModule>
+       <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
+       <storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/>
+</cproject>
diff --git a/setting-profile-common/.gitignore b/setting-profile-common/.gitignore
new file mode 100644 (file)
index 0000000..3df573f
--- /dev/null
@@ -0,0 +1 @@
+/Debug/
diff --git a/setting-profile-common/.project b/setting-profile-common/.project
new file mode 100644 (file)
index 0000000..17edffd
--- /dev/null
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+       <name>setting-profile-common</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>1525948279165</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>1525948279166</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>
diff --git a/setting-profile-common/.tproject b/setting-profile-common/.tproject
new file mode 100644 (file)
index 0000000..468a834
--- /dev/null
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<tproject xmlns="http://www.tizen.org/tproject">
+    <platforms>
+        <platform>
+            <name>mobile-4.0</name>
+        </platform>
+    </platforms>
+    <package>
+        <blacklist/>
+        <resFallback autoGen="true"/>
+    </package>
+</tproject>
diff --git a/setting-profile-common/Build/appendix.mk b/setting-profile-common/Build/appendix.mk
new file mode 100644 (file)
index 0000000..2e06c34
--- /dev/null
@@ -0,0 +1 @@
+# Appendix\r
diff --git a/setting-profile-common/Build/basedef.mk b/setting-profile-common/Build/basedef.mk
new file mode 100644 (file)
index 0000000..a762983
--- /dev/null
@@ -0,0 +1,34 @@
+# Add inputs and outputs from these tool invocations to the build variables
+
+
+OS_NAME := $(shell $(UNAME))
+
+
+#ifeq ($(origin BUILD_CONFIG), undefined)
+BUILD_CONFIG ?= Debug
+#endif
+
+#ifeq ($(origin ARCH), undefined)
+ARCH ?= i386
+#endif
+
+#ifeq ($(origin PROJPATH), undefined)
+PROJPATH ?= .
+#endif
+
+
+#ifeq ($(origin PROJ_PATH), undefined)
+PROJ_PATH ?= $(PROJPATH)
+#endif
+
+#ifeq ($(strip $(OUTPUT_DIR)),)
+#OUTPUT_DIR ?= $(PROJ_PATH)/$(BUILD_CONFIG)
+#endif
+
+#ifeq ($(strip $(BUILD_ARCH)),)
+BUILD_ARCH ?= $(ARCH)
+#endif
+
+#ifeq ($(strip $(ENVENTOR_PATH)),)
+ENVENTOR_PATH ?= $(SDK_TOOLPATH)/enventor
+#endif
diff --git a/setting-profile-common/Build/build_c.mk b/setting-profile-common/Build/build_c.mk
new file mode 100644 (file)
index 0000000..5fffeea
--- /dev/null
@@ -0,0 +1,113 @@
+# C/C++ build script
+
+
+_FUNC_EXT2O = $(patsubst %.$(3),$(1)/%.o,$(2))
+_FUNC_C2O = $(call _FUNC_EXT2O,$(1),$(2),c)
+_FUNC_CPP2O = $(call _FUNC_EXT2O,$(1),$(2),cpp)
+
+
+# parameter :
+#  $(1) - C/C++ soruce file
+#  $(2) - output path
+#  $(3) - .ext
+#  $(4) - unique id
+CONVERT_ESC_EXT_TO_O = $(addprefix $(2)/,$(notdir $(patsubst %.$(3),%-$(4).o,$(1))))
+
+#CONVERT_ESC_C_TO_O = $(call CONVERT_ESC_EXT_TO_O,$(1),$(2),c)
+#CONVERT_ESC_CPP_TO_O = $(call CONVERT_ESC_EXT_TO_O,$(1),$(2),cpp)
+
+
+# parameter :
+#  $(1) - encoded one C/C++ soruce file
+#  $(2) - output path
+#  $(3) - ext title (C/C++)
+#  $(4) - ext (c/cpp)
+#  $(5) - compiler ($(CC)/$(CXX))
+#  $(6) - build opt
+#  $(7) - build opt file
+# output :
+#  $(8) - output files list
+define C_BUILD_PROC_RAW
+$(call CONVERT_ESC_EXT_TO_O,$(1),$(2),$(4),$(8)) : $(call DECODE_4MAKE,$(1)) $(7)
+       @echo '  Building file: $$<'
+       @echo '  Invoking: $(3) Compiler'
+       $$(call MAKEDIRS,$$(@D))
+       $(5) -c "$$<" -o "$$@" $(6) -Wp,@$(7)
+       @echo '  Finished building: $$<'
+$(9) += $(call CONVERT_ESC_EXT_TO_O,$(1),$(2),$(4),$(8))
+endef
+
+
+# parameter :
+#  $(1) - output paths
+#  $(2) - src paths
+#  $(3) - inc paths
+#  $(4) - inc files
+#  $(5) - Defs
+#  $(6) - UnDefs
+#  $(7) - compiler opt
+#  $(8) - compiler opt file
+#  $(9) - ext title (C/C++)
+#  $(10) - ext (c/cpp)
+#  $(11) - compiler ($(CC)/$(CXX))
+# output :
+#  $(12) - OBJS
+# return :
+#  none
+define C_PROC_RAW
+
+_OUTPUT_DIR := $$(strip $(1))#
+_SRCS := $(2)#
+_INCS := $(3)#
+_INC_FILES := $(4)#
+_DEFS := $(5)#
+_UNDEFS := $(6)#
+
+_OPT := $(7)
+_OPT_FILE := $(8)
+
+_EXT_TITLE := $(9)
+_EXT := $(10)
+_COMPILER := $(11)
+
+#_OUTPUT_FILES := $(12)
+
+_ENC_SRCS := $$(call ENCODE_4MAKE,$$(_SRCS))
+_ENC_SRCS := $$(filter %.$$(_EXT),$$(_ENC_SRCS))
+
+ifneq ($$(strip $$(_SRCS)),)
+
+_NORMAL_SRCS := $$(filter-out %*.$$(_EXT),$$(_ENC_SRCS))
+_WIDLCARD_SRCS := $$(filter %*.$$(_EXT),$$(_ENC_SRCS))
+
+_ALL_SRCS := $$(call DECODE_4MAKE,$$(_NORMAL_SRCS)) \
+             $$(foreach var,$$(_WIDLCARD_SRCS),$$(call FIND_FILES_4MAKE,$$(call DECODE_4MAKE,$$(var))))
+
+ifneq ($$(strip $$(_ALL_SRCS)),)
+
+_ENC_SRCS := $$(call ENCODE_4MAKE,$$(_ALL_SRCS))
+
+_CDEFS := $$(CDEFS)
+_CDEFS += $$(addprefix -D,$$(_DEFS))
+_CDEFS += $$(addprefix -U,$$(_UNDEFS))
+
+_ENC_C_INCS := $$(call ENCODE_4MAKE,$$(_INCS))
+_ENC_C_INCS := $$(addprefix -I,$$(_ENC_C_INCS))
+
+_ENC_INC_FILES := $$(call ENCODE_4MAKE,$$(_INC_FILES))
+_ENC_INC_FILES += $$(addprefix -include,$$(_ENC_INC_FILES))
+
+_C_INCS := $$(call DECODE_4MAKE,$$(_ENC_C_INCS) $$(_ENC_C_INC_FILES))
+
+_DEFS := $$(_CDEFS) $$(_C_INCS) -I"pch" $$(_OPT)
+
+_UNIQUE_ID = $$(firstword $$(shell echo $$(var) | $$(CKSUM)))
+
+$$(foreach var,$$(_ENC_SRCS),$$(eval $$(call C_BUILD_PROC_RAW,$$(var),$$(_OUTPUT_DIR),$$(_EXT_TITLE),$$(_EXT),$$(_COMPILER),$$(_DEFS),$$(_OPT_FILE),$$(_UNIQUE_ID),$(12))))
+
+endif  # (_(strip _(_ALL_SRCS)),)
+
+endif  # (_(strip _(_SRCS)),)
+
+
+endef
diff --git a/setting-profile-common/Build/build_edc.mk b/setting-profile-common/Build/build_edc.mk
new file mode 100644 (file)
index 0000000..6f85fdd
--- /dev/null
@@ -0,0 +1,81 @@
+# EDC build script
+
+
+FUNC_EDC2EDJ = $(patsubst %.edc,$(2)/%.edj,$(1))
+
+# parameter :
+#  $(1) - C/C++ soruce file
+#  $(2) - output path
+CONVERT_ESC_EDC_TO_EDJ = $(call CONVERT_4MAKE_TO_OUT,$(call FUNC_EDC2EDJ,$(1),$(2)))
+
+
+# parameter :
+#  $(1) - encoded one C/C++ soruce file
+#  $(2) - output path
+#  $(3) - build opt
+# output :
+#  $(4) - output files list
+define EDJ_BUILD_PROC_RAW
+$(call CONVERT_ESC_EDC_TO_EDJ,$(1),$(2)) : $(call DECODE_4MAKE,$(1))
+       @echo '  Building file: $$<'
+       @echo '  Invoking: EDC Resource Compiler'
+       $$(call MAKEDIRS,$$(@D))
+       $$(EDJE_CC) $(3) "$$<" "$$@"
+       @echo '  Finished building: $$<'
+$(4) += $(call CONVERT_ESC_EDC_TO_EDJ,$(1),$(2))
+endef
+
+
+# parameter :
+#  $(1) - output paths
+#  $(2) - src paths
+#  $(3) - image inc paths
+#  $(4) - sound inc paths
+#  $(5) - font inc paths
+# output :
+#  $(6) - OBJS 
+# return :
+#  none
+define EDJ_PROC_RAW
+
+_OUTPUT_DIR := $$(strip $(1))#
+_SRCS := $(2)# 
+_IMAGE_DIRS := $(3)# 
+_SOUND_DIRS := $(4)# 
+_FONT_DIRS := $(5)# 
+
+ifneq ($$(strip $$(_SRCS)),)
+
+_ENC_SRCS := $$(call ENCODE_4MAKE,$$(_SRCS)) 
+
+_NORMAL_SRCS := $$(filter-out %*.edc,$$(_ENC_SRCS))
+_WIDLCARD_SRCS := $$(filter %*.edc,$$(_ENC_SRCS))
+
+_ALL_SRCS := $$(call DECODE_4MAKE,$$(_NORMAL_SRCS)) \
+             $$(foreach var,$$(_WIDLCARD_SRCS),$$(call FIND_FILES_4MAKE,$$(call DECODE_4MAKE,$$(var))))
+
+ifneq ($$(strip $$(_ALL_SRCS)),)
+
+_ENC_SRCS := $$(call ENCODE_4MAKE,$$(_ALL_SRCS)) 
+
+_COMPILER_FLAGS := -id "$$(ENVENTOR_SHARED_RES_PATH)/images"
+_COMPILER_FLAGS += -sd "$$(ENVENTOR_SHARED_RES_PATH)/sounds"
+_COMPILER_FLAGS += -fd "$$(ENVENTOR_SHARED_RES_PATH)/fonts"
+
+ifneq ($$(strip $$(_IMAGE_DIRS)),)
+_COMPILER_FLAGS += $$(addprefix -id ,$$(_IMAGE_DIRS))
+endif
+ifneq ($$(strip $$(_SOUND_DIRS)),)
+_COMPILER_FLAGS += $$(addprefix -sd ,$$(_SOUND_DIRS))
+endif
+ifneq ($$(strip $$(_FONT_DIRS)),)
+_COMPILER_FLAGS += $$(addprefix -fd ,$$(_FONT_DIRS))
+endif
+
+$$(foreach var,$$(_ENC_SRCS),$$(eval $$(call EDJ_BUILD_PROC_RAW,$$(var),$$(_OUTPUT_DIR),$$(_COMPILER_FLAGS),$(6))))
+
+endif  # (_(strip _(_ALL_SRCS)),)
+
+endif  # (_(strip _(_SRCS)),)
+
+endef
diff --git a/setting-profile-common/Build/build_po.mk b/setting-profile-common/Build/build_po.mk
new file mode 100644 (file)
index 0000000..d88d71a
--- /dev/null
@@ -0,0 +1,64 @@
+# PO build script
+
+
+_FUNC_PO2MO = $(patsubst %.po,$(2)/res/locale/%/LC_MESSAGES/$(3).mo,$(notdir $(1)))
+
+
+# parameter :
+#  $(1) - C/C++ soruce file
+#  $(2) - output path
+#  $(3) - app name
+CONVERT_ESC_PO_TO_MO = $(call CONVERT_4MAKE_TO_OUT,$(call _FUNC_PO2MO,$(1),$(2),$(3)))
+
+
+# parameter :
+#  $(1) - encoded one C/C++ soruce file
+#  $(2) - output path
+#  $(3) - app name
+# output :
+#  $(4) - output files list
+define MO_BUILD_PROC_RAW
+$(call CONVERT_ESC_PO_TO_MO,$(1),$(2),$(3)) : $(call DECODE_4MAKE,$(1))
+       @echo '  Building file: $$<'
+       @echo '  Invoking: msgfmt String Formatter'
+       $$(call MAKEDIRS,$$(@D))
+       $$(MSGFMT) -o "$$@" "$$<"
+       @echo '  Finished building: $$<'
+$(4) += $(call CONVERT_ESC_PO_TO_MO,$(1),$(2),$(3))
+endef
+
+# parameter :
+#  $(1) - output dir
+#  $(2) - src paths
+#  $(3) - app name
+# output :
+#  $(4) - OBJS 
+
+define MO_PROC_RAW
+
+_OUTPUT_DIR := $(1)
+_SRCS := $(2)
+_APPNAME := $(3)
+
+ifneq ($$(strip $$(_SRCS)),)
+
+_ENC_SRCS := $$(call ENCODE_4MAKE,$$(_SRCS)) 
+
+_NORMAL_SRCS := $$(filter-out %*.po,$$(_ENC_SRCS))
+_WIDLCARD_SRCS := $$(filter %*.po,$$(_ENC_SRCS))
+
+_ALL_SRCS := $$(call DECODE_4MAKE,$$(_NORMAL_SRCS)) \
+             $$(foreach var,$$(_WIDLCARD_SRCS),$$(call FIND_FILES_4MAKE,$$(call DECODE_4MAKE,$$(var))))
+
+ifneq ($$(strip $$(_ALL_SRCS)),)
+
+_ENC_SRCS := $$(call ENCODE_4MAKE,$$(_ALL_SRCS)) 
+
+$$(foreach var,$$(_ENC_SRCS),$$(eval $$(call MO_BUILD_PROC_RAW,$$(var),$$(_OUTPUT_DIR),$$(_APPNAME),$(4))))
+
+endif  # (_(strip _(_ALL_SRCS)),)
+
+endif  # (_(strip _(_SRCS)),)
+
+endef
diff --git a/setting-profile-common/Build/flags.mk b/setting-profile-common/Build/flags.mk
new file mode 100644 (file)
index 0000000..f4f1742
--- /dev/null
@@ -0,0 +1,16 @@
+
+DEBUG_OP = -g3 -D_DEBUG 
+CPP_DEBUG_OP = -D_DEBUG 
+
+OPTIMIZATION_OP = -O0 
+CPP_OPTIMIZATION_OP = 
+
+COMPILE_FLAGS = $(DEBUG_OP) $(OPTIMIZATION_OP) -Wall -c -fmessage-length=0 -fPIC 
+
+CPP_COMPILE_FLAGS = $(CPP_DEBUG_OP) $(CPP_OPTIMIZATION_OP) 
+
+LINK_FLAGS = -shared -Wl,--no-undefined 
+
+AR_FLAGS = 
+
+EDC_COMPILE_FLAGS = 
\ No newline at end of file
diff --git a/setting-profile-common/Build/funcs.mk b/setting-profile-common/Build/funcs.mk
new file mode 100644 (file)
index 0000000..3ba778b
--- /dev/null
@@ -0,0 +1,50 @@
+
+BSLASH := \\#
+NULL_CHAR := #
+SPACE := \ #
+COLON := :#
+DOTDOT := ..#
+SPACE_ESC := &sp;#
+COLON_ESC := &co;#
+SPACE_OUT := ~sp~#
+COLON_OUT := ~co~#
+DOTDOT_OUT := ~dtdt~#
+
+BSLASH2SLASH = $(subst $(BSLASH),/,$(1))
+
+REMOVE_TAIL = $(patsubst %/,%,$(1))
+
+#LOWER_CASE = $(shell echo translit($(1),[A-Z],[a-z])|$(M4))
+LOWER_CASE = $(shell echo $(1)|$(TR) [A-Z] [a-z])
+
+#ifneq ($(findstring Windows,$(OS)),)
+# ...
+#endif
+
+FIND_FILES = $(shell $(FIND) $(1)/$(2) | $(SED) 's/^$(subst /,$(BSLASH)/,$(1))$(BSLASH)///')
+FIND_FILES_ESC = $(shell $(FIND) $(1)/$(2) | $(SED) 's/^$(subst /,$(BSLASH)/,$(1))$(BSLASH)///' -e 's/:/$(BSLASH)&co;/g' -e 's/$(BSLASH) /$(BSLASH)&sp;/g')
+FIND_FILES_4MAKE = $(shell $(FIND) $(1)/$(2) | $(SED) 's/^$(subst /,$(BSLASH)/,$(1))$(BSLASH)///')
+
+FIND_FILES_ABS = $(shell $(FIND) $(1))
+FIND_FILES_ABS_4MAKE = $(shell $(FIND) $(1) -e 's/$(BSLASH) /$(BSLASH)&sp;/g')
+FIND_FILES_ABS_ESC = $(shell $(FIND) $(1) -e 's/:/$(BSLASH)&co;/g' -e 's/$(BSLASH) /$(BSLASH)&sp;/g')
+
+FIND_FILES_4MAKE = $(shell $(FIND) $(1) | $(SED) 's/ /\\\ /g')
+
+#ENCODE_ESC = $(shell echo $(1) | $(SED) -e 's/:/$(BSLASH)&co;/g' -e 's/$(BSLASH) /$(BSLASH)&sp;/g')
+#DECODE_ESC = $(shell echo $(1) | $(SED) -e 's/$(BSLASH)&co;/:/g' -e 's/$(BSLASH)&sp;/$(BSLASH) / g')
+ENCODE_ESC = $(subst $(SPACE),$(SPACE_ESC),$(subst $(COLON),$(COLON_ESC),$(1)))
+DECODE_ESC = $(subst $(COLON_ESC),$(COLON),$(subst $(SPACE_ESC),$(SPACE),$(1)))
+ENCODE_4MAKE = $(subst $(SPACE),$(SPACE_ESC),$(1))
+DECODE_4MAKE = $(subst $(SPACE_ESC),$(SPACE),$(1))
+
+CONVERT_TO_OUT = $(subst $(DOTDOT),$(DOTDOT_OUT),$(subst $(COLON),$(COLON_OUT),$(subst $(SPACE),$(SPACE_OUT),$(1))))
+CONVERT_ESC_TO_OUT = $(subst $(DOTDOT),$(DOTDOT_OUT),$(subst $(COLON_ESC),$(COLON_OUT),$(subst $(SPACE_ESC),$(SPACE_OUT),$(1))))
+CONVERT_4MAKE_TO_OUT = $(subst $(DOTDOT),$(DOTDOT_OUT),$(subst $(COLON),$(COLON_OUT),$(subst $(SPACE_ESC),$(SPACE_OUT),$(1))))
+
+PROC_NO_EXIST = $(if $(wildcard $(1)),,$(call $(2),$(1)))
+define MAKEDIRS0
+       @echo '  Building directory: $(1)'
+       @$(MKDIR) $(MKDIR_OP) $(subst $(BSLASH),/,$(1))
+endef
+MAKEDIRS = $(call PROC_NO_EXIST,$(1),MAKEDIRS0)
diff --git a/setting-profile-common/Build/makefile b/setting-profile-common/Build/makefile
new file mode 100644 (file)
index 0000000..117b240
--- /dev/null
@@ -0,0 +1,34 @@
+# 
+# Usege : make -f <proj_root>/Build/makefile -C <proj_root> 
+#
+BUILD_SCRIPT_VERSION := 1.1.0
+
+.PHONY : app_version app_build app_clean build_version
+
+
+all : app_build
+
+clean : app_clean
+
+version : build_version
+
+#PROJ_ROOT = .
+#BUILD_ROOT := $(PROJ_PATH)/Build#
+
+ifeq ($(MAKE_NAME),mingw32-make)
+ifneq ($(SHELL),)
+OPTIONS += --eval="SHELL=$(SHELL)"
+endif
+endif
+
+app_build :
+       @echo $(MAKE) -f "$(BUILD_ROOT)/makefile.mk"
+       @$(MAKE_BIN) -f "$(BUILD_ROOT)/makefile.mk" -C "$(PROJ_PATH)" $(OPTIONS)
+
+app_clean :
+       @$(MAKE) -f "$(BUILD_ROOT)/makefile.mk" -C "$(PROJ_PATH)" $(OPTIONS) clean
+
+build_version :
+       @echo makefile : $(BUILD_SCRIPT_VERSION)
+       @$(MAKE) -f "$(BUILD_ROOT)/makefile.mk" -C "$(PROJ_PATH)" $(OPTIONS) version
diff --git a/setting-profile-common/Build/makefile.mk b/setting-profile-common/Build/makefile.mk
new file mode 100644 (file)
index 0000000..53c0428
--- /dev/null
@@ -0,0 +1,205 @@
+#
+# Usege : make -f <proj_root>/Build/makefile -C <proj_root>
+#
+
+BUILD_SCRIPT_VERSION := 1.2.3
+
+.PHONY : app_version app_clean build_version
+
+
+all : app_build
+
+clean : app_clean
+
+version : build_version
+
+_BLANK :=#
+_SPACE := $(_BLANK) $(_BLANK)#
+_SPACE_4MAKE := \$(_SPACE)#
+
+NULL_CHAR :=#
+SPACE := $(NULL_CHAR) $(NULL_CHAR)#
+
+PROJ_ROOT := .
+_PROJ_ROOT_4MAKE := $(subst $(_SPACE),$(_SPACE_4MAKE),$(PROJ_ROOT))#
+PROJ_ROOT=$(_PROJ_ROOT_4MAKE)
+_BUILD_ROOT_4MAKE := $(subst $(_SPACE),$(_SPACE_4MAKE),$(BUILD_ROOT))#
+BUILD_ROOT=$(_BUILD_ROOT_4MAKE)
+
+include $(BUILD_ROOT)/basedef.mk
+
+include $(PROJ_ROOT)/project_def.prop
+-include $(PROJ_ROOT)/build_def.prop
+
+include $(BUILD_ROOT)/funcs.mk
+
+-include $(BUILD_ROOT)/tooldef.mk
+-include $(BUILD_ROOT)/flags.mk
+-include $(BUILD_ROOT)/platform.mk
+
+
+APPTYPE := $(type)
+
+OUTPUT_DIR := $(PROJ_ROOT)/$(BUILD_CONFIG)
+OBJ_OUTPUT := $(OUTPUT_DIR)/objs
+
+LOWER_APPNAME := $(call LOWER_CASE,$(APPNAME))
+APPID2 := $(subst $(basename $(APPID)).,,$(APPID))
+
+ifeq ($(strip $(APPTYPE)),app)
+APPFILE := $(OUTPUT_DIR)/$(LOWER_APPNAME)
+endif
+ifeq ($(strip $(APPTYPE)),staticLib)
+APPFILE := $(OUTPUT_DIR)/lib$(LOWER_APPNAME).a
+endif
+ifeq ($(strip $(APPTYPE)),sharedLib)
+APPFILE := $(OUTPUT_DIR)/lib$(LOWER_APPNAME).so
+endif
+
+ifneq ($(strip $(PLATFORM_INCS)),)
+PLATFORM_INCS_FILE := $(OBJ_OUTPUT)/platform_incs_file.inc
+endif
+
+include $(BUILD_ROOT)/build_c.mk
+
+
+ifeq ($(strip $(APPTYPE)),app)
+EXT_OP := -fPIE
+endif
+ifeq ($(strip $(APPTYPE)),staticLib)
+EXT_OP := -fPIE
+endif
+ifeq ($(strip $(APPTYPE)),sharedLib)
+EXT_OP := -fPIC
+endif
+
+C_OPT := $(COMPILE_FLAGS) $(TC_COMPILER_MISC) $(RS_COMPILER_MISC) $(EXT_OP) --sysroot="$(SYSROOT)" -Werror-implicit-function-declaration $(M_OPT) $(USER_C_OPTS)
+CPP_OPT := $(CPP_COMPILE_FLAGS) $(TC_COMPILER_MISC) $(RS_COMPILER_MISC) $(EXT_OP) --sysroot="$(SYSROOT)" -Werror-implicit-function-declaration $(M_OPT) $(USER_CPP_OPTS)
+C_OPT_FILE := $(PLATFORM_INCS_FILE)
+
+OBJS := #
+
+# Global C/C++
+ifeq ($(strip $(USER_ROOT)),)
+USER_ROOT := $(PROJ_ROOT)
+endif
+$(eval $(call C_PROC_RAW,$(OBJ_OUTPUT),$(USER_SRCS),$(USER_INC_DIRS),$(USER_INC_FILES),$(USER_DEFS),$(USER_UNDEFS),$(C_OPT),$(C_OPT_FILE),C,c,$(CC),OBJS))
+$(foreach ext,cpp cxx cc c++ C,$(eval $(call C_PROC_RAW,$(OBJ_OUTPUT),$(USER_SRCS),$(USER_INC_DIRS),$(USER_CPP_INC_FILES),$(USER_CPP_DEFS),$(USER_CPP_UNDEFS),$(CPP_OPT),$(C_OPT_FILE),C++,$(ext),$(CXX),OBJS)))
+
+# Individual C/C++
+ifneq ($(strip $(USER_EXT_C_KEYS)),)
+$(foreach var,$(USER_EXT_C_KEYS),$(eval $(call C_PROC_RAW,$(OBJ_OUTPUT),$(USER_EXT_$(var)_SRCS),$(USER_EXT_$(var)_INC_DIRS),$(USER_EXT_$(var)_INC_FILES),$(USER_EXT_$(var)_DEFS),$(USER_EXT_$(var)_UNDEFS),$(C_OPT),$(C_OPT_FILE),C,c,$(CC),OBJS)))
+$(foreach ext,cpp cxx cc c++ C,$(foreach var,$(USER_EXT_C_KEYS),$(eval $(call C_PROC_RAW,$(OBJ_OUTPUT),$(USER_EXT_$(var)_SRCS),$(USER_EXT_$(var)_INC_DIRS),$(USER_EXT_$(var)_CPP_INC_FILES),$(USER_EXT_$(var)_CPP_DEFS),$(USER_EXT_$(var)_CPP_UNDEFS),$(CPP_OPT),$(C_OPT_FILE),C++,$(ext),$(CXX),OBJS))))
+endif
+
+
+ifneq ($(strip $(USER_LIB_DIRS)),)
+_ENC_USER_LIB_DIRS := $(call ENCODE_4MAKE,$(USER_LIB_DIRS))
+_ENC_USER_LIB_DIRS := $(addprefix -L,$(_ENC_USER_LIB_DIRS))
+LIBPATHS := $(call DECODE_4MAKE,$(_ENC_USER_LIB_DIRS))
+endif
+
+LIBS += $(addprefix -l,$(USER_LIBS))
+
+UOBJS += $(USER_OBJS)
+
+M_OPT = -MMD -MP -MF"$(@:%.o=%.d)"
+
+DEPS := $(OBJS:.o=.d)
+
+ifneq ($(strip $(DEPS)),)
+-include $(PROJ_ROOT)/Build/$(DEPS)
+endif
+
+
+ifeq ($(strip $(APPTYPE)),app)
+$(APPFILE) : $(OBJS) $(UOBJS)
+       @echo '  Building target: $@'
+       @echo '  Invoking: C/C++ Linker'
+       $(call MAKEDIRS,$(@D))
+       $(CXX) -o $(APPFILE) $(OBJS) $(UOBJS) $(LIBPATHS) -Xlinker --as-needed $(LIBS) $(LINK_FLAGS) $(TC_LINKER_MISC) $(RS_LINKER_MISC) -pie -lpthread --sysroot="$(SYSROOT)" -Xlinker --version-script="$(PROJ_ROOT)/.exportMap" $(RS_LIB_PATHS) $(RS_LIBRARIES) -Xlinker -rpath='$$ORIGIN/../lib' -Werror-implicit-function-declaration $(USER_LINK_OPTS)
+       @echo '  Finished building target: $@'
+endif
+ifeq ($(strip $(APPTYPE)),staticLib)
+$(APPFILE) : $(OBJS) $(UOBJS)
+       @echo '  Building target: $@'
+       @echo '  Invoking: Archive utility'
+       $(call MAKEDIRS,$(@D))
+       $(AR) -r $(APPFILE) $(OBJS) $(UOBJS) $(AR_FLAGS) $(USER_LINK_OPTS)
+       @echo '  Finished building target: $@'
+endif
+ifeq ($(strip $(APPTYPE)),sharedLib)
+$(APPFILE) : $(OBJS) $(UOBJS)
+       @echo '  Building target: $@'
+       @echo '  Invoking: C/C++ Linker'
+       $(call MAKEDIRS,$(@D))
+       $(CXX) -o $(APPFILE) $(OBJS) $(UOBJS) $(LIBPATHS) -Xlinker --as-needed $(LIBS) $(LINK_FLAGS) $(TC_LINKER_MISC) $(RS_LINKER_MISC) -shared -lpthread --sysroot="$(SYSROOT)" $(RS_LIB_PATHS) $(RS_LIBRARIES) $(USER_LINK_OPTS)
+       @echo '  Finished building target: $@'
+endif
+
+
+$(OBJ_OUTPUT) :
+       $(call MAKEDIRS,$@)
+
+$(OUTPUT_DIR) :
+       $(call MAKEDIRS,$@)
+
+
+#ifneq ($(strip $(PLATFORM_INCS)),)
+#$(PLATFORM_INCS_FILE) : $(OBJ_OUTPUT)
+#      @echo '  Building inc file: $@'
+#ifneq ($(findstring Windows,$(OS)),)
+#ifneq ($(findstring 3.82,$(MAKE_VERSION)),)
+#      $(file > $@,$(PLATFORM_INCS))
+#else
+#      @echo $(PLATFORM_INCS) > $@
+#endif
+#else
+#      @echo '$(PLATFORM_INCS)' > $@
+#endif
+#endif
+
+
+include $(BUILD_ROOT)/build_edc.mk
+
+#ifeq ($(strip $(ENVENTOR_SHARED_RES_PATH)),)
+ENVENTOR_SHARED_RES_PATH ?= $(ENVENTOR_PATH)/share/enventor
+#endif
+
+EDJ_FILES :=
+
+# Global EDCs
+ifneq ($(strip $(USER_EDCS)),)
+$(eval $(call EDJ_PROC_RAW,$(OUTPUT_DIR),$(USER_EDCS),$(USER_EDCS_IMAGE_DIRS),$(USER_EDCS_SOUND_DIRS),$(USER_EDCS_FONT_DIRS),EDJ_FILES))
+endif
+
+# Individual EDCs
+ifneq ($(strip $(USER_EXT_EDC_KEYS)),)
+$(foreach var,$(USER_EXT_EDC_KEYS),$(eval $(call EDJ_PROC_RAW,$(OUTPUT_DIR),$(USER_EXT_$(var)_EDCS),$(USER_EXT_$(var)_EDCS_IMAGE_DIRS),$(USER_EXT_$(var)_EDCS_SOUND_DIRS),$(USER_EXT_$(var)_EDCS_FONT_DIRS),EDJ_FILES)))
+endif
+
+
+include $(BUILD_ROOT)/build_po.mk
+
+MO_FILES :=
+
+# Global POs
+ifneq ($(strip $(USER_POS)),)
+$(eval $(call MO_PROC_RAW,$(OUTPUT_DIR),$(USER_POS),$(APPID2),MO_FILES))
+endif
+
+
+secondary-outputs : $(EDJ_FILES) $(MO_FILES)
+
+-include appendix.mk
+
+app_build : $(OUTPUT_DIR) $(APPFILE) secondary-outputs
+       @echo ========= done =========
+
+
+app_clean :
+       rm -f $(APPFILE)
+       rm -rf $(OUTPUT_DIR)
+
+build_version :
+       @echo makefile.mk : $(BUILD_SCRIPT_VERSION)
diff --git a/setting-profile-common/Build/platform.mk b/setting-profile-common/Build/platform.mk
new file mode 100644 (file)
index 0000000..3895d90
--- /dev/null
@@ -0,0 +1,18 @@
+# Add inputs and outputs from these tool invocations to the build variables
+
+SYSROOT = $(SBI_SYSROOT)
+
+#USR_INCS := $(addprefix -I "$(SYSROOT),$(PLATFORM_INCS_EX))
+USR_INCS1 := $(addsuffix ",$(PLATFORM_INCS_EX))
+USR_INCS := $(addprefix -I "$(SYSROOT),$(USR_INCS1))
+
+ifeq ($(strip $(PLATFORM_LIB_PATHS)),)
+RS_LIB_PATHS := "$(SYSROOT)/usr/lib"
+else
+RS_LIB_PATHS1 := $(addsuffix ",$(PLATFORM_LIB_PATHS))
+RS_LIB_PATHS := $(addprefix -L "$(SYSROOT),$(RS_LIB_PATHS1))
+endif
+
+RS_LIBRARIES := $(addprefix -l,$(RS_LIBRARIES_EX))
+
+PLATFORM_INCS = $(USR_INCS) -I "$(SDK_PATH)/library"
diff --git a/setting-profile-common/Build/tooldef.mk b/setting-profile-common/Build/tooldef.mk
new file mode 100644 (file)
index 0000000..c62243c
--- /dev/null
@@ -0,0 +1,70 @@
+# Add inputs and outputs from these tool invocations to the build variables
+
+ifneq ($(strip $(SHELL_BIN)),)
+SHELL = $(SHELL_BIN)
+else
+SHELL = sh
+endif
+
+ifneq ($(strip $(MKDIR_BIN)),)
+MKDIR = $(MKDIR_BIN)
+MKDIR_OP = -p
+else
+MKDIR = mkdir
+MKDIR_OP = -p
+endif
+
+ifneq ($(strip $(UNAME_BIN)),)
+UNAME = $(UNAME_BIN)
+else
+UNAME = uname
+endif
+
+ifneq ($(strip $(M4_BIN)),)
+M4 = $(M4_BIN)
+else
+M4 = m4
+endif
+
+ifneq ($(strip $(TR_BIN)),)
+TR = $(TR_BIN)
+else
+TR = tr
+endif
+
+ifneq ($(strip $(FIND_BIN)),)
+FIND = $(FIND_BIN)
+else
+FIND = find
+endif
+
+ifneq ($(strip $(SED_BIN)),)
+SED = $(SED_BIN)
+else
+SED = sed
+endif
+
+ifneq ($(strip $(GREP_BIN)),)
+GREP = $(GREP_BIN)
+else
+GREP = grep
+endif
+
+ifneq ($(strip $(EDJE_CC_BIN)),)
+EDJE_CC = $(EDJE_CC_BIN)
+else
+EDJE_CC = edje_cc
+endif
+
+ifneq ($(strip $(MSGFMT_BIN)),)
+MSGFMT = $(MSGFMT_BIN)
+else
+MSGFMT = msgfmt
+endif
+
+ifneq ($(strip $(CKSUM_BIN)),)
+CKSUM = $(CKSUM_BIN)
+else
+CKSUM = cksum
+endif
+
diff --git a/setting-profile-common/build_def.prop b/setting-profile-common/build_def.prop
new file mode 100644 (file)
index 0000000..6bb5e2f
--- /dev/null
@@ -0,0 +1,6 @@
+
+# Add pre/post build process
+PREBUILD_DESC = 
+PREBUILD_COMMAND = 
+POSTBUILD_DESC = 
+POSTBUILD_COMMAND = 
diff --git a/setting-profile-common/inc/setting-profile-common.h b/setting-profile-common/inc/setting-profile-common.h
new file mode 100644 (file)
index 0000000..7b2a329
--- /dev/null
@@ -0,0 +1,21 @@
+#ifndef _SETTING-PROFILE-COMMON_H_
+#define _SETTING-PROFILE-COMMON_H_
+
+/**
+ * This header file is included to define _EXPORT_.
+ */
+#include <stdbool.h>
+#include <tizen.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+// This method is exported from setting-profile-common.so
+EXPORT_API bool tizensetting-profile-common(void);
+
+#ifdef __cplusplus
+}
+#endif
+#endif // _SETTING-PROFILE-COMMON_H_
+
diff --git a/setting-profile-common/inc/setting-profile.h b/setting-profile-common/inc/setting-profile.h
new file mode 100644 (file)
index 0000000..6b75ec9
--- /dev/null
@@ -0,0 +1,153 @@
+/*
+ * setting
+ *
+ * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd.
+ *
+ * Contact: MyoungJune Park <mj2004.park@samsung.com>
+ *
+ * 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.
+ *
+ */
+#ifndef __SETTING_PROFILE_H__
+#define __SETTING_PROFILE_H__
+
+#include <player.h>
+#include <sound_manager.h>
+#include <efl_extension.h>
+#include <feedback.h>
+#include <call-manager.h>
+#include <system_settings.h>
+#include <setting-common/setting-common-init.h>
+#include <setting-common/setting-common-general-func.h>
+#include <setting-common/setting-common-draw-widget.h>
+#include <setting-common/setting-common-view.h>
+
+#define SETTING_PROFILE_ICON_PATH_CFG _TZ_SYS_RO_APP"/org.tizen.setting/res/icons/"
+
+#define VOLUME_APP_NAME "org.tizen.setting.volume"
+#define SETTING_PROFILE_MMC_PATH \
+       _TZ_SYS_MEDIA"/sdcard"
+#define SETTING_DEFAULT_MSG_TONE \
+       _TZ_SYS_GLOBALUSER_DATA"/settings/Alerts/Whistle.ogg"
+#define SETTING_DEFAULT_MEDIA_TONE \
+       _TZ_SYS_GLOBALUSER_DATA"/settings/Ringtones/ringtone_sdk.mp3"
+#define SUPPORT_PLAYER_ASYNC 1
+
+/*Call ringtone:3 icon status */
+#define ICON_CALL_VIB \
+       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_volume_vibrate.png"
+#define ICON_CALL_NORMAL \
+       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_incoming_call.png"
+#define ICON_CALL_MUTE \
+       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_volume_mute.png"
+
+/*Notification: 2 icon status */
+#define ICON_NOTI_VIB \
+       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_notification_vibrate.png"
+#define ICON_NOTI_MUTE \
+       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_notification_mute.png"
+#define ICON_NOTI_NORMAL \
+       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_notification.png"
+
+/*Media: 2 icon status */
+#define ICON_MEDIA_MUTE                SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_volume_mute.png"
+#define ICON_MEDIA_NORMAL      SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_volume.png"
+
+/*System:2 icon status */
+#define ICON_SYSTEM_MUTE \
+       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_system_mute.png"
+#define ICON_SYSTEM_NORMAL \
+       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_system.png"
+
+typedef enum {
+       SND_SLIDER_CALL = 0,
+       SND_SLIDER_NOTI,
+       SND_SLIDER_MEDIA,
+       SND_SLIDER_SYSTEM,
+       SND_SLIDER_MAX,
+} SoundType;
+
+typedef struct _SettingSoundData SettingSoundData;
+
+/**
+ * Setting Profile UG context
+ * all UG function has void* as an agument. this is casted back to
+ * SettingSoundData and the functions access app context.
+ */
+struct _SettingSoundData {
+       char *viewtype;
+       MainData md;
+
+       /* add more variables here (move your appdata to here) */
+       Elm_Genlist_Item_Class itc_layout;
+       Elm_Genlist_Item_Class itc_layout_1icon;
+
+       /* Main view */
+       Setting_GenGroupItem_Data *data_call_alert_tone;
+       Setting_GenGroupItem_Data *data_call_volume;
+       Setting_GenGroupItem_Data *data_msg_alert_tone;
+       Setting_GenGroupItem_Data *data_noti_volume;
+       Setting_GenGroupItem_Data *data_touch_volume;
+       Setting_GenGroupItem_Data *data_media_volume;
+       Setting_GenGroupItem_Data *data_sound_when_ring;
+       Setting_GenGroupItem_Data *data_do_not_disturb;
+       Setting_GenGroupItem_Data *data_notifiaction_on_lock_screen;
+
+       /* Feedback */
+       Setting_GenGroupItem_Data *data_lock_sound;
+       Setting_GenGroupItem_Data *data_keyboard_sound;
+       Setting_GenGroupItem_Data *data_button_sounds;
+       Setting_GenGroupItem_Data *data_touch_sounds;
+
+       player_h mp_player;
+       player_h mp_prepare_async;
+       sound_stream_info_h ringtone_sound_stream_info;
+       sound_stream_info_h noti_sound_stream_info;
+       sound_stream_info_h media_sound_stream_info;
+
+       bool sound_on;
+       char *song_playing;
+       char *ringtone_type;
+
+       /* for performance of incoming call ringtone slider */
+       Ecore_Idler *play_ringtone_idler;
+
+       Ecore_Event_Handler *keydown_handler;
+       Ecore_Event_Handler *keyup_handler;
+       bool is_pressing;
+       Ecore_Timer *updown_timer;
+       Evas_Object *calling_popup; /* Unable to pre-listening during a call */
+       int backup_ringtone_volume[SOUND_TYPE_VOICE + 1];
+       bool is_ringtone_slidering;
+};
+
+extern setting_view setting_view_sound_main;
+
+void setting_sound_play_sound_origin(void *data, void *cb, char *ringtone_file, float vol, sound_type_e sound_type);
+int setting_sound_check_file_exist(void *data, const char *file_path);
+bool setting_sound_play_sound(void *data, void *cb, char *ringtone_file, int vol, sound_type_e sound_type);
+void setting_sound_stop_sound(void *data);
+void setting_sound_key_grab(SettingSoundData *ad);
+void setting_sound_key_ungrab(SettingSoundData *ad);
+char *setting_media_basename(char *path);
+void setting_sound_create_warning_popup_during_call(void *data);
+char *setting_sound_get_slider_icon(int type, int volume);
+void setting_sound_update_slider_icon(Setting_GenGroupItem_Data *item_data, int type);
+Evas_Object *setting_sound_init(SettingSoundData *ad);
+void setting_sound_deinit(void *data);
+const char *setting_do_not_disturb_is_enable(void *data);
+const char *setting_notifiaction_on_lock_screen(void *data);
+void setting_sound_update_do_not_disturb_item(void *data);
+void setting_sound_update_notifiaction_on_lock_screen_item(void *data);
+
+#endif
diff --git a/setting-profile-common/project_def.prop b/setting-profile-common/project_def.prop
new file mode 100644 (file)
index 0000000..bb3ba8b
--- /dev/null
@@ -0,0 +1,58 @@
+
+# Project Name
+APPNAME = setting-profile-common
+
+# Project Type
+type = sharedLib
+
+# Project Profile
+profile = mobile-4.0
+
+# C/CPP Sources
+USER_SRCS = src/setting-profile-common.c src/setting-profile-sound-main.c 
+
+# EDC Sources
+USER_EDCS =  
+
+# PO Sources
+USER_POS = 
+
+# User Defines
+USER_DEFS = TIZEN_DEPRECATION DEPRECATION_WARNING _TZ_SYS_GLOBALUSER_DATA=TZ_SYS_GLOBALUSER_DATA TZ_SYS_GLOBALUSER_DATA=\"/opt/usr/data\" _TZ_SYS_RO_APP=TZ_SYS_RO_APP _TZ_SYS_MEDIA=TZ_SYS_MEDIA TZ_SYS_RO_APP=\"/usr/apps\" TZ_SYS_MEDIA=\"/opt/media\" 
+USER_CPP_DEFS = 
+
+# User Undefines
+USER_UNDEFS = 
+USER_CPP_UNDEFS = 
+
+# User Libraries
+USER_LIBS = setting-common 
+
+# User Objects
+USER_OBJS = 
+
+# User Includes
+## C Compiler
+USER_C_INC_DIRS = inc 
+USER_INC_FILES = 
+## C++ Compiler
+USER_CPP_INC_DIRS = 
+USER_CPP_INC_FILES = 
+
+USER_INC_DIRS = $(USER_C_INC_DIRS) $(USER_CPP_INC_DIRS)
+
+# User Library Path
+USER_LIB_DIRS = lib 
+
+# EDC Resource Path
+USER_EDCS_IMAGE_DIRS = ${OUTPUT_DIR} 
+USER_EDCS_SOUND_DIRS = ${OUTPUT_DIR} 
+USER_EDCS_FONT_DIRS = ${OUTPUT_DIR} 
+
+# EDC Flags
+USER_EXT_EDC_KEYS = 
+
+# Resource Filter
+USER_RES_INCLUDE = 
+USER_RES_EXCLUDE = 
+
diff --git a/setting-profile-common/src/setting-profile-common.c b/setting-profile-common/src/setting-profile-common.c
new file mode 100644 (file)
index 0000000..a1fc68a
--- /dev/null
@@ -0,0 +1,1336 @@
+/*
+ * setting
+ *
+ * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd.
+ *
+ * Contact: MyoungJune Park <mj2004.park@samsung.com>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "setting-profile.h"
+#include <sys/stat.h>
+#include <dirent.h>
+#include <app_manager.h>
+#include <metadata_extractor.h>
+#include <player.h>
+
+#define SETTING_DEFAULT_FOLDER_PATH    _TZ_SYS_GLOBALUSER_DATA"/settings/"
+#define SDCARD_PATH    _TZ_SYS_MEDIA"/sdcard/"
+#define EXP 0.001
+
+typedef struct _SliderIcons {
+       int index;
+       char mute[256];
+       char volume[256];
+} SliderIcons;
+
+SliderIcons slider_icons[SND_SLIDER_MAX] = {
+       {SND_SLIDER_CALL,       ICON_CALL_MUTE,         ICON_CALL_NORMAL},
+       {SND_SLIDER_NOTI,       ICON_NOTI_MUTE,         ICON_NOTI_NORMAL},
+       {SND_SLIDER_MEDIA,      ICON_MEDIA_MUTE,        ICON_MEDIA_NORMAL},
+       {SND_SLIDER_SYSTEM,     ICON_SYSTEM_MUTE,       ICON_SYSTEM_NORMAL}
+};
+
+static void __mm_player_prepared_cb(void *user_data);
+static void __sound_stream_focus_state_changed_cb(
+               sound_stream_info_h stream_info,
+               sound_stream_focus_mask_e focus_mask,
+               sound_stream_focus_state_e focus_state,
+               sound_stream_focus_change_reason_e reason,
+               int sound_behavior,
+               const char *extra_info,
+               void *user_data);
+static Eina_Bool __volume_key_down_cb(void *data, int type, void *event);
+static Eina_Bool __volume_key_up_cb(void *data, int type, void *event);
+static Evas_Object *__sound_slider_icon_get(void *data, Evas_Object *obj,
+               const char *part);
+static int __listen_vconf_change(void *data);
+static int __unlisten_vconf_change(void *data);
+static void __calling_popup_cb(void *data, Evas_Object *obj, void *event_info);
+
+void setting_sound_update_do_not_disturb_item(void *data)
+{
+       SettingSoundData *ad = (SettingSoundData *) data;
+       const char *sub_desc = NULL;
+
+       if (!ad || !ad->data_do_not_disturb)
+               return;
+
+       sub_desc = setting_do_not_disturb_is_enable(data);
+       g_free(ad->data_do_not_disturb->sub_desc);
+       ad->data_do_not_disturb->sub_desc = g_strdup(sub_desc);
+       elm_genlist_item_update(ad->data_do_not_disturb->item);
+}
+
+void setting_sound_update_notifiaction_on_lock_screen_item(void *data)
+{
+       SettingSoundData *ad = (SettingSoundData *) data;
+       const char *sub_desc = NULL;
+
+       if (!ad || !ad->data_notifiaction_on_lock_screen)
+               return;
+
+       sub_desc = setting_notifiaction_on_lock_screen(data);
+       g_free(ad->data_notifiaction_on_lock_screen->sub_desc);
+       ad->data_notifiaction_on_lock_screen->sub_desc = g_strdup(sub_desc);
+       elm_genlist_item_update(ad->data_notifiaction_on_lock_screen->item);
+}
+
+char *setting_sound_get_slider_icon(int type, int volume)
+{
+       if (type < SND_SLIDER_CALL || type >= SND_SLIDER_MAX)
+               return NULL;
+
+       SETTING_TRACE("type : %d, volume : %d", type, volume);
+       /* 1.Call ringtone and notification have 3 icon status */
+       if (SND_SLIDER_CALL == type || SND_SLIDER_NOTI == type) {
+               /*special process */
+               int sound = 0;
+               int vibration = 0;
+               vconf_get_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, &sound);
+               vconf_get_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
+                               &vibration);
+
+               if (sound && !vibration) {
+                       return (SND_SLIDER_CALL == type ?
+                                       ICON_CALL_NORMAL : ICON_NOTI_NORMAL);
+               }
+
+               if (vibration && !sound) {
+                       return (SND_SLIDER_CALL == type ? ICON_CALL_VIB : ICON_NOTI_VIB);
+               }
+
+               if (!vibration && !sound) {
+                       return (SND_SLIDER_CALL == type ? ICON_CALL_MUTE : ICON_NOTI_MUTE);
+               }
+
+               return (SND_SLIDER_CALL == type ?
+                               ICON_CALL_NORMAL : ICON_NOTI_NORMAL);
+       }
+
+       /* 2.Other types, just have two icon status */
+       if (volume > 0)
+               return slider_icons[type].volume;
+       else
+               return slider_icons[type].mute;
+}
+
+void setting_sound_update_slider_icon(Setting_GenGroupItem_Data *item_data,
+               int type)
+{
+       SETTING_TRACE_BEGIN;
+       ret_if(!item_data || !item_data->eo_check);
+
+       Evas_Object *icon = elm_object_content_get(item_data->eo_check);
+       if (icon) {
+               char *new_file = setting_sound_get_slider_icon(type,
+                               item_data->chk_status);
+               elm_image_file_set(icon, new_file, NULL);
+       }
+}
+
+char *setting_media_basename(char *path)
+{
+       metadata_extractor_h metadata = NULL;
+       char *title = NULL;
+       int ret = METADATA_EXTRACTOR_ERROR_NONE;
+
+       if (NULL == path || '\0' == path[0])
+               return strdup(_("IDS_ST_BODY_PHONEPROFILES_SILENT"));
+
+       ret = metadata_extractor_create(&metadata);
+       if (ret == METADATA_EXTRACTOR_ERROR_NONE && metadata) {
+               ret = metadata_extractor_set_path(metadata, path);
+
+               if (ret == METADATA_EXTRACTOR_ERROR_NONE) {
+                       ret = metadata_extractor_get_metadata(metadata,
+                                       METADATA_TITLE, &title);
+                       if (title) {
+                               char *strdup_title = strdup(title);
+                               metadata_extractor_destroy(metadata);
+                               free(title);
+                               return strdup_title;
+                       }
+               }
+
+               metadata_extractor_destroy(metadata);
+       }
+
+       return setting_file_basename(path);
+}
+
+/* ***************************************************
+ *
+ *general func
+ *
+ ***************************************************/
+int setting_sound_check_file_exist(void *data, const char *file_path)
+{
+       retv_if(data == NULL, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
+       retv_if(file_path == NULL, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
+
+       if (0 == safeStrNCmp(file_path,
+                       SETTING_DEFAULT_FOLDER_PATH,
+                       safeStrLen(SETTING_DEFAULT_FOLDER_PATH))) {
+               SETTING_TRACE("Default file[%s]!", file_path);
+               return SETTING_RETURN_SUCCESS;
+       }
+
+       if (!ecore_file_exists(file_path)) {
+               if (safeStrCmp(file_path, "Silent") == 0) {
+                       SETTING_TRACE("%s", file_path);
+                       return SETTING_RETURN_SUCCESS;
+               }
+               SETTING_TRACE_ERROR(
+                               "Cannot find the ringtone file[%s]!",
+                               file_path);
+               if (0 == safeStrNCmp(
+                               file_path, SDCARD_PATH,
+                               safeStrLen(SDCARD_PATH))) {
+                       char *strdup_file_path = strdup(file_path);
+                       /*sdcard file*/
+                       int ret = vconf_set_str(
+                                       VCONFKEY_SETAPPL_CALL_VIBRATION_PATTERN_STR,
+                                       strdup_file_path);
+                       if (ret < 0)
+                               SETTING_TRACE_DEBUG("failed to set vconf");
+
+                       FREE(strdup_file_path);
+               }
+               return SETTING_RETURN_FAIL;
+       }
+
+       int mmc_status = VCONFKEY_SYSMAN_MMC_REMOVED;
+       vconf_get_int(VCONFKEY_SYSMAN_MMC_STATUS, &mmc_status);
+       if (VCONFKEY_SYSMAN_MMC_MOUNTED != mmc_status) {
+               if (!safeStrNCmp(
+                               SETTING_PROFILE_MMC_PATH,
+                               file_path,
+                               safeStrLen(SETTING_PROFILE_MMC_PATH))) {
+                       return SETTING_RETURN_FAIL;
+               }
+       }
+       return SETTING_RETURN_SUCCESS;
+}
+
+bool setting_sound_play_sound(
+               void *data,
+               void *cb,
+               char *ringtone_file,
+               int vol,
+               sound_type_e sound_type)
+{
+       int err = 0;
+       sound_stream_focus_state_e ssfs = SOUND_STREAM_FOCUS_STATE_ACQUIRED;
+       player_state_e state = PLAYER_STATE_NONE;
+       /* error check */
+       retv_if(data == NULL, NULL);
+       SettingSoundData *ad = (SettingSoundData *) data;
+       sound_stream_info_h sound_stream_info_to_set = NULL;
+
+       int is_existing = setting_sound_check_file_exist(ad, ringtone_file);
+
+       if (is_existing == SETTING_RETURN_FAIL || NULL == ringtone_file) {
+               switch (sound_type) {
+               case SOUND_TYPE_RINGTONE:
+                               ad->song_playing = (char *)g_strdup(
+                               _TZ_SYS_GLOBALUSER_DATA"/settings/Ringtones/ringtone_sdk.mp3");
+                       sound_stream_info_to_set =
+                                       ad->ringtone_sound_stream_info;
+                       break;
+               case SOUND_TYPE_MEDIA:
+                       if (isEmulBin())
+                               ad->song_playing = (char *)g_strdup(
+                                               SETTING_DEFAULT_CALL_TONE_SDK);
+                       else
+                               ad->song_playing = (char *)g_strdup(
+                               _TZ_SYS_GLOBALUSER_DATA"/settings/Ringtones/ringtone_sdk.mp3");
+                       sound_stream_info_to_set = ad->media_sound_stream_info;
+                       break;
+               case SOUND_TYPE_NOTIFICATION:
+                       ad->song_playing = (char *)g_strdup(
+                                       SETTING_DEFAULT_MSG_TONE);
+                       sound_stream_info_to_set = ad->noti_sound_stream_info;
+                       break;
+               default:
+                       return false;
+                       break;
+               }
+
+       } else {
+               if (safeStrCmp(ringtone_file, "Silent") == 0)
+                       return false;
+
+               switch (sound_type) {
+               case SOUND_TYPE_RINGTONE:
+                       sound_stream_info_to_set =
+                                       ad->ringtone_sound_stream_info;
+                       break;
+               case SOUND_TYPE_MEDIA:
+                       sound_stream_info_to_set = ad->media_sound_stream_info;
+                       break;
+               case SOUND_TYPE_NOTIFICATION:
+                       sound_stream_info_to_set = ad->noti_sound_stream_info;
+                       break;
+               default:
+                       return false;
+                       break;
+               }
+               ad->song_playing = (char *)g_strdup(ringtone_file);
+       }
+
+       player_get_state(ad->mp_player, &state);
+       if (state != PLAYER_STATE_IDLE) {
+               if (err != player_unprepare(ad->mp_player)) {
+                       SETTING_TRACE_ERROR("player_unprepare() failed: [%s]",
+                                       get_error_message(err));
+                       player_unprepare(ad->mp_player);
+                       return false;
+
+               }
+       }
+
+       if (sound_type != SOUND_TYPE_NOTIFICATION) {
+               sound_manager_get_focus_state(sound_stream_info_to_set, &ssfs,
+                               NULL);
+               if (ssfs == SOUND_STREAM_FOCUS_STATE_RELEASED) {
+                       err = sound_manager_acquire_focus(
+                                       sound_stream_info_to_set,
+                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
+                                       SOUND_BEHAVIOR_NONE, NULL);
+                       if (err != SOUND_MANAGER_ERROR_NONE) {
+                               SETTING_TRACE_ERROR(
+                                               "Could not acquire focus: [%s]",
+                                               get_error_message(err));
+                               player_unprepare(ad->mp_player);
+                               return false;
+                       }
+               }
+       }
+
+       player_get_state(ad->mp_player, &state);
+       if (state != PLAYER_STATE_IDLE)
+               player_unprepare(ad->mp_player);
+
+       err = player_set_sound_stream_info(ad->mp_player, sound_stream_info_to_set);
+       if (err != PLAYER_ERROR_NONE) {
+               SETTING_TRACE_ERROR("error to set audio policy [%s]",
+                               get_error_message(err));
+               if (sound_type != SOUND_TYPE_NOTIFICATION)
+                       sound_manager_release_focus(sound_stream_info_to_set,
+                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
+                                       SOUND_BEHAVIOR_NONE, NULL);
+               player_unprepare(ad->mp_player);
+               return false;
+       }
+
+       err = player_set_uri(ad->mp_player, ad->song_playing);
+       if (err != PLAYER_ERROR_NONE) {
+               SETTING_TRACE_ERROR("error to set attribute---profile_uri[%s]",
+                               get_error_message(err));
+               if (sound_type != SOUND_TYPE_NOTIFICATION)
+                       sound_manager_release_focus(sound_stream_info_to_set,
+                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
+                                       SOUND_BEHAVIOR_NONE, NULL);
+               player_unprepare(ad->mp_player);
+               return false;
+       }
+
+#if SUPPORT_PLAYER_ASYNC
+       err = player_prepare_async(ad->mp_player, __mm_player_prepared_cb, ad);
+       if (err != PLAYER_ERROR_NONE) {
+               SETTING_TRACE_ERROR("realizing the player handle failed[%s]",
+                               get_error_message(err));
+               if (sound_type != SOUND_TYPE_NOTIFICATION)
+                       sound_manager_release_focus(sound_stream_info_to_set,
+                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
+                                       SOUND_BEHAVIOR_NONE, NULL);
+               player_unprepare(ad->mp_player);
+               return false;
+       }
+       ad->mp_prepare_async = ad->mp_player;
+       SETTING_TRACE("waiting..player (%x)", ad->mp_prepare_async);
+#else
+       err = player_prepare(ad->mp_player);
+       if (err != PLAYER_ERROR_NONE) {
+               SETTING_TRACE_ERROR("player_prepare() error %d", err);
+               if (sound_type != SOUND_TYPE_NOTIFICATION)
+                       sound_manager_release_focus(sound_stream_info_to_set,
+                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
+                                       SOUND_BEHAVIOR_NONE, NULL);
+               player_unprepare(ad->mp_player);
+               return false;
+       }
+
+       state = PLAYER_STATE_NONE;
+       err = player_get_state(ad->mp_player, &state);
+       SETTING_TRACE("state:%d", state);
+       if (state != PLAYER_STATE_READY) {
+               SETTING_TRACE_ERROR("state of player is invalid %d", err);
+               if (sound_type != SOUND_TYPE_NOTIFICATION)
+                       sound_manager_release_focus(sound_stream_info_to_set,
+                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
+                                       SOUND_BEHAVIOR_NONE, NULL);
+               player_unprepare(ad->mp_player);
+               return false;
+       }
+
+       player_set_completed_cb(ad->mp_player, __mm_player_msg_cb, ad);
+
+       err = player_start(ad->mp_player);
+       if (err != PLAYER_ERROR_NONE) {
+               /* if directly return error.. */
+               SETTING_TRACE_ERROR("player_start [%s]",
+                               get_error_message(err));
+               player_unset_completed_cb(ad->mp_player);
+               if (sound_type != SOUND_TYPE_NOTIFICATION)
+                       sound_manager_release_focus(sound_stream_info_to_set,
+                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
+                                       SOUND_BEHAVIOR_NONE, NULL);
+               player_unprepare(ad->mp_player);
+               return false;
+       }
+#endif
+
+       return true;
+}
+
+void setting_sound_play_sound_origin(void *data, void *cb, char *ringtone_file,
+               float vol, sound_type_e sound_type)
+{
+       SETTING_TRACE_BEGIN;
+       int vconf_value = 0;
+       SettingSoundData *ad = (SettingSoundData *) data;
+
+       ret_if(!ad);
+
+       if (vol < EXP) {
+               SETTING_TRACE_DEBUG("vol < EXP");
+               setting_sound_stop_sound(ad);
+               return;
+       }
+
+       vconf_get_bool(VCONFKEY_SETAPPL_ACCESSIBILITY_TURN_OFF_ALL_SOUNDS,
+                       &vconf_value);
+
+       if (vconf_value == TRUE)
+               return;
+
+       setting_sound_play_sound(ad, cb, ringtone_file, vol, sound_type);
+       SETTING_TRACE("play sound type %d", sound_type);
+}
+
+void setting_sound_stop_sound(void *data)
+{
+       SETTING_TRACE_BEGIN;
+       SettingSoundData *ad = (SettingSoundData *)data;
+       sound_stream_focus_state_e ssfs = SOUND_STREAM_FOCUS_STATE_ACQUIRED;
+       player_state_e player_state = PLAYER_STATE_NONE;
+
+       if (ad->song_playing) {
+               g_free(ad->song_playing);
+               ad->song_playing = NULL;
+       }
+
+       player_unset_completed_cb(ad->mp_player);
+
+       sound_manager_get_focus_state(ad->ringtone_sound_stream_info, &ssfs, NULL);
+       if (ssfs == SOUND_STREAM_FOCUS_STATE_ACQUIRED)
+               sound_manager_release_focus(ad->ringtone_sound_stream_info,
+                               SOUND_STREAM_FOCUS_FOR_PLAYBACK,
+                               SOUND_BEHAVIOR_NONE, NULL);
+
+       sound_manager_get_focus_state(ad->media_sound_stream_info, &ssfs, NULL);
+       if (ssfs == SOUND_STREAM_FOCUS_STATE_ACQUIRED)
+               sound_manager_release_focus(ad->media_sound_stream_info,
+                               SOUND_STREAM_FOCUS_FOR_PLAYBACK,
+                               SOUND_BEHAVIOR_NONE, NULL);
+
+       player_get_state(ad->mp_player, &player_state);
+
+       if (player_state != PLAYER_STATE_IDLE)
+               if (player_unprepare(ad->mp_player) != PLAYER_ERROR_NONE)
+                       SETTING_TRACE_ERROR("player unrealize failed");
+}
+
+void setting_sound_key_grab(SettingSoundData *ad)
+{
+       SETTING_TRACE_BEGIN;
+
+       /* To prevent conflict with volume app */
+       vconf_set_int(VCONFKEY_STARTER_USE_VOLUME_KEY, 2);
+
+       if (0 != safeStrCmp(ad->viewtype, VOLUME_APP_NAME))
+               return;
+
+       if (!ad->keydown_handler)
+               ad->keydown_handler = ecore_event_handler_add(
+                               ECORE_EVENT_KEY_DOWN, __volume_key_down_cb, ad);
+       if (!ad->keydown_handler)
+               SETTING_TRACE_DEBUG("ecore_event_handler_add() failed");
+
+       if (!ad->keyup_handler)
+               ad->keyup_handler = ecore_event_handler_add(
+                               ECORE_EVENT_KEY_UP, __volume_key_up_cb, ad);
+       if (!ad->keyup_handler)
+               SETTING_TRACE_DEBUG("ecore_event_handler_add() failed");
+}
+
+void setting_sound_key_ungrab(SettingSoundData *ad)
+{
+       SETTING_TRACE_BEGIN;
+
+       /* To prevent conflict with volume app */
+       vconf_set_int(VCONFKEY_STARTER_USE_VOLUME_KEY, 0);
+
+       ecore_timer_del(ad->updown_timer);
+       ad->updown_timer = NULL;
+
+       ecore_event_handler_del(ad->keydown_handler);
+       ad->keydown_handler = NULL;
+
+       ecore_event_handler_del(ad->keyup_handler);
+       ad->keyup_handler = NULL;
+}
+
+Evas_Object *setting_sound_init(SettingSoundData *ad)
+{
+       SETTING_TRACE_BEGIN;
+       int err = 0;
+
+       bindtextdomain(SETTING_PACKAGE, SETTING_LOCALEDIR);
+
+       setting_create_Gendial_itc(SETTING_GENLIST_LEFT_ICON_CONTENT_ICON_STYLE,
+                       &(ad->itc_layout));
+
+       ad->itc_layout.func.content_get = __sound_slider_icon_get;
+
+       setting_create_Gendial_itc("full", &(ad->itc_layout_1icon));
+
+       ad->itc_layout_1icon.func.content_get = __sound_slider_icon_get;
+
+       /* register view node table */
+       setting_view_node_table_intialize();
+       setting_view_node_table_register(&setting_view_sound_main, NULL);
+
+       err = player_create(&ad->mp_player);
+       if (PLAYER_ERROR_NONE != err) {
+               SETTING_TRACE_ERROR("Cannot create ringtone player %s",
+                               get_error_message(err));
+               return NULL;
+       }
+
+       if (
+               (sound_manager_create_stream_information(
+                               SOUND_STREAM_TYPE_RINGTONE_VOIP,
+                               __sound_stream_focus_state_changed_cb, ad,
+                               &ad->ringtone_sound_stream_info)
+                       != SOUND_MANAGER_ERROR_NONE) ||
+               (sound_manager_create_stream_information(
+                               SOUND_STREAM_TYPE_MEDIA,
+                               __sound_stream_focus_state_changed_cb, ad,
+                               &ad->media_sound_stream_info)
+                       != SOUND_MANAGER_ERROR_NONE) ||
+               (sound_manager_create_stream_information(
+                               SOUND_STREAM_TYPE_NOTIFICATION,
+                               __sound_stream_focus_state_changed_cb, ad,
+                               &ad->noti_sound_stream_info)
+                       != SOUND_MANAGER_ERROR_NONE)
+       ) {
+               SETTING_TRACE_ERROR("Cannot create stream information ");
+               return NULL;
+       }
+       /* creating a view. */
+       setting_view_node_set_cur_view(&setting_view_sound_main);
+       setting_view_create(&setting_view_sound_main, (void *)ad);
+
+       err = feedback_initialize();
+       SETTING_TRACE_DEBUG("Feedback init: %s", get_error_message(err));
+
+       __listen_vconf_change(ad);
+
+       return ad->md.naviframe;
+}
+
+void setting_sound_deinit(void *data)
+{
+       SETTING_TRACE_BEGIN;
+       ret_if(data == NULL);
+       SettingSoundData *ad = data;
+
+       __unlisten_vconf_change(ad);
+       feedback_deinitialize();
+       setting_sound_stop_sound(ad);
+
+       evas_object_del(ad->calling_popup);
+       ad->calling_popup = NULL;
+
+       setting_sound_key_ungrab(ad);
+
+       FREE(ad->viewtype);
+
+       sound_manager_destroy_stream_information(
+                       ad->ringtone_sound_stream_info);
+       sound_manager_destroy_stream_information(ad->media_sound_stream_info);
+       sound_manager_destroy_stream_information(ad->noti_sound_stream_info);
+
+       ad->ringtone_sound_stream_info = ad->media_sound_stream_info =
+       ad->noti_sound_stream_info = NULL;
+
+       player_destroy(ad->mp_player);
+       ad->mp_player = NULL;
+
+       /* it is the view manage strategy to invoke view's destory operation */
+       setting_view_destroy(&setting_view_sound_main, ad);
+
+       SETTING_TRACE_END;
+}
+
+/* Show guide popup, when drag or tap slider if during call.
+       Do not provide pre-listening. */
+void setting_sound_create_warning_popup_during_call(void *data)
+{
+       ret_if(data == NULL);
+       SettingSoundData *ad = (SettingSoundData *)data;
+
+       cm_call_status_e call_status = CM_CALL_STATUS_IDLE;
+       cm_client_h cm_handle = NULL;
+       cm_init(&cm_handle);
+       cm_get_call_status(cm_handle, &call_status);
+       cm_deinit(cm_handle);
+       if (CM_CALL_STATUS_IDLE != call_status) {
+               SETTING_TRACE("Call status is not OFF (%d)", call_status);
+               if (!ad->calling_popup) {
+                       ad->calling_popup = setting_create_popup(
+                                       ad,
+                                       ad->md.window,
+                                       "IDS_ST_HEADER_UNABLE_TO_PLAY_SAMPLE_ABB",
+                                       "IDS_ST_POP_SAMPLES_CANNOT_BE_PLAYED_DURING_CALLS",
+                                       __calling_popup_cb,
+                                       0,
+                                       false,
+                                       false,
+                                       1,
+                                       "IDS_ST_BUTTON_OK");
+               }
+       }
+}
+
+/* ------------------------------------------------------------------------- */
+/* |           | elm.swallow.icon.0 | elm.text | elm.swallow.icon.1 |     | */
+/* | elm.swallow.icon |----------------------------------| elm.swallow.end | */
+/* |             |     elm.text.sub      | elm.text.sub.end   |           | */
+/* ------------------------------------------------------------------------- */
+static Evas_Object *__sound_slider_icon_get(void *data, Evas_Object *obj,
+               const char *part)
+{
+       SETTING_TRACE_BEGIN;
+       retv_if(data == NULL, NULL);
+
+       SETTING_TRACE(" -----------------> EDC part [%s]", part);
+       if (safeStrCmp(part, "elm.swallow.content"))
+               return NULL;
+
+       Evas_Object *layout;
+       /* Set custom layout style */
+       layout = elm_layout_add(obj);
+
+       Setting_GenGroupItem_Data *item_data =
+                       (Setting_GenGroupItem_Data *)data;
+       Evas_Object *slider = setting_create_slider(obj, item_data);
+
+       if (slider == NULL)
+               return NULL;
+
+       elm_layout_file_set(layout, EDJDIR"/setting-theme.edj",
+                                               "gl_custom_item");
+       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND,
+                       EVAS_HINT_EXPAND);
+
+       if (0 == safeStrCmp(item_data->keyStr, "IDS_ST_BODY_MEDIA")) {
+               elm_object_style_set(slider, "warning");
+
+               Edje_Message_Float_Set *msg =
+                               alloca(sizeof(Edje_Message_Float_Set)
+                                               + (sizeof(double)));
+               msg->count = 1;
+               /* Warning area point has to be calculated considering rounding
+                * off. For example, value 10's area will be 9.5~10.4.
+                * So, if warning area has to be started at 10, we need to
+                * calculate the start point with 9.5.
+                * Warning start point = (Warning min value - 0.5) /
+                *                              (Max_Value - Min_Value) */
+               msg->val[0] = 0.633333;
+               edje_object_message_send(
+                               elm_layout_edje_get(slider), EDJE_MESSAGE_FLOAT_SET, 0, msg);
+               elm_slider_indicator_format_set(slider, "%1.0f");
+               elm_slider_indicator_show_set(slider, 1);
+       }
+
+       item_data->eo_check = slider;
+
+       evas_object_pass_events_set(slider, EINA_TRUE);
+       evas_object_propagate_events_set(slider, EINA_FALSE);
+
+       if (item_data->userdata == NULL)
+               return NULL;
+
+       if (item_data->keyStr)
+               elm_object_part_text_set(layout, "elm.text", _(item_data->keyStr));
+
+       elm_object_part_content_set(layout, "elm.swallow.content", slider);
+       return layout;
+}
+
+static void __enable_sound_menu(void *data)
+{
+       SETTING_TRACE_BEGIN;
+       ret_if(!data);
+       SettingSoundData *ad = data;
+       ad->sound_on = TRUE;
+       Setting_GenGroupItem_Data *item_to_update = NULL;
+
+
+       /*1.Enable "Vibrate when ringing" */
+       if (ad->data_sound_when_ring) {
+               item_to_update = ad->data_sound_when_ring;
+               elm_object_item_disabled_set(item_to_update->item, EINA_FALSE);
+       }
+
+       if (ad->data_call_volume) {
+               elm_object_item_disabled_set(ad->data_call_volume->item,
+                               EINA_FALSE);
+               elm_object_disabled_set(ad->data_call_volume->eo_check,
+                               EINA_FALSE);
+       }
+
+       /*2.Enable "Notification", via Sound Manager */
+       item_to_update = ad->data_noti_volume;
+
+       /* @todo make sure data_msg_alert_tone is correct for 'Silent' set.
+       if (item_to_update && safeStrCmp(item_to_update->sub_desc, "Silent"))*/
+       if ((ad->data_msg_alert_tone &&
+               safeStrCmp(ad->data_msg_alert_tone->sub_desc, "Silent")) ||
+               (!safeStrCmp(ad->viewtype, VOLUME_APP_NAME))
+               ) {
+               /* Enable */
+               if (item_to_update
+                               && item_to_update->item
+                               && item_to_update->eo_check) {
+                       int mm_value = 0;
+                       int ret =  sound_manager_get_volume(
+                                       SOUND_TYPE_NOTIFICATION, &mm_value);
+                       SETTING_TRACE("ret:%d", ret);
+                       item_to_update->chk_status = mm_value;
+                       elm_slider_value_set(
+                                       item_to_update->eo_check,
+                                       item_to_update->chk_status);
+                       elm_object_item_disabled_set(item_to_update->item,
+                                       EINA_FALSE);
+                       elm_object_disabled_set(item_to_update->eo_check,
+                                       EINA_FALSE);
+
+                       setting_sound_update_slider_icon(
+                                       item_to_update, SND_SLIDER_NOTI);
+               }
+       }
+
+       /*3.Enable "System", via Sound Manager */
+       item_to_update = ad->data_touch_volume;
+       if (item_to_update && item_to_update->item
+                       && item_to_update->eo_check) {
+               int mm_value = 0;
+               int ret =  sound_manager_get_volume(
+                               SOUND_TYPE_SYSTEM, &mm_value);
+               SETTING_TRACE("ret:%d", ret);
+               item_to_update->chk_status = mm_value;
+               elm_slider_value_set(
+                               item_to_update->eo_check,
+                               item_to_update->chk_status);
+               elm_object_item_disabled_set(
+                               item_to_update->item, EINA_FALSE);
+               elm_object_disabled_set(item_to_update->eo_check, EINA_FALSE);
+
+               setting_sound_update_slider_icon(
+                               item_to_update, SND_SLIDER_SYSTEM);
+       }
+
+
+       /*4.Enable "Call ringtone", via "Backuped" value */
+       item_to_update = ad->data_call_volume;
+       if (item_to_update && item_to_update->eo_check) {
+               SETTING_TRACE("....ad->is_ringtone_slidering:%d, "
+                               "ad->data_call_volume->chk_status:%d",
+                               ad->is_ringtone_slidering,
+                               item_to_update->chk_status);
+               /* do need to restore from BACKUP VOLUME */
+               if (ad->is_ringtone_slidering) return;
+
+               int mm_value = 0;
+               sound_manager_get_volume(SOUND_TYPE_RINGTONE, &mm_value);
+               if (mm_value <= 0) mm_value = 1;
+               sound_manager_set_volume(SOUND_TYPE_RINGTONE, mm_value);
+               item_to_update->chk_status = mm_value;
+               elm_slider_value_set(
+                               item_to_update->eo_check,
+                               item_to_update->chk_status);
+               SETTING_TRACE("ad->data_call_volume->chk_status : %d",
+                               item_to_update->chk_status);
+       }
+}
+
+static void __disable_sound_menu(void *data)
+{
+       SETTING_TRACE_BEGIN;
+       ret_if(!data);
+       SettingSoundData *ad = data;
+       ad->sound_on = FALSE;
+       Setting_GenGroupItem_Data *item_to_update = NULL;
+
+       setting_sound_stop_sound(ad);
+
+       /*1.Disable      "Vibrate when ringing" */
+       item_to_update = ad->data_sound_when_ring;
+       if (item_to_update)
+               elm_object_item_disabled_set(item_to_update->item, EINA_TRUE);
+
+       /* Disable Call Volume slider if Silent ringtone is selected */
+       if (ad->data_call_alert_tone && !safeStrCmp(
+                       ad->data_call_alert_tone->sub_desc, "Silent")) {
+               elm_object_item_disabled_set(ad->data_call_volume->item,
+                               EINA_TRUE);
+               elm_object_disabled_set(ad->data_call_volume->eo_check,
+                               EINA_TRUE);
+       }
+
+       /*2.Disable "Notification" */
+       item_to_update = ad->data_noti_volume;
+       if (item_to_update && item_to_update->item
+                       && item_to_update->eo_check) {
+               item_to_update->chk_status = 0;
+               elm_slider_value_set(item_to_update->eo_check,
+                               item_to_update->chk_status);
+               elm_object_item_disabled_set(item_to_update->item, EINA_TRUE);
+               elm_object_disabled_set(item_to_update->eo_check, EINA_TRUE);
+
+               /* Change notification slider's icon as mute style */
+               setting_sound_update_slider_icon(item_to_update,
+                               SND_SLIDER_NOTI);
+       }
+
+       /*3.Disable "System" */
+       item_to_update = ad->data_touch_volume;
+       if (item_to_update && item_to_update->item
+                       && item_to_update->eo_check) {
+               item_to_update->chk_status = 0;
+               elm_slider_value_set(item_to_update->eo_check,
+                               item_to_update->chk_status);
+               elm_object_item_disabled_set(item_to_update->item, EINA_TRUE);
+               elm_object_disabled_set(item_to_update->eo_check, EINA_TRUE);
+
+               /* Change system slider's icon as mute style */
+               setting_sound_update_slider_icon(item_to_update,
+                               SND_SLIDER_SYSTEM);
+       }
+
+       /*4.Disable "Call ringtone" */
+       item_to_update = ad->data_call_volume;
+       if (item_to_update && item_to_update->eo_check) {
+               /*DO NOT CHANGE Backup Values(
+                * VCONFKEY_SETAPPL_RINGTONE_BACKUP_VOLUME) */
+               item_to_update->chk_status = 0;
+               elm_slider_value_set(item_to_update->eo_check,
+                               item_to_update->chk_status);
+               SETTING_TRACE("item_to_update->chk_status : %d",
+                               item_to_update->chk_status);
+       }
+
+}
+
+static void __sound_vconf_change_cb(keynode_t *key, void *data)
+{
+       SETTING_TRACE_BEGIN;
+       ret_if(data == NULL);
+       SettingSoundData *ad = data;
+       int status = 0;
+       int ret = 0;
+       char *vconf_name = vconf_keynode_get_name(key);
+       Setting_GenGroupItem_Data *item_to_update = NULL;
+
+       if (!safeStrCmp(vconf_name, VCONFKEY_SYSMAN_MMC_STATUS)) {
+               status = vconf_keynode_get_int(key);
+               SETTING_TRACE("status:%d", status);
+               if (VCONFKEY_SYSMAN_MMC_MOUNTED != status) {
+                       /* when remove mmc card, change default tone */
+                       char *call_tone = vconf_get_str(
+                                       VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR);
+                       if (call_tone && !safeStrNCmp(
+                                       SETTING_PROFILE_MMC_PATH,
+                                       call_tone,
+                                       safeStrLen(SETTING_PROFILE_MMC_PATH))) {
+                                       ret = vconf_set_str(
+                                               VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR,
+                                               _TZ_SYS_GLOBALUSER_DATA"/settings/Ringtones/ringtone_sdk.mp3");
+                               if (ret < 0)
+                                       SETTING_TRACE_DEBUG(
+                                                       "failed to set vconf");
+                       }
+                       FREE(call_tone);
+
+                       SETTING_TRACE("song_playing:%s", ad->song_playing);
+
+                       if (!safeStrNCmp(SETTING_PROFILE_MMC_PATH,
+                                       ad->song_playing,
+                                       safeStrLen(SETTING_PROFILE_MMC_PATH))) {
+                               /*      close mm plaer */
+                               setting_sound_stop_sound(ad);
+                               /*      close vibration */
+                       }
+               }
+       } else if (!safeStrCmp(vconf_name,
+                       VCONFKEY_SETAPPL_SOUND_STATUS_BOOL)) {
+               status = vconf_keynode_get_bool(key);
+               SETTING_TRACE_DEBUG("sound status is changed. %d", status);
+               if (status)
+                       __enable_sound_menu(ad);
+               else
+                       __disable_sound_menu(ad);
+
+               setting_sound_update_slider_icon(ad->data_call_volume,
+                               SND_SLIDER_CALL);
+
+               if (ad->data_sound_when_ring)
+                       elm_object_item_disabled_set(ad->data_sound_when_ring->item,
+                                                                               !status);
+       } else if (!safeStrCmp(vconf_name,
+                       VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL)) {
+               status = vconf_keynode_get_bool(key);
+               SETTING_TRACE_DEBUG("vibration status is changed. %d", status);
+
+               setting_sound_update_slider_icon(ad->data_call_volume,
+                               SND_SLIDER_CALL);
+       } else if (!safeStrCmp(vconf_name,
+                       VCONFKEY_SETAPPL_VIBRATE_WHEN_RINGING_BOOL)) {
+               item_to_update = ad->data_sound_when_ring;
+               status = vconf_keynode_get_bool(key);
+               if (item_to_update && item_to_update->eo_check) {
+                       item_to_update->chk_status = status;
+                       elm_check_state_set(item_to_update->eo_check,
+                                       item_to_update->chk_status);
+               }
+       } else if (!safeStrCmp(vconf_name,
+                       VCONFKEY_SETAPPL_BUTTON_SOUNDS_BOOL)) {
+               item_to_update = ad->data_button_sounds;
+               status = vconf_keynode_get_bool(key);
+               if (item_to_update && item_to_update->eo_check) {
+                       item_to_update->chk_status = status;
+                       elm_check_state_set(item_to_update->eo_check,
+                                       item_to_update->chk_status);
+               }
+       } else if (!safeStrCmp(vconf_name,
+                       VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL)) {
+               item_to_update = ad->data_touch_sounds;
+               status = vconf_keynode_get_bool(key);
+               if (item_to_update && item_to_update->eo_check) {
+                       item_to_update->chk_status = status;
+                       elm_check_state_set(item_to_update->eo_check,
+                                       item_to_update->chk_status);
+               }
+       } else if (!safeStrCmp(vconf_name, VCONFKEY_SETAPPL_SOUND_LOCK_BOOL)) {
+               item_to_update = ad->data_lock_sound;
+               status = vconf_keynode_get_bool(key);
+               if (item_to_update && item_to_update->eo_check) {
+                       item_to_update->chk_status = status;
+                       elm_check_state_set(item_to_update->eo_check,
+                                       item_to_update->chk_status);
+               }
+       }
+#if 0
+       else if (!safeStrCmp(vconf_name, VCONFKEY_ISE_KEYSOUND)) {
+               item_to_update = ad->data_keyboard_sound;
+               status = vconf_keynode_get_bool(key);
+               if (item_to_update && item_to_update->eo_check) {
+                       item_to_update->chk_status = status;
+                       elm_check_state_set(item_to_update->eo_check,
+                                       item_to_update->chk_status);
+               }
+       }
+#endif
+}
+
+static int __listen_vconf_change(void *data)
+{
+       retv_if(data == NULL, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
+
+       /*Ints */
+       (void)vconf_notify_key_changed(VCONFKEY_SYSMAN_MMC_STATUS,
+                       __sound_vconf_change_cb, data);
+
+       /*Bools */
+       (void)vconf_notify_key_changed(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
+                       __sound_vconf_change_cb, data);
+       (void)vconf_notify_key_changed(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
+                       __sound_vconf_change_cb, data);
+
+       (void)vconf_notify_key_changed(
+                       VCONFKEY_SETAPPL_VIBRATE_WHEN_RINGING_BOOL,
+                       __sound_vconf_change_cb, data);
+       (void)vconf_notify_key_changed(VCONFKEY_SETAPPL_BUTTON_SOUNDS_BOOL,
+                       __sound_vconf_change_cb, data);
+       (void)vconf_notify_key_changed(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL,
+                       __sound_vconf_change_cb, data);
+       (void)vconf_notify_key_changed(VCONFKEY_SETAPPL_SOUND_LOCK_BOOL,
+                       __sound_vconf_change_cb, data);
+
+       return 0;
+}
+
+static int __unlisten_vconf_change(void *data)
+{
+       /* unused listen */
+       /*Ints */
+       (void)vconf_ignore_key_changed(VCONFKEY_SYSMAN_MMC_STATUS,
+                       __sound_vconf_change_cb);
+
+       /*Bools */
+       (void)vconf_ignore_key_changed(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
+                       __sound_vconf_change_cb);
+       (void)vconf_ignore_key_changed(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
+                       __sound_vconf_change_cb);
+
+       (void)vconf_ignore_key_changed(
+                       VCONFKEY_SETAPPL_VIBRATE_WHEN_RINGING_BOOL,
+                       __sound_vconf_change_cb);
+       (void)vconf_ignore_key_changed(VCONFKEY_SETAPPL_BUTTON_SOUNDS_BOOL,
+                       __sound_vconf_change_cb);
+       (void)vconf_ignore_key_changed(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL,
+                       __sound_vconf_change_cb);
+       (void)vconf_ignore_key_changed(VCONFKEY_SETAPPL_SOUND_LOCK_BOOL,
+                       __sound_vconf_change_cb);
+
+       return 0;
+}
+
+static Eina_Bool __volume_up_timer_cb(void *data)
+{
+       SETTING_TRACE_BEGIN;
+       int volume = 0;
+       int volume_max = 0;
+       int ret = 0;
+       retv_if(!data, EINA_FALSE);
+       SettingSoundData *ad = (SettingSoundData *)data;
+
+       if (!ad->is_pressing) {
+               ad->updown_timer = NULL;
+               return EINA_FALSE;
+       }
+
+       ret =  sound_manager_get_volume(SOUND_TYPE_RINGTONE, &volume);
+       SETTING_TRACE("Getting volume: %s %d", get_error_message(ret), volume);
+       ret = sound_manager_get_max_volume(SOUND_TYPE_RINGTONE, &volume_max);
+       SETTING_TRACE("Getting max volume: %s %d", get_error_message(ret),
+                       volume_max);
+       if (volume < volume_max) {
+               sound_manager_set_volume(SOUND_TYPE_RINGTONE, ++volume);
+               if (ad->data_call_volume && ad->data_call_volume->eo_check) {
+                       ad->data_call_volume->chk_status = volume;
+                       elm_slider_value_set(ad->data_call_volume->eo_check,
+                                               volume);
+                       SETTING_TRACE("ad->data_call_volume->chk_status : %d",
+                                       ad->data_call_volume->chk_status);
+               }
+       }
+
+       return EINA_TRUE;
+}
+
+static Eina_Bool __volume_down_timer_cb(void *data)
+{
+       SETTING_TRACE_BEGIN;
+       int ret = 0;
+       int volume = 0;
+       retv_if(!data, EINA_FALSE);
+       SettingSoundData *ad = (SettingSoundData *)data;
+
+       if (!ad->is_pressing) {
+               ad->updown_timer = NULL;
+               return EINA_FALSE;
+       }
+
+       ret =  sound_manager_get_volume(SOUND_TYPE_RINGTONE, &volume);
+       SETTING_TRACE("Getting volume: %s %d", get_error_message(ret), volume);
+       if (volume > 0) {
+               sound_manager_set_volume(SOUND_TYPE_RINGTONE, --volume);
+               if (volume == 0) {
+                       /* change to Vibration mode */
+                       vconf_set_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
+                                       FALSE);
+                       vconf_set_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
+                                       TRUE);
+                       feedback_play_type(FEEDBACK_TYPE_VIBRATION,
+                                       FEEDBACK_PATTERN_VIBRATION_ON);
+               }
+               if (ad->data_call_volume
+                               && ad->data_call_volume->eo_check) {
+                       ad->data_call_volume->chk_status = volume;
+                       elm_slider_value_set(
+                                       ad->data_call_volume->eo_check,
+                                       volume);
+                       SETTING_TRACE("ad->data_call_volume->chk_status : %d",
+                                       ad->data_call_volume->chk_status);
+                       setting_sound_update_slider_icon(
+                                       ad->data_call_volume,
+                                       SND_SLIDER_CALL);
+               }
+       }
+       return EINA_TRUE;
+}
+
+
+static Eina_Bool __volume_key_up_cb(void *data, int type, void *event)
+{
+       SETTING_TRACE_BEGIN;
+       retv_if(!data || !event, EINA_TRUE);
+       SettingSoundData *ad = (SettingSoundData *)data;
+
+       Ecore_Event_Key *ev = event;
+       char *key = (char *)ev->key;
+       if (!key)
+               return EINA_TRUE;
+
+       if (!safeStrCmp(key, "XF86AudioRaiseVolume")
+                       || !safeStrCmp(key, "XF86AudioLowerVolume")) {
+               ad->is_pressing = FALSE;
+               if (ad->updown_timer) {
+                       ecore_timer_del(ad->updown_timer);
+                       ad->updown_timer = NULL;
+               }
+       }
+       return EINA_TRUE;
+}
+
+/*
+ * S5 concept:
+ * On the volume popup,
+ *     1) if user controls the slider, don't play any sounds
+ *     just change volume.
+ *     2) if user controls the HW volume key for ringtone
+ *     sound, the beep sound is supported
+
+ * On Setting > Sound
+ *     1) if user controls the slider, change volume &
+ *     play sound
+ *     2) if user controls the HW volume key, do nothing
+ *     (DO NOT change volume,DO NOT play sound)
+*/
+static Eina_Bool __volume_key_down_cb(void *data, int type, void *event)
+{
+       int ret = 0;
+       int sound = 0;
+       char *key = NULL;
+       int volume = 0;
+       int volume_max = 0;
+       SettingSoundData *ad = (SettingSoundData *)data;
+       Ecore_Event_Key *ev = event;
+       SETTING_TRACE_BEGIN;
+       retv_if(!ad || !event, EINA_TRUE);
+
+       key = (char *)ev->key;
+       if (!key)
+               return EINA_TRUE;
+
+       ret =  sound_manager_get_volume(SOUND_TYPE_RINGTONE, &volume);
+       SETTING_TRACE("Getting volume: %s %d", get_error_message(ret), volume);
+       ret = sound_manager_get_max_volume(SOUND_TYPE_RINGTONE, &volume_max);
+       SETTING_TRACE("Getting max volume: %s %d", get_error_message(ret),
+                       volume_max);
+
+       vconf_get_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, &sound);
+
+       if (!safeStrCmp(key, "XF86AudioRaiseVolume")) {
+               SETTING_TRACE("Press KEY_VOLUMEUP");
+
+               ad->is_pressing = TRUE;
+
+               if (volume < volume_max) {
+                       sound_manager_set_volume(SOUND_TYPE_RINGTONE, ++volume);
+
+
+                       if (volume > 0 && !sound) {
+                               vconf_set_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
+                                               TRUE);
+                               vconf_set_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
+                                               FALSE);
+                               ad->data_call_volume->chk_status =
+                                               volume;
+                               setting_sound_update_slider_icon(
+                                               ad->data_call_volume,
+                                               SND_SLIDER_CALL);
+                       }
+                       if (ad->data_call_volume
+                                       && ad->data_call_volume->eo_check) {
+                               ad->data_call_volume->chk_status = volume;
+                               elm_slider_value_set(
+                                               ad->data_call_volume->eo_check,
+                                               volume);
+                               SETTING_TRACE("chk_status : %d",
+                                       ad->data_call_volume->chk_status);
+                       }
+                       ad->updown_timer = ecore_timer_add(0.5,
+                                                       __volume_up_timer_cb,
+                                                       ad);
+               }
+       }
+
+       if (!safeStrCmp(key, "XF86AudioLowerVolume")) {
+               SETTING_TRACE("Press KEY_VOLUMEDOWN");
+
+               ad->is_pressing = TRUE;
+
+               if (!sound)
+                       return EINA_TRUE;
+
+               if (volume > 0) {
+                       sound_manager_set_volume(SOUND_TYPE_RINGTONE,
+                                       --volume);
+                       if (volume == 0) {
+                               /* change to Vibration mode */
+                               vconf_set_bool(
+                                       VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
+                                       FALSE);
+                               vconf_set_bool(
+                                       VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
+                                       TRUE);
+                               feedback_play_type(FEEDBACK_TYPE_VIBRATION,
+                                               FEEDBACK_PATTERN_VIBRATION_ON);
+
+                               ad->data_call_volume->chk_status =
+                                               volume;
+                               setting_sound_update_slider_icon(
+                                               ad->data_call_volume,
+                                               SND_SLIDER_CALL);
+                       }
+                       if (ad->data_call_volume
+                                       && ad->data_call_volume->eo_check) {
+                               ad->data_call_volume->chk_status =
+                                               volume;
+                               elm_slider_value_set(
+                                               ad->data_call_volume->eo_check,
+                                               volume);
+                               SETTING_TRACE("ad->data_call_volume->chk_status : %d",
+                                               ad->data_call_volume->chk_status);
+                       }
+                       ad->updown_timer = ecore_timer_add(0.5,
+                                                       __volume_down_timer_cb,
+                                                       ad);
+               }
+       }
+
+       return EINA_TRUE;
+}
+
+/* ***************************************************
+ *
+ *general func
+ *
+ ***************************************************/
+static void __calling_popup_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       ret_if(data == NULL);
+       SettingSoundData *ad = (SettingSoundData *) data;
+
+       if (ad->calling_popup) {
+               evas_object_del(ad->calling_popup);
+               ad->calling_popup = NULL;
+       }
+}
+
+static void __mm_player_msg_cb(void *user_param)
+{
+       SETTING_TRACE_BEGIN;
+       ret_if(user_param == NULL);
+       SettingSoundData *ad = (SettingSoundData *)user_param;
+
+       SETTING_TRACE("completed_cb is called.");
+       setting_sound_stop_sound(ad);
+}
+
+static Eina_Bool __play_timer_cb(void *data)
+{
+       SETTING_TRACE_BEGIN;
+       int err;
+       player_state_e state = PLAYER_STATE_NONE;
+
+       retv_if(!data, EINA_FALSE);
+       SettingSoundData *ad = (SettingSoundData *)data;
+
+       SETTING_TRACE("player (%x)", ad->mp_prepare_async);
+       err = player_get_state(ad->mp_player, &state);
+       SETTING_TRACE("state:%d", state);
+
+       if (state != PLAYER_STATE_READY) {
+               SETTING_TRACE_ERROR(
+                               "state of player is invalid (%s), STATE: %d",
+                               get_error_message(err), state);
+               player_unprepare(ad->mp_player);
+               return EINA_FALSE;
+       }
+
+       player_set_completed_cb(ad->mp_player, __mm_player_msg_cb, ad);
+
+       err = player_start(ad->mp_player);
+       if (err != PLAYER_ERROR_NONE) { /* if directly return error. */
+               SETTING_TRACE_ERROR("player_start [%s]",
+                               get_error_message(err));
+               player_unset_completed_cb(ad->mp_player);
+               player_unset_interrupted_cb(ad->mp_player);
+               player_unprepare(ad->mp_player);
+       }
+
+       return EINA_FALSE;
+}
+
+/* Async cb : to improve slider's performance when creating player */
+static void __mm_player_prepared_cb(void *user_data)
+{
+       SETTING_TRACE_BEGIN;
+       ret_if(!user_data);
+       ecore_idler_add(__play_timer_cb, user_data);
+}
+
+
+static void __sound_stream_focus_state_changed_cb(
+               sound_stream_info_h stream_info,
+               sound_stream_focus_mask_e focus_mask,
+               sound_stream_focus_state_e focus_state,
+               sound_stream_focus_change_reason_e reason,
+               int sound_behavior,
+               const char *extra_info,
+               void *user_data)
+{
+       player_state_e state = PLAYER_STATE_NONE;
+       SettingSoundData *ad = (SettingSoundData *)user_data;
+       ret_if(ad == NULL);
+
+       SETTING_TRACE_ERROR("Focus state changed, reason: %d", reason);
+
+       if (ad->mp_player) {
+               player_get_state(ad->mp_player, &state);
+               SETTING_TRACE("player state : %d", state);
+       }
+}
+
+
diff --git a/setting-profile-common/src/setting-profile-sound-main.c b/setting-profile-common/src/setting-profile-sound-main.c
new file mode 100755 (executable)
index 0000000..6620cbb
--- /dev/null
@@ -0,0 +1,1438 @@
+/*
+ * setting
+ *
+ * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd.
+ *
+ * Contact: MyoungJune Park <mj2004.park@samsung.com>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+
+#include <notification_setting.h>
+#include <notification_setting_internal.h>
+#include <setting-common/setting-common-general-func.h>
+#include "setting-profile.h"
+
+#define DO_NOT_DISTURB_OP \
+       "http://tizen.org/appcontrol/operation/setting/do_not_disturb"
+#define APP_NOTIFICATIONS_OP \
+       "http://tizen.org/appcontrol/operation/setting/app_notifications"
+#define NOTIFICATIONS_ON_LOCK_SCREEN \
+       "http://tizen.org/appcontrol/operation/setting/notification_on_lock_screen"
+
+#define SETTING_DEFAULT_RINGTONE_VOL_INT       11
+#define SETTING_DEFAULT_NOTI_VOL_INT           11
+#define SETTING_DEFAULT_MEDIA_VOL_INT          9
+#define SETTING_DEFAULT_SYSTEM_VOL_INT         9
+
+#define NOTIFICATION_STR_ON_LOCK_SCREEN \
+       "IDS_QP_TMBODY_NOTIFICATIONS_ON_LOCK_SCREEN"
+#define NOTIFICATION_STR_ON_LOCK_SCREEN_HIDE "IDS_ST_OPT_HIDE_CONTENT"
+#define NOTIFICATION_STR_ON_LOCK_SCREEN_HIDE_SENSITIVE \
+       "IDS_QP_OPT_HIDE_SENSITIVE_CONTENT_ABB"
+#define NOTIFICATION_STR_ON_LOCK_SCREEN_SHOW_ALL \
+       "IDS_QP_OPT_SHOW_ALL_CONTENT_ABB"
+#define SILENT_MODE "Silent"
+#define INIT_PATH      _TZ_SYS_GLOBALUSER_DATA"/settings/Vibrations/"
+
+/* should be called in function to return void */
+#define ADD_GENLIST2(genlist, parent) \
+       {\
+               genlist = elm_genlist_add(parent);\
+               retm_if(genlist == NULL, \
+                               "Cannot set genlist object as content of layout");\
+               elm_genlist_mode_set(genlist, ELM_LIST_COMPRESS);\
+               elm_object_style_set(genlist, "dialogue");\
+               elm_genlist_clear(genlist);\
+               evas_object_smart_callback_add(genlist, "realized", \
+                               __gl_realized_cb, NULL);\
+               elm_scroller_policy_set(genlist, ELM_SCROLLER_POLICY_OFF, \
+                               ELM_SCROLLER_POLICY_AUTO);\
+       }
+
+/* keystr, toggle */
+#define ADD_TOGGLE_MENU2(item, genlist, item_style, keystr, value, data) \
+       {\
+               item = setting_create_Gendial_field_def( \
+                               genlist, \
+                               &(item_style), \
+                               _mouse_up_Gendial_list_cb, \
+                               data, \
+                               SWALLOW_Type_1ICON_1RADIO, \
+                               NULL, \
+                               NULL, \
+                               value, \
+                               keystr, \
+                               NULL, \
+                               _sound_chk_cb); \
+               if (item) { \
+                       item->userdata = data; \
+               } else { \
+                       SETTING_TRACE_ERROR("%s item is NULL", keystr); \
+               } \
+       }
+
+
+/* keystr, multiline, toggle */
+/* should be called in function to return void */
+#define ADD_TOGGLE_MENU( \
+               _item, genlist, item_style, keystr, substr, value, data) \
+       {\
+               _item = setting_create_Gendial_field_def( \
+                               genlist, \
+                               &(item_style), \
+                               _mouse_up_Gendial_list_cb, \
+                               data, \
+                               SWALLOW_Type_1ICON_1RADIO, \
+                               NULL, \
+                               NULL, \
+                               value, \
+                               keystr, \
+                               NULL, \
+                               _sound_chk_cb); \
+               if (_item) { \
+                       _item->userdata = data;\
+               } else { \
+                       SETTING_TRACE_ERROR("%s item is NULL", keystr);\
+               } \
+               if (substr) {\
+                       Setting_GenGroupItem_Data *item_data = setting_create_Gendial_field_def( \
+                                       genlist, \
+                                       &itc_multiline_text,\
+                                       NULL,\
+                                       NULL,\
+                                       SWALLOW_Type_LAYOUT_SPECIALIZTION_X,\
+                                       NULL, \
+                                       NULL, \
+                                       0, \
+                                       substr, \
+                                       NULL, \
+                                       NULL);\
+                       setting_retm_if(NULL == item_data, \
+                                       "item_data is NULL");\
+                       elm_genlist_item_select_mode_set( \
+                                       item_data->item, \
+                                       ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);\
+               } \
+       }
+
+#define ADD_SOUND_SLIDER(item_data, genlist, item_style, l_img, r_img, value, \
+               keystr, data, sld_cb, sld_max, start_cb, stop_cb) \
+       { \
+               item_data = setting_create_Gendial_field_def( \
+                               genlist, \
+                               &(item_style), \
+                               NULL,\
+                               NULL, \
+                               SWALLOW_Type_LAYOUT_SLIDER,\
+                               l_img, \
+                               r_img,\
+                               value,\
+                               keystr,\
+                               NULL,\
+                               sld_cb);\
+               if (item_data) {\
+                       item_data->window = data->md.layout;\
+                       item_data->evas = data->md.evas;\
+                       item_data->isIndicatorVisible = FALSE;\
+                       item_data->slider_min = 0;\
+                       item_data->slider_max = sld_max;\
+                       item_data->userdata = data;\
+                       item_data->start_change_cb = start_cb;\
+                       item_data->stop_change_cb = stop_cb;\
+                       elm_genlist_item_select_mode_set( \
+                                       item_data->item, \
+                                       ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);\
+               } else {\
+                       SETTING_TRACE_ERROR("%s item is NULL", keystr);\
+               } \
+       }
+
+static int _view_create(void *cb);
+static int _view_destroy(void *cb);
+static Eina_Bool _view_pop_cb(void *data, Elm_Object_Item *it);
+static void _mouse_up_Gendial_list_cb(void *data, Evas_Object *obj,
+               void *event_info);
+
+setting_view setting_view_sound_main = {
+       .create = _view_create,
+       .destroy = _view_destroy,
+       .update = NULL,
+       .cleanup = NULL
+};
+
+/* ***************************************************
+ *
+ * Public functions
+ *
+ ***************************************************/
+
+const char *setting_do_not_disturb_is_enable(void *data)
+{
+       int err = NOTIFICATION_ERROR_NONE;
+       bool do_not_disturb;
+       notification_system_setting_h system_setting = NULL;
+
+       err = notification_system_setting_load_system_setting(&system_setting);
+       setting_retvm_if(NULL == system_setting || NOTIFICATION_ERROR_NONE != err,
+                       "NULL parameter",
+                       "notification_system_setting_load_system_Setting failed");
+       err = notification_system_setting_get_do_not_disturb(
+                       system_setting, &do_not_disturb);
+       SETTING_TRACE("do_not_disturb: %d", do_not_disturb);
+
+       notification_system_setting_free_system_setting(system_setting);
+       if (1 == do_not_disturb)
+               return "IDS_ST_BODY_ON";
+       else
+               return "IDS_ST_BODY_ALERTTYPE_OFF";
+}
+
+const char *setting_notifiaction_on_lock_screen(void *data)
+{
+       int err = NOTIFICATION_ERROR_NONE;
+       notification_system_setting_h system_setting = NULL;
+       lock_screen_content_level_e level = 0;
+
+       err = notification_system_setting_load_system_setting(&system_setting);
+       setting_retvm_if(NOTIFICATION_ERROR_NONE != err,
+                       "NULL parameter",
+                       "notification_system_setting_load_system_setting failed");
+
+       err = notification_system_setting_get_lock_screen_content(
+                       system_setting, &level);
+       if (system_setting)
+               notification_system_setting_free_system_setting(system_setting);
+
+       if (NOTIFICATION_ERROR_NONE != err) {
+               SETTING_TRACE_ERROR("notification_system_setting_get_"\
+                               "lock_screen_content failed");
+               return "";
+       }
+
+       if (level == SHOW_ALL_CONTENT)
+               return NOTIFICATION_STR_ON_LOCK_SCREEN_SHOW_ALL;
+       else if (level == HIDE_SENSITIVE_CONTENT)
+               return NOTIFICATION_STR_ON_LOCK_SCREEN_HIDE_SENSITIVE;
+       else
+               return NOTIFICATION_STR_ON_LOCK_SCREEN_HIDE;
+}
+
+/* ***************************************************
+ *
+ * basic func
+ *
+ ***************************************************/
+
+static Eina_Bool _play_ringtone_sound_idle_cb(void *data)
+{
+       double current;
+       char *pa_tone_path = NULL;
+       player_state_e state = PLAYER_STATE_NONE ;
+       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
+       SettingSoundData *ad = list_item->userdata;
+
+       SETTING_TRACE_BEGIN;
+       retv_if(!data, EINA_FALSE);
+
+       player_get_state(ad->mp_player, &state);
+
+       if (list_item->eo_check) {
+               current = elm_slider_value_get(list_item->eo_check);
+               list_item->chk_status = (int)(current + 0.5);
+       }
+
+       /*
+        * S5 concept:
+        * On the volume popup,
+        *      1) if user controls the slider, don't play any sounds,
+        *      just change volume.
+        *      2) if user controls the HW volume key for ringtone sound,
+        *      the beep sound is supported
+
+        * On Setting > Sound
+        *      1) if user controls the slider, change volume & play sound
+        *      2) if user controls the HW volume key, do nothing
+        *      (DO NOT change volume,DO NOT play sound)
+       */
+       if (0 == safeStrCmp(ad->viewtype, VOLUME_APP_NAME))
+               return EINA_FALSE;
+
+       if (state == PLAYER_STATE_IDLE) {
+               pa_tone_path = vconf_get_str(
+                               VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR);
+               if (pa_tone_path == NULL) {
+                       if (isEmulBin())
+                               pa_tone_path = strdup(SETTING_DEFAULT_CALL_TONE_SDK);
+                       else
+                               pa_tone_path = strdup(SETTING_DEFAULT_CALL_TONE);
+
+                       if (vconf_set_str(
+                                       VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR,
+                                       pa_tone_path) < 0) {
+                               free(pa_tone_path);
+                               return EINA_FALSE;
+                       }
+               }
+               if (list_item->chk_status > 0) {
+                       setting_sound_play_sound_origin(
+                                       ad,
+                                       NULL,
+                                       pa_tone_path,
+                                       (float)list_item->chk_status,
+                                       SOUND_TYPE_RINGTONE);
+               }
+               free(pa_tone_path);
+       } else {
+               SETTING_TRACE("ringtone player status : %d", state);
+               if (state == PLAYER_STATE_PAUSED) {
+                       player_start(ad->mp_player);
+               } else if (state == PLAYER_STATE_PLAYING) {
+                       if (ad->sound_on)
+                               player_set_mute(ad->mp_player, false);
+               }
+       }
+
+       ad->play_ringtone_idler = NULL;
+       return EINA_FALSE;
+}
+
+void _start_change_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       SETTING_TRACE_BEGIN;
+       Setting_GenGroupItem_Data *list_item = NULL;
+       SettingSoundData *ad = NULL;
+
+       list_item = (Setting_GenGroupItem_Data *)data;
+       ret_if(!list_item);
+       ad = list_item->userdata;
+       ret_if(ad == NULL);
+
+       setting_sound_create_warning_popup_during_call(ad);
+       if (list_item == ad->data_call_volume)
+               ad->is_ringtone_slidering = true;
+
+       setting_sound_stop_sound(ad);
+}
+
+static void _call_slider_change_cb(
+               void *data, Evas_Object *obj, void *event_info)
+{
+       SETTING_TRACE_BEGIN;
+       SettingSoundData *ad = NULL;
+       double val = 0.0;
+       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *)data;
+       ret_if(!data);
+
+       val = elm_slider_value_get(obj);
+       ad = list_item->userdata;
+
+       ad->is_ringtone_slidering = true;
+
+       if (list_item->chk_status != (int)(val + 0.5)) {
+               list_item->chk_status = (int)(val + 0.5);
+               sound_manager_set_volume(SOUND_TYPE_RINGTONE, list_item->chk_status);
+               SETTING_TRACE_DEBUG(
+                               "ringtone volume is %d, %f",
+                               list_item->chk_status,
+                               val);
+
+               if (list_item->chk_status == 0) {
+                       /* change to Vibration mode */
+                       /* call system_setting */
+                       /*system_settings_set_value_bool(
+                        * SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, false); */
+                       vconf_set_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
+                                       FALSE);
+                       vconf_set_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
+                                       TRUE);
+                       feedback_play_type(FEEDBACK_TYPE_VIBRATION,
+                                               FEEDBACK_PATTERN_VIBRATION_ON);
+               } else {
+                       if (!ad->sound_on) {
+                               /* change to Sound mode */
+                               /* call system_setting */
+                               /*system_settings_set_value_bool(
+                                * SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE,
+                                * false); */
+                               vconf_set_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
+                                               TRUE);
+                               vconf_set_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
+                                               FALSE);
+                       }
+               }
+
+               setting_sound_update_slider_icon(list_item, SND_SLIDER_CALL);
+
+               elm_slider_value_set(obj, list_item->chk_status);
+       }
+
+       setting_sound_create_warning_popup_during_call(ad);
+       if (ad->calling_popup)
+               return;
+
+       ecore_idler_del(ad->play_ringtone_idler);
+       ad->play_ringtone_idler = ecore_idler_add(
+                       _play_ringtone_sound_idle_cb, list_item);
+
+       SETTING_TRACE("list_item->chk_status:%d", list_item->chk_status);
+}
+
+static void _noti_slider_change_cb(
+               void *data, Evas_Object *obj, void *event_info)
+{
+       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
+       player_state_e state = PLAYER_STATE_NONE;
+       SETTING_TRACE_BEGIN;
+
+       ret_if(data == NULL);
+
+       double val = elm_slider_value_get(obj);
+       SettingSoundData *ad = list_item->userdata;
+       sound_type_e sound_type = SOUND_TYPE_NOTIFICATION;
+
+       if (list_item->chk_status != (int)(val + 0.5)) {
+               list_item->chk_status = (int)(val + 0.5);
+               setting_sound_update_slider_icon(list_item, SND_SLIDER_NOTI);
+               sound_manager_set_volume(sound_type, list_item->chk_status);
+               SETTING_TRACE_DEBUG(
+                               "notification volume is %d, %f",
+                               list_item->chk_status,
+                               val);
+       }
+
+       setting_sound_create_warning_popup_during_call(ad);
+       if (ad->calling_popup)
+               return;
+
+       player_get_state(ad->mp_player, &state);
+       /*
+        * S5 concept:
+        * On the volume popup,
+        *      1) if user controls the slider, don't play any sounds
+        *      just change volume.
+        *      2) if user controls the HW volume key for ringtone sound,
+        *      the beep sound is supported
+
+        * On Setting > Sound
+        *      1) if user controls the slider, change volume & play sound
+        *      2) if user controls the HW volume key, do nothing
+        *      (DO NOT change volume,DO NOT play sound)
+       */
+       if (0 == safeStrCmp(ad->viewtype, VOLUME_APP_NAME))
+               return;
+
+       if (state == PLAYER_STATE_IDLE) {
+               if (list_item->chk_status > 0) {
+                       char *pa_tone_path = vconf_get_str(
+                                       VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
+                       if (pa_tone_path == NULL) {
+                               pa_tone_path = strdup(SETTING_DEFAULT_MSG_TONE);
+                               if (vconf_set_str(
+                                               VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR,
+                                               pa_tone_path) < 0) {
+                                       FREE(pa_tone_path);
+                                       return;
+                               }
+                       }
+                       setting_sound_play_sound_origin(
+                                       ad,
+                                       NULL,
+                                       pa_tone_path,
+                                       (float)list_item->chk_status,
+                                       sound_type);
+                       FREE(pa_tone_path);
+               }
+       } else {
+               SETTING_TRACE("noti player status : %d", state);
+               if (state == PLAYER_STATE_PAUSED)
+                       player_start(ad->mp_player);
+       }
+}
+
+
+static void _media_slider_change_cb(
+               void *data, Evas_Object *obj, void *event_info)
+{
+       char *pa_tone_path = NULL;
+       player_state_e state = PLAYER_STATE_NONE;
+       sound_type_e sound_type = SOUND_TYPE_MEDIA;
+       SETTING_TRACE_BEGIN;
+
+       /* error check */
+       ret_if(data == NULL);
+       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
+       SettingSoundData *ad = list_item->userdata;
+
+       double val = elm_slider_value_get(obj);
+       int value = (int)(val + 0.5);
+       if (list_item->chk_status != value) {
+               list_item->chk_status = value;
+               setting_sound_update_slider_icon(list_item, SND_SLIDER_MEDIA);
+               int ret = sound_manager_set_volume(sound_type, value);
+               SETTING_TRACE_DEBUG("ret : 0x%.8x", ret);
+               SETTING_TRACE_DEBUG(
+                               "media volume is %d, %f",
+                               list_item->chk_status,
+                               val);
+       }
+
+       setting_sound_create_warning_popup_during_call(ad);
+       if (ad->calling_popup)
+               return;
+
+       /*
+        * S5 concept:
+        * On the volume popup,
+        *      1) if user controls the slider, don't play any sounds
+        *      just change volume.
+        *      2) if user controls the HW volume key for ringtone sound,
+        *      the beep sound is supported
+
+        * On Setting > Sound
+        *      1) if user controls the slider, change volume & play sound
+        *      2) if user controls the HW volume key, do nothing
+        *      (DO NOT change volume,DO NOT play sound)
+       */
+       if (0 == safeStrCmp(ad->viewtype, VOLUME_APP_NAME))
+               return;
+
+       player_get_state(ad->mp_player, &state);
+
+       if (state == PLAYER_STATE_IDLE) {
+               if (list_item->chk_status > 0) {
+                       if (isEmulBin())
+                               pa_tone_path = strdup(SETTING_DEFAULT_CALL_TONE_SDK);
+                       else
+                               pa_tone_path = strdup(SETTING_DEFAULT_MEDIA_TONE);
+
+                       setting_sound_play_sound_origin(
+                                       ad,
+                                       NULL,
+                                       pa_tone_path,
+                                       (float)list_item->chk_status,
+                                       sound_type);
+                       FREE(pa_tone_path);
+               }
+       } else {
+               SETTING_TRACE("ringtone player status : %d", state);
+               if (state == PLAYER_STATE_PAUSED)
+                       player_start(ad->mp_player);
+       }
+}
+
+static void _sys_slider_change_cb(
+               void *data, Evas_Object *obj, void *event_info)
+{
+       /* error check */
+       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
+       SettingSoundData *ad = list_item->userdata;
+       ret_if(ad == NULL);
+
+       /*Get the current real value of slider */
+       double val = elm_slider_value_get(obj);
+       int value = (int)(val + 0.5);
+       sound_manager_set_volume(SOUND_TYPE_SYSTEM, value);
+       SETTING_TRACE_DEBUG("system volume is %d, %f", value, val);
+
+       setting_sound_create_warning_popup_during_call(ad);
+       if (ad->calling_popup)
+               return;
+
+       if (list_item->chk_status != value) {
+
+               /*
+                * S5 concept:
+                * On the volume popup,
+                *      1) if user controls the slider, don't play any sounds
+                *      just change volume.
+                *      2) if user controls the HW volume key for ringtone
+                *      sound, the beep sound is supported
+
+                * On Setting > Sound
+                *      1) if user controls the slider, change
+                *      volume & play sound
+                *      2) if user controls the HW volume key, do nothing
+                *      (DO NOT change volume,DO NOT play sound)
+               */
+               if (0 != safeStrCmp(ad->viewtype, VOLUME_APP_NAME)) {
+                       /*Play Tap Sound,then stop at once */
+                               feedback_play_type(FEEDBACK_TYPE_SOUND,
+                                                       FEEDBACK_PATTERN_TAP);
+               }
+               list_item->chk_status = value;
+               setting_sound_update_slider_icon(list_item, SND_SLIDER_SYSTEM);
+       }
+}
+
+void _stop_change_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       SETTING_TRACE_BEGIN;
+       Setting_GenGroupItem_Data *list_item = NULL;
+
+       ret_if(data == NULL);
+       list_item = (Setting_GenGroupItem_Data *)data;
+
+       SETTING_TRACE("chk_status : %d, slider : %f", list_item->chk_status,
+                       elm_slider_value_get(obj));
+       if (list_item->chk_status == 0)
+               elm_slider_value_set(obj, 0.0);
+       else if (list_item->chk_status == 15)
+               elm_slider_value_set(obj, 15.0);
+       if (list_item->userdata)
+               ((SettingSoundData *)(list_item->userdata))->is_ringtone_slidering = false;
+       SETTING_TRACE_END;
+}
+
+static void _sound_chk_cb(void *data, Evas_Object *obj,
+                                                  void *event_info)
+{
+       SETTING_TRACE_BEGIN;
+       /* error check */
+       ret_if(data == NULL);
+       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
+       SettingSoundData *ad = list_item->userdata;
+       ret_if(ad == NULL);
+
+       setting_sound_stop_sound(ad);
+       /* for genlist update status */
+       list_item->chk_status = elm_check_state_get(obj);
+       /* rollback */
+       setting_update_gl_item_chk_status(list_item, !list_item->chk_status);
+       _mouse_up_Gendial_list_cb(ad, NULL, list_item->item);
+}
+
+static void _get_lite_main_list(void *data)
+{
+       SETTING_TRACE_BEGIN;
+       ret_if(!data);
+       SettingSoundData *ad = (SettingSoundData *)data;
+
+       char *app_id = NULL;
+       char *optional_txt = NULL;
+       char *sdcard_filepath = NULL;
+       int vconf_value = 0;
+       char *sub_desc = NULL;
+       char *left_icon = NULL;
+       int mm_value = 0;
+       int sound_value = 0;
+       int vconf_ret = 0;
+       int ret = 0;
+       char *pa_ringtone = NULL;
+       int max_ringtone_vol = 0;
+       int max_noti_vol = 0;
+       int max_media_vol = 0;
+       int max_system_vol = 0;
+       Elm_Genlist_Item_Class *itc_slider = NULL;
+       Evas_Object *genlist = ad->md.genlist;
+       elm_genlist_block_count_set(genlist, 3);
+       elm_genlist_homogeneous_set(genlist, EINA_FALSE);
+
+       ret = sound_manager_get_max_volume(SOUND_TYPE_RINGTONE,
+                                               &max_ringtone_vol);
+       SETTING_TRACE("Getting max volume: %s %d", get_error_message(ret),
+                       max_ringtone_vol);
+       ret = sound_manager_get_max_volume(SOUND_TYPE_NOTIFICATION,
+                                               &max_noti_vol);
+       SETTING_TRACE("Getting max volume: %s %d", get_error_message(ret),
+                       max_noti_vol);
+       ret = sound_manager_get_max_volume(SOUND_TYPE_MEDIA, &max_media_vol);
+       SETTING_TRACE("Getting max volume: %s %d", get_error_message(ret),
+                       max_media_vol);
+       ret = sound_manager_get_max_volume(SOUND_TYPE_SYSTEM, &max_system_vol);
+       SETTING_TRACE("Getting max volume: %s %d", get_error_message(ret),
+                       max_system_vol);
+
+       if (vconf_get_bool(
+                       VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
+                       &sound_value) < 0)
+               sound_value = TRUE;     /*      default value of sound : on */
+
+
+       /*------------------------------------------------------------------ */
+       /*------------------------------------------------------------------ */
+       /*------------------------------------------------------------------ */
+       itc_slider = &(ad->itc_layout_1icon);
+
+       if (0 == safeStrCmp(ad->viewtype, VOLUME_APP_NAME))
+               itc_slider = &(ad->itc_layout);
+       /*------------------------------------------------------------------ */
+       /*------------------------------------------------------------------ */
+       /*------------------------------------------------------------------ */
+
+       /* 1. Ringtones */
+       SETTING_TRACE(" ???????????? ad->viewtype : %s ", ad->viewtype);
+
+       if (0 != safeStrCmp(ad->viewtype, VOLUME_APP_NAME)) {
+
+               int sd_status = VCONFKEY_SYSMAN_MMC_REMOVED;
+               if (vconf_get_int(
+                               VCONFKEY_SYSMAN_MMC_STATUS,
+                               &sd_status) != 0) {
+                       SETTING_TRACE_ERROR("fail to get mmc status");
+               }
+               sdcard_filepath = vconf_get_str(VCONFKEY_SETAPPL_CALL_VIBRATION_PATTERN_STR);
+
+               if (0 == safeStrNCmp(sdcard_filepath, INIT_PATH, safeStrLen(INIT_PATH))) {
+                       vconf_set_str(VCONFKEY_SETAPPL_CALL_VIBRATION_PATTERN_STR, "NONE");
+                       free(sdcard_filepath);
+                       sdcard_filepath = vconf_get_str(VCONFKEY_SETAPPL_CALL_VIBRATION_PATTERN_STR);
+               }
+               if (safeStrCmp(sdcard_filepath, "NONE") != 0
+                               && sd_status == VCONFKEY_SYSMAN_MMC_MOUNTED) {
+                       /*check sdcard filepath*/
+                       if (sdcard_filepath)
+                               pa_ringtone = strdup(sdcard_filepath);
+                       vconf_set_str(VCONFKEY_SETAPPL_CALL_VIBRATION_PATTERN_STR, "NONE");
+               } else {
+                       pa_ringtone = vconf_get_str(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR);
+               }
+
+               free(sdcard_filepath);
+               sdcard_filepath = NULL;
+
+               if (!pa_ringtone || strlen(pa_ringtone) == 0) {
+                       sub_desc = strdup(SILENT_MODE);
+               } else if (setting_sound_check_file_exist(ad, pa_ringtone) == SETTING_RETURN_FAIL) {
+                       if (pa_ringtone)
+                               FREE(pa_ringtone);
+                       if (isEmulBin())
+                               pa_ringtone = strdup(SETTING_DEFAULT_CALL_TONE_SDK);
+                       else
+                               pa_ringtone = strdup(SETTING_DEFAULT_CALL_TONE);
+
+                       vconf_ret = vconf_set_str(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR, pa_ringtone);
+                       if (vconf_ret < 0)
+                               SETTING_TRACE_DEBUG("failed to set vconf");
+               } else {
+                       if (pa_ringtone)
+                               sub_desc = setting_media_basename(pa_ringtone);
+               }
+
+               ad->data_call_alert_tone =
+                       setting_create_Gendial_field_def(
+                                       genlist,
+                                       &itc_2text_2,
+                                       _mouse_up_Gendial_list_cb,
+                                       ad,
+                                       SWALLOW_Type_INVALID,
+                                       NULL,
+                                       NULL,
+                                       0,
+                                       "IDS_ST_MBODY_RINGTONE",
+                                       sub_desc,
+                                       NULL);
+               if (ad->data_call_alert_tone) {
+                       __BACK_POINTER_SET(ad->data_call_alert_tone);
+                       ad->data_call_alert_tone->userdata = ad;
+               }
+
+               FREE(pa_ringtone);
+               G_FREE(sub_desc);
+       }
+
+
+       /* 2. call volumn. */
+       if (sound_manager_get_volume(SOUND_TYPE_RINGTONE, &mm_value)
+                       != SOUND_MANAGER_ERROR_NONE)
+               mm_value = SETTING_DEFAULT_RINGTONE_VOL_INT;
+       if (sound_value == FALSE)
+               mm_value = 0;
+
+       (void)app_get_id(&app_id);
+
+       if (app_id && !strcmp(VOLUME_APP_NAME, app_id))
+                       optional_txt = "IDS_ST_MBODY_RINGTONE";
+
+       left_icon = setting_sound_get_slider_icon(SND_SLIDER_CALL, mm_value);
+       ADD_SOUND_SLIDER(
+                       ad->data_call_volume,
+                       genlist,
+                       (*itc_slider),
+                       left_icon,
+                       NULL,
+                       /*"IDS_ST_HEADER_RINGTONES" is for volume App,in
+                        * Setting > Sound,it has no title */
+                       mm_value,
+                       optional_txt,
+                       ad,
+                       _call_slider_change_cb,
+                       max_ringtone_vol,
+                       _start_change_cb,
+                       _stop_change_cb);
+       __BACK_POINTER_SET(ad->data_call_volume);
+
+       /* Disable Call Volume slider if Silent ringtone is selected */
+       if (ad->data_call_volume
+                       && ad->data_call_alert_tone
+                       && !safeStrCmp(ad->data_call_alert_tone->sub_desc, SILENT_MODE)) {
+               elm_object_item_disabled_set(ad->data_call_volume->item, EINA_TRUE);
+               elm_object_disabled_set(ad->data_call_volume->eo_check, EINA_TRUE);
+       }
+
+       /* 3. Notification alert */
+       if (0 != safeStrCmp(ad->viewtype, VOLUME_APP_NAME)) {
+               pa_ringtone = vconf_get_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
+               SETTING_TRACE_WARNING("<MS> NOTI VCONF: %s", __FILE__, __LINE__, pa_ringtone);
+
+
+               if (!pa_ringtone || strlen(pa_ringtone) == 0) {
+                       sub_desc = strdup(SILENT_MODE);
+               } else if (setting_sound_check_file_exist(ad, pa_ringtone) == SETTING_RETURN_FAIL) {
+                       if (pa_ringtone)
+                               FREE(pa_ringtone);
+                       pa_ringtone = strdup(SETTING_DEFAULT_MSG_TONE);
+                       vconf_ret = vconf_set_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, SETTING_DEFAULT_MSG_TONE);
+                       if (vconf_ret < 0)
+                               SETTING_TRACE_DEBUG("failed to set vconf");
+               } else  {
+                       if (pa_ringtone)
+                               sub_desc = setting_media_basename(pa_ringtone);
+               }
+
+               ad->data_msg_alert_tone =
+                       setting_create_Gendial_field_def(
+                                       genlist,
+                                       &itc_2text_2,
+                                       _mouse_up_Gendial_list_cb,
+                                       ad,
+                                       SWALLOW_Type_INVALID,
+                                       NULL,
+                                       NULL,
+                                       0,
+                                       "IDS_ST_BODY_NOTIFICATION",
+                                       sub_desc,
+                                       NULL);
+               if (ad->data_msg_alert_tone) {
+                       __BACK_POINTER_SET(ad->data_msg_alert_tone);
+                       ad->data_msg_alert_tone->userdata = ad;
+               }
+
+               FREE(pa_ringtone);
+               G_FREE(sub_desc);
+       }
+       /* 4.noti volumn */
+       if (sound_manager_get_volume(SOUND_TYPE_NOTIFICATION, &mm_value)
+                       != SOUND_MANAGER_ERROR_NONE)
+               mm_value = SETTING_DEFAULT_NOTI_VOL_INT;
+       if (sound_value == FALSE)
+               mm_value = 0;
+
+       if (app_id && !strcmp(VOLUME_APP_NAME, app_id))
+                       optional_txt = "IDS_ST_BODY_NOTIFICATION";
+
+       left_icon = setting_sound_get_slider_icon(SND_SLIDER_NOTI, mm_value);
+       ADD_SOUND_SLIDER(
+                       ad->data_noti_volume,
+                       genlist,
+                       (*itc_slider),
+                       left_icon,
+                       NULL,
+                       mm_value,
+                       optional_txt,
+                       ad,
+                       _noti_slider_change_cb,
+                       max_noti_vol,
+                       _start_change_cb,
+                       _stop_change_cb);
+       __BACK_POINTER_SET(ad->data_noti_volume);
+
+       free(app_id);
+       app_id = NULL;
+
+       /* Disable Notification slider if Silent ringtone is selected */
+       if (ad->data_noti_volume
+                       && ad->data_msg_alert_tone
+                       && !safeStrCmp(ad->data_msg_alert_tone->sub_desc, SILENT_MODE)) {
+               elm_object_item_disabled_set(ad->data_noti_volume->item, EINA_TRUE);
+               elm_object_disabled_set(ad->data_noti_volume->eo_check, EINA_TRUE);
+       }
+
+       /* 5.media volume */
+       if (sound_manager_get_volume(SOUND_TYPE_MEDIA, &mm_value)
+                       != SOUND_MANAGER_ERROR_NONE)
+               mm_value = SETTING_DEFAULT_MEDIA_VOL_INT;
+
+       left_icon = setting_sound_get_slider_icon(SND_SLIDER_MEDIA, mm_value);
+       ADD_SOUND_SLIDER(
+                       ad->data_media_volume,
+                       genlist,
+                       ad->itc_layout,
+                       left_icon, /*IMG_SLIDER_BTN_VOLUME02*/
+                       NULL,
+                       mm_value,
+                       "IDS_ST_BODY_MEDIA",
+                       ad,
+                       _media_slider_change_cb,
+                       max_media_vol,
+                       _start_change_cb,
+                       _stop_change_cb);
+
+       __BACK_POINTER_SET(ad->data_media_volume);
+
+       /* 6.system volume */
+       if (sound_manager_get_volume(SOUND_TYPE_SYSTEM, &mm_value)
+                       != SOUND_MANAGER_ERROR_NONE) {
+               SETTING_TRACE_DEBUG("Fail to get volume");
+               mm_value = SETTING_DEFAULT_SYSTEM_VOL_INT;
+       }
+       if (sound_value == FALSE)
+               mm_value = 0;
+
+       left_icon = setting_sound_get_slider_icon(SND_SLIDER_SYSTEM, mm_value);
+       ADD_SOUND_SLIDER(
+                       ad->data_touch_volume, genlist, ad->itc_layout,
+                       left_icon, NULL/*IMG_SLIDER_BTN_SYSTEM_VOLUME*/,
+                       mm_value, "IDS_ST_BODY_SYSTEM", ad,
+                       _sys_slider_change_cb,
+                       max_system_vol,
+                       _start_change_cb, _stop_change_cb);
+
+       __BACK_POINTER_SET(ad->data_touch_volume);
+
+       if (0 != safeStrCmp(ad->viewtype, VOLUME_APP_NAME)) {
+               /* 7. Vibrate when ringing */
+               if (vconf_get_bool(
+                               VCONFKEY_SETAPPL_VIBRATE_WHEN_RINGING_BOOL,
+                               &vconf_value) < 0) {
+                       /* default value of vibrate sound : on */
+                       vconf_value = TRUE;
+               }
+               ADD_TOGGLE_MENU2(
+                               ad->data_sound_when_ring,
+                               genlist,
+                               itc_1text_1icon,
+                               "IDS_ST_BODY_VIBRATE_WHEN_RINGING",
+                               vconf_value,
+                               ad);
+               __BACK_POINTER_SET(ad->data_sound_when_ring);
+
+               if (ad->data_sound_when_ring)
+                       elm_object_item_disabled_set(ad->data_sound_when_ring->item,
+                                                                               !sound_value);
+               /* 8. Feedback */
+               setting_create_Gendial_field_def(genlist, &itc_1text,
+                               _mouse_up_Gendial_list_cb,
+                               data, SWALLOW_Type_INVALID, NULL,
+                               NULL, 0,
+                               "IDS_ST_MBODY_OTHER_SOUNDS", NULL, NULL);
+
+               /* Notifications */
+               setting_create_Gendial_field_titleItem(
+                               genlist,
+                               &itc_group_item,
+                               _("IDS_ST_BODY_NOTIFICATIONS"),
+                               NULL);
+               /* 9. Notifications - Do not disturb */
+               const char *sub_desc = setting_do_not_disturb_is_enable(data);
+               ad->data_do_not_disturb = setting_create_Gendial_field_def(
+                               genlist,
+                               &itc_2text_2,
+                               _mouse_up_Gendial_list_cb,
+                               data,
+                               SWALLOW_Type_INVALID,
+                               NULL,
+                               NULL,
+                               0,
+                               "IDS_ST_MBODY_DO_NOT_DISTURB_ABB",
+                               sub_desc,
+                               NULL);
+               /* 10. Notifications - App notifications */
+               setting_create_Gendial_field_def(
+                               genlist,
+                               &itc_2text_2,
+                               _mouse_up_Gendial_list_cb,
+                               data,
+                               SWALLOW_Type_INVALID,
+                               NULL,
+                               NULL,
+                               0,
+                               "IDS_ST_MBODY_APP_NOTIFICATIONS",
+                               "IDS_ST_BODY_ALLOW_OR_BLOCK_NOTIFICATIONS_FROM_"
+                               "INDIVIDUAL_APPLICATIONS",
+                               NULL);
+
+               sub_desc = setting_notifiaction_on_lock_screen(data);
+               /* 11. Notifications - Notification on lock screen */
+               ad->data_notifiaction_on_lock_screen = setting_create_Gendial_field_def(
+                               genlist,
+                               &itc_2text_2,
+                               _mouse_up_Gendial_list_cb,
+                               data,
+                               SWALLOW_Type_INVALID,
+                               NULL,
+                               NULL,
+                               0,
+                               NOTIFICATION_STR_ON_LOCK_SCREEN,
+                               sub_desc,
+                               NULL);
+
+               ad->md.genlist = genlist;
+
+       }
+       if (!sound_value) {
+               if (ad->data_noti_volume)
+                       elm_object_item_disabled_set(ad->data_noti_volume->item,
+                                                                               EINA_TRUE);
+               if (ad->data_touch_volume)
+                       elm_object_item_disabled_set(ad->data_touch_volume->item,
+                                                                               EINA_TRUE);
+       }
+}
+
+static void _click_softkey_back_cb(void *data,
+               Evas_Object *obj, void *event_info)
+{
+       SETTING_TRACE_BEGIN;
+       SettingSoundData *ad = (SettingSoundData *)data;
+       ret_if(!ad);
+       elm_naviframe_item_pop(ad->md.naviframe);
+}
+
+static int _view_create(void *cb)
+{
+       Evas_Object *back_button = NULL;
+
+       SETTING_TRACE_BEGIN;
+       retv_if(cb == NULL, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
+       SettingSoundData *ad = (SettingSoundData *) cb;
+
+       int ret = view_init(&ad->md, _("IDS_ST_HEADER_SOUND"));
+
+       if (ret != SETTING_RETURN_SUCCESS)
+               return ret;
+
+       /* 1.Grab Hard Key */
+       setting_sound_key_grab(ad);
+       SETTING_TRACE("viewtype: %s", ad->viewtype);
+       _get_lite_main_list(ad);
+
+       back_button = setting_create_button(ad->md.naviframe,
+                       _(NULL), NAVI_BACK_ARROW_BUTTON_STYLE,
+                       _click_softkey_back_cb, ad);
+       elm_layout_content_set(ad->md.naviframe, "prev_btn",
+                       back_button);
+       elm_naviframe_item_pop_cb_set(ad->md.naviframe_it, _view_pop_cb, ad);
+       elm_object_item_domain_text_translatable_set(
+                       ad->md.naviframe_it, SETTING_PACKAGE,
+                       EINA_TRUE);
+
+       setting_view_sound_main.is_create = TRUE;
+
+       SETTING_TRACE_END;
+       return SETTING_RETURN_SUCCESS;
+}
+
+static int _view_destroy(void *cb)
+{
+       /* error check */
+       retv_if(cb == NULL, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
+       SETTING_TRACE_BEGIN;
+       retv_if(!setting_view_sound_main.is_create,
+                       SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
+
+       SettingSoundData *ad = (SettingSoundData *) cb;
+
+       /* 1.Ungrab Key */
+       setting_sound_key_ungrab(ad);
+
+       if (ad->play_ringtone_idler) {
+               ecore_idler_del(ad->play_ringtone_idler);
+               ad->play_ringtone_idler = NULL;
+       }
+
+       evas_object_del(ad->md.window);
+       ad->md.window = NULL;
+
+       setting_view_sound_main.is_create = FALSE;
+       return SETTING_RETURN_SUCCESS;
+}
+
+static Eina_Bool _view_pop_cb(void *data, Elm_Object_Item *it)
+{
+       SETTING_TRACE_BEGIN;
+       SettingSoundData *ad = data;
+       retv_if(!ad, EINA_FALSE);
+       setting_sound_stop_sound(ad);
+       ui_app_exit();
+       return EINA_TRUE;
+}
+
+/* ***************************************************
+ *
+ *general func
+ *
+ ***************************************************/
+
+static void _update_slider_item(Setting_GenGroupItem_Data *item_to_update,
+               sound_type_e sound_type_to_update, const char *ringtone_file,
+               int icon_type)
+{
+       int mm_value = 0;
+       SettingSoundData *ad = NULL;
+
+       ret_if(!item_to_update);
+       ad = item_to_update->userdata;
+       ret_if(!ad);
+
+       if (!safeStrCmp(ringtone_file, SILENT_MODE)) {
+               /* Disable */
+               if (item_to_update && item_to_update->item
+                               && item_to_update->eo_check) {
+                       if (item_to_update->chk_status)
+                                       ad->backup_ringtone_volume[sound_type_to_update] =
+                                                       item_to_update->chk_status;
+                       item_to_update->chk_status = 0;
+                       elm_slider_value_set(item_to_update->eo_check,
+                                       item_to_update->chk_status);
+
+                       sound_manager_set_volume(sound_type_to_update, 0);
+
+                       elm_object_item_disabled_set(item_to_update->item, EINA_TRUE);
+                       elm_object_disabled_set(item_to_update->eo_check, EINA_TRUE);
+
+                       /* Change notification slider's icon as mute style */
+                       setting_sound_update_slider_icon(item_to_update, icon_type);
+               }
+       } else {
+               /* Enable */
+               int ret =  sound_manager_get_volume(sound_type_to_update, &mm_value);
+               SETTING_TRACE("ret:%d", ret);
+               item_to_update->chk_status = mm_value;
+               elm_slider_value_set(
+                               item_to_update->eo_check,
+                               item_to_update->chk_status);
+               elm_object_item_disabled_set(item_to_update->item, EINA_FALSE);
+               elm_object_disabled_set(item_to_update->eo_check, EINA_FALSE);
+               if (mm_value == 0)
+                       sound_manager_set_volume(sound_type_to_update,
+                                       ad->backup_ringtone_volume[sound_type_to_update]);
+               setting_sound_update_slider_icon(item_to_update, icon_type);
+       }
+}
+
+static void _set_ringtone_path(Evas_Object *genlist, char *path, char *vconf,
+               system_settings_key_e key,
+               Setting_GenGroupItem_Data *ringtone_item,
+               Setting_GenGroupItem_Data *slider_item,
+               sound_type_e sound_type, SoundType type)
+{
+       char *ringtone_file = setting_media_basename(path);
+       int ret;
+
+       SETTING_TRACE_BEGIN;
+
+       if (strnlen(path, PATH_MAX) == 0) {
+               ret = vconf_set_str(vconf, "");
+               if (ret != 0)
+                       dlog_print(DLOG_ERROR, LOG_TAG, "[%s:%d] vconf_set_str() error: %s",
+                                       __FILE__, __LINE__, get_error_message(ret));
+
+               ringtone_item->sub_desc = strdup(SILENT_MODE);
+       } else  {
+               ret = vconf_set_str(vconf, path);
+               if (ret != 0)
+                       dlog_print(DLOG_ERROR, LOG_TAG, "[%s:%d] cause error: %s",
+                                       __FILE__, __LINE__, get_error_message(ret));
+
+               ret = system_settings_set_value_string(key, path);
+               if (SYSTEM_SETTINGS_ERROR_NONE == ret)
+                       ringtone_item->sub_desc = strdup(ringtone_file);
+               else
+                       SETTING_TRACE_ERROR("system_settings_set_value_string() failed: %s",
+                                       get_error_message(ret));
+       }
+
+       elm_object_item_data_set(ringtone_item->item, ringtone_item);
+       elm_genlist_item_update(ringtone_item->item);
+       elm_genlist_realized_items_update(genlist);
+       _update_slider_item(slider_item, sound_type, ringtone_file, type);
+
+       free(ringtone_file);
+       SETTING_TRACE_END;
+}
+
+static void _result_myfile_cb(app_control_h request,
+                                       app_control_h reply, app_control_result_e result,
+                                       void *priv)
+{
+       char **paths = NULL;
+       int arr_len = 0;
+
+       SETTING_TRACE_BEGIN;
+       ret_if(priv == NULL);
+
+       SettingSoundData *ad = (SettingSoundData *) priv;
+
+       if (APP_CONTROL_RESULT_SUCCEEDED != result)
+               return;
+
+       (void)app_control_get_extra_data_array(reply, APP_CONTROL_DATA_SELECTED,
+                       &paths, &arr_len);
+       if (!paths || arr_len == 0)
+               return;
+
+       if (paths[0] != NULL) {
+               if (0 == safeStrCmp(ad->ringtone_type, "IDS_ST_MBODY_RINGTONE")) {
+                       _set_ringtone_path(ad->md.genlist, paths[0],
+                                       VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR,
+                                       SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE,
+                                       ad->data_call_alert_tone, ad->data_call_volume,
+                                       SOUND_TYPE_RINGTONE, SND_SLIDER_CALL);
+
+               } else if (0 == safeStrCmp(ad->ringtone_type, "IDS_ST_BODY_NOTIFICATION")) {
+                       _set_ringtone_path(ad->md.genlist, paths[0],
+                                       VCONFKEY_SETAPPL_NOTI_RINGTONE_PATH_STR,
+                                       SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION,
+                                       ad->data_msg_alert_tone, ad->data_noti_volume,
+                                       SOUND_TYPE_NOTIFICATION, SND_SLIDER_NOTI);
+               }
+       }
+
+       free(paths);
+}
+
+static char *_prepare_ringtone_path(char *vconf, system_settings_key_e key,
+                                                                       char *default_emul, char *default_arm)
+{
+       int ret = 0;
+       char *vconf_ringtone = vconf_get_str(vconf);
+       char *pa_cur_ringtone = NULL;
+
+       dlog_print(DLOG_INFO, LOG_TAG, "[%s:%d] <MS> VCONF_RINGTONE: %s", __FILE__, __LINE__, vconf_ringtone);
+
+       if (!vconf_ringtone || strlen(vconf_ringtone) == 0) {
+               pa_cur_ringtone = strdup(SILENT_MODE);
+       } else {
+               ret = system_settings_get_value_string(key, &pa_cur_ringtone);
+               if (ret != SYSTEM_SETTINGS_ERROR_NONE) {
+                       SETTING_TRACE_ERROR("system_settings_get_value_string() failed. Error: %s", get_error_message(ret));
+                       return NULL;
+               }
+       }
+
+       if (pa_cur_ringtone == NULL) {
+               if (isEmulBin())
+                       pa_cur_ringtone = strdup(default_emul);
+               else
+                       pa_cur_ringtone = strdup(default_arm);
+       }
+
+
+       return pa_cur_ringtone;
+}
+
+static void _create_myfile_ug(SettingSoundData *ad, char *titleID)
+{
+       ret_if(ad == NULL);
+       const char *selected_files_arr[] = {NULL};
+       char *pa_cur_ringtone = NULL;
+       app_control_h svc = NULL;
+       if (APP_CONTROL_ERROR_NONE != app_control_create(&svc))
+               return;
+
+       if (0 == safeStrCmp(ad->ringtone_type, "IDS_ST_MBODY_RINGTONE")) {
+               pa_cur_ringtone = _prepare_ringtone_path(
+                               VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR,
+                               SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE,
+                               SETTING_DEFAULT_CALL_TONE_SDK,
+                               SETTING_DEFAULT_CALL_TONE);
+
+       } else if (0 == safeStrCmp(ad->ringtone_type, "IDS_ST_BODY_NOTIFICATION")) {
+               pa_cur_ringtone = _prepare_ringtone_path(
+                               VCONFKEY_SETAPPL_NOTI_RINGTONE_PATH_STR,
+                               SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION,
+                               SETTING_DEFAULT_MSG_TONE,
+                               SETTING_DEFAULT_MSG_TONE);
+
+               app_control_add_extra_data(svc, "show_notification", "true");
+       }
+
+       selected_files_arr[0] = pa_cur_ringtone;
+
+       app_control_add_extra_data_array(svc, APP_CONTROL_DATA_SELECTED,
+                                                                       selected_files_arr,
+                                                                       sizeof(selected_files_arr)/
+                                                                       sizeof(const char *));
+
+       elm_object_tree_focus_allow_set(ad->md.naviframe, EINA_FALSE);
+
+       app_control_set_app_id(svc, "org.tizen.setting-ringtone");
+       app_control_set_launch_mode(svc, APP_CONTROL_LAUNCH_MODE_GROUP);
+       if (APP_CONTROL_ERROR_NONE !=
+                       app_control_send_launch_request(svc, _result_myfile_cb, ad))
+               SETTING_TRACE_ERROR("org.tizen.setting-ringtone launch request failed");
+
+       app_control_destroy(svc);
+       free(pa_cur_ringtone);
+}
+
+static void _back_button_click_cb(void *data, Evas_Object *obj,
+               void *event_info)
+{
+       SettingSoundData *ad = data;
+       ret_if(!ad);
+       elm_naviframe_item_pop(ad->md.naviframe);
+}
+
+static void _mouse_up_Gendial_list_cb(void *data,
+               Evas_Object *obj,
+               void *event_info)
+{
+       SETTING_TRACE_BEGIN;
+       app_control_h service = 0;
+       Evas_Object *back_button = NULL;
+       SettingSoundData *ad = NULL;
+       Elm_Object_Item *navi_it = NULL;
+       int vconf_value = 0;
+       Evas_Object *genlist = NULL;
+       Elm_Object_Item *item = NULL;
+       Setting_GenGroupItem_Data *list_item = NULL;
+
+       ad = data;
+       ret_if(!ad);
+
+       item = (Elm_Object_Item *)event_info;
+       retm_if(event_info == NULL, "Invalid argument: event info is NULL");
+
+       elm_genlist_item_selected_set(item, 0);
+       list_item = elm_object_item_data_get(item);
+       ret_if(!list_item);
+
+       setting_sound_stop_sound(ad);
+
+       SETTING_TRACE("clicking item[%s]", _(list_item->keyStr));
+
+       if (!safeStrCmp("IDS_ST_MBODY_RINGTONE", list_item->keyStr)
+               || !safeStrCmp("IDS_ST_BODY_NOTIFICATION", list_item->keyStr)) {
+               ad->ringtone_type = list_item->keyStr;
+               _create_myfile_ug(ad, list_item->keyStr);
+               setting_sound_key_ungrab(ad);
+       } else if (!safeStrCmp("IDS_ST_MBODY_DO_NOT_DISTURB_ABB",
+                       list_item->keyStr)) {
+               app_control_create(&service);
+               app_control_set_app_id(service,
+                               "org.tizen.setting-notification");
+               app_control_set_operation(service, DO_NOT_DISTURB_OP);
+               app_control_set_launch_mode(service, APP_CONTROL_LAUNCH_MODE_GROUP);
+               app_control_send_launch_request(service, NULL, NULL);
+               app_control_destroy(service);
+       } else if (!safeStrCmp("IDS_ST_MBODY_APP_NOTIFICATIONS",
+                       list_item->keyStr)) {
+               app_control_create(&service);
+               app_control_set_app_id(service,
+                               "org.tizen.setting-notification");
+               app_control_set_operation(service, APP_NOTIFICATIONS_OP);
+               app_control_set_launch_mode(service, APP_CONTROL_LAUNCH_MODE_GROUP);
+               app_control_send_launch_request(service, NULL, NULL);
+               app_control_destroy(service);
+       } else if (!safeStrCmp(NOTIFICATION_STR_ON_LOCK_SCREEN,
+                       list_item->keyStr)) {
+               app_control_create(&service);
+               app_control_set_app_id(service,
+                               "org.tizen.setting-notification");
+               app_control_set_operation(service, NOTIFICATIONS_ON_LOCK_SCREEN);
+               app_control_set_launch_mode(service, APP_CONTROL_LAUNCH_MODE_GROUP);
+               app_control_send_launch_request(service, NULL, NULL);
+               app_control_destroy(service);
+
+       }
+       /* additional */
+       else if (!safeStrCmp(
+                       "IDS_ST_BODY_VIBRATE_WHEN_RINGING",
+                       list_item->keyStr)) {
+               /* vibrate when ring*/
+               int old_status = list_item->chk_status;
+               if (vconf_set_bool(VCONFKEY_SETAPPL_VIBRATE_WHEN_RINGING_BOOL,
+                               !old_status) == 0) {
+                       /* new status */
+                       setting_update_gl_item_chk_status(list_item, !old_status);
+               }
+       } else if (!safeStrCmp("IDS_ST_BODY_SCREEN_LOCK_SOUND",
+                       list_item->keyStr)) {
+               int old_status = list_item->chk_status;
+               if (vconf_set_bool(VCONFKEY_SETAPPL_SOUND_LOCK_BOOL,
+                               !old_status) == 0) {
+                       /* new status */
+                       setting_update_gl_item_chk_status(list_item,
+                                       !old_status);
+               }
+       } else if (!safeStrCmp("IDS_ST_MBODY_DIALLING_KEYPAD_TONE",
+                       list_item->keyStr)) {
+               int old_status = list_item->chk_status;
+               /* To do : set vconfkey for touch sounds */
+               if (vconf_set_bool(VCONFKEY_SETAPPL_BUTTON_SOUNDS_BOOL,
+                               !old_status) == 0) {
+                       /* new status */
+                       setting_update_gl_item_chk_status(list_item,
+                                       !old_status);
+               }
+       } else if (!safeStrCmp("IDS_ST_MBODY_TOUCH_SOUND", list_item->keyStr)) {
+               int old_status = list_item->chk_status;
+               /* To do : set vconfkey for touch sounds */
+               if (vconf_set_bool(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL,
+                               !old_status) == 0) {
+                       /* new status */
+                       setting_update_gl_item_chk_status(list_item,
+                                       !old_status);
+               }
+       } else if (!safeStrCmp("IDS_ST_MBODY_OTHER_SOUNDS", list_item->keyStr)) {
+               setting_sound_key_ungrab(ad);
+
+               ADD_GENLIST2(genlist, ad->md.naviframe);
+               /* 1. Touch sounds */
+               if (vconf_get_bool(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL,
+                               &vconf_value) < 0)
+                       /* default value of touch sounds : on */
+                       vconf_value = TRUE;
+               ADD_TOGGLE_MENU(ad->data_touch_sounds, genlist, itc_1text_1icon,
+                               "IDS_ST_MBODY_TOUCH_SOUND",
+                               "IDS_ST_BODY_PLAY_A_SOUND_WHEN_BUTTONS_ICONS_"
+                                       "AND_MENU_ITEMS_ARE_TAPPED",
+                               vconf_value, ad)
+
+               /* 2. Keytones */
+               if (vconf_get_bool(VCONFKEY_SETAPPL_BUTTON_SOUNDS_BOOL,
+                               &vconf_value) < 0)
+                       /* default value of touch sounds : on */
+                       vconf_value = TRUE;
+               ADD_TOGGLE_MENU(ad->data_button_sounds, genlist,
+                               itc_1text_1icon,
+                               "IDS_ST_MBODY_DIALLING_KEYPAD_TONE",
+                               "IDS_ST_BODY_PLAY_TONE_WHEN_THE_DIALLING_"
+                                       "KEYPAD_IS_TAPPED",
+                               vconf_value, ad)
+
+               /*      3. Screen lock sound */
+               if (vconf_get_bool(VCONFKEY_SETAPPL_SOUND_LOCK_BOOL,
+                               &vconf_value) < 0)
+                       /* default value of lock/unlock sound : off */
+                       vconf_value = 0;
+               ADD_TOGGLE_MENU(ad->data_lock_sound, genlist, itc_1text_1icon,
+                               "IDS_ST_BODY_SCREEN_LOCK_SOUND",
+                               "IDS_ST_BODY_PLAY_SOUNDS_WHEN_LOCKING_AND_UNLOCKING_SCREEN",
+                               vconf_value, ad)
+
+
+               navi_it = elm_naviframe_item_push(ad->md.naviframe,
+                               "IDS_ST_MBODY_OTHER_SOUNDS", NULL, NULL, genlist,
+                               NULL);
+               elm_object_item_domain_text_translatable_set(navi_it,
+                               SETTING_PACKAGE, EINA_TRUE);
+               back_button = setting_create_button(ad->md.naviframe, _("IDS_ST_BUTTON_BACK"),
+                               NAVI_BACK_ARROW_BUTTON_STYLE, _back_button_click_cb, ad);
+               elm_layout_content_set(ad->md.naviframe, "prev_btn", back_button);
+       }
+}
diff --git a/setting-profile/inc/setting-profile.h b/setting-profile/inc/setting-profile.h
deleted file mode 100644 (file)
index 53bb2c4..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
- * setting
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd.
- *
- * Contact: MyoungJune Park <mj2004.park@samsung.com>
- *
- * 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.
- *
- */
-#ifndef __SETTING_PROFILE_H__
-#define __SETTING_PROFILE_H__
-
-#include <player.h>
-#include <sound_manager.h>
-#include <efl_extension.h>
-#include <feedback.h>
-#include <call-manager.h>
-#include <system_settings.h>
-#include <setting-common/setting-common-init.h>
-#include <setting-common/setting-common-general-func.h>
-#include <setting-common/setting-common-draw-widget.h>
-#include <setting-common/setting-common-view.h>
-
-#define SETTING_PROFILE_ICON_PATH_CFG _TZ_SYS_RO_APP"/org.tizen.setting/res/icons/"
-
-#define VOLUME_APP_NAME "org.tizen.setting.volume"
-#define SETTING_PROFILE_MMC_PATH \
-       _TZ_SYS_MEDIA"/sdcard"
-#define SETTING_DEFAULT_MSG_TONE \
-       _TZ_SYS_GLOBALUSER_DATA"/settings/Alerts/Whistle.ogg"
-#define SETTING_DEFAULT_MEDIA_TONE \
-       _TZ_SYS_GLOBALUSER_DATA"/settings/Ringtones/ringtone_sdk.mp3"
-#define SUPPORT_PLAYER_ASYNC 1
-
-/*Call ringtone:3 icon status */
-#define ICON_CALL_VIB \
-       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_volume_vibrate.png"
-#define ICON_CALL_NORMAL \
-       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_incoming_call.png"
-#define ICON_CALL_MUTE \
-       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_volume_mute.png"
-
-/*Notification: 2 icon status */
-#define ICON_NOTI_VIB \
-       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_notification_vibrate.png"
-#define ICON_NOTI_MUTE \
-       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_notification_mute.png"
-#define ICON_NOTI_NORMAL \
-       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_notification.png"
-
-/*Media: 2 icon status */
-#define ICON_MEDIA_MUTE                SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_volume_mute.png"
-#define ICON_MEDIA_NORMAL      SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_volume.png"
-
-/*System:2 icon status */
-#define ICON_SYSTEM_MUTE \
-       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_system_mute.png"
-#define ICON_SYSTEM_NORMAL \
-       SETTING_PROFILE_ICON_PATH_CFG"sound_slider_icon_system.png"
-
-typedef enum {
-       SND_SLIDER_CALL = 0,
-       SND_SLIDER_NOTI,
-       SND_SLIDER_MEDIA,
-       SND_SLIDER_SYSTEM,
-       SND_SLIDER_MAX,
-} SoundType;
-
-typedef struct _SettingSoundData SettingSoundData;
-
-/**
- * Setting Profile UG context
- * all UG function has void* as an agument. this is casted back to
- * SettingSoundData and the functions access app context.
- */
-struct _SettingSoundData {
-       char *viewtype;
-       MainData md;
-
-       /* add more variables here (move your appdata to here) */
-       Elm_Genlist_Item_Class itc_layout;
-       Elm_Genlist_Item_Class itc_layout_1icon;
-
-       /* Main view */
-       Setting_GenGroupItem_Data *data_call_alert_tone;
-       Setting_GenGroupItem_Data *data_call_volume;
-       Setting_GenGroupItem_Data *data_msg_alert_tone;
-       Setting_GenGroupItem_Data *data_noti_volume;
-       Setting_GenGroupItem_Data *data_touch_volume;
-       Setting_GenGroupItem_Data *data_media_volume;
-       Setting_GenGroupItem_Data *data_sound_when_ring;
-       Setting_GenGroupItem_Data *data_do_not_disturb;
-       Setting_GenGroupItem_Data *data_notifiaction_on_lock_screen;
-
-       /* Feedback */
-       Setting_GenGroupItem_Data *data_lock_sound;
-       Setting_GenGroupItem_Data *data_keyboard_sound;
-       Setting_GenGroupItem_Data *data_button_sounds;
-       Setting_GenGroupItem_Data *data_touch_sounds;
-
-       player_h mp_player;
-       player_h mp_prepare_async;
-       sound_stream_info_h ringtone_sound_stream_info;
-       sound_stream_info_h noti_sound_stream_info;
-       sound_stream_info_h media_sound_stream_info;
-
-       bool sound_on;
-       char *song_playing;
-       char *ringtone_type;
-
-       /* for performance of incoming call ringtone slider */
-       Ecore_Idler *play_ringtone_idler;
-
-       Ecore_Event_Handler *keydown_handler;
-       Ecore_Event_Handler *keyup_handler;
-       bool is_pressing;
-       Ecore_Timer *updown_timer;
-       Evas_Object *calling_popup; /* Unable to pre-listening during a call */
-       int backup_ringtone_volume[SOUND_TYPE_VOICE + 1];
-       bool is_ringtone_slidering;
-};
-
-extern setting_view setting_view_sound_main;
-
-void setting_sound_play_sound_origin(void *data, void *cb, char *ringtone_file,
-               float vol, sound_type_e sound_type);
-int setting_sound_check_file_exist(void *data, const char *file_path);
-
-bool setting_sound_play_sound(void *data, void *cb, char *ringtone_file,
-               int vol, sound_type_e sound_type);
-
-void setting_sound_stop_sound(void *data);
-void setting_sound_key_grab(SettingSoundData *ad);
-void setting_sound_key_ungrab(SettingSoundData *ad);
-char *setting_media_basename(char *path);
-void setting_sound_create_warning_popup_during_call(void *data);
-char *setting_sound_get_slider_icon(int type, int volume);
-void setting_sound_update_slider_icon(Setting_GenGroupItem_Data *item_data,
-               int type);
-Evas_Object *setting_sound_init(SettingSoundData *ad);
-void setting_sound_deinit(void *data);
-const char *setting_do_not_disturb_is_enable(void *data);
-const char *setting_notifiaction_on_lock_screen(void *data);
-void setting_sound_update_do_not_disturb_item(void *data);
-void setting_sound_update_notifiaction_on_lock_screen_item(void *data);
-
-#endif
index 93167302014c2344cc80cabfb09953ad149456ce..c79b3705eb33e833d97e6994853c36d3c7a943c5 100644 (file)
@@ -9,7 +9,7 @@ type = app
 profile = mobile-4.0
 
 # C/CPP Sources
-USER_SRCS = src/volume_popup.c src/setting-profile-sound-main.c src/setting-profile.c src/setting-profile-common.c 
+USER_SRCS = src/volume_popup.c src/setting-profile.c 
 
 # EDC Sources
 USER_EDCS =  
@@ -18,7 +18,7 @@ USER_EDCS =
 USER_POS = 
 
 # User Defines
-USER_DEFS = TIZEN_DEPRECATION DEPRECATION_WARNING _TZ_SYS_GLOBALUSER_DATA=TZ_SYS_GLOBALUSER_DATA TZ_SYS_GLOBALUSER_DATA=\"/opt/usr/data\" _TZ_SYS_RO_APP=TZ_SYS_RO_APP _TZ_SYS_MEDIA=TZ_SYS_MEDIA TZ_SYS_RO_APP=\"/usr/apps\" TZ_SYS_MEDIA=\"/opt/media\" 
+USER_DEFS = TIZEN_DEPRECATION DEPRECATION_WARNING _TZ_SYS_GLOBALUSER_DATA=TZ_SYS_GLOBALUSER_DATA "TZ_SYS_GLOBALUSER_DATA=\"/opt/usr/data\" _TZ_SYS_RO_APP=TZ_SYS_RO_APP _TZ_SYS_MEDIA=TZ_SYS_MEDIA "TZ_SYS_RO_APP=\"/usr/apps\" "TZ_SYS_MEDIA=\"/opt/media\" 
 USER_CPP_DEFS = 
 
 # User Undefines
diff --git a/setting-profile/src/setting-profile-common.c b/setting-profile/src/setting-profile-common.c
deleted file mode 100755 (executable)
index a1fc68a..0000000
+++ /dev/null
@@ -1,1336 +0,0 @@
-/*
- * setting
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd.
- *
- * Contact: MyoungJune Park <mj2004.park@samsung.com>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-#include "setting-profile.h"
-#include <sys/stat.h>
-#include <dirent.h>
-#include <app_manager.h>
-#include <metadata_extractor.h>
-#include <player.h>
-
-#define SETTING_DEFAULT_FOLDER_PATH    _TZ_SYS_GLOBALUSER_DATA"/settings/"
-#define SDCARD_PATH    _TZ_SYS_MEDIA"/sdcard/"
-#define EXP 0.001
-
-typedef struct _SliderIcons {
-       int index;
-       char mute[256];
-       char volume[256];
-} SliderIcons;
-
-SliderIcons slider_icons[SND_SLIDER_MAX] = {
-       {SND_SLIDER_CALL,       ICON_CALL_MUTE,         ICON_CALL_NORMAL},
-       {SND_SLIDER_NOTI,       ICON_NOTI_MUTE,         ICON_NOTI_NORMAL},
-       {SND_SLIDER_MEDIA,      ICON_MEDIA_MUTE,        ICON_MEDIA_NORMAL},
-       {SND_SLIDER_SYSTEM,     ICON_SYSTEM_MUTE,       ICON_SYSTEM_NORMAL}
-};
-
-static void __mm_player_prepared_cb(void *user_data);
-static void __sound_stream_focus_state_changed_cb(
-               sound_stream_info_h stream_info,
-               sound_stream_focus_mask_e focus_mask,
-               sound_stream_focus_state_e focus_state,
-               sound_stream_focus_change_reason_e reason,
-               int sound_behavior,
-               const char *extra_info,
-               void *user_data);
-static Eina_Bool __volume_key_down_cb(void *data, int type, void *event);
-static Eina_Bool __volume_key_up_cb(void *data, int type, void *event);
-static Evas_Object *__sound_slider_icon_get(void *data, Evas_Object *obj,
-               const char *part);
-static int __listen_vconf_change(void *data);
-static int __unlisten_vconf_change(void *data);
-static void __calling_popup_cb(void *data, Evas_Object *obj, void *event_info);
-
-void setting_sound_update_do_not_disturb_item(void *data)
-{
-       SettingSoundData *ad = (SettingSoundData *) data;
-       const char *sub_desc = NULL;
-
-       if (!ad || !ad->data_do_not_disturb)
-               return;
-
-       sub_desc = setting_do_not_disturb_is_enable(data);
-       g_free(ad->data_do_not_disturb->sub_desc);
-       ad->data_do_not_disturb->sub_desc = g_strdup(sub_desc);
-       elm_genlist_item_update(ad->data_do_not_disturb->item);
-}
-
-void setting_sound_update_notifiaction_on_lock_screen_item(void *data)
-{
-       SettingSoundData *ad = (SettingSoundData *) data;
-       const char *sub_desc = NULL;
-
-       if (!ad || !ad->data_notifiaction_on_lock_screen)
-               return;
-
-       sub_desc = setting_notifiaction_on_lock_screen(data);
-       g_free(ad->data_notifiaction_on_lock_screen->sub_desc);
-       ad->data_notifiaction_on_lock_screen->sub_desc = g_strdup(sub_desc);
-       elm_genlist_item_update(ad->data_notifiaction_on_lock_screen->item);
-}
-
-char *setting_sound_get_slider_icon(int type, int volume)
-{
-       if (type < SND_SLIDER_CALL || type >= SND_SLIDER_MAX)
-               return NULL;
-
-       SETTING_TRACE("type : %d, volume : %d", type, volume);
-       /* 1.Call ringtone and notification have 3 icon status */
-       if (SND_SLIDER_CALL == type || SND_SLIDER_NOTI == type) {
-               /*special process */
-               int sound = 0;
-               int vibration = 0;
-               vconf_get_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, &sound);
-               vconf_get_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
-                               &vibration);
-
-               if (sound && !vibration) {
-                       return (SND_SLIDER_CALL == type ?
-                                       ICON_CALL_NORMAL : ICON_NOTI_NORMAL);
-               }
-
-               if (vibration && !sound) {
-                       return (SND_SLIDER_CALL == type ? ICON_CALL_VIB : ICON_NOTI_VIB);
-               }
-
-               if (!vibration && !sound) {
-                       return (SND_SLIDER_CALL == type ? ICON_CALL_MUTE : ICON_NOTI_MUTE);
-               }
-
-               return (SND_SLIDER_CALL == type ?
-                               ICON_CALL_NORMAL : ICON_NOTI_NORMAL);
-       }
-
-       /* 2.Other types, just have two icon status */
-       if (volume > 0)
-               return slider_icons[type].volume;
-       else
-               return slider_icons[type].mute;
-}
-
-void setting_sound_update_slider_icon(Setting_GenGroupItem_Data *item_data,
-               int type)
-{
-       SETTING_TRACE_BEGIN;
-       ret_if(!item_data || !item_data->eo_check);
-
-       Evas_Object *icon = elm_object_content_get(item_data->eo_check);
-       if (icon) {
-               char *new_file = setting_sound_get_slider_icon(type,
-                               item_data->chk_status);
-               elm_image_file_set(icon, new_file, NULL);
-       }
-}
-
-char *setting_media_basename(char *path)
-{
-       metadata_extractor_h metadata = NULL;
-       char *title = NULL;
-       int ret = METADATA_EXTRACTOR_ERROR_NONE;
-
-       if (NULL == path || '\0' == path[0])
-               return strdup(_("IDS_ST_BODY_PHONEPROFILES_SILENT"));
-
-       ret = metadata_extractor_create(&metadata);
-       if (ret == METADATA_EXTRACTOR_ERROR_NONE && metadata) {
-               ret = metadata_extractor_set_path(metadata, path);
-
-               if (ret == METADATA_EXTRACTOR_ERROR_NONE) {
-                       ret = metadata_extractor_get_metadata(metadata,
-                                       METADATA_TITLE, &title);
-                       if (title) {
-                               char *strdup_title = strdup(title);
-                               metadata_extractor_destroy(metadata);
-                               free(title);
-                               return strdup_title;
-                       }
-               }
-
-               metadata_extractor_destroy(metadata);
-       }
-
-       return setting_file_basename(path);
-}
-
-/* ***************************************************
- *
- *general func
- *
- ***************************************************/
-int setting_sound_check_file_exist(void *data, const char *file_path)
-{
-       retv_if(data == NULL, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
-       retv_if(file_path == NULL, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
-
-       if (0 == safeStrNCmp(file_path,
-                       SETTING_DEFAULT_FOLDER_PATH,
-                       safeStrLen(SETTING_DEFAULT_FOLDER_PATH))) {
-               SETTING_TRACE("Default file[%s]!", file_path);
-               return SETTING_RETURN_SUCCESS;
-       }
-
-       if (!ecore_file_exists(file_path)) {
-               if (safeStrCmp(file_path, "Silent") == 0) {
-                       SETTING_TRACE("%s", file_path);
-                       return SETTING_RETURN_SUCCESS;
-               }
-               SETTING_TRACE_ERROR(
-                               "Cannot find the ringtone file[%s]!",
-                               file_path);
-               if (0 == safeStrNCmp(
-                               file_path, SDCARD_PATH,
-                               safeStrLen(SDCARD_PATH))) {
-                       char *strdup_file_path = strdup(file_path);
-                       /*sdcard file*/
-                       int ret = vconf_set_str(
-                                       VCONFKEY_SETAPPL_CALL_VIBRATION_PATTERN_STR,
-                                       strdup_file_path);
-                       if (ret < 0)
-                               SETTING_TRACE_DEBUG("failed to set vconf");
-
-                       FREE(strdup_file_path);
-               }
-               return SETTING_RETURN_FAIL;
-       }
-
-       int mmc_status = VCONFKEY_SYSMAN_MMC_REMOVED;
-       vconf_get_int(VCONFKEY_SYSMAN_MMC_STATUS, &mmc_status);
-       if (VCONFKEY_SYSMAN_MMC_MOUNTED != mmc_status) {
-               if (!safeStrNCmp(
-                               SETTING_PROFILE_MMC_PATH,
-                               file_path,
-                               safeStrLen(SETTING_PROFILE_MMC_PATH))) {
-                       return SETTING_RETURN_FAIL;
-               }
-       }
-       return SETTING_RETURN_SUCCESS;
-}
-
-bool setting_sound_play_sound(
-               void *data,
-               void *cb,
-               char *ringtone_file,
-               int vol,
-               sound_type_e sound_type)
-{
-       int err = 0;
-       sound_stream_focus_state_e ssfs = SOUND_STREAM_FOCUS_STATE_ACQUIRED;
-       player_state_e state = PLAYER_STATE_NONE;
-       /* error check */
-       retv_if(data == NULL, NULL);
-       SettingSoundData *ad = (SettingSoundData *) data;
-       sound_stream_info_h sound_stream_info_to_set = NULL;
-
-       int is_existing = setting_sound_check_file_exist(ad, ringtone_file);
-
-       if (is_existing == SETTING_RETURN_FAIL || NULL == ringtone_file) {
-               switch (sound_type) {
-               case SOUND_TYPE_RINGTONE:
-                               ad->song_playing = (char *)g_strdup(
-                               _TZ_SYS_GLOBALUSER_DATA"/settings/Ringtones/ringtone_sdk.mp3");
-                       sound_stream_info_to_set =
-                                       ad->ringtone_sound_stream_info;
-                       break;
-               case SOUND_TYPE_MEDIA:
-                       if (isEmulBin())
-                               ad->song_playing = (char *)g_strdup(
-                                               SETTING_DEFAULT_CALL_TONE_SDK);
-                       else
-                               ad->song_playing = (char *)g_strdup(
-                               _TZ_SYS_GLOBALUSER_DATA"/settings/Ringtones/ringtone_sdk.mp3");
-                       sound_stream_info_to_set = ad->media_sound_stream_info;
-                       break;
-               case SOUND_TYPE_NOTIFICATION:
-                       ad->song_playing = (char *)g_strdup(
-                                       SETTING_DEFAULT_MSG_TONE);
-                       sound_stream_info_to_set = ad->noti_sound_stream_info;
-                       break;
-               default:
-                       return false;
-                       break;
-               }
-
-       } else {
-               if (safeStrCmp(ringtone_file, "Silent") == 0)
-                       return false;
-
-               switch (sound_type) {
-               case SOUND_TYPE_RINGTONE:
-                       sound_stream_info_to_set =
-                                       ad->ringtone_sound_stream_info;
-                       break;
-               case SOUND_TYPE_MEDIA:
-                       sound_stream_info_to_set = ad->media_sound_stream_info;
-                       break;
-               case SOUND_TYPE_NOTIFICATION:
-                       sound_stream_info_to_set = ad->noti_sound_stream_info;
-                       break;
-               default:
-                       return false;
-                       break;
-               }
-               ad->song_playing = (char *)g_strdup(ringtone_file);
-       }
-
-       player_get_state(ad->mp_player, &state);
-       if (state != PLAYER_STATE_IDLE) {
-               if (err != player_unprepare(ad->mp_player)) {
-                       SETTING_TRACE_ERROR("player_unprepare() failed: [%s]",
-                                       get_error_message(err));
-                       player_unprepare(ad->mp_player);
-                       return false;
-
-               }
-       }
-
-       if (sound_type != SOUND_TYPE_NOTIFICATION) {
-               sound_manager_get_focus_state(sound_stream_info_to_set, &ssfs,
-                               NULL);
-               if (ssfs == SOUND_STREAM_FOCUS_STATE_RELEASED) {
-                       err = sound_manager_acquire_focus(
-                                       sound_stream_info_to_set,
-                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
-                                       SOUND_BEHAVIOR_NONE, NULL);
-                       if (err != SOUND_MANAGER_ERROR_NONE) {
-                               SETTING_TRACE_ERROR(
-                                               "Could not acquire focus: [%s]",
-                                               get_error_message(err));
-                               player_unprepare(ad->mp_player);
-                               return false;
-                       }
-               }
-       }
-
-       player_get_state(ad->mp_player, &state);
-       if (state != PLAYER_STATE_IDLE)
-               player_unprepare(ad->mp_player);
-
-       err = player_set_sound_stream_info(ad->mp_player, sound_stream_info_to_set);
-       if (err != PLAYER_ERROR_NONE) {
-               SETTING_TRACE_ERROR("error to set audio policy [%s]",
-                               get_error_message(err));
-               if (sound_type != SOUND_TYPE_NOTIFICATION)
-                       sound_manager_release_focus(sound_stream_info_to_set,
-                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
-                                       SOUND_BEHAVIOR_NONE, NULL);
-               player_unprepare(ad->mp_player);
-               return false;
-       }
-
-       err = player_set_uri(ad->mp_player, ad->song_playing);
-       if (err != PLAYER_ERROR_NONE) {
-               SETTING_TRACE_ERROR("error to set attribute---profile_uri[%s]",
-                               get_error_message(err));
-               if (sound_type != SOUND_TYPE_NOTIFICATION)
-                       sound_manager_release_focus(sound_stream_info_to_set,
-                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
-                                       SOUND_BEHAVIOR_NONE, NULL);
-               player_unprepare(ad->mp_player);
-               return false;
-       }
-
-#if SUPPORT_PLAYER_ASYNC
-       err = player_prepare_async(ad->mp_player, __mm_player_prepared_cb, ad);
-       if (err != PLAYER_ERROR_NONE) {
-               SETTING_TRACE_ERROR("realizing the player handle failed[%s]",
-                               get_error_message(err));
-               if (sound_type != SOUND_TYPE_NOTIFICATION)
-                       sound_manager_release_focus(sound_stream_info_to_set,
-                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
-                                       SOUND_BEHAVIOR_NONE, NULL);
-               player_unprepare(ad->mp_player);
-               return false;
-       }
-       ad->mp_prepare_async = ad->mp_player;
-       SETTING_TRACE("waiting..player (%x)", ad->mp_prepare_async);
-#else
-       err = player_prepare(ad->mp_player);
-       if (err != PLAYER_ERROR_NONE) {
-               SETTING_TRACE_ERROR("player_prepare() error %d", err);
-               if (sound_type != SOUND_TYPE_NOTIFICATION)
-                       sound_manager_release_focus(sound_stream_info_to_set,
-                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
-                                       SOUND_BEHAVIOR_NONE, NULL);
-               player_unprepare(ad->mp_player);
-               return false;
-       }
-
-       state = PLAYER_STATE_NONE;
-       err = player_get_state(ad->mp_player, &state);
-       SETTING_TRACE("state:%d", state);
-       if (state != PLAYER_STATE_READY) {
-               SETTING_TRACE_ERROR("state of player is invalid %d", err);
-               if (sound_type != SOUND_TYPE_NOTIFICATION)
-                       sound_manager_release_focus(sound_stream_info_to_set,
-                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
-                                       SOUND_BEHAVIOR_NONE, NULL);
-               player_unprepare(ad->mp_player);
-               return false;
-       }
-
-       player_set_completed_cb(ad->mp_player, __mm_player_msg_cb, ad);
-
-       err = player_start(ad->mp_player);
-       if (err != PLAYER_ERROR_NONE) {
-               /* if directly return error.. */
-               SETTING_TRACE_ERROR("player_start [%s]",
-                               get_error_message(err));
-               player_unset_completed_cb(ad->mp_player);
-               if (sound_type != SOUND_TYPE_NOTIFICATION)
-                       sound_manager_release_focus(sound_stream_info_to_set,
-                                       SOUND_STREAM_FOCUS_FOR_PLAYBACK,
-                                       SOUND_BEHAVIOR_NONE, NULL);
-               player_unprepare(ad->mp_player);
-               return false;
-       }
-#endif
-
-       return true;
-}
-
-void setting_sound_play_sound_origin(void *data, void *cb, char *ringtone_file,
-               float vol, sound_type_e sound_type)
-{
-       SETTING_TRACE_BEGIN;
-       int vconf_value = 0;
-       SettingSoundData *ad = (SettingSoundData *) data;
-
-       ret_if(!ad);
-
-       if (vol < EXP) {
-               SETTING_TRACE_DEBUG("vol < EXP");
-               setting_sound_stop_sound(ad);
-               return;
-       }
-
-       vconf_get_bool(VCONFKEY_SETAPPL_ACCESSIBILITY_TURN_OFF_ALL_SOUNDS,
-                       &vconf_value);
-
-       if (vconf_value == TRUE)
-               return;
-
-       setting_sound_play_sound(ad, cb, ringtone_file, vol, sound_type);
-       SETTING_TRACE("play sound type %d", sound_type);
-}
-
-void setting_sound_stop_sound(void *data)
-{
-       SETTING_TRACE_BEGIN;
-       SettingSoundData *ad = (SettingSoundData *)data;
-       sound_stream_focus_state_e ssfs = SOUND_STREAM_FOCUS_STATE_ACQUIRED;
-       player_state_e player_state = PLAYER_STATE_NONE;
-
-       if (ad->song_playing) {
-               g_free(ad->song_playing);
-               ad->song_playing = NULL;
-       }
-
-       player_unset_completed_cb(ad->mp_player);
-
-       sound_manager_get_focus_state(ad->ringtone_sound_stream_info, &ssfs, NULL);
-       if (ssfs == SOUND_STREAM_FOCUS_STATE_ACQUIRED)
-               sound_manager_release_focus(ad->ringtone_sound_stream_info,
-                               SOUND_STREAM_FOCUS_FOR_PLAYBACK,
-                               SOUND_BEHAVIOR_NONE, NULL);
-
-       sound_manager_get_focus_state(ad->media_sound_stream_info, &ssfs, NULL);
-       if (ssfs == SOUND_STREAM_FOCUS_STATE_ACQUIRED)
-               sound_manager_release_focus(ad->media_sound_stream_info,
-                               SOUND_STREAM_FOCUS_FOR_PLAYBACK,
-                               SOUND_BEHAVIOR_NONE, NULL);
-
-       player_get_state(ad->mp_player, &player_state);
-
-       if (player_state != PLAYER_STATE_IDLE)
-               if (player_unprepare(ad->mp_player) != PLAYER_ERROR_NONE)
-                       SETTING_TRACE_ERROR("player unrealize failed");
-}
-
-void setting_sound_key_grab(SettingSoundData *ad)
-{
-       SETTING_TRACE_BEGIN;
-
-       /* To prevent conflict with volume app */
-       vconf_set_int(VCONFKEY_STARTER_USE_VOLUME_KEY, 2);
-
-       if (0 != safeStrCmp(ad->viewtype, VOLUME_APP_NAME))
-               return;
-
-       if (!ad->keydown_handler)
-               ad->keydown_handler = ecore_event_handler_add(
-                               ECORE_EVENT_KEY_DOWN, __volume_key_down_cb, ad);
-       if (!ad->keydown_handler)
-               SETTING_TRACE_DEBUG("ecore_event_handler_add() failed");
-
-       if (!ad->keyup_handler)
-               ad->keyup_handler = ecore_event_handler_add(
-                               ECORE_EVENT_KEY_UP, __volume_key_up_cb, ad);
-       if (!ad->keyup_handler)
-               SETTING_TRACE_DEBUG("ecore_event_handler_add() failed");
-}
-
-void setting_sound_key_ungrab(SettingSoundData *ad)
-{
-       SETTING_TRACE_BEGIN;
-
-       /* To prevent conflict with volume app */
-       vconf_set_int(VCONFKEY_STARTER_USE_VOLUME_KEY, 0);
-
-       ecore_timer_del(ad->updown_timer);
-       ad->updown_timer = NULL;
-
-       ecore_event_handler_del(ad->keydown_handler);
-       ad->keydown_handler = NULL;
-
-       ecore_event_handler_del(ad->keyup_handler);
-       ad->keyup_handler = NULL;
-}
-
-Evas_Object *setting_sound_init(SettingSoundData *ad)
-{
-       SETTING_TRACE_BEGIN;
-       int err = 0;
-
-       bindtextdomain(SETTING_PACKAGE, SETTING_LOCALEDIR);
-
-       setting_create_Gendial_itc(SETTING_GENLIST_LEFT_ICON_CONTENT_ICON_STYLE,
-                       &(ad->itc_layout));
-
-       ad->itc_layout.func.content_get = __sound_slider_icon_get;
-
-       setting_create_Gendial_itc("full", &(ad->itc_layout_1icon));
-
-       ad->itc_layout_1icon.func.content_get = __sound_slider_icon_get;
-
-       /* register view node table */
-       setting_view_node_table_intialize();
-       setting_view_node_table_register(&setting_view_sound_main, NULL);
-
-       err = player_create(&ad->mp_player);
-       if (PLAYER_ERROR_NONE != err) {
-               SETTING_TRACE_ERROR("Cannot create ringtone player %s",
-                               get_error_message(err));
-               return NULL;
-       }
-
-       if (
-               (sound_manager_create_stream_information(
-                               SOUND_STREAM_TYPE_RINGTONE_VOIP,
-                               __sound_stream_focus_state_changed_cb, ad,
-                               &ad->ringtone_sound_stream_info)
-                       != SOUND_MANAGER_ERROR_NONE) ||
-               (sound_manager_create_stream_information(
-                               SOUND_STREAM_TYPE_MEDIA,
-                               __sound_stream_focus_state_changed_cb, ad,
-                               &ad->media_sound_stream_info)
-                       != SOUND_MANAGER_ERROR_NONE) ||
-               (sound_manager_create_stream_information(
-                               SOUND_STREAM_TYPE_NOTIFICATION,
-                               __sound_stream_focus_state_changed_cb, ad,
-                               &ad->noti_sound_stream_info)
-                       != SOUND_MANAGER_ERROR_NONE)
-       ) {
-               SETTING_TRACE_ERROR("Cannot create stream information ");
-               return NULL;
-       }
-       /* creating a view. */
-       setting_view_node_set_cur_view(&setting_view_sound_main);
-       setting_view_create(&setting_view_sound_main, (void *)ad);
-
-       err = feedback_initialize();
-       SETTING_TRACE_DEBUG("Feedback init: %s", get_error_message(err));
-
-       __listen_vconf_change(ad);
-
-       return ad->md.naviframe;
-}
-
-void setting_sound_deinit(void *data)
-{
-       SETTING_TRACE_BEGIN;
-       ret_if(data == NULL);
-       SettingSoundData *ad = data;
-
-       __unlisten_vconf_change(ad);
-       feedback_deinitialize();
-       setting_sound_stop_sound(ad);
-
-       evas_object_del(ad->calling_popup);
-       ad->calling_popup = NULL;
-
-       setting_sound_key_ungrab(ad);
-
-       FREE(ad->viewtype);
-
-       sound_manager_destroy_stream_information(
-                       ad->ringtone_sound_stream_info);
-       sound_manager_destroy_stream_information(ad->media_sound_stream_info);
-       sound_manager_destroy_stream_information(ad->noti_sound_stream_info);
-
-       ad->ringtone_sound_stream_info = ad->media_sound_stream_info =
-       ad->noti_sound_stream_info = NULL;
-
-       player_destroy(ad->mp_player);
-       ad->mp_player = NULL;
-
-       /* it is the view manage strategy to invoke view's destory operation */
-       setting_view_destroy(&setting_view_sound_main, ad);
-
-       SETTING_TRACE_END;
-}
-
-/* Show guide popup, when drag or tap slider if during call.
-       Do not provide pre-listening. */
-void setting_sound_create_warning_popup_during_call(void *data)
-{
-       ret_if(data == NULL);
-       SettingSoundData *ad = (SettingSoundData *)data;
-
-       cm_call_status_e call_status = CM_CALL_STATUS_IDLE;
-       cm_client_h cm_handle = NULL;
-       cm_init(&cm_handle);
-       cm_get_call_status(cm_handle, &call_status);
-       cm_deinit(cm_handle);
-       if (CM_CALL_STATUS_IDLE != call_status) {
-               SETTING_TRACE("Call status is not OFF (%d)", call_status);
-               if (!ad->calling_popup) {
-                       ad->calling_popup = setting_create_popup(
-                                       ad,
-                                       ad->md.window,
-                                       "IDS_ST_HEADER_UNABLE_TO_PLAY_SAMPLE_ABB",
-                                       "IDS_ST_POP_SAMPLES_CANNOT_BE_PLAYED_DURING_CALLS",
-                                       __calling_popup_cb,
-                                       0,
-                                       false,
-                                       false,
-                                       1,
-                                       "IDS_ST_BUTTON_OK");
-               }
-       }
-}
-
-/* ------------------------------------------------------------------------- */
-/* |           | elm.swallow.icon.0 | elm.text | elm.swallow.icon.1 |     | */
-/* | elm.swallow.icon |----------------------------------| elm.swallow.end | */
-/* |             |     elm.text.sub      | elm.text.sub.end   |           | */
-/* ------------------------------------------------------------------------- */
-static Evas_Object *__sound_slider_icon_get(void *data, Evas_Object *obj,
-               const char *part)
-{
-       SETTING_TRACE_BEGIN;
-       retv_if(data == NULL, NULL);
-
-       SETTING_TRACE(" -----------------> EDC part [%s]", part);
-       if (safeStrCmp(part, "elm.swallow.content"))
-               return NULL;
-
-       Evas_Object *layout;
-       /* Set custom layout style */
-       layout = elm_layout_add(obj);
-
-       Setting_GenGroupItem_Data *item_data =
-                       (Setting_GenGroupItem_Data *)data;
-       Evas_Object *slider = setting_create_slider(obj, item_data);
-
-       if (slider == NULL)
-               return NULL;
-
-       elm_layout_file_set(layout, EDJDIR"/setting-theme.edj",
-                                               "gl_custom_item");
-       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND,
-                       EVAS_HINT_EXPAND);
-
-       if (0 == safeStrCmp(item_data->keyStr, "IDS_ST_BODY_MEDIA")) {
-               elm_object_style_set(slider, "warning");
-
-               Edje_Message_Float_Set *msg =
-                               alloca(sizeof(Edje_Message_Float_Set)
-                                               + (sizeof(double)));
-               msg->count = 1;
-               /* Warning area point has to be calculated considering rounding
-                * off. For example, value 10's area will be 9.5~10.4.
-                * So, if warning area has to be started at 10, we need to
-                * calculate the start point with 9.5.
-                * Warning start point = (Warning min value - 0.5) /
-                *                              (Max_Value - Min_Value) */
-               msg->val[0] = 0.633333;
-               edje_object_message_send(
-                               elm_layout_edje_get(slider), EDJE_MESSAGE_FLOAT_SET, 0, msg);
-               elm_slider_indicator_format_set(slider, "%1.0f");
-               elm_slider_indicator_show_set(slider, 1);
-       }
-
-       item_data->eo_check = slider;
-
-       evas_object_pass_events_set(slider, EINA_TRUE);
-       evas_object_propagate_events_set(slider, EINA_FALSE);
-
-       if (item_data->userdata == NULL)
-               return NULL;
-
-       if (item_data->keyStr)
-               elm_object_part_text_set(layout, "elm.text", _(item_data->keyStr));
-
-       elm_object_part_content_set(layout, "elm.swallow.content", slider);
-       return layout;
-}
-
-static void __enable_sound_menu(void *data)
-{
-       SETTING_TRACE_BEGIN;
-       ret_if(!data);
-       SettingSoundData *ad = data;
-       ad->sound_on = TRUE;
-       Setting_GenGroupItem_Data *item_to_update = NULL;
-
-
-       /*1.Enable "Vibrate when ringing" */
-       if (ad->data_sound_when_ring) {
-               item_to_update = ad->data_sound_when_ring;
-               elm_object_item_disabled_set(item_to_update->item, EINA_FALSE);
-       }
-
-       if (ad->data_call_volume) {
-               elm_object_item_disabled_set(ad->data_call_volume->item,
-                               EINA_FALSE);
-               elm_object_disabled_set(ad->data_call_volume->eo_check,
-                               EINA_FALSE);
-       }
-
-       /*2.Enable "Notification", via Sound Manager */
-       item_to_update = ad->data_noti_volume;
-
-       /* @todo make sure data_msg_alert_tone is correct for 'Silent' set.
-       if (item_to_update && safeStrCmp(item_to_update->sub_desc, "Silent"))*/
-       if ((ad->data_msg_alert_tone &&
-               safeStrCmp(ad->data_msg_alert_tone->sub_desc, "Silent")) ||
-               (!safeStrCmp(ad->viewtype, VOLUME_APP_NAME))
-               ) {
-               /* Enable */
-               if (item_to_update
-                               && item_to_update->item
-                               && item_to_update->eo_check) {
-                       int mm_value = 0;
-                       int ret =  sound_manager_get_volume(
-                                       SOUND_TYPE_NOTIFICATION, &mm_value);
-                       SETTING_TRACE("ret:%d", ret);
-                       item_to_update->chk_status = mm_value;
-                       elm_slider_value_set(
-                                       item_to_update->eo_check,
-                                       item_to_update->chk_status);
-                       elm_object_item_disabled_set(item_to_update->item,
-                                       EINA_FALSE);
-                       elm_object_disabled_set(item_to_update->eo_check,
-                                       EINA_FALSE);
-
-                       setting_sound_update_slider_icon(
-                                       item_to_update, SND_SLIDER_NOTI);
-               }
-       }
-
-       /*3.Enable "System", via Sound Manager */
-       item_to_update = ad->data_touch_volume;
-       if (item_to_update && item_to_update->item
-                       && item_to_update->eo_check) {
-               int mm_value = 0;
-               int ret =  sound_manager_get_volume(
-                               SOUND_TYPE_SYSTEM, &mm_value);
-               SETTING_TRACE("ret:%d", ret);
-               item_to_update->chk_status = mm_value;
-               elm_slider_value_set(
-                               item_to_update->eo_check,
-                               item_to_update->chk_status);
-               elm_object_item_disabled_set(
-                               item_to_update->item, EINA_FALSE);
-               elm_object_disabled_set(item_to_update->eo_check, EINA_FALSE);
-
-               setting_sound_update_slider_icon(
-                               item_to_update, SND_SLIDER_SYSTEM);
-       }
-
-
-       /*4.Enable "Call ringtone", via "Backuped" value */
-       item_to_update = ad->data_call_volume;
-       if (item_to_update && item_to_update->eo_check) {
-               SETTING_TRACE("....ad->is_ringtone_slidering:%d, "
-                               "ad->data_call_volume->chk_status:%d",
-                               ad->is_ringtone_slidering,
-                               item_to_update->chk_status);
-               /* do need to restore from BACKUP VOLUME */
-               if (ad->is_ringtone_slidering) return;
-
-               int mm_value = 0;
-               sound_manager_get_volume(SOUND_TYPE_RINGTONE, &mm_value);
-               if (mm_value <= 0) mm_value = 1;
-               sound_manager_set_volume(SOUND_TYPE_RINGTONE, mm_value);
-               item_to_update->chk_status = mm_value;
-               elm_slider_value_set(
-                               item_to_update->eo_check,
-                               item_to_update->chk_status);
-               SETTING_TRACE("ad->data_call_volume->chk_status : %d",
-                               item_to_update->chk_status);
-       }
-}
-
-static void __disable_sound_menu(void *data)
-{
-       SETTING_TRACE_BEGIN;
-       ret_if(!data);
-       SettingSoundData *ad = data;
-       ad->sound_on = FALSE;
-       Setting_GenGroupItem_Data *item_to_update = NULL;
-
-       setting_sound_stop_sound(ad);
-
-       /*1.Disable      "Vibrate when ringing" */
-       item_to_update = ad->data_sound_when_ring;
-       if (item_to_update)
-               elm_object_item_disabled_set(item_to_update->item, EINA_TRUE);
-
-       /* Disable Call Volume slider if Silent ringtone is selected */
-       if (ad->data_call_alert_tone && !safeStrCmp(
-                       ad->data_call_alert_tone->sub_desc, "Silent")) {
-               elm_object_item_disabled_set(ad->data_call_volume->item,
-                               EINA_TRUE);
-               elm_object_disabled_set(ad->data_call_volume->eo_check,
-                               EINA_TRUE);
-       }
-
-       /*2.Disable "Notification" */
-       item_to_update = ad->data_noti_volume;
-       if (item_to_update && item_to_update->item
-                       && item_to_update->eo_check) {
-               item_to_update->chk_status = 0;
-               elm_slider_value_set(item_to_update->eo_check,
-                               item_to_update->chk_status);
-               elm_object_item_disabled_set(item_to_update->item, EINA_TRUE);
-               elm_object_disabled_set(item_to_update->eo_check, EINA_TRUE);
-
-               /* Change notification slider's icon as mute style */
-               setting_sound_update_slider_icon(item_to_update,
-                               SND_SLIDER_NOTI);
-       }
-
-       /*3.Disable "System" */
-       item_to_update = ad->data_touch_volume;
-       if (item_to_update && item_to_update->item
-                       && item_to_update->eo_check) {
-               item_to_update->chk_status = 0;
-               elm_slider_value_set(item_to_update->eo_check,
-                               item_to_update->chk_status);
-               elm_object_item_disabled_set(item_to_update->item, EINA_TRUE);
-               elm_object_disabled_set(item_to_update->eo_check, EINA_TRUE);
-
-               /* Change system slider's icon as mute style */
-               setting_sound_update_slider_icon(item_to_update,
-                               SND_SLIDER_SYSTEM);
-       }
-
-       /*4.Disable "Call ringtone" */
-       item_to_update = ad->data_call_volume;
-       if (item_to_update && item_to_update->eo_check) {
-               /*DO NOT CHANGE Backup Values(
-                * VCONFKEY_SETAPPL_RINGTONE_BACKUP_VOLUME) */
-               item_to_update->chk_status = 0;
-               elm_slider_value_set(item_to_update->eo_check,
-                               item_to_update->chk_status);
-               SETTING_TRACE("item_to_update->chk_status : %d",
-                               item_to_update->chk_status);
-       }
-
-}
-
-static void __sound_vconf_change_cb(keynode_t *key, void *data)
-{
-       SETTING_TRACE_BEGIN;
-       ret_if(data == NULL);
-       SettingSoundData *ad = data;
-       int status = 0;
-       int ret = 0;
-       char *vconf_name = vconf_keynode_get_name(key);
-       Setting_GenGroupItem_Data *item_to_update = NULL;
-
-       if (!safeStrCmp(vconf_name, VCONFKEY_SYSMAN_MMC_STATUS)) {
-               status = vconf_keynode_get_int(key);
-               SETTING_TRACE("status:%d", status);
-               if (VCONFKEY_SYSMAN_MMC_MOUNTED != status) {
-                       /* when remove mmc card, change default tone */
-                       char *call_tone = vconf_get_str(
-                                       VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR);
-                       if (call_tone && !safeStrNCmp(
-                                       SETTING_PROFILE_MMC_PATH,
-                                       call_tone,
-                                       safeStrLen(SETTING_PROFILE_MMC_PATH))) {
-                                       ret = vconf_set_str(
-                                               VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR,
-                                               _TZ_SYS_GLOBALUSER_DATA"/settings/Ringtones/ringtone_sdk.mp3");
-                               if (ret < 0)
-                                       SETTING_TRACE_DEBUG(
-                                                       "failed to set vconf");
-                       }
-                       FREE(call_tone);
-
-                       SETTING_TRACE("song_playing:%s", ad->song_playing);
-
-                       if (!safeStrNCmp(SETTING_PROFILE_MMC_PATH,
-                                       ad->song_playing,
-                                       safeStrLen(SETTING_PROFILE_MMC_PATH))) {
-                               /*      close mm plaer */
-                               setting_sound_stop_sound(ad);
-                               /*      close vibration */
-                       }
-               }
-       } else if (!safeStrCmp(vconf_name,
-                       VCONFKEY_SETAPPL_SOUND_STATUS_BOOL)) {
-               status = vconf_keynode_get_bool(key);
-               SETTING_TRACE_DEBUG("sound status is changed. %d", status);
-               if (status)
-                       __enable_sound_menu(ad);
-               else
-                       __disable_sound_menu(ad);
-
-               setting_sound_update_slider_icon(ad->data_call_volume,
-                               SND_SLIDER_CALL);
-
-               if (ad->data_sound_when_ring)
-                       elm_object_item_disabled_set(ad->data_sound_when_ring->item,
-                                                                               !status);
-       } else if (!safeStrCmp(vconf_name,
-                       VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL)) {
-               status = vconf_keynode_get_bool(key);
-               SETTING_TRACE_DEBUG("vibration status is changed. %d", status);
-
-               setting_sound_update_slider_icon(ad->data_call_volume,
-                               SND_SLIDER_CALL);
-       } else if (!safeStrCmp(vconf_name,
-                       VCONFKEY_SETAPPL_VIBRATE_WHEN_RINGING_BOOL)) {
-               item_to_update = ad->data_sound_when_ring;
-               status = vconf_keynode_get_bool(key);
-               if (item_to_update && item_to_update->eo_check) {
-                       item_to_update->chk_status = status;
-                       elm_check_state_set(item_to_update->eo_check,
-                                       item_to_update->chk_status);
-               }
-       } else if (!safeStrCmp(vconf_name,
-                       VCONFKEY_SETAPPL_BUTTON_SOUNDS_BOOL)) {
-               item_to_update = ad->data_button_sounds;
-               status = vconf_keynode_get_bool(key);
-               if (item_to_update && item_to_update->eo_check) {
-                       item_to_update->chk_status = status;
-                       elm_check_state_set(item_to_update->eo_check,
-                                       item_to_update->chk_status);
-               }
-       } else if (!safeStrCmp(vconf_name,
-                       VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL)) {
-               item_to_update = ad->data_touch_sounds;
-               status = vconf_keynode_get_bool(key);
-               if (item_to_update && item_to_update->eo_check) {
-                       item_to_update->chk_status = status;
-                       elm_check_state_set(item_to_update->eo_check,
-                                       item_to_update->chk_status);
-               }
-       } else if (!safeStrCmp(vconf_name, VCONFKEY_SETAPPL_SOUND_LOCK_BOOL)) {
-               item_to_update = ad->data_lock_sound;
-               status = vconf_keynode_get_bool(key);
-               if (item_to_update && item_to_update->eo_check) {
-                       item_to_update->chk_status = status;
-                       elm_check_state_set(item_to_update->eo_check,
-                                       item_to_update->chk_status);
-               }
-       }
-#if 0
-       else if (!safeStrCmp(vconf_name, VCONFKEY_ISE_KEYSOUND)) {
-               item_to_update = ad->data_keyboard_sound;
-               status = vconf_keynode_get_bool(key);
-               if (item_to_update && item_to_update->eo_check) {
-                       item_to_update->chk_status = status;
-                       elm_check_state_set(item_to_update->eo_check,
-                                       item_to_update->chk_status);
-               }
-       }
-#endif
-}
-
-static int __listen_vconf_change(void *data)
-{
-       retv_if(data == NULL, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
-
-       /*Ints */
-       (void)vconf_notify_key_changed(VCONFKEY_SYSMAN_MMC_STATUS,
-                       __sound_vconf_change_cb, data);
-
-       /*Bools */
-       (void)vconf_notify_key_changed(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
-                       __sound_vconf_change_cb, data);
-       (void)vconf_notify_key_changed(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
-                       __sound_vconf_change_cb, data);
-
-       (void)vconf_notify_key_changed(
-                       VCONFKEY_SETAPPL_VIBRATE_WHEN_RINGING_BOOL,
-                       __sound_vconf_change_cb, data);
-       (void)vconf_notify_key_changed(VCONFKEY_SETAPPL_BUTTON_SOUNDS_BOOL,
-                       __sound_vconf_change_cb, data);
-       (void)vconf_notify_key_changed(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL,
-                       __sound_vconf_change_cb, data);
-       (void)vconf_notify_key_changed(VCONFKEY_SETAPPL_SOUND_LOCK_BOOL,
-                       __sound_vconf_change_cb, data);
-
-       return 0;
-}
-
-static int __unlisten_vconf_change(void *data)
-{
-       /* unused listen */
-       /*Ints */
-       (void)vconf_ignore_key_changed(VCONFKEY_SYSMAN_MMC_STATUS,
-                       __sound_vconf_change_cb);
-
-       /*Bools */
-       (void)vconf_ignore_key_changed(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
-                       __sound_vconf_change_cb);
-       (void)vconf_ignore_key_changed(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
-                       __sound_vconf_change_cb);
-
-       (void)vconf_ignore_key_changed(
-                       VCONFKEY_SETAPPL_VIBRATE_WHEN_RINGING_BOOL,
-                       __sound_vconf_change_cb);
-       (void)vconf_ignore_key_changed(VCONFKEY_SETAPPL_BUTTON_SOUNDS_BOOL,
-                       __sound_vconf_change_cb);
-       (void)vconf_ignore_key_changed(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL,
-                       __sound_vconf_change_cb);
-       (void)vconf_ignore_key_changed(VCONFKEY_SETAPPL_SOUND_LOCK_BOOL,
-                       __sound_vconf_change_cb);
-
-       return 0;
-}
-
-static Eina_Bool __volume_up_timer_cb(void *data)
-{
-       SETTING_TRACE_BEGIN;
-       int volume = 0;
-       int volume_max = 0;
-       int ret = 0;
-       retv_if(!data, EINA_FALSE);
-       SettingSoundData *ad = (SettingSoundData *)data;
-
-       if (!ad->is_pressing) {
-               ad->updown_timer = NULL;
-               return EINA_FALSE;
-       }
-
-       ret =  sound_manager_get_volume(SOUND_TYPE_RINGTONE, &volume);
-       SETTING_TRACE("Getting volume: %s %d", get_error_message(ret), volume);
-       ret = sound_manager_get_max_volume(SOUND_TYPE_RINGTONE, &volume_max);
-       SETTING_TRACE("Getting max volume: %s %d", get_error_message(ret),
-                       volume_max);
-       if (volume < volume_max) {
-               sound_manager_set_volume(SOUND_TYPE_RINGTONE, ++volume);
-               if (ad->data_call_volume && ad->data_call_volume->eo_check) {
-                       ad->data_call_volume->chk_status = volume;
-                       elm_slider_value_set(ad->data_call_volume->eo_check,
-                                               volume);
-                       SETTING_TRACE("ad->data_call_volume->chk_status : %d",
-                                       ad->data_call_volume->chk_status);
-               }
-       }
-
-       return EINA_TRUE;
-}
-
-static Eina_Bool __volume_down_timer_cb(void *data)
-{
-       SETTING_TRACE_BEGIN;
-       int ret = 0;
-       int volume = 0;
-       retv_if(!data, EINA_FALSE);
-       SettingSoundData *ad = (SettingSoundData *)data;
-
-       if (!ad->is_pressing) {
-               ad->updown_timer = NULL;
-               return EINA_FALSE;
-       }
-
-       ret =  sound_manager_get_volume(SOUND_TYPE_RINGTONE, &volume);
-       SETTING_TRACE("Getting volume: %s %d", get_error_message(ret), volume);
-       if (volume > 0) {
-               sound_manager_set_volume(SOUND_TYPE_RINGTONE, --volume);
-               if (volume == 0) {
-                       /* change to Vibration mode */
-                       vconf_set_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
-                                       FALSE);
-                       vconf_set_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
-                                       TRUE);
-                       feedback_play_type(FEEDBACK_TYPE_VIBRATION,
-                                       FEEDBACK_PATTERN_VIBRATION_ON);
-               }
-               if (ad->data_call_volume
-                               && ad->data_call_volume->eo_check) {
-                       ad->data_call_volume->chk_status = volume;
-                       elm_slider_value_set(
-                                       ad->data_call_volume->eo_check,
-                                       volume);
-                       SETTING_TRACE("ad->data_call_volume->chk_status : %d",
-                                       ad->data_call_volume->chk_status);
-                       setting_sound_update_slider_icon(
-                                       ad->data_call_volume,
-                                       SND_SLIDER_CALL);
-               }
-       }
-       return EINA_TRUE;
-}
-
-
-static Eina_Bool __volume_key_up_cb(void *data, int type, void *event)
-{
-       SETTING_TRACE_BEGIN;
-       retv_if(!data || !event, EINA_TRUE);
-       SettingSoundData *ad = (SettingSoundData *)data;
-
-       Ecore_Event_Key *ev = event;
-       char *key = (char *)ev->key;
-       if (!key)
-               return EINA_TRUE;
-
-       if (!safeStrCmp(key, "XF86AudioRaiseVolume")
-                       || !safeStrCmp(key, "XF86AudioLowerVolume")) {
-               ad->is_pressing = FALSE;
-               if (ad->updown_timer) {
-                       ecore_timer_del(ad->updown_timer);
-                       ad->updown_timer = NULL;
-               }
-       }
-       return EINA_TRUE;
-}
-
-/*
- * S5 concept:
- * On the volume popup,
- *     1) if user controls the slider, don't play any sounds
- *     just change volume.
- *     2) if user controls the HW volume key for ringtone
- *     sound, the beep sound is supported
-
- * On Setting > Sound
- *     1) if user controls the slider, change volume &
- *     play sound
- *     2) if user controls the HW volume key, do nothing
- *     (DO NOT change volume,DO NOT play sound)
-*/
-static Eina_Bool __volume_key_down_cb(void *data, int type, void *event)
-{
-       int ret = 0;
-       int sound = 0;
-       char *key = NULL;
-       int volume = 0;
-       int volume_max = 0;
-       SettingSoundData *ad = (SettingSoundData *)data;
-       Ecore_Event_Key *ev = event;
-       SETTING_TRACE_BEGIN;
-       retv_if(!ad || !event, EINA_TRUE);
-
-       key = (char *)ev->key;
-       if (!key)
-               return EINA_TRUE;
-
-       ret =  sound_manager_get_volume(SOUND_TYPE_RINGTONE, &volume);
-       SETTING_TRACE("Getting volume: %s %d", get_error_message(ret), volume);
-       ret = sound_manager_get_max_volume(SOUND_TYPE_RINGTONE, &volume_max);
-       SETTING_TRACE("Getting max volume: %s %d", get_error_message(ret),
-                       volume_max);
-
-       vconf_get_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, &sound);
-
-       if (!safeStrCmp(key, "XF86AudioRaiseVolume")) {
-               SETTING_TRACE("Press KEY_VOLUMEUP");
-
-               ad->is_pressing = TRUE;
-
-               if (volume < volume_max) {
-                       sound_manager_set_volume(SOUND_TYPE_RINGTONE, ++volume);
-
-
-                       if (volume > 0 && !sound) {
-                               vconf_set_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
-                                               TRUE);
-                               vconf_set_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
-                                               FALSE);
-                               ad->data_call_volume->chk_status =
-                                               volume;
-                               setting_sound_update_slider_icon(
-                                               ad->data_call_volume,
-                                               SND_SLIDER_CALL);
-                       }
-                       if (ad->data_call_volume
-                                       && ad->data_call_volume->eo_check) {
-                               ad->data_call_volume->chk_status = volume;
-                               elm_slider_value_set(
-                                               ad->data_call_volume->eo_check,
-                                               volume);
-                               SETTING_TRACE("chk_status : %d",
-                                       ad->data_call_volume->chk_status);
-                       }
-                       ad->updown_timer = ecore_timer_add(0.5,
-                                                       __volume_up_timer_cb,
-                                                       ad);
-               }
-       }
-
-       if (!safeStrCmp(key, "XF86AudioLowerVolume")) {
-               SETTING_TRACE("Press KEY_VOLUMEDOWN");
-
-               ad->is_pressing = TRUE;
-
-               if (!sound)
-                       return EINA_TRUE;
-
-               if (volume > 0) {
-                       sound_manager_set_volume(SOUND_TYPE_RINGTONE,
-                                       --volume);
-                       if (volume == 0) {
-                               /* change to Vibration mode */
-                               vconf_set_bool(
-                                       VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
-                                       FALSE);
-                               vconf_set_bool(
-                                       VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
-                                       TRUE);
-                               feedback_play_type(FEEDBACK_TYPE_VIBRATION,
-                                               FEEDBACK_PATTERN_VIBRATION_ON);
-
-                               ad->data_call_volume->chk_status =
-                                               volume;
-                               setting_sound_update_slider_icon(
-                                               ad->data_call_volume,
-                                               SND_SLIDER_CALL);
-                       }
-                       if (ad->data_call_volume
-                                       && ad->data_call_volume->eo_check) {
-                               ad->data_call_volume->chk_status =
-                                               volume;
-                               elm_slider_value_set(
-                                               ad->data_call_volume->eo_check,
-                                               volume);
-                               SETTING_TRACE("ad->data_call_volume->chk_status : %d",
-                                               ad->data_call_volume->chk_status);
-                       }
-                       ad->updown_timer = ecore_timer_add(0.5,
-                                                       __volume_down_timer_cb,
-                                                       ad);
-               }
-       }
-
-       return EINA_TRUE;
-}
-
-/* ***************************************************
- *
- *general func
- *
- ***************************************************/
-static void __calling_popup_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       ret_if(data == NULL);
-       SettingSoundData *ad = (SettingSoundData *) data;
-
-       if (ad->calling_popup) {
-               evas_object_del(ad->calling_popup);
-               ad->calling_popup = NULL;
-       }
-}
-
-static void __mm_player_msg_cb(void *user_param)
-{
-       SETTING_TRACE_BEGIN;
-       ret_if(user_param == NULL);
-       SettingSoundData *ad = (SettingSoundData *)user_param;
-
-       SETTING_TRACE("completed_cb is called.");
-       setting_sound_stop_sound(ad);
-}
-
-static Eina_Bool __play_timer_cb(void *data)
-{
-       SETTING_TRACE_BEGIN;
-       int err;
-       player_state_e state = PLAYER_STATE_NONE;
-
-       retv_if(!data, EINA_FALSE);
-       SettingSoundData *ad = (SettingSoundData *)data;
-
-       SETTING_TRACE("player (%x)", ad->mp_prepare_async);
-       err = player_get_state(ad->mp_player, &state);
-       SETTING_TRACE("state:%d", state);
-
-       if (state != PLAYER_STATE_READY) {
-               SETTING_TRACE_ERROR(
-                               "state of player is invalid (%s), STATE: %d",
-                               get_error_message(err), state);
-               player_unprepare(ad->mp_player);
-               return EINA_FALSE;
-       }
-
-       player_set_completed_cb(ad->mp_player, __mm_player_msg_cb, ad);
-
-       err = player_start(ad->mp_player);
-       if (err != PLAYER_ERROR_NONE) { /* if directly return error. */
-               SETTING_TRACE_ERROR("player_start [%s]",
-                               get_error_message(err));
-               player_unset_completed_cb(ad->mp_player);
-               player_unset_interrupted_cb(ad->mp_player);
-               player_unprepare(ad->mp_player);
-       }
-
-       return EINA_FALSE;
-}
-
-/* Async cb : to improve slider's performance when creating player */
-static void __mm_player_prepared_cb(void *user_data)
-{
-       SETTING_TRACE_BEGIN;
-       ret_if(!user_data);
-       ecore_idler_add(__play_timer_cb, user_data);
-}
-
-
-static void __sound_stream_focus_state_changed_cb(
-               sound_stream_info_h stream_info,
-               sound_stream_focus_mask_e focus_mask,
-               sound_stream_focus_state_e focus_state,
-               sound_stream_focus_change_reason_e reason,
-               int sound_behavior,
-               const char *extra_info,
-               void *user_data)
-{
-       player_state_e state = PLAYER_STATE_NONE;
-       SettingSoundData *ad = (SettingSoundData *)user_data;
-       ret_if(ad == NULL);
-
-       SETTING_TRACE_ERROR("Focus state changed, reason: %d", reason);
-
-       if (ad->mp_player) {
-               player_get_state(ad->mp_player, &state);
-               SETTING_TRACE("player state : %d", state);
-       }
-}
-
-
diff --git a/setting-profile/src/setting-profile-sound-main.c b/setting-profile/src/setting-profile-sound-main.c
deleted file mode 100755 (executable)
index 6620cbb..0000000
+++ /dev/null
@@ -1,1438 +0,0 @@
-/*
- * setting
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd.
- *
- * Contact: MyoungJune Park <mj2004.park@samsung.com>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-#include <notification_setting.h>
-#include <notification_setting_internal.h>
-#include <setting-common/setting-common-general-func.h>
-#include "setting-profile.h"
-
-#define DO_NOT_DISTURB_OP \
-       "http://tizen.org/appcontrol/operation/setting/do_not_disturb"
-#define APP_NOTIFICATIONS_OP \
-       "http://tizen.org/appcontrol/operation/setting/app_notifications"
-#define NOTIFICATIONS_ON_LOCK_SCREEN \
-       "http://tizen.org/appcontrol/operation/setting/notification_on_lock_screen"
-
-#define SETTING_DEFAULT_RINGTONE_VOL_INT       11
-#define SETTING_DEFAULT_NOTI_VOL_INT           11
-#define SETTING_DEFAULT_MEDIA_VOL_INT          9
-#define SETTING_DEFAULT_SYSTEM_VOL_INT         9
-
-#define NOTIFICATION_STR_ON_LOCK_SCREEN \
-       "IDS_QP_TMBODY_NOTIFICATIONS_ON_LOCK_SCREEN"
-#define NOTIFICATION_STR_ON_LOCK_SCREEN_HIDE "IDS_ST_OPT_HIDE_CONTENT"
-#define NOTIFICATION_STR_ON_LOCK_SCREEN_HIDE_SENSITIVE \
-       "IDS_QP_OPT_HIDE_SENSITIVE_CONTENT_ABB"
-#define NOTIFICATION_STR_ON_LOCK_SCREEN_SHOW_ALL \
-       "IDS_QP_OPT_SHOW_ALL_CONTENT_ABB"
-#define SILENT_MODE "Silent"
-#define INIT_PATH      _TZ_SYS_GLOBALUSER_DATA"/settings/Vibrations/"
-
-/* should be called in function to return void */
-#define ADD_GENLIST2(genlist, parent) \
-       {\
-               genlist = elm_genlist_add(parent);\
-               retm_if(genlist == NULL, \
-                               "Cannot set genlist object as content of layout");\
-               elm_genlist_mode_set(genlist, ELM_LIST_COMPRESS);\
-               elm_object_style_set(genlist, "dialogue");\
-               elm_genlist_clear(genlist);\
-               evas_object_smart_callback_add(genlist, "realized", \
-                               __gl_realized_cb, NULL);\
-               elm_scroller_policy_set(genlist, ELM_SCROLLER_POLICY_OFF, \
-                               ELM_SCROLLER_POLICY_AUTO);\
-       }
-
-/* keystr, toggle */
-#define ADD_TOGGLE_MENU2(item, genlist, item_style, keystr, value, data) \
-       {\
-               item = setting_create_Gendial_field_def( \
-                               genlist, \
-                               &(item_style), \
-                               _mouse_up_Gendial_list_cb, \
-                               data, \
-                               SWALLOW_Type_1ICON_1RADIO, \
-                               NULL, \
-                               NULL, \
-                               value, \
-                               keystr, \
-                               NULL, \
-                               _sound_chk_cb); \
-               if (item) { \
-                       item->userdata = data; \
-               } else { \
-                       SETTING_TRACE_ERROR("%s item is NULL", keystr); \
-               } \
-       }
-
-
-/* keystr, multiline, toggle */
-/* should be called in function to return void */
-#define ADD_TOGGLE_MENU( \
-               _item, genlist, item_style, keystr, substr, value, data) \
-       {\
-               _item = setting_create_Gendial_field_def( \
-                               genlist, \
-                               &(item_style), \
-                               _mouse_up_Gendial_list_cb, \
-                               data, \
-                               SWALLOW_Type_1ICON_1RADIO, \
-                               NULL, \
-                               NULL, \
-                               value, \
-                               keystr, \
-                               NULL, \
-                               _sound_chk_cb); \
-               if (_item) { \
-                       _item->userdata = data;\
-               } else { \
-                       SETTING_TRACE_ERROR("%s item is NULL", keystr);\
-               } \
-               if (substr) {\
-                       Setting_GenGroupItem_Data *item_data = setting_create_Gendial_field_def( \
-                                       genlist, \
-                                       &itc_multiline_text,\
-                                       NULL,\
-                                       NULL,\
-                                       SWALLOW_Type_LAYOUT_SPECIALIZTION_X,\
-                                       NULL, \
-                                       NULL, \
-                                       0, \
-                                       substr, \
-                                       NULL, \
-                                       NULL);\
-                       setting_retm_if(NULL == item_data, \
-                                       "item_data is NULL");\
-                       elm_genlist_item_select_mode_set( \
-                                       item_data->item, \
-                                       ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);\
-               } \
-       }
-
-#define ADD_SOUND_SLIDER(item_data, genlist, item_style, l_img, r_img, value, \
-               keystr, data, sld_cb, sld_max, start_cb, stop_cb) \
-       { \
-               item_data = setting_create_Gendial_field_def( \
-                               genlist, \
-                               &(item_style), \
-                               NULL,\
-                               NULL, \
-                               SWALLOW_Type_LAYOUT_SLIDER,\
-                               l_img, \
-                               r_img,\
-                               value,\
-                               keystr,\
-                               NULL,\
-                               sld_cb);\
-               if (item_data) {\
-                       item_data->window = data->md.layout;\
-                       item_data->evas = data->md.evas;\
-                       item_data->isIndicatorVisible = FALSE;\
-                       item_data->slider_min = 0;\
-                       item_data->slider_max = sld_max;\
-                       item_data->userdata = data;\
-                       item_data->start_change_cb = start_cb;\
-                       item_data->stop_change_cb = stop_cb;\
-                       elm_genlist_item_select_mode_set( \
-                                       item_data->item, \
-                                       ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);\
-               } else {\
-                       SETTING_TRACE_ERROR("%s item is NULL", keystr);\
-               } \
-       }
-
-static int _view_create(void *cb);
-static int _view_destroy(void *cb);
-static Eina_Bool _view_pop_cb(void *data, Elm_Object_Item *it);
-static void _mouse_up_Gendial_list_cb(void *data, Evas_Object *obj,
-               void *event_info);
-
-setting_view setting_view_sound_main = {
-       .create = _view_create,
-       .destroy = _view_destroy,
-       .update = NULL,
-       .cleanup = NULL
-};
-
-/* ***************************************************
- *
- * Public functions
- *
- ***************************************************/
-
-const char *setting_do_not_disturb_is_enable(void *data)
-{
-       int err = NOTIFICATION_ERROR_NONE;
-       bool do_not_disturb;
-       notification_system_setting_h system_setting = NULL;
-
-       err = notification_system_setting_load_system_setting(&system_setting);
-       setting_retvm_if(NULL == system_setting || NOTIFICATION_ERROR_NONE != err,
-                       "NULL parameter",
-                       "notification_system_setting_load_system_Setting failed");
-       err = notification_system_setting_get_do_not_disturb(
-                       system_setting, &do_not_disturb);
-       SETTING_TRACE("do_not_disturb: %d", do_not_disturb);
-
-       notification_system_setting_free_system_setting(system_setting);
-       if (1 == do_not_disturb)
-               return "IDS_ST_BODY_ON";
-       else
-               return "IDS_ST_BODY_ALERTTYPE_OFF";
-}
-
-const char *setting_notifiaction_on_lock_screen(void *data)
-{
-       int err = NOTIFICATION_ERROR_NONE;
-       notification_system_setting_h system_setting = NULL;
-       lock_screen_content_level_e level = 0;
-
-       err = notification_system_setting_load_system_setting(&system_setting);
-       setting_retvm_if(NOTIFICATION_ERROR_NONE != err,
-                       "NULL parameter",
-                       "notification_system_setting_load_system_setting failed");
-
-       err = notification_system_setting_get_lock_screen_content(
-                       system_setting, &level);
-       if (system_setting)
-               notification_system_setting_free_system_setting(system_setting);
-
-       if (NOTIFICATION_ERROR_NONE != err) {
-               SETTING_TRACE_ERROR("notification_system_setting_get_"\
-                               "lock_screen_content failed");
-               return "";
-       }
-
-       if (level == SHOW_ALL_CONTENT)
-               return NOTIFICATION_STR_ON_LOCK_SCREEN_SHOW_ALL;
-       else if (level == HIDE_SENSITIVE_CONTENT)
-               return NOTIFICATION_STR_ON_LOCK_SCREEN_HIDE_SENSITIVE;
-       else
-               return NOTIFICATION_STR_ON_LOCK_SCREEN_HIDE;
-}
-
-/* ***************************************************
- *
- * basic func
- *
- ***************************************************/
-
-static Eina_Bool _play_ringtone_sound_idle_cb(void *data)
-{
-       double current;
-       char *pa_tone_path = NULL;
-       player_state_e state = PLAYER_STATE_NONE ;
-       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
-       SettingSoundData *ad = list_item->userdata;
-
-       SETTING_TRACE_BEGIN;
-       retv_if(!data, EINA_FALSE);
-
-       player_get_state(ad->mp_player, &state);
-
-       if (list_item->eo_check) {
-               current = elm_slider_value_get(list_item->eo_check);
-               list_item->chk_status = (int)(current + 0.5);
-       }
-
-       /*
-        * S5 concept:
-        * On the volume popup,
-        *      1) if user controls the slider, don't play any sounds,
-        *      just change volume.
-        *      2) if user controls the HW volume key for ringtone sound,
-        *      the beep sound is supported
-
-        * On Setting > Sound
-        *      1) if user controls the slider, change volume & play sound
-        *      2) if user controls the HW volume key, do nothing
-        *      (DO NOT change volume,DO NOT play sound)
-       */
-       if (0 == safeStrCmp(ad->viewtype, VOLUME_APP_NAME))
-               return EINA_FALSE;
-
-       if (state == PLAYER_STATE_IDLE) {
-               pa_tone_path = vconf_get_str(
-                               VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR);
-               if (pa_tone_path == NULL) {
-                       if (isEmulBin())
-                               pa_tone_path = strdup(SETTING_DEFAULT_CALL_TONE_SDK);
-                       else
-                               pa_tone_path = strdup(SETTING_DEFAULT_CALL_TONE);
-
-                       if (vconf_set_str(
-                                       VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR,
-                                       pa_tone_path) < 0) {
-                               free(pa_tone_path);
-                               return EINA_FALSE;
-                       }
-               }
-               if (list_item->chk_status > 0) {
-                       setting_sound_play_sound_origin(
-                                       ad,
-                                       NULL,
-                                       pa_tone_path,
-                                       (float)list_item->chk_status,
-                                       SOUND_TYPE_RINGTONE);
-               }
-               free(pa_tone_path);
-       } else {
-               SETTING_TRACE("ringtone player status : %d", state);
-               if (state == PLAYER_STATE_PAUSED) {
-                       player_start(ad->mp_player);
-               } else if (state == PLAYER_STATE_PLAYING) {
-                       if (ad->sound_on)
-                               player_set_mute(ad->mp_player, false);
-               }
-       }
-
-       ad->play_ringtone_idler = NULL;
-       return EINA_FALSE;
-}
-
-void _start_change_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       SETTING_TRACE_BEGIN;
-       Setting_GenGroupItem_Data *list_item = NULL;
-       SettingSoundData *ad = NULL;
-
-       list_item = (Setting_GenGroupItem_Data *)data;
-       ret_if(!list_item);
-       ad = list_item->userdata;
-       ret_if(ad == NULL);
-
-       setting_sound_create_warning_popup_during_call(ad);
-       if (list_item == ad->data_call_volume)
-               ad->is_ringtone_slidering = true;
-
-       setting_sound_stop_sound(ad);
-}
-
-static void _call_slider_change_cb(
-               void *data, Evas_Object *obj, void *event_info)
-{
-       SETTING_TRACE_BEGIN;
-       SettingSoundData *ad = NULL;
-       double val = 0.0;
-       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *)data;
-       ret_if(!data);
-
-       val = elm_slider_value_get(obj);
-       ad = list_item->userdata;
-
-       ad->is_ringtone_slidering = true;
-
-       if (list_item->chk_status != (int)(val + 0.5)) {
-               list_item->chk_status = (int)(val + 0.5);
-               sound_manager_set_volume(SOUND_TYPE_RINGTONE, list_item->chk_status);
-               SETTING_TRACE_DEBUG(
-                               "ringtone volume is %d, %f",
-                               list_item->chk_status,
-                               val);
-
-               if (list_item->chk_status == 0) {
-                       /* change to Vibration mode */
-                       /* call system_setting */
-                       /*system_settings_set_value_bool(
-                        * SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, false); */
-                       vconf_set_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
-                                       FALSE);
-                       vconf_set_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
-                                       TRUE);
-                       feedback_play_type(FEEDBACK_TYPE_VIBRATION,
-                                               FEEDBACK_PATTERN_VIBRATION_ON);
-               } else {
-                       if (!ad->sound_on) {
-                               /* change to Sound mode */
-                               /* call system_setting */
-                               /*system_settings_set_value_bool(
-                                * SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE,
-                                * false); */
-                               vconf_set_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
-                                               TRUE);
-                               vconf_set_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
-                                               FALSE);
-                       }
-               }
-
-               setting_sound_update_slider_icon(list_item, SND_SLIDER_CALL);
-
-               elm_slider_value_set(obj, list_item->chk_status);
-       }
-
-       setting_sound_create_warning_popup_during_call(ad);
-       if (ad->calling_popup)
-               return;
-
-       ecore_idler_del(ad->play_ringtone_idler);
-       ad->play_ringtone_idler = ecore_idler_add(
-                       _play_ringtone_sound_idle_cb, list_item);
-
-       SETTING_TRACE("list_item->chk_status:%d", list_item->chk_status);
-}
-
-static void _noti_slider_change_cb(
-               void *data, Evas_Object *obj, void *event_info)
-{
-       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
-       player_state_e state = PLAYER_STATE_NONE;
-       SETTING_TRACE_BEGIN;
-
-       ret_if(data == NULL);
-
-       double val = elm_slider_value_get(obj);
-       SettingSoundData *ad = list_item->userdata;
-       sound_type_e sound_type = SOUND_TYPE_NOTIFICATION;
-
-       if (list_item->chk_status != (int)(val + 0.5)) {
-               list_item->chk_status = (int)(val + 0.5);
-               setting_sound_update_slider_icon(list_item, SND_SLIDER_NOTI);
-               sound_manager_set_volume(sound_type, list_item->chk_status);
-               SETTING_TRACE_DEBUG(
-                               "notification volume is %d, %f",
-                               list_item->chk_status,
-                               val);
-       }
-
-       setting_sound_create_warning_popup_during_call(ad);
-       if (ad->calling_popup)
-               return;
-
-       player_get_state(ad->mp_player, &state);
-       /*
-        * S5 concept:
-        * On the volume popup,
-        *      1) if user controls the slider, don't play any sounds
-        *      just change volume.
-        *      2) if user controls the HW volume key for ringtone sound,
-        *      the beep sound is supported
-
-        * On Setting > Sound
-        *      1) if user controls the slider, change volume & play sound
-        *      2) if user controls the HW volume key, do nothing
-        *      (DO NOT change volume,DO NOT play sound)
-       */
-       if (0 == safeStrCmp(ad->viewtype, VOLUME_APP_NAME))
-               return;
-
-       if (state == PLAYER_STATE_IDLE) {
-               if (list_item->chk_status > 0) {
-                       char *pa_tone_path = vconf_get_str(
-                                       VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
-                       if (pa_tone_path == NULL) {
-                               pa_tone_path = strdup(SETTING_DEFAULT_MSG_TONE);
-                               if (vconf_set_str(
-                                               VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR,
-                                               pa_tone_path) < 0) {
-                                       FREE(pa_tone_path);
-                                       return;
-                               }
-                       }
-                       setting_sound_play_sound_origin(
-                                       ad,
-                                       NULL,
-                                       pa_tone_path,
-                                       (float)list_item->chk_status,
-                                       sound_type);
-                       FREE(pa_tone_path);
-               }
-       } else {
-               SETTING_TRACE("noti player status : %d", state);
-               if (state == PLAYER_STATE_PAUSED)
-                       player_start(ad->mp_player);
-       }
-}
-
-
-static void _media_slider_change_cb(
-               void *data, Evas_Object *obj, void *event_info)
-{
-       char *pa_tone_path = NULL;
-       player_state_e state = PLAYER_STATE_NONE;
-       sound_type_e sound_type = SOUND_TYPE_MEDIA;
-       SETTING_TRACE_BEGIN;
-
-       /* error check */
-       ret_if(data == NULL);
-       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
-       SettingSoundData *ad = list_item->userdata;
-
-       double val = elm_slider_value_get(obj);
-       int value = (int)(val + 0.5);
-       if (list_item->chk_status != value) {
-               list_item->chk_status = value;
-               setting_sound_update_slider_icon(list_item, SND_SLIDER_MEDIA);
-               int ret = sound_manager_set_volume(sound_type, value);
-               SETTING_TRACE_DEBUG("ret : 0x%.8x", ret);
-               SETTING_TRACE_DEBUG(
-                               "media volume is %d, %f",
-                               list_item->chk_status,
-                               val);
-       }
-
-       setting_sound_create_warning_popup_during_call(ad);
-       if (ad->calling_popup)
-               return;
-
-       /*
-        * S5 concept:
-        * On the volume popup,
-        *      1) if user controls the slider, don't play any sounds
-        *      just change volume.
-        *      2) if user controls the HW volume key for ringtone sound,
-        *      the beep sound is supported
-
-        * On Setting > Sound
-        *      1) if user controls the slider, change volume & play sound
-        *      2) if user controls the HW volume key, do nothing
-        *      (DO NOT change volume,DO NOT play sound)
-       */
-       if (0 == safeStrCmp(ad->viewtype, VOLUME_APP_NAME))
-               return;
-
-       player_get_state(ad->mp_player, &state);
-
-       if (state == PLAYER_STATE_IDLE) {
-               if (list_item->chk_status > 0) {
-                       if (isEmulBin())
-                               pa_tone_path = strdup(SETTING_DEFAULT_CALL_TONE_SDK);
-                       else
-                               pa_tone_path = strdup(SETTING_DEFAULT_MEDIA_TONE);
-
-                       setting_sound_play_sound_origin(
-                                       ad,
-                                       NULL,
-                                       pa_tone_path,
-                                       (float)list_item->chk_status,
-                                       sound_type);
-                       FREE(pa_tone_path);
-               }
-       } else {
-               SETTING_TRACE("ringtone player status : %d", state);
-               if (state == PLAYER_STATE_PAUSED)
-                       player_start(ad->mp_player);
-       }
-}
-
-static void _sys_slider_change_cb(
-               void *data, Evas_Object *obj, void *event_info)
-{
-       /* error check */
-       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
-       SettingSoundData *ad = list_item->userdata;
-       ret_if(ad == NULL);
-
-       /*Get the current real value of slider */
-       double val = elm_slider_value_get(obj);
-       int value = (int)(val + 0.5);
-       sound_manager_set_volume(SOUND_TYPE_SYSTEM, value);
-       SETTING_TRACE_DEBUG("system volume is %d, %f", value, val);
-
-       setting_sound_create_warning_popup_during_call(ad);
-       if (ad->calling_popup)
-               return;
-
-       if (list_item->chk_status != value) {
-
-               /*
-                * S5 concept:
-                * On the volume popup,
-                *      1) if user controls the slider, don't play any sounds
-                *      just change volume.
-                *      2) if user controls the HW volume key for ringtone
-                *      sound, the beep sound is supported
-
-                * On Setting > Sound
-                *      1) if user controls the slider, change
-                *      volume & play sound
-                *      2) if user controls the HW volume key, do nothing
-                *      (DO NOT change volume,DO NOT play sound)
-               */
-               if (0 != safeStrCmp(ad->viewtype, VOLUME_APP_NAME)) {
-                       /*Play Tap Sound,then stop at once */
-                               feedback_play_type(FEEDBACK_TYPE_SOUND,
-                                                       FEEDBACK_PATTERN_TAP);
-               }
-               list_item->chk_status = value;
-               setting_sound_update_slider_icon(list_item, SND_SLIDER_SYSTEM);
-       }
-}
-
-void _stop_change_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       SETTING_TRACE_BEGIN;
-       Setting_GenGroupItem_Data *list_item = NULL;
-
-       ret_if(data == NULL);
-       list_item = (Setting_GenGroupItem_Data *)data;
-
-       SETTING_TRACE("chk_status : %d, slider : %f", list_item->chk_status,
-                       elm_slider_value_get(obj));
-       if (list_item->chk_status == 0)
-               elm_slider_value_set(obj, 0.0);
-       else if (list_item->chk_status == 15)
-               elm_slider_value_set(obj, 15.0);
-       if (list_item->userdata)
-               ((SettingSoundData *)(list_item->userdata))->is_ringtone_slidering = false;
-       SETTING_TRACE_END;
-}
-
-static void _sound_chk_cb(void *data, Evas_Object *obj,
-                                                  void *event_info)
-{
-       SETTING_TRACE_BEGIN;
-       /* error check */
-       ret_if(data == NULL);
-       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
-       SettingSoundData *ad = list_item->userdata;
-       ret_if(ad == NULL);
-
-       setting_sound_stop_sound(ad);
-       /* for genlist update status */
-       list_item->chk_status = elm_check_state_get(obj);
-       /* rollback */
-       setting_update_gl_item_chk_status(list_item, !list_item->chk_status);
-       _mouse_up_Gendial_list_cb(ad, NULL, list_item->item);
-}
-
-static void _get_lite_main_list(void *data)
-{
-       SETTING_TRACE_BEGIN;
-       ret_if(!data);
-       SettingSoundData *ad = (SettingSoundData *)data;
-
-       char *app_id = NULL;
-       char *optional_txt = NULL;
-       char *sdcard_filepath = NULL;
-       int vconf_value = 0;
-       char *sub_desc = NULL;
-       char *left_icon = NULL;
-       int mm_value = 0;
-       int sound_value = 0;
-       int vconf_ret = 0;
-       int ret = 0;
-       char *pa_ringtone = NULL;
-       int max_ringtone_vol = 0;
-       int max_noti_vol = 0;
-       int max_media_vol = 0;
-       int max_system_vol = 0;
-       Elm_Genlist_Item_Class *itc_slider = NULL;
-       Evas_Object *genlist = ad->md.genlist;
-       elm_genlist_block_count_set(genlist, 3);
-       elm_genlist_homogeneous_set(genlist, EINA_FALSE);
-
-       ret = sound_manager_get_max_volume(SOUND_TYPE_RINGTONE,
-                                               &max_ringtone_vol);
-       SETTING_TRACE("Getting max volume: %s %d", get_error_message(ret),
-                       max_ringtone_vol);
-       ret = sound_manager_get_max_volume(SOUND_TYPE_NOTIFICATION,
-                                               &max_noti_vol);
-       SETTING_TRACE("Getting max volume: %s %d", get_error_message(ret),
-                       max_noti_vol);
-       ret = sound_manager_get_max_volume(SOUND_TYPE_MEDIA, &max_media_vol);
-       SETTING_TRACE("Getting max volume: %s %d", get_error_message(ret),
-                       max_media_vol);
-       ret = sound_manager_get_max_volume(SOUND_TYPE_SYSTEM, &max_system_vol);
-       SETTING_TRACE("Getting max volume: %s %d", get_error_message(ret),
-                       max_system_vol);
-
-       if (vconf_get_bool(
-                       VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
-                       &sound_value) < 0)
-               sound_value = TRUE;     /*      default value of sound : on */
-
-
-       /*------------------------------------------------------------------ */
-       /*------------------------------------------------------------------ */
-       /*------------------------------------------------------------------ */
-       itc_slider = &(ad->itc_layout_1icon);
-
-       if (0 == safeStrCmp(ad->viewtype, VOLUME_APP_NAME))
-               itc_slider = &(ad->itc_layout);
-       /*------------------------------------------------------------------ */
-       /*------------------------------------------------------------------ */
-       /*------------------------------------------------------------------ */
-
-       /* 1. Ringtones */
-       SETTING_TRACE(" ???????????? ad->viewtype : %s ", ad->viewtype);
-
-       if (0 != safeStrCmp(ad->viewtype, VOLUME_APP_NAME)) {
-
-               int sd_status = VCONFKEY_SYSMAN_MMC_REMOVED;
-               if (vconf_get_int(
-                               VCONFKEY_SYSMAN_MMC_STATUS,
-                               &sd_status) != 0) {
-                       SETTING_TRACE_ERROR("fail to get mmc status");
-               }
-               sdcard_filepath = vconf_get_str(VCONFKEY_SETAPPL_CALL_VIBRATION_PATTERN_STR);
-
-               if (0 == safeStrNCmp(sdcard_filepath, INIT_PATH, safeStrLen(INIT_PATH))) {
-                       vconf_set_str(VCONFKEY_SETAPPL_CALL_VIBRATION_PATTERN_STR, "NONE");
-                       free(sdcard_filepath);
-                       sdcard_filepath = vconf_get_str(VCONFKEY_SETAPPL_CALL_VIBRATION_PATTERN_STR);
-               }
-               if (safeStrCmp(sdcard_filepath, "NONE") != 0
-                               && sd_status == VCONFKEY_SYSMAN_MMC_MOUNTED) {
-                       /*check sdcard filepath*/
-                       if (sdcard_filepath)
-                               pa_ringtone = strdup(sdcard_filepath);
-                       vconf_set_str(VCONFKEY_SETAPPL_CALL_VIBRATION_PATTERN_STR, "NONE");
-               } else {
-                       pa_ringtone = vconf_get_str(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR);
-               }
-
-               free(sdcard_filepath);
-               sdcard_filepath = NULL;
-
-               if (!pa_ringtone || strlen(pa_ringtone) == 0) {
-                       sub_desc = strdup(SILENT_MODE);
-               } else if (setting_sound_check_file_exist(ad, pa_ringtone) == SETTING_RETURN_FAIL) {
-                       if (pa_ringtone)
-                               FREE(pa_ringtone);
-                       if (isEmulBin())
-                               pa_ringtone = strdup(SETTING_DEFAULT_CALL_TONE_SDK);
-                       else
-                               pa_ringtone = strdup(SETTING_DEFAULT_CALL_TONE);
-
-                       vconf_ret = vconf_set_str(VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR, pa_ringtone);
-                       if (vconf_ret < 0)
-                               SETTING_TRACE_DEBUG("failed to set vconf");
-               } else {
-                       if (pa_ringtone)
-                               sub_desc = setting_media_basename(pa_ringtone);
-               }
-
-               ad->data_call_alert_tone =
-                       setting_create_Gendial_field_def(
-                                       genlist,
-                                       &itc_2text_2,
-                                       _mouse_up_Gendial_list_cb,
-                                       ad,
-                                       SWALLOW_Type_INVALID,
-                                       NULL,
-                                       NULL,
-                                       0,
-                                       "IDS_ST_MBODY_RINGTONE",
-                                       sub_desc,
-                                       NULL);
-               if (ad->data_call_alert_tone) {
-                       __BACK_POINTER_SET(ad->data_call_alert_tone);
-                       ad->data_call_alert_tone->userdata = ad;
-               }
-
-               FREE(pa_ringtone);
-               G_FREE(sub_desc);
-       }
-
-
-       /* 2. call volumn. */
-       if (sound_manager_get_volume(SOUND_TYPE_RINGTONE, &mm_value)
-                       != SOUND_MANAGER_ERROR_NONE)
-               mm_value = SETTING_DEFAULT_RINGTONE_VOL_INT;
-       if (sound_value == FALSE)
-               mm_value = 0;
-
-       (void)app_get_id(&app_id);
-
-       if (app_id && !strcmp(VOLUME_APP_NAME, app_id))
-                       optional_txt = "IDS_ST_MBODY_RINGTONE";
-
-       left_icon = setting_sound_get_slider_icon(SND_SLIDER_CALL, mm_value);
-       ADD_SOUND_SLIDER(
-                       ad->data_call_volume,
-                       genlist,
-                       (*itc_slider),
-                       left_icon,
-                       NULL,
-                       /*"IDS_ST_HEADER_RINGTONES" is for volume App,in
-                        * Setting > Sound,it has no title */
-                       mm_value,
-                       optional_txt,
-                       ad,
-                       _call_slider_change_cb,
-                       max_ringtone_vol,
-                       _start_change_cb,
-                       _stop_change_cb);
-       __BACK_POINTER_SET(ad->data_call_volume);
-
-       /* Disable Call Volume slider if Silent ringtone is selected */
-       if (ad->data_call_volume
-                       && ad->data_call_alert_tone
-                       && !safeStrCmp(ad->data_call_alert_tone->sub_desc, SILENT_MODE)) {
-               elm_object_item_disabled_set(ad->data_call_volume->item, EINA_TRUE);
-               elm_object_disabled_set(ad->data_call_volume->eo_check, EINA_TRUE);
-       }
-
-       /* 3. Notification alert */
-       if (0 != safeStrCmp(ad->viewtype, VOLUME_APP_NAME)) {
-               pa_ringtone = vconf_get_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
-               SETTING_TRACE_WARNING("<MS> NOTI VCONF: %s", __FILE__, __LINE__, pa_ringtone);
-
-
-               if (!pa_ringtone || strlen(pa_ringtone) == 0) {
-                       sub_desc = strdup(SILENT_MODE);
-               } else if (setting_sound_check_file_exist(ad, pa_ringtone) == SETTING_RETURN_FAIL) {
-                       if (pa_ringtone)
-                               FREE(pa_ringtone);
-                       pa_ringtone = strdup(SETTING_DEFAULT_MSG_TONE);
-                       vconf_ret = vconf_set_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, SETTING_DEFAULT_MSG_TONE);
-                       if (vconf_ret < 0)
-                               SETTING_TRACE_DEBUG("failed to set vconf");
-               } else  {
-                       if (pa_ringtone)
-                               sub_desc = setting_media_basename(pa_ringtone);
-               }
-
-               ad->data_msg_alert_tone =
-                       setting_create_Gendial_field_def(
-                                       genlist,
-                                       &itc_2text_2,
-                                       _mouse_up_Gendial_list_cb,
-                                       ad,
-                                       SWALLOW_Type_INVALID,
-                                       NULL,
-                                       NULL,
-                                       0,
-                                       "IDS_ST_BODY_NOTIFICATION",
-                                       sub_desc,
-                                       NULL);
-               if (ad->data_msg_alert_tone) {
-                       __BACK_POINTER_SET(ad->data_msg_alert_tone);
-                       ad->data_msg_alert_tone->userdata = ad;
-               }
-
-               FREE(pa_ringtone);
-               G_FREE(sub_desc);
-       }
-       /* 4.noti volumn */
-       if (sound_manager_get_volume(SOUND_TYPE_NOTIFICATION, &mm_value)
-                       != SOUND_MANAGER_ERROR_NONE)
-               mm_value = SETTING_DEFAULT_NOTI_VOL_INT;
-       if (sound_value == FALSE)
-               mm_value = 0;
-
-       if (app_id && !strcmp(VOLUME_APP_NAME, app_id))
-                       optional_txt = "IDS_ST_BODY_NOTIFICATION";
-
-       left_icon = setting_sound_get_slider_icon(SND_SLIDER_NOTI, mm_value);
-       ADD_SOUND_SLIDER(
-                       ad->data_noti_volume,
-                       genlist,
-                       (*itc_slider),
-                       left_icon,
-                       NULL,
-                       mm_value,
-                       optional_txt,
-                       ad,
-                       _noti_slider_change_cb,
-                       max_noti_vol,
-                       _start_change_cb,
-                       _stop_change_cb);
-       __BACK_POINTER_SET(ad->data_noti_volume);
-
-       free(app_id);
-       app_id = NULL;
-
-       /* Disable Notification slider if Silent ringtone is selected */
-       if (ad->data_noti_volume
-                       && ad->data_msg_alert_tone
-                       && !safeStrCmp(ad->data_msg_alert_tone->sub_desc, SILENT_MODE)) {
-               elm_object_item_disabled_set(ad->data_noti_volume->item, EINA_TRUE);
-               elm_object_disabled_set(ad->data_noti_volume->eo_check, EINA_TRUE);
-       }
-
-       /* 5.media volume */
-       if (sound_manager_get_volume(SOUND_TYPE_MEDIA, &mm_value)
-                       != SOUND_MANAGER_ERROR_NONE)
-               mm_value = SETTING_DEFAULT_MEDIA_VOL_INT;
-
-       left_icon = setting_sound_get_slider_icon(SND_SLIDER_MEDIA, mm_value);
-       ADD_SOUND_SLIDER(
-                       ad->data_media_volume,
-                       genlist,
-                       ad->itc_layout,
-                       left_icon, /*IMG_SLIDER_BTN_VOLUME02*/
-                       NULL,
-                       mm_value,
-                       "IDS_ST_BODY_MEDIA",
-                       ad,
-                       _media_slider_change_cb,
-                       max_media_vol,
-                       _start_change_cb,
-                       _stop_change_cb);
-
-       __BACK_POINTER_SET(ad->data_media_volume);
-
-       /* 6.system volume */
-       if (sound_manager_get_volume(SOUND_TYPE_SYSTEM, &mm_value)
-                       != SOUND_MANAGER_ERROR_NONE) {
-               SETTING_TRACE_DEBUG("Fail to get volume");
-               mm_value = SETTING_DEFAULT_SYSTEM_VOL_INT;
-       }
-       if (sound_value == FALSE)
-               mm_value = 0;
-
-       left_icon = setting_sound_get_slider_icon(SND_SLIDER_SYSTEM, mm_value);
-       ADD_SOUND_SLIDER(
-                       ad->data_touch_volume, genlist, ad->itc_layout,
-                       left_icon, NULL/*IMG_SLIDER_BTN_SYSTEM_VOLUME*/,
-                       mm_value, "IDS_ST_BODY_SYSTEM", ad,
-                       _sys_slider_change_cb,
-                       max_system_vol,
-                       _start_change_cb, _stop_change_cb);
-
-       __BACK_POINTER_SET(ad->data_touch_volume);
-
-       if (0 != safeStrCmp(ad->viewtype, VOLUME_APP_NAME)) {
-               /* 7. Vibrate when ringing */
-               if (vconf_get_bool(
-                               VCONFKEY_SETAPPL_VIBRATE_WHEN_RINGING_BOOL,
-                               &vconf_value) < 0) {
-                       /* default value of vibrate sound : on */
-                       vconf_value = TRUE;
-               }
-               ADD_TOGGLE_MENU2(
-                               ad->data_sound_when_ring,
-                               genlist,
-                               itc_1text_1icon,
-                               "IDS_ST_BODY_VIBRATE_WHEN_RINGING",
-                               vconf_value,
-                               ad);
-               __BACK_POINTER_SET(ad->data_sound_when_ring);
-
-               if (ad->data_sound_when_ring)
-                       elm_object_item_disabled_set(ad->data_sound_when_ring->item,
-                                                                               !sound_value);
-               /* 8. Feedback */
-               setting_create_Gendial_field_def(genlist, &itc_1text,
-                               _mouse_up_Gendial_list_cb,
-                               data, SWALLOW_Type_INVALID, NULL,
-                               NULL, 0,
-                               "IDS_ST_MBODY_OTHER_SOUNDS", NULL, NULL);
-
-               /* Notifications */
-               setting_create_Gendial_field_titleItem(
-                               genlist,
-                               &itc_group_item,
-                               _("IDS_ST_BODY_NOTIFICATIONS"),
-                               NULL);
-               /* 9. Notifications - Do not disturb */
-               const char *sub_desc = setting_do_not_disturb_is_enable(data);
-               ad->data_do_not_disturb = setting_create_Gendial_field_def(
-                               genlist,
-                               &itc_2text_2,
-                               _mouse_up_Gendial_list_cb,
-                               data,
-                               SWALLOW_Type_INVALID,
-                               NULL,
-                               NULL,
-                               0,
-                               "IDS_ST_MBODY_DO_NOT_DISTURB_ABB",
-                               sub_desc,
-                               NULL);
-               /* 10. Notifications - App notifications */
-               setting_create_Gendial_field_def(
-                               genlist,
-                               &itc_2text_2,
-                               _mouse_up_Gendial_list_cb,
-                               data,
-                               SWALLOW_Type_INVALID,
-                               NULL,
-                               NULL,
-                               0,
-                               "IDS_ST_MBODY_APP_NOTIFICATIONS",
-                               "IDS_ST_BODY_ALLOW_OR_BLOCK_NOTIFICATIONS_FROM_"
-                               "INDIVIDUAL_APPLICATIONS",
-                               NULL);
-
-               sub_desc = setting_notifiaction_on_lock_screen(data);
-               /* 11. Notifications - Notification on lock screen */
-               ad->data_notifiaction_on_lock_screen = setting_create_Gendial_field_def(
-                               genlist,
-                               &itc_2text_2,
-                               _mouse_up_Gendial_list_cb,
-                               data,
-                               SWALLOW_Type_INVALID,
-                               NULL,
-                               NULL,
-                               0,
-                               NOTIFICATION_STR_ON_LOCK_SCREEN,
-                               sub_desc,
-                               NULL);
-
-               ad->md.genlist = genlist;
-
-       }
-       if (!sound_value) {
-               if (ad->data_noti_volume)
-                       elm_object_item_disabled_set(ad->data_noti_volume->item,
-                                                                               EINA_TRUE);
-               if (ad->data_touch_volume)
-                       elm_object_item_disabled_set(ad->data_touch_volume->item,
-                                                                               EINA_TRUE);
-       }
-}
-
-static void _click_softkey_back_cb(void *data,
-               Evas_Object *obj, void *event_info)
-{
-       SETTING_TRACE_BEGIN;
-       SettingSoundData *ad = (SettingSoundData *)data;
-       ret_if(!ad);
-       elm_naviframe_item_pop(ad->md.naviframe);
-}
-
-static int _view_create(void *cb)
-{
-       Evas_Object *back_button = NULL;
-
-       SETTING_TRACE_BEGIN;
-       retv_if(cb == NULL, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
-       SettingSoundData *ad = (SettingSoundData *) cb;
-
-       int ret = view_init(&ad->md, _("IDS_ST_HEADER_SOUND"));
-
-       if (ret != SETTING_RETURN_SUCCESS)
-               return ret;
-
-       /* 1.Grab Hard Key */
-       setting_sound_key_grab(ad);
-       SETTING_TRACE("viewtype: %s", ad->viewtype);
-       _get_lite_main_list(ad);
-
-       back_button = setting_create_button(ad->md.naviframe,
-                       _(NULL), NAVI_BACK_ARROW_BUTTON_STYLE,
-                       _click_softkey_back_cb, ad);
-       elm_layout_content_set(ad->md.naviframe, "prev_btn",
-                       back_button);
-       elm_naviframe_item_pop_cb_set(ad->md.naviframe_it, _view_pop_cb, ad);
-       elm_object_item_domain_text_translatable_set(
-                       ad->md.naviframe_it, SETTING_PACKAGE,
-                       EINA_TRUE);
-
-       setting_view_sound_main.is_create = TRUE;
-
-       SETTING_TRACE_END;
-       return SETTING_RETURN_SUCCESS;
-}
-
-static int _view_destroy(void *cb)
-{
-       /* error check */
-       retv_if(cb == NULL, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
-       SETTING_TRACE_BEGIN;
-       retv_if(!setting_view_sound_main.is_create,
-                       SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
-
-       SettingSoundData *ad = (SettingSoundData *) cb;
-
-       /* 1.Ungrab Key */
-       setting_sound_key_ungrab(ad);
-
-       if (ad->play_ringtone_idler) {
-               ecore_idler_del(ad->play_ringtone_idler);
-               ad->play_ringtone_idler = NULL;
-       }
-
-       evas_object_del(ad->md.window);
-       ad->md.window = NULL;
-
-       setting_view_sound_main.is_create = FALSE;
-       return SETTING_RETURN_SUCCESS;
-}
-
-static Eina_Bool _view_pop_cb(void *data, Elm_Object_Item *it)
-{
-       SETTING_TRACE_BEGIN;
-       SettingSoundData *ad = data;
-       retv_if(!ad, EINA_FALSE);
-       setting_sound_stop_sound(ad);
-       ui_app_exit();
-       return EINA_TRUE;
-}
-
-/* ***************************************************
- *
- *general func
- *
- ***************************************************/
-
-static void _update_slider_item(Setting_GenGroupItem_Data *item_to_update,
-               sound_type_e sound_type_to_update, const char *ringtone_file,
-               int icon_type)
-{
-       int mm_value = 0;
-       SettingSoundData *ad = NULL;
-
-       ret_if(!item_to_update);
-       ad = item_to_update->userdata;
-       ret_if(!ad);
-
-       if (!safeStrCmp(ringtone_file, SILENT_MODE)) {
-               /* Disable */
-               if (item_to_update && item_to_update->item
-                               && item_to_update->eo_check) {
-                       if (item_to_update->chk_status)
-                                       ad->backup_ringtone_volume[sound_type_to_update] =
-                                                       item_to_update->chk_status;
-                       item_to_update->chk_status = 0;
-                       elm_slider_value_set(item_to_update->eo_check,
-                                       item_to_update->chk_status);
-
-                       sound_manager_set_volume(sound_type_to_update, 0);
-
-                       elm_object_item_disabled_set(item_to_update->item, EINA_TRUE);
-                       elm_object_disabled_set(item_to_update->eo_check, EINA_TRUE);
-
-                       /* Change notification slider's icon as mute style */
-                       setting_sound_update_slider_icon(item_to_update, icon_type);
-               }
-       } else {
-               /* Enable */
-               int ret =  sound_manager_get_volume(sound_type_to_update, &mm_value);
-               SETTING_TRACE("ret:%d", ret);
-               item_to_update->chk_status = mm_value;
-               elm_slider_value_set(
-                               item_to_update->eo_check,
-                               item_to_update->chk_status);
-               elm_object_item_disabled_set(item_to_update->item, EINA_FALSE);
-               elm_object_disabled_set(item_to_update->eo_check, EINA_FALSE);
-               if (mm_value == 0)
-                       sound_manager_set_volume(sound_type_to_update,
-                                       ad->backup_ringtone_volume[sound_type_to_update]);
-               setting_sound_update_slider_icon(item_to_update, icon_type);
-       }
-}
-
-static void _set_ringtone_path(Evas_Object *genlist, char *path, char *vconf,
-               system_settings_key_e key,
-               Setting_GenGroupItem_Data *ringtone_item,
-               Setting_GenGroupItem_Data *slider_item,
-               sound_type_e sound_type, SoundType type)
-{
-       char *ringtone_file = setting_media_basename(path);
-       int ret;
-
-       SETTING_TRACE_BEGIN;
-
-       if (strnlen(path, PATH_MAX) == 0) {
-               ret = vconf_set_str(vconf, "");
-               if (ret != 0)
-                       dlog_print(DLOG_ERROR, LOG_TAG, "[%s:%d] vconf_set_str() error: %s",
-                                       __FILE__, __LINE__, get_error_message(ret));
-
-               ringtone_item->sub_desc = strdup(SILENT_MODE);
-       } else  {
-               ret = vconf_set_str(vconf, path);
-               if (ret != 0)
-                       dlog_print(DLOG_ERROR, LOG_TAG, "[%s:%d] cause error: %s",
-                                       __FILE__, __LINE__, get_error_message(ret));
-
-               ret = system_settings_set_value_string(key, path);
-               if (SYSTEM_SETTINGS_ERROR_NONE == ret)
-                       ringtone_item->sub_desc = strdup(ringtone_file);
-               else
-                       SETTING_TRACE_ERROR("system_settings_set_value_string() failed: %s",
-                                       get_error_message(ret));
-       }
-
-       elm_object_item_data_set(ringtone_item->item, ringtone_item);
-       elm_genlist_item_update(ringtone_item->item);
-       elm_genlist_realized_items_update(genlist);
-       _update_slider_item(slider_item, sound_type, ringtone_file, type);
-
-       free(ringtone_file);
-       SETTING_TRACE_END;
-}
-
-static void _result_myfile_cb(app_control_h request,
-                                       app_control_h reply, app_control_result_e result,
-                                       void *priv)
-{
-       char **paths = NULL;
-       int arr_len = 0;
-
-       SETTING_TRACE_BEGIN;
-       ret_if(priv == NULL);
-
-       SettingSoundData *ad = (SettingSoundData *) priv;
-
-       if (APP_CONTROL_RESULT_SUCCEEDED != result)
-               return;
-
-       (void)app_control_get_extra_data_array(reply, APP_CONTROL_DATA_SELECTED,
-                       &paths, &arr_len);
-       if (!paths || arr_len == 0)
-               return;
-
-       if (paths[0] != NULL) {
-               if (0 == safeStrCmp(ad->ringtone_type, "IDS_ST_MBODY_RINGTONE")) {
-                       _set_ringtone_path(ad->md.genlist, paths[0],
-                                       VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR,
-                                       SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE,
-                                       ad->data_call_alert_tone, ad->data_call_volume,
-                                       SOUND_TYPE_RINGTONE, SND_SLIDER_CALL);
-
-               } else if (0 == safeStrCmp(ad->ringtone_type, "IDS_ST_BODY_NOTIFICATION")) {
-                       _set_ringtone_path(ad->md.genlist, paths[0],
-                                       VCONFKEY_SETAPPL_NOTI_RINGTONE_PATH_STR,
-                                       SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION,
-                                       ad->data_msg_alert_tone, ad->data_noti_volume,
-                                       SOUND_TYPE_NOTIFICATION, SND_SLIDER_NOTI);
-               }
-       }
-
-       free(paths);
-}
-
-static char *_prepare_ringtone_path(char *vconf, system_settings_key_e key,
-                                                                       char *default_emul, char *default_arm)
-{
-       int ret = 0;
-       char *vconf_ringtone = vconf_get_str(vconf);
-       char *pa_cur_ringtone = NULL;
-
-       dlog_print(DLOG_INFO, LOG_TAG, "[%s:%d] <MS> VCONF_RINGTONE: %s", __FILE__, __LINE__, vconf_ringtone);
-
-       if (!vconf_ringtone || strlen(vconf_ringtone) == 0) {
-               pa_cur_ringtone = strdup(SILENT_MODE);
-       } else {
-               ret = system_settings_get_value_string(key, &pa_cur_ringtone);
-               if (ret != SYSTEM_SETTINGS_ERROR_NONE) {
-                       SETTING_TRACE_ERROR("system_settings_get_value_string() failed. Error: %s", get_error_message(ret));
-                       return NULL;
-               }
-       }
-
-       if (pa_cur_ringtone == NULL) {
-               if (isEmulBin())
-                       pa_cur_ringtone = strdup(default_emul);
-               else
-                       pa_cur_ringtone = strdup(default_arm);
-       }
-
-
-       return pa_cur_ringtone;
-}
-
-static void _create_myfile_ug(SettingSoundData *ad, char *titleID)
-{
-       ret_if(ad == NULL);
-       const char *selected_files_arr[] = {NULL};
-       char *pa_cur_ringtone = NULL;
-       app_control_h svc = NULL;
-       if (APP_CONTROL_ERROR_NONE != app_control_create(&svc))
-               return;
-
-       if (0 == safeStrCmp(ad->ringtone_type, "IDS_ST_MBODY_RINGTONE")) {
-               pa_cur_ringtone = _prepare_ringtone_path(
-                               VCONFKEY_SETAPPL_CALL_RINGTONE_PATH_STR,
-                               SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE,
-                               SETTING_DEFAULT_CALL_TONE_SDK,
-                               SETTING_DEFAULT_CALL_TONE);
-
-       } else if (0 == safeStrCmp(ad->ringtone_type, "IDS_ST_BODY_NOTIFICATION")) {
-               pa_cur_ringtone = _prepare_ringtone_path(
-                               VCONFKEY_SETAPPL_NOTI_RINGTONE_PATH_STR,
-                               SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION,
-                               SETTING_DEFAULT_MSG_TONE,
-                               SETTING_DEFAULT_MSG_TONE);
-
-               app_control_add_extra_data(svc, "show_notification", "true");
-       }
-
-       selected_files_arr[0] = pa_cur_ringtone;
-
-       app_control_add_extra_data_array(svc, APP_CONTROL_DATA_SELECTED,
-                                                                       selected_files_arr,
-                                                                       sizeof(selected_files_arr)/
-                                                                       sizeof(const char *));
-
-       elm_object_tree_focus_allow_set(ad->md.naviframe, EINA_FALSE);
-
-       app_control_set_app_id(svc, "org.tizen.setting-ringtone");
-       app_control_set_launch_mode(svc, APP_CONTROL_LAUNCH_MODE_GROUP);
-       if (APP_CONTROL_ERROR_NONE !=
-                       app_control_send_launch_request(svc, _result_myfile_cb, ad))
-               SETTING_TRACE_ERROR("org.tizen.setting-ringtone launch request failed");
-
-       app_control_destroy(svc);
-       free(pa_cur_ringtone);
-}
-
-static void _back_button_click_cb(void *data, Evas_Object *obj,
-               void *event_info)
-{
-       SettingSoundData *ad = data;
-       ret_if(!ad);
-       elm_naviframe_item_pop(ad->md.naviframe);
-}
-
-static void _mouse_up_Gendial_list_cb(void *data,
-               Evas_Object *obj,
-               void *event_info)
-{
-       SETTING_TRACE_BEGIN;
-       app_control_h service = 0;
-       Evas_Object *back_button = NULL;
-       SettingSoundData *ad = NULL;
-       Elm_Object_Item *navi_it = NULL;
-       int vconf_value = 0;
-       Evas_Object *genlist = NULL;
-       Elm_Object_Item *item = NULL;
-       Setting_GenGroupItem_Data *list_item = NULL;
-
-       ad = data;
-       ret_if(!ad);
-
-       item = (Elm_Object_Item *)event_info;
-       retm_if(event_info == NULL, "Invalid argument: event info is NULL");
-
-       elm_genlist_item_selected_set(item, 0);
-       list_item = elm_object_item_data_get(item);
-       ret_if(!list_item);
-
-       setting_sound_stop_sound(ad);
-
-       SETTING_TRACE("clicking item[%s]", _(list_item->keyStr));
-
-       if (!safeStrCmp("IDS_ST_MBODY_RINGTONE", list_item->keyStr)
-               || !safeStrCmp("IDS_ST_BODY_NOTIFICATION", list_item->keyStr)) {
-               ad->ringtone_type = list_item->keyStr;
-               _create_myfile_ug(ad, list_item->keyStr);
-               setting_sound_key_ungrab(ad);
-       } else if (!safeStrCmp("IDS_ST_MBODY_DO_NOT_DISTURB_ABB",
-                       list_item->keyStr)) {
-               app_control_create(&service);
-               app_control_set_app_id(service,
-                               "org.tizen.setting-notification");
-               app_control_set_operation(service, DO_NOT_DISTURB_OP);
-               app_control_set_launch_mode(service, APP_CONTROL_LAUNCH_MODE_GROUP);
-               app_control_send_launch_request(service, NULL, NULL);
-               app_control_destroy(service);
-       } else if (!safeStrCmp("IDS_ST_MBODY_APP_NOTIFICATIONS",
-                       list_item->keyStr)) {
-               app_control_create(&service);
-               app_control_set_app_id(service,
-                               "org.tizen.setting-notification");
-               app_control_set_operation(service, APP_NOTIFICATIONS_OP);
-               app_control_set_launch_mode(service, APP_CONTROL_LAUNCH_MODE_GROUP);
-               app_control_send_launch_request(service, NULL, NULL);
-               app_control_destroy(service);
-       } else if (!safeStrCmp(NOTIFICATION_STR_ON_LOCK_SCREEN,
-                       list_item->keyStr)) {
-               app_control_create(&service);
-               app_control_set_app_id(service,
-                               "org.tizen.setting-notification");
-               app_control_set_operation(service, NOTIFICATIONS_ON_LOCK_SCREEN);
-               app_control_set_launch_mode(service, APP_CONTROL_LAUNCH_MODE_GROUP);
-               app_control_send_launch_request(service, NULL, NULL);
-               app_control_destroy(service);
-
-       }
-       /* additional */
-       else if (!safeStrCmp(
-                       "IDS_ST_BODY_VIBRATE_WHEN_RINGING",
-                       list_item->keyStr)) {
-               /* vibrate when ring*/
-               int old_status = list_item->chk_status;
-               if (vconf_set_bool(VCONFKEY_SETAPPL_VIBRATE_WHEN_RINGING_BOOL,
-                               !old_status) == 0) {
-                       /* new status */
-                       setting_update_gl_item_chk_status(list_item, !old_status);
-               }
-       } else if (!safeStrCmp("IDS_ST_BODY_SCREEN_LOCK_SOUND",
-                       list_item->keyStr)) {
-               int old_status = list_item->chk_status;
-               if (vconf_set_bool(VCONFKEY_SETAPPL_SOUND_LOCK_BOOL,
-                               !old_status) == 0) {
-                       /* new status */
-                       setting_update_gl_item_chk_status(list_item,
-                                       !old_status);
-               }
-       } else if (!safeStrCmp("IDS_ST_MBODY_DIALLING_KEYPAD_TONE",
-                       list_item->keyStr)) {
-               int old_status = list_item->chk_status;
-               /* To do : set vconfkey for touch sounds */
-               if (vconf_set_bool(VCONFKEY_SETAPPL_BUTTON_SOUNDS_BOOL,
-                               !old_status) == 0) {
-                       /* new status */
-                       setting_update_gl_item_chk_status(list_item,
-                                       !old_status);
-               }
-       } else if (!safeStrCmp("IDS_ST_MBODY_TOUCH_SOUND", list_item->keyStr)) {
-               int old_status = list_item->chk_status;
-               /* To do : set vconfkey for touch sounds */
-               if (vconf_set_bool(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL,
-                               !old_status) == 0) {
-                       /* new status */
-                       setting_update_gl_item_chk_status(list_item,
-                                       !old_status);
-               }
-       } else if (!safeStrCmp("IDS_ST_MBODY_OTHER_SOUNDS", list_item->keyStr)) {
-               setting_sound_key_ungrab(ad);
-
-               ADD_GENLIST2(genlist, ad->md.naviframe);
-               /* 1. Touch sounds */
-               if (vconf_get_bool(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL,
-                               &vconf_value) < 0)
-                       /* default value of touch sounds : on */
-                       vconf_value = TRUE;
-               ADD_TOGGLE_MENU(ad->data_touch_sounds, genlist, itc_1text_1icon,
-                               "IDS_ST_MBODY_TOUCH_SOUND",
-                               "IDS_ST_BODY_PLAY_A_SOUND_WHEN_BUTTONS_ICONS_"
-                                       "AND_MENU_ITEMS_ARE_TAPPED",
-                               vconf_value, ad)
-
-               /* 2. Keytones */
-               if (vconf_get_bool(VCONFKEY_SETAPPL_BUTTON_SOUNDS_BOOL,
-                               &vconf_value) < 0)
-                       /* default value of touch sounds : on */
-                       vconf_value = TRUE;
-               ADD_TOGGLE_MENU(ad->data_button_sounds, genlist,
-                               itc_1text_1icon,
-                               "IDS_ST_MBODY_DIALLING_KEYPAD_TONE",
-                               "IDS_ST_BODY_PLAY_TONE_WHEN_THE_DIALLING_"
-                                       "KEYPAD_IS_TAPPED",
-                               vconf_value, ad)
-
-               /*      3. Screen lock sound */
-               if (vconf_get_bool(VCONFKEY_SETAPPL_SOUND_LOCK_BOOL,
-                               &vconf_value) < 0)
-                       /* default value of lock/unlock sound : off */
-                       vconf_value = 0;
-               ADD_TOGGLE_MENU(ad->data_lock_sound, genlist, itc_1text_1icon,
-                               "IDS_ST_BODY_SCREEN_LOCK_SOUND",
-                               "IDS_ST_BODY_PLAY_SOUNDS_WHEN_LOCKING_AND_UNLOCKING_SCREEN",
-                               vconf_value, ad)
-
-
-               navi_it = elm_naviframe_item_push(ad->md.naviframe,
-                               "IDS_ST_MBODY_OTHER_SOUNDS", NULL, NULL, genlist,
-                               NULL);
-               elm_object_item_domain_text_translatable_set(navi_it,
-                               SETTING_PACKAGE, EINA_TRUE);
-               back_button = setting_create_button(ad->md.naviframe, _("IDS_ST_BUTTON_BACK"),
-                               NAVI_BACK_ARROW_BUTTON_STYLE, _back_button_click_cb, ad);
-               elm_layout_content_set(ad->md.naviframe, "prev_btn", back_button);
-       }
-}