Tizen release 1.0
authorKim Kibum <kb0929.kim@samsung.com>
Mon, 9 Apr 2012 03:12:28 +0000 (12:12 +0900)
committerKim Kibum <kb0929.kim@samsung.com>
Mon, 9 Apr 2012 03:12:28 +0000 (12:12 +0900)
38 files changed:
CMakeLists.txt [new file with mode: 0644]
COPYRIGHT [new file with mode: 0644]
NOTICE [new file with mode: 0644]
debian/changelog [new file with mode: 0755]
debian/compat [new file with mode: 0755]
debian/control [new file with mode: 0644]
debian/copyright [new file with mode: 0755]
debian/dirs [new file with mode: 0755]
debian/docs [new file with mode: 0755]
debian/libug-setting-theme-efl.install.in [new file with mode: 0755]
debian/libug-setting-theme-efl.postinst [new file with mode: 0755]
debian/rules [new file with mode: 0755]
packaging/libug-setting-theme-efl.spec [new file with mode: 0644]
po/CMakeLists.txt [new file with mode: 0644]
po/POTFILES.in [new file with mode: 0644]
po/de.po [new file with mode: 0644]
po/el.po [new file with mode: 0644]
po/en_GB.po [new file with mode: 0644]
po/en_US.po [new file with mode: 0644]
po/es.po [new file with mode: 0644]
po/fr.po [new file with mode: 0644]
po/it.po [new file with mode: 0644]
po/ja.po [new file with mode: 0644]
po/ko.po [new file with mode: 0644]
po/nl.po [new file with mode: 0644]
po/pt.po [new file with mode: 0644]
po/ru.po [new file with mode: 0644]
po/tr_TR.po [new file with mode: 0644]
po/ug-setting-theme-efl.pot [new file with mode: 0644]
po/update-po.sh [new file with mode: 0755]
po/zh_CN.po [new file with mode: 0644]
po/zh_HK.po [new file with mode: 0644]
po/zh_TW.po [new file with mode: 0644]
resources/images/tizen-black.png [new file with mode: 0644]
resources/images/tizen.png [new file with mode: 0644]
setting-theme-efl.c [new file with mode: 0755]
setting-theme-efl.edc [new file with mode: 0644]
setting-theme-efl.h [new file with mode: 0755]

diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644 (file)
index 0000000..1cef8c2
--- /dev/null
@@ -0,0 +1,43 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+PROJECT(ug-setting-theme-efl C)
+
+SET(PREFIX ${CMAKE_INSTALL_PREFIX})
+SET(EXEC_PREFIX "\${prefix}")
+SET(LIBDIR "\${prefix}/lib")
+SET(INCLUDEDIR "\${prefix}/include")
+SET(VERSION 0.1.0)
+
+SET(SRCS setting-theme-efl.c)
+
+INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
+
+INCLUDE(FindPkgConfig)
+pkg_check_modules(pkgs REQUIRED elementary ui-gadget x11 vconf aul efreet-mime eina)
+
+FOREACH(flag ${pkgs_CFLAGS})
+       SET(EXTRA_CXXFLAGS "${EXTRA_CXXFLAGS} ${flag}")
+ENDFOREACH(flag)
+
+SET(EXTRA_CXXFLAGS "${EXTRA_CXXFLAGS} -fvisibility=hidden -Wall")
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CXXFLAGS}")
+SET(CMAKE_C_FLAGS ${CMAKE_CXX_FLAGS})
+
+ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
+
+ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
+SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION 0.1.0)
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
+
+ADD_CUSTOM_TARGET(setting-theme-efl.edj
+               COMMAND edje_cc
+               ${CMAKE_SOURCE_DIR}/setting-theme-efl.edc ${CMAKE_BINARY_DIR}/setting-theme-efl.edj
+        DEPENDS ${CMAKE_SOURCE_DIR}/setting-theme-efl.edc
+)
+
+ADD_DEPENDENCIES(${PROJECT_NAME} setting-theme-efl.edj)
+
+INSTALL(TARGETS ${PROJECT_NAME} DESTINATION lib)
+INSTALL(FILES ${CMAKE_BINARY_DIR}/setting-theme-efl.edj DESTINATION /opt/ug/res/edje/ug-setting-theme-efl)
+INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/resources/images/ DESTINATION /opt/ug/res/images/ug-setting-theme-efl FILES_MATCHING PATTERN "*.png")
+
+ADD_SUBDIRECTORY(po)
diff --git a/COPYRIGHT b/COPYRIGHT
new file mode 100644 (file)
index 0000000..0363c81
--- /dev/null
+++ b/COPYRIGHT
@@ -0,0 +1,27 @@
+/*
+
+   Copyright (c) 2000-2012 Samsung Electronics Co., Ltd All Rights Reserved
+
+   This file is part of libug-setting-theme-efl
+   Written by Shinwoo Kim <cinoo.kim@samsung.com>,
+              ChunEon Park <chuneon.park@samsung.com>,
+              Woohyun Jung <wh0705.jung@samsung.com>,
+              Jaehwan Kim <jae.hwan.kim@samsung.com>,
+              Juyung Seo <juyung.seo@samsung.com>,
+
+   PROPRIETARY/CONFIDENTIAL
+
+   This software is the confidential and proprietary information of
+   SAMSUNG ELECTRONICS ("Confidential Information"). You shall not
+   disclose such Confidential Information and shall use it only in
+   accordance with the terms of the license agreement you entered
+   into with SAMSUNG ELECTRONICS.
+
+   SAMSUNG make no representations or warranties about the suitability
+   of the software, either express or implied, including but not limited
+   to the implied warranties of merchantability, fitness for a particular
+   purpose, or non-infringement. SAMSUNG shall not be liable for any
+   damages suffered by licensee as a result of using, modifying or
+   distributing this software or its derivatives.
+
+*/
diff --git a/NOTICE b/NOTICE
new file mode 100644 (file)
index 0000000..4297ee3
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1 @@
+Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
diff --git a/debian/changelog b/debian/changelog
new file mode 100755 (executable)
index 0000000..ee233fa
--- /dev/null
@@ -0,0 +1,519 @@
+libug-setting-theme-efl (0.1.0-65) unstable; urgency=low
+
+  * Package Upload
+  * Git: slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-65
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Tue, 13 Mar 2012 19:30:48 +0900
+
+libug-setting-theme-efl (0.1.0-64) unstable; urgency=low
+
+  * Package Upload
+  * Git: slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-64
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Thu, 16 Feb 2012 17:21:37 +0900
+
+libug-setting-theme-efl (0.1.0-63) unstable; urgency=low
+
+  * Package Upload
+  * Git: slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-63
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Thu, 12 Jan 2012 16:24:28 +0900
+
+libug-setting-theme-efl (0.1.0-62) unstable; urgency=low
+
+  * Package Upload
+  * Git: slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-62
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Mon, 19 Dec 2011 14:01:50 +0900
+
+libug-setting-theme-efl (0.1.0-61) unstable; urgency=low
+
+  * Package Upload
+  * Git: slp-scm.sec.samsung.net:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-61
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Mon, 14 Nov 2011 16:46:50 +0900
+
+libug-setting-theme-efl (0.1.0-60) unstable; urgency=low
+
+  * Package Upload
+  * Git: slp-scm.sec.samsung.net:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-60
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Mon, 07 Nov 2011 20:16:58 +0900
+
+libug-setting-theme-efl (0.1.0-59) unstable; urgency=low
+
+  * Package Upload
+  * Git: slp-scm.sec.samsung.net:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-59
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Thu, 03 Nov 2011 20:41:41 +0900
+
+libug-setting-theme-efl (0.1.0-58) unstable; urgency=low
+
+  * Package Upload
+  * Git: slp-scm.sec.samsung.net:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-58
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Sat, 15 Oct 2011 12:38:55 +0900
+
+libug-setting-theme-efl (0.1.0-57) unstable; urgency=low
+
+  * Package Upload
+  * Git: slp-scm.sec.samsung.net:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-57
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Fri, 14 Oct 2011 16:46:45 +0900
+
+libug-setting-theme-efl (0.1.0-56) unstable; urgency=low
+
+  * Package Upload
+  * Git: slp-scm.sec.samsung.net:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-56
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Fri, 14 Oct 2011 10:19:14 +0900
+
+libug-setting-theme-efl (0.1.0-55) unstable; urgency=low
+
+  * Package Reupload
+  * Git: slp-scm.sec.samsung.net:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-55
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Fri, 14 Oct 2011 09:46:57 +0900
+
+libug-setting-theme-efl (0.1.0-54) unstable; urgency=low
+
+  * Package Reupload
+  * Git: slp-scm.sec.samsung.net:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-54
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Thu, 13 Oct 2011 20:50:05 +0900
+
+libug-setting-theme-efl (0.1.0-53) unstable; urgency=low
+
+  * Package Upload
+  * Git: slp-scm.sec.samsung.net:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-53
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Thu, 13 Oct 2011 20:45:29 +0900
+
+libug-setting-theme-efl (0.1.0-52) unstable; urgency=low
+
+  * Package Upload
+  * Git: slp-scm.sec.samsung.net:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-52
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Fri, 07 Oct 2011 17:36:43 +0900
+
+libug-setting-theme-efl (0.1.0-51) unstable; urgency=low
+
+  * Package Reupload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-51
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Wed, 05 Oct 2011 21:01:28 +0900
+
+libug-setting-theme-efl (0.1.0-50) unstable; urgency=low
+
+  * Package Upload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-50
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Wed, 05 Oct 2011 20:51:30 +0900
+
+libug-setting-theme-efl (0.1.0-49) unstable; urgency=low
+
+  * Package Upload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-49
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Fri, 23 Sep 2011 13:18:57 +0900
+
+libug-setting-theme-efl (0.1.0-48) unstable; urgency=low
+
+  * Package Upload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-48
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Tue, 20 Sep 2011 11:04:33 +0900
+
+libug-setting-theme-efl (0.1.0-47) unstable; urgency=low
+
+  * Package Upload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-47
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Mon, 19 Sep 2011 20:38:56 +0900
+
+libug-setting-theme-efl (0.1.0-46) unstable; urgency=low
+
+  * Package Reupload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-46
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Wed, 07 Sep 2011 20:11:30 +0900
+
+libug-setting-theme-efl (0.1.0-45) unstable; urgency=low
+
+  * Package Reupload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-45
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Wed, 07 Sep 2011 10:29:38 +0900
+
+libug-setting-theme-efl (0.1.0-44) unstable; urgency=low
+
+  * Package Reupload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-44
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Tue, 06 Sep 2011 09:51:44 +0900
+
+libug-setting-theme-efl (0.1.0-43) unstable; urgency=low
+
+  * Package Reupload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-43
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Thu, 01 Sep 2011 19:27:25 +0900
+
+libug-setting-theme-efl (0.1.0-42) unstable; urgency=low
+
+  * Package Reupload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-42
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Wed, 31 Aug 2011 19:50:09 +0900
+
+libug-setting-theme-efl (0.1.0-41) unstable; urgency=low
+
+  * Package Reupload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-41
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Wed, 17 Aug 2011 20:15:26 +0900
+
+libug-setting-theme-efl (0.1.0-40) unstable; urgency=low
+
+  * Package Upload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-40
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Wed, 17 Aug 2011 19:37:21 +0900
+
+libug-setting-theme-efl (0.1.0-39) unstable; urgency=low
+
+  * Package Upload: remove unnecessary code - setting default bg 
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-39
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Thu, 14 Jul 2011 22:09:24 +0900
+
+libug-setting-theme-efl (0.1.0-38) unstable; urgency=low
+
+  * Package Upload: save some runnig application from termination, check null
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-38
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Wed, 13 Jul 2011 12:15:04 +0900
+
+libug-setting-theme-efl (0.1.0-37) unstable; urgency=low
+
+  * Package Upload: remove prefix deb 
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-37
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Tue, 12 Jul 2011 17:59:19 +0900
+
+libug-setting-theme-efl (0.1.0-36) unstable; urgency=low
+
+  * Package Upload: align radio button 
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-36
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Wed, 06 Jul 2011 22:52:42 +0900
+
+libug-setting-theme-efl (0.1.0-35) unstable; urgency=low
+
+  * Package Upload: change navigationbar back button
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-35
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Mon, 27 Jun 2011 14:35:51 +0900
+
+libug-setting-theme-efl (0.1.0-34) unstable; urgency=low
+
+  * Package Upload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-34
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Mon, 20 Jun 2011 21:28:50 +0900
+
+libug-setting-theme-efl (0.1.0-33) unstable; urgency=low
+
+  * Package Upload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-33
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Tue, 19 Apr 2011 15:02:31 +0900
+
+libug-setting-theme-efl (0.1.0-32) unstable; urgency=low
+
+  * Package Upload
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-32
+
+ -- Shinwoo Kim <cinoo.kim@samsung.com>  Sat, 02 Apr 2011 13:01:38 +0900
+
+libug-setting-theme-efl (0.1.0-31) unstable; urgency=low
+
+  * version up
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-31
+
+ -- Hyoyoung Chang <hyoyoung.chang@samsung.com>  Tue, 22 Mar 2011 22:21:35 +0900
+
+libug-setting-theme-efl (0.1.0-30) unstable; urgency=low
+
+  * filter out beat theme
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-30
+
+ -- Hyoyoung Chang <hyoyoung.chang@samsung.com>  Tue, 22 Mar 2011 21:40:02 +0900
+
+libug-setting-theme-efl (0.1.0-29) unstable; urgency=low
+
+  * change default theme to nbeat
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-29
+
+ -- Hyoyoung Chang <hyoyoung.chang@samsung.com>  Tue, 22 Mar 2011 20:18:11 +0900
+
+libug-setting-theme-efl (0.1.0-28) unstable; urgency=low
+
+  * revert theme change
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-28
+
+ -- Hyoyoung Chang <hyoyoung.chang@samsung.com>  Mon, 21 Mar 2011 17:05:43 +0900
+
+libug-setting-theme-efl (0.1.0-27) unstable; urgency=low
+
+  * revert theme change
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-27
+
+ -- Hyoyoung Chang <hyoyoung.chang@samsung.com>  Mon, 21 Mar 2011 17:01:13 +0900
+
+libug-setting-theme-efl (0.1.0-26) unstable; urgency=low
+
+  * change default theme from beat to nbeat
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-26
+
+ -- Hyoyoung Chang <hyoyoung.chang@samsung.com>  Mon, 21 Mar 2011 16:47:45 +0900
+
+libug-setting-theme-efl (0.1.0-25) unstable; urgency=low
+
+  * fixed a problem popup raised up twice when clicked radio button
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-25 
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Fri, 11 Mar 2011 19:02:12 +0900
+
+libug-setting-theme-efl (0.1.0-24) unstable; urgency=low
+
+  * Fix Elementary Widget vconf path issue
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-24 
+
+ -- Junghyun Kim <jh1114.kim@samsung.com>  Tue, 08 Feb 2011 11:06:45 +0900
+
+libug-setting-theme-efl (0.1.0-23) unstable; urgency=low
+
+  * Fix bug about change ICON theme
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-23 
+
+ -- Junghyun Kim <jh1114.kim@samsung.com>  Mon, 07 Feb 2011 13:18:13 +0900
+
+libug-setting-theme-efl (0.1.0-22) unstable; urgency=low
+
+  * Apply VCONF DAC for meuscreen 
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-22 
+
+ -- Junghyun Kim <jh1114.kim@samsung.com>  Fri, 28 Jan 2011 16:04:18 +0900
+
+libug-setting-theme-efl (0.1.0-21) unstable; urgency=low
+
+  * fix the postinst  
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-21
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Thu, 27 Jan 2011 13:19:55 +0900
+
+libug-setting-theme-efl (0.1.0-20) unstable; urgency=low
+
+  * fix the postinst  
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-20
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Mon, 24 Jan 2011 21:28:56 +0900
+
+libug-setting-theme-efl (0.1.0-19) unstable; urgency=low
+
+  * modified for security policy and install path 
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-19
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Wed, 19 Jan 2011 19:55:26 +0900
+
+libug-setting-theme-efl (0.1.0-18) unstable; urgency=low
+
+  * added a line to fliter "default-desktop.edj"
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-18
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Tue, 18 Jan 2011 22:28:32 +0900
+
+libug-setting-theme-efl (0.1.0-17) unstable; urgency=low
+
+  * applied end key event
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-17
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Thu, 13 Jan 2011 16:04:56 +0900
+
+libug-setting-theme-efl (0.1.0-16) unstable; urgency=low
+
+  * fixed for the downloadble theme files 
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-16
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Tue, 11 Jan 2011 21:31:38 +0900
+
+libucg-setting-theme-efl (0.1.0-15) unstable; urgency=low
+
+  * added evas_object_del callback for the base layout
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-15
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Thu, 30 Dec 2010 17:28:35 +0900
+
+libug-setting-theme-efl (0.1.0-14) unstable; urgency=low
+
+  * Fix code for prevent to terminate menu-screen
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-14 
+
+ -- Junghyun Kim <jh1114.kim@samsung.com>  Thu, 23 Dec 2010 17:50:17 +0900
+
+libug-setting-theme-efl (0.1.0-13) unstable; urgency=low
+
+  * modified to delete_me. in back button callback  
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-13
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Tue, 21 Dec 2010 13:38:41 +0900
+
+libug-setting-theme-efl (0.1.0-12) unstable; urgency=low
+
+  * modified cancel -> back and applied multi-language
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-12
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Thu, 09 Dec 2010 20:49:41 +0900
+
+libug-setting-theme-efl (0.1.0-11) unstable; urgency=low
+
+  * applied second patch by jh1114.kim@samsung.com
+  * Git: 165.213.180.234:slp/pkgs/l/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-11
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Thu, 09 Dec 2010 16:59:21 +0900
+
+libug-setting-theme-efl (0.1.0-10) unstable; urgency=low
+
+  * fixed popup description spelling. 
+  * Git: 165.213.180.234:/git/slp/pkgs/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-10
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Fri, 12 Nov 2010 11:27:56 +0900
+
+libug-setting-theme-efl (0.1.0-9) unstable; urgency=low
+
+  * fixed popup description spelling. 
+  * Git: 165.213.180.234:/git/slp/pkgs/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-9
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Sat, 30 Oct 2010 17:51:23 +0900
+
+libug-setting-theme-efl (0.1.0-8) unstable; urgency=low
+
+  * updated multi language
+  * Git: 165.213.180.234:/git/slp/pkgs/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-8
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Thu, 28 Oct 2010 19:09:49 +0900
+
+libug-setting-theme-efl (0.1.0-7) unstable; urgency=low
+
+  * added a function for deleting idle images
+  * Git: 165.213.180.234:/git/slp/pkgs/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-7
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Mon, 25 Oct 2010 17:38:43 +0900
+
+libug-setting-theme-efl (0.1.0-6) unstable; urgency=low
+
+  * added a function for deleting idle images
+  * Git: 165.213.180.234:/git/slp/pkgs/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-6
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Fri, 22 Oct 2010 21:05:15 +0900
+
+libug-setting-theme-efl (0.1.0-5) unstable; urgency=low
+
+  * fixed THEME title in navigation bar 
+  * Git: 165.213.180.234:/git/slp/pkgs/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-5 
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Mon, 18 Oct 2010 13:09:57 +0900
+
+libug-setting-theme-efl (0.1.0-4) unstable; urgency=low
+
+  * fixed radio position bug.
+  * Git: 165.213.180.234:/git/slp/pkgs/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-4 
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Fri, 15 Oct 2010 19:17:07 +0900
+
+libug-setting-theme-efl (0.1.0-3) unstable; urgency=low
+
+  * fixed radio position bug.
+  * Git: 165.213.180.234:/git/slp/pkgs/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-3 
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Tue, 12 Oct 2010 14:20:27 +0900
+
+libug-setting-theme-efl (0.1.0-2) unstable; urgency=low
+
+  * repackaging. 
+  * Git: 165.213.180.234:/git/slp/pkgs/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-2 
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Mon, 11 Oct 2010 14:23:15 +0900
+
+libug-setting-theme-efl (0.1.0-1) unstable; urgency=low
+
+  * Initial Upload
+  * Git: 165.213.180.234:/git/slp/pkgs/libug-setting-theme-efl
+  * Tag: libug-setting-theme-efl_0.1.0-1 
+
+ -- ChunEon Park <chuneon.park@samsung.com>  Sat, 09 Oct 2010 20:19:49 +0900
diff --git a/debian/compat b/debian/compat
new file mode 100755 (executable)
index 0000000..7ed6ff8
--- /dev/null
@@ -0,0 +1 @@
+5
diff --git a/debian/control b/debian/control
new file mode 100644 (file)
index 0000000..404eb76
--- /dev/null
@@ -0,0 +1,19 @@
+Source: libug-setting-theme-efl
+Section: misc
+Priority: extra
+Maintainer: Shinwoo Kim <cinoo.kim@samsung.com>, ChunEon Park <chuneon.park@samsung.com>, Woohyun Jung <wh0705.jung@samsung.com>, Jaehwan Kim <jae.hwan.kim@samsung.com>, Juyung Seo <juyung.seo@samsung.com>
+Uploaders: Shinwoo Kim <cinoo.kim@samsung.com>
+Build-Depends: debhelper (>= 5), autotools-dev, libelm-dev, libslp-setting-dev, libui-gadget-dev, libbundle-dev, libaul-1-dev, libefreet-dev, libeina-dev
+Standards-Version: 0.1.0
+
+Package: libug-setting-theme-efl
+Section: misc
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Setting Theme UI gadget
+
+Package: libug-setting-theme-efl-dbg
+Section: debug
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, libug-setting-theme-efl (= ${binary:Version})
+Description: Setting Theme UI gadget (debugging symbols)
diff --git a/debian/copyright b/debian/copyright
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/debian/dirs b/debian/dirs
new file mode 100755 (executable)
index 0000000..ca882bb
--- /dev/null
@@ -0,0 +1,2 @@
+usr/bin
+usr/sbin
diff --git a/debian/docs b/debian/docs
new file mode 100755 (executable)
index 0000000..a0f0008
--- /dev/null
@@ -0,0 +1 @@
+CMakeLists.txt
diff --git a/debian/libug-setting-theme-efl.install.in b/debian/libug-setting-theme-efl.install.in
new file mode 100755 (executable)
index 0000000..370479a
--- /dev/null
@@ -0,0 +1,5 @@
+@PREFIX@/lib/*
+@PREFIX@/res/locale/*
+@PREFIX@/res/edje/*
+@PREFIX@/res/images/*
+
diff --git a/debian/libug-setting-theme-efl.postinst b/debian/libug-setting-theme-efl.postinst
new file mode 100755 (executable)
index 0000000..10be877
--- /dev/null
@@ -0,0 +1,56 @@
+#!/bin/sh
+#This is setting postinst file
+
+GOPTION=""
+if [ ${USER} == "root" ]
+then
+       GOPTION="-g 6514"
+fi
+
+WIDGET_THEME=""
+SELECTED_THEME=""
+EDJ_SEPARATOR=":"
+THEME_PATH="/usr/share/elementary/themes/"
+GREY_HD="grey-hd"
+BLACK_HD="tizen-black-hd"
+WHITE_HD="tizen-hd"
+EDJ_EXT=".edj"
+EDJ_GREY_HD=$THEME_PATH$GREY_HD$EDJ_EXT
+EDJ_BLACK_HD=$THEME_PATH$BLACK_HD$EDJ_EXT
+EDJ_WHITE_HD=$THEME_PATH$WHITE_HD$EDJ_EXT
+
+if [ -e $EDJ_GREY_HD ]
+then
+       WIDGET_THEME=$EDJ_GREY_HD
+       SELECTED_THEME=$GREY_HD
+fi
+
+if [ -e $EDJ_BLACK_HD ]
+then
+       if [ $WIDGET_THEME ]
+       then
+               WIDGET_THEME=$WIDGET_THEME$EDJ_SEPARATOR$EDJ_BLACK_HD
+       else
+               WIDGET_THEME=$EDJ_BLACK_HD
+               SELECTED_THEME=$BLACK_HD
+       fi
+fi
+
+if [ -e $EDJ_WHITE_HD ]
+then
+       if [ $WIDGET_THEME ]
+       then
+               WIDGET_THEME=$WIDGET_THEME$EDJ_SEPARATOR$EDJ_WHITE_HD
+       else
+               WIDGET_THEME=$EDJ_WHITE_HD
+               SELECTED_THEME=$WHITE_HD
+       fi
+fi
+
+if [ $WIDGET_THEME ]
+then
+       vconftool $GOPTION set -t string db/setting/widget_theme $WIDGET_THEME
+       vconftool $GOPTION set -t string db/setting/selected_theme $SELECTED_THEME
+fi
+
+vconftool $GOPTION set -t string db/setting/theme "default"
diff --git a/debian/rules b/debian/rules
new file mode 100755 (executable)
index 0000000..de045bb
--- /dev/null
@@ -0,0 +1,127 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+CFLAGS ?= -Wall -g
+CXXFLAGS ?=  -Wall -g
+LDFLAGS ?= 
+PREFIX ?= /opt/ug
+DATADIR ?= /opt/ug/res
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+       CFLAGS += -O0
+       CXXFLAGS += -O0
+else
+       CFLAGS += -O2
+       CXXFLAGS += -O2
+endif
+
+LDFLAGS += -Wl,--rpath=$(PREFIX)/lib -Wl,--as-needed
+
+CMAKE_TMP_DIR = $(CURDIR)/cmake_tmp
+
+
+configure: configure-stamp
+configure-stamp:
+       dh_testdir
+       # Add here commands to configure the package.
+       mkdir -p $(CMAKE_TMP_DIR);
+       cd $(CMAKE_TMP_DIR); CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)" cmake .. -DCMAKE_INSTALL_PREFIX=$(PREFIX)
+
+       touch configure-stamp
+
+build: build-stamp
+
+build-stamp: configure-stamp 
+       dh_testdir
+
+       # Add here commands to compile the package.
+       cd $(CMAKE_TMP_DIR) && $(MAKE)
+       #docbook-to-man debian/wavplayer.sgml > wavplayer.1
+
+       for f in `find $(CURDIR)/debian/ -name "*.in"`; do \
+               cat $$f > $${f%.in}; \
+               sed -i -e "s#@PREFIX@#$(PREFIX)#g" $${f%.in}; \
+               sed -i -e "s#@DATADIR@#$(DATADIR)#g" $${f%.in}; \
+       done
+
+
+       touch $@
+
+clean:
+       dh_testdir
+       dh_testroot
+       rm -f build-stamp configure-stamp
+
+       # Add here commands to clean up after the build process.
+       -cd $(CMAKE_TMP_DIR) && $(MAKE) clean
+       rm -rf $(CMAKE_TMP_DIR)
+
+       rm -rf CMakeCache.txt
+       rm -rf CMakeFiles
+       rm -rf cmake_install.cmake
+       rm -rf Makefile
+       rm -rf install_manifest.txt
+       rm -rf *.so
+
+       for f in `find $(CURDIR)/debian/ -name "*.in"`; do \
+               rm -f $${f%.in}; \
+       done
+
+       dh_clean 
+
+install: build
+       dh_testdir
+       dh_testroot
+       dh_clean -k 
+       dh_installdirs
+
+       # Add here commands to install the package into debian/wavplayer.
+       cd $(CMAKE_TMP_DIR) && $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install
+
+
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+       dh_testdir
+       dh_testroot
+       dh_installchangelogs 
+#      dh_installdocs
+       dh_installexamples
+       dh_install --sourcedir=debian/tmp
+#      dh_installmenu
+#      dh_installdebconf       
+#      dh_installlogrotate
+#      dh_installemacsen
+#      dh_installpam
+#      dh_installmime
+#      dh_python
+#      dh_installinit
+#      dh_installcron
+#      dh_installinfo
+       dh_installman
+       dh_link
+#      dh_strip
+       dh_strip --dbg-package=libug-setting-theme-efl-dbg
+       dh_compress
+       dh_fixperms
+#      dh_perl
+       dh_makeshlibs
+       dh_installdeb
+       dh_shlibdeps
+       dh_gencontrol
+       dh_md5sums
+       dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install configure
diff --git a/packaging/libug-setting-theme-efl.spec b/packaging/libug-setting-theme-efl.spec
new file mode 100644 (file)
index 0000000..d0a3eba
--- /dev/null
@@ -0,0 +1,101 @@
+%define PREFIX /opt/ug
+
+Name:       libug-setting-theme-efl
+Summary:    ug theme setting efl library
+Version:       0.1.0
+Release:    2
+Group:      TBD
+License:    Samsung
+Source0:    %{name}-%{version}.tar.gz
+BuildRequires: pkgconfig(elementary)
+BuildRequires: pkgconfig(ui-gadget)
+BuildRequires: pkgconfig(x11)
+BuildRequires: pkgconfig(vconf)
+BuildRequires: pkgconfig(aul)
+BuildRequires: pkgconfig(efreet-mime)
+BuildRequires: pkgconfig(eina)
+BuildRequires: cmake
+BuildRequires: gettext-tools
+BuildRequires: edje-tools
+Requires(post): /sbin/ldconfig
+Requires(post): /usr/bin/vconftool
+requires(postun): /sbin/ldconfig
+%description
+ug theme setting efl library.
+
+
+%prep
+%setup -q
+
+%build
+LDFLAGS+="-Wl,--rpath=%{PREFIX}/lib -Wl,--as-needed";export LDFLAGS
+cmake . -DCMAKE_INSTALL_PREFIX=%{PREFIX}
+make %{?jobs:-j%jobs}
+
+%install
+%make_install
+
+
+%find_lang ug-setting-theme-efl
+
+%post
+/sbin/ldconfig
+
+GOPTION="-g 6514"
+WIDGET_THEME=""
+SELECTED_THEME=""
+EDJ_SEPARATOR=":"
+THEME_PATH="/usr/share/elementary/themes/"
+GREY_HD="grey-hd"
+BLACK_HD="tizen-black-hd"
+WHITE_HD="tizen-hd"
+EDJ_EXT=".edj"
+EDJ_GREY_HD=$THEME_PATH$GREY_HD$EDJ_EXT
+EDJ_BLACK_HD=$THEME_PATH$BLACK_HD$EDJ_EXT
+EDJ_WHITE_HD=$THEME_PATH$WHITE_HD$EDJ_EXT
+
+if [ -e $EDJ_GREY_HD ]
+then
+       WIDGET_THEME=$EDJ_GREY_HD
+       SELECTED_THEME=$GREY_HD
+fi
+
+if [ -e $EDJ_BLACK_HD ]
+then
+       if [ $WIDGET_THEME ]
+       then
+               WIDGET_THEME=$WIDGET_THEME$EDJ_SEPARATOR$EDJ_BLACK_HD
+       else
+               WIDGET_THEME=$EDJ_BLACK_HD
+               SELECTED_THEME=$BLACK_HD
+       fi
+fi
+
+if [ -e $EDJ_WHITE_HD ]
+then
+       if [ $WIDGET_THEME ]
+       then
+               WIDGET_THEME=$WIDGET_THEME$EDJ_SEPARATOR$EDJ_WHITE_HD
+       else
+               WIDGET_THEME=$EDJ_WHITE_HD
+               SELECTED_THEME=$WHITE_HD
+       fi
+fi
+
+if [ $WIDGET_THEME ]
+then
+       vconftool $GOPTION set -t string db/setting/widget_theme $WIDGET_THEME
+       vconftool $GOPTION set -t string db/setting/selected_theme $SELECTED_THEME
+fi
+
+vconftool $GOPTION set -t string db/setting/theme "default"
+
+
+%postun -p /sbin/ldconfig
+
+%files -f ug-setting-theme-efl.lang
+/opt/ug/lib/libug-setting-theme-efl.so
+/opt/ug/lib/libug-setting-theme-efl.so.0.1.0
+/opt/ug/res/edje/ug-setting-theme-efl/setting-theme-efl.edj
+/opt/ug/res/images/ug-setting-theme-efl/tizen-black.png
+/opt/ug/res/images/ug-setting-theme-efl/tizen.png
diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt
new file mode 100644 (file)
index 0000000..2ebbf44
--- /dev/null
@@ -0,0 +1,24 @@
+# for i18n
+
+SET(POFILES de.po el.po en_GB.po en_US.po es.po fr.po it.po ja.po ko.po nl.po pt.po ru.po tr_TR.po zh_CN.po zh_HK.po zh_TW.po)
+
+SET(MSGFMT "/usr/bin/msgfmt")
+
+FOREACH(pofile ${POFILES})
+       SET(pofile ${CMAKE_CURRENT_SOURCE_DIR}/${pofile})
+       MESSAGE("PO: ${pofile}")
+       GET_FILENAME_COMPONENT(absPofile ${pofile} ABSOLUTE)
+       GET_FILENAME_COMPONENT(lang ${absPofile} NAME_WE)
+       SET(moFile ${CMAKE_CURRENT_BINARY_DIR}/${lang}.mo)
+       ADD_CUSTOM_COMMAND(
+                       OUTPUT ${moFile}
+                       COMMAND ${MSGFMT} -o ${moFile} ${absPofile}
+                       DEPENDS ${absPofile}
+       )
+       INSTALL(FILES ${moFile}
+                       DESTINATION res/locale/${lang}/LC_MESSAGES RENAME ${PROJECT_NAME}.mo)
+       SET(moFiles ${moFiles} ${moFile})
+ENDFOREACH(pofile)
+
+MESSAGE(".mo files: ${moFiles}")
+ADD_CUSTOM_TARGET(po ALL DEPENDS ${moFiles})
diff --git a/po/POTFILES.in b/po/POTFILES.in
new file mode 100644 (file)
index 0000000..4f34346
--- /dev/null
@@ -0,0 +1,2 @@
+# List of source files containing translatable strings.
+setting-theme-efl.c
diff --git a/po/de.po b/po/de.po
new file mode 100644 (file)
index 0000000..36b6d67
--- /dev/null
+++ b/po/de.po
@@ -0,0 +1,16 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "Winset"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "Abbrechen"
+
+msgid "IDS_COM_POP_YES"
+msgstr "Ja"
+msgid "IDS_COM_POP_NO"
+msgstr "Nein"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "Zurück"
+
+
diff --git a/po/el.po b/po/el.po
new file mode 100644 (file)
index 0000000..6db03b9
--- /dev/null
+++ b/po/el.po
@@ -0,0 +1,17 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "Θέμα"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "Ακύρωση"
+
+msgid "IDS_COM_POP_YES"
+msgstr "Ναι"
+
+msgid "IDS_COM_POP_NO"
+msgstr "Όχι"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "Назад"
+
+
+
diff --git a/po/en_GB.po b/po/en_GB.po
new file mode 100644 (file)
index 0000000..84d3374
--- /dev/null
@@ -0,0 +1,39 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-10-28 16:43+0900\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: setting-theme-efl.c:306
+msgid "All Apps will bel closed<br> to change theme"
+msgstr ""
+
+#: setting-theme-efl.c:475
+msgid "IDS_ST_BODY_THEME"
+msgstr "Winset"
+
+msgid "IDS_COM_POP_YES"
+msgstr "Yes"
+
+msgid "IDS_COM_POP_NO"
+msgstr "No"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "Back"
+
+
diff --git a/po/en_US.po b/po/en_US.po
new file mode 100644 (file)
index 0000000..ffa9828
--- /dev/null
@@ -0,0 +1,14 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "Winset"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_COM_POP_YES"
+msgstr "Yes"
+
+msgid "IDS_COM_POP_NO"
+msgstr "No"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "Back"
diff --git a/po/es.po b/po/es.po
new file mode 100644 (file)
index 0000000..2aac59d
--- /dev/null
+++ b/po/es.po
@@ -0,0 +1,15 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "Tema"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "Cancelar"
+
+msgid "IDS_COM_POP_YES"
+msgstr "Sí"
+
+msgid "IDS_COM_POP_NO"
+msgstr "No"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "Atrás"
+
diff --git a/po/fr.po b/po/fr.po
new file mode 100644 (file)
index 0000000..83b4a57
--- /dev/null
+++ b/po/fr.po
@@ -0,0 +1,15 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "Thème"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "Annuler"
+
+msgid "IDS_COM_POP_YES"
+msgstr "Oui"
+
+msgid "IDS_COM_POP_NO"
+msgstr "Non"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "Retour"
+
diff --git a/po/it.po b/po/it.po
new file mode 100644 (file)
index 0000000..334b799
--- /dev/null
+++ b/po/it.po
@@ -0,0 +1,15 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "Tema"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "Annulla"
+
+msgid "IDS_COM_POP_YES"
+msgstr "Sì"
+
+msgid "IDS_COM_POP_NO"
+msgstr "No"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "Indietro"
+
diff --git a/po/ja.po b/po/ja.po
new file mode 100644 (file)
index 0000000..891ef9a
--- /dev/null
+++ b/po/ja.po
@@ -0,0 +1,15 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "テーマ"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "キャンセル"
+
+msgid "IDS_COM_POP_YES"
+msgstr "OK"
+
+msgid "IDS_COM_POP_NO"
+msgstr "キャンセル"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "戻る"
+
diff --git a/po/ko.po b/po/ko.po
new file mode 100644 (file)
index 0000000..62008d9
--- /dev/null
+++ b/po/ko.po
@@ -0,0 +1,16 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "테마"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "취소"
+
+msgid "IDS_COM_POP_YES"
+msgstr "예"
+
+msgid "IDS_COM_POP_NO"
+msgstr "아니요"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "이전"
+
+
diff --git a/po/nl.po b/po/nl.po
new file mode 100644 (file)
index 0000000..e426716
--- /dev/null
+++ b/po/nl.po
@@ -0,0 +1,15 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "Thema"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "Annuleer"
+
+msgid "IDS_COM_POP_YES"
+msgstr "Ja"
+
+msgid "IDS_COM_POP_NO"
+msgstr "Nee"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "Terug"
+
diff --git a/po/pt.po b/po/pt.po
new file mode 100644 (file)
index 0000000..d9a724a
--- /dev/null
+++ b/po/pt.po
@@ -0,0 +1,15 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "Tema"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "Cancelar"
+
+msgid "IDS_COM_POP_YES"
+msgstr "Sim"
+
+msgid "IDS_COM_POP_NO"
+msgstr "Não"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "Voltar"
+
diff --git a/po/ru.po b/po/ru.po
new file mode 100644 (file)
index 0000000..60600f0
--- /dev/null
+++ b/po/ru.po
@@ -0,0 +1,15 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "Тема"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "Отмена"
+
+msgid "IDS_COM_POP_YES"
+msgstr "Да"
+
+msgid "IDS_COM_POP_NO"
+msgstr "Нет"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "Назад"
+
diff --git a/po/tr_TR.po b/po/tr_TR.po
new file mode 100644 (file)
index 0000000..a26e9d2
--- /dev/null
@@ -0,0 +1,15 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "Tema"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "İptal"
+
+msgid "IDS_COM_POP_YES"
+msgstr "Evet"
+
+msgid "IDS_COM_POP_NO"
+msgstr "Hayır"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "Geri"
+
diff --git a/po/ug-setting-theme-efl.pot b/po/ug-setting-theme-efl.pot
new file mode 100644 (file)
index 0000000..d61bf9f
--- /dev/null
@@ -0,0 +1,37 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-10-28 16:56+0900\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: setting-theme-efl.c:306
+msgid "All Apps will bel closed<br> to change theme"
+msgstr ""
+
+#: setting-theme-efl.c:307
+msgid "Yes"
+msgstr ""
+
+#: setting-theme-efl.c:307
+msgid "No"
+msgstr ""
+
+#: setting-theme-efl.c:461
+msgid "Cancel"
+msgstr ""
+
+#: setting-theme-efl.c:475
+msgid "IDS_ST_BODY_THEME"
+msgstr ""
diff --git a/po/update-po.sh b/po/update-po.sh
new file mode 100755 (executable)
index 0000000..3bc90fd
--- /dev/null
@@ -0,0 +1,60 @@
+#!/bin/sh
+
+PACKAGE=ug-setting-theme-efl
+SRCROOT=..
+POTFILES=POTFILES.in
+
+#ALL_LINGUAS= am az be ca cs da de el en_CA en_GB es et fi fr hr hu it ja ko lv mk ml ms nb ne nl pa pl pt pt_BR ru rw sk sl sr sr@Latn sv ta tr uk vi zh_CN zh_TW
+ALL_LINGUAS="de el en_GB en_US es fr it ja ko nl pt ru tk zh_CN zh_HK zh_TW"
+
+XGETTEXT=/usr/bin/xgettext
+MSGMERGE=/usr/bin/msgmerge
+
+echo -n "Make ${PACKAGE}.pot  "
+if [ ! -e $POTFILES ] ; then
+       echo "$POTFILES not found"
+       exit 1
+fi
+
+$XGETTEXT --default-domain=${PACKAGE} --directory=${SRCROOT} \
+               --add-comments --keyword=_ --keyword=N_ --files-from=$POTFILES
+if [ $? -ne 0 ]; then
+       echo "xgettext error"
+       exit 1
+fi
+
+if [ ! -f ${PACKAGE}.po ]; then
+       echo "No such file: ${PACKAGE}.po"
+       exit 1
+fi
+
+rm -f ${PACKAGE}.pot && mv ${PACKAGE}.po ${PACKAGE}.pot
+echo "done"
+
+for LANG in $ALL_LINGUAS; do 
+       echo "$LANG : "
+
+       if [ ! -e $LANG.po ] ; then
+               sed 's/CHARSET/UTF-8/g' ${PACKAGE}.pot > ${LANG}.po
+               echo "${LANG}.po created"
+       else
+               if $MSGMERGE ${LANG}.po ${PACKAGE}.pot -o ${LANG}.new.po ; then
+                       if cmp ${LANG}.po ${LANG}.new.po > /dev/null 2>&1; then
+                               rm -f ${LANG}.new.po
+                       else
+                               if mv -f ${LANG}.new.po ${LANG}.po; then
+                                       echo "" 
+                               else
+                                       echo "msgmerge for $LANG.po failed: cannot move $LANG.new.po to $LANG.po" 1>&2
+                                       rm -f ${LANG}.new.po
+                                       exit 1
+                               fi
+                       fi
+               else
+                       echo "msgmerge for $LANG failed!"
+                       rm -f ${LANG}.new.po
+               fi
+       fi
+       echo ""
+done
+
diff --git a/po/zh_CN.po b/po/zh_CN.po
new file mode 100644 (file)
index 0000000..6f29d1e
--- /dev/null
@@ -0,0 +1,15 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "主题"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "取消"
+
+msgid "IDS_COM_POP_YES"
+msgstr "是 "
+
+msgid "IDS_COM_POP_NO"
+msgstr "否"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "返回"
+
diff --git a/po/zh_HK.po b/po/zh_HK.po
new file mode 100644 (file)
index 0000000..a4fb085
--- /dev/null
@@ -0,0 +1,15 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "主題"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "取消"
+
+msgid "IDS_COM_POP_YES"
+msgstr "是 "
+
+msgid "IDS_COM_POP_NO"
+msgstr "否"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "返回"
+
diff --git a/po/zh_TW.po b/po/zh_TW.po
new file mode 100644 (file)
index 0000000..1c8cd17
--- /dev/null
@@ -0,0 +1,15 @@
+msgid "IDS_ST_BODY_THEME"
+msgstr "主題"
+
+msgid "IDS_COM_POP_CANCEL"
+msgstr "取消"
+
+msgid "IDS_COM_POP_YES"
+msgstr "是"
+
+msgid "IDS_COM_POP_NO"
+msgstr "否"
+
+msgid "IDS_COM_BODY_BACK"
+msgstr "上一步"
+
diff --git a/resources/images/tizen-black.png b/resources/images/tizen-black.png
new file mode 100644 (file)
index 0000000..028c051
Binary files /dev/null and b/resources/images/tizen-black.png differ
diff --git a/resources/images/tizen.png b/resources/images/tizen.png
new file mode 100644 (file)
index 0000000..56e81e8
Binary files /dev/null and b/resources/images/tizen.png differ
diff --git a/setting-theme-efl.c b/setting-theme-efl.c
new file mode 100755 (executable)
index 0000000..8f823c1
--- /dev/null
@@ -0,0 +1,1485 @@
+/*
+
+   Copyright (c) 2000-2012 Samsung Electronics Co., Ltd All Rights Reserved
+
+   This file is part of libug-setting-theme-efl
+   Written by Shinwoo Kim <cinoo.kim@samsung.com>,
+              ChunEon Park <chuneon.park@samsung.com>,
+              Woohyun Jung <wh0705.jung@samsung.com>,
+              Jaehwan Kim <jae.hwan.kim@samsung.com>,
+              Juyung Seo <juyung.seo@samsung.com>,
+
+   PROPRIETARY/CONFIDENTIAL
+
+   This software is the confidential and proprietary information of
+   SAMSUNG ELECTRONICS ("Confidential Information"). You shall not
+   disclose such Confidential Information and shall use it only in
+   accordance with the terms of the license agreement you entered
+   into with SAMSUNG ELECTRONICS.
+
+   SAMSUNG make no representations or warranties about the suitability
+   of the software, either express or implied, including but not limited
+   to the implied warranties of merchantability, fitness for a particular
+   purpose, or non-infringement. SAMSUNG shall not be liable for any
+   damages suffered by licensee as a result of using, modifying or
+   distributing this software or its derivatives.
+
+*/
+
+#ifndef UG_MODULE_API
+#define UG_MODULE_API __attribute__ ((visibility("default")))
+#endif
+
+#include <Eina.h>
+#include <ui-gadget-module.h>
+#include <aul.h>
+#include <vconf.h>
+#include <vconf-keys.h>
+#include <Efreet_Mime.h>
+
+#include "setting-theme-efl.h"
+
+static Evas_Object *_parent = NULL;
+static Elm_Genlist_Item_Class itc, itc2, edit_mode_itc;
+static Eina_List *gtheme_list = NULL;
+static Evas_Object *rdg = NULL;
+
+struct ug_down_theme_property
+{
+   int ext;
+   char name[SETTING_THEME_NAME_MAX_LEN];
+};
+
+struct ug_theme_list
+{
+   struct ug_down_theme_property icon_theme;
+   struct ug_down_theme_property boot_ani_theme;
+   struct ug_down_theme_property key_snd_theme;
+   struct ug_down_theme_property efl_theme;
+   struct ug_down_theme_property gtk_theme;
+   struct ug_down_theme_property screen_image_theme;
+   struct ug_down_theme_property font_theme;
+   struct ug_down_theme_property vibrate_theme;
+};
+
+typedef enum
+{
+   THEME_TYPE_DEFAULT,
+   THEME_TYPE_DOWNLOAD,
+} ug_theme_type;
+
+struct ug_theme_info
+{
+   ug_theme_type type;
+   char* name;
+};
+
+typedef struct _Item_Data Item_Data;
+typedef struct _View_Data View_Data;
+struct _View_Data {
+   Evas_Object *bg;
+   Evas_Object *nf;
+   Evas_Object *box;
+   Evas_Object *delete_btn;             // 'Delete'/'Cancel' button
+   Evas_Object *more_btn;
+   Evas_Object *cbar;
+   Elm_Object_Item *del_btn_item; // 'Delete' button
+
+   Evas_Object *genlist;
+   Elm_Object_Item *renamed_it;
+
+   Evas_Object *select_all_layout;
+   Evas_Object *select_all_checkbox;
+   Eina_Bool select_all_checked;
+   int total_count;
+   int checked_count;
+   int default_theme_count;
+};
+
+struct _Item_Data {
+   Elm_Object_Item *it;  // Genlist Item pointer
+   Eina_Bool checked;     // Check status
+   char *label;
+   int idx;
+};
+
+struct ug_data {
+   Evas_Object *base;
+   Eina_List *theme_list;
+   struct ui_gadget *ug;
+   struct ug_theme_list theme;
+   View_Data *vd;
+};
+
+static Evas_Object* _create_layout_main( Evas_Object* parent, View_Data* vd )
+{
+   Evas_Object *layout = elm_layout_add( parent );
+   if( layout == NULL ) return NULL;
+
+   elm_layout_theme_set( layout, "layout", "application", "default" );
+   evas_object_size_hint_weight_set( layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+   //Background
+   Evas_Object *bg = elm_bg_add( layout );
+   vd->bg = bg;
+
+   if ( bg ) {
+      elm_object_style_set( bg, "group_list");
+      evas_object_size_hint_weight_set( bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND );
+      elm_object_part_content_set( layout, "elm.swallow.bg", bg );
+   }
+
+   evas_object_show( layout );
+
+   return layout;
+}
+
+static void _setting_theme_def_response_cb( void *data, Evas_Object *obj, void *event_info )
+{
+   evas_object_del(obj);
+}
+
+static void _block_clicked_cb(void *data, Evas_Object *obj, void *event_info)
+{
+    // Popup remove code...ex
+    /*if (conformant) {
+      evas_object_del(conformant);
+      conformant = NULL;
+      }
+      if (del_timer) {
+      ecore_timer_del(del_timer);
+      del_timer = NULL;
+      }
+      evas_object_del(obj);*/
+}
+
+static int _load_index_file(struct ug_data* ugd, struct ug_theme_info* selected_theme)
+{
+   FILE* fp = NULL;
+   Eina_Strbuf* temp_str_buf = eina_strbuf_new();
+   Eina_List *index_list = NULL;
+   Eina_List *elist = NULL;
+   char* meta_theme = NULL;
+
+   eina_strbuf_append_printf( temp_str_buf, "%s/%s/%s", DOWNLOAD_THEME_FOLDER_PATH, selected_theme->name, DOWNLOAD_THEME_INDEX_FILE_NAME);
+
+   if( !( fp = fopen( eina_strbuf_string_steal( temp_str_buf ), "r" ) ) ) {
+
+      //make error popup : file not found
+      Evas_Object *popup = elm_popup_add( ugd->base );
+
+      if( popup == NULL ) {
+         eina_strbuf_free(temp_str_buf);
+         return -1;
+      }
+
+      //TODO: Apply Strings to Multi Languange
+      elm_object_text_set( popup, _("No Theme Contents") );
+      evas_object_smart_callback_add(popup, "block,clicked", _block_clicked_cb, NULL);
+
+      elm_popup_timeout_set( popup, POPUP_ALERT_TIMOUT_DURATION );
+      evas_object_smart_callback_add( popup, "response", _setting_theme_def_response_cb, NULL );
+      evas_object_show( popup );
+
+      eina_strbuf_free(temp_str_buf);
+      return -1;
+   }
+
+   // Read File
+   while( !feof( fp ) ) {
+      char temp_buffer[ SETTING_THEME_NAME_MAX_LEN ] = {0,};
+      fgets( temp_buffer, SETTING_THEME_NAME_MAX_LEN, fp );
+      index_list = eina_list_append( index_list, strdup(temp_buffer));
+   }
+
+   fclose(fp);
+
+   // Parsing
+   EINA_LIST_FOREACH( index_list, elist, meta_theme ) {
+
+      char *ptr;
+      char *meta = strtok_r( meta_theme, "=", &ptr);
+
+      if(meta) {
+
+         char *theme = strtok_r( NULL, "\n", &ptr);
+         if( theme == NULL ) continue;
+
+         if( !strncmp( DOWNLOAD_THEME_ICON_THEME_KEYWORD,
+                  meta,
+                  strlen( DOWNLOAD_THEME_ICON_THEME_KEYWORD)) ) {
+
+            ugd->theme.icon_theme.ext = 1;
+            strncpy(ugd->theme.icon_theme.name,theme,strlen(theme));
+
+         }
+         else if( !strncmp( DOWNLOAD_THEME_BOOT_ANIMATOR_THEME_KEYWORD,
+                  meta,
+                  strlen( DOWNLOAD_THEME_BOOT_ANIMATOR_THEME_KEYWORD)) ) {
+            ugd->theme.boot_ani_theme.ext = 1;
+            strncpy(ugd->theme.boot_ani_theme.name,theme,strlen(theme));
+         }
+         else if( !strncmp( DOWNLOAD_THEME_KEY_SOUND_THEME_KEYWORD,
+                  meta,
+                  strlen( DOWNLOAD_THEME_KEY_SOUND_THEME_KEYWORD )) ) {
+            ugd->theme.key_snd_theme.ext = 1;
+            strncpy(ugd->theme.key_snd_theme.name,theme,strlen(theme));
+
+         }
+         else if( !strncmp( DOWNLOAD_THEME_EFL_THEME_KEYWORD,
+                  meta,
+                  strlen( DOWNLOAD_THEME_EFL_THEME_KEYWORD ) ) ) {
+            ugd->theme.efl_theme.ext = 1;
+            strncpy(ugd->theme.efl_theme.name,theme,strlen(theme));
+
+         }
+         else if( !strncmp( DOWNLOAD_THEME_GTK_THEME_KEYWORD,
+                  meta,
+                  strlen( DOWNLOAD_THEME_GTK_THEME_KEYWORD ) ) ) {
+            ugd->theme.gtk_theme.ext = 1;
+            strncpy(ugd->theme.gtk_theme.name,theme,strlen(theme));
+         }
+         else if( !strncmp( DOWNLOAD_THEME_SCREEN_IMG_THEME_KEYWORD,
+                  meta,
+                  strlen( DOWNLOAD_THEME_SCREEN_IMG_THEME_KEYWORD ) ) ) {
+            ugd->theme.screen_image_theme.ext = 1;
+            strncpy(ugd->theme.screen_image_theme.name,theme,strlen(theme));
+
+         }
+         else if( !strncmp( DOWNLOAD_THEME_FONT_THEME_KEYWORD,
+                  meta,
+                  strlen( DOWNLOAD_THEME_FONT_THEME_KEYWORD )) ) {
+            ugd->theme.font_theme.ext = 1;
+            strncpy(ugd->theme.font_theme.name,theme,strlen(theme));
+         }
+         else if( !strncmp( DOWNLOAD_THEME_VIBRATION_THEME_KEYWORD,
+                  meta,
+                  strlen( DOWNLOAD_THEME_VIBRATION_THEME_KEYWORD )) ) {
+            ugd->theme.vibrate_theme.ext = 1;
+            strncpy(ugd->theme.vibrate_theme.name,theme,strlen(theme));
+         }
+      }
+   }
+
+   // clear
+   eina_strbuf_free(temp_str_buf);
+
+   EINA_LIST_FOREACH( index_list, elist, meta_theme ) {
+      index_list = eina_list_remove( index_list, meta_theme );
+      free( meta_theme );
+   }
+   return 0;
+}
+
+static Evas_Object* _create_naviframe( Evas_Object* parent )
+{
+   if( parent == NULL ) return NULL;
+
+   Evas_Object *nf = elm_naviframe_add( parent );
+   evas_object_show( nf );
+
+   return nf;
+}
+
+static void _remove_files_in_dir( const char *folder_path )
+{
+   struct stat statbuf;
+   char path_buf[ PATH_MAX ];
+   DIR* dp = NULL;
+   struct dirent *entry = NULL;
+   char *mime = NULL;
+   char *splitter = NULL;
+   char *env = getenv( "UI_IDLECAPTURE_IMG_TYPE" );
+
+   if( !env ) {
+      return ;
+   }
+
+   dp = opendir( folder_path );
+
+   if( dp == 0 ) {
+      return ;
+   }
+
+   if( chdir( folder_path ) != 0 ) {
+      fprintf( stderr, "Failed to change directory!\n" );
+   }
+
+   while( ( entry = readdir( dp ) ) != NULL ) {
+
+      stat( entry->d_name, &statbuf );
+
+      strcpy( path_buf, folder_path );
+
+      if( path_buf[ strlen( path_buf ) - 1 ]  != '/' ) {
+         strcat( path_buf, "/" );
+      }
+
+      strcat( path_buf, entry->d_name );
+
+      //case of directory
+      if( S_ISDIR( statbuf.st_mode ) ) {
+
+         if( strcmp( ".", entry->d_name ) == 0 || strcmp( "..", entry->d_name ) == 0 ) {
+            continue;
+         }
+
+         _remove_files_in_dir( path_buf );
+         continue;
+         //case of file
+      }else {
+         //Check is it jpeg type.
+         mime = (char *) efreet_mime_type_get( path_buf );
+
+         if( mime == 0 ) {
+            continue;
+         }
+
+         while( (splitter = strpbrk( mime, "/" )) ) {
+            if( strncmp( mime, env, splitter - mime ) == 0 ) {
+               unlink( path_buf );
+               continue;
+            }else {
+               mime = ++splitter;
+            }
+         }
+
+         if( strncmp( mime, env, strlen( mime ) ) == 0 ) {
+            unlink( path_buf );
+         }
+      }
+
+   }
+
+   if( chdir( ".." ) != 0 ) {
+      fprintf( stderr, "Failed to change directory!\n" );
+   }
+
+   closedir( dp );
+}
+
+static int _strncmp( const char *s1, const char *s2)
+{
+   const char *longer = NULL;
+   const char *shorter = NULL;
+
+   if( strlen( s1 ) > strlen ( s2 ) ) {
+      longer = s1;
+      shorter = s2;
+   } else {
+      longer = s2;
+      shorter = s1;
+   }
+
+   return strncmp( longer, shorter, strlen( longer ) );
+}
+
+static void _get_default_theme_list( const char *folder_path, Eina_List **theme_list )
+{
+   struct stat statbuf;
+   char path_buf[ PATH_MAX ];
+   DIR* dp = NULL;
+   struct dirent *entry = NULL;
+
+   dp = opendir( folder_path );
+
+   if( dp == 0 ) {
+      return ;
+   }
+
+   if( chdir( folder_path ) != 0 ) {
+      fprintf( stderr, "Failed to change directory!\n" );
+   }
+
+   while( ( entry = readdir( dp ) ) != NULL ) {
+
+      stat( entry->d_name, &statbuf );
+      strcpy( path_buf, folder_path );
+
+      if( path_buf[ strlen( path_buf ) - 1 ]  != '/' ) {
+         strcat( path_buf, "/" );
+      }
+
+      strcat( path_buf, entry->d_name );
+
+      //case of directory
+      if( S_ISDIR( statbuf.st_mode ) ) {
+
+         if( strcmp( ".", entry->d_name ) == 0 || strcmp( "..", entry->d_name ) == 0 ) {
+            continue;
+         }
+
+         _get_default_theme_list( path_buf, theme_list );
+         continue;
+
+         //case of file
+      }else {
+         //TODO: TEMPORARY COMPARE. SHOULD BE REMOVED!
+         if( !_strncmp( entry->d_name, "tizen.edj") ||
+               !_strncmp( entry->d_name, "tizen-black.edj") ||
+               !_strncmp( entry->d_name, "default.edj") ||
+               !_strncmp( entry->d_name, "default-desktop.edj") ) {
+            continue;
+         }
+
+         struct ug_theme_info *new_info = (struct ug_theme_info*)calloc(1,sizeof(struct ug_theme_info));
+         new_info->type = THEME_TYPE_DEFAULT;
+         new_info->name = strndup(entry->d_name, strpbrk( entry->d_name, ".") - entry->d_name );
+
+         *theme_list = eina_list_append( *theme_list, new_info );
+
+      }
+   }
+
+   if( chdir( ".." ) != 0 ) {
+      fprintf( stderr, "Failed to change directory!\n" );
+   }
+
+   closedir( dp );
+}
+
+static void _get_theme_list( const char *folder_path, Eina_List **theme_list )
+{
+   struct stat statbuf;
+   char path_buf[ PATH_MAX ];
+   DIR* dp = NULL;
+   struct dirent *entry = NULL;
+
+   dp = opendir( folder_path );
+
+   if( dp == 0 ) {
+      return ;
+   }
+
+   if( chdir( folder_path ) != 0 ) {
+      fprintf( stderr, "Failed to change directory!\n" );
+   }
+
+   while( ( entry = readdir( dp ) ) != NULL ) {
+
+      stat( entry->d_name, &statbuf );
+
+      strcpy( path_buf, folder_path );
+
+      if( path_buf[ strlen( path_buf ) - 1 ]  != '/' ) {
+         strcat( path_buf, "/" );
+      }
+
+      strcat( path_buf, entry->d_name );
+
+      //in case of directory, add folder name to list.
+      if( S_ISDIR( statbuf.st_mode ) ) {
+
+         if( strcmp( ".", entry->d_name ) == 0 || strcmp( "..", entry->d_name ) == 0 ) {
+            continue;
+         }
+
+         struct ug_theme_info *new_info = (struct ug_theme_info*)calloc(1,sizeof(struct ug_theme_info));
+         new_info->type = THEME_TYPE_DOWNLOAD;
+         new_info->name = strdup(entry->d_name);
+         *theme_list = eina_list_append( *theme_list, new_info);
+      }
+   }
+   closedir( dp );
+}
+
+static int _delete_idle_imgs()
+{
+   int ret = 0;
+   char *env = getenv( "UI_IDLECAPTURE_PATH" );
+
+   if( efreet_mime_init() == 0 ) {
+      return ret;
+   }
+
+   if(!env) {
+      _remove_files_in_dir( IDLE_IMG_PATH );
+   }else {
+      _remove_files_in_dir( env );
+   }
+
+   efreet_mime_shutdown();
+
+   return ret;
+}
+
+static int _selected_theme_idx_get()
+{
+   Eina_List *elist = NULL;
+   struct ug_theme_info *theme_info = NULL;
+
+   // set selected theme
+   char *theme_name = vconf_get_str(SETTING_THEME_SELECTED_THEME);
+   int idx = 0;
+
+   EINA_LIST_FOREACH( gtheme_list, elist, theme_info ) {
+
+      if( _strncmp( theme_info->name, theme_name ) == 0 ) {
+         FREE(theme_name);
+         return idx;
+      }
+      idx++;
+   }
+   FREE(theme_name);
+   return -1;
+}
+
+static int exit_apps_iterfunc( const aul_app_info *info, void *data )
+{
+   if( !info  || !info->pkg_name) return 0;
+
+   char *except_pkgs = (char *) getenv("SETTING_THEME_EXCEPT_PKGS");
+
+   if( except_pkgs ) {
+
+        //TODO: should remove pkgs here!!
+        //It can be skipped setting app by using aul with pid.
+
+   }else {
+        char* curr_menu = vconf_get_str("db/menuscreen/pkgname");
+
+        //TODO: Temporary comparison. Please remove this and implement above.
+        if( !_strncmp(info->pkg_name, "com.samsung.menu-screen") ||
+            !_strncmp(info->pkg_name, "com.samsung.setting") ||
+            !_strncmp(info->pkg_name, "com.samsung.live-magazine") ||
+            !_strncmp(info->pkg_name, "com.samsung.live-data-provider") ||
+            !_strncmp(info->pkg_name, "com.samsung.quickpanel") ||
+            !_strncmp(info->pkg_name, "com.samsung.vtmain") ||
+            !_strncmp(info->pkg_name, "com.samsung.call") ||
+            !_strncmp(info->pkg_name, curr_menu) ) {
+           FREE(curr_menu);
+           return 0;
+        }
+
+        FREE(curr_menu);
+   }
+
+   aul_terminate_pid( info->pid );
+
+   return 0;
+}
+
+static void _popup_default_theme_response_no_cb( void *data, Evas_Object *obj, void *event_info )
+{
+      return;
+}
+
+static void _popup_default_theme_response_yes_cb( void *data, Evas_Object *obj, void *event_info )
+{
+   Item_Data *item_data = (Item_Data *)data;
+   if(item_data == NULL) return;
+
+   struct ug_theme_info *theme_info = NULL;
+   theme_info = eina_list_nth(gtheme_list, item_data->idx);
+
+   View_Data *vd = (View_Data *)evas_object_data_get(elm_object_item_widget_get(item_data->it), "view_data");
+   if(vd == NULL) return;
+
+   elm_radio_value_set(rdg, item_data->idx);
+
+   // Change EFL Theme
+   Eina_Strbuf* efl_path = eina_strbuf_new();
+   eina_strbuf_append_printf( efl_path, "%s/%s.edj",
+               DEFAULT_THEME_FOLDER_PATH,
+               item_data->label);
+   elm_theme_set(NULL, eina_strbuf_string_get(efl_path));
+   elm_config_all_flush();
+   vconf_set_str(VCONFKEY_SETAPPL_WIDGET_THEME_STR, eina_strbuf_string_get(efl_path) );
+   eina_strbuf_free(efl_path);
+
+   // Change Selected Theme Value
+   vconf_set_str(SETTING_THEME_SELECTED_THEME, item_data->label);
+
+   _delete_idle_imgs();
+   aul_app_get_running_app_info( exit_apps_iterfunc, NULL );
+   elm_exit();
+}
+
+static void _cancel_button_clicked(void *data, Evas_Object *obj, void *event_info)
+{
+   if (!data) return;
+   Evas_Object *nf = (Evas_Object *) data;
+   elm_naviframe_item_pop(nf);
+}
+
+static void _done_button_clicked(void *data, Evas_Object *obj, void *event_info)
+{
+   Evas_Object *btn1, *btn2;
+   Item_Data *item_data = (Item_Data *)data;
+   if(item_data == NULL) return;
+
+   struct ug_theme_info *theme_info = NULL;
+   theme_info = eina_list_nth(gtheme_list, item_data->idx);
+
+   View_Data *vd = (View_Data *)evas_object_data_get(elm_object_item_widget_get(item_data->it), "view_data");
+   if(vd == NULL) return;
+
+   //TODO: Test Code Should be removed - View_Data and && item_data->idx <= vd->default_theme_count
+   if (item_data->idx != _selected_theme_idx_get() && item_data->idx < vd->default_theme_count) {
+
+      if (THEME_TYPE_DEFAULT == theme_info->type){
+         // Show popup
+         Evas_Object *popup = elm_popup_add( vd->nf );
+         if( popup == NULL ) {
+              return ;
+         }
+
+         //TODO: Apply Multi Lanaguage to this string.
+         elm_object_text_set( popup, _("All Apps will be closed<br> to change theme") );
+
+         btn1 = elm_button_add(popup);
+         elm_object_text_set(btn1, _("IDS_COM_POP_YES"));
+         elm_object_part_content_set(popup, "button1", btn1);
+         evas_object_smart_callback_add(btn1, "clicked", _popup_default_theme_response_yes_cb, popup);
+
+         btn2 = elm_button_add(popup);
+         elm_object_text_set(btn2, _("IDS_COM_POP_NO"));
+         elm_object_part_content_set(popup, "button2", btn2);
+         evas_object_smart_callback_add(btn2, "clicked", _popup_default_theme_response_no_cb, popup);
+
+         evas_object_show( popup );
+      }
+
+      //TODO: Download Winset Setting
+#if 0
+      else {
+         if (_load_index_file(ugd,theme_info) == 0) {
+            Eina_Strbuf* efl_path = eina_strbuf_new();
+            eina_strbuf_append_printf( efl_path, "%s/%s/%s/%s.edj",
+                  DOWNLOAD_THEME_FOLDER_PATH,
+                  theme_info->name,
+                  DOWNLOAD_THEME_EFL_FOLDER_NAME,
+                  ugd->theme.efl_theme.name);
+            vconf_set_str(VCONFKEY_SETAPPL_WIDGET_THEME_STR, eina_strbuf_string_get(efl_path));
+            elm_theme_set(NULL, eina_strbuf_string_get(efl_path));
+            elm_config_all_flush();
+            eina_strbuf_free(efl_path);
+         }
+      }
+#endif
+
+   }
+
+}
+
+// This is called when check box status is changed
+static void _item_check_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+   Item_Data *item_data = (Item_Data *)data;
+   View_Data *vd = (View_Data *)evas_object_data_get(elm_object_item_widget_get(item_data->it), "view_data");
+   if (vd == NULL) return;
+
+   if (item_data->checked) vd->checked_count++;
+   else vd->checked_count--;
+
+   // update select all check button
+   if (vd->select_all_layout) {
+      if ((vd->total_count - vd->default_theme_count) == vd->checked_count)
+         vd->select_all_checked = EINA_TRUE;
+      else
+         vd->select_all_checked = EINA_FALSE;
+
+      elm_check_state_pointer_set(vd->select_all_checkbox, &vd->select_all_checked);
+   }
+}
+
+// FIXME: Need proper method.
+// FIXME: This would be only available for our theme but not 3rd parties'
+static char* _rename_theme(const char * origin)
+{
+   if ( !_strncmp(origin, "tizen-hd") ) {
+     return strdup("White");
+   } else if ( !_strncmp(origin, "tizen-black-hd") ) {
+      return strdup("Black");
+   }
+   else return strdup(origin);
+}
+
+static void _reveal_button_clicked(void *data, Evas_Object *obj, void *event_info)
+{
+   char *nf_title;
+   Evas_Object *cbar;
+   Evas_Object *cancel_btn;
+   Evas_Object *done_btn;
+   Evas_Object *nf;
+   Evas_Object *box;
+   Elm_Object_Item *ti;
+   Item_Data *item_data = (Item_Data *)data;
+   if (item_data == NULL) return;
+
+   View_Data *vd = (View_Data *)evas_object_data_get(elm_object_item_widget_get(item_data->it), "view_data");
+   if (vd == NULL) return;
+
+   nf = vd->nf;
+
+   // Create Controlbar
+   cbar = elm_toolbar_add(nf);
+   if (cbar == NULL) return;
+   elm_object_style_set(cbar, "naviframe");
+
+   cancel_btn = elm_button_add(cbar);
+   elm_object_style_set(cancel_btn, "naviframe_control/default");
+   evas_object_size_hint_align_set(cancel_btn, EVAS_HINT_FILL, 0.5);
+   elm_object_text_set(cancel_btn, _("Cancel"));
+   evas_object_show(cancel_btn);
+   evas_object_smart_callback_add(cancel_btn, "clicked", _cancel_button_clicked, nf);
+
+   done_btn = elm_button_add(cbar);
+   elm_object_style_set(done_btn, "naviframe_control/default");
+   evas_object_size_hint_align_set(done_btn, EVAS_HINT_FILL, 0.5);
+   elm_object_text_set(done_btn, _("Done"));
+   evas_object_show(done_btn);
+   evas_object_smart_callback_add(done_btn, "clicked", _done_button_clicked, item_data);
+
+   // Disable Button, If Currently Set
+   char *theme_name = vconf_get_str(SETTING_THEME_SELECTED_THEME);
+   if( _strncmp( item_data->label, theme_name ) == 0 ) {
+      elm_object_disabled_set(done_btn, 1);
+   }
+   FREE(theme_name);
+
+   // For Consistent Look
+   ti = elm_toolbar_item_append(cbar, NULL, NULL, NULL, NULL);
+   elm_object_item_part_content_set(ti, "object", cancel_btn);
+   ti = elm_toolbar_item_append(cbar, NULL, NULL, NULL, NULL);
+   elm_object_item_part_content_set(ti, "object", done_btn);
+
+   nf_title = _rename_theme(item_data->label);
+
+   box = elm_box_add(nf);
+   evas_object_show(box);
+
+   // TODO: Preview Image Should Get From Theme
+   if (item_data->idx < vd->default_theme_count) {
+
+      Evas_Object* icon;
+      icon = elm_icon_add(nf);
+
+      char* fn;
+      if (!_strncmp(item_data->label, "tizen-hd"))
+         fn = "tizen";
+      else if (!_strncmp(item_data->label, "tizen-black-hd"))
+         fn = "tizen-black";
+      else
+         fn = item_data->label;
+
+      Eina_Strbuf* efl_path = eina_strbuf_new();
+      eina_strbuf_append_printf( efl_path, "%s/%s.png",
+            IMG_DIR,
+            fn);
+
+      elm_icon_file_set(icon, eina_strbuf_string_get(efl_path), NULL);
+      elm_icon_resizable_set(icon, 0, 0);
+      evas_object_size_hint_align_set(icon, 0.5, 0.5);
+      elm_box_pack_end(box, icon);
+      evas_object_show(icon);
+
+      eina_strbuf_free(efl_path);
+   }
+
+   Elm_Object_Item *navi_it = elm_naviframe_item_push(nf, nf_title, NULL, NULL, box, NULL);
+   elm_object_item_part_content_set(navi_it, "optionheader", cbar);
+   FREE(nf_title);
+
+   // Remove Prev Button
+   Evas_Object *prev_btn = elm_object_item_part_content_get(navi_it, "prev_btn");
+   evas_object_del(prev_btn);
+}
+
+static void _gl_sel( void *data, Evas_Object *obj, void *event_info)
+{
+   Item_Data *item_data;
+   Elm_Object_Item *genlist_item = (Elm_Object_Item *) event_info;
+   if( genlist_item == NULL ) return;
+
+   elm_genlist_item_selected_set(genlist_item, EINA_FALSE);
+   item_data = elm_object_item_data_get(genlist_item);
+   _done_button_clicked(item_data, NULL, NULL);
+}
+
+static char* _gl_label_get(void *data, Evas_Object *obj, const char *part)
+{
+   Item_Data *item_data = (Item_Data *) data;
+   if(item_data == NULL) return NULL;
+
+   if( strcmp(part, "elm.text") == 0 ) {
+      return _rename_theme(item_data->label);
+   }
+   return NULL;
+}
+
+Evas_Object *_load_edj(Evas_Object *parent, const char *file, const char *group) {
+   Evas_Object *eo;
+   int r;
+
+   eo = elm_layout_add(parent);
+   if (eo) {
+      r = elm_layout_file_set(eo, file, group);
+      if (!r) {
+         evas_object_del(eo);
+         return NULL;
+      }
+   }
+
+   return eo;
+}
+
+static Evas_Object *_gl_icon_get(void *data, Evas_Object *obj, const char *part)
+{
+   if(obj == NULL) return NULL;
+
+   Item_Data *item_data = (Item_Data *) data;
+   if(item_data == NULL) return NULL;
+
+   Evas_Object *icon;
+
+   if (!elm_genlist_decorate_mode_get(obj)) {
+      if ( !strncmp( part, "elm.icon.1", strlen(part) ) ) {
+         // radio button
+         icon = elm_radio_add(obj);
+         elm_radio_state_value_set(icon, (int) item_data->idx);
+         evas_object_size_hint_aspect_set(icon, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
+         elm_radio_group_add( icon, rdg );
+
+         // For avoidng user click
+         Evas_Object* fake_icon = _load_edj(obj, SETTING_THEME_EDJ, "fake_icon");
+         elm_object_part_content_set(fake_icon, "icon", icon);
+
+         return fake_icon;
+      } else if ( !strncmp( part, "elm.icon.2", strlen(part) ) ) {
+         // preview button
+         icon = elm_button_add(obj);
+         elm_object_style_set(icon, "reveal");
+         evas_object_smart_callback_add(icon, "clicked", _reveal_button_clicked, item_data);
+         evas_object_propagate_events_set(icon, EINA_FALSE);
+         return icon;
+      }
+   } else {
+      if (!strcmp(part, "elm.edit.icon.1")) {  // swallow checkbox or radio button
+         icon = elm_check_add(obj);
+         elm_check_state_pointer_set(icon, &item_data->checked);
+         evas_object_smart_callback_add(icon, "changed", _item_check_changed_cb, item_data);
+         return icon;
+      }
+   }
+   return NULL;
+}
+
+static void _clear_theme_list(Eina_List *theme_list)
+{
+   Eina_List *elist = NULL;
+   struct ug_theme_info  *theme_info = NULL;
+   EINA_LIST_FOREACH( theme_list, elist, theme_info ) {
+      theme_list = eina_list_remove( theme_list, theme_info );
+      free( theme_info->name );
+      free( theme_info );
+   }
+}
+
+static void _base_object_del_cb(void * data, Evas *e, Evas_Object *obj, void *event_info)
+{
+   struct ug_data *ugd = (struct ug_data *) data;
+   ugd->base = NULL;
+}
+
+static void _back_button_clicked( void *data, Evas_Object *obj, void *event_info )
+{
+   struct ug_data * ugd = (struct ug_data *) data;
+
+   ug_destroy_me(ugd->ug);
+}
+
+static void _check_select_all(View_Data *vd)
+{
+   Item_Data *it_data;
+   Elm_Object_Item *it;
+
+   if (vd->select_all_checked) vd->checked_count = (vd->total_count - vd->default_theme_count);
+   else vd->checked_count = 0;
+
+   it = elm_genlist_first_item_get(vd->genlist);
+   while(it) {
+      it_data = elm_object_item_data_get(it);
+      if (it_data) it_data->checked = vd->select_all_checked;
+      it = elm_genlist_item_next_get(it);
+   }
+   // Update all realized items
+   elm_genlist_realized_items_update(vd->genlist);
+}
+
+static void _select_all_check_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+   _check_select_all(data);
+}
+
+static void _genlist_to_normal(View_Data *data)
+{
+   if (!data) return;
+   View_Data *vd = data;
+   Item_Data *item_data;
+   Evas_Object *genlist = vd->genlist;
+   Evas_Object *delete_btn = vd->delete_btn, *more_btn = vd->more_btn;
+   Elm_Object_Item *it, *ti;
+   Eina_List *elist = NULL;
+   struct ug_theme_info *theme_info = NULL;
+   int idx = 0;
+
+   // Change background color to default background color
+   elm_object_style_set(vd->bg, "group_list");
+
+   // Change button label
+   elm_object_text_set(delete_btn, _("Delete"));
+   elm_object_text_set(more_btn, _("More winsets"));
+
+   // Remove 'Select All' layout.
+   elm_box_unpack(vd->box, vd->select_all_layout);
+   evas_object_del(vd->select_all_layout);
+   vd->select_all_layout = NULL;
+
+   // Unset edit mode
+   elm_genlist_decorate_mode_set(genlist, EINA_FALSE);
+   elm_genlist_select_mode_set(genlist, ELM_OBJECT_SELECT_MODE_ALWAYS);
+
+   // Add Default Theme
+   idx = 0;
+   it = elm_genlist_first_item_get(genlist);
+   EINA_LIST_FOREACH( gtheme_list, elist, theme_info ) {
+      item_data = calloc(1, sizeof(Item_Data));
+      item_data->label = theme_info->name;
+      item_data->idx = idx;
+      if (it)
+         item_data->it = elm_genlist_item_insert_before(genlist, &itc, (void *) item_data, NULL, it, ELM_GENLIST_ITEM_NONE, _gl_sel, NULL);
+      else {
+         item_data->it = elm_genlist_item_append(genlist, &itc, (void *) item_data, NULL, ELM_GENLIST_ITEM_NONE, _gl_sel, NULL);
+      }
+
+      idx++;
+      if (idx >= vd->default_theme_count) break;
+   }
+
+   // Remove 'Delete' button
+   idx = 0;
+   it = elm_genlist_first_item_get(genlist);
+   while(it) {
+      idx++;
+      it = elm_genlist_item_next_get(it);
+   }
+
+   if (idx <= vd->default_theme_count) {
+      elm_object_item_del(vd->del_btn_item);
+      ti = elm_toolbar_item_prepend(vd->cbar, NULL, NULL, NULL, NULL);
+      elm_object_item_part_content_set(ti, "object", NULL);
+   }
+
+   // Change Genlist Item Class
+   idx = 0;
+   it = elm_genlist_item_prepend(genlist, &itc2, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+   elm_genlist_item_select_mode_set(it, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+   it = elm_genlist_first_item_get(genlist);
+   while(it) {
+      if(idx != 0) {
+         elm_genlist_item_item_class_update(it, &itc);
+      }
+      it = elm_genlist_item_next_get(it);
+      ++idx;
+   }
+}
+
+static void _delete_button_clicked(void *data, Evas_Object *obj, void *event_info)
+{
+   if (!data) return;
+   View_Data *vd = data;
+   Item_Data *item_data;
+   Evas_Object *genlist = vd->genlist, *layout, *check;
+   Evas_Object *delete_btn = vd->delete_btn, *more_btn = vd->more_btn;
+   Elm_Object_Item *it;
+   int idx = 0;
+
+   if (!elm_genlist_decorate_mode_get(genlist)) {
+      // Genlist will be in Edit Mode
+
+      // Change background color to edit_mode color
+      elm_object_style_set(vd->bg, "edit_mode");
+
+      // Change button label
+      elm_object_text_set(delete_btn, _("Cancel"));
+      elm_object_text_set(more_btn, _("Done"));
+
+      // Append 'Select All' layout
+      layout = vd->select_all_layout = elm_layout_add(vd->box);
+      elm_layout_theme_set(layout, "genlist", "item", "select_all/default");
+      evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
+      evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+      check = vd->select_all_checkbox = elm_check_add(vd->select_all_layout);
+      elm_check_state_pointer_set(check, &vd->select_all_checked);
+      evas_object_smart_callback_add(check, "changed", _select_all_check_changed_cb, vd);
+      elm_check_state_set(check, EINA_FALSE);
+      vd->select_all_checked = EINA_FALSE;
+      evas_object_propagate_events_set(check, EINA_FALSE);
+      elm_object_part_content_set(layout, "elm.icon", check);
+
+      elm_object_part_text_set(vd->select_all_layout, "elm.text", "Select All");
+      elm_box_pack_start(vd->box, vd->select_all_layout);
+      evas_object_show(vd->select_all_layout);
+
+      // Delete Seperator Item
+      it = elm_genlist_first_item_get(genlist);
+      elm_object_item_del(it);
+
+      // Delete Default Theme Item
+      idx = vd->default_theme_count;
+      it = elm_genlist_first_item_get(genlist);
+      while(it && idx > 0) {
+         item_data = elm_object_item_data_get(it);
+         it = elm_genlist_item_next_get(it);
+
+         if (item_data) {
+            elm_object_item_del(item_data->it);
+            idx--;
+         }
+      }
+
+      // Change Genlist Item Class
+      it = elm_genlist_first_item_get(genlist);
+      while(it) {
+         elm_genlist_item_item_class_update(it, &edit_mode_itc);
+         item_data = elm_object_item_data_get(it);
+         item_data->checked = EINA_FALSE;
+         it = elm_genlist_item_next_get(it);
+      }
+      vd->checked_count = 0;
+
+      elm_genlist_decorate_mode_set(genlist, EINA_TRUE);
+   } else {
+      // Genlist will be in Normal Mode
+      _genlist_to_normal(vd);
+   }
+}
+
+static void response_cb(void *data, Evas_Object *obj, void *event_info)
+{
+   if (obj != NULL)
+      evas_object_del(obj);
+}
+
+static void _more_button_clicked(void *data, Evas_Object *obj, void *event_info)
+{
+   struct ug_data *ugd = (struct ug_data *) data;
+   if (ugd == NULL) return;
+
+   View_Data *vd = ugd->vd;
+   if (vd == NULL) return;
+
+   Item_Data *it_data;
+   Elm_Object_Item *it;
+   Evas_Object *genlist = vd->genlist;
+
+   if (!elm_genlist_decorate_mode_get(genlist)) {
+      if(aul_launch_app("com.samsung.samsungapps", NULL) < 0) {
+         // Error Handling, Cannot Launch Samsung Apps
+         Evas_Object *popup = elm_popup_add(vd->nf);
+         elm_object_text_set(popup, "Samsung Apps is not installed");
+         evas_object_smart_callback_add(popup, "block,clicked", _block_clicked_cb, NULL);
+         elm_popup_timeout_set(popup, 3.0);
+         evas_object_smart_callback_add(popup, "response", response_cb, NULL);
+         evas_object_show(popup);
+      }
+   } else {
+      // Done - Delete Selected Winset
+      it = elm_genlist_first_item_get(genlist);
+      while (it) {
+         it_data = elm_object_item_data_get(it);
+         it = elm_genlist_item_next_get(it);
+
+         if ((it_data) && (it_data->checked)) {
+            elm_object_item_del(it_data->it);
+            vd->total_count--;
+            vd->checked_count--;
+         }
+      }
+      _genlist_to_normal(vd);
+   }
+
+}
+
+static void _set_genlist_item_styles(View_Data *vd)
+{
+   itc.item_style = "dialogue/1text.2icon.2";
+   itc.func.text_get = _gl_label_get;
+   itc.func.content_get = _gl_icon_get;
+   itc.func.state_get = NULL;
+   itc.func.del = NULL;
+   itc.decorate_item_style = "edit_default";
+
+   itc2.item_style = "dialogue/seperator";
+   itc2.func.text_get = NULL;
+   itc2.func.content_get = NULL;
+   itc2.func.state_get = NULL;
+   itc2.func.del = NULL;
+
+   edit_mode_itc.item_style = "1text";
+   edit_mode_itc.func.text_get = _gl_label_get;
+   edit_mode_itc.func.content_get = _gl_icon_get;
+   edit_mode_itc.func.state_get = NULL;
+   edit_mode_itc.func.del = NULL;
+   edit_mode_itc.decorate_item_style = "edit_default";
+}
+
+// Create genlist and append items
+static Evas_Object *_create_genlist(struct ug_data *ugd)
+{
+   if( ugd == NULL ) return NULL;
+   View_Data *vd = ugd->vd;
+   Item_Data *item_data;
+   Evas_Object *genlist;
+
+   // Create genlist
+   genlist = elm_genlist_add(vd->nf);
+   evas_object_size_hint_weight_set(genlist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(genlist, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+   // Get Default Theme
+   Eina_List *theme_list = ugd->theme_list;
+   _get_default_theme_list( DEFAULT_THEME_FOLDER_PATH, &theme_list);
+   vd->default_theme_count = eina_list_count(theme_list);
+
+   // Get Download Theme
+   _get_theme_list( DOWNLOAD_THEME_FOLDER_PATH , &theme_list );
+
+   //TODO: Test Code - START, Should be removed
+#if 0
+   struct ug_theme_info *new_info_r = (struct ug_theme_info*)calloc(1,sizeof(struct ug_theme_info));
+   new_info_r->type = THEME_TYPE_DOWNLOAD;
+   new_info_r->name = strndup("Red", strlen("Red"));
+   eina_list_append( theme_list, new_info_r );
+
+   struct ug_theme_info *new_info_g = (struct ug_theme_info*)calloc(1,sizeof(struct ug_theme_info));
+   new_info_g->type = THEME_TYPE_DOWNLOAD;
+   new_info_g->name = strndup("Green", strlen("Green"));
+   eina_list_append( theme_list, new_info_g );
+
+   struct ug_theme_info *new_info_b = (struct ug_theme_info*)calloc(1,sizeof(struct ug_theme_info));
+   new_info_b->type = THEME_TYPE_DOWNLOAD;
+   new_info_b->name = strndup("Blue", strlen("Blue"));
+   eina_list_append( theme_list, new_info_b );
+#endif
+   //TODO: Test Code - END, Should be removed
+   ugd->theme_list = theme_list;
+   gtheme_list = eina_list_clone( ugd->theme_list );
+
+   Eina_List *elist = NULL;
+   struct ug_theme_info *theme_info = NULL;
+   int idx = 0;
+
+   item_data = calloc(1, sizeof(Item_Data));
+   item_data->label = NULL;
+   item_data->idx = idx;
+   item_data->it = elm_genlist_item_append(genlist, &itc2, (void *) item_data, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+   elm_genlist_item_select_mode_set(item_data->it, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+   EINA_LIST_FOREACH( gtheme_list, elist, theme_info ) {
+      item_data = calloc(1, sizeof(Item_Data));
+      item_data->label = theme_info->name;
+      item_data->idx = idx;
+      item_data->it = elm_genlist_item_append(genlist, &itc, (void *) item_data, NULL, ELM_GENLIST_ITEM_NONE, _gl_sel, NULL);
+      idx++;
+   }
+
+   evas_object_size_hint_weight_set(genlist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(genlist, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+   vd->total_count = idx;
+
+   // Check selected theme
+   idx = _selected_theme_idx_get();
+   if (idx < 0) return genlist;
+
+   // Create radio group
+   rdg = elm_radio_add( genlist );
+   elm_radio_value_set( rdg, idx );
+
+   return genlist;
+}
+
+static Evas_Object *create_fullview( Evas_Object *parent, struct ug_data *ugd )
+{
+   Evas_Object *cbar;
+   Elm_Object_Item *ti;
+
+   if(parent == NULL) return NULL;
+
+   // Create layout data
+   View_Data *vd;
+   vd = calloc(1, sizeof(View_Data));
+   ugd->vd = vd;
+
+   // Create layout
+   Evas_Object *layout = _create_layout_main( parent, vd );
+   if( layout == NULL ) return NULL;
+
+   vd->nf = _create_naviframe( layout );
+   if( vd->nf == NULL ) {
+      evas_object_del( layout );
+      return NULL;
+   }
+   // Create Genlist
+   _set_genlist_item_styles(vd);
+   vd->genlist = _create_genlist(ugd);
+
+   // Need by Item Check Changed Callback , Reveal Button Clicked Callback
+   evas_object_data_set(vd->genlist, "view_data", vd);
+
+   // Create Box
+   vd->box = elm_box_add(vd->nf);
+   evas_object_size_hint_weight_set(vd->box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_show(vd->box);
+
+   elm_box_pack_end(vd->box, vd->genlist);
+   evas_object_show(vd->genlist);
+
+   elm_object_part_content_set( layout, "elm.swallow.content", vd->nf );
+
+   // Create Controlbar
+   vd->cbar = cbar = elm_toolbar_add(vd->nf);
+   if (cbar == NULL) return NULL;
+   elm_object_style_set(cbar, "naviframe");
+
+   vd->more_btn = elm_button_add(cbar);
+   elm_object_style_set(vd->more_btn, "naviframe_control/default");
+   evas_object_size_hint_align_set(vd->more_btn, EVAS_HINT_FILL, 0.5);
+   elm_object_text_set(vd->more_btn, _("More winsets"));
+   evas_object_show(vd->more_btn);
+   evas_object_smart_callback_add(vd->more_btn, "clicked", _more_button_clicked, ugd);
+
+   //If there is download winset, then enable delete button
+   if(vd->default_theme_count < vd->total_count)
+     {
+        vd->delete_btn = elm_button_add(cbar);
+        elm_object_style_set(vd->delete_btn, "naviframe_control/default");
+        evas_object_size_hint_align_set(vd->delete_btn, EVAS_HINT_FILL, 0.5);
+        elm_object_text_set(vd->delete_btn, _("Delete"));
+        evas_object_show(vd->delete_btn);
+        evas_object_smart_callback_add(vd->delete_btn, "clicked", _delete_button_clicked, vd);
+        vd->del_btn_item = elm_toolbar_item_append(cbar, NULL, NULL, NULL, NULL);
+        elm_object_item_part_content_set(vd->del_btn_item, "object", vd->delete_btn);
+     }
+   else
+     {
+        ti = elm_toolbar_item_append(cbar, NULL, NULL, NULL, NULL);
+        elm_object_item_part_content_set(ti, "object", NULL);
+     }
+   ti = elm_toolbar_item_append(cbar, NULL, NULL, NULL, NULL);
+   elm_object_item_part_content_set(ti, "object", vd->more_btn);
+
+   Evas_Object *back_btn = elm_button_add( vd->nf );
+   elm_object_style_set(back_btn, "naviframe/back_btn/default");
+   evas_object_smart_callback_add( back_btn, "clicked", _back_button_clicked, ugd );
+   Elm_Object_Item *navi_it = elm_naviframe_item_push( vd->nf, _("IDS_ST_BODY_THEME"), back_btn, NULL, vd->box, NULL );
+
+   // add controlbar to naviframe
+   elm_object_item_part_content_set(navi_it, "optionheader", cbar);
+   elm_object_item_signal_emit(navi_it, "elm,state,optionheader,instant_close", "");
+
+   evas_object_event_callback_add(layout, EVAS_CALLBACK_DEL, _base_object_del_cb, ugd);
+
+   return layout;
+}
+
+static Evas_Object *create_frameview(Evas_Object *parent, struct ug_data *ugd)
+{
+   Evas_Object *base = NULL;
+
+   // Create Frame view
+
+   return base;
+}
+
+static void *on_create(struct ui_gadget *ug, enum ug_mode mode, bundle *data, void *priv)
+{
+   Evas_Object *parent;
+   struct ug_data *ugd;
+   if (!ug || !priv)
+      return NULL;
+
+   ugd = priv;
+   ugd->ug = ug;
+
+   bindtextdomain(PKGNAME, MO_FILE_PATH);
+
+   parent = ug_get_parent_layout(ug);
+   if (!parent)
+      return NULL;
+
+   if (mode == UG_MODE_FULLVIEW)
+      ugd->base = create_fullview(parent, ugd);
+   else
+      ugd->base = create_frameview(parent, ugd);
+
+   _parent = parent;
+
+   return ugd->base;
+}
+
+static void on_start(struct ui_gadget *ug, bundle *data, void *priv)
+{
+}
+
+static void on_pause(struct ui_gadget *ug, bundle *data, void *priv)
+{
+
+}
+
+static void on_resume(struct ui_gadget *ug, bundle *data, void *priv)
+{
+
+}
+
+
+static void on_destroy(struct ui_gadget *ug, bundle *data, void *priv)
+{
+   struct ug_data *ugd;
+
+   if (!ug || !priv)
+      return;
+
+   ugd = priv;
+
+   // Free View Data
+   if (ugd->vd) {
+      if (ugd->vd->bg) {
+         evas_object_del(ugd->vd->bg);
+         ugd->vd->bg = NULL;
+      }
+      evas_object_data_set(ugd->vd->genlist, "view_data", NULL);
+      free(ugd->vd);
+      ugd->vd = NULL;
+   }
+
+   _clear_theme_list( ugd->theme_list );
+   ugd->theme_list = NULL;
+
+   if( ugd->base ) {
+      evas_object_del(ugd->base);
+      ugd->base = NULL;
+   }
+
+   eina_list_free( gtheme_list );
+   gtheme_list = NULL;
+
+   if( rdg != NULL ) {
+      evas_object_del( rdg );
+      rdg = NULL;
+   }
+}
+
+static void on_message(struct ui_gadget *ug, bundle *msg, bundle *data, void *priv)
+{
+}
+
+static void on_event(struct ui_gadget *ug, enum ug_event event, bundle *data, void *priv)
+{
+   switch (event) {
+      case UG_EVENT_LOW_MEMORY:
+         break;
+      case UG_EVENT_LOW_BATTERY:
+         break;
+      case UG_EVENT_LANG_CHANGE:
+         break;
+      case UG_EVENT_ROTATE_PORTRAIT:
+         break;
+      case UG_EVENT_ROTATE_PORTRAIT_UPSIDEDOWN:
+         break;
+      case UG_EVENT_ROTATE_LANDSCAPE:
+         break;
+      case UG_EVENT_ROTATE_LANDSCAPE_UPSIDEDOWN:
+         break;
+      default:
+         break;
+   }
+}
+
+static void on_key_event(struct ui_gadget *ug, enum ug_key_event event, bundle *data, void *priv)
+{
+   if (!ug)
+      return;
+
+   switch (event) {
+      case UG_KEY_EVENT_END:
+         ug_destroy_me(ug);
+         break;
+      default:
+         break;
+   }
+}
+
+UG_MODULE_API int UG_MODULE_INIT(struct ug_module_ops *ops)
+{
+   struct ug_data *ugd;
+
+   if (!ops)
+      return -1;
+
+   ugd = calloc(1, sizeof(struct ug_data));
+   if (!ugd)
+      return -1;
+
+   ops->create = on_create;
+   ops->start = on_start;
+   ops->pause = on_pause;
+   ops->resume = on_resume;
+   ops->destroy = on_destroy;
+   ops->message = on_message;
+   ops->event = on_event;
+   ops->key_event = on_key_event;
+   ops->priv = ugd;
+   ops->opt = UG_OPT_INDICATOR_ENABLE;
+
+   return 0;
+}
+
+UG_MODULE_API void UG_MODULE_EXIT(struct ug_module_ops *ops)
+{
+   struct ug_data *ugd;
+
+   if (!ops)
+      return;
+
+   ugd = ops->priv;
+   if (ugd)
+      free(ugd);
+}
+
+// For Reset Operation
+UG_MODULE_API int setting_plugin_reset(bundle *data, void *priv)
+{
+   //FIXME: Need to avoid hard coding for default theme name
+   char *value = vconf_get_str(SETTING_THEME_SELECTED_THEME);
+
+   if (value && !strcmp(value, "tizen-black-hd"))
+     {
+        vconf_set_bool(SETTING_THEME_IS_THEME_CHANGED, 0);
+     }
+   else
+     {
+        vconf_set_bool(SETTING_THEME_IS_THEME_CHANGED, 1);
+     }
+
+   FREE(value);
+
+   // Change Selected Theme Value
+   vconf_set_str(SETTING_THEME_SELECTED_THEME, "tizen-black-hd");
+
+   // Change EFL Theme
+   Eina_Strbuf* efl_path = eina_strbuf_new();
+   eina_strbuf_append_printf( efl_path, "%s/tizen-black-hd.edj",
+               DEFAULT_THEME_FOLDER_PATH);
+   vconf_set_str(VCONFKEY_SETAPPL_WIDGET_THEME_STR, eina_strbuf_string_get(efl_path) );
+   eina_strbuf_free(efl_path);
+
+   _delete_idle_imgs();
+   aul_app_get_running_app_info( exit_apps_iterfunc, NULL );
+
+   return 0;
+}
diff --git a/setting-theme-efl.edc b/setting-theme-efl.edc
new file mode 100644 (file)
index 0000000..0de0b6a
--- /dev/null
@@ -0,0 +1,45 @@
+/*
+ * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ *  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.
+ *
+ */
+
+collections {
+       group {
+               name: "fake_icon";
+               parts {
+                       part { name: "icon";
+                               type: SWALLOW;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       fixed:  1 1;
+                                       min: 26 26;
+                                       align: 0.0 0.5;
+                               }
+                       }
+                       part { name: "image";
+                               type: RECT;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       fixed:  1 1;
+                                       min: 100 50;
+                                       align: 0.5 0.5;
+                                       color: 0 0 0 0;
+                               }
+                       }
+               }
+       }
+}
diff --git a/setting-theme-efl.h b/setting-theme-efl.h
new file mode 100755 (executable)
index 0000000..dfff969
--- /dev/null
@@ -0,0 +1,84 @@
+/*
+
+   Copyright (c) 2000-2012 Samsung Electronics Co., Ltd All Rights Reserved
+
+   This file is part of libug-setting-theme-efl
+   Written by Shinwoo Kim <cinoo.kim@samsung.com>,
+              ChunEon Park <chuneon.park@samsung.com>,
+              Woohyun Jung <wh0705.jung@samsung.com>,
+              Jaehwan Kim <jae.hwan.kim@samsung.com>,
+              Juyung Seo <juyung.seo@samsung.com>,
+
+   PROPRIETARY/CONFIDENTIAL
+
+   This software is the confidential and proprietary information of
+   SAMSUNG ELECTRONICS ("Confidential Information"). You shall not
+   disclose such Confidential Information and shall use it only in
+   accordance with the terms of the license agreement you entered
+   into with SAMSUNG ELECTRONICS.
+
+   SAMSUNG make no representations or warranties about the suitability
+   of the software, either express or implied, including but not limited
+   to the implied warranties of merchantability, fitness for a particular
+   purpose, or non-infringement. SAMSUNG shall not be liable for any
+   damages suffered by licensee as a result of using, modifying or
+   distributing this software or its derivatives.
+
+*/
+
+#ifndef __setting_theme_efl_H__
+#define __setting_theme_efl_H__
+
+#include <Elementary.h>
+#include <libintl.h>
+
+#define PKGNAME "ug-setting-theme-efl"
+
+#define _EDJ(o)                elm_layout_edje_get(o)
+#define _(s)                   dgettext(PKGNAME, s)
+#define dgettext_noop(s)       (s)
+#define N_(s)                  dgettext_noop(s)
+#define FREE(arg)      {free(arg); arg = NULL;}
+
+#define IDLE_IMG_PATH "/opt/etc/idle_image"
+#define MO_FILE_PATH "/opt/ug/res/locale"
+#define POPUP_ALERT_TIMOUT_DURATION 2
+
+#define EDJ_PATH "/opt/ug/res/edje/ug-setting-theme-efl"
+#define SETTING_THEME_EDJ EDJ_PATH"/setting-theme-efl.edj"
+
+#define IMG_DIR "/opt/ug/res/images/ug-setting-theme-efl"
+
+// platform theme definition
+#define DEFAULT_THEME_ICON_PATH     "/usr/share/icons"
+#define DEFAULT_THEME_FOLDER_PATH   "/usr/share/elementary/themes"
+#define DEFAULT_THEME_ICON_NAME     "default"
+#define DEFAULT_THEME_SCREEN_IMAGE_HOME_PATH "/opt/media/Images and videos/Wallpapers/Home_default.png"
+#define DEFAULT_THEME_SCREEN_IMAGE_LOCK_PATH "/opt/media/Images and videos/Wallpapers/Home_default.png"
+
+// Downloadable theme definition
+#define DOWNLOAD_THEME_FOLDER_PATH              "/opt/share/theme"
+#define DOWNLOAD_THEME_INDEX_FILE_NAME          "index.theme"
+#define DOWNLOAD_THEME_EFL_FOLDER_NAME          "elementary"
+#define DOWNLOAD_THEME_SCREEN_IMAGE_FOLDER_NAME "screenimages"
+
+#define DOWNLOAD_THEME_ICON_THEME_KEYWORD       "IconTheme"
+#define DOWNLOAD_THEME_KEY_SOUND_THEME_KEYWORD  "KeySoundTheme"
+#define DOWNLOAD_THEME_EFL_THEME_KEYWORD        "EFLTheme"
+#define DOWNLOAD_THEME_GTK_THEME_KEYWORD        "GTKTheme"
+#define DOWNLOAD_THEME_SCREEN_IMG_THEME_KEYWORD "ScreenImageTheme"
+#define DOWNLOAD_THEME_FONT_THEME_KEYWORD       "FontTheme"
+#define DOWNLOAD_THEME_VIBRATION_THEME_KEYWORD  "VibrationTheme"
+#define DOWNLOAD_THEME_BOOT_ANIMATOR_THEME_KEYWORD "BootAnimationTheme"
+
+//
+
+#define VCONKEY_SETTING_THEME_ICON_PATH         "db/setting/theme"
+#define SETTING_THEME_SELECTED_THEME "db/setting/selected_theme"
+#define SETTING_THEME_SCREEN_IMAGE_HOME_FILE_NAME "home.png"
+#define SETTING_THEME_SCREEN_IMAGE_LOCK_FILE_NAME "lock.png"
+#define SETTING_THEME_IS_THEME_CHANGED "memory/mobile_hotspot/skin_changed"
+
+#define SETTING_THEME_NAME_MAX_LEN 255
+
+#endif /* __setting_theme_efl_H__ */